]> git.decadent.org.uk Git - dak.git/blob - ChangeLog
* katie.py: Move accept() autobuilding support into separate function (queue_b...
[dak.git] / ChangeLog
1 2005-12-05  Anthony Towns  <aj@erisian.com.au>
2
3         * katie.py: Move accept() autobuilding support into separate function 
4         (queue_build), and generalise to build different queues
5
6         * db_access.py: Add get_or_set_queue_id instead of hardcoding accepted=0
7
8         * jennifer: Initial support for enabling embargo handling with the
9         Dinstall::SecurityQueueHandling option.
10         * jennifer: Shift common code into remove_from_unchecked and move_to_dir
11         functions.
12
13         * katie.conf-security: Include embargo options
14         * init_pool.sql-security: Create disembargo table
15
16 2005-11-26  Anthony Towns  <aj@erisian.com.au>
17
18         * Merge of changes from klecker, by various people
19
20         * amber: special casing for not passing on amd64 and oldstable updates
21         * amber: security mirror triggering
22         * templates/amber.advisory: updated advisory structure
23         * apt.conf.buildd-security: update for sarge's release
24         * apt.conf-security: update for sarge's release
25         * cron.buildd-security: generalise suite support, update for sarge's release
26         * cron.daily-security: update for sarge's release, add udeb support
27         * vars-security: update for sarge's release
28         * katie.conf-security: update for sarge's release, add amd64 support,
29         update signing key
30
31         * docs/README.names, docs/README.quotes: include the additions
32
33 2005-11-25  Anthony Towns  <aj@erisian.com.au>
34
35         * Changed accepted_autobuild to queue_build everywhere.
36         * Add a queue table.
37         * Add a "queue" field in the queue_build table (currently always 0)
38
39         * jennifer: Restructure to make it easier to support special
40         purpose queues between unchecked and accepted.
41
42 2005-11-25  Anthony Towns  <aj@erisian.com.au>
43
44         * Finishing merge of changes from spohr, by various people still
45
46         * jennifer: If changed-by parsing fails, set variables to "" so REJECT
47         works
48         * jennifer: Re-enable .deb ar format checking
49         * katie.py: Convert to +bX binNMU special casing
50         * rhona: Add some debug output when deleting binaries
51         * cron.daily: Add emilie
52         * cron.unchecked: Add lock files
53
54 2005-11-15  Anthony Towns  <aj@erisian.com.au>
55
56         * Merge of changes from spohr, by various people.
57
58         * tiffani: new script to do patches to Packages, Sources and Contents
59         files for quicker downloads.
60         * ziyi: update to authenticate tiffani generated files
61
62         * dak: new script to provide a single binary with less arbitrary names
63         for access to dak functionality.
64
65         * cindy: script implemented
66
67         * saffron: cope with suites that don't have a Priority specified
68         * heidi: use get_suite_id()
69         * denise: don't hardcode stable and unstable, or limit udebs to unstable
70         * denise: remove override munging for testing (now done by cindy)
71         * helena: expanded help, added new, sort and age options, and fancy headers
72         * jennifer: require description, add a reject for missing dsc file
73         * jennifer: change lock file
74         * kelly: propogation support
75         * lisa: honour accepted lock, use mtime not ctime, add override type_id
76         * madison: don't say "dep-retry"
77         * melanie: bug fix in output (missing %)
78         * natalie: cope with maintainer_override == None; add type_id for overrides
79         * nina: use mtime, not ctime
80
81         * katie.py: propogation bug fixes
82         * logging.py: add debugging support, use | as the logfile separator
83
84         * katie.conf: updated signing key (4F368D5D)
85         * katie.conf: changed lockfile to dinstall.lock
86         * katie.conf: added Lisa::AcceptedLockFile, Dir::Lock
87         * katie.conf: added tiffani, cindy support
88         * katie.conf: updated to match 3.0r6 release
89         * katie.conf: updated to match sarge's release
90
91         * apt.conf: update for sarge's release
92         * apt.conf.stable: update for sarge's release
93         * apt.conf: bump daily max Contents change to 25MB from 12MB
94
95         * cron.daily: add accepted lock and invoke cindy  
96         * cron.daily: add daily.lock
97         * cron.daily: invoke tiffani
98         * cron.daily: rebuild accepted buildd stuff
99         * cron.daily: save rene-daily output on the web site
100         * cron.daily: disable billie
101         * cron.daily: add stats pr0n
102
103         * cron.hourly: invoke helena
104
105         * pseudo-packages.maintainers,.descriptions: miscellaneous updates
106         * vars: add lockdir, add etch to copyoverrides
107         * Makefile: add -Ipostgresql/server to CXXFLAGS
108
109         * docs/: added README.quotes
110         * docs/: added manpages for alicia, catherine, charisma, cindy, heidi,
111         julia, katie, kelly, lisa, madison, melanie, natalie, rhona.
112
113         * TODO: correct spelling of "conflicts"
114
115 2005-05-28  James Troup  <james@nocrew.org>
116
117         * helena (process_changes_files): use MTIME rather than CTIME (the
118         C's not for 'creation', stupid).
119         * lisa (sort_changes): likewise.
120
121         * jennifer (check_distributions): use has_key rather than an 'in'
122         test which doesn't work with python2.1.  [Probably by AJ]
123
124 2005-03-19  James Troup  <james@nocrew.org>
125
126         * rene (main): use Suite::<suite>::UdebComponents to determine
127         what components have udebs rather than assuming only 'main' does.
128
129 2005-03-18  James Troup  <james@nocrew.org>
130
131         * utils.py (rfc2047_encode): use codecs.lookup() rather than
132         encodings.<encoding>.Codec().decode() as encodings.utf_8 no longer
133         has a Codec() module in python2.4.  Thanks to Andrew Bennetts
134         <andrew@ubuntu.com>.
135
136 2005-03-06  Joerg Jaspert  <ganneff@debian.org>
137
138         * helena: add -n/--new HTML output option and improved sorting
139         options.
140
141 2005-03-06  Ryan Murray  <rmurray@debian.org>
142
143         * shania(main): use Cnf::Dir::Reject instead of REJECT
144
145 2005-02-08  James Troup  <james@nocrew.org>
146
147         * rene (main): add partial NBS support by checking that binary
148         packages are built by their real parent and not some random
149         stranger.
150         (do_partial_nbs): likewise.
151
152 2005-01-18  James Troup  <james@nocrew.org>
153
154         * katie.py (Katie.build_summaries): avoid leaking file handle when
155         extracting package description.
156         (Katie.force_reject): remember and close each file descriptor we
157         use.
158         (Katie.do_reject): s/file/temp_fh/ to avoid pychecker warning.
159         s/reason_file/reason_fd/ because it's a file descriptor.
160         (Katie.check_dsc_against_db): avoid leaking file handle whenever
161         invoking apt_pkg.md5sum().
162
163         * jennifer (check_deb_ar): new function: sanity check the ar
164         contents of a .deb.
165         (check_files): use it.
166         (check_timestamps): check for data.tar.bz2 if data.tar.gz can't be
167         found.
168         (check_files): accept 'raw-installer' as an alias for 'byhand'.
169
170 2005-01-14  Anthony Towns  <ajt@debian.org>
171
172         * kelly: when UNACCEPTing, don't double up the "Rejecting:"
173
174         * propup stuff (thanks to Andreas Barth)
175         * katie.conf: add stable MustBeOlderThan testing, add -security
176           propup
177         * jennifer: set distribution-version in .katie if propup may be needed
178         * katie.py: add propogation to cross_suite_version_check
179
180 2004-11-27  James Troup  <james@nocrew.org>
181
182         * nina: new script to split monolithic queue/done into date-based
183         hierarchy.
184
185         * rene (usage): document -s/--suite.
186         (add_nbs): use .setdefault().
187         (do_anais): likewise.
188         (do_nbs): don't set a string to "" and then += it.
189         (do_obsolete_source): new function - looks for obsolete source
190         packages (i.e source packages whose binary packages are ALL a)
191         claimed by someone else and b) newer when built from the other
192         source package).
193         (main): support -s/--suite.  Add 'obsolete source' to both 'daily'
194         and 'full' check modes.  Check for obsolete source packages.
195         linux-wlan-ng has been fixed - remove hideous bodge.
196
197         * jennifer (check_distributions): support 'reject' suite map type.
198
199         * utils.py (validate_changes_file_arg): s/file/filename/.
200         s/fatal/require_changes/.  If require_changes is -1, ignore errors
201         and return the .changes filename regardless.
202         (re_no_epoch): s/\*/+/ as there must be a digit in an epoch.
203         (re_no_revision): don't escape '-', it's not a special character.
204         s/\*/+/ as there must be at least one non-dash character after the
205         dash in a revision.  Thanks to Christian Reis for noticing both of
206         these.
207
208         * ashley (main): pass require_changes=-1 to
209         utils.validate_changes_file_arg().
210
211         * pseudo-packages.maintainers (kernel): switch to 'Debian Kernel
212         Team <debian-kernel@lists.debian.org>'.
213
214         * katie.py (Katie.in_override_p): fix .startswith() usage.
215
216         * katie.conf (Dinstall::DefaultSuite): add as 'unstable'.
217         (Lauren::MoreInfoURL): update to 3.0r3.
218         (Suite::Stable::Version): likewise.
219         (Suite::Stable::Description): likewise.
220
221         * cron.daily: disable automatic task override generation.
222
223         * cindy (process): restrict "find all packages" queries by
224         component.  Respect Options["No-Action"].
225         (main): add -n/--no-action support.  Only run on unstable.  Rename
226         type to otype (pychecker).
227
228 2004-11-27  Daniel Silverstone  <dsilvers@digital-scurf.org>
229
230         * katie.conf (Billie::BasicTrees): add all architectures.
231         (Billie::CombinationTrees): remove 'welovehp' and 'embedded', add
232         'everything'.
233
234         * cron.daily: Update a 'current' symlink when creating the
235         post-daily-cron-job database backup to aid mirroring to merkel.
236         Run billie.
237
238         * billie (BillieTarget.poolish_match): handle .udeb too.
239
240 2004-10-13  Ryan Murray  <rmurray@debian.org>
241
242         * amber (do_upload): Sort changes files in "katie" order so that
243           source always arrives before binary-only rebuilds
244         
245 2004-10-05  James Troup  <james@nocrew.org>
246
247         * jennifer (check_dsc): correct reject message on invalid
248         Maintainer field.
249
250 2004-09-20  James Troup  <james@nocrew.org>
251
252         * alicia: remove unused 'pwd' import.
253
254         * tea (check_override): underline suite name in output properly.
255
256         * rene (main): read a compressed Packages file.
257         * tea (validate_packages): likewise.
258
259         * katie.py (re_fdnic): add 'r' prefix.
260         (re_bin_only_nmu_of_mu): likewise.
261         (re_bin_only_nmu_of_nmu): likewise.
262
263         * madison (main): retrieve component information too and display
264         it if it's not 'main'.
265         * melanie (reverse_depends_check): likewise.
266
267         * utils.py (pp_dep): renamed...
268         (pp_deps): ... to this.
269         * jeri (check_dep): update calls to utils.pp_deps().
270         * melanie (reverse_depends_check): likewise.
271
272         * jennifer (check_changes): move initalization of email variables
273         from here...
274         (process_it): ...to here as we no longer always run
275         check_changes().  Don't bother to initialize
276         changes["architecture"].
277
278         * denise (list): renamed to...
279         (do_list): ...this to avoid name clash with builtin 'list'.
280         Similarly, s/file/output_file/, s/type/otype/.  Use .setdefault()
281         for dictionaries.
282         (main): Likewise for name clash avoidance and also
283         s/override_type/suffix/.  Adjust call to do_list().
284
285 2004-09-01  Ryan Murray  <rmurray@debian.org>
286
287         * tea (check_files): check the pool/ directory instead of dists/
288
289 2004-08-04  James Troup  <james@nocrew.org>
290
291         * jenna (cleanup): use .setdefault() for dictionaries.
292         (write_filelists): likewise.
293
294         (write_filelists): Use utils.split_args() not split() to split
295         command line arguments.
296         (stable_dislocation_p): likewise.
297
298         (write_filelists): Add support for mapping side of suite-based
299         "Arch: all mapping".
300         (do_da_do_da): ensure that if we're not doing all suites that we
301         process enough to be able correct map arch: all packages.
302
303         * utils.py (cant_open_exc): correct exception string,
304         s/read/open/, s/.$//.
305
306         * templates/amber.advisory: update to match reality a little
307         better.
308
309         * melanie (reverse_depends_check): read Packages.gz rather than
310         Packages.
311
312         * jennifer (check_files): check for unknown component before
313         checking for NEWness.
314
315         * katie.py (Katie.in_override_p): use .startswith in favour of a
316         slice.
317
318         * docs/melanie.1.sgml: document -R/--rdep-check.
319
320 2004-07-12  Daniel Silverstone  <dsilvers@digital-scurf.org>
321
322         * billie (main): Make the verbatim lists include all the README
323           elements.
324         * docs/README.names: Add billie in (correcting oversight)
325
326 2004-07-01  James Troup  <james@nocrew.org>
327
328         * emilie (main): handle woody's case-sensitive python-ldap,
329         s/keyfingerprint/keyFingerPrint/.
330
331 2004-06-25  James Troup  <james@nocrew.org>
332
333         * debian/control (Depends): add dpkg-dev since jennifer uses
334         dpkg-source.
335
336 2004-06-24  James Troup  <james@nocrew.org>
337
338         * melanie (main): s/file/temp_file/ and close file handle before
339         removing the temporary file.
340         (main): don't warn about needing a --carbon-copy if in no-action
341         mode.
342
343         * rene (do_nbs): pcmcia-cs has been fixed - remove hideous bodge.
344         (main): likewise.
345
346         * test/006/test.py (main): check bracketed email-only form.
347
348         * utils.py (fix_maintainer): if the Maintainer string is bracketed
349         email-only, strip the brackets so we don't end up with
350         <<james@nocrew.org>>.
351
352 2004-06-20  James Troup  <james@nocrew.org>
353
354         * jennifer (process_it): only run check_changes() if
355         check_signature() returns something.  (Likewise)
356
357         * utils.py (changes_compare): if there's no changes["version"] use
358         "0" rather than None.  (Avoids a crash on unsigned changes file.)
359
360 2004-06-17  Martin Michlmayr  <tbm@cyrius.com>
361
362         * jeri (pp_dep): moved from here to ...
363         * utils.py (pp_dep): here.
364
365         * melanie (main): add reverse dependency checking.
366
367 2004-06-17  James Troup  <james@nocrew.org>
368
369         * jennifer (check_dsc): s/dsc_whitespace_rules/signing_rules/.
370         * tea (check_dscs): likewise.
371
372         * utils.py (parse_changes): s/dsc_whitespace_rules/signing_rules/,
373         change from boolean to a variable with 3 possible values, 0 and 1
374         as before, -1 means don't require a signature.  Makes
375         parse_changes() useful for parsing arbitary RFC822-style files,
376         e.g. 'Release' files.
377         (check_signature): add support for detached signatures by passing
378         the files the signature is for as an optional third argument.
379         s/filename/sig_filename/g.  Add a fourth optional argument to
380         choose the keyring(s) to use.  Don't os.path.basename() the
381         sig_filename before checking it for taint.
382         (re_taint_free): allow '/'.
383
384 2004-06-11  James Troup  <james@nocrew.org>
385
386         * tea (check_files): make override.unreadable optional.
387         (validate_sources): close the Sources file handle.
388
389         * docs/README.first: clarify that 'alyson' and running
390         add_constraints.sql by hand is something you only want to do if
391         you're not running 'neve'.
392
393         * docs/README.config (Location::$LOCATION::Suites): document.
394
395         * db_access.py (do_query): also print out the result of the query.
396
397 2004-06-10  James Troup  <james@nocrew.org>
398
399         * katie.py (Katie.cross_suite_version_check): post-woody versions
400         of python-apt's apt_pkg.VersionCompare() function apparently
401         returns variable integers for less than or greater than results -
402         update our result checking to match.
403         * jenna (resolve_arch_all_vs_any): likewise.
404         * charisma (main): likewise.
405
406 2004-06-09  James Troup  <james@nocrew.org>
407
408         * jennifer (process_it): s/changes_valid/valid_changes_p/.  Add
409         valid_dsc_p and don't run check_source() if check_dsc() failed.
410         (check_dsc): on fatal failures return 0 so check_source() isn't
411         run (since it makes fatal assumptions about the presence of
412         mandatory .dsc fields).  
413         Remove unused and obsolete re_bad_diff and re_is_changes regexps.
414
415 2004-05-07  James Troup  <james@nocrew.org>
416
417         * katie.conf (Rhona::OverrideFilename): unused and obsolete, remove.
418         * katie.conf-non-US (Rhona::OverrideFilename): likewise.
419
420         * katie.conf (Dir::Override): remove duplicate definition.
421
422         * neve (get_or_set_files_id): add an always-NULL last_used column
423         to output.
424
425 2004-04-27  James Troup  <james@nocrew.org>
426
427         * apt.conf-security (tree "dists/stable/updates"): add
428         ExtraOverride - noticed by Joey Hess (#246050).
429         (tree "dists/testing/updates"): likewise.
430
431 2004-04-20  James Troup  <james@nocrew.org>
432
433         * jennifer (check_files): check for existing .changes or .katie
434         files of the same name in the Suite::<suite>::Copy{Changes,Katie}
435         directories.
436
437 2004-04-19  James Troup  <james@nocrew.org>
438
439         * jennifer (check_source): handle failure to remove the temporary
440          directory (used for source tree extraction) better, specifically:
441          if we fail with -EACCES, chmod -R u+rwx the temporary directory
442          and try again and if that works, REJECT the package.
443
444 2004-04-17  James Troup  <james@nocrew.org>
445
446         * docs/madison.1.sgml: document -b/--binary-type,
447         -g/--greaterorequal and -G/--greaterthan.
448
449         * madison (usage): -b/--binary-type only takes a single argument.
450         Document -g/--greaterorequal and -G/--greaterthan.
451         (main): add support for -g/--greaterorequal and -G/--greaterthan.
452
453 2004-04-12  Daniel Silverstone  <dsilvers@digital-scurf.org>
454
455         * billie: Cleaned up a load of comments, added /README.non-US to
456           the verbatim matches list.
457
458 2004-04-07  Daniel Silverstone  <dsilvers@digital-scurf.org>
459
460         * utils.py (size_type): Make it use real binary megabytes and
461           kilobytes, instead of the marketing terms used before.
462
463 2004-04-07  James Troup  <james@nocrew.org>
464
465         * katie.py (Katie.check_dsc_against_db): in the case we're
466         ignoring an identical-to-existing orig.tar.gz remember the path to
467         the existent version in pkg.orig_tar_gz.  Adjust query to grab
468         location.path too to be able to do so.
469
470 2004-04-03  James Troup  <james@nocrew.org>
471
472         * debian/control (Depends): add python2.1-email | python (>= 2.2)
473         needed for new utils.rfc2047_encode() function.
474
475         * utils.py (re_parse_maintainer): allow whitespace inside the
476         email address.
477         (Error): new exception base class.
478         (ParseMaintError): new exception class.
479         (force_to_utf8): new function.
480         (rfc2047_encode): likewise.
481         (fix_maintainer): rework.  use force_to_utf8() to force name and
482         rfc822 return values to always use UTF-8.  use rfc2047_encode() to
483         return an rfc2047 value.  Validate the address to catch missing
484         email addresses and (some) broken ones.
485
486         * katie.py (nmu_p.is_an_nmu): adapt for new utils.fix_maintainer()
487         by adopting foo2047 return value.
488         (Katie.dump_vars): add changedby2047 and maintainer2047 as
489         mandatory changes fields.  Promote changes and maintainer822 to
490         mandatory fields.
491         (Katie.update_subst): default maintainer2047 rather than
492         maintainer822.  User foo2047 rather than foo822 when setting
493         __MAINTAINER_TO__ or __MAINTAINER_FROM__.
494
495         * jennifer (check_changes): set default changes["maintainer2047"]
496         and changes["changedby2047"] values rather than their 822
497         equivalents.  Makes changes["changes"] a mandatory field.  Adapt
498         to new utils.fix_maintainer() - reject on exception and adopt
499         foo2047 return value.
500         (check_dsc): if a mandatory field is missing don't do any further
501         checks and as a result reduce paranoia about dsc[var] existence.
502         Validate the maintainer field by calling new
503         utils.fix_maintainer().
504
505         * ashley (main): add changedby2047 and maintainer2047 to mandatory
506         changes fields.  Promote maintainer822 to a mandatory changes
507         field.  add "pool name" to files fields.
508
509         * test/006/test.py: new file - tests for new
510         utils.fix_maintainer().
511
512 2004-04-01  James Troup  <james@nocrew.org>
513
514         * templates/lisa.prod (To): use __MAINTAINER_TO__ not __MAINTAINER__.
515
516         * jennifer (get_changelog_versions): create a symlink mirror of
517         the source files in the temporary directory.
518         (check_source): if check_dsc_against_db() couldn't find the
519         orig.tar.gz bail out.
520
521         * katie.py (Katie.check_dsc_against_db): if the orig.tar.gz is not
522         part of the upload store the path to it in pkg.orig_tar_gz and if
523         it can't be found set pkg.orig_tar_gz to -1.
524
525         Explicitly return the second value as None in the (usual) case
526         where we don't have to reprocess.  Remove obsolete diagnostic
527         logs.
528
529         * lisa (prod_maintainer): don't return anything, no one cares. (pychecker)
530
531         * utils.py (temp_filename): new helper function that wraps around
532         tempfile.mktemp().
533
534         * katie.py (Katie.do_reject): use it and don't import tempfile.
535         * lisa (prod_maintainer): likewise.
536         (edit_note): likewise.
537         (edit_new): likewise.
538         * lauren (reject): likewise.
539         * melanie (main): likewise.
540         * neve (do_sources): likewise.
541         * rene (main): likewise.
542         * tea (validate_sources): likewise.
543
544 2004-03-31  James Troup  <james@nocrew.org>
545
546         * tea (validate_sources): remove unused 's' temporary variable.
547
548 2004-03-15  James Troup  <james@nocrew.org>
549
550         * jennifer (check_dsc): check changes["architecture"] for
551         source before we do anything else.
552
553 2004-03-21  Daniel Silverstone  <dsilvers@digital-scurf.org>
554
555         * billie: Added
556         * katie.conf (Billie): Added sample Billie stanza to katie.conf
557
558 2004-03-12  James Troup  <james@nocrew.org>
559
560         * docs/README.config (Dir::Queue::BTSVersionTrack): document.
561
562         * katie.conf (Dir::Queue::BTSVersionTrack): define.
563
564         * katie.py (Katie.accept): add support for DebBugs Version
565         Tracking by writing out .versions (generated in jennifer's
566         get_changelog_versions()) and .debinfo (mapping of binary ->
567         source) files.
568
569         * ashley (main): add dsc["bts changelog"].
570
571         * katie.py (Katie.dump_vars): store dsc["bts changelog"] too.
572
573         * jennifer (check_diff): obsoleted by check_source(), removed.
574         (check_source): new function: create a temporary directory and
575         move into it and call get_changelog_versions().
576         (get_changelog_versions): new function: extract the source package
577         and optionally parse debian/changelog to obtain the version
578         history for the BTS.
579         (process_it): call check_source() rather than check_diff().
580
581 2004-03-08  James Troup  <james@nocrew.org>
582
583         * lisa (edit_index): Fix logic swapo from 'use "if varfoo in
584         listbar" rather than "if listbar.count(varfoo)"' change on
585         2004-02-24.
586
587 2004-03-05  James Troup  <james@nocrew.org>
588
589         * alicia (main): don't warn about not closing bugs - we don't
590         manage overrides through the BTS.
591
592 2004-02-27  Martin Michlmayr  <tbm@cyrius.com>
593
594         * docs/README.config: lots of updates and corrections.
595         * docs/README.first: likewise.
596
597         * docs/README.config: drop unused Dir::Queue::Root.
598         * katie.conf-non-US: likewise.
599         * katie.conf: likewise.
600         * katie.conf-security: likewise.
601
602 2004-02-27  James Troup  <james@nocrew.org>
603
604         * rose (process_tree): use 'if var in [ list ]' rather than long
605         'if var == foo or var == bar or var == baz'.  Suggested by Martin
606         Michlmayr.
607
608         * jennifer (check_files): reduce 'if var != None' to 'if var' as
609         suggested by Martin Michlmayr.
610         * catherine (poolize): likewise.
611         * charisma (main): likewise.
612         * halle (check_changes): likewise.
613         * heidi (main): likewise.
614         (process_file): likewise.
615         * kelly (install): likewise.
616         (stable_install): likewise.
617         * utils.py (fix_maintainer): likewise.
618
619         * apt.conf: add support for debian-installer in testing-proposed-updates.
620         * katie.conf (Suite::Testing-Proposed-Updates::UdebComponents):
621         add - set to main.
622
623         * mkmaintainers: add "-T15" option to wget of non-US packages file
624         so that we don't hang cron.daily if non-US is down.
625
626         * templates/lisa.prod (Subject): Prefix with "Comments regarding".
627
628         * templates/jennifer.bug-close: add Source and Source-Version
629         pseudo-headers that may be used for BTS Version Tracking someday
630         [ajt@].
631
632         * rene (do_nbs): special case linux-wlan-ng like we do for pcmcia.
633         (main): likewise.
634
635         * cron.unchecked: it's /org/ftp.debian.org not ftp-master.
636
637 2004-02-25  James Troup  <james@nocrew.org>
638
639         * katie.conf (SuiteMappings): don't map testing-security to
640         proposed-updates.
641
642 2004-02-24  James Troup  <james@nocrew.org>
643
644         * katie.py (Katie.__init__): remove unused 'values' field.
645
646         * utils.py (extract_component_from_section): use 's.find(c) != -1'
647         rather than 's.count(c) > 0'.
648
649         * katie.py (Katie.source_exists): use "if varfoo in listbar"
650         rather than "if listbar.count(varfoo)".
651         * halle (check_joey): likewise.
652         * jeri (check_joey): likewise.
653         * lisa (edit_index): likewise.
654         * jenna (stable_dislocation_p): likewise.
655
656         * jennifer (main): remove unused global 'nmu'.
657
658 2004-02-03  Daniel Silverstone  <dsilvers@digital-scurf.org>
659
660         * pseudo-packages.maintainers (ftp.debian.org): Changed the maintainer
661           to be ftpmaster@ftp-master.debian.org to bring it into line with how
662           the dak tools close bugs.
663
664 2004-02-02  Daniel Silverstone  <dsilvers@digital-scurf.org>
665
666         * katie.conf (Alicia): Added an Alicia section with email address
667         * templates/alicia.bug-close: Added
668         * docs/alicia.1.sgml: Added the docs for the -d/--done argument
669         * alicia (main): Added a -d/--done argument
670
671 2004-02-02  Daniel Silverstone  <dsilvers@digital-scurf.org>
672
673         * templates/lisa.prod: Oops, missed a BITCH->PROD conversion
674
675 2004-01-29  Daniel Silverstone  <dsilvers@digital-scurf.org>
676
677         * lisa (prod_maintainer): Added function to prod the maintainer without
678           accepting or rejecting the package
679         * templates/lisa.prod: Added this template for the prodding mail
680
681         * .cvsignore: Added neve-files which turns up in new installations
682
683 2004-01-30  Daniel Silverstone  <dsilvers@digital-scurf.org>
684
685         * alicia (usage): Fixed usage message to offer section and priority
686           as seperately optional arguments.
687         * alicia (main): Added a % (arg) interpolation needed when only
688           one of section or priority is provided and it cannot be found.
689
690 2004-01-29  Daniel Silverstone  <dsilvers@digital-scurf.org>
691
692         * alicia: Added
693         * docs/alicia.1.sgml: Added
694         * docs/Makefile: Added alicia to the list of manpages to build
695         * docs/README.names: Noted what alicia does
696         * docs/README.first: Noted where alicia is useful
697
698 2004-01-21  James Troup  <james@nocrew.org>
699
700         * madison (main): add -b/--binary-type.
701         (usage): likewise.
702
703         * denise (main): generate debian-installer overrides for testing
704         too.
705         * apt.conf: add support for debian-installer in testing.
706         * katie.conf (Suite::Testing::UdebComponents): set to main.
707
708         * katie.conf (Dinstall::SigningKeyIds): 2004 key.
709         * katie.conf-non-US (Dinstall::SigningKeyIds): likewise.
710         * katie.conf-security (Dinstall::SigningKeyIds): likewise.
711
712         * utils.py (parse_changes): don't process data not inside the
713         signed data.  Thanks to Andrew Suffield <asuffield@debian.org> for
714         pointing this out.
715         * test/005/test.py (main): new test to test for above.
716
717 2004-01-04  James Troup  <james@nocrew.org>
718
719         * jenna (write_filelists): correct typo, s/Components/Component/
720         for Options.
721
722 2004-01-04  Ryan Murray  <rmurray@debian.org>
723
724         * cron.buildd: move update of overrides and Packages file...
725         * cron.unchecked: to here.
726         * katie.conf-non-US: (Dinstall::SingingKeyIds) update for 2003v2 key
727         * katie.conf-security: likewise
728
729 2003-11-20  James Troup  <james@nocrew.org>
730
731         * jenna (main): don't use utils.try_with_debug(), it produces way
732         too much output.
733
734         * halle (check_changes): don't error out if a .changes refers to a
735         non-existent package, just warn and skip the file.
736
737         * docs/README.stable-point-release: mention halle and .changes
738         obsoleted by removal through melanie.  Update for 3.0r2.
739
740         * katie.conf (Suite::Stable::Version): bump to 3.0r2.
741         (Suite::Stable::Description): update for 3.0r2.
742         (Lauren::MoreInfoURL): likewise.
743         * katie.conf-non-US (Suite::Stable::Version): likewise.
744         (Suite::Stable::Description): likewise.
745         (Lauren::MoreInfoURL): likewise.
746
747         * apt.conf.stable (Default): don't define MaxContentsChange.
748         * apt.conf.stable-non-US (Default): likewise.
749
750         * lauren (reject): hack to work around partial replacement of an
751         upload, i.e. one or more binaries superseded by another source
752         package.
753
754 2003-11-17  James Troup  <james@nocrew.org>
755
756         * pseudo-packages.maintainers: point installation-reports at
757         debian-boot@l.d.o rather than debian-testing@l.d.o at jello@d.o's
758         request.
759
760         * utils.py (parse_changes): calculate the number of lines once
761         with len() rather than max().
762
763         * jennifer (check_dsc): handle the .orig.tar.gz disappearing from
764         files, since check_dsc_against_db() deletes the .orig.tar.gz
765         entry.
766
767 2003-11-13  Ryan Murray  <rmurray@debian.org>
768
769         * apt.conf: specify a src override file for debian-installer
770
771 2003-11-10  James Troup  <james@nocrew.org>
772
773         * fernanda.py (strip_pgp_signature): new function - strips PGP
774         signature from a file and returns the modified contents of the
775         file in a string.
776         (display_changes): use it.
777         (read_dsc): likewise.
778
779 2003-11-09  Ryan Murray  <rmurray@debian.org>
780
781         * cron.buildd: export accepted_autobuild table for unstable, and use
782         it to generate the incoming Packages/Sources rather than having apt
783         walk the directory.
784         * apt.conf.buildd: use exported table from cron.buildd to generate
785         Packages/Sources
786
787 2003-11-07  James Troup  <james@nocrew.org>
788
789         * kelly: import errno.
790
791         * katie.py (Katie.build_summaries): sort override disparities.
792
793         * kelly (install): set dsc_component based on the .dsc's component
794         not a random binaries.
795
796 2003-10-29  James Troup  <james@nocrew.org>
797
798         * katie.py (Katie.build_summaries): don't assume changes["source"]
799         exists since it might not.
800
801 2003-10-20  James Troup  <james@nocrew.org>
802
803         * pseudo-packages.maintainers: update security.d.o to use
804         team@s.d.o at joy@'s request.
805
806 2003-10-17  James Troup  <james@nocrew.org>
807
808         * jennifer (check_dsc): use .startswith rather than .find() == 0.
809
810 2003-10-17  Martin Michlmayr  <tbm@cyrius.com>
811
812         * tea (chk_bd_process_dir): use .endswith rather than slice.
813
814 2003-10-14  James Troup  <james@nocrew.org>
815
816         * tea (check_build_depends): new function.
817         (chk_bd_process_dir): likewise.  Validates build-depends in .dsc's
818         in the archive.
819         (main): update for new function.
820         (usage): likewise.
821
822         * katie.py (Katie.do_reject): sanitize variable names,
823         s/reject_filename/reason_filename/, s/fd/reason_fd/.  Move shared
824         os.close() to outside if clause.
825
826         * jennifer (check_dsc): check build-depends and
827         build-depends-indep by running them past apt_pkg.ParseSrcDepends.
828         Fold the ARRAY check into the same code block and tidy up it's
829         rejection message.
830         (check_changes): ensure that the Files field is non-empty.
831         Suggested by Santiago Vila <sanvila@unex.es>
832         (check_changes): normalize reject messages.
833         (check_dsc): instead of doing most of the checks inside a for loop
834         and an if, find the dsc_filename in a short loop over files first
835         and then do all the checks.  Add check for more than one .dsc in a
836         .changes which we can't handle.  Normalize reject messages.
837
838 2003-10-13  James Troup  <james@nocrew.org>
839
840         * katie.conf (Dinstall::Reject::NoSourceOnly): set to true.
841         * katie.conf-non-US (Dinstall::Reject::NoSourceOnly): likewise.
842
843         * jennifer (check_files): Set 'has_binaries' and 'has_source'
844         variables while iterating over 'files'.  Don't regenerate it when
845         checking for source if source is mentioned.
846
847         Reject source only uploads if the config variable
848         Dinstall::Reject::NoSourceOnly is set.
849
850 2003-10-03  James Troup  <james@nocrew.org>
851
852         * rene (main): add nasty hardcoded reference to debian-installer
853         so we detect NBS .udebs.
854
855 2003-09-29  James Troup  <james@nocrew.org>
856
857         * apt.conf (old-proposed-updates): remove.
858         * apt.conf-non-US (old-proposed-updates): likewise.
859
860 2003-09-24  James Troup  <james@nocrew.org>
861
862         * tea (check_files_not_symlinks): new function, ensure files
863         mentioned in the database aren't symlinks.  Includes code to
864         update any files that are like this to their real filenames +
865         location; commented out by though.
866         (usage): update for new function.
867         (main): likewise.
868
869 2003-09-24  Anthony Towns  <ajt@debian.org>
870
871         * vars: external-overrides variable added
872         * cron.daily: Update testing/unstable Task: overrides from joeyh
873         managed external source.
874
875 2003-09-22  James Troup  <james@nocrew.org>
876
877         * kelly (install): if we can't move the .changes into queue/done,
878         fail don't warn and carry on.  The old behaviour pre-dates NI and
879         doesn't make much sense now since jennifer checks both
880         queue/accepted and queue/done for any .changes files she's
881         processing.
882
883         * utils.py (move): don't throw exceptions on existing files or
884         can't overwrite, instead just fubar out.
885
886         * jennifer (check_dsc): also check Build-Depends-Indep for
887         ARRAY-lossage.  Noticed by Matt Zimmerman <mdz@debian.org>.
888
889 2003-09-18  James Troup  <james@nocrew.org>
890
891         * katie.py (Katie.close_bugs): only log the bugs we've closed
892         once.
893
894         * kelly (main): log as 'kelly', not 'katie'.
895
896 2003-09-16  James Troup  <james@nocrew.org>
897
898         * katie.py (Katie.check_binary_against_db): likewise noramlize.
899
900         * jennifer (check_changes): normalize reject message for "changes
901         file already exists" to be %s: <foo>.
902         (check_dsc): add a check for 'Build-Depends: ARRAY(<hex>)'
903         produced by broken dpkg-source in 1.10.11.  Tone down and
904         normalize rejection message for incompatible 'Format' version
905         numbers.
906         (check_diff): likewise tone down and normalize.
907
908 2003-09-07  James Troup  <james@nocrew.org>
909
910         * utils.py (parse_changes): if dsc_whitespace_rules is false,
911         don't bomb out on bogus empty lines.
912         (build_file_list): check for changes["files"] earlier.  use Dict
913         to create files[name] dictionary.
914         (send_mail): don't bother validating arguments.
915         (check_signature): minor improvements to some of the rejection
916         messages including listing the key id of the key that wasn't found
917         in the keyring.
918         (wrap): new function.
919
920         * tea: add new check 'validate-indices' that ensures all files
921         mentioned in indices (Packages, Sources) files do in fact exist.
922
923         * catherine (poolize): use a local re_isadeb which handles legacy
924         (i.e. no architecture) style .deb filenames.
925
926         * rosamund: new script.
927
928         * rhona (check_binaries): when checking for binary packages not in
929         a suite, don't bother selecting files that already have a
930         last_used date.
931         (check_sources): likewise.
932
933         * rhona: change all SQL EXISTS sub-query clauses to use the
934         postgres suggested convention of "SELECT 1 FROM".
935         * andrea (main): likewise.
936         * tea (check_override): likewise.
937         * catherine (main): likewise.
938
939         * katie.conf (Suite): remove OldStable and Old-Proposed-Updates
940         entries and in other suites MustBeNewerThan's.
941         (SuiteMappings): likewise
942         * katie.conf-non-US: likewise.
943         * katie.conf-security: likewise.
944
945         * apt.conf-security: remove oldstable.
946         * apt.conf.stable: likewise.
947         * apt.conf.stable-non-US: likewise.
948         * cron.buildd-security: likewise.
949         * cron.daily-security: likewise.
950         * vars-security (suites): likewise.
951         * wanna-build/trigger.daily: likewise.
952
953         * claire.py (clean_symlink): move...
954         * utils.py (clean_symlink): here.
955
956         * claire.py (find_dislocated_stable): update accordingly.
957
958 2003-08-16  Anthony Towns  <ajt@debian.org>
959
960         * katie.py (source_exists): expand the list of distributions
961         the source may exist in to include any suite that's mapped to
962         the destination suite (even transitively (a->b->c)). This should
963         unbreak binary uploads to *-proposed-updates.
964
965 2003-08-09  Randall Donald  <rdonald@debian.org>
966
967         * lisa (recheck): change changes["distribution"].keys() to
968         Katie.pkg.changes...
969
970 2003-08-08  Randall Donald  <rdonald@debian.org>
971
972         * katie.py: only tag bugs as fixed-in-experimental for
973         experimental uploads
974
975 2003-07-26  Anthony Towns  <ajt@debian.org>
976
977         * katie.py (source_exists): add an extra parameter to limit the
978         distribution(s) the source must exist in.
979         * kelly, lisa, jennifer: update to use the new source_exists
980
981 2003-07-15  Anthony Towns  <ajt@debian.org>
982
983         * ziyi: quick hack to support a FakeDI line in apt.conf to generate
984         checksums for debian-installer stuff even when it's just a symlink to
985         another suite
986
987         * apt.conf: add the FakeDI line
988
989 2003-06-09  James Troup  <james@nocrew.org>
990
991         * kelly (check): make sure the 'file' we're looking for in 'files'
992         hasn't been deleted by katie.check_dsc_against_db().
993
994 2003-05-07  James Troup  <james@nocrew.org>
995
996         * helena (time_pp): fix s/years/year/ typo.
997
998 2003-04-29  James Troup  <james@nocrew.org>
999
1000         * madison (usage): document -c/--component.
1001
1002         * madison (usage): Fix s/seperated/separated/.
1003         * melanie (usage): likewise.
1004         * jenna (usage): likewise.
1005
1006 2003-04-24  James Troup  <james@nocrew.org>
1007
1008         * cron.daily-non-US: if there's nothing for kelly to install, say
1009         so.
1010
1011         * jennifer (check_timestamps): print sys.exc_value as well as
1012         sys.exc_type when capturing exceptions.  Prefix 'timestamp check
1013         failed' with 'deb contents' to make it clearer what timestamp(s)
1014         are being checked.
1015
1016 2003-04-15  James Troup  <james@nocrew.org>
1017
1018         * cron.daily-non-US: only run kelly if there are some .changes
1019         files in accepted.
1020
1021         * rene: add -m/--mode argument which can be either daily (default)
1022         or full.  In daily mode only 'nviu' and 'nbs' checks are run.
1023         Various changes to make this possible including a poor attempt at
1024         splitting main() up a little.  De-hardcode suite numbers from SQL
1025         queries and return quietly from do_nviu() if experimental doesn't
1026         exist (i.e. non-US).  Hardcode pcmcia-cs as dubious NBS since it
1027         is.
1028
1029         * debian/control (Depends): remove python-zlib as it's obsolete.
1030
1031         * charisma (main): don't slice the \n off strings when we're
1032         strip()-ing it anyway.
1033         * heidi (set_suite): likewise.
1034         (process_file): likewise.
1035         * natalie (process_file): likewise.
1036
1037 2003-04-08  James Troup  <james@nocrew.org>
1038
1039         * katie.py (Katie.check_dsc_against_db): improve the speed of two
1040         slow queries by using one LIKE '%foo%' and then matching against
1041         '%s' or '/%s$' in python.  Also only join location when we need it
1042         (i.e. the .orig.tar.gz query).  On auric, this knocks ~3s of each
1043         query, so 6s for each sourceful package.
1044
1045         * cron.daily: invoke rene and send the report to ftpmaster.
1046         * cron.daily-non-US: likewise.
1047
1048 2003-03-14  James Troup  <james@nocrew.org>
1049
1050         * utils.py (send_mail): default filename to blank.
1051         * amber (make_advisory): adapt.
1052         * jennifer (acknowledge_new): likewise.
1053         * katie.py (Katie.close_bugs): likewise.
1054         (Katie.announce): likewise.
1055         (Katie.accept): likewise.
1056         (Katie.check_override): likewise.
1057         (Katie.do_reject): likewise.
1058         * kelly (do_reject): likewise.
1059         (stable_install): likewise.
1060         * lisa (do_bxa_notification): likewise.
1061         * lauren (reject): likewise.
1062         * melanie (main): likewise.
1063
1064         * rene (add_nbs): check any NBS packages against unstable to see
1065         if they haven't been removed already.
1066
1067         * templates/katie.rejected: remove paragraph about rejected files
1068         since they're o-rwx due to c-i-m and the uploader can't do
1069         anything about them and shania will take care of them anyway.
1070
1071         * madison (usage): update usage example to use comma seperation.
1072         * melanie (usage): likewise.
1073
1074         * utils.py (split_args): new function; splits command line
1075         arguments either by space or comma (whichever is used).  Also has
1076         optional-but-default DWIM spurious space detection to avoid
1077         'command -a i386, m68k' problems.
1078         (parse_args): use it.
1079         * melanie (main): likewise.
1080
1081         * melanie (main): force the admin to tell someone if we're not
1082         doing a rene-led removal (or closing a bug, which counts as
1083         telling someone).
1084
1085 2003-03-05  James Troup  <james@nocrew.org>
1086
1087         * katie.conf (Section): add embedded, gnome, kde, libdevel, perl
1088         and python sections.
1089         * katie.conf-security (Section): likewise.
1090
1091         * add_constraints.sql: add uid and uid_id_seq to grants.
1092
1093         * lisa (determine_new): also warn about adding overrides to
1094         oldstable.
1095
1096         * madison (main): make the -S/--source-and-binary query obey
1097         -s/--suite restrictions.
1098
1099 2003-03-03  James Troup  <james@nocrew.org>
1100
1101         * madison (main): if the Archive_Maintenance_In_Progress lockfile
1102         exists, warn the user that our output might seem strange.  (People
1103         get confused by multiple versions in a suite which happens
1104         post-kelly but pre-jenna.)
1105
1106 2003-02-21  James Troup  <james@nocrew.org>
1107
1108         * kelly (main): we don't need to worry about StableRejector.
1109
1110         * melanie (main): sort versions with apt_pkg.VersionCompare()
1111         prior to output.
1112
1113         * lauren: new script to manually reject packages from
1114         proposed-updates.  Updated code from pre-NI kelly (nee katie).
1115
1116 2003-02-20  James Troup  <james@nocrew.org>
1117
1118         * kelly (init): remove unused -m/--manual-reject argument.
1119
1120         * katie.py (Katie.force_reject): renamed from force_move to make
1121         it more explicit what this function does.
1122         (Katie.do_reject): update to match.
1123
1124         * utils.py (prefix_multi_line_string): add an optional argument
1125         include_blank_lines which defaults to 0.  If non-zero, blank lines
1126         will be includes in the output.
1127
1128         * katie.py (Katie.do_reject): don't add leading space to each line
1129         of the reject message.  Include blank lines when showing the
1130         message to the user.
1131
1132 2003-02-19  Martin Michlmayr  <tbm@cyrius.com>
1133
1134         * utils.py (fix_maintainer): replace pointless re.sub() with
1135         simple string format.
1136
1137 2003-02-11  James Troup  <james@nocrew.org>
1138
1139         * lisa (edit_overrides): only strip-to-one-char and upper-case
1140         non-numeric answers.  Fixes editing of items with indices >= 10;
1141         noticed by Randall.
1142         (edit_overrides): correct order of arguments to "not a valid
1143         index" error message.
1144
1145         * jenna (cleanup): call resolve_arch_all_vs_any() rather than
1146         remove_duplicate_versions(); thanks to aj for the initial
1147         diagnosis.
1148         (remove_duplicate_versions): correct how we return
1149         dominant_versions.
1150         (resolve_arch_all_vs_any): arch_all_versions needs to be a list of
1151         a tuple rather than just a tuple.
1152
1153 2003-02-10  James Troup  <james@nocrew.org>
1154
1155         * emilie: new script - sync fingerprint and uid tables with a
1156         debian.org LDAP DB.
1157
1158         * init_pool.sql: new table 'uid'; contains user ids.  Reference it
1159         in 'fingerprint'.
1160
1161         * db_access.py (get_or_set_uid_id): new function.
1162
1163         * jennifer (main): update locking to a) not used FCNTL (deprecated
1164         in python >= 2.2) and b) acknowledge upstream's broken
1165         implementation of lockf (see Debian bug #74777), c) try to acquire
1166         the lock non-blocking.
1167         * kelly (main): likewise.
1168
1169         * contrib/python_1.5.2-fcntl_lockf.diff: obsolete, removed.
1170
1171         * madison (main): only append the package to new_packages if it's
1172         not already in there; fixes -S/--source-and-binary for cases where
1173         the source builds a binary package of the same name.
1174
1175 2003-02-10  Anthony Towns  <ajt@debian.org>
1176
1177         * madison (main): use explicit JOIN syntax for
1178         -S/--source-and-binary queries to reduce the query's runtime from
1179         >10 seconds to negligible.
1180
1181 2003-02-08  James Troup  <james@nocrew.org>
1182
1183         * rene (main): in the NVIU output, append items to lists, not
1184         extend them; fixes amusing suggestion that "g n u m e r i c" (sic)
1185         should be removed.
1186
1187 2003-02-07  James Troup  <james@nocrew.org>
1188
1189         * apt.conf (tree "dists/unstable"): Add bzip2-ed Packages and
1190         Sources [aj].
1191
1192         * pseudo-packages.maintainers (bugs.debian.org): s/Darren
1193         O. Benham/Adam Heath/.
1194
1195         * katie.conf (Suite::Stable::Version): bump to 3.0r1a.
1196         (Suite::Stable::Description): update for 3.0r1a.
1197         (Dinstall::SigningKeyIds): update for 2003 key [aj].
1198
1199         * utils.py (gpgv_get_status_output): rename from
1200         get_status_output().
1201
1202         * neve (check_signature): use gpgv_get_status_output and Dict from
1203         utils().  Add missing newline to error message about duplicate tokens.
1204
1205         * saffron (per_arch_space_use): also print space used by source.
1206         (output_format): correct string.join() invocation.
1207
1208         * jennifer (check_signature): ignored duplicate EXPIRED tokens.
1209
1210 2003-02-04  James Troup  <james@nocrew.org>
1211
1212         * cron.buildd: correct generation of Packages/Sources and grep out
1213         non-US/non-free as well as non-free.
1214
1215 2003-02-03  Ryan Murray  <rmurray@debian.org>
1216
1217         * cron.buildd: generate quinn-diff output with full Packages/Sources
1218           files to get out-of-date vs. uncompiled right.
1219         * apt.conf.buildd: no longer generate uncompressed files, as they
1220           are generated in cron.buildd instead
1221         * add -i option to quinn-diff to ignore binary-all packages
1222         * apt.conf.buildd: remove and readd udeb to extensions.  If the udebs
1223           aren't in the packages file, the arch that uploaded them will build
1224           them anyways...
1225
1226 2003-01-30  James Troup  <james@nocrew.org>
1227
1228         * rene (main): only print suggested melanie command when there's
1229         some NBS to remove.
1230
1231 2003-01-30  Ryan Murray  <rmurray@debian.org>
1232
1233         * cron.buildd: fix incorrectly inverted lockfile check
1234
1235 2003-01-29  Ryan Murray  <rmurray@debian.org>
1236
1237         * cron.buildd: generate override.sid.all3.src
1238         * apt.conf.buildd: use generated override.sid.all3.src
1239
1240 2003-01-27  Martin Michlmayr  <tbm@cyrius.com>
1241
1242         * utils.py (get_status_output): moved from jennifer.
1243         (Dict): likewise.
1244         (check_signature): likewise.
1245
1246         * jennifer (get_status_output): moved to utils.py.
1247         (Dict): likewise.
1248         (check_signature): likewise.
1249
1250         * utils.py (check_signature): add an argument to specifiy which
1251         function to call when an error was found.
1252         (check_signature): document this function better.
1253
1254         * jennifer (check_files): pass the reject function as an argument
1255         to utils.check_signature.
1256         (process_it): likewise.
1257
1258 2003-01-20  James Troup  <james@nocrew.org>
1259
1260         * rene (main): lots of changes to improve the output and make it
1261         more useful.
1262
1263         * katie.py (Katie.check_override): make the override messages
1264         clearer (hopefully).
1265
1266 2002-12-26  James Troup  <james@nocrew.org>
1267
1268         * ziyi (usage): document the ability to pass suite(s) as
1269         argument(s).
1270         (main): read apt.conf after checking for -h/--help.
1271
1272         * tea (main): take the check to run as an argument.
1273
1274         * saffron.R: R script to graph daily install runs.
1275
1276         * saffron: new script; various stats functions.
1277
1278         * rhona (main): connect to the database after checking for -h/--help.
1279
1280         * neve (do_da_do_da): if no -a/--action option is given, bail out.
1281
1282         * melanie (main): sort versions with utils.arch_compare_sw().
1283
1284         * madison (usage): alphabetize order of options.
1285         * melanie (usage): likewise.
1286
1287         * kelly (usage): fix usage short description (we aren't dinstall).
1288
1289         * julia (usage): fix usage description and alphabetize order of
1290         options.
1291
1292         * jeri (usage): fix usage short description.
1293
1294         * jennifer (main): move --help and --version checks from here...
1295         (init): to here so that they work with an empty katie.conf.
1296         * kelly: likewise.
1297
1298         * alyson (usage): new function.
1299         (main): use it.
1300         * andrea: likewise.
1301         * ashley: likewise.
1302         * cindy: likewise.
1303         * denise: likewise.
1304         * helena: likewise.
1305         * neve: likewise.
1306         * rene: likewise.
1307         * rose: likewise.
1308         * tea: likewise.
1309
1310         * apt.conf.stable (tree "dists/stable"): add missing ExtraOverride
1311         entry that caused tasks to be omitted from 3.0r1.
1312
1313 2002-12-10  James Troup  <james@nocrew.org>
1314
1315         * jennifer (check_files): sanity check the Depends field to ensure
1316         it's non-empty if present since apt chokes on an empty one.
1317         Thanks to Ryan Murray for the idea.
1318
1319 2002-12-08  James Troup  <james@nocrew.org>
1320
1321         * katie.conf-security (Helena::Directories): new; include accepted
1322         in addition to byhand and new.
1323
1324         * helena (process_changes_files): use utils.arch_compare_sw().
1325         Justify things based on the longest [package, version,
1326         architecture].  Reduce '[note]' to '[N]' to save space, and remove
1327         the commas in architecture and version lists for the same reason.
1328         (main): make directories we process configurable through
1329         Helena::Directories in the config file; if that doesn't exist
1330         default to the old hardcoded values (byhand & new).
1331
1332         * utils.py (arch_compare_sw): moved here from madison.
1333         * madison (main): adjust to compensate.
1334
1335 2002-12-06  James Troup  <james@nocrew.org>
1336
1337         * ziyi (main): fix "suite foo not in apt.conf" msg to use the
1338         right filename.
1339
1340 2002-12-05  James Troup  <james@nocrew.org>
1341
1342         * katie.conf-non-US (Julia::KnownPostgres): add 'udmsearch'.
1343
1344 2002-11-28  Randall Donald  <rdonald@debian.org>
1345
1346         * fernanda.py (read_control): fix typo of 'Architecture'.
1347
1348 2002-11-26  James Troup  <james@nocrew.org>
1349
1350         * lisa (check_pkg): call less with '-R' so we see the colour from
1351         Randall's fernanda changes.
1352
1353         * neve (process_sources): if Directory points to a legacy location
1354         but the .dsc isn't there; assume it's broken and look in the pool.
1355         (update_section): new, borroed from alyson.
1356         (do_da_do_da): use it.
1357         (process_packages): add suite_it to the cache key used for
1358         arch_all_cache since otherwise we only add a package to the first
1359         suite it's in and ignore any subsequent ones.
1360
1361         * katie.conf-non-US (Location): fixed to reflect reality (all
1362         suites, except old-proposed-updates (which is legacy-mixed)) are
1363         pool.
1364
1365         * utils.py (try_with_debug): wrapper for print_exc().
1366         * jenna (main): use it.
1367         * neve (main): likewise.
1368
1369 2002-11-25  Randall Donald  <rdonald@debian.org>
1370
1371         * fernanda.py (main): added -R to less command line for raw control
1372         character support to print colours
1373         (check_deb): Instead of running dpkg -I on deb file, call
1374         output_deb_info, the new colourized control reporter.
1375         (check_dsc): add call to colourized dsc info reader, read_dsc, instead
1376         of printing out each .dsc line.
1377         (output_deb_info): new function. Outputs each key/value pair from
1378         read_control except in special cases where we highlight section,
1379         maintainer, architecture, depends and recommends.
1380         (create_depends_string): new function. Takes Depends tree and looks
1381         up it's compontent via projectb db, colourizes and constructs a
1382         depends string in original order.
1383         (read_dsc): new function. reads and parses .dsc info via
1384         utils.parse_changes. Build-Depends and Build-Depends-Indep are
1385         colourized.
1386         (read_control): new function. reads and parses control info via
1387         apt_pkg. Depends and Recommends are split in to list structures,
1388         Section and Architecture are colourized. Maintainer is colourized
1389         if it has a localhost.localdomain address.
1390         (split_depends): new function. Creates a list of lists of
1391         dictionaries of depends (package,version relation). Top list is
1392         colected from comma delimited items. Sub lists are | delimited.
1393         (get_comma_list): new function. splits string input among commas
1394         (get_or_list): new function. splits string input among | delimiters
1395         (get_depends_parts): new function. Creates dictionary of package name
1396         and version relation from dependancy string.
1397         Colours for section and depends are per component. Unfound depends
1398         are in bold. Lookups using version info is not supported yet.
1399
1400 2002-11-22  James Troup  <james@nocrew.org>
1401
1402         * katie.conf-security (Julia::KnownPostgres): add 'www-data' and
1403         'udmsearch'.
1404
1405         * amber (make_advisory): string.atol() is deprecated and hasn't
1406         been ported to string methods.  Use long() instead.
1407
1408         * init_pool.sql: explicitly specify the encoding (SQL_ASCII) when
1409         creating the database since we'll fail badly if it's created with
1410         e.g. UNICODE encoding.
1411
1412         * rose (main): AptCnf is a global.
1413
1414         * neve (get_location_path): new function determines the location
1415         from the the first (left-most) directory of a Filename/Directory.
1416         (process_sources): don't need 'location' anymore.  Use
1417         utils.warn().  Use the Directory: field for each package to find
1418         the .dsc.  Use get_location_path() to determine the location for
1419         each .dsc.
1420         (process_packages): do't need 'location' anymore.  Use
1421         utils.warn().  Use get_location_path().
1422         (do_sources): don't need 'location', drop 'prefix' in favour of
1423         being told the full path to the Sources file, like
1424         process_packages().
1425         (do_da_do_da): main() renamed, so that main can call us in a
1426         try/except.  Adapt for the changes in do_sources() and
1427         process_packages() above.  Assume Sources and Packages file are in
1428         <root>/dists/<etc.>.  Treat pool locations like we do legacy ones.
1429
1430         * katie.conf-security (Location): fixed to reflect reality (all
1431         suites are pool, not legacy).
1432
1433         * utils.py (print_exc): more useful (i.e. much more verbose)
1434         traceback; a recipe from the Python cookbook.
1435         * jenna (main): use it.
1436         * neve (main): likewise.
1437
1438 2002-11-19  James Troup  <james@nocrew.org>
1439
1440         * kelly (install): fix brain-damaged CopyChanges/CopyKatie
1441         handling which was FUBAR for multi-suite uploads.  Now we just
1442         make a dictionary of destinations to copy to and iterate over
1443         those.
1444
1445         * fernanda.py (check_deb): run linda as well as lintian.
1446
1447 2002-10-21  James Troup  <james@nocrew.org>
1448
1449         * melanie (main): change X-Melanie to X-Katie and prefix it with
1450         'melanie '.
1451
1452         * lisa (main): prefix X-Katie with 'lisa '.
1453
1454         * jennifer (clean_holding): fix typo in string method changes;
1455         s/file.find(file/file.find(/.
1456
1457         * cron.daily: invoke helena and send the report to ftpmaster.
1458         * cron.daily-non-US: likewise.
1459
1460 2002-10-16  James Troup  <james@nocrew.org>
1461
1462         * kelly (check): call reject() with a blank prefix when parsing
1463         the return of check_dsc_against_db() since it does its own
1464         prefix-ing.
1465
1466         * rose: new script; only handles directory creation initally.
1467
1468         * katie.conf (Dinstall::NewAckList): obsolete, removed.
1469         * katie.conf-non-US (Dinstall::NewAckList): likewise.
1470
1471 2002-10-06  James Troup  <james@nocrew.org>
1472
1473         * rene (main): remove bogus argument handling.
1474
1475         * kelly: katie, renamed.
1476         * cron.daily: adapt for katie being renamed to kelly.
1477         * cron.daily-non-US: likewise.
1478         * amber (main): likewise.
1479
1480         * Changes for python 2.1.
1481
1482         * kelly: time.strftime no longer requires a second argument of
1483         "time.localtime(time.time())".
1484         * logging.py: likewise.
1485         * rhona: likewise.
1486         * shania (init): likewise.
1487
1488         * amber: use augmented assignment.
1489         * catherine (poolize): likewise.
1490         * claire.py (fix_component_section): likewise.
1491         * halle (check_changes): likewise.
1492         * helena: likewise.
1493         * jenna: likewise.
1494         * jennifer: likewise.
1495         * jeri: likewise.
1496         * katie.py: likewise.
1497         * kelly: likewise.
1498         * lisa: likewise.
1499         * madison (main): likewise.
1500         * melanie: likewise.
1501         * natalie: likewise.
1502         * neve: likewise.
1503         * rhona: likewise.
1504         * tea: likewise.
1505         * utils.py: likewise.
1506         * ziyi: likewise.
1507
1508         * amber: use .endswith.
1509         * fernanda.py: likewise.
1510         * halle (main): likewise.
1511         * jennifer: likewise.
1512         * jeri: likewise.
1513         * katie.py: likewise.
1514         * kelly: likewise.
1515         * lisa: likewise.
1516         * neve: likewise.
1517         * shania (main): likewise.
1518         * utils.py: likewise.
1519
1520         * alyson: use string methods.
1521         * amber: likewise.
1522         * andrea: likewise.
1523         * ashley: likewise.
1524         * catherine: likewise.
1525         * charisma: likewise.
1526         * claire.py: likewise.
1527         * db_access.py: likewise.
1528         * denise: likewise.
1529         * halle: likewise.
1530         * heidi: likewise.
1531         * helena: likewise.
1532         * jenna: likewise.
1533         * jennifer: likewise.
1534         * jeri: likewise.
1535         * julia: likewise.
1536         * katie.py: likewise.
1537         * kelly: likewise.
1538         * lisa: likewise.
1539         * logging.py: likewise.
1540         * madison: likewise.
1541         * melanie: likewise.
1542         * natalie: likewise.
1543         * neve: likewise.
1544         * rene: likewise.
1545         * tea: likewise.
1546         * utils.py: likewise.
1547         * ziyi: likewise.
1548
1549 2002-09-20  Martin Michlmayr  <tbm@cyrius.com>
1550
1551         * utils.py (parse_changes): use <string>.startswith() rather than
1552         string.find().
1553
1554 2002-08-27  Anthony Towns  <ajt@debian.org>
1555
1556         * katie.py (in_override_p): when searching for a source override,
1557         and the dsc query misses, search for both udeb and deb overrides
1558         as well. Should fix the UNACCEPT issues with udebs.
1559
1560 2002-08-24  James Troup  <james@nocrew.org>
1561
1562         * melanie (main): remove gratuitous WHERE EXISTS sub-select from
1563         source+binary package finding code which was causing severe
1564         performance degradation with postgres 7.2.
1565
1566 2002-08-14  James Troup  <james@nocrew.org>
1567
1568         * julia (main): use the pwd.getpwall() to get system user info
1569         rather than trying to read a password file.  Add a -n/--no-action
1570         option.
1571
1572         * cron.hourly: julia no longer takes any arguments.
1573         * cron.hourly-non-US: likewise.
1574
1575 2002-08-07  James Troup  <james@nocrew.org>
1576
1577         * katie (install): handle multi-suite uploads when CopyChanges
1578         and/or CopyKatie are in use, ensuring we only copy stuff once.
1579
1580 2002-08-01  Ryan Murray  <rmurray@debian.org>
1581
1582         * wanna-build/trigger.daily: initial commit, with locking
1583         * cron.buildd: add locking against daily run
1584
1585 2002-07-30  James Troup  <james@nocrew.org>
1586
1587         * melanie (main): readd creation of suite_ids_list so melanie is
1588         remotely useful again.
1589
1590         * katie.conf: adopt for woody release; diable
1591         StableDislocationSupport, add oldstable, adjust other suites and
1592         mappings, fix up location.
1593         * katie.conf-non-US: likewise.
1594         * katie.conf-security: likewise.
1595
1596         * apt.conf.stable: adapt for woody release; add oldstable, adjust
1597         stable.
1598         * apt.conf.stable-non-US: likewise.
1599
1600         * apt.conf-security: adapt for woody release; adding oldstable,
1601         oldstable, adjust stable and testing.
1602         * cron.daily-security: likewise.
1603         * cron.buildd-security: likewise.
1604
1605         * apt.conf: adapt for woody release; rename woody-proposed-updates
1606         to testing-proposed-updates and proposed-updates to
1607         old-proposed-updates.
1608         * apt.conf-non-US: likewise.
1609
1610         * vars-non-US (copyoverrides): add sarge.
1611         * vars (copyoverrides): likewise.
1612
1613         * vars-security (suites): add oldstable.
1614
1615 2002-07-22  Ryan Murray  <rmurray@debian.org>
1616
1617         * apt.conf.security-buildd: use suite codenames instead of
1618           distnames.
1619
1620 2002-07-16  James Troup  <james@nocrew.org>
1621
1622         * denise (main): fix filenames for testing override files.
1623
1624 2002-07-14  James Troup  <james@nocrew.org>
1625
1626         * jennifer (process_it): call check_md5sums later so we can check
1627         files in the .dsc too
1628         (check_md5sums): check files in the .dsc too.  Check both md5sum
1629         and size.
1630
1631         * melanie (main): use parse_args() and join_with_commas_and() from
1632         utils.  If there's nothing to do, say so and exit, don't ask for
1633         confirmation etc.
1634
1635         * amber (join_with_commas_and): moved from here to ...
1636         * utils.py (join_with_commas_and): here.
1637
1638 2002-07-13  James Troup  <james@nocrew.org>
1639
1640         * madison (main): use parse_args() from utils.  Support
1641         -c/--component.
1642
1643         * jenna (parse_args): moved from here to ...
1644         * utils.py (parse_args): here.
1645
1646         * katie.conf (Architectures): minor corrections to the description
1647         for arm, mips and mipsel.
1648         * katie.conf-non-US (Architectures): likewise.
1649         * katie.conf-security (Architectures): likewise.
1650
1651         * cron.daily-security: use natalie's new -a/--add functionality to
1652         flesh out the security overrides.
1653
1654 2002-07-12  James Troup  <james@nocrew.org>
1655
1656         * cron.buildd (ARCHS): add arm.
1657
1658         * katie.conf: 2.2r7 was released.
1659         * katie.conf-non-US: likewise.
1660
1661         * utils.py (parse_changes): handle a multi-line field with no
1662         starting line.
1663
1664 2002-06-25  James Troup  <james@nocrew.org>
1665
1666         * templates/amber.advisory (To): add missing email address since
1667         __WHOAMI__ is only a name.
1668
1669         * katie.conf-security (Melane::LogFile): correct to go somewhere
1670         katie has write access to.
1671         (Location::/org/security.debian.org/ftp/dists/::Suites): add
1672         Testing.
1673
1674         * natalie: add support for -a/-add which adds packages only
1675         (ignoring changes and deletions).
1676
1677         * katie.py (Katie.announce): Dinstall::CloseBugs is a boolean so
1678         use FindB, not get.
1679
1680 2002-06-22  James Troup  <james@nocrew.org>
1681
1682         * jennifer (check_files): validate the package name and version
1683         field.  If 'Package', 'Version' or 'Architecture' are missing,
1684         don't try any further checks.
1685         (check_dsc): likewise.
1686
1687         * utils.py (re_taint_free): add '~' as a valid character.
1688
1689 2002-06-20  Anthony Towns  <ajt@debian.org>
1690
1691         * katie.conf-non-US: add OverrideSuite for w-p-u to allow uploads
1692
1693 2002-06-09  James Troup  <james@nocrew.org>
1694
1695         * jennifer (check_files): reduce useless code.
1696
1697         * cron.daily-security: run symlinks -dr on $ftpdir.
1698
1699         * vars-security (ftpdir): add.
1700
1701 2002-06-08  James Troup  <james@nocrew.org>
1702
1703         * neve (update_override_type): transaction is handled higher up in
1704         main().
1705         (update_priority): likewise.
1706         (process_sources): remove code that makes testing a duplicate of
1707         stable.
1708         (process_packages): likewise.
1709
1710         * templates/amber.advisory: add missing mail headers.
1711
1712         * cron.daily-security: also call apt-ftparchive clean for
1713         apt.conf.buildd-security.
1714         * cron.weekly: likewise.
1715
1716         * amber (do_upload): write out a list of source packages (and
1717         their version) uploaded for testing.
1718         (make_advisory): add more Subst mappings for the mail headers.
1719         (spawn): check for suspicious characters in the command and abort
1720         if their found.
1721
1722 2002-06-07  James Troup  <james@nocrew.org>
1723
1724         * ziyi (main): remove the 'nonus'/'security' hacks and use
1725         Dinstall::SuiteSuffix (if it exists) instead.  Always try to write
1726         the lower level Release files, even if they don't exist.  fubar
1727         out if we can't open a lower level Release file for writing.
1728
1729         * katie.conf-non-US (Dinstall): add SuiteSuffix, used to simplify
1730         ziyi.
1731         * katie.conf-security (Dinstall): likewise.
1732
1733         * amber (do_upload): renamed from get_file_list().  Determine the
1734         upload host from the original component.
1735         (init): Add a -n/--no-action option.  Fix how we get changes_files
1736         (i.e. from the return value of apt_pkg.ParseCommandLine(), not
1737         sys.argv).  Add an Options global.
1738         (make_advisory): support -n/--no-action.
1739         (spawn): likewise.
1740         (main): likewise.
1741         (usage): document -n/--no-action.
1742
1743         * cron.buildd-security: fix path to Packages-arch-specific in
1744         quinn-diff invocation.
1745
1746         * katie.conf-security (Dinstall::AcceptedAutoBuildSuites): change
1747         to proper suite names (i.e. stable, testing) rather than codenames
1748         (potato, woody).
1749         (Dinstall::DefaultSuite): likewise.
1750         (Suite): likewise.
1751         (Location::/org/security.debian.org/ftp/dists/::Suites): likewise.
1752         * vars-security (suites): likewise.
1753         * apt.conf-security: likewise.
1754
1755         * katie.conf-security (Component): add "updates/" prefix.
1756         (Suite::*::Components): likewise.
1757         (ComponentMappings): new; map all {ftp-master,non-US} components
1758         -> updates/<foo>.
1759
1760         * katie.conf-security (Natalie): removed; the options have
1761         defaults and ComponentPosition is used by alyson which doesn't
1762         work on security.d.o.
1763         (Amber): replace UploadHost and UploadDir with ComponentMappings
1764         which is a mapping of components -> URI.
1765         (Suite::*::CodeName): strip bogus "/updates" suffix hack.
1766         (SuiteMappings): use "silent-map" in preference to "map".
1767
1768         * cron.unchecked-security: fix call to cron.buildd-security.
1769
1770         * cron.daily-security: map local suite (stable) -> override suite
1771         (potato) when fixing overrides.  Correct component in natalie call
1772         to take into account "updates/" prefix.  Fix cut'n'waste in
1773         override.$dist.all3 generation, the old files weren't being
1774         removed, so they were endlessly growing.
1775
1776         * neve (main): don't use .Find for the CodeName since we require
1777         it.  Location::*::Suites is a ValueList.
1778         (check_signature): ignore duplicate SIGEXPIRED tokens.  Don't bomb
1779         out on expired keys, just warn.
1780         (update_override_type): new function; lifted from alyson.
1781         (update_priority): likewise.
1782         (main): use update_{override_type,priority}().
1783
1784         * jennifer (check_distributions): remove redunant test for
1785         SuiteMappings; ValueList("does-not-exist") returns [] which is
1786         fine.  Add support for a "silent-map" type which doesn't warn
1787         about the mapping to the user.
1788         (check_files): add support for ComponentMappings, similar to
1789         SuiteMappings, but there's no type, just a source and a
1790         destination and the original component is stored in "original
1791         component".
1792         * katie.py (Katie.dump_vars): add "original component" as an
1793         optionsal files[file] dump variable.
1794
1795         * claire.py (find_dislocated_stable): dehardcode 'potato' in SQL
1796         query.  Add support for section-less legacy locations like current
1797         security.debian.org through YetAnotherConfigBoolean
1798         'LegacyStableHasNoSections'.
1799         * katie.conf-security (Dinstall): LegacyStableHasNoSections is true.
1800
1801         * utils.py (real_arch): moved here from ziyi.
1802         * ziyi (real_arch): moved to utils.py.
1803         * ziyi (main): likewise.
1804
1805         * claire.py (find_dislocated_stable): use real_arch() with
1806         filter() to strip out source and all.
1807         * neve (main): likewise.
1808         * rene (main): likewise.
1809         * jeri (parse_packages): likewise.
1810
1811 2002-06-06  James Troup  <james@nocrew.org>
1812
1813         * tea (check_missing_tar_gz_in_dsc): modifed patch from Martin
1814         Michlmayr <tbm@cyrius.com> to be more verbose about what we're
1815         doing.
1816
1817 2002-05-23  Martin Michlmayr  <tbm@cyrius.com>
1818
1819         * jeri (check_joey): check if the line contains two elements
1820         before accessing the second.  Also, strip trailing spaces as well
1821         as the newline.
1822         * halle (check_joey): likewise.
1823
1824 2002-06-05  James Troup  <james@nocrew.org>
1825
1826         * cron.unchecked-security: new file; like cron.unchecked but if
1827         there's nothing to do exit so we don't call cron.buildd-security.
1828
1829         * apt.conf.buildd-security: new file.
1830
1831         * vars (archs): alphabetize.
1832         * vars-non-US (archs): likewise.
1833
1834         * vars-security: add unchecked.
1835
1836         * madison (main): reduce rather bizarrely verbose and purposeless
1837         code to print arches to a simple string.join.
1838
1839         * katie.conf (Suites::Unstable): add UdebComponents, a new
1840         valuelist of suites, used by jenna to flesh out the list of
1841         <suite>_main-debian-installer-binary-<arch>.list files generated.
1842         (Dinstall): add StableDislocationSupport, a new boolean used by
1843         jenna to enable or disable stable dislocation support
1844         (i.e. claire), as true.
1845
1846         * katie.conf (Dinstall): add StableDislocationSupport, a new
1847         boolean used by jenna to enable or disable stable dislocation
1848         support (i.e. claire), as true.
1849         * katie.conf-non-US: likewise.
1850         * katie.conf-security: likewise.
1851
1852         * cron.daily-security: generate .all3 overrides for the buildd
1853         support.  Freshen a local copy of Packages-arch-specific from
1854         buildd.debian.org.
1855
1856         * claire.py (find_dislocated_stable): disable the support for
1857         files in legacy-mixed locations since none of the Debian archives
1858         have any anymore.
1859
1860         * helena: new script; produces a report on NEW and BYHAND
1861         packages.
1862
1863         * jenna: rewritten from scratch to fix speed problems.  Run time
1864         on auric goes down from 31.5 minutes to 3.5 minutes.  Of that 3.5
1865         minutes, 105 seconds are the monster query and 70 odd seconds is
1866         claire.
1867
1868         * apt.conf.buildd (Default): remove MaxContentsChange as it's
1869         irrelevant.
1870
1871 2002-06-05  Ryan Murray  <rmurray@debian.org>
1872
1873         * cron.buildd-security: new file.
1874
1875 2002-06-05  Matt Kraai  <kraai@alumni.cmu.edu>
1876
1877         * denise (list): take a file argument and use it.
1878         (main): don't abuse sys.stdout, just write to the file.
1879
1880         * claire.py (usage): Fix misspelling.
1881         (clean_symlink): Simplify.
1882         (find_dislocated_stable): Avoid unnecessary work.
1883
1884 2002-05-29  James Troup  <james@nocrew.org>
1885
1886         * cameron: removed; apt-ftparchive can simply walk the directory.
1887
1888 2002-05-26  Anthony Towns  <ajt@debian.org>
1889
1890         * katie.conf{,-non-US}: Map testing to testing-proposed-updates
1891         for the autobuilders.
1892
1893 2002-05-24  Ryan Murray  <rmurray@debian.org>
1894
1895         * cron.buildd: update override files before running apt-ftparchive
1896
1897 2002-05-23  Martin Michlmayr  <tbm@cyrius.com>
1898
1899         * amber (main): remove extra space in prompt.
1900
1901         * utils.py (validate_changes_file_arg): use original filename in
1902         error messages.
1903
1904         * jeri (check_joey): close file after use.
1905         (parse_packages): likewise.
1906         (main): setup debug option properly.
1907
1908         * melanie (main): remove unused packages variable and simplify the
1909         code to build up con_packages by using repr().
1910
1911 2002-05-23  James Troup  <james@nocrew.org>
1912
1913         * lisa (recheck): when we reject, also return 0 so the package is
1914         skipped.
1915         (sg_compare): fix note sorting.
1916         (recheck): remove the .katie file after rejection.
1917
1918         * katie.py (Katie.accept): accepted auto-build support take 3;
1919         this time adding support for security.  Security needs a) non-pool
1920         files copied rather than symlinked since accepted is readable only
1921         by katie/security and www-data needs to be able to see the files,
1922         b) needs per-suite directories.  SpecialAcceptedAutoBuild becomes
1923         AcceptedAutoBuildSuites and is a ValueList containing the suites.
1924         SecurityAcceptedAutoBuild is a new boolean which controls whether
1925         or not normal or security style is used.  The unstable_accepted
1926         table was renamed to accepted_autobuild and a suite column added.
1927         Also fix a bug noticed by Ryan where an existent orig.tar.gz
1928         didn't have it's last_used/in_accepted flags correctly updated.
1929         * katie (install): likewise.
1930         * rhona (clean_accepted_autobuild): likewise.
1931
1932 2002-05-22  James Troup  <james@nocrew.org>
1933
1934         * lisa (sort_changes): new function; sorts changes properly.
1935         Finally.
1936         (sg_compare): new function; helper for sort_changes().  Sorts by
1937         have note and time of oldest upload.
1938         (indiv_sg_compare): new function; helper for sort_changes().
1939         Sorts by source version, have source and filename.
1940         (main): use sort_changes().
1941         (changes_compare): obsoleted; removed.
1942
1943 2002-05-20  James Troup  <james@nocrew.org>
1944
1945         * rhona (clean_accepted_autobuild): don't die if a file we're
1946         trying to remove doesn't exist.  Makes rhona more friendly to
1947         katie/katie.py crashes/bugs without any undue cost.
1948
1949 2002-05-19  James Troup  <james@nocrew.org>
1950
1951         * lisa (main): if sorting a large number of changes give some
1952         feedback.
1953         (recheck): new function, run the same checks (modulo NEW,
1954         obviously) as katie does, if they fail do the standard
1955         reject/skip/quit dance.
1956         (do_pkg): use it.
1957
1958         * katie (install): don't try to unlink the symlink in the
1959         AcceptedAutoBuild support if the destination is not a symlink (or
1960         doesn't exist).  Avoids unnecessary bombs on previous partial
1961         accepts and will still bomb hard if the file exists and isn't a
1962         symlink.
1963
1964         * utils.py: blah, commands _is_ used when the mail stuff isn't
1965         commented out like it is in my test environment.
1966
1967         * lisa (changes_compare): "has note" overrides everything else.
1968         Use .katie files rather than running parse_changes, faster and
1969         allows "has note" to work.  Correct version compare, it was
1970         reversed.  Ctime check should only kick in if the source packages
1971         are not the same.
1972         (print_new): print out and return any note.  Rename 'ret_code' to
1973         'broken'.
1974         (edit_new): renamed from spawn_editor.  Don't leak file
1975         descriptors.  Clean up error message if editor fails.
1976         (edit_note): new function, allows one to edit notes.
1977         (do_new): add note support, editing and removing.
1978         (init): kill -s/--sort; with notes we always want to use our
1979         sorting method.
1980         (usage): likewise.
1981
1982         * katie.py (Katie.dump_vars): add "lisa note" as an optional
1983         changes field.
1984
1985         * utils.py (build_file_list): rename 'dsc' to 'is_a_dsc' and have
1986         it default to 0.  Adapt tests to assume it's boolean.
1987         * fernanda.py (check_changes): adjust call appropriately.
1988         * halle (check_changes): likewise.
1989         * jennifer (check_changes): likewise.
1990         * jeri (check_changes): likewise.
1991         * shania (flush_orphans): likewise.
1992
1993         * jennifer (check_dsc): pass is_a_dsc by name when calling
1994         build_file_list() for clarity.
1995         * shania (flush_orphans): likewise.
1996         * tea (check_missing_tar_gz_in_dsc): likewise.
1997
1998         * jennifer (check_dsc): pass dsc_whitespace_rules by name when
1999         calling parse_changes() for clarity.
2000         * tea (check_dscs): likewise.
2001
2002         * utils.py (parse_changes): make dsc_whitespace_rules default to
2003         not true.
2004         * halle (check_changes): adjust call appropriately.
2005         * jennifer (check_changes): likewise.
2006         * jeri (check_changes): likewise.
2007         * lisa (changes_compare): likewise.
2008         * utils.py (changes_compare): likewise.
2009         * melanie (main): likewise.
2010         * shania (flush_orphans): likewise.
2011         * fernanda.py (check_changes): likewise.
2012
2013 2002-05-18  James Troup  <james@nocrew.org>
2014
2015         * katie.py (Katie.dump_vars): make the .katie file unreadable,
2016         it's not useful and by and large a duplication of information
2017         available in readable format in other files.
2018
2019 2002-05-16  Ryan Murray  <rmurray@debian.org>
2020
2021         * melanie: Dir::TemplatesDir -> Dir::Templates
2022
2023 2002-05-15  Ryan Murray  <rmurray@debian.org>
2024
2025         * cameron: correct the use of os.path.join
2026
2027 2002-05-15  Anthony Towns  <ajt@debian.org>
2028
2029         * ziyi: Update to match the new format for Architectures/Components
2030         in katie.conf.
2031
2032 2002-05-14  James Troup  <james@nocrew.org>
2033
2034         * amber: new script; 'installer' wrapper script for the security
2035         team.
2036
2037         * katie.py (Katie.announce): remove unused 'dsc' local
2038         variable. (pychecker)
2039
2040         * ziyi: pre-define AptCnf and out globals to None. (pychecker)
2041
2042         * neve: don't import sys, we don't use it. (pychecker)
2043         (check_signature): fix return type mismatch. (pychecker)
2044
2045         * utils.py: don't import commands, we don't use it.  (pychecker)
2046
2047         * katie (install): SpecialAcceptedAutoBuild is a boolean.
2048
2049         * katie.py (Katie.dump_vars): don't store "oldfiles", it's
2050         obsoleted by the change to "othercomponents" handling in jennifer
2051         detailed below.
2052         (Katie.cross_suite_version_check): new function; implements
2053         cross-suite version checking rules specified in the conf file
2054         while also enforcing the standard "must be newer than target
2055         suite" rule.
2056         (Katie.check_binary_against_db): renamed, since it's invoked once
2057         per-binary, "binaries" was inaccurate.  Use
2058         cross_suite_version_check() and don't bother with the "oldfiles"
2059         rubbish as jennifer works out "othercomponents" herself now.
2060         (Katie.check_source_against_db): use cross_suite_version_check().
2061
2062         * katie (check): the version and file overwrite checks
2063         (check_{binary,source,dsc}_against_db) are not per-suite.
2064
2065         * jennifer (check_files): less duplication of
2066         'control.Find("Architecture", "")' by putting it in a local
2067         variable.
2068         (check_files): call check_binary_against_db higher up since it's
2069         not a per-suite check.
2070         (check_files): get "othercomponents" directly rather than having
2071         check_binary_against_db do it for us.
2072
2073         * heidi (main): 'if x:', not 'if x != []:'.
2074         * katie.py (Katie.in_override_p): likewise.
2075         (Katie.check_dsc_against_db): likewise.
2076         * natalie (main): likewise.
2077         * rene (main): likewise.
2078         * ziyi (real_arch): likewise.
2079
2080         * alyson (main): Suite::%s::Architectures, Suite::%s::Components
2081         and OverrideType are now value lists, not lists.
2082         * andrea (main): likewise.
2083         * cindy (main): likewise.
2084         * claire.py (find_dislocated_stable): likewise.
2085         * denise (main): likewise.
2086         * jenna (main): likewise.
2087         * jennifer (check_distributions): likewise.
2088         (check_files): likewise.
2089         (check_urgency): likewise (Urgency::Valid).
2090         * jeri (parse_packages): likewise.
2091         * neve (main): likewise (and Location::%s::Suites).
2092         * rene (main): likewise.
2093
2094 2002-05-13  James Troup  <james@nocrew.org>
2095
2096         * katie.py (Katie.check_source_against_db): correct case of reject
2097         message to be consistent with binary checks.
2098
2099         * jennifer (get_status_output): don't leak 2 file descriptors per
2100         invocation.
2101         (check_signature): add missing '\n' to "duplicate status token"
2102         error message.
2103
2104 2002-05-09  James Troup  <james@nocrew.org>
2105
2106         * utils.py (validate_changes_file_arg): new function; validates an
2107         argument which should be a .changes file.
2108         * ashley (main): use it.
2109         * lisa (main): likewise.
2110
2111         * katie.py (Katie.check_dsc_against_db): since there can be more
2112         than one .orig.tar.gz make sure we don't assume the .orig.tar.gz
2113         entry still exists in files.
2114
2115         * jennifer (check_dsc): handle the .orig.tar.gz disappearing from
2116         files, since check_dsc_against_db() deletes the .orig.tar.gz
2117         entry.
2118
2119         * cameron: cleanups.
2120
2121         * utils.py (changes_compare): change sort order so that source
2122         name and source version trump 'have source'; this should fix
2123         UNACCEPT problems in katie where -1 hppa+source & i386, -2
2124         i386&source & hppa lead to -1 i386 unaccept.  Problem worked out
2125         by Ryan.
2126
2127         * lisa (main): allow the arguments to be .katie files too.
2128
2129 2002-05-07  Ryan Murray  <rmurray@debian.org>
2130
2131         * cron.buildd: add s390 to arch list again
2132
2133 2002-05-05  Ryan Murray  <rmurray@debian.org>
2134
2135         * cron.buildd: new script, update w-b database from unstable_accepted
2136         table
2137         * cameron: new script, take list in unstable_accepted and write out
2138         a file list for apt-ftparchive
2139         * apt.conf.buildd: new apt configuration for Packages/Sources for
2140         unstable_accepted
2141         * vars: add s390 to arch list.
2142
2143 2002-05-03  James Troup  <james@nocrew.org>
2144
2145         * neve (main): don't hard code the calling user as that doesn't
2146         work with modern postgres installs.  Fix psql invocation for
2147         init_pool.sql (database name required).  Dont' hard code the
2148         database name.
2149         (process_sources): add support for fingerprint and install_date.
2150         (process_packages): add support for fingerprint.
2151         (do_sources): pass in the directory, fingerprint support needs it.
2152         (get_status_output): borrowed from jennifer.
2153         (reject): likewise.
2154         (check_signature): likewise.
2155
2156         * katie (install): only try to log urgencies if Urgency_Logger is
2157         defined.
2158         (main): only initialize Urgency_Logger is Dir::UrgencyLog is
2159         defined; only close Urgency_Logger if it's defined.
2160
2161         * catherine (poolize): adapt for Dir rationalization.
2162         * claire.py (find_dislocated_stable): likewise.
2163         * denise (main): likewise.
2164         * halle (check_joey): likewise.
2165         * jenna: likewise.
2166         * jennifer: likewise.
2167         * jeri: likewise.
2168         * katie.py: likewise.
2169         * katie: likewise.
2170         * lisa (do_bxa_notification): likewise.
2171         * logging.py (Logger.__init__): likewise
2172         * rene (main): likewise.
2173         * rhona (clean): likewise.
2174         * shania (init): likewise.
2175         * tea: likewise.
2176         * ziyi: likewise.
2177
2178         * lisa (add_overrides): Dinstall::BXANotify is a boolean, use
2179         FindB, not FindI.
2180
2181         * rhona (clean_accepted_autobuild): SpecialAcceptedAutoBuild is a
2182         boolean, use FindB, not get.
2183
2184         * katie.py (Katie.check_dsc_against_db): ignore duplicate
2185         .orig.tar.gz's which are an exact (size/md5sum) match.
2186
2187         * ashley (main): really allow *.katie files as arguments too;
2188         noticed by aj.
2189
2190         * sql-aptvc.cpp: postgres.h moved to a "server" subdirectory.
2191
2192 2002-05-03  Anthony Towns  <ajt@debian.org>
2193
2194         * ziyi: support for security.
2195
2196 2002-05-02  James Troup  <james@nocrew.org>
2197
2198         * jennifer (accept): call Katie.check_override() unconditional as
2199         no-mail check moved into that function.
2200         (do_byhand): likewise.
2201
2202         * katie.py (Katie.check_override): don't do anything if we're a)
2203         not sending mail or b) the override disparity checks have been
2204         disbled via Dinstall::OverrideDisparityCheck.
2205
2206         * jennifer (check_files): don't hard code Unstable as the suite
2207         used to check for architecture validity; use
2208         Dinstall::DefaultSuite instead, if it exists.
2209         (accept): conditionalize
2210
2211         * katie.py (Katie.update_subst): support global maintainer
2212         override with Dinstall::OverrideMaintainer.
2213
2214         * jennifer (check_distributions): new function, Distribution
2215         validation and mapping.  Uses new SuiteMappings variable from
2216         config file to abstract suite mappings.
2217         (check_changes): call it.
2218
2219         * natalie: renamed; nothing imports or likely will for some time.
2220
2221         * denise (main): remove unused natalie import and init().
2222
2223         * natalie.py (init): removed.
2224         (main): initalize here instead and don't hardcode the database
2225         name.
2226
2227 2002-04-30  James Troup  <james@nocrew.org>
2228
2229         * katie.py (Katie.close_bugs): new function, split out from
2230         announce().
2231         (Katie.announce): only call close_bugs() if Dinstall::CloseBugs is
2232         true.
2233         (Katie.close_bugs): new function, split out
2234         (Katie.close_bugs): return immediately if there are no bugs to
2235         close.
2236
2237         * jennifer (acknowledge_new): adapt for new utils.TemplateSubst().
2238         * katie (do_reject): likewise.
2239         (stable_install): likewise.
2240         * katie.py (Katie.announce): likewise.
2241         (Katie.accept): likewise.
2242         (Katie.check_override): likewise.
2243         (Katie.do_reject): likewise.
2244         * lisa (do_bxa_notification): likewise.
2245         * melanie (main): likewise.
2246
2247         * utils.py (TemplateSubst): change second argument to be a
2248         filename rather than a template since every caller opened a file
2249         on the fly which was ugly and leaked file descriptor.
2250
2251 2002-04-29  James Troup  <james@nocrew.org>
2252
2253         * katie.py (Katie.announce): (modified) patch from Raphael Hertzog
2254         <hertzog@debian.org> to send 'accepted' announce mails to the
2255         PTS. [#128140]
2256
2257 2002-04-24  James Troup  <james@nocrew.org>
2258
2259         * init_pool.sql (unstable_accepted): add two new fields to
2260         unstable_accepted; in_accepted is a boolean indicating whether or
2261         not the file is in accepted and last_used is a timestamp used by
2262         rhona to determine when to remove symlinks for installed packages.
2263
2264         * katie.py (Katie.accept): auto-build support take 2.  Create
2265         symlinks for all files into a seperate directory.  Add files to
2266         unstable_accepted as paths to the new directory; mark them as
2267         being in accepted for cameron.  Properly conditionalize it on a
2268         configuration variable.
2269
2270         * katie (install): likewise.  Update symlinks to point into the
2271         pool; mark the files for later deletion by rhona and mark them as
2272         not being in accepted for cameron.
2273
2274         * rhona (clean_accepted_autobuild): new function.
2275
2276 2002-04-22  James Troup  <james@nocrew.org>
2277
2278         * jennifer (check_files): handle db_access.get_location_id()
2279         returning -1 properly/better.
2280
2281         * rhona (clean_fingerprints): new function.
2282
2283 2002-04-21  James Troup  <james@nocrew.org>
2284
2285         * utils.py (touch_file): unused; remove.
2286         (plural): likewise.
2287
2288         * jennifer (check_files): close file descriptor used to get the
2289         control file.
2290         (check_md5sums): likewise.
2291         (callback): likewise.
2292
2293         * katie.py (Katie.do_reject): handle manual rejects much better;
2294         call the editor first and get confirmation from the user before
2295         proceeding.
2296
2297         * jennifer (check_signature): prefix_multi_line_string() moved to
2298         utils.
2299
2300         * utils.py (prefix_multi_line_string): moved here from jennifer.
2301
2302 2002-04-20  James Troup  <james@nocrew.org>
2303
2304         * lisa (main): handle non-existent files.
2305
2306         * ashley (main): allow *.katie files as arguments too.
2307
2308 2002-04-19  James Troup  <james@nocrew.org>
2309
2310         * katie.py (Katie.accept): add stuff to help auto-building from
2311         accepted; if the .orig.tar.gz is not part of the upload (i.e. it's
2312         in the pool), create a symlink to it in the accepted directory and
2313         add the .dsc and .{u,}deb(s) to a new 'unstable_accepted' table.
2314
2315         * katie (install): undo the "auto-building from accepted" stuff
2316         (i.e. remove the .orig.tar.gz symlink and remove the files from
2317         unstable_accepted table).
2318
2319 2002-04-16  James Troup  <james@nocrew.org>
2320
2321         * jennifer (upload_too_new): fix typo which was causing all
2322         timestamp comparisons to be against the .changes file.  Also move
2323         back to the original directory so we do the comparisons against
2324         accurate timestamps.
2325
2326         * tea (check_missing_tar_gz_in_dsc): new function.
2327
2328         * jennifer (check_dsc): add a check to ensure there is a .tar.gz
2329         file mentioned in the .dsc.
2330
2331         * lisa (main): use X-Katie in the mail headers, not X-Lisa; that
2332         way mails reach debian-{devel-,}changes@l.d.o.
2333
2334 2002-04-02  Ryan Murray  <rmurray@debian.org>
2335
2336         * cron.daily: run shania after rhona
2337         * cron.daily-non-US: likewise.
2338
2339 2002-04-01  James Troup  <james@nocrew.org>
2340
2341         * katie: re-add proposed-updates/stable install support.
2342
2343         * katie.py (Katie.dump_vars): add changes["changes"] as an
2344         optional field; should be mandatory later.
2345
2346 2002-03-31  James Troup  <james@nocrew.org>
2347
2348         * katie (install): support a Suite::<foo>::CopyKatie similar to
2349         CopyChanges.  Done seperately because .katie files don't need to
2350         be mirrored and will probably be copied to another directory as a
2351         result.
2352
2353         * halle (main): add missing debug to options.
2354
2355 2002-03-29  James Troup  <james@nocrew.org>
2356
2357         * madison (main): add a -r/--regex option.
2358
2359 2002-03-26  James Troup  <james@nocrew.org>
2360
2361         * lisa: don't trample on changes["distribution"]; make a copy of
2362         it as changes["suite"] instead and use that.
2363
2364 2002-03-16  Anthony Towns  <ajt@debian.org>
2365
2366         * templates/lisa.bxa_notification: Fix some grammatical errors.
2367         Encourage contact via bxa@ftp-master email address.
2368
2369 2002-03-15  James Troup  <james@nocrew.org>
2370
2371         * jennifer (check_timestamps): remove bogus raise in except.
2372
2373 2002-03-15  Anthony Towns  <ajt@debian.org>
2374
2375         * cron.monthly: rotate mail/archive/bxamail as well as
2376         mail/archive/mail. This is for a complete archive of
2377         correspondence with the BXA.
2378
2379 2002-03-14  Anthony Towns  <ajt@debian.org>
2380
2381         * crypto-in-main changes.
2382
2383         * utils.py (move, copy): add an optional perms= parameter to let you
2384         set the resulting permissions of the moved/copied file
2385         * katie.py (force_move): rejected/morgued files should be unreadable
2386         * jennifer (do_byhand, acknowledge_new): pending new and byhand files
2387         should be unreadable.
2388
2389 2002-03-07  Ryan Murray  <rmurray@debian.org>
2390
2391         * katie (install): check for existance of "files id" key as well as
2392         it being set to a valid value.
2393         * katie (install): check for existense and valid value for location
2394         id as well
2395
2396 2002-03-05  Ryan Murray  <rmurray@debian.org>
2397
2398         * katie.py (do_reject): reread the reason file after editing it.
2399
2400 2002-02-25  James Troup  <james@nocrew.org>
2401
2402         * jennifer (check_changes): don't enforce sanity in .changes file
2403         names since it doesn't seem to be possible; pcmica-cs and similar
2404         freak show packages in particular cause real problems.
2405
2406         * katie.py (Katie.check_dsc_against_db): initialize 'found' for
2407         each dsc_file since the .orig.tar.gz checking code now uses it as
2408         a boolean.  Fixes bizarro rejections which bogusly claimed
2409         .diff.gz md5sum/size was incorrect.
2410
2411 2002-02-24  James Troup  <james@nocrew.org>
2412
2413         * katie (process_it): reset reject_message.
2414
2415 2002-02-22  James Troup  <james@nocrew.org>
2416
2417         * db_access.py(set_files_id): disable use of
2418         currval('files_id_seq') because it was taking 3 seconds on auric
2419         which is insane (most calls take < 0.01) and simply call
2420         get_files_id() for the return value instead.
2421
2422         * katie.py (Katie.do_query): convenience function; unused by
2423         default, useful for profiling.
2424         * db_access.py (do_query): likewise.
2425
2426         * katie (install): fix insert SQL call when binary has no source.
2427
2428         * lisa (determine_new): auto-correct non-US/main to non-US.
2429         (determine_new): add a warning when adding things to stable.
2430         (edit_index): use our_raw_input().
2431         (edit_overrides): likewise.
2432         (do_new): likewise.  Use re.search() not re.match() since the
2433         default answer may not be the first one.
2434         (do_byhand): likewise.
2435         (do_new): Default to 'S'kip and never 'A'dd.
2436
2437         * jennifer (action): pass prompt to our_raw_input().
2438         * melanie (game_over): likewise.
2439         * katie (action): likewise.
2440
2441         * utils.py (our_raw_input): add an optional prompt argument to
2442         make the function more usable as a drop in replacement for
2443         raw_input().
2444
2445         * jennifer (check_files): correct reject() to not double prefix
2446         when using katie.py based functions.
2447         (check_dsc): likewise.
2448
2449         * katie.py (Katie.reject): prepend a new line if appropriate
2450         rathen than appending one to avoid double new lines when caller
2451         adds one of his own.
2452
2453         * lisa (determine_new): warn if the package is also in other
2454         components.
2455
2456 2002-02-20  James Troup  <james@nocrew.org>
2457
2458         * jennifer (check_files): if .changes file lists "source" in
2459         Architecture field, there must be a .dsc.
2460
2461 2002-02-15  James Troup  <james@nocrew.org>
2462
2463         * ashley (main): add some missing fields.
2464
2465         * katie.py (Katie.check_dsc_against_db): fix to take into account
2466         the fact that the .orig.tar.gz might be in byhand, accepted or
2467         new.  Also fix calling of reject().
2468         (Katie.check_binaries_against_db): fix calling of reject().
2469         (Katie.check_source_against_db): likewise.
2470         (Katie.dump_vars): add missing variables used for bug closures.
2471
2472         * lisa (changes_compare_by_time): sort by reverse time.
2473
2474         * katie.py (Katie.accept): log.
2475         (Katie.dump_vars): missing has_key test for optional changes fields.
2476
2477         * jennifer (main): print "Accepted blah blah" to stdout, not stderr.
2478         (process_it): traceback goes to stderr, not stdout.
2479         (acknowledge_new): log.
2480         (do_byhand): likewise.
2481
2482         * katie.py (Katie.update_subst): fix typo (Cnf vs. self.Cnf).
2483
2484         * add_constraints.sql: add grants for the new fingerprint table.
2485
2486 2002-02-13  James Troup  <james@nocrew.org>
2487
2488         * katie (do_reject): basename the .changes filename before trying
2489         to use it to construct the .reason filename.
2490         (process_it): call Katie.update_subst() so do_reject() DTRT with
2491         the mail template.
2492         (do_reject): setup the mail template correctly.
2493
2494 2002-02-12  James Troup  <james@nocrew.org>
2495
2496         * tea (process_dir): renamed 'arg' to 'unused' for clarity.
2497         (check_files): don't abuse global dictionaries.
2498         (Ent): use all variables.
2499         (check_timestamps): don't abuse global dictionaries.
2500
2501         * fernanda.py: renamed to .py so lisa can import it.
2502         (check_dsc): remove unused local variables (pychecker).
2503         (display_changes): split off from check_changes.
2504
2505         * katie: rewritten; most of the functionality moves to jennifer;
2506         what's left is the code to install packages once a day from the
2507         'accepted' directory.
2508
2509         * jennifer: new program, processes packages in 'unchecked'
2510         (i.e. most of the non-install functionality of old katie).
2511
2512         * katie.py: common functions shared between the clique of
2513         jennifer, lisa and katie.
2514
2515         * lisa: new program; handles NEW and BYHAND packages.
2516
2517         * jeri (usage): new function.
2518         (main): use it.
2519         (check_package): remove unused local variable (pychecker).
2520
2521         * init_pool.sql: new table fingerprint.  Add fingerprint colums to
2522         binaries and source.  Add install_date to source.
2523
2524         * halle (usage): new function.
2525         (main): use it.  Remove unused options.
2526         (check_changes): remove unused local variable (pychecker).
2527
2528         * add_constraints.sql: add fingerprint references.
2529
2530         * db_access.py (get_or_set_fingerprint_id): new function.
2531
2532         * ashley (main): new program; dumps the contents of a .katie file
2533         to stdout.
2534
2535         * alyson (main): remove option handling since we don't actually
2536         support any.
2537         * cindy (main): likewise.
2538
2539         * remove unnecessary imports and pre-define globals (pychecker).
2540
2541 2002-02-11  Anthony Towns  <ajt@debian.org>
2542
2543         * added installation-report and upgrade-report pseudo-packages
2544
2545 2002-01-28  Martin Michlmayr  <tbm@cyrius.com>
2546
2547         * katie (update_subst): use Dinstall::TrackingServer.
2548         * melanie (main): likewise.
2549
2550 2002-01-27  James Troup  <james@nocrew.org>
2551
2552         * shania (main): it's IntLevel not IntVal; thanks to tbm@ for
2553         noticing, jgg@ for fix.
2554
2555 2002-01-19  James Troup  <james@nocrew.org>
2556
2557         * utils.py (extract_component_from_section): handle non-US
2558         non-main properly.
2559
2560 2002-01-12  James Troup  <james@nocrew.org>
2561
2562         * madison: add support for -S/--source-and-binary which displays
2563         information for the source package and all it's binary children.
2564
2565 2002-01-13  Anthony Towns  <ajt@debian.org>
2566
2567         * katie.conf: Remove Catherine Limit and bump stable to 2.2r5
2568         * katie.conf: Add Dinstall::SigningKeyIds option, set to the 2001
2569           and 2002 key ids.
2570         * katie.conf-non-US: Likewise.
2571         * ziyi: Suppoer Dinstall::SigningKeyIds to sign a Release file with
2572           multiple keys automatically. This is probably only useful for
2573           transitioning from an expired (or revoked?) key.
2574
2575 2002-01-08  Ryan Murray  <rmurray@debian.org>
2576
2577         * debian/python-dep: new file that prints out python:Depends for
2578           substvars
2579         * debian/control: use python:Depends, build-depend on python
2580           lower Depends: on postgresql to Suggests:
2581         * debian/rules: determine python version, install to the correct
2582           versioned dir
2583
2584 2001-12-18  Anthony Towns  <ajt@debian.org>
2585
2586         * ziyi: unlink Release files before overwriting them (in case they've
2587           been merged)
2588         * ziyi: always include checksums/sizes for the uncompressed versions
2589           of Sources and Packages, even if they're not present on disk
2590
2591 2001-11-26  Ryan Murray  <rmurray@debian.org>
2592
2593         * ziyi (main): add SigningPubKey config option
2594         * katie.conf: use SigningPubKey config option
2595         * katie.conf-non-US: likewise
2596
2597 2001-11-24  James Troup  <james@nocrew.org>
2598
2599         * katie (acknowledge_new): log newness.
2600
2601 2001-11-24  Anthony Towns  <ajt@debian.org>
2602
2603         * ziyi (real_arch): bail out if some moron forgot to reset
2604         untouchable on stable.
2605         (real_arch): source Release files.
2606
2607 2001-11-19  James Troup  <james@nocrew.org>
2608
2609         * claire.py (main): don't use apt_pkg.ReadConfigFileISC and
2610         utils.get_conf().
2611         * shania (main): likewise.
2612
2613         * rhona (main): add default options.
2614
2615         * db_access.py (get_archive_id): case independent.
2616
2617         * katie (action): sort files so that ordering is consistent
2618         between mails; noticed/requested by Joey.
2619
2620 2001-11-17  Ryan Murray  <rmurray@debian.org>
2621
2622         * utils.py: add get_conf function, change startup code to read all
2623           config files to the Cnf that get_conf returns
2624           use the component list from the katie conf rather than the hardcoded
2625           list.
2626         * all scripts: use new get_conf function
2627         * shania: fix try/except around changes files
2628         * jenna: only do debian-installer if it is a section in Cnf
2629
2630 2001-11-16  Ryan Murray  <rmurray@debian.org>
2631
2632         * shania (main): Initialize days to a string of a number.
2633                  (main): Initialize Cnf vars before reading in Cnf
2634
2635 2001-11-14  Ryan Murray  <rmurray@debian.org>
2636
2637         * shania (main): Initialize days to a number.
2638
2639 2001-11-04  James Troup  <james@nocrew.org>
2640
2641         * docs/Makefile: use docbook-utils' docbook2man binary.
2642
2643         * Change all "if foo == []" constructs into "if not foo".
2644
2645         * katie (check_changes): when installing into stable from
2646         proposed-updates, remove all non-stable target distributions.
2647         (check_override): don't check for override disparities on stable
2648         installs.
2649         (stable_install): update install_bytes appropriately.
2650         (reject): stable rejection support; i.e. don't remove files when
2651         rejecting files in the pool, rather remove them from the
2652         proposed-update suite instead, rhona will do the rest.
2653         (manual_reject): support for a stable specific template.
2654         (main): setup up stable rejector in subst.
2655
2656 2001-11-04  Martin Michlmayr  <tbm@cyrius.com>
2657
2658         * debian/control (Build-Depends): docbook2man has been superseded
2659         by docbook-utils.
2660
2661         * neve (main): exit with a more useful error message.
2662         (update_suites): Suite::<suite>::Version, Origin and Description
2663         are not required, so don't fail if they don't exist.
2664
2665         * db_access.py (get_archive_id): return -1 on error rather than
2666         raise an exception.
2667         (get_location_id): likewise.
2668
2669         * madison (main): don't exit on the first not-found package,
2670         rather exit with an appropriate return code after processing all
2671         packages.
2672
2673 2001-11-03  James Troup  <james@nocrew.org>
2674
2675         * claire.py (find_dislocated_stable): add per-architecture
2676         symlinks for dislocated architecture: all debs.
2677
2678 2001-10-19  Anthony Towns  <ajt@debian.org>
2679
2680         * apt.conf*, katie.conf*: add mips, mipsel, s390 to testing.
2681
2682 2001-10-10  Anthony Towns  <ajt@debian.org>
2683
2684         * claire.py (fix_component_section): do _not_ assign to None under
2685         any circumstances
2686
2687 2001-10-07  Martin Michlmayr  <tbm@cyrius.com>
2688
2689         * melanie (main): don't duplicate architectures when removing from
2690         more than one suite.
2691
2692         * heidi (main, process_file, get_list): report suite name not ID.
2693
2694         * naima (nmu_p): be case insensitive.
2695
2696         * naima (action): more list handling clean ups.
2697
2698         * melanie (main): clean up lists handling to use string.join and
2699         IN's.
2700
2701         * madison (main): clean up suite and architecture argument parsing
2702         to use slices less and string.join more.
2703
2704         * utils.py (parse_changes): Use string.find() instead of slices for
2705         string comparisons thereby avoid hardcoding the length of strings.
2706         * ziyi (main): likewise.
2707
2708 2001-10-07  James Troup  <james@nocrew.org>
2709
2710         * Remove mode argument from utils.open_files() calls if it's the
2711         default, i.e. 'r'.
2712
2713 2001-09-27  James Troup  <james@nocrew.org>
2714
2715         * katie (init): new function; options clean up.
2716         (usage): add missing options, remove obsolete ones.
2717         (main): adapt for the two changes above.  If the lock file or
2718         new-ack log file don't exist, create them.  Don't try to open the
2719         new-ack log file except running in new-ack mode.
2720
2721         * alyson (main): initialize all the tables that are based on the
2722         conf file.
2723
2724         * utils.py (touch_file): like touch(1).
2725         (where_am_i): typo.
2726
2727         * catherine (usage): new.
2728         (main): use it.  options cleanup.
2729         * claire.py: likewise.
2730         * fernanda: likewise.
2731         * heidi: likewise.
2732         * jenna: likewise.
2733         * shania: likewise.
2734         * ziyi: likewise.
2735
2736         * andrea: options cleanup.
2737         * charisma: likewise.
2738         * julia: likewise.
2739         * madison: likewise.
2740         * melanie: likewise.
2741         * natalie: likewise.
2742         * rhona: likewise.
2743         * tea: likewise.
2744
2745 2001-09-26  James Troup  <james@nocrew.org>
2746
2747         * utils.py: default to sane config file locations
2748         (/etc/katie/{apt,katie}.conf.  They can be the actual config files
2749         or they can point to the real ones through use of a new Config
2750         section.  Based on an old patch by Adam Heath.
2751         (where_am_i): use the new default config stuff.
2752         (which_conf_file): likewise.
2753         (which_apt_conf_file): likewise.
2754
2755         * charisma (main): output defaults to
2756         `Package~Version\tMaintainer'; input can be of either form.  When
2757         parsing the new format do version comparisons, when parsing the
2758         old format assume anything in the extra file wins.  This fixes the
2759         problem of newer non-US packages being overwhelmed by older
2760         versions still in stable on main.
2761
2762 2001-09-17  James Troup  <james@nocrew.org>
2763
2764         * natalie.py (list): use result_join().
2765
2766         * denise (main): result_join() moved to utils.
2767
2768         * utils.py (result_join): move to utils; add an optional seperator
2769         argument.
2770
2771 2001-09-14  James Troup  <james@nocrew.org>
2772
2773         * heidi (set_suite): new function; does --set like natalie does,
2774         i.e. turns it into a sequence of --add's and --remove's
2775         internally.  This is a major win (~20 minute run time > ~20
2776         seconds) in the common, everday (i.e. testing) case.
2777         (get_id): common code used by set_suite() and process_file().
2778         (process_file): call set_suite() and get_id().
2779         (main): add logging support.
2780
2781         * julia: new script; syncs PostgeSQL with (LDAP-generated) passwd
2782         files.
2783
2784         * utils.py (parse_changes): use slices or simple string comparison
2785         in favour of regexes where possible.
2786
2787         * sql-aptvc.cpp (versioncmp): rewritten to take into account the
2788         fact that the string VARDATA() points to are not null terminated.
2789
2790         * denise (result_join): new function; like string.join() but
2791         handles None's.
2792         (list): use it.
2793         (main): likewise.
2794
2795         * charisma (main): python-pygresql 7.1 returns None not "".
2796
2797 2001-09-14  Ryan Murray  <rmurray@debian.org>
2798
2799         * natalie.py (list): handle python-pygresql 7.1 returning None.
2800
2801 2001-09-10  Martin Michlmayr  <tbm@cyrius.com>
2802
2803         * madison (main): return 1 if no package is found.
2804
2805 2001-09-08  Martin Michlmayr  <tbm@cyrius.com>
2806
2807         * madison (main): better error handling for incorrect
2808         -a/--architecture or -s/--suite arguments.
2809         (usage): new.
2810         (main): use it.
2811
2812 2001-09-05  Ryan Murray  <rmurray@debian.org>
2813
2814         * charisma, madison, katie: remove use of ROUser
2815         * katie.conf,katie.conf-non-US: remove defintion of ROUser
2816
2817 2001-08-26  James Troup  <james@nocrew.org>
2818
2819         * katie (nmu_p.is_an_nmu): use maintaineremail to check for group
2820         maintained packages at cjwatson@'s request.
2821
2822 2001-08-21  James Troup  <james@nocrew.org>
2823
2824         * madison (main): add -a/--architecture support.
2825
2826         * jenna: use logging instead of being overly verbose on stdout.
2827
2828 2001-08-11  Ryan Murray  <rmurray@debian.org>
2829
2830         * melanie: add functional help option
2831
2832 2001-08-07  Anthony Towns  <ajt@debian.org>
2833
2834         * apt.conf, katie.conf: Add ia64 and hppa to testing.
2835
2836 2001-07-28  James Troup  <james@nocrew.org>
2837
2838         * katie (check_dsc): ensure source version is >> than existing
2839         source in target suite.
2840
2841 2001-07-25  James Troup  <james@nocrew.org>
2842
2843         * natalie.py: add logging support.
2844
2845         * utils.py (open_file): make the second argument optional and
2846         default to read-only.
2847
2848         * rene (main): work around broken source packages that duplicate
2849         arch: all packages with arch: !all packages (no longer allowed
2850         into the archive by katie).
2851
2852 2001-07-13  James Troup  <james@nocrew.org>
2853
2854         * katie (action): don't assume distribution is a dictionary.
2855         (update_subst): don't assume architecture is a dictionary and that
2856         maintainer822 is defined.
2857         (check_changes): recognise nk_format exceptions.
2858         (check_changes): reject on 'testing' only uploads.
2859         (check_files): when checking to ensure all packages are newer
2860         versions check against arch-all packages too.
2861         (check_dsc): enforce the existent of a sane set of mandatory
2862         fields.  Ensure the version number in the .dsc (modulo epoch)
2863         matches the version number in the .changes file.
2864
2865         * utils.py (changes_compare): ignore all exceptions when parsing
2866         the changes files.
2867         (build_file_list): don't UNDEF on a changes file with no format
2868         field.
2869
2870 2001-07-07  James Troup  <james@nocrew.org>
2871
2872         * katie (nmu_p.is_an_nmu): check 'changedby822' for emptiness
2873         rather than 'changedbyname' to avoid false negatives on uploads
2874         with an email-address-only Changed-By field.
2875         (check_dsc): don't overwrite reject_message; append to it.
2876         (check_signature): likewise.
2877         (check_changes): likewise.
2878         (announce): condition logging on 'action'.
2879
2880         * logging.py: new logging module.
2881
2882         * katie: Cleaned up code by putting Cnf["Dinstall::Options"]
2883         sub-tree into a separate (global) variable.
2884         (check_dsc): ensure format is 1.0 to retain backwards
2885         compatability with dpkg-source in potato.
2886         (main): only try to obtain the lock when not running in no-action
2887         mode.
2888         Use the new logging module.
2889
2890         * christina: initial version; only partially usable.
2891
2892 2001-06-28  Anthony Towns  <ajt@debian.org>
2893
2894         * apt.conf: Add ExtraOverrides to auric.
2895
2896 2001-06-25  James Troup  <james@nocrew.org>
2897
2898         * katie (nmu_p.is_an_nmu): the wonderful dpkg developers decided
2899         they preferred the name 'Uploaders'.
2900
2901 2001-06-23  James Troup  <james@nocrew.org>
2902
2903         * katie (check_files): fix typo in uncommon rejection message,
2904         s/sourceversion/source version/.
2905
2906         * denise (main): we can't use print because stdout has been
2907         redirected.
2908
2909         * katie (source_exists): new function; moved out of check_files()
2910         and added support for binary-only NMUs of earlier sourceful NMUs.
2911
2912         * rhona (clean): find_next_free has moved.
2913
2914         * utils.py (find_next_free): new function; moved here from rhona.
2915         Change too_many to be an argument with a default value, rather
2916         than a hardcoded variable.
2917
2918         * shania: rewritten to work better; REJECTion reminder mail
2919         handling got lost though.
2920
2921 2001-06-22  James Troup  <james@nocrew.org>
2922
2923         * rhona (main): remove unused override code.
2924
2925         * fernanda (main): remove extraneous \n's from utils.warn calls.
2926         * natalie.py (list): likewise.
2927
2928         * catherine, cindy, denise, heidi, jenna, katie, neve, rhona, tea:
2929         use utils.{warn,fubar} where appropriate.
2930
2931 2001-06-21  James Troup  <james@nocrew.org>
2932
2933         * katie (nmu_p): new class that encapsulates the "is a nmu?"
2934         functionality.
2935         (nmu_p.is_an_nmu): add support for multiple maintainers specified
2936         by the "Maintainers" field in the .dsc file and maintainer groups.
2937         (nmu_p.__init__): read in the list of group maintainer names.
2938         (announce): use nmu_p.
2939
2940 2001-06-20  James Troup  <james@nocrew.org>
2941
2942         * rene (main): hardcode the suite experimental is compared to by
2943         name rather than number.
2944
2945         * katie (check_files): differentiate between doesn't-exist and
2946         permission-denied in "can not read" rejections; requested by edd@.
2947         (check_dsc): use os.path.exists rather than os.access to allow the
2948         above check to kick in.
2949
2950         * heidi (process_file): read all input before doing anything and
2951         use transactions.
2952
2953 2001-06-15  James Troup  <james@nocrew.org>
2954
2955         * fernanda: new script; replaces old 'check' shell script
2956         nastiness.
2957
2958 2001-06-14  James Troup  <james@nocrew.org>
2959
2960         * katie: actually import traceback module to avoid amusing
2961         infinite loop.
2962
2963 2001-06-10  James Troup  <james@nocrew.org>
2964
2965         * utils.py (extract_component_from_section): fix to handle just
2966         'non-free' and 'contrib'.  Also fix to handle non-US in a
2967         completely case insensitive manner as a component.
2968
2969 2001-06-08  James Troup  <james@nocrew.org>
2970
2971         * madison (arch_compare): sort function that sorts 'source' first
2972         then alphabetically.
2973         (main): use it.
2974
2975 2001-06-05  Jeff Licquia  <jlicquia@progeny.com>
2976
2977         * catherine (poolize): explicitly make poolized_size a long so it
2978         doesn't overflow when poolizing e.g. entire archives.
2979
2980 2001-06-01  James Troup  <james@nocrew.org>
2981
2982         * utils.py (send_mail): throw exceptions rather than exiting.
2983
2984         * katie (process_it): catch exceptions and ignore them.
2985
2986 2001-06-01  Michael Beattie  <mjb@debian.org>
2987
2988         * added update-mailingliststxt and update-readmenonus to update
2989         those files, respectively. modified cron.daily{,-non-US} to
2990         use them.
2991
2992 2001-05-31  Anthony Towns  <ajt@debian.org>
2993
2994         * rhona: make StayOfExecution work.
2995
2996 2001-05-31  James Troup  <james@nocrew.org>
2997
2998         * rhona (find_next_free): fixes to not overwrite files but rename
2999         them by appending .<n> instead.
3000         (clean): use find_next_free and use dated sub-directories in the
3001         morgue.
3002
3003         * utils.py (move): don't overwrite files unless forced to.
3004         (copy): likewise.
3005
3006 2001-05-24  James Troup  <james@nocrew.org>
3007
3008         * katie (check_files): determine the source version here instead
3009         of during install().
3010         (check_files): check for existent source with bin-only NMU
3011         support.
3012         (main): sort the list of changes so that the source-must-exist
3013         check Does The Right Thing(tm).
3014
3015         * utils.py (changes_compare): new function; sorts a list of
3016         changes files by 'have-source', source, version.
3017         (cc_fix_changes): helper function.
3018         (parse_changes): use compiled regexes.
3019         (fix_maintainer): likewise.
3020
3021         * rene (main): warn about packages in experimental that are
3022         superseded by newer versions in unstable.
3023
3024 2001-05-21  James Troup  <james@nocrew.org>
3025
3026         * rene (main): add support for checking for ANAIS (Architecture
3027         Not Allowed In Source) packages.
3028
3029 2001-05-17  James Troup  <james@nocrew.org>
3030
3031         * katie (check_changes): initalize `architecture' dictionary in
3032         changes global so that if we can't parse the changes file for
3033         whatever reason we don't undef later on.
3034
3035         * utils.py (parse_changes): fix handling of multi-line fields
3036         where the first line did have data.
3037
3038 2001-05-05  Anthony Towns  <ajt@debian.org>
3039
3040         * ziyi: Add "NotAutomatic: yes" to experimental Release files.
3041         (It should always have been there. Ooopsy.)
3042
3043 2001-05-03  Anthony Towns  <ajt@debian.org>
3044
3045         * jenna: Cleanup packages that move from arch:any to arch:all or
3046         vice-versa.
3047
3048 2001-04-24  Anthony Towns  <ajt@debian.org>
3049
3050         * ziyi: add ``SHA1:'' info to Release files. Also hack them up to
3051         cope with debian-installer and boot-floppies' md5sum.txt.
3052
3053 2001-04-16  James Troup  <james@nocrew.org>
3054
3055         * katie (check_changes): add missing %s format string argument.
3056         (stable_install): temporary work around for morgue location to
3057         move installed changes files into.
3058         (stable_install): helps if you actually read in the template.
3059         (manual_reject): fix for editing of reject messages which was
3060         using the wrong variable name.
3061
3062         * jenna (generate_src_list): typo; s/package/source/; fixes undef crash.
3063
3064 2001-04-13  James Troup  <james@nocrew.org>
3065
3066         * katie (manual_reject): Cc the installer.
3067         (reject): don't.
3068         (check_changes): remove unused maintainer-determination code.
3069         (update_subst): add support for Changed-By when setting the
3070         *MAINTAINER* variables.
3071
3072         * rene (bar): new function to check for packages on architectures
3073         when they shouldn't be.
3074
3075         * natalie.py (main): use fubar() and warn() from utils.
3076
3077         * utils.py (whoami): new mini-function().
3078         * melanie (main): use it.
3079         * katie (manual_reject): likewise.
3080
3081 2001-04-03  James Troup  <james@nocrew.org>
3082
3083         * katie (action): ignore exceptions from os.path.getmtime() so we
3084         don't crash on non-existent changes files (e.g. when they are
3085         moved between the start of the install run in cron.daily and the
3086         time we get round to processing them).
3087
3088         * madison (main): also list source and accept -s/--suite.
3089
3090         * jenna (generate_src_list): missing \n in error message.
3091
3092         * katie (update_subst): add sane defaults for when changes is
3093         skeletal.
3094
3095 2001-03-29  James Troup  <james@nocrew.org>
3096
3097         * melanie (main): use fubar() and warn() from utils.  Remember who
3098         the maintainer for the removed packages are and display that info
3099         to the user.  Readd support for melanie-specific Bcc-ing that got
3100         lost in the TemplateSubst transition.
3101
3102         * utils.py (fubar): new function.
3103         (warn): like wise.
3104
3105         * db_access.py (get_maintainer): as below.
3106
3107         * charisma (get_maintainer): moved the bulk of this function to
3108         db_access so that melanie can use it too.
3109
3110         * claire.py (find_dislocated_stable): restrict the override join
3111         to those entries where the suite is stable; this avoids problems
3112         with packages which have moved to new sections (e.g. science)
3113         between stable and unstable.
3114
3115 2001-03-24  James Troup  <james@nocrew.org>
3116
3117         * catherine (poolize): new function; not really independent of
3118         main() fully, yet.
3119         (main): use it.
3120
3121         * katie (stable_install): __SUITE__ needs to be space prefixed
3122         because buildd's check for 'INSTALLED$'.
3123
3124 2001-03-22  James Troup  <james@nocrew.org>
3125
3126         * utils.py (regex_safe): also need to escape '.'; noticed by ajt@.
3127
3128         * jenna: rewritten; now does deletions on a per-suite level
3129         instead of a per-suite-component-architecture-type level.  This
3130         allows mutli-component packages to be auto-cleaned (and as a
3131         bonus, reduces the code size and duplication).
3132
3133 2001-03-22  Anthony Towns  <ajt@debian.org>
3134
3135         * ziyi (main): fix ziyi to overwrite existing Release.gpg files
3136         instead of just giving a gpg error.
3137
3138 2001-03-21  James Troup  <james@nocrew.org>
3139
3140         * madison (main): use apt_pkg.VersionCompare to sort versions so
3141         that output is correctly sorted for packages like debhlper.
3142         Noticed by ajt@.
3143
3144         * tea (check_source_in_one_dir): actually find problematic source
3145         packages.
3146
3147         * katie (check_dsc): remember the orig.tar.gz's location ID if
3148         it's not in a legacy suite.
3149         (check_diff): we don't use orig_tar_id.
3150         (install): add code to handle sourceful diff-only upload of
3151         packages which change components by copying the .orig.tar.gz into
3152         the new component, if it doesn't already exist there.
3153         (process_it): reset orig_tar_location (as above).
3154
3155         * melanie (main): use template substiution for the bug closing
3156         emails.
3157         (main): don't hardcode bugs.debian.org or packages.debian.org
3158         either; use configuration items.
3159
3160         * katie: likewise.
3161
3162         * natalie.py (init): use None rather than 'localhost' for the
3163         hostname given to pg.connect.
3164
3165         * utils.py (TemplateSubst): new function; lifted from
3166         userdir-ldap.
3167
3168 2001-03-21  Ryan Murray  <rmurray@debian.org>
3169
3170         * katie (announce): fix the case of non-existent
3171         Suite::$SUITE::Announce.
3172
3173 2001-03-20  Ryan Murray  <rmurray@debian.org>
3174
3175         * debian/rules (binary-indep): install melanie into /usr/bin/ not
3176         /usr/.
3177
3178         * alyson (main): use config variable for database name.
3179         * andrea (main): likewise.
3180         * catherine (main): likewise.
3181         * charisma (main): likewise.
3182         * cindy (main): likewise.
3183         * claire.py (main): likewise.
3184         * denise (main): likewise.
3185         * heidi (main): likewise.
3186         * jenna (main): likewise.
3187         * katie (main): likewise.
3188         * madison (main): likewise.
3189         * melanie (main): likewise.
3190         * neve (main): likewise.
3191         * rhona (main): likewise.
3192         * tea (main): likewise.
3193
3194 2001-03-15  James Troup  <james@nocrew.org>
3195
3196         * rhona (check_sources): fixed evil off by one (letter) error
3197         which was causing only .dsc files to be deleted when cleaning
3198         source packages.
3199
3200         * charisma (get_maintainer_from_source): remove really stupid and
3201         gratuitous IN sub-query and replace with normal inner join.
3202         (main): connect as read-only user nobody.
3203
3204         * rhona (clean_maintainers): rewritten to use SELECT and sub-query
3205         with EXISTS.
3206         (check_files): likewise; still disabled by default though.
3207         (clean_binaries): add ' seconds' to the mysterious number in the
3208         output.
3209         (clean): likewise.
3210
3211         * tea (check_files): add missing global declaration on db_files.
3212
3213 2001-03-14  James Troup  <james@nocrew.org>
3214
3215         * rhona: rewritten large chunks. Removed a lot of the silly
3216         selecting into dictionaries and replaced it with 'where exists'
3217         based sub queries.  Added support for StayOfExecution.  Fix the
3218         problem with deleting dsc_files too early and disable cleaning of
3219         unattached files.
3220
3221 2001-03-14  Anthony Towns  <ajt@debian.org>
3222
3223         * katie (announce): also check Changed-By when trying to detect
3224         NMUs.
3225
3226 2001-03-06  Anthony Towns  <ajt@debian.org>
3227
3228         * ziyi (main): Generate Release.gpg files as well, using the key from
3229         Dinstall::SigningKey in katie.conf, if present. That key has to be
3230         passwordless, and hence kept fairly secretly.
3231
3232 2001-03-02  James Troup  <james@nocrew.org>
3233
3234         * utils.py (str_isnum): new function; checks to see if the string
3235         is a number.
3236
3237         * shania (main): fix _hideous_ bug which was causing all files > 2
3238         weeks old to be deleted from incoming, even if they were part of a
3239         valid upload.
3240
3241 2001-02-27  James Troup  <james@nocrew.org>
3242
3243         * melanie (main): accept new argument -C/--carbon-copy which
3244         allows arbitarty carbon-copying of the bug closure messages.
3245         Cleaned up code by putting Cnf["Melanie::Options"] sub-tree into a
3246         separate variable.
3247
3248 2001-02-27  Anthony Towns  <ajt@debian.org>
3249
3250         * ziyi: new program; generates Release files.
3251
3252 2001-02-25  James Troup  <james@nocrew.org>
3253
3254         * katie (reject): add missing '\n' to error message.
3255         (manual_reject): likewise.
3256         (install): catch exceptions from moving the changes file into DONE
3257         and ignore them.
3258
3259         * tea (check_md5sums): new function.
3260
3261 2001-02-25  Michael Beattie  <mjb@debian.org>
3262
3263         * melanie: use $EDITOR if available.
3264
3265 2001-02-15  James Troup  <james@nocrew.org>
3266
3267         * utils.py (parse_changes): don't crash and burn on empty .changes
3268         files.  Symptoms noticed by mjb@.
3269
3270 2001-02-15  Adam Heath  <doogie@debian.org>
3271
3272         * denise (main): use an absolute path for the output filename.
3273
3274         * sql-aptvc.cpp: don't #include <utils/builtins.h> as it causes
3275         compile errors with postgresql-dev >= 7.0.
3276
3277 2001-02-12  James Troup  <james@nocrew.org>
3278
3279         * rene: initial version.
3280
3281         * andrea: initial version.
3282
3283         * catherine (main): remove obsolete assignment of arguments.
3284
3285 2001-02-09  James Troup  <james@nocrew.org>
3286
3287         * catherine: first working version.
3288
3289 2001-02-06  James Troup  <james@nocrew.org>
3290
3291         * katie (check_files): validate the priority field; i.e. ensure it
3292         doesn't contain a '/' (to catch people prepending the priority
3293         with the component rather than the section).
3294         (check_override): don't warn about source packages; the only check
3295         is on section and we have no GUI tools that would use the Section
3296         field for a Sources file.
3297         (announce): use tags rather than severities for NMUs.  Requested
3298         by Josip Rodin <joy@>. [#78035]
3299
3300 2001-02-04  James Troup  <james@nocrew.org>
3301
3302         * tea (check_override): new function; ensures packages in suites
3303         are also in the override file.  Thanks to bod@ for noticing that
3304         such packages existed.
3305
3306         * katie: move file type compiled regular expressions to utils as
3307         catherine uses them too.
3308         (check_changes): always default maintainer822 to the installer
3309         address so that any bail out won't cause undefs later.
3310         (check_files): update file type re's to match above.
3311         (stable_install): likewise.
3312         (reject): handle any except from moving the changes files.  Fixes
3313         crashes on unreadable changes files.
3314
3315         * melanie (main): add an explanation of why things are not removed
3316         from testing.
3317
3318 2001-01-31  James Troup  <james@nocrew.org>
3319
3320         * melanie (main): ignore a) no message, b) removing from stable or
3321         testing when invoked with -n/--no-action.
3322
3323         * katie (check_override): lower section before checking to see if
3324         we're whining about 'non-US' versus 'non-US/main'.
3325
3326         * sql-aptvc.cpp: new file; wrapper around apt's version comparison
3327         function so that we can use inside of PostgreSQL.
3328
3329 2001-01-28  James Troup  <james@nocrew.org>
3330
3331         * katie: updated to pass new flag to parse_changes() and deal with
3332         the exception raised on invalid .dsc's if appropriate.
3333         * shania (main): likewise.
3334         * melanie (main): likewise.
3335
3336         * tea (check_dscs): new function to validate all .dsc files in
3337         unstable.
3338
3339         * utils.py (parse_changes): if passed an additional flag, validate
3340         the .dsc file to ensure it's extractable by dpkg-source.
3341         Requested by Ben Collins <bcollins@>.
3342
3343 2001-01-27  James Troup  <james@nocrew.org>
3344
3345         * madison (main): connect to the DB as nobody.
3346
3347         * katie (check_files): remove support for -r/--no-version-check
3348         since it makes no sense under katie (jenna will automatically
3349         remove the (new) older version) and was evil in any event.
3350         (check_changes): add missing new line to rejection message.
3351         (check_dsc): likewise.
3352         (process_it): reset reject_message here.
3353         (main): not here.  Also remove support for -r.
3354
3355 2001-01-26  James Troup  <james@nocrew.org>
3356
3357         * katie (check_override): don't whine about 'non-US/main' versus
3358         'non-US'.
3359
3360 2001-01-26  Michael Beattie  <mjb@debian.org>
3361
3362         * natalie.py (usage): new function.
3363         (main): use it.
3364
3365 2001-01-25  Antti-Juhani Kaijanaho  <gaia@iki.fi>
3366
3367         * update-mirrorlists: Update README.non-US too (request from Joy).
3368
3369 2001-01-25  James Troup  <james@nocrew.org>
3370
3371         * katie (reject): catch any exception from utils.move() and just
3372         pass, we previously only caught can't-overwrite errors and not
3373         can't-read ones.
3374
3375         * jenna (generate_src_list): use ORDER BY in selects to avoid
3376         unnecessary changes to Packages files.
3377         (generate_bin_list): likewise.
3378
3379         * utils.py (extract_component_from_section): separated out from
3380         build_file_list() as it's now used by claire too.
3381
3382         * claire.py (find_dislocated_stable): rewrite the query to extract
3383         section information and handle component-less locations properly.
3384         Thanks to ajt@ for the improved queries.
3385         (fix_component_section): new function to fix components and
3386         sections.
3387
3388 2001-01-23  James Troup  <james@nocrew.org>
3389
3390         * katie (check_files): set file type for (u?)debs first thing, so
3391         that if we continue, other functions which rely on file type
3392         existing don't bomb out.  If apt_pkg or apt_inst raise an
3393         exception when parsing the control file, don't try any other
3394         checks, just drop out.
3395         (check_changes): new test to ensure there is actually a target
3396         distribution.
3397
3398 2001-01-22  James Troup  <james@nocrew.org>
3399
3400         * katie (usage): s/dry-run/no-action/.  Noticed by Peter Gervai
3401         <grin@>.
3402         (check_changes): when mapping to unstable, remember to actually
3403         add unstable to the suite list and not just remove the invalid
3404         suite.
3405
3406 2001-01-21  James Troup  <james@nocrew.org>
3407
3408         * katie (check_files): catch exceptions from debExtractControl()
3409         and reject packages which raise any.
3410
3411 2001-01-19  James Troup  <james@nocrew.org>
3412
3413         * katie (check_signature): basename() file name in rejection
3414         message.
3415
3416 2001-01-18  James Troup  <james@nocrew.org>
3417
3418         * katie (in_override_p): remember the section and priority from
3419         the override file so we can check them against the package later.
3420         (check_override): new function; checks section and priority (for
3421         binaries) from the package against the override file and mails the
3422         maintainer about any disparities.
3423         (install): call check_override after announcing the upload.
3424
3425 2001-01-16  James Troup  <james@nocrew.org>
3426
3427         * utils.py (build_file_list): catch ValueError's from splitting up
3428         the files field and translate it into a parse error.
3429
3430         * tea: add support for finding unreferenced files.
3431
3432         * katie (in_override_p): add support for suite-aliasing so that
3433         proposed-updates uploads work again.
3434         (check_changes): catch parses errors from utils.build_file_list().
3435         (check_dsc): likewise.
3436         (check_diff): yet more dpkg breakage so we require even newer a
3437         version.
3438
3439         * jenna (generate_bin_list): don't do nasty path munging that's no
3440         longer needed.
3441
3442         * denise (main): support for non-US; and rename testing's override
3443         files so they're based on testing's codename.
3444
3445 2001-01-16  Martin Michlmayr  <tbm@cyrius.com>
3446
3447         * melanie: add to the bug closing message explaining what happens
3448         (or rather doesn't) with bugs against packages that have been
3449         removed.
3450
3451 2001-01-14  James Troup  <james@nocrew.org>
3452
3453         * charisma (main): fix silly off-by-one error; suite priority
3454         checking was done using "less than" rather than "less than or
3455         equal to" which was causing weird hesienbugs with wrong Maintainer
3456         fields.
3457
3458 2001-01-10  James Troup  <james@nocrew.org>
3459
3460         * katie (in_override_p): adapted to use SQL-based overrides.
3461         read_override_file function disappears.
3462
3463         * db_access.py: add new functions get_section_id, get_priority_id
3464         and get_override_type_id.
3465         (get_architecture_id): return -1 if the architecture is not found.
3466
3467         * heidi: switch %d -> %d in all SQL queries.
3468         (get_list): Use string.join where appropriate.
3469
3470         * rhona (in_override_p): don't die if the override file doesn't
3471         exist.
3472         (main): warn if the override file doesn't exist.
3473
3474         * alyson: new script; will eventually sync the config file and the
3475         SQL database.
3476
3477         * natalie.py: new script; manipulates overrides.
3478
3479         * melanie: new script; removes packages from suites.
3480
3481 2001-01-08  James Troup  <james@nocrew.org>
3482
3483         * katie (re_bad_diff): whee; dpkg 1.8.1.1 didn't actually fix
3484         anything it just changed the symptom.  Recognise the new breakage
3485         and reject them too.
3486
3487 2001-01-07  James Troup  <james@nocrew.org>
3488
3489         * katie (check_dsc): when adding the cwd copy of the .orig.tar.gz
3490         to the .changes file, be sure to set up files[filename]["type"]
3491         too.
3492
3493 2001-01-06  James Troup  <james@nocrew.org>
3494
3495         * katie (check_diff): new function; detects bad diff files
3496         produced by dpkg 1.8.1 and rejects thems.
3497         (process_it): call check_diff().
3498         (check_dsc): gar.  Add support for multiple versions of the
3499         .orig.tar.gz file in the archive from -sa uploads.  Check md5sum
3500         and size against all versions and use one which matches if
3501         possible and exclude any that don't from being poolized to avoid
3502         file overwrites.  Thanks to broonie@ for providing the example.
3503         (install): skip any files marked as excluded as above.
3504
3505 2001-01-05  James Troup  <james@nocrew.org>
3506
3507         * heidi (process_file): add missing argument to error message.
3508
3509 2001-01-04  James Troup  <james@nocrew.org>
3510
3511         * heidi (main): fix handling of multiple files by reading all
3512         files not just the first file n times (where n = the number of
3513         files passed as arguments).
3514
3515 2001-01-04  Anthony Towns  <ajt@debian.org>
3516
3517         * katie (check_dsc): proper fix for the code which locates the
3518         .orig.tar.gz; check for '<filename>$' or '^<filename>$'.
3519
3520 2000-12-20  James Troup  <james@nocrew.org>
3521
3522         * rhona: replace IN's with EXISTS's to make DELETE time for
3523         binaries and source sane on auric.  Add a -n/--no-action flag and
3524         make it stop actions if used.  Fixed a bug in binaries deletion
3525         with no StayOfExecution (s/</<=/).  Add working -h/--help and
3526         -V/--version.  Giving timing info on deletion till I'm sure it's
3527         sane.
3528
3529         * katie (check_changes): map testing to unstable.
3530
3531         * madison: new script; shows versions in different architectures.
3532
3533         * katie (check_dsc): ensure size matches as well as md5sum;
3534         suggested by Ben Collins <bcollins@debian.org> in Debian Bug
3535         #69702.
3536
3537 2000-12-19  James Troup  <james@nocrew.org>
3538
3539         * katie (reject): ignore the "can't overwrite file" exception from
3540         utils.move() and leave the files where they are.
3541         (reject): doh! os.access() test was reversed so we only tried to
3542         move files which didn't exist... replaced with os.path.exists()
3543         test the right way round.
3544
3545         * utils.py (move): raise an exception if we can't overwrite the
3546         destination file.
3547         (copy): likewise.
3548
3549 2000-12-18  James Troup  <james@nocrew.org>
3550
3551         * rhona: first working version.
3552
3553         * db_access.py (get_files_id): force both sizes to be integers.
3554
3555         * katie (main): use size_type().
3556
3557         * utils.py (size_type): new function; pretty prints a file size.
3558
3559 2000-12-17  James Troup  <james@nocrew.org>
3560
3561         * charisma (main): do version compares so that older packages do
3562         not override newer ones and process source first as source wins
3563         over binaries in terms of who we think of as the Maintainer.
3564
3565 2000-12-15  James Troup  <james@nocrew.org>
3566
3567         * katie (install): use the files id for the .orig.tar.gz from
3568         check_dsc().
3569         (install): limit select for legacy source to a) source in legacy
3570         or legacy-mixed type locations and b) distinct on files.id.
3571         (install): rather than the bizarre insert new, delete old method
3572         for moving legacy source into the pool, use a simple update of
3573         files.
3574         (process_it): initalize some globals before each process.
3575
3576 2000-12-14  James Troup  <james@nocrew.org>
3577
3578         * katie (in_override_p): index on binary_type too since .udeb
3579         overrides are in a different file.
3580         (read_override_file): likewise.
3581         (check_files): correct filename passed to get_files_id().
3582         (check_dsc): we _have_ to preprend '/' to the filename to avoid
3583         mismatches like jabber.orig.tar.gz versus libjabber.orig.tar.gz.
3584         (check_dsc): remember the files id of the .orig.tar.gz, not the
3585         location id.
3586
3587 2000-12-13  James Troup  <james@nocrew.org>
3588
3589         * utils.py (poolify): force the component to lower case except for
3590         non-US.
3591
3592         * katie (in_override_p): handle .udeb-specific override files.
3593         (check_files): pass the binary type to in_override_p().
3594         (check_dsc): remember the location id of the old .orig.tar.gz in
3595         case it's not in the pool.
3596         (install): use location id from dsc_files; which is where
3597         check_dsc() puts it for old .orig.tar.gz files.
3598         (install): install files after all DB work is complete.
3599         (reject): basename() the changes filename.
3600         (manual_reject): likewise.
3601
3602         * shania: new progam; replaces incomingcleaner.
3603
3604 2000-12-05  James Troup  <james@nocrew.org>
3605
3606         * katie (check_changes): if inside stable and can't find files
3607         from the .changes; assume it's installed in the pool and chdir()
3608         to there.
3609         (check_files): we are not installing for stable installs, so don't
3610         check for overwriting existing files.
3611         (check_dsc): likewise.
3612         (check_dsc): reorder .orig.tar.gz handling so that we search in
3613         the pool first and only then fall back on any .orig.tar.gz in the
3614         cwd; this avoids false positives on the overwrite check when
3615         people needlessly reupoad the .orig.tar.gz in a non-sa upload.
3616         (install): if this is a stable install, bail out to
3617         stable_install() immediately.
3618         (install): dsc_files handling was horribly broken. a) we need to
3619         add files from the .dsc and not the .changes (duh), b) we need to
3620         add the .dsc file itself to dsc_files (to be consistent with neve
3621         if for no other reason).
3622         (stable_install): new function; handles installs from inside
3623         proposed-updates to stable.
3624         (acknowledge_new): basename changes_filename before doing
3625         anything.
3626         (process_it): absolutize the changes filename to avoid the
3627         requirement of being in the same directory as the .changes file.
3628         (process_it): save and restore the cwd as stable installs can
3629         potentially jump into the pool to find files.
3630
3631         * jenna: dislocated_files support using claire.
3632
3633         * heidi (process_file): select package field from binaries
3634         explicitly.
3635
3636         * db_access.py (get_files_id): fix cache key used.
3637
3638         * utils.py (build_file_list): fix 'non-US/non-free' case in
3639         section/component splitting.
3640         (move): use os.path.isdir() rather than stat.
3641         (copy): likewise.
3642
3643         * claire.py: new file; stable in non-stable munger.
3644
3645         * tea: new file; simply ensures all files in the DB exist.
3646
3647 2000-12-01  James Troup  <james@nocrew.org>
3648
3649         * katie (check_dsc): use regex_safe().
3650         (check_changes): typo in changes{} key:
3651         s/distributions/distribution/.
3652         (install): use changes["source"], not files[file]["source"] as the
3653         latter may not exist and the former is used elsewhere.  Commit the
3654         SQL transaction earlier.
3655
3656         * utils.py (regex_safe): new function; escapes characters which
3657         have meaning to SQL's regex comparison operator ('~').
3658
3659 2000-11-30  James Troup  <james@nocrew.org>
3660
3661         * katie (install): pool_location is based on source package name,
3662         not binary package.
3663
3664         * utils.py (move): if dest is a directory, append the filename
3665         before chmod-ing.
3666         (copy): ditto.
3667
3668         * katie (check_files): don't allow overwriting of existing .debs.
3669         (check_dsc): don't allow overwriting of existing source files.
3670
3671 2000-11-27  James Troup  <james@nocrew.org>
3672
3673         * katie (check_signature): don't try to load rsaref; it's
3674         obsolete.
3675         (in_override_p): don't try to lookup override entries for packages
3676         with an invalid suite name.
3677         (announce): don't assume the suite name is valid; use Find() to
3678         lookup the mailing list name for announcements.
3679
3680         * utils.py (where_am_i): typo; hostname is in the first element,
3681         not second.
3682
3683         * db_access.py (get_suite_id): return -1 on an unknown suite.
3684
3685 2000-11-26  James Troup  <james@nocrew.org>
3686
3687         * katie (install): fix CopyChanges handling; typo in in checking
3688         Cnf for CopyChanges flag and was calling non-existent function
3689         copy_file.
3690
3691         * utils.py (copy): new function; clone of move without the
3692         unlink().
3693
3694 2000-11-25  James Troup  <james@nocrew.org>
3695
3696         * utils.py (build_file_list): handle non-US prefixes properly
3697         (i.e. 'non-US' -> 'non-US/main' and 'non-US/libs' -> 'non-US/main'
3698         + 'libs' not 'non-US/libs').
3699         (send_mail): add '-odq' to sendmail invocation to avoid DNS lookup
3700         delays.  This is possibly(/probably) exim speicifc and (like other
3701         sendmail options) needs to be in the config file.
3702
3703 2000-11-24  James Troup  <james@nocrew.org>
3704
3705         * rhona (check_sources): we need file id from dsc_files; not id.
3706         Handle non .dsc source files being re-referenced in dsc_files.
3707
3708         * katie (in_override_p): strip out any 'non-US' prefix.
3709         (check_files): use utils.where_am_i() rather than hardcoding.
3710         (check_files): validate the component.
3711         (install): use utils.where_am_i() rather than hardcoding.
3712         (install): fix mail to go to actual recepient.
3713         (reject): likewise.
3714         (manual_reject): likewise.
3715         (acknowledge_new): likewise.
3716         (announce): likewise.
3717
3718         * db_access.py (get_component_id): ignore case when searching for
3719         the component and don't crash if the component can't be found, but
3720         return -1.
3721         (get_location_id): handle -1 from get_component_id().
3722
3723         * jenna (generate_src_list): don't bring 'suite' into our big
3724         multi-table-joining select as we already know the 'suite_id'.
3725         (generate_bin_list): likewise.
3726
3727         * neve (main): don't quit if not on ftp-master.
3728         (process_packages): remove unused variable 'suite_codename'.
3729
3730         * utils.py (move): actually move the file.
3731         (build_file_list): handle non-US prefixes in the section.
3732
3733         * catherine (main): use which_conf_file().
3734         * charisma (main): likewise.
3735         * heidi (main): likewise.
3736         * jenna (main): likewise.
3737         * katie (main): likewise.
3738         * neve (main): likewise.
3739         * rhona (main): likewise.
3740
3741         * utils.py (where_am_i): new routine; determines the archive as
3742         understood by other 'dak' programs.
3743         (which_conf_file): new routine; determines the conf file to read.
3744
3745 2000-11-17  James Troup  <james@nocrew.org>
3746
3747         * katie (install): fix where .changes files for proposed-updates
3748         go.
3749
3750 2000-11-04  James Troup  <james@nocrew.org>
3751
3752         * jenna (main): handle architecture properly if no
3753         -a/--architecture argument is given, i.e. reset architecture with
3754         the values for the suite for each suite.
3755
3756         * Add apt_pkg.init() to the start of all scripts as it's now
3757         required by python-apt.
3758
3759 2000-10-29  James Troup  <james@nocrew.org>
3760
3761         * jenna (generate_bin_list): take an additional argument 'type'
3762         and use it in the SELECT.
3763         (main): if processing component 'main', process udebs and debs.
3764
3765         * neve (process_packages): set up 'type' in 'binaries' (by
3766         assuming .deb).
3767
3768         * katie (re_isadeb): accept ".udeb" or ".deb" as a file ending.
3769         (check_files): set up files[file]["dbtype"].
3770         (install): use files[file]["dbtype"] to set up the 'type' field in
3771         the 'binaries' table.
3772
3773         * init_pool.sql: add a 'type' field to the 'binaries' table to
3774         distinguisgh between ".udeb" and ".deb" files.
3775
3776         * utils.py (move): scrap basename() usage; use a "dir_p(dest) :
3777         dest ? dirname(dest)" type check instead.
3778
3779         * katie (check_dsc): handle the case of an .orig.tar.gz not found
3780         in the pool without crashing.  Also handle the case of being asked
3781         to look for something other than an .orig.tar.gz in the pool.
3782
3783 2000-10-26  James Troup  <james@nocrew.org>
3784
3785         * katie (install): fix filenames put into files table during
3786         poolification of legacy source.
3787
3788         * utils.py (move): work around a bug in os.path.basename() which
3789         cunningly returns '' if there is a trailing slash on the path
3790         passed to it.
3791
3792         * katie (check_dsc): Remove more cruft.  If we find the
3793         .orig.tar.gz in the pool and it's in a legacy (or legacy-mixed)
3794         location, make a note of that so we can fix things in install().
3795         (install): as above.  Move any old source out of legacy locations
3796         so that 'apt-get source' will work.
3797         (process_it): reset the flag that indicates to install that the
3798         source needs moved.
3799
3800         * cron.daily: more.  Nowhere near complete yet though.
3801
3802         * katie (install): don't run os.makedirs, a) utils.move() does
3803         this now, b) we weren't removing the user's umask and were
3804         creating dirs with SNAFU permissions.
3805         (check_dsc): rewrite the .orig.tar.gz handling to take into
3806         account, err, package pools.  i.e. look anywhere in the pool
3807         rather than faffing around with two simple paths.
3808
3809         * neve (process_sources): add the .dsc to dsc_files too.
3810
3811 2000-10-25  James Troup  <james@nocrew.org>
3812
3813         * neve (process_sources): don't duplicate .orig.tar.gz's.
3814
3815 2000-10-23  James Troup  <james@nocrew.org>
3816
3817         * utils.py (re_extract_src_version): moved here.
3818
3819         * neve: move re_extract_src_version to utils.
3820         (process_packages): reflect change.
3821
3822         * katie (install): reflect change.
3823
3824 2000-10-19  James Troup  <james@nocrew.org>
3825
3826         * jenna (generate_src_list): handle locations with null
3827         components.
3828         (generate_bin_list): likewise.
3829