]> git.decadent.org.uk Git - dak.git/blobdiff - TODO
* crypto-in-main changes.* utils.py (move, copy): add an optional perms= parameter...
[dak.git] / TODO
diff --git a/TODO b/TODO
index 7081d22b80f183cced96b64ffd8300271ecc0693..d71e321a114f162b58a0466cc43d4419add9d507 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,29 +1,42 @@
-To fix
-======
+                                TODO
+                                ====
 
-Urgent
-------
+================================================================================
 
-  o katie needs a stable_reject() which a) removes the package from
-    p-u, b) doesn't remove the file from the pool, and c) (optionally, I
-    guess) uses a template mail.
+More Urgent
+-----------
+
+  o Lisa:
+    * priority >> optional
+    * arch != {any,all}
+    * build-depends wrong (via andrea)
+    * suid
+    * conficlits
+    * notification/stats to admin daily
+    o trap fernanda exiting
+    o distinguish binary only versus others (neuro)
 
-  o katie/jenna/rhona/whatever needs to clear out .changes
-    files from p-u when removing stuff superseded by newer versions.
+  o change utils.copy to try rename() first
 
-  o experimental needs to auto clean (relative to unstable)
+  o cache changes parsed from ordering (careful tho: would be caching
+  .changes from world writable incoming, not holding)
 
-  o jenna doesn't handle arch: any -> arch: all transitions 
-    [aj worked around; need to revisit]
+  o katie doesn't recognise binonlyNMUs correctly in terms of telling
+    who their source is; source-must-exist does, but the info is not
+    propogated down.
 
-  o direport misreports things as section 'devel'
+  o DONE
 
-  o Fix rhona to obey StayOfExecution
+  o stable installs are FUBAR
+  o clean fingerprint
+  o fix up cron.weekly and/or shania
 
-  o rewrite shania to a) be sane, b) clean REJECT properly
-    (i.e. ignore the fact that stuff is in a valid .changes file and
-    just clean the mofo)
+  o Fix BTS vs. katie sync issues by queueing(via BSMTP) BTS mail so
+    that it can be released on deman (e.g. ETRN to exim).
 
+  o write our own locking module or in some other way fix things so we
+    don't require a patch to python since upstream refuse to fix it.
   o maintainers file needs overrides  
  
     [ change override.maintainer to override.maintainer-from +
@@ -31,139 +44,157 @@ Urgent
       table.  Then fix charisma to use them and write some scripting
       to handle the Santiago situation. ]
 
-  o Add urgency + installed date to the DB for aj/testing (? still needed ?)
-
-  o Enforce NMU and bin-only NMU versioning schemes
-
-  o Revisit linking of binary->source in install() in katie.
-
-  o debian/* assumes arch: all but sql-aptvc.o isn't arch: all.
-
-  o jt's web stuff, matt's changelog stuff (overlap)
-
-Less Urgent
------------
-
- o doogie's binary -> source index
-
- o ANIAS should be done in katie ?
- o natalie doesn't warn when lisitng invalid components!
-
- o run apt-ftparchive clean <conf file> weekly [culus sucks]
-
- o purge older stuff from non-free/contrib so that testing and stuff works
-
- o when dinstall is run in install mode but not as a cron job, it
-   should probably run jenna to avoid madison originated user confusion
-
- o check for empty debs; check for empty (or small (<1k ?)) .tar.gz's.
+  o (Depends) <aj> elmo: it should match  \(\s*(<<|<|<=|=|>=|>|>>)\s*<VERSIONREGEXP>\) fwiw
 
- o validate email addresses ?  harsh to reject tho [errge]
+  o Clean up DONE; archive to tar file every 2 weeks, update tar tvzf INDEX file.
 
- o validate source consistency, i.e. .dsc and .tar.gz as minimum
+  o testing-updates suite: if binary-only and version << version in
+    unstable and source-ver ~= source-ver in testing; then map
+    unstable -> testing-updates ?
 
- o Rene doesn't look at debian-installer but should.
+  o [Hard] dependency checking (esp. stable) (partially done)
 
- o Rene also doesn't seem to warn about missing binary packages?
+  o hooks for debian specific checks (e.g. check_urgency)
 
- o cron.daily* should change umask (aj sucks)
- o override checks sucks; it needs to track changes made by the
-   maintainer and pass them onto ftpmaster instead of warning the
-   maintainer.
-
- o Don't do override checks for stable only uploads
-
- o katie should validate multi-suite uploads; only possible valid one
-   is "stable unstable" [but see d-policy@l.d.o]
+  o Logging [mostly done]
 
- o need to have process_it run a big try: loop so that individual
-    package screws up don't kill the daily cron run.
+  o Abstraction of suite hardcoding (q.v. progengy)
 
- o Add an 'add' ability to melanie (? separate prog maybe)
- o [Hard] Need to merge non-non-US and non-US DBs.
- o [Easy] Need to vacuum daily
- o [Easy] remove empty directories in the pool in cron.weekly or so
+  o morgue needs auto-cleaning (?)
 
- o need to do proper rfc822 escaping of from lines (as opposed to s/\.//g)
+================================================================================
 
- o Fix dinstall to remove != stable on stable install, not just f + u
- o Fix 'mixed' component handling (?)
- o Fix component handling in overrides (aj)
- o Fix lack of entires in source overrides (aj)
- o Fix rhona to unconditionally read override file on startup
- o Fix dinstall to warn if not in incoming or p-u
- o db_access' get_files needs to use exceptions not this None, > 0, < 0 return val BS (?)
- o check errors on apt_pkg calls (?)
- o The untouchable flag doesn't stop adding new packages
- o jenna needs to validate arguments (?)
- o jenna is too damn slow
-
-===================================================================================================
+Less Urgent
+-----------
 
-TODO
-====
+  o reverse of source-must-exist; i.e. binary-for-source-must-not-exist
+  o REJECT reminders in shania.
+  o fernanda should check for conflicts and warn about them visavis priority [rmurray]
+  o store a list of removed/files versions; also compare against them.
+    [but be careful about scalability]
 
-Packaging
----------
+  o fernanda: print_copyright should be a lot more intelligent
+     @ handle copyright.gz
+     @ handle copyright.ja and copyright
+     @ handle (detect at least) symlinks to another package's doc directory
+     @ handle and/or fall back on source files (?)
 
-  o Install python libraries (db_access and utils)
-  o Install config file
-  o Fix stuff to look in sensible places for libs and config file in debian package (?)
-  o man pages and/or documentation
+  o To incorporate from utils:
+     @ unreject
 
-Urgent
-------
+  o katie could vrfy email addresses (?) [errge@]
+  o auto-purge out-of-date stuff from non-free/contrib so that testing and stuff works
+  o doogie's binary -> source index
+  o Add urgency + installed date to the DB for aj/testing (? still needed ?)
+  o jt's web stuff, matt's changelog stuff (overlap)
 
-  o Secure incoming handling
-  o [Hard] dependency checking
-  o Need log files for jenna, rhona and katie.
+  o [Hard] Need to merge non-non-US and non-US DBs.
 
-Less Urgent
------------
+  o experimental needs to auto clean (relative to unstable) [partial: rene warns about this]
 
   o Do a checkpc(1)-a-like which sanitizes a config files.
   o fix parse_changes()/build_file_list() to sanity check filenames
   o saftey check and/or rename debs so they match what they should be
 
-  o Enable catherine (when daily mirror hit drops down below 300Mb maybe..)
   o Improve andrea.
   o Need to optimize all the queries by using EXAMINE and building some INDEXs.
   o Need to enclose all the setting SQL stuff in transactions (mostly done).
   o Need to finish alyson (a way to sync katie.conf and the DB)
   o Need the ability to rebuild all other tables from dists _or_ pools (in the event of disaster) (?)
   o Make the --help and --version options do stuff for all scripts
-  o Need to check for .dsc when source is mentioned
 
   o charisma can't handle whitespace-only lines (for the moment, this is feature)
-  o Should use $EDITOR, not hardcode vi
-  o Should reject packages with bad timestamps
-  o Replicate old dinstall report stuff (? needed ?)
-  o Handle the case of 1:1.1 which would overwrite 1.1 (?)
-  o aj's binary-all stuff (foo-doc depending on foo) (?)
-  o heidi should report suite name not ID [aj]
-
-  o fubar and warn/error wrappers like in C (?)
+
   o generic way of saying isabinary and isadsc. (?)
-  o substitution stuff (cf. userdir-ldap) for announce, reject etc.
 
   o s/distribution/suite/g
 
-===================================================================================================
-
-23:12|<aj> I will not hush!
-23:12|<elmo> :>
-23:12|<aj> Where there is injustice in the world, I shall be there!
-23:13|<aj> I shall not be silenced!
-23:13|<aj> The world shall know!
-23:13|<aj> The world *must* know!
-23:13|<elmo> oh dear, he's gone back to powerpuff girls... ;-)
-23:13|<aj> yay powerpuff girls!!
-23:13|<aj> buttercup's my favourite, who's yours?
-23:14|<aj> you're backing away from the keyboard right now aren't you?
-23:14|<aj> *AREN'T YOU*?!
-23:15|<aj> I will not be treated like this.
-23:15|<aj> I shall have my revenge.
-23:15|<aj> I SHALL!!!
+  o cron.weekly:
+     @ weekly postins to d-c (?)
+     @ backup of report (?)
+     @ backup of changes.tgz (?)
+
+ * Harder:
+
+    o override checks sucks; it needs to track changes made by the
+      maintainer and pass them onto ftpmaster instead of warning the
+      maintainer.
+    o need to do proper rfc822 escaping of from lines (as opposed to s/\.//g)
+    o when dinstall is run in install mode but not as a cron job, it
+      should probably run jenna to avoid madison originated user confusion
+    o Revisit linking of binary->source in install() in katie.
+    o Fix component handling in overrides (aj)
+    o Fix lack of entires in source overrides (aj)
+    o direport misreports things as section 'devel'
+    o vrfy check of every Maintainer+Changed-By address; valid for 3 months.
+    o binary-all should be done on a per-source, per-architecture package
+      basis to avoid, e.g. the perl-modules problem.
+    o a source-missing-diff check: if the version has a - in it, and it
+      is sourceful, it needs orig and diff, e.g. if someone uploads
+      esound_0.2.22-6, and it is sourceful, and there is no diff ->
+      REJECT (version has a dash, therefore not debian native.)
+    o check linking of .tar.gz's to .dsc's.. see proftpd 1.2.1 as an example
+    o archive needs md5sum'ed regularly, but takes too long to do all
+      in one go; make progressive or weekly.
+    o katie/jenna/rhona/whatever needs to clear out .changes
+      files from p-u when removing stuff superseded by newer versions.
+      [but for now we have halle]
+    o test sig checking stuff in test/ (stupid thing is not modularized)
+    o when encountering suspicous things (e.g. file tainting) do something more drastic
+
+ * Easy:
+
+    o Rationalize config stuff.. Dir::Foo not Dir::FooDir [breaks other people??] 
+    o melanie should behave better with -a and without -b; see
+      gcc-defaults removal for an example.
+    o Reject on misconfigured kernel-package uploads
+    o denise abuses sys.stdout == badly  
+    o utils.extract_component_from_section: main/utils -> main/utils, main rather than utils, main
+    o Fix katie to warn if run when not in incoming or p-u
+    o check for empty debs; check for empty (or small (<1k ?)) .tar.gz's.
+    o katie should validate multi-suite uploads; only possible valid one
+      is "stable unstable"
+    o cron.daily* should change umask (aj sucks)
+    o Rene doesn't look at debian-installer but should.
+    o Rene needs to check for binary-less source packages.
+    o Rene could accept a suite argument (?)
+    o run shania every day (?) [ryan]
+    o we don't check for .orig.tar.gz's, so it's possible to upload -2 with no .orig.tar.gz.
+    o byhand stuff should send notification
+    o catherine should udpate db; move files, not the other way around [neuro]
+    o melanie should update the stable changelog [joey]
+    o update tagdb.dia
+  
+ * Bizzare/uncertain:
+   
+    o validate source consistency, i.e. .dsc and .tar.gz as minimum (??)
+    o Rene also doesn't seem to warn about missing binary packages (??)
+    o jenna should not delete things because they don't exist (?)
+    o logging: hostname + pid ?
+    o ANAIS should be done in katie (?)
+    o Add an 'add' ability to melanie (? separate prog maybe)
+    o Replicate old dinstall report stuff (? needed ?)
+    o Handle the case of 1:1.1 which would overwrite 1.1 (?)
+  
+ * Cleanups & misc: 
+   
+    o db_access' get_files needs to use exceptions not this None, > 0, < 0 return val BS (?)
+    o The untouchable flag doesn't stop new packages being added to ``untouchable'' suites
+    o jenna is too slow
+    o jenna doesn't handle arch: any -> arch: all transitions 
+      [aj worked around; need to revisit]
+
+ * Stable:
+
+<neuro> well, there's one other thing that doesn't work so well
+<neuro> you probably should have stable_install ignore Closes:
+<neuro> or it might be unique to the case of stable unstable uploads
+
+================================================================================
+
+Packaging
+---------
+
+  o Fix stuff to look in sensible places for libs and config file in debian package (?)
 
+================================================================================