summaryrefslogtreecommitdiff
path: root/TODO
blob: 082b5c338433eb03f0bde873b5c6e738134ebfe6 (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
4.5 and beyond
--------------
Janitorial work:
- clean up old junk like workarounds of -95 era (g)libc bugs etc
- use glib/glibc (string manipulation, memory handling etc) facilities instead 
  of internal versions from -95 era 
- audit and clean up user visible strings
- clean up the build process (auto*-stuff, compiler warnings)
- audit int_32 vs uint_32 etc sanity in the interfaces
- have "make check" do something useful (use James' test-harness?)
- use mkstemp() instead of mktemp() everywhere
- refactor those 800+ line monster functions into something more digestable
- review, update included README, INSTALL etc docs
- uninternationalize RPMMESS_DEBUG strings to ease translator work
- macroize hardcoded directories like docDirs 
- get rid of static "1024 entries is enough for everybody" buffers

General:
- bdb related improvements like add stale lock detection etc

API:
- proper separation of exported and private headers to clean up the API
- package verification API (instead of just printing out letters)
- proper package build API (python)
- proper separation of rpm-cli and lib functionality
- eliminate need for headerGetEntry() where it makes sense (eg changelogs)

Build:
- grammar for specfiles, rpm macros 
- support adding dep handlers per file type/class/extension without patching rpm

Python:
- audit error handling in bindings (eg ts.addInstall() does not report back
  failures from rpmtsAddInstallElement())
- see if rpmdb can be made to look like pep-0249