]> git.decadent.org.uk Git - dak.git/blob - TODO
Also check build-depends-indep for array lossage (mdz@).
[dak.git] / TODO
1                                  TODO
2                                  ====
3
4 [NB: I use this as a thought record/scribble, not everything on here
5      makes sense and/or is actually ever going to get done, so IIWY I
6      wouldn't use it as gospel for the future of katie or as a TODO
7      list for random hacking.]
8
9 ================================================================================
10
11 queue/approved
12 --------------
13
14  o What to do with multi-suite uploads?  Presumably hold in unapproved
15    and warn?  Or what?  Can't accept just for unstable or reject just
16    from stable.
17
18  o Whenever we check for anything in accepted we also need to check in
19    unapproved.
20
21  o non-sourceful uploads should go straight through if they have
22    source in accepted or the archive.
23
24  o security uploads on auric should be pre-approved.
25
26
27 Others
28 ------
29
30 <elmo_home> [<random>maybe I should reject debian packages with a non-Debian origin or bugs field</>]
31 <Kamion> [<random>agreed; dunno what origin does but non-Debian bugs fields would be bad]
32
33   o rhona should make use of select..except select, temporary tables
34   etc. rather than looping and calling SQL every time so we can do
35   suite removal sanely (see potato-removal document)
36
37   o melanie will happily include packages in the Cc list that aren't
38     being removed...
39
40   o melanie doesn't remove udebs when removing the source they build from
41
42   o check_dsc_against_db's "delete an entry from files while you're
43     not looking" habit is Evil and Bad.
44
45   o lisa allows you to edit the section and change the component, but
46     really shouldn't.
47
48   o melanie needs to, when not sending bug close mails, promote Cc: to
49     To: and send the mail anyways.
50
51   o the lockfile (Archive_Maintenance_In_Progress) should probably be in a conf file
52
53   o madison should cross-check the b.source field and if it's not null
54     and s.name linked from it != the source given in
55     -S/--source-and-binary ignore.
56
57   o lauren sucks; she should a) only spam d-i for sourceful
58   rejections, b) sort stuff so she rejects sourceful stuff first.  the
59   non-sourceful should probably get a form mail, c) automate the
60   non-sourceful stuff (see b).
61
62   o jennifer should do q-d stuff for faster AA [ryan]
63
64   o split the morgue into source and binary so binaries can be purged first!
65
66   o per-architecture priorities for things like different arch'es
67     gcc's, silly BSD libftw, palo, etc.
68
69   o use postgres 7.2's built-in stat features to figure out how indices are used etc.
70
71   o neve shouldn't be using location, she should run down suites instead
72
73   o halle needs to know about udebs
74
75   o by default hamstring katie's mail sending so that she won't send
76     anything until someone edits a script; she's been used far too
77     much to send spam atm :(
78
79   o $ftpdir/indices isn't created by rose because it's not in katie.conf
80
81   o sanity check depends/recommends/suggests too?  in fact for any
82     empty field?
83
84 [minor] kelly's copychanges, copykatie handling sucks, the per-suite
85         thing is static for all packages, so work out in advance dummy.
86
87 [madison] # filenames ?
88 [madison] # maintainer, component, install date (source only?), fingerprint?
89
90   o UrgencyLog stuff should minimize it's bombing out(?)
91   o Log stuff should open the log file
92
93   o helena should footnote the actual notes, and also * the versions
94     with notes so we can see new versions since being noted...
95
96   o helena should have alternative sorting options, including reverse
97     and without or without differentiaion.
98
99   o julia should sync debadmin and ftpmaster (?)
100
101   o <drow> Can't read file.:
102   /org/security.debian.org/queue/accepted/accepted/apache-perl_1.3.9-14.1-1.21.20000309-1_sparc.katie.
103   You assume that the filenames are relative to accepted/, might want
104   to doc or fix that.
105
106   o <neuro> the orig was in NEW, the changes that caused it to be NEW
107     were pulled out in -2, and we end up with no orig in the archive
108     :(
109
110   o SecurityAcceptedAutoBuild doesn't handle the case of foo_3.3woody1
111     with a new .orig.tar.gz followed by a foo_3.3potato1 with the same
112     .orig.tar.gz; jennifer sees it and copes, but the AA code doesn't
113     and can't really easily know so the potato AA dir is left with no
114     .orig.tar.gz copy.  doh.
115
116   o orig.tar.gz in accepted not handled properly (?)
117
118   o amber doesn't include .orig.tar.gz but it should
119
120   o permissions (paranoia, group write, etc.) configurability and overhaul
121
122   o remember duplicate copyrights in lisaand skip them, per package
123
124   o <M>ove option for lisa byhand proecessing
125
126   o rene could do with overrides
127
128   o db_access.get_location_id should handle the lack of archive_id properly
129
130   o the whole versioncmp thing should be documented
131
132   o lisa doesn't do the right thing with -2 and -1 uploads, as you can
133     end up with the .orig.tar.gz not in the pool
134
135   o lisa exits if you check twice (aj)
136
137   o lisa doesn't trap signals from fernanda properly
138
139   o queued and/or perl on sparc stable sucks - reimplement it.
140
141   o aj's bin nmu changes
142
143   o Lisa:
144     * priority >> optional
145     * arch != {any,all}
146     * build-depends wrong (via andrea)
147     * suid
148     * conficlits
149     * notification/stats to admin daily
150     o trap fernanda exiting
151     o distinguish binary only versus others (neuro)
152
153   o cache changes parsed from ordering (careful tho: would be caching
154     .changes from world writable incoming, not holding)
155
156   o katie doesn't recognise binonlyNMUs correctly in terms of telling
157     who their source is; source-must-exist does, but the info is not
158     propogated down.
159
160   o Fix BTS vs. katie sync issues by queueing(via BSMTP) BTS mail so
161     that it can be released on deman (e.g. ETRN to exim).
162
163   o maintainers file needs overrides
164
165     [ change override.maintainer to override.maintainer-from +
166       override.maintainer-to and have them reference the maintainers
167       table.  Then fix charisma to use them and write some scripting
168       to handle the Santiago situation. ]
169
170   o Validate Depends (et al.) [it should match  \(\s*(<<|<|<=|=|>=|>|>>)\s*<VERSIONREGEXP>\)]
171
172   o Clean up DONE; archive to tar file every 2 weeks, update tar tvzf INDEX file.
173
174   o testing-updates suite: if binary-only and version << version in
175     unstable and source-ver ~= source-ver in testing; then map
176     unstable -> testing-updates ?
177
178   o hooks or configurability for debian specific checks (e.g. check_urgency, auto-building support)
179
180   o morgue needs auto-cleaning (?)
181
182   o saffron: two modes, all included, seperate
183   o saffron: add non-US
184   o saffron: add ability to control components, architectures, archives, suites
185   o saffron: add key to expand header
186
187 ================================================================================
188
189 Less Urgent
190 -----------
191
192   o change utils.copy to try rename() first
193
194   o [hard, long term] unchecked -> accepted should go into the db, not
195     a suite, but similar.  this would allow katie to get even faster,
196     make madison more useful, decomplexify specialacceptedautobuild
197     and generally be more sane.  may even be helpful to have e.g. new
198     in the DB, so that we avoid corner cases like the .orig.tar.gz
199     disappearing 'cos the package has been entirely removed but was
200     still on stayofexecution when it entered new.
201
202   o Logging [mostly done] (todo: rhona (hard), .. ?)
203
204   o jennifer: the tar extractor class doesn't need to be redone for each package
205
206   o reverse of source-must-exist; i.e. binary-for-source-must-not-exist
207   o REJECT reminders in shania.
208   o fernanda should check for conflicts and warn about them visavis priority [rmurray]
209   o store a list of removed/files versions; also compare against them.
210     [but be careful about scalability]
211
212   o fernanda: print_copyright should be a lot more intelligent
213      @ handle copyright.gz
214      @ handle copyright.ja and copyright
215      @ handle (detect at least) symlinks to another package's doc directory
216      @ handle and/or fall back on source files (?)
217
218   o To incorporate from utils:
219      @ unreject
220
221   o auto-purge out-of-date stuff from non-free/contrib so that testing and stuff works
222   o doogie's binary -> source index
223   o jt's web stuff, matt's changelog stuff (overlap)
224
225   o [Hard] Need to merge non-non-US and non-US DBs.
226
227   o experimental needs to auto clean (relative to unstable) [partial: rene warns about this]
228
229   o Do a checkpc(1)-a-like which sanitizes a config files.
230   o fix parse_changes()/build_file_list() to sanity check filenames
231   o saftey check and/or rename debs so they match what they should be
232
233   o Improve andrea.
234   o Need to optimize all the queries by using EXAMINE and building some INDEXs.
235     [postgresql 7.2 will help here]
236   o Need to enclose all the setting SQL stuff in transactions (mostly done).
237   o Need to finish alyson (a way to sync katie.conf and the DB)
238   o Need the ability to rebuild all other tables from dists _or_ pools (in the event of disaster) (?)
239   o Make the --help and --version options do stuff for all scripts
240
241   o charisma can't handle whitespace-only lines (for the moment, this is feature)
242
243   o generic way of saying isabinary and isadsc. (?)
244
245   o s/distribution/suite/g
246
247   o cron.weekly:
248      @ weekly postins to d-c (?)
249      @ backup of report (?)
250      @ backup of changes.tgz (?)
251
252   o --help doesn't work without /etc/katie/katie.conf (or similar) at
253     least existing.
254
255   o rename andrea (clashes with existing andrea)...
256
257  * Harder:
258
259     o interrupting of stracing jennifer causes exceptions errors from apt_inst calls
260     o dependency checking (esp. stable) (partially done)
261     o override checks sucks; it needs to track changes made by the
262       maintainer and pass them onto ftpmaster instead of warning the
263       maintainer.
264     o need to do proper rfc822 escaping of from lines (as opposed to s/\.//g)
265     o Revisit linking of binary->source in install() in katie.
266     o Fix component handling in overrides (aj)
267     o Fix lack of entires in source overrides (aj)
268     o direport misreports things as section 'devel' (? we don't use direport)
269     o vrfy check of every Maintainer+Changed-By address; valid for 3 months.
270     o binary-all should be done on a per-source, per-architecture package
271       basis to avoid, e.g. the perl-modules problem.
272     o a source-missing-diff check: if the version has a - in it, and it
273       is sourceful, it needs orig and diff, e.g. if someone uploads
274       esound_0.2.22-6, and it is sourceful, and there is no diff ->
275       REJECT (version has a dash, therefore not debian native.)
276     o check linking of .tar.gz's to .dsc's.. see proftpd 1.2.1 as an example
277     o archive needs md5sum'ed regularly, but takes too long to do all
278       in one go; make progressive or weekly.
279     o katie/jenna/rhona/whatever needs to clear out .changes
280       files from p-u when removing stuff superseded by newer versions.
281       [but for now we have halle]
282     o test sig checking stuff in test/ (stupid thing is not modularized due to global abuse)
283     o when encountering suspicous things (e.g. file tainting) do something more drastic
284
285  * Easy:
286
287     o suite mapping and component mapping are parsed per changes file,
288       they should probably be stored in a dictionary created at startup.
289     o don't stat/md5sum files you have entries for in the DB, moron
290       boy (Katie.check_source_blah_blah)
291     o promote changes["changes"] to mandatory in katie.py(dump_vars)
292       after a month or so (or all .katie files contain in the queue
293       contain it).
294     o melanie should behave better with -a and without -b; see
295       gcc-defaults removal for an example.
296     o Reject on misconfigured kernel-package uploads
297     o utils.extract_component_from_section: main/utils -> main/utils, main rather than utils, main
298     o Fix jennier to warn if run when not in incoming or p-u
299     o katie should validate multi-suite uploads; only possible valid one
300       is "stable unstable"
301     o cron.daily* should change umask (aj sucks)
302     o Rene doesn't look at debian-installer but should.
303     o Rene needs to check for binary-less source packages.
304     o Rene could accept a suite argument (?)
305     o byhand stuff should send notification
306     o catherine should udpate db; move files, not the other way around [neuro]
307     o melanie should update the stable changelog [joey]
308     o update tagdb.dia
309
310  * Bizzare/uncertain:
311
312     o drop rather dubious currval stuff (?)
313     o rationalize os.path.join() usage
314     o Rene also doesn't seem to warn about missing binary packages (??)
315     o logging: hostname + pid ?
316     o ANAIS should be done in katie (?)
317     o Add an 'add' ability to melanie (? separate prog maybe)
318     o Replicate old dinstall report stuff (? needed ?)
319     o Handle the case of 1:1.1 which would overwrite 1.1 (?)
320     o maybe drop -r/--regex in madison, make it the default and
321       implement -e/--exact (a la joey's "elmo")
322     o dsc files are not checked for existence/perms (only an issue if
323       they're in the .dsc, but not the .changes.. possible?)
324
325  * Cleanups & misc:
326
327     o db_access' get_files needs to use exceptions not this None, > 0, < 0 return val BS (?)
328     o The untouchable flag doesn't stop new packages being added to ``untouchable'' suites
329
330 ================================================================================
331
332 Packaging
333 ---------
334
335   o Fix stuff to look in sensible places for libs and config file in debian package (?)
336
337 ================================================================================
338
339            --help      manpage
340 -----------------------------------------------------------------------------
341 alyson        X
342 amber         X
343 andrea        X
344 ashley        X
345 catherine     X          X
346 charisma      X          X
347 cindy         X          X
348 claire        X
349 denise        X
350 fernanda      X
351 halle         X
352 heidi         X          X
353 helena        X
354 jenna         X
355 jennifer      X
356 jeri          X
357 julia         X          X
358 kelly         X          X
359 lisa          X          X
360 madison       X          X
361 melanie       X          X
362 natalie       X          X
363 neve          X
364 rene          X
365 rose          X
366 rhona         X          X
367 saffron       X
368 shania        X
369 tea           X
370 ziyi          X
371
372 ================================================================================
373
374 Possible Quotes:
375 ----------------
376  
377 | <mdz_> SirDibos: that sentence sounds like it wants to be a bug report when it grows up
378  
379 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
380
381 | From: Andrew Morton <akpm@osdl.org>
382 | Subject: Re: Linux 2.6.0-test1 Ext3 Ooops. Reboot needed.
383 | To: Ricardo Galli <gallir@uib.es>
384 | Cc: linux-kernel@vger.kernel.org
385 | Date: Fri, 18 Jul 2003 14:27:20 -0700
386
387 | Ricardo Galli <gallir@uib.es> wrote:
388 | >
389 | > "File alteration monitor", from Debian.
390
391 | OK.
392
393 | > $ apt-cache show fam
394
395 | I was attacked by dselect as a small child and have since avoided debian. 
396 | Is there a tarball anywhere?
397
398 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
399
400 | From: Bob Hilliard <hilliard@debian.org>
401
402 |      In my experience, James has been very responsive, albeit not
403 | verbose, to reasonable questions/requests that don't start out saying
404 | "James is a bum - throw him out".
405
406 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
407
408 | <eigood> Kamion: are you too busy to look at my generic
409 |          include/exclude stuff for the bts yet?
410 | <Kamion> eigood: expect me to be busy for about the next week at this
411 |          rate
412 | <eigood> my %field_match = (
413 | <eigood>     'subject' => \&contains_field_match,
414 | <eigood>     'severity' => \&exact_field_match,
415 | <eigood> that's how it works, basically
416 | <eigood> I'm a big fan of callbacks
417 | [...]
418 | <eigood> Kamion: how do you feel about having
419 |          per-bug/per-package/per-source notes support in the bts?
420 | <Kamion> eigood: as I said five minutes ago, I really don't have time
421 |          to think about it right now, sorry
422 | <Kamion> here, maybe it would be clearer if I /part
423 | <-- Kamion (~cjwatson@host81-129-36-235.in-addr.btopenworld.com) has left #debian-devel (too busy. no, really.)
424 | <eigood> no need to be hostile
425 | <Joy> eigood: he told you he's too busy and you kept bugging him. take
426 |       a hint :)