TODO
====

Various
-------

* Improve logging in ``dak control-suite``. ``--add`` is silent, not nice. same
   for --remove

* Throw away all DD uploaded .debs. (Depend on "Lintian based automated
   rejects")
  - Need a way to define a build-architecture for arch_all debs. Some of
   them can only be built on certain architectures.
   A control file header build-architecture: YXY should do it.
  - It's a suite option, not active for all at once.
  - Should have all buildd machines under dsa control

* Check TODO.old and move still-valid/useful entries over here.

* Need to improve test suite coverage.

* database table "binaries" contains a column 'type TEXT NOT
  NULL'. This should be made a FK on override_type, as it only contains
  deb/udeb strings.

  - sql query to do the db work for it:
     ALTER TABLE binaries ADD COLUMN new_type INT4 REFERENCES override_type(id);
     UPDATE BINARIES SET new_type = 7 WHERE type = 'deb';
     UPDATE BINARIES SET new_type = 8 WHERE type = 'udeb';
     ALTER TABLE binaries DROP COLUMN type;
     ALTER TABLE binaries RENAME COLUMN new_type TO type;

  - needs updateX.py written and then the rest of the code changed to deal
     with it.

* use pythonX.Y-tarfile to check orig.tar.gz timestamps too.

* security global mail overrides should special case buildd stuff so
  that buildds get ACCEPTED mails. Or maybe send them at
  new-security-install time. That way upload-security doesn't grow
  boundlessly.

* debianqueued sucks. Reimplement in a sane way.

NEW processing
--------------

* 'dak process-new' allows you to edit the section and change the
   component, but really shouldn't allow the component change.

* 'dak process-new' should have a "Previous package" option.

* 'dak process-new' should have an option to skip (un-)reviewed packages

* 'dak process-new' should have an option to skip older versions of an upload

* 'dak process-new' doesn't do the right thing with -2 and -1 uploads,
  as you can end up with the .orig.tar.gz not in the pool or belonging
  to a wrong suite.

* 'dak process-new' doesn't trap signals from 'dak examine-package' properly

* 'dak queue-report' should footnote the actual notes, and also * the
  versions with notes so we can see new versions since being noted...

* <neuro> the orig was in NEW, the changes that caused it to be NEW
  were pulled out in -2, and we end up with no orig in the archive :(

Override handling
-----------------

* 'dak check-overrides' should remove the src-only override when a
   binary+source override exists

* override checks sucks; it needs to track changes made by the
   maintainer and pass them onto ftpmaster instead of warning the maintainer.

* Fix component handling in overrides

Cruft
-----

* 'dak cruft-report' could do with overrides

* cruft-report could spot "half-dropped" binaries. Like if a package
  used to build A and B, but B is no longer built for half the
  architectures.

* cruft-report's NVIU check doesn't catch cases where source package
   changed name, should check binaries too. [debian-devel@l.d.o,
   2004-02-03]

* 'dak cruft-report' doesn't look at debian-installer but should.
