mirror of
https://github.com/moparisthebest/pacman
synced 2024-11-04 16:45:07 -05:00
120 lines
4.9 KiB
Plaintext
120 lines
4.9 KiB
Plaintext
TODO.dan
|
|
========
|
|
|
|
This is my personal TODO list. No guarantees if it is out of date and things no
|
|
longer apply. If you want to help out with any of it, send me an email.
|
|
|
|
Documentation- look into moving man page format to a more portable source
|
|
format to make translation easier to keep up-to-date (something like txt2tags,
|
|
docbook, asciidoc) This will need some research.
|
|
|
|
Port the libdownload (libfetch) manpage from BSD style to Linux style, or at
|
|
very least change references to BSD.
|
|
|
|
Pacman 3.1:
|
|
===========
|
|
|
|
Updated cache cleaning functionality in pacman - keep installed version, choose
|
|
number to keep, etc. Good python script in the forums that we should try to
|
|
emulate, perhaps.
|
|
|
|
Downgrade feature - allow users to see cached packages and downgrade to
|
|
(previous or any?) available options.
|
|
|
|
Extreme similarity between some of the sync and add code...we have to be able
|
|
to abstract more away from sync actions and add actions to just 'actions'
|
|
(example: sync,c, add.c, and deptest.c all contain a switch on PM_DEP_MOD_*).
|
|
Merge update, add, and sync code when possible, so we reduce duplication.
|
|
|
|
Review progress /transaction event subsystem. (from TODO)
|
|
|
|
Add Doxygen comments to every function in libalpm including private functions.
|
|
Ensure functions are doing exactly their purpose and nothing more. Find
|
|
functions that perform duplicate behavior and merge them. Combine and refactor
|
|
others. Delete unnecessary functions. Stop keeping everything clustered in
|
|
little add/sync/remove parts, allow transactions to share code.
|
|
|
|
Go through options list. Decide if namings are good, all options are still
|
|
relevant, etc. Ideas for -Re (#6273), changing meaning of -c (has two meanings,
|
|
another FS bug), etc. Remove the -A flag and possibly -D, -T, and -Y (-Y is
|
|
killed now in favor of vercmp binary) if they can be done by other actions.
|
|
Possible switch of -U --> -I (#5571).
|
|
|
|
Rewrite _alpm_sortbydeps to use Topological Sort. Should work using a standard
|
|
topo sort algorithm, once the crazy types can be fixed up a bit. Include a
|
|
cycle check - print a big error message if this happens.
|
|
-- http://en.wikipedia.org/wiki/Topological_sort
|
|
-- http://everything2.com/?node_id=556079
|
|
|
|
Review display and logging functions. There seems to be an abundance of them.
|
|
Make it extensible to use color, review what verbose/debug means. Perhaps
|
|
separate logging functionality- Pacman has its normal log, and alpm backend
|
|
keeps a very simple log file - listing only adds (including syncs) and removes.
|
|
This way a consistency list can be kept of what is currently installed and what
|
|
isn't, without all the logging junk from the front end.
|
|
|
|
If we stick with autotools, add more defines to configure.in, including
|
|
CACHEDIR, PKGEXT, so these can be specified at configure time for ease of use
|
|
by other distributions which may want to change the defaults. Also, review what
|
|
needs to be in config.h and what does not. There may be excess #depends which
|
|
are hard coded into the sources. (from TODO.autoconf)
|
|
|
|
Profile the code. Find the functions that are being called a lot, and see what
|
|
can be done about it. Find out if all these calls are necessary (e.g. excessive
|
|
alpm_list_count calls), and maybe think about changing data structures to speed
|
|
operations up (e.g. a 'count' field). NOTE: already found two huge issues with
|
|
quick profiling- excessive setlocale calls, and extremely excessive strcmp
|
|
calls.
|
|
|
|
Localize the date display done in --info output. Also, fix other localized
|
|
issues- use non-printf when necessary, make sure all two line printed messages
|
|
(especially usage instructions) are printed using one print statement.
|
|
|
|
Rewrite makepkg to use terminal-safe coloring/bolding. tput utility should
|
|
allow us to do this.
|
|
|
|
Other ideas:
|
|
============
|
|
|
|
unsigned int vs. unsigned- determine a standard and stick with it
|
|
|
|
Possibly split utilities/extras from pacman package
|
|
|
|
FS #4185 - move where message is logged, perhaps?
|
|
|
|
ideas mentioned here- http://bbs.archlinux.org/viewtopic.php?id=29450- add a
|
|
.install message about mirrors, maybe comment whole file, encourage rankmirrors
|
|
usage
|
|
|
|
Update copyrights (2007)
|
|
|
|
Update pacman website, and add/finish pacman coding style page
|
|
|
|
Make .indent.pro file for GNU indent (started, but didn't finish)
|
|
|
|
Pacman 3 packaging - perhaps include pacman2.static in case something goes
|
|
terribly wrong, which I hope it won't
|
|
|
|
autogen.sh / autoclean.sh - these seem messy. Can we clean this up?
|
|
|
|
Refine makepkg error codes. Each kind of failure could have its own code:
|
|
--package already built
|
|
--failed integ checks
|
|
--failed build
|
|
--etc.
|
|
|
|
Add utility function to either frontend or backend to convert sizes: e.g. bytes
|
|
to KB, MB, GB.
|
|
|
|
Revamp the downloadprog function a bit. Seems kind of messy.
|
|
|
|
Add localized pkgdesc variables to makepkg.
|
|
|
|
Fix inconsistency of args- _alpm_db_read, _alpm_db_write
|
|
|
|
--print-uri option to sync should not require saying yes or no to up to date
|
|
|
|
Resurrect test scripts, and add ones as needed. Testing by scripts > testing by
|
|
hand.
|
|
|