]> git.decadent.org.uk Git - dak.git/blob - TODO
sync
[dak.git] / TODO
1                                  TODO
2                                  ====
3
4 ================================================================================
5
6 Actually Urgent
7 ---------------
8
9   o lisa doesn't do the right thing with -2 and -1 uploads, as you can
10     end up with the .orig.tar.gz not in the pool
11
12   o lisa exits if you check twice (aj)
13
14   o lisa doesn't trap signals from fernanda properly
15
16 More Urgent
17 -----------
18
19   o cross-suite version checking
20
21      Priority based; stable == 1, proposed-update == 2, etc.
22
23       i.e. A package targeted for a suite, must have a higher (or
24       equal) version number than anything in a suite with a lower
25       priority and also must have a lower (or equal) version number
26       than anything in a suite with a higher priorty.  The checks are
27       always "or equal to" because two seperate uploads with the same
28       version will fail thanks to the file overwrite errors (at least
29       ignoring potato) and multi-suite uploads (e.g. "stable
30       unstable") need to work.
31
32   o jenna sucks
33
34   o queued and/or perl on sparc stable sucks
35
36   o aj's bin nmu changes
37
38   o Lisa:
39     * priority >> optional
40     * arch != {any,all}
41     * build-depends wrong (via andrea)
42     * suid
43     * conficlits
44     * notification/stats to admin daily
45     o trap fernanda exiting
46     o distinguish binary only versus others (neuro)
47
48   o change utils.copy to try rename() first
49
50   o cache changes parsed from ordering (careful tho: would be caching
51     .changes from world writable incoming, not holding)
52
53   o katie doesn't recognise binonlyNMUs correctly in terms of telling
54     who their source is; source-must-exist does, but the info is not
55     propogated down.
56
57   o DONE clean up
58
59   o Fix BTS vs. katie sync issues by queueing(via BSMTP) BTS mail so
60     that it can be released on deman (e.g. ETRN to exim).
61
62   o write our own locking module or in some other way fix things so we
63     don't require a patch to python since upstream refuse to fix it.
64  
65   o maintainers file needs overrides  
66  
67     [ change override.maintainer to override.maintainer-from +
68       override.maintainer-to and have them reference the maintainers
69       table.  Then fix charisma to use them and write some scripting
70       to handle the Santiago situation. ]
71
72   o (Depends) <aj> elmo: it should match  \(\s*(<<|<|<=|=|>=|>|>>)\s*<VERSIONREGEXP>\) fwiw
73
74   o Clean up DONE; archive to tar file every 2 weeks, update tar tvzf INDEX file.
75
76   o testing-updates suite: if binary-only and version << version in
77     unstable and source-ver ~= source-ver in testing; then map
78     unstable -> testing-updates ?
79
80   o [Hard] dependency checking (esp. stable) (partially done)
81
82   o hooks for debian specific checks (e.g. check_urgency)
83
84   o Logging [mostly done] (todo: rhona (hard), .. ?)
85
86   o Abstraction of suite hardcoding (q.v. progengy)
87
88   o morgue needs auto-cleaning (?)
89
90   o auto-building crap should be optional
91
92 ================================================================================
93
94 Less Urgent
95 -----------
96
97   o jennifer is leaking file descriptors..
98
99   o the tar extractor class doesn't need to be redone for each package
100
101   o interrupting of stracing jennifer causes exceptions errors from apt_inst calls 
102
103   o reverse of source-must-exist; i.e. binary-for-source-must-not-exist
104   o REJECT reminders in shania.
105   o fernanda should check for conflicts and warn about them visavis priority [rmurray]
106   o store a list of removed/files versions; also compare against them.
107     [but be careful about scalability]
108
109   o fernanda: print_copyright should be a lot more intelligent
110      @ handle copyright.gz
111      @ handle copyright.ja and copyright
112      @ handle (detect at least) symlinks to another package's doc directory
113      @ handle and/or fall back on source files (?)
114
115   o To incorporate from utils:
116      @ unreject
117
118   o katie could vrfy email addresses (?) [errge@]
119   o auto-purge out-of-date stuff from non-free/contrib so that testing and stuff works
120   o doogie's binary -> source index
121   o Add urgency + installed date to the DB for aj/testing (? still needed ?)
122   o jt's web stuff, matt's changelog stuff (overlap)
123
124   o [Hard] Need to merge non-non-US and non-US DBs.
125
126   o experimental needs to auto clean (relative to unstable) [partial: rene warns about this]
127
128   o Do a checkpc(1)-a-like which sanitizes a config files.
129   o fix parse_changes()/build_file_list() to sanity check filenames
130   o saftey check and/or rename debs so they match what they should be
131
132   o Improve andrea.
133   o Need to optimize all the queries by using EXAMINE and building some INDEXs.
134   o Need to enclose all the setting SQL stuff in transactions (mostly done).
135   o Need to finish alyson (a way to sync katie.conf and the DB)
136   o Need the ability to rebuild all other tables from dists _or_ pools (in the event of disaster) (?)
137   o Make the --help and --version options do stuff for all scripts
138
139   o charisma can't handle whitespace-only lines (for the moment, this is feature)
140
141   o generic way of saying isabinary and isadsc. (?)
142
143   o s/distribution/suite/g
144
145   o cron.weekly:
146      @ weekly postins to d-c (?)
147      @ backup of report (?)
148      @ backup of changes.tgz (?)
149
150  * Harder:
151
152     o override checks sucks; it needs to track changes made by the
153       maintainer and pass them onto ftpmaster instead of warning the
154       maintainer.
155     o need to do proper rfc822 escaping of from lines (as opposed to s/\.//g)
156     o when dinstall is run in install mode but not as a cron job, it
157       should probably run jenna to avoid madison originated user confusion
158     o Revisit linking of binary->source in install() in katie.
159     o Fix component handling in overrides (aj)
160     o Fix lack of entires in source overrides (aj)
161     o direport misreports things as section 'devel'
162     o vrfy check of every Maintainer+Changed-By address; valid for 3 months.
163     o binary-all should be done on a per-source, per-architecture package
164       basis to avoid, e.g. the perl-modules problem.
165     o a source-missing-diff check: if the version has a - in it, and it
166       is sourceful, it needs orig and diff, e.g. if someone uploads
167       esound_0.2.22-6, and it is sourceful, and there is no diff ->
168       REJECT (version has a dash, therefore not debian native.)
169     o check linking of .tar.gz's to .dsc's.. see proftpd 1.2.1 as an example
170     o archive needs md5sum'ed regularly, but takes too long to do all
171       in one go; make progressive or weekly.
172     o katie/jenna/rhona/whatever needs to clear out .changes
173       files from p-u when removing stuff superseded by newer versions.
174       [but for now we have halle]
175     o test sig checking stuff in test/ (stupid thing is not modularized)
176     o when encountering suspicous things (e.g. file tainting) do something more drastic
177
178  * Easy:
179
180     o promote changes["changes"] to mandatory in katie.py(dump_vars)
181       after a month or so (or all .katie files contain in the queue
182       contain it).
183     o Rationalize config stuff.. Dir::Foo not Dir::FooDir [breaks other people??] 
184       Also Dir::Queue::Foo, not Dir::QueueFooDir
185     o melanie should behave better with -a and without -b; see
186       gcc-defaults removal for an example.
187     o Reject on misconfigured kernel-package uploads
188     o denise abuses sys.stdout == badly  
189     o utils.extract_component_from_section: main/utils -> main/utils, main rather than utils, main
190     o Fix katie to warn if run when not in incoming or p-u
191     o check for empty debs; check for empty (or small (<1k ?)) .tar.gz's.
192     o katie should validate multi-suite uploads; only possible valid one
193       is "stable unstable"
194     o cron.daily* should change umask (aj sucks)
195     o Rene doesn't look at debian-installer but should.
196     o Rene needs to check for binary-less source packages.
197     o Rene could accept a suite argument (?)
198     o run shania every day (?) [ryan]
199     o we don't check for .orig.tar.gz's, so it's possible to upload -2 with no .orig.tar.gz.
200     o byhand stuff should send notification
201     o catherine should udpate db; move files, not the other way around [neuro]
202     o melanie should update the stable changelog [joey]
203     o update tagdb.dia
204   
205  * Bizzare/uncertain:
206    
207     o validate source consistency, i.e. .dsc and .tar.gz as minimum (??)
208     o Rene also doesn't seem to warn about missing binary packages (??)
209     o jenna should not delete things because they don't exist (?)
210     o logging: hostname + pid ?
211     o ANAIS should be done in katie (?)
212     o Add an 'add' ability to melanie (? separate prog maybe)
213     o Replicate old dinstall report stuff (? needed ?)
214     o Handle the case of 1:1.1 which would overwrite 1.1 (?)
215     o maybe drop -r/--regex in madison, make it the default and
216       implement -e/--exact (a la joey's "elmo")
217   
218  * Cleanups & misc: 
219    
220     o db_access' get_files needs to use exceptions not this None, > 0, < 0 return val BS (?)
221     o The untouchable flag doesn't stop new packages being added to ``untouchable'' suites
222     o jenna is too slow
223     o jenna doesn't handle arch: any -> arch: all transitions 
224       [aj worked around; need to revisit]
225
226  * Stable:
227
228 <neuro> well, there's one other thing that doesn't work so well
229 <neuro> you probably should have stable_install ignore Closes:
230 <neuro> or it might be unique to the case of stable unstable uploads
231
232 ================================================================================
233
234 Packaging
235 ---------
236
237   o Fix stuff to look in sensible places for libs and config file in debian package (?)
238
239 ================================================================================