RPM Community Forums

Mailing List Message of <rpm-cvs>

[CVS] RPM: rpm-5_0: rpm/ TODO

From: Ralf S. Engelschall <rse@rpm5.org>
Date: Sat 05 Jan 2008 - 11:05:30 CET
Message-Id: <20080105100530.5E4DB34845E@rpm5.org>
  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
Driven by Jeff Johnson and the RPM project team.
Hosted by OpenPKG and Ralf S. Engelschall.
Powered by FreeBSD and OpenPKG.