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