rpm/TODO

43 lines
1.6 KiB
Plaintext

Work-in-progress
----------------
- fix the argv const-impedance all around
- unleash the const monsters from rpmdb/header* and deal with 'em
- audit the rest of the API for const sanity
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
- 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)
- provide compat headers for renamed APIs and structures
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