Commit | Line | Data |
---|---|---|
1479465f GJ |
1 | RoadMap |
2 | ======= | |
3 | ||
4 | <https://wiki.debian.org/Teams/Dpkg/RoadMap> | |
5 | ||
6 | TODO | |
7 | ==== | |
8 | ||
9 | 1.18.x | |
10 | ~~~~~~ | |
11 | ||
12 | * Review this file and remove or update the old entries. | |
13 | ||
14 | * Look for FIXME and XXX items in the source. | |
15 | ||
16 | * Triage as much bugs as possible to get the bug count below 300 ;) and | |
17 | merge as much patches as possible. | |
18 | ||
19 | * Code cleanup / bug fixes: | |
20 | - Get rid of static variables inside functions. | |
21 | - Coalesce hash and checksum functions. | |
22 | - Split modstatdb_rw into mode and flags. | |
23 | - Move fd function out of mlib. | |
24 | - Cleanup status chars -> strings hardcoded mappings all over the place. | |
25 | (Fix tied field enum with its dselect description (pkgdisplay.cc)) | |
26 | - Refactor src/unpack.c. | |
27 | - Split dpkg.h into independent headers. | |
28 | - Do more unused header include removal. | |
29 | - Add needed includes to all header files. | |
30 | - Get rid of useless "unsigned" modifiers. | |
31 | - Use internerr instead of assert, and print more meaningful messages. | |
32 | - Use enums for currently hardcoded literals (replacingfilesandsaid, | |
33 | filetriggers_edited, etc). | |
34 | - Do not use nfmalloc (and friends) for non in-core db memory. | |
35 | - Call nffreeall on exit (need to detangle nfmalloc from non-db first). | |
36 | - Add a size parameter to the buffer API to avoid some useless | |
37 | pipe+fork+copy. | |
38 | - Handle instdir '/' separator consistently. | |
39 | - Check if caching selinux context for second call is possible. | |
40 | - Add missing newlines in --version output. | |
41 | - Handle symlinks in statcmd.c statdb_node_apply(). | |
42 | - Fix dpkg termination on SIGPIPE from status-fd. | |
43 | ||
44 | * libcompat cleanup: | |
45 | - Add fnmatch, IRIX5 doesn't have it. | |
46 | ||
47 | * Man pages: | |
48 | - Add example to dpkg-scanfoo manpages? | |
49 | - Merge synopsis lines in dpkg-triggers. | |
50 | - Check all command vs action. | |
51 | - Check usage of '|' instead of ', '. | |
52 | - Check position of short option before long option. | |
53 | - Fix dpkg man page, refs to dpkg-deb and dpkg-split, etc. | |
54 | - Fix «. ». | |
55 | ||
56 | * L10n: | |
57 | - Check dpkg-divert strings for new and fixable ones. | |
58 | - Standardize translated error messages in the perl code to avoid useless | |
59 | work for translators. | |
60 | - Check https://d-i.alioth.debian.org/spellcheck/level5/index.html | |
61 | ||
62 | * Discuss and implement | |
63 | https://www.hadrons.org/~guillem/debian/docs/origin.proposal | |
64 | ||
65 | * Deprecate --force-not-root flag (remove modstatdb_rw rootneeded flags). | |
66 | ||
67 | * Test and re-enable --command-fd. | |
68 | ||
69 | * Check --no-act for log_action(). | |
70 | ||
71 | * Add non-regression tests for Dpkg::Source::* | |
72 | ||
73 | * Add UTF-8 support to all programs. | |
74 | ||
75 | * Allow packages to register additional files, declare ownership of files for | |
76 | dpkg -S and -L without having dpkg act on this (.psuedolist?). | |
77 | ||
78 | * Make dpkg-checkbuilddeps easier to use by other programs such as pbuilder | |
79 | or sbuild, so that they can start using the new architecture wildcards | |
80 | automatically. | |
81 | - Support for output format. (#214566) | |
82 | ||
83 | * Fix conflicting action -%c, when short is 0. | |
84 | ||
85 | * We should set our own obstack_alloc_failed_handler. | |
86 | ||
87 | ------------------------------------------------------------------------------ | |
88 | ||
89 | Old TODO entries from Scott: | |
90 | ||
91 | start-stop-daemon | |
92 | * capabilities support | |
93 | ||
94 | dpkg | |
95 | * allow external program to specify how to handle conffiles | |
96 | * dpkg --call-maint-script=<script> --maint-script-arg=<arg> | |
97 | --maint-script-arg=<arg> <pkg> <pkg> | |
98 | dpkg will not allow <script> to be one of {pre,post}{inst,rm}. Only | |
99 | unknown scripts can be called this way. dpkg will also not keep track | |
100 | of any state for these scripts. | |
101 | ||
102 | Fix: | |
103 | <joeyh_> package a conflicted with old versions of package b. package b | |
104 | conflicted with old versions of package a. I had the old versions of both | |
105 | installed, and told dpkg to install the new versions of a and b | |
106 | simultaneously. It refused. | |
107 | ||
108 | dselect: | |
109 | * support Enhances | |
110 | ||
111 | ------------------------------------------------------------------------------ | |
112 | ||
113 | Old TODO entries from IWJ: | |
114 | ||
115 | Here are some currently-known inadequacies: | |
116 | ||
117 | urgent | |
118 | * Conflicts << installation ordering | |
119 | * Version numbers in pre-depends stuff | |
120 | * Search for all pre-depends things at once, bomb out if any not found | |
121 | * _always_ show section in --yet-to-unpack | |
122 | * automatically do --yet-to-unpack in installation methods | |
123 | * check depending packages when installing new version. | |
124 | * Several things ought to be configurable but aren't. | |
125 | * Filenames containing newlines. Conffile names containing spaces. | |
126 | * dpkg --status for virtual packages | |
127 | * openpgp signatures in the package archive | |
128 | ||
129 | other stuff unlikely to get done soon | |
130 | * Automatically remove <file>.gz if <file> can't be found ? and maybe, | |
131 | remove <file> if <file.gz> can't be found? Big mess when we start | |
132 | thinking about bz2 :/ | |
133 | * Local version number (using non-numeric epoch, perhaps, or better yet, | |
134 | a --local option in dpkg, so that it marks this package as a local install | |
135 | (when running dpkg -i)? Keeps it from being listed as obsolete, and maybe | |
136 | from being considered for auto-upgrades (apt-get needs to know about this | |
137 | too) | |
138 | * Filename field generated by --record-avail | |
139 | * understand Replaces in dselect | |
140 | * diversions list as control archive entry | |
141 | * single maintainer script, and new package getting there first | |
142 | * local conffiles, as well as local files that dpkg should check before | |
143 | overwriting | |
144 | * dselect per-half focus and keybindings improvements. | |
145 | !missing bug report #1555! | |
146 | ||
147 | * floppy map (where are the files) | |
148 | * how to change case of package names | |
149 | * 'fake' or 'null' packages | |
150 | * dpkg --query | -Q |