TODO 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. ROADMAP
  2. =======
  3. lenny
  4. ~~~~~
  5. * Review this file and remove or update the old entries.
  6. * Triage as much bugs as possible to get the bug count below 300 ;) and
  7. merge as much patches as possible.
  8. * Remove Conflicts on dpkg-dev exact versions before the release.
  9. 1.14.x
  10. ------
  11. * Make dpkg bootstrappable.
  12. 1.14.y
  13. ------
  14. * Code cleanup:
  15. - blankfoo embedded code.
  16. - static variables inside functions.
  17. - Coalesce admindir / infodir / foodir generation.
  18. - Get rid of setjmp (at least in the general case, keep for dpkg itself?)
  19. - Coalesce hash and checksum functions.
  20. - Move parseerr arguments into a struct.
  21. - Move fd and block function out of mlib.
  22. - Cleanup status chars -> strings hardcoded mappings all over the place.
  23. (Fix tied field enum with its dselect description (pkgdisplay.cc))
  24. - Refactor src/processarc.c.
  25. - Make sure all vsnprintf callers are checking the return value, as the
  26. system version will not ohsite on us.
  27. * Cleanup libcompat:
  28. - Add fnmatch, IRIX5 doesn't have it.
  29. - Cut lib/compat.c into little pieces and move them here.
  30. * Add Wig&Pen source package generation support.
  31. * Get rid of install-info.
  32. * Add multiarch support.
  33. * Merge debconf support (add new status).
  34. - dpkg --reconfigure <pkg> <pkg>
  35. <pkg>.postinst reconfigure <ver>
  36. Fail if pkg is not in the configured state.
  37. - Merge dpkg-reconfigure.
  38. * Merge dpkg-cross functionality.
  39. * Merge dpkg-sig?
  40. * Start exposing libdpkg.
  41. - Split dpkg.h into dpkg-priv.h.
  42. - Add needed includes to all header files.
  43. * Add example to dpkg-scanfoo manpages?
  44. * The cleverer conffile support bug fixed.
  45. * Add UTF-8 support to all programs.
  46. * Modify database to store per-file flags.
  47. - Store checksums and stat data in per-file flags.
  48. - Add md5sums and/or sha1sums package support. (#155676)
  49. * Allow packages to register additional files, declare ownership of files for
  50. dpkg -S and -L without having dpkg act on this (.psuedolist?).
  51. * Some kind of test-suite (Esteban).
  52. * Make dpkg-checkbuilddeps easier to use by other programs such as pbuilder
  53. or sbuild, so that they can start using the new architecture wildcards
  54. automatically.
  55. - New command line arguments to retrieve Build-Depends. (#114774)
  56. - Support for output format. (#214566)
  57. * Remove conffile background support? (#38334)
  58. * Make dpkg-deb --build check for duped conffiles. (#131633)
  59. * Make update-alternatives --display support --quiet. (#336091)
  60. * Propagate --admindir to programs run from maintainer scritpts. (#97076)
  61. * Fix quotes? <http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html>
  62. TODO
  63. ====
  64. Old TODO entries from Scott:
  65. start-stop-daemon
  66. * capabilities support
  67. * don't close FD's
  68. dpkg
  69. * allow external program to specify how to handle conffiles
  70. * try to remove directories again after removing conffiles
  71. * verify Enhances works (ie don't trigger some assertion)
  72. * add test to see if a file should really be installed and optionally
  73. skip it
  74. * dpkg --call-maint-script=<script> --maint-script-arg=<arg>
  75. --maint-script-arg=<arg> <pkg> <pkg>
  76. dpkg will not allow <script> to be one of {pre,post}{inst,rm}. Only
  77. unknown scripts can be called this way. dpkg will also not keep track
  78. of any state for these scripts.
  79. Fix:
  80. <joeyh_> package a conflicted with old versions of package b. package b
  81. conficted with old versions of package a. I had the old versions of both
  82. installed, and told dpkg to install the new versions of a and b
  83. simulantaneously. It refused.
  84. dselect:
  85. * support Enhances
  86. ------------------------------------------------------------------------------
  87. Old TODO entries from IWJ:
  88. Here are some currently-known inadequacies:
  89. urgent
  90. * Conflicts << installation ordering
  91. * Version numbers in pre-depends stuff
  92. * Search for all pre-depends things at once, bomb out if any not found
  93. * _always_ show section in --yet-to-unpack
  94. * automatically do --yet-to-unpack in installation methods
  95. * check depending packages when installing new version.
  96. * Several things ought to be configurable but aren't.
  97. * Filenames containing newlines. Conffile names containing spaces.
  98. * dpkg --status for virtual packages
  99. * openpgp signatures in the package archive
  100. other stuff unlikely to get done soon
  101. * Automatically remove <file>.gz if <file> can't be found ? and maybe,
  102. remove <file> if <file.gz> can't be found? Big mess when we start
  103. thinking about bz2 :/
  104. * Local version number (using non-numeric epoch, perhaps, or better yet,
  105. a --local option in dpkg, so that it marks this package as a local install
  106. (when running dpkg -i)? Keeps it from being listed as obsolete, and maybe
  107. from being considered for auto-upgrades (apt-get needs to know about this
  108. too)
  109. * Filename field generated by --record-avail
  110. * handle split packages somehow.
  111. * understand Replaces in dselect
  112. * diversions list as control archive entry
  113. * single maintainer script, and new package getting there first
  114. * local conffiles, aswell as local files that dpkg should check before
  115. overwriting
  116. * hooks
  117. * dselect per-half focus and keybindings improvements.
  118. !missing bug report #1555!
  119. * floppy map (where are the files)
  120. * how to change case of package names
  121. * support for adding files to dpkg's file lists
  122. * `fake' or `null' packages
  123. * dpkg --query | -Q