blob: 9b815a78349bc1fb52dd40a0bbc734406d19cbb1 (
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
|
== This is my custom TODO file ==
* Make sure all the alpm_list_t changes are valid (especially alpm_list_free)
* src/pacman:
- There's quite a few single function headers which contain the pacman_*
functions. We should move these to a single header (pacman.h) to clean up
the source a bit.
* lib/libalpm:
- move logging (alpm_logaction) out of the library. log files should be
written by the app, not the library. Adding a PM_LOG_* constant that
frontends can recognize and send to a file is probably a good idea.
- clear up list allocation/deallocation - some lists need to be free'd, some
do not and there is no clear indication WHEN this should happen.
- remove DB entries (directories) on a read error?
* pacman: A LOT of functions are way too long. There should be an upper limit of
100-200 lines. _alpm_add_commit is around 600 lines, and is far too complex.
Quite a lot of this needs to be refactored as we go.
Function list (from Dan McGee):
add.c:
_alpm_add_commit
be_files.c:
_alpm_db_read
_alpm_db_write
conflict.c:
_alpm_checkconflicts
_alpm_db_find_conflicts
package.c:
_alpm_pkg_load (getting a bit long)
remove.c:
_alpm_remove_commit
server.c:
_alpm_downloadfiles_forreal
sync.c:
_alpm_sync_sysupgrade (getting there)
_alpm_sync_prepare
_alpm_sync_commit
* pacman: fixup doxygen documentation for public interface
**** BUGS ****
* Removal of conflicts on -A and -U (INCOMPLETE)
* gensync: get all info from packages instead of PKGBUILDs
for now, we only need to check the PKGBUILD in case of a
'force' option
* pacman: add pactest cases/functionality for all -Q operations and make sure
the output is sane
|