}
sql = '''
-create temp table newest_binaries (
- id integer primary key,
- package text);
-
-create index newest_binaries_by_package on newest_binaries (package);
+with
-insert into newest_binaries (id, package)
- select distinct on (package) id, package from binaries
+newest_binaries as
+ (select distinct on (package) id, package from binaries
where type = :type and
(architecture = :arch_all or architecture = :arch) and
id in (select bin from bin_associations where suite = :suite)
- order by package, version desc;
-
-with
+ order by package, version desc),
unique_override as
(select o.package, s.section
}
sql = '''
-create temp table newest_sources (
- id integer primary key,
- source text);
-
-create index sources_binaries_by_source on newest_sources (source);
-
-insert into newest_sources (id, source)
- select distinct on (source) s.id, s.source from source s
+with
+ newest_sources as
+ (select distinct on (source) s.id, s.source from source s
join files f on f.id = s.file
join location l on l.id = f.location
where s.id in (select source from src_associations where suite = :suite_id)
and l.component = :component_id
- order by source, version desc;
+ order by source, version desc)
select sc.file, string_agg(s.source, ',' order by s.source) as pkglist
from newest_sources s, src_contents sc
from config import Config
from textutils import fix_maintainer
from dak_exceptions import DBUpdateError, NoSourceFieldError, FileExistsError
-import utils
# suppress some deprecation warnings in squeeze related to sqlalchemy
import warnings
@rtype: text
@return: stanza text of the control section.
'''
- import apt_inst
+ import utils
fullpath = self.poolfile.fullpath
deb_file = open(fullpath, 'r')
stanza = utils.deb_extract_control(deb_file)
include strings for suite, component, architecture and booleans
uncompressed, gzip, bzip2.
'''
- self.uncompressed = keywords.get('uncompressed', True)
- self.gzip = keywords.get('gzip', False)
- self.bzip2 = keywords.get('bzip2', False)
+ compression = keywords.get('compression', ['none'])
+ self.uncompressed = 'none' in compression
+ self.gzip = 'gzip' in compression
+ self.bzip2 = 'bzip2' in compression
root_dir = Config()['Dir::Root']
relative_dir = template % keywords
self.path = os.path.join(root_dir, relative_dir)
Output files are gzip compressed only.
'''
flags = {
- 'uncompressed': False,
- 'gzip': True,
- 'bzip2': False
+ 'compression': ['gzip'],
}
flags.update(keywords)
if flags['debtype'] == 'deb':
Output files are gzip compressed only.
'''
flags = {
- 'uncompressed': False,
- 'gzip': True,
- 'bzip2': False
+ 'compression': ['gzip'],
}
flags.update(keywords)
template = "dists/%(suite)s/%(component)s/Contents-source"
are strings. Output files are gzip compressed only.
'''
flags = {
- 'uncompressed': False,
- 'gzip': True,
- 'bzip2': True
+ 'compression': ['gzip', 'bzip2'],
}
flags.update(keywords)
if flags['debtype'] == 'deb':
files are gzip compressed only.
'''
flags = {
- 'uncompressed': False,
- 'gzip': True,
- 'bzip2': True
+ 'compression': ['gzip', 'bzip2'],
}
flags.update(keywords)
template = "dists/%(suite)s/%(component)s/source/Sources"
Output files are bzip2 compressed only.
'''
flags = {
- 'uncompressed': False,
- 'gzip': False,
- 'bzip2': True,
+ 'compression': ['bzip2'],
'language': 'en',
}
flags.update(keywords)