root/releases/pkgcore/0.1/dev-notes/TODO.rst @ ferringb%2540gentoo.org-20060930172405-253d7bdb19cb0878

Revision ferringb%2540gentoo.org-20060930172405-253d7bdb19cb0878, 4.2 KB (checked in by Brian Harring <ferringb@…>, 2 years ago)

release notes, good README, pmaint note.

Line 
1==========
2Rough TODO
3==========
4
5- pmaint (sync, quickpkging/non-merge pkg transfering, cache transfering)
6
7- install-sources trigger
8
9- collision-protect trigger
10
11- recreate verify-rdepends also
12
13- sandbox and fakeroot don't work right now (doesn't properly disable)
14
15- sync subsystem.
16  Threw out the old refactoring, too portage specific; exists in
17  sandbox/dead_code , design sucked also.
18
19- observer objects for reporting back events from merging/unmerging
20  cpython 'tee' is needed, contact harring for details.
21  elog is bound to this also
22
23- Possibly convert to cpython:
24
25  - flat_hash.database._parse_data
26  - metadata.database._parse_data
27  - posixpath (os.path)
28
29- Rework digest api to allow running checksums in parallel.
30  Meaning: don't load the file three times for applying three checksums.
31  Need to work out how to do this with fchksum and the "size" checksum.
32
33- pkgcore.fetchable.__init__: __eq__/__hash__
34
35- get the tree clean of direct /var/db/pkg access
36
37- vdb2 format (ask harring for details).
38
39- verify proper temporal handling of rdep blockers when a pkg gets dumped
40  from the graph (namely, boot the block).
41
42- pkgcore.fs.ops.merge_contents; doesn't rewite the contents set when a file
43  it's mergeing is relying on symlinked directories for the full path; eg,
44  /usr/share/X11/xkb/compiled -> /var/blah, it records the former instead of
45  recording the true absolute path.
46
47- pmerge exit code; ambiguousquery doesn't seem to result in ret != 0
48
49- pmerge mods; [ --skip-set SET ] , [ --skip atom ], use similar restriction
50  to --replace to prefer vdb for matching atoms
51
52- info regeneration trigger
53
54- refactor pkgcore.ebuild.cpv.ver_cmp usage to avoid full cpv parsing when
55  _cpv is in use;
56  'nuff said, look in pkgcore.ebuild.cpv.cpy_ver_cmp
57
58- finish off trigger registration
59
60  Right now it's hardcoded in merge.engine; this sucks, need to convert the
61  gentoo specific triggers over to being registered on the fly via
62  domain/configuration.
63 
64- testing of fakeroot integration
65
66  it was working back in the ebd branch days; things have changed since then
67  (heavily), enabling/disabling should work fine, but will need to take a look
68  at the contentset generation to ensure perms/gid leaks through correctly.
69
70- modify repository.prototype.tree.match to take an optional comparison
71
72  reasoning being that if we're just going to do a max, pass in the max so it
73  has the option of doing the initial sorting without passing through
74  visibility filters (which will trigger metadata lookups)
75
76- pkgcore.config.central features
77
78  These may or may not be picked off as development continues; the main
79  requirement for this functionality is plugins, which the framework
80  intends... so... prior to a release, it will be added.
81
82  - needs method to do lookups of further object restrictions/section_ref/etc
83    from a common dir, based on name.  this one requires some thought;
84    essentially, if loading portage-mysql.cache, try 1, or try this opt,
85    look in a dir the plugins ebuild can install a section conf tweak, and
86    use it.
87  - configuration 'types' , list, bool, str, etc, should be extendable, lifted
88    from a config most likely.  Defaults should be avail in code, but should
89    have a method of extending it
90  - integration of make.globals type data; defaults effectively, but a bit
91    more complex.
92
93- 'app bundles'.  Reliant on serious overhauling of deps to do 'locked deps',
94  but think of it as rpath based app stacks, a full apache stack compiled to
95  run from /opt/blah for example.
96
97- pkgcore.ebuild.gpgtree
98
99  derivative of pkgcore.ebuild.ebuild_repository, this overloads
100  ebuild_factory and eclass_cache so that gpg checks are done.
101  This requires some hackery, partially dependant on config.central changes
102  (see above).  Need a way to specify the trust ring to use, 'severity' level
103  (different class targets works for me).
104  Anyone who implements this deserves massive cookies.
105
106- pkgcore.ebuild.gpgprofile:
107  Same as above.
108
109- pkgcore.fetch.bundled_lib:
110  clean this beast up.
111
112- IPV6 handling:
113  bug 37124 # syncing
114  check over BINHOST code replacement for any code that resolve to a specific
115  IP
116
117- locking unification.  see plugins for an example of why it's needed
Note: See TracBrowser for help on using the browser.