RPM Package Manager, CVS Repository
http://rpm5.org/cvs/
____________________________________________________________________________
Server: rpm5.org Name: Ralf S. Engelschall
Root: /v/rpm/cvs Email: rse@rpm5.org
Module: rpm Date: 05-Jan-2008 11:05:30
Branch: rpm-5_0 Handle: 2008010510053000
Modified files: (Branch: rpm-5_0)
rpm TODO
Log:
on this branch we (by definition) have no pending TODO items today...
Summary:
Revision Changes Path
1.118.2.1 +1 -155 rpm/TODO
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: rpm/TODO
============================================================================
$ cvs diff -u -r1.118 -r1.118.2.1 TODO
--- rpm/TODO 5 Jan 2008 09:33:46 -0000 1.118
+++ rpm/TODO 5 Jan 2008 10:05:30 -0000 1.118.2.1
@@ -5,41 +5,7 @@
RELEASE ENGINEERING ROADMAP
---------------------------
- This is the current RPM 5.0 release engineering roadmap:
-
- 1. weekly Alpha releases in November 2007:
- - APIs: still changing, no guarantees at all for stability
- - code: still acceptable to be at least partly broken
- - audience: early adopters in RPM community only
- - purpose: to get initial feedback
-
- 2007-11-10 RPM 5.0a1 RPM 5.0 alpha 1 [DONE]
- 2007-11-19 RPM 5.0a2 RPM 5.0 alpha 2 [DONE]
- 2007-11-24 RPM 5.0a3 RPM 5.0 alpha 3 [DONE]
- 2007-12-02 RPM 5.0a4 RPM 5.0 alpha 4 [DONE]
-
- 2. weekly Beta releases in December 2007:
- - APIs: mostly fixed, nearly a guarantee to be stable
- - code: already stable, but perhaps still some subtle bugs
- - audience: RPM community, especially distro vendors
- - purpose: to get final feedback
-
- 2007-12-09 RPM 5.0b1 RPM 5.0 beta 1 [DONE]
- 2007-12-15 RPM 5.0b2 RPM 5.0 beta 2 [DONE]
- 2007-12-22 RPM 5.0b3 RPM 5.0 beta 3 [DONE]
- 2007-12-30 RPM 5.0b4 RPM 5.0 beta 4 [DONE]
-
- 3. release in January 2008:
- - APIs: fully fixed, guaranteed to be kept stable
- - code: stable, no more bugs known bugs left
- - audience: RPM community as a whole
- - purpose: provide RPM 5.0
-
- 2007-01-05 RPM 5.0.0 RPM 5.0 patchlevel 0 [TODO]
- 2007-01-05 press release [TODO]
- 2007-01-05 CVS HEAD is branched into RPM 5.0.x [TODO]
- 2007-01-05 CVS HEAD now becomes base of RPM 5.1.DEVEL [TODO]
- ...
+ <none>
KNOWN PENDING ISSUES
--------------------
@@ -48,123 +14,3 @@
resolved during release engineering. Please do not just list any
*CANDO* items.
- RPM 5.1 ROADMAP ISSUES
- ----------------------
- - jbj: make a complete pass through rpm.org check-ins and make sure they
- have exactly zero "features" that are not already in rpm-5.0. With
- full attribution of course ...
- - jbj: fix openssl RSA signature verification.
- - jbj: finish Requires: sanitycheck(N) = E:V-R runtime probe.
- - jbj: finish BuildRequires: vcheck(N) = E:V-R runtime probe.
- - jbj: write up added featlets/bugtures in %docdir notes.
- - jbj: handle SourceN: foo-V-R.src.rpm unpacking.
- - jbj: fix (or at least document) the /sbin/ldconfig optimization flaw.
- - jbj: finish --trust with --import (or punt to 5.1).
- - jbj: add build script templates for install scriptlets (or punt to 5.1).
- - jbj: change RPM_I18NSTRING_TYPE wiring to use arbitrary tag.
- - jbj: markReplacedFiles() subtly rewrites header back into rpmdb
- with altered RPMTAG_FILESTATES data. get/del/add sequence
- is needed instead.
- - jbj: VSFlags (and --nodigest/--nosignature) is now global rather than
- persistently per-transaction. That means its no longer possible to
- have two transactions, one which verifies signatures while the other
- does not. Per-transaction VSFlags never made much sense imho, but
- some may care. Establishing a end-user, not a per-application or
- per-transaction, package integrity/security policy is the only
- rational end-point.
- - jbj: there's a buildroot compatibility issue that needs to be addressed
- in (at least) doco. The problem is common to rpm-4_5 and HEAD.
- Issue at
- http://qa.mandriva.com/show_bug.cgi?id=34705
- - jbj: Heh, --import has *always* used the wrong data type for
- Summary/Description/Group. The header that carries the pubkey
- lacks RPMTAG_ARCH/RPMTAG_OS as well. Re-importing all pubkeys is
- one solution, but perhaps a "just works" slam-dunk hack is needed
- during --rebuildb, or with header extensions. When this issue is
- resolved, then rpm can/should use implicit, rather than explicit, data
- types for tag data.
- - jbj: add libTomCrypt signature verification.
- - jbj: add per-implementation crypto hashes.
- - jbj: add per-implementation symmetric ciphers.
- - jbj: permit per-file encryption with password caching through keyutils.
- - jbj: generalize the Leopard XAR format to ar (as in *.deb), tar, and cpio.
- - afb: add read-only support for 070707 cpio so we can piggy-back on pkg
- - jbj: eliminate the oddball *.src.rpm paths, nuke rpmInstallSourcePackage.
- - jbj: VPATH-like generalization to fold-in splitted-source-directory patch.
- - jbj: add per file RPMTAG_ENTROPY a la Shannon to start making the choice
- of compression scheme computible.
- - jbj: explicitly compute sums of header and package sizes to help
- distro maintainers understand their cdrom/dvd and memory footprint
- needs.
- - jbj: split rpmtsRun() into 2 pieces, moving the file resolution
- computation into its own method.
- - jbj: redesign the bleeping callback, which is good for nothing but pushing
- script kiddie progress bars across the screen.
- - jbj: arbitrary "%foo -p /bar" scriptlets as pair'ed RPMTAG_{FOO,FOOPROG}.
- - jbj: arbitrary triggers, like scriptlets, but with a condition check too.
- - jbj: the hash *ahem* algorithm at rpmdb/fprint.c:186 fpHashFunction() is
- pathetic. FYI, the fingerprint hash is in the top 10 pigs when
- profiling rpm installs, so better has immediate performance benefits.
- rpmio/lookup3.c is possibly better. The other important usage case
- is restructuring the multi-level add package "provides" lookup in
- lib/rpmal.c (but that likely needs to be thrown into a Berkeley DB
- table to minimize memory footprint).
- - jbj: using qsort to insure that nearly sorted lists of join keys in
- an rpmdb remain sorted is stoopid: quicksort on nearly sorted lists
- is slower than alternative implementations like mergesort.
- - jbj: eliminate internal --initdb (useless) and --verifydb (peculier
- to Berkeley DB and adequately/equivalently achievable with db_verify).
- - jbj: NSS has many memory leaks that are not free'd by NSS_Shutdown().
- - jbj: this leak needs fixing somewhen:
-==3436== 12 bytes in 1 blocks are definitely lost in loss record 3 of 9
-==3436== at 0x4805525: malloc (vg_replace_malloc.c:149)
-==3436== by 0x4934365: argvSplit (argv.c:207)
-==3436== by 0x48F89F9: tagLoadATags (tagname.c:31)
-==3436== by 0x48F969E: _tagValue (tagname.c:361)
-==3436== by 0x48F9805: tagValue (tagname.c:403)
-==3436== by 0x48878F9: rpmdsSysinfo (rpmds.c:1600)
-==3436== by 0x48A5BDE: rpmtsCreate (rpmts.c:1302)
-==3436== by 0x3EFA: main (rpmqv.c:540)
- - jbj: eliminate %patch-as-macro-in-C implementation.
- - jbj: convert unused syntax (like Disttag:/Repotag:/Cvsid:) to arbitrary tags
- - jbj: convert %prep/%build/%install/%check/%clean to arbitrary srpm tags.
- - jbj: use devtool.sh as a model for an arbitrary state machine that
- runs arbitrary scripts in deterministic order, checking error codes.
- Rewrite rpmbuild.c accordingly.
- - jbj: hmmm, arbitrary Foo: (except for Class:) ends up in binary *.rpm's,
- while %foo (like %track) ends up in *.src.rpm's. I'll pretend that's
- a feature until a means to more precisely specify arbitrary tag
- copying into binary/source rpm's is devised.
- - jbj: rpm --help using popt-1.13 with non-utf8 needs some work.
- POPT_fprintf using iconv(3) is the common element so far.
- - jbj: MacPorts is going to universal binaries (the Mac OS X equivalent
- of multilib) with a "fat" arch in *.rpm packages. Better can be done,
- including insturmenting running lipo(1) automagically during install.
- - jbj: build/build.c doScript() was a crack-soaked proof-of-concept build
- system script invoker with macro templates that I threw together on
- a Saturday afternoon in November, 1999. Noone has ever bothered to
- rewrite the goop sadly, far better could and should be done.
- - jbj: users continually expect the ability to create "noarch" subpkgs even
- though rpm has only a single build (and arch is a constant for that build).
- Permitting noarch subpkgs is no more complicated than applying an
- explict sanity check that, indeed, the subpkg contents are "noarch".
- - jbj: both --yaml and --xml are in need of QA regression tests.
- 2 of 1300 packages fail to YAML load correctly. One of the
- failure cases was irregular white space in %description,
- the other case involved RPM_I18NSTRING_TYPE.
- - jbj: XOR operator needed, such that Requires: LSB ^ !LSB has valid
- truth table
- - jbj: RFE: capture arbitrary 'defines' from the ENV, and the invocation
- command line, each to end up in binary *.rpm's to show more of build
- time options
- - jbj: rewrite pgpReadPkts to return array of clearsign'd segments instead.
- - jbj: teach argvSplit about escaped seperator characters.
- - jasonc: spec file parser: one cannot represent a "odd" file path in a
- Provides such as:
- Provides: /path/with spaces/and,commas/foo.bar
- currently because both spaces and commas can be used to indicate
- multiple provides entries (Mac OS X is great at finding these types of
- "problems")
- - rse: XAR 1.5.2 doesn't build under Solaris 10 as <fts.h> and the
- BSD4.4 fts(3) API is completely missing there.
-
@@ .
Received on Sat Jan 5 11:05:30 2008