summaryrefslogtreecommitdiff
path: root/TODO
blob: bebf43dfd997e0896270f11fa7f6ad96d6a79fd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
libdpkg:
* cut compat.c into little pieces and move them to optlib
* modify database to store per-file flags
* store checksums and stat data in per-file flags

optlib:
* add fnmatch, IRIX5 doesn't have it

start-stop-daemon
* write pidfile before we chroot?
* capabilities support
* don't close FD's
* add autoconf test for TIOCNOTTY

dpkg
* integrate debconf (add new status)
* allow external program to specify how to handle conffiles
* log our actions
* try to remove directories again after removing conffiles
* verify Enhances works (ie don't trigger some assertion)
* refactor processarc.c
* add test to see if a file should really be installed and optionally
  skip it
* dpkg --reconfigure <pkg> <pkg>
    <pkg>.postinst reconfigure <ver>
    Fail if pkg is not in the configured state.
* dpkg --call-maint-script=<script> --maint-script-arg=<arg>
  --maint-script-arg=<arg> <pkg> <pkg>
    dpkg will not allow <script> to be one of {pre,post}{inst,rm}.  Only
    unknown scripts can be called this way.  dpkg will also not keep track
    of any state for these scripts.

Fix:
<joeyh_> package a conflicted with old versions of package b. package b
      conficted with old versions of package a. I had the old versions of both
      installed, and told dpkg to install the new versions of a and b
      simulantaneously. It refused.

dselect:
* support Enhances

dpkg-source
* update format to handle multiple patches and tarballs

------------------------------------------------------------------------------

Old TODO entries from IWJ:

Here are some currently-known inadequacies:

urgent
 * Conflicts << installation ordering
 * Version numbers in pre-depends stuff
 * Search for all pre-depends things at once, bomb out if any not found
 * _always_ show section in --yet-to-unpack
 * automatically do --yet-to-unpack in installation methods
 * check depending packages when installing new version.
 * error handling from some dselect actions. 1399
 * Several things ought to be configurable but aren't.
 * Filenames containing newlines.  Conffile names containing spaces.
 * dpkg --status for virtual packages
 * logging, both transcript logs (kept briefly)
   and action logs (kept forever?)  957
 * start-stop-daemon process status check. 1480
 * openpgp signatures in the package archive

other stuff unlikely to get done soon
 * Purge a.out compatibility from source (keep the upgrade stuff in
   place).
 * Automatically remove <file>.gz if <file> can't be found ? and maybe,
   remove <file> if <file.gz> can't be found? Big mess when we start
   thinking about bz2 :/
 * Local version number (using non-numeric epoch, perhaps, or better yet,
   a --local option in dpkg, so that it marks this package as a local install
   (when running dpkg -i)? Keeps it from being listed as obsolete, and maybe
   from being considered for auto-upgrades (apt-get needs to know about this
   too)
 * Filename field generated by --record-avail 
 * handle split packages somehow.
 * understand Replaces in dselect
 * provide way for package to declare ownership of files for dpkg -S
   and -L without having dpkg act on this (.psuedolist?)
 * diversions list as control archive entry
 * single maintainer script, and new package getting there first
 * dpkg -s show something for virtual packages
 * settable defaults for update-rc.d
 * local conffiles, aswell as local files that dpkg should check before
   overwriting
 * hooks
 * There is no documentation. 1526
 * newbie interface to dselect. 1037
 * dselect per-half focus and keybindings improvements. 1555
 * floppy map (where are the files)
 * how to change case of package names
 * support for adding files to dpkg's file lists
 * `fake' or `null' packages
 * dpkg --query | -Q

done
 * highlight or pre-sort or something new or changed packages,
   during upgrade selection.
 * side-by-side version display
 * version number comparison option
 * Pre-Depends installation ordering
 * a.out version
 * uncomment ELF preinst modification
 * Replaces (auto-deselect for conflicts)
 * Replaces (don't overwrite otherwise)
 * compile with ELF GCC out of the box
 * dpkg --print-architecture
 * Architecture field check
 * symlink rename change
 * dpkg --listfiles should do better for multi-package files  (pkg, pkg: ...)
 * --purge remove empty directories which used too contain conffiles
 * conffiles handling options, including `replace removed files'
 * `diff' option at conffile prompt
 * check description in dpkg-deb
 * update-alternatives prompting.

obsoleted so not done
 * version numbers not starting digit early.
 * dselect bottom window too large, and/or resize
 * md5sum component in new .deb files
 * `template' file giving default selections of dselect.