summaryrefslogtreecommitdiff
path: root/CHANGES
diff options
context:
space:
mode:
authorKim Kibum <kb0929.kim@samsung.com>2012-05-21 17:49:08 +0900
committerKim Kibum <kb0929.kim@samsung.com>2012-05-21 17:49:08 +0900
commitdec48cfa66e17ba4a7e50c92cb24b913289feb12 (patch)
treee1f48cd5cabb40a1d604b36949ff072d01267cb5 /CHANGES
parentb7a3bffb8e0341b7e4ef69def268bca3a7f279ff (diff)
downloadrpm-dec48cfa66e17ba4a7e50c92cb24b913289feb12.tar.gz
rpm-dec48cfa66e17ba4a7e50c92cb24b913289feb12.tar.bz2
rpm-dec48cfa66e17ba4a7e50c92cb24b913289feb12.zip
Upload Tizen:Base source
Diffstat (limited to 'CHANGES')
-rw-r--r--CHANGES2927
1 files changed, 2927 insertions, 0 deletions
diff --git a/CHANGES b/CHANGES
new file mode 100644
index 0000000..d6365c1
--- /dev/null
+++ b/CHANGES
@@ -0,0 +1,2927 @@
+4.4.2 -> 4.4.2.1:
+ - remove internal sqlite, zlib, gettext
+ - remove obsolete utilities
+ - remove vendor gpg keys
+ - fix spec parenthesis parsing
+ - allow building without neon
+ - disable hkp lookup by default
+ - re-enable file-conflicts detection (rhbz#151609)
+ - fix potential segfault in available file provides checking
+ - fix Requires(pre,postun) (rh#155700)
+ - fix db build wrt newer CFLAGS
+ - fix popt CHARSET for various languages (rhbz#172155)
+ - fix install size calculation with excludes in manifest (rhbz#89661)
+ - use full path in the rpm cronjob (rhbz#174211)
+ - filter out incorrect perl(main) provides (rhbz#177960)
+ - fix scriptlet deadlock (rhbz#146549)
+ - fix netshared path comparison (rhbz#52725)
+ - make fcntl lock sensitive to --root (rhbz#151255)
+ - fix rpmvercomp for strings with trailing null segments (rhbz#178798)
+ - fix doxygen generation (rhbz#187714)
+ - fix potential segfault if no rpmlock_path defined (rhbz#231146)
+ - fix for thinko in debugedit on ppc
+ - fix debugedit wrt OOo
+ - fix debugedit with ../../ in paths
+ - fix various other issues in debugedit (rhbz#205339)
+ - allow customisable diff and use -p by default (rhbz#146981)
+ - handle fork failure
+ - fix a typo causing compiler warning (susebz#178055)
+ - fix a %{buildsubdir} typo/thinko
+ - fix uncompress waitpid logic to shut up the compiler (susebz#160434)
+ - add support for %{_docdir} macro (rhbz#125514)
+ - fix segfault on rpmbuild with empty file list
+ - allow --ignoresize for erase operations
+ - don't attempt to execute empty transaction (susebz#43267)
+ - don't segfault if Fileno() is called with NULL
+ - abort build if cwd not determinable
+ - fix --noghost query option (rhbz#103207)
+ - fix off-by-one error in glob
+ - check rpmtsInitDB() return value
+ - build internal Lua without readline support
+ - make rpmdbSync obey the no_dbsync flag
+ - fix package verification for packages with header+payload RSA but
+ no header-only RSA
+ - drop any s-bits early when deleting files (susebz#50376, rhbz#125517)
+ - fix handling of old packages that use HEADERIMAGE
+ - catch disk-space errors when writing signed packages
+ - fix default verify flags for %doc (rhbz#235353)
+ - fix debugedit for relative paths (rhbz#232222)
+ - add configurable preferable elf colour policy (rhbz#235757)
+ - python: always treat changelog as list
+ - use older perl helper scripts by default
+ - add mono req/provides support
+ - remove SELinux context verification (rhbz#193488)
+ - fix building without Lua support
+ - fix --rebuilddb with --root option
+ - fix --setperms and --setugids with uninstalled packages
+ - don't run pre- and posttrans scripts in test mode
+ - dbmatch keys can be unicode objects also (rhbz#219008)
+ - gendiff: let diff arguments be specified in the environment
+ - gendiff: emit diff headers (rhbz#237561)
+ - improved error messages in verification of unreadable files
+ - python: raise exception if tsAdd fails
+ - check for supported package payload format (rhbz#140052)
+ - fail build if beecrypt headers not found
+ - build: check unpackaged files even if other errors are present
+ - restore SIGILL handler in machine detection code
+ - add --dupes popt alias for detecting duplicate packages in rpmdb
+ - fix typo in check-prereq (rhbz#203182)
+ - python: fix rpm.te Key() refcount (rhbz#182063)
+ - python: always treat fileverifyflags as list
+ - disable strict aliasing if compiler supports it (type-punning warns)
+ - add zh_TW translation
+ - add support for srcdefattr macro (susebz#48870, rhbz#125515)
+ - detect python 2.5 automatically in configure
+ - python: reference counting for match-iterators (rhbz#241751)
+ - updated fi translation
+ - fix format string errors in de translation
+ - allow characters > 127 that don't fit the current locale in spec
+ - treat null epoch equal to zero epoch in freshen (rhbz#143301)
+ - python: treat null epoch equal to zero labelCompare (rhbz#227860)
+ - permit installing multiple package versions with -i (rhbz#213399)
+ - fix <name>.<arch> query output for non-installed package (rhbz#124016)
+ - updated pl translation
+ - don't read packages with non-verifiable signatures (rhbz#239557)
+ - don't try to open non-existent file twice in query
+ - flush query format buffer before listing files (rhbz#212833)
+ - check all header strings to resize buffer (rhbz#212833)
+ - don't segfault on a header without RPMTAG_NAME (rhbz#239557)
+ - fix file status for replaced files (rhbz#237478)
+ - make %_signature default to gpg instead of none
+ - don't skip directories in fingerprinting (rhbz#140055, 223639, ...)
+ - remove vendor, release specific dependency whitouts
+ - remove upstream spec files for rpm and popt
+ - don't open temporary databases in rpmdbOpenAll()
+ - open non-temporary db's before chroot (rhbz#103952, 173285)
+ - don't treat provides as implicit obsoletes (rhbz#111071, ...)
+ - fix CVE-2007-1536, CVE-2007-2799 in internal libmagic
+ - support specifying fuzz factor to %patch (rhbz#243720)
+ - enable ordering on erase mode
+ - transaction ordering fixes (rhbz#196590, 202540, 202542, ...)
+ - added IPv4/6 and EPSV support
+ - remove hardcoded /var/log/lastlog kludgery
+ - don't mmap large files (rhbz#139539, 177616)
+ - detect and provide a requirement for DT_GNU_HASH
+ - ARM architecture update
+ - update popt version for clean upgradability
+ - remove hardcoded libtermcap vs bash kludge
+ - updated Russian man pages (rhbz#185620)
+ - fix a sparse warning in popt.h (rhbz#202005)
+ - disable broken "make check" tests
+ - treat /usr/share/gtk-doc/html/ as a docdir
+ - plug some minor memory leaks
+ - use --wildcards with tar for compatibility with tar >= 1.15.91
+ - fix segfault on errors if neon transport is used (rhbz#220392)
+ - new buildroot sanity checker scripts check-buildroot and check-rpaths
+ - new debugedit option for recomputing build ID
+
+4.4.1 -> 4.4.2:
+ - start 4.4.2 devel.
+ - sqlite3: revert cClose scoping, data is freed in cClose unlike db4.
+ - build against sqlite3-3.1.2.
+ - sqlite3: update encode/decode from sqlite-2.8.16.
+ - add --xml popt alias for query modes.
+ - remove _rpmdb now that python2.[34] are commonly available.
+ - remove remnant -I/opt/local hacks, --prefix=/usr is recommended.
+ - rework configure.ac et al to lose internal library baggage flexibly.
+ - updated sv.po <goeran@uddrborg.se>.
+ - permit gpg to be used for RSA signatures.
+ - permit RSA key sizes larger than 1024 bits.
+ - permit RSA/{sha1,sha256,sha384,sha512} signature verification.
+ - updated de.po (#162756).
+ - added CVSId: tag and SVNId: alias (#162807).
+ - added brp-java-gcjcompile build helper.
+ - fix: java compiled with -O0 confuses debugedit (#161722).
+ - fix: % at end-of-line overflow (#161091).
+ - *_terminate_build macros set per-pkg, not per-invocation (#161081).
+ - use perldeps.pl, phase out perl.{req,prov} (#161921).
+ - fix: make sqlite3 rpmdb endian-neutral (#159425).
+ - fix: permit sqlite3 rpmdb with chroot (#159424).
+ - fix: find-debuginfo.sh not handling set[ug]id ELF files (#100963).
+ - fix: find-debuginfo.sh kernel voo-doo tweaks (#159346).
+ - fix: initialize variables used in debug msg (#160458).
+ - permit zlib in rpm to be built with make -j (#159404).
+ - avoid '?' for zero length file mmap failure doing md5 (#159405).
+ - permit scriptlet includes from builddir for spec files w/o %setup.
+ - upgrade to zlib-1.2.2.4 internal.
+ - macosx: avoid minigzip build failures.
+ - upgrade to file-4.14 internal.
+ - fix: magic_file() closes stdin when given directory path.
+ - use perldeps.pl, phase out perl.{req,prov} (again).
+ - document __vsflags (#147489).
+ - release rpm-4.4.2.
+
+4.4 -> 4.4.1:
+ - force *.py->*.pyo byte code compilation with brp-python-bytecompile.
+ - automagically detect and emit "python(abi) = 2.4" dependencies.
+ - popt 1.10.1 to preserve newer.
+ - use package color as Obsoletes: color.
+ - upgrade to db-4.3.27.
+ - revert MAGIC_COMPRESS, real fix is in libmagic (#143782).
+ - upgrade to file-4.12 internal.
+ - mac os x patches (#131943,#131944,#132924,#132926).
+ - mac os x patches (#133611, #133612, #134637).
+ - build against external/internal neon.
+ - add https://svn.uhulinux.hu/packages/dev/zlib/patches/02-rsync.patch
+ - changes to build on Mac OS X using darwinports neon/beecrypt.
+ - blueprint rpm-4_4 and HEAD to minimize diff spew.
+ - add missing #if defined(ENABLE_NLS) (#146184).
+ - python: force dbMatch() h# key to be 32 bit integer (#146477).
+ - add sqlite internal (build still expects external sqlite3-3.0.8).
+ - sqlite: revert to original narrow scoping of cOpen/cClose.
+ - fix: length of gpg V4 hash seed was incorrect (#146896).
+ - add support for V4 rfc-2440 signatures.
+ - sqlite3: run-time endian test rather than chasing <endian.h> (#146752).
+ - discover and use getmntinfo if present.
+ - perform callbacks as always (#147537).
+ - permit build scriptlet interpreters to be individually overridden.
+ - zlib: uniqify certain symbols to prevent name space pollution.
+ - macosx: include <sys/types.h> so that python sees the u_char typedef.
+ - macosx: change to --prefix=/usr rather than /opt/local.
+ - use waitpid rather than SIGCHLD reaper.
+ - rip out DB_PRIVATE revert if not NPTL, it's not the right thing to do.
+ - don't classify files in /dev (#146623).
+ - don't build with sqlite3 if <sqlite3.h> is missing.
+
+4.3.3 -> 4.4:
+ - pentium3/pentium4 arch support (pluto@PLD).
+ - cpuid() cleanups for PIC/non-PIC and gcc 3.4 (pluto@PLD).
+ - rpmGlob() is now locale independent (wiget@PLD).
+ - conditional build support/unification (jajcus,malekith,qboosh,wiget@PLD).
+ - fix: readelf.c breakage on some non x86 arches (qboosh@PLD).
+ - find-lang.sh: implemented --with-kde (finds KDE help files);
+ - add --all-name option (finds every lang file); drop defattr()
+ from *.lang files (arekm,mkochano,pascalek,wiget@PLD).
+ - add type to tag array.
+ - add Disttag: syntax to spec file parser and header content.
+ - define Suggests:/Enhances: and Priority: tag values.
+ - prevent RPMSENSE_PREREQ from being set or tested.
+ - python: add rpm.ps() object to carry problem set info.
+ - python: permit rpm.ds() analogue to hdr.dsFromHeader() creator.
+ - python: permit rpm.fi() analogue to hdr.fiFromHeader() creator.
+ - silently add default %defattr(-,root,root) for all packages.
+ - fix: don't set handler if SIG_IGN is already set (#134474).
+ - disable expensive header+payload verifies in default config.
+ - adjust digest/signature stats to count #pkgs and bytes.
+ - obsolete Serial:, Copyright:, and RHNPlatform: syntax in spec files.
+ - permit Obsoletes: /path/to/file.
+ - permit Conflicts: /path/to/file.
+ - free rpmrc when looping on --target arches (#127730).
+ - fix: handle non-unique dirnames in rpmalAdd().
+ - integrate rpmgi "generic iterator" with query/verify.
+ - bump popt version to 1.10.
+ - attempt dependency tree breadth, take 1.
+ - use external libneon for http/https transport.
+ - add --delsign to purge packages of digital signatures.
+ - neon used by default for http/https transport.
+ - upgrade to db-4.3.21 final internal.
+ - remove noNeon runtime switch, http through neon only.
+ - remove http put to be able to build against upstream neon.
+ - bump soname into libfoo-4.4.so everywhere.
+ - sparcv8: optflags changed to -mtune=ultrasparc (#140420).
+ - add BuildRequires: neon-devel.
+ - fix: chunked davRead returns 0 is EOF.
+ - python: bleeping keywords broke labelCompare.
+ - add support for automagic pubkey retrieval using HKP.
+ - detect and return errors from neon through Ferror.
+ - use package color as Obsoletes: color.
+
+4.3.2 -> 4.3.3:
+ - bump micro version.
+ - make peace with libtool-1.5.10 and automake-1.9.3.
+ - python: add python 2.4 support.
+ - selinux: use rpm_execcon, not execv, to run scriptlets (#136848).
+ - fix: segfault on --verifydb (#138589).
+ - sparcv8: optflags changed to -mtune=ultrasparc (#140420).
+ - port to internal file-4.10 libmagic rather than libfmagic.
+ - move global /var/lock/rpm/transaction to dbpath.
+ - permit fcntl path to be configured through rpmlock_path macro.
+
+4.3.1 -> 4.3.2:
+ - use /etc/selinux/targeted/contexts/files/file_contexts for now.
+ - disable file contexts into package metadata during build.
+ - fix: "/path/foo.../bar" was losing a dot (#123844).
+ - lua embedded in rpmio.
+ - use lua to identify desired selinux file context regexes.
+ - add 'requires' and 'conflicts' tag aliases.
+ - python: return ds, not tuple, for ds iteration.
+ - python: permit integer keys to ts.dbMatch().
+ - xml: use <foo/> markup for empty tags.
+ - xml: <integer/> instead of <integer>0</integer> markup.
+ - fix: disable fingerprint generation on kernel paths.
+ - add ppc8[25]60 arches.
+ - fix: evaluate rather than default file_contexts path. (#127501).
+ - avoid "can't happen" recursion while retrieving pubkeys.
+ - add ppc32dy4 arch.
+ - make peace with automake 1.9.1.
+ - fix: defattr for rpm-libs (#130461).
+ - print dependency loops as warning iff --anaconda is specified.
+ - fix: mark uninstalled elf32 files in rpmdb to disable -Va checks.
+ - ia64: add autorelocate_dcolor to macros.in.
+ - disable static linking until libc*.a provides symbols.
+ - fix: revert Obsoletes: "fix" (#134497).
+ - fix: work around for dangling symlinks not globbed (#134362).
+ - display caught signals to diagnose #134474 (gonna be SIGPIPE).
+ - display N-V-R.A in dependency failure messages.
+ - selinux: set "rpm_script_t" always, not just for /bin/sh.
+ - honor inherited SIG_IGN when establishing rpmdb signal exit (#134474).
+ - don't add time stamp to compressed man pages (#132526).
+ - python: remove ".A" from creaky ts.check() tuple return (#135008).
+ - python: fix RPMPROB_BADRELOCATE segfault return in ts.check (#137116).
+ - revert selinux patch until fc3 release.
+ - reprise file conflicts yet again, flip/flop/flip/flop ...
+ - fix: buffer overrun displaying ko_KR (#135389).
+
+4.3 -> 4.3.1:
+ - fix: don't add leading space to %* argv expansion (#119059).
+ - scareMem = 0 everywhere, document deprecation phase out.
+ - fix: add u+w to FIXPERMS.
+ - add buildtime to rpmds, methods to retrieve.
+ - python: hide labelCompare() underneath ds.cmp(a,b).
+ - fix: segfault on --recontext if file_contexts unreadable (#117374).
+ - fix: /etc/security/selinux/file_contexts is default path.
+ - fix: no transaction lock if --test was specified (#119783).
+ - perl: skip new-fangled head[34] while generating deps (#118243).
+ - perl: use __perl for perl variable macros (#115156).
+ - make peace with libtool-1.5.6.
+ - fix: follow current is_selinux_enabled() return (#121004).
+ ? fix: exit fail when erasing multiple identical packages (#120519).
+ - add aurora/sparc patches (#124469).
+ - use poll(2) if available, avoid borked aurora/sparc select (#124574).
+
+4.2.3 -> 4.3:
+ - upgrade to zlib-1.2.beta7.
+ - fix: short option help missing string terminator.
+ - permit secondary tag match patterns with RPMQV_ALL.
+ - fix: cut-n-paste error setting nopromote for Conflicts: (#81965).
+ - don't use error string after gzclose (Dmitry V. Levin).
+ - only internal Berkeley db from now on.
+ - revive "make dist".
+ - fix: added index size wrong iff _transaction_color != 0/3 (#103865).
+ - fix: escape '+' in regex patterns through RPMMIRE_DEFAULT (#103851).
+ - RPMMIRE_DEFAULT is overkill, use RPMMIRE_STRCMP instead (#103851).
+ - don't use mktemp if mkstemp is available (#103850).
+ - python: return None for NEVRAO, [] for everything else.
+ - python: throw exception on bad arg to labelCompare (#113661).
+ - re-add --enable-posixmutexes to build.
+ - fix: set fcontext from pkg when file_contexts doesn't exist (#114040).
+ - fix: set fcontext for "mkdir -p" directories not in packages.
+ - fix: setfiles (aka rpmsx.c) dinna handle patterns correctly.
+ - establish rpm_script_t before scriptlet exec.
+ - python: add patch to rpm-4_3 to initialize RE contexts.
+ - fix: only first "mkdir -p" directory had context set.
+ - stable sort for policy specifications, patterns before paths.
+ - set "rpm_script_t" exec type for scriptlets iff /bin/sh, else default.
+ - force FD_CLOEXEC on 1st 100 inherited fdno's.
+ - serialize rpmtsRun() using fcntl on /var/lock/rpm/transaction.
+ - permit globs in macrofiles: directive (#117217).
+ - fix: segfault generating transaction serialization lock path.
+ - use /etc/security/selinux/file_contexts instead.
+ - selinux: ignore ENOTSUP return from lsetfilecon.
+ - add sparcv8 and enable elf32/elf64 Zon sparc64 (#117302).
+ - fix: --querybynumber looped.
+ - fix: ENOTSUP filter from lsetfilecon borkage.
+ - fix: increase file context regex parse buffer to BUFSIZ.
+ - fix: handle elf64 note sections correctly.
+ - fix: grrr, skip notes on non-i386 entirely.
+ - endian neutral rpmdb join keys (finally).
+ - fix: dev package build on s390x hack around.
+
+4.2.2 -> 4.2.3:
+ - bump rpm and popt versions to insure "newer".
+ - change default behavior to resolve file conflicts as LIFO.
+ - add --fileconflicts to recover rpm traditional behavior.
+ - prefer elf64 over elf32 files, everywhere and always (#126853).
+ - ia64: auto-relocate entire, not partial, directory contents (#126905).
+ - ia64: auto-relocate glibc.ix86 interpreter path (#100563).
+ - shared libraries in separate rpm-libs package.
+ - fix: defattr for rpm-libs (#130461).
+ - fix: static glibc/libgcc helpers always installed (#127522).
+ - ia64: make sure that autorelocated file dependencies are satisfied.
+ - ia64: relocate all scriptlet interpreters.
+ - ia64: don't bother trying to preload autorelocated modules.
+ - fix: filesystem package needs mail/lock w/o getgrnam.
+ - fix: do getpwnam/getgrnam to load correct modules before chroot.
+
+4.2.1 -> 4.2.2:
+ - unify signal handling in librpmio, use condvar to deliver signal.
+ - make peace with libtool-1.5, autoconf-2.59, automake-1.8.
+ - build with db-4.2.52 internal.
+ - refresh bsddb.
+ - detect (and remove) dbenv files while upgrading to db-4.2.52.
+ - ensure that librpmdb links against just built, not system, librpmio.
+ - fix: dangling pointer brain fart (#107835).
+ - fix: ds.Single() method needs malloc'd elements (#109919).
+ - convert ja and ko man pages to utf8 (#106050).
+ - man page corrections (#106415).
+ - perl.req typo (#106672).
+ - fix: wrong package count for trigger scriptlet 1st arg (#100509).
+ - fix: don't break header SHA1 if non-existent user/group (#97727).
+ - remove fuids/fgids from rpmfi, easier to lookup fuser/fgroup instead.
+ - merge sensible parts of openpkg rpm.patch.bugfix (#104780).
+ - mark _javadocdir as documentation (#102898).
+ - flush pipe before exit 1 in check-files (#103867).
+ - perl.req: avoid regex misfire on '^use' in "= <<" assign (#109934).
+ - find-debuginfo.sh: permit stripping unwritable by non-root (#112429).
+ - missing build dependency (#111104).
+ - spelling corrections (#112728).
+ - use -fPIC -DPIC on all platforms, not just mandatory (#112713).
+ - popt: pad to display length, not strlen, for i18n popt args (#106240).
+ - python: include Python.h before glibc features.h.
+ - python: return [], not None, accessing header tags (#112794).
+ - python: avoid invoking python to acquire ill-specified parameters.
+ - add ia32e arch.
+ - fix: sq->reaped needs sighold(SIGCHLD)/sigrelease(SIGCHLD) (#117620).
+
+4.2 -> 4.2.1:
+ - fix: nested %if handling, optind initialization posix vs. glibc.
+ - add version check for package with provides and obsoletes.
+ - hack out O_DIRECT support in db4 for now.
+ - build with external beecrypt-3.0.0.
+ - x86_64 -> athlon, ppc64[ip]series -> ppc64 arch compatibility.
+ - treat missing epoch's exactly the same as Epoch: 0.
+ - pass structure pointer, not args, through headerSprintf call chain.
+ - add ":xml" header format modifier.
+ - --queryformat '[%%{*:xml}\n]' to dump header content in XML.
+ - add ".arch" suffix to erase colored packages with identical NEVR.
+ - update ja man pages (#92261).
+ - backport rpmsw stopwatch, insturment rpmts operations.
+ ? toy method to enable --stats through bindings.
+ - fdCLose typo (#97257).
+ - brp-python-bytecompile to automagically bytecode compile python.
+ ? update for fr.po (#97829).
+ - don't attempt to remove dbenv on --rebuilddb.
+ - autorelocate ix86 package file paths on ia64.
+ - resurrect manifests, RPMRC_NOTFOUND returned by readLead().
+ - python: missed tuple refcount in IDTXload/IDTXglob.
+ - fix: IDTXglob should return REMOVETID sorted headers (#89857).
+ - resolve elf32/elf64 file conflicts to prefer elf64.
+ - apply debugedit patch necessary to produce kernel -debuginfo files.
+ ? ia64: autorelocate only colored, not every, file when installing.
+ ? repair find-debuginfo.sh to avoid recursing in /usr/lib/debug.
+ ? fix: ia64: don't attempt autorelocate on .src.rpm's.
+ ? fix: debuginfo: -not -path /usr/lib/debug needed -prune too.
+ ? fix: packages w/o file colors segfault.
+ ? add amd64 as alias for x86_64 (#99553).
+ ? fix: add -n to brp-compress to avoid needless file conflicts.
+ ? fix: ia32 on ia64 segfaults because of automagic file relocations.
+ ? speed up convertdb1 (#103206).
+ ? revert i18n table change to preserve help array size.
+ ? add config directories for ppc64pseries/ppc64iseries.
+ ? filter GLIBC_PRIVATE dependencies.
+ - fix: check added provides against installed conflicts (#110317).
+ - changes for python 2.3
+ - changes for libtool-1.5
+ - changes for automake-1.7.8
+ - changes for db-4.2.42.
+ - splint fiddles.
+
+4.1 -> 4.2:
+ - set cachesize without a dbenv, the default is far too small.
+ - db: don't return EACCES on db->close w/o environment.
+ - unify cachesize configuration, with (or without) a dbenv.
+ - comments regarding unsupported (yet) db-4.1.17 functionality.
+ - update to db-4.1.24 final.
+ - eliminate myftw, use Fts(3) instead.
+ - dump libelf, gulp elfutils, for now.
+ - python: permit headers to be hashed.
+ - use %%{_lib} for libraries.
+ - include file-3.39 (with homebrewed) libfmagic, for now.
+ - add debug sub-package patch.
+ - re-add elfutils/libdwarf (for dwarf.h), eliminate tools/dwarf2.h.
+ - resurrect genhdlist "greased lightning" pathway for now.
+ - elfutils: avoid gcc-3.2 ICE on x86_64 for now.
+ - add /usr/lib/rpm/rpmdeps.
+ - add /usr/lib/rpm/magic.
+ - fix: /dev/initctl has not MD5 segfault (#76718).
+ - rpm.8: gpg uses GNUPGHOME, not GPGPATH (#76691).
+ - add error message on glob failure (#76012).
+ - add _javadir/_javadocdir/_javaclasspath macros.
+ - fix: bash must have functional libtermcap.so.2.
+ - update to elfutils-0.56.
+ - have debug sub-subpackage use external, not internal, elfutils.
+ - apply patches 1-6 to db-4.1.24.
+ - resurrect availablePackages one more time.
+ - fix: option conflict error message (#77373).
+ - add AC_SYS_LARGFILE throughout.
+ - statically link rpmdeps against (internal) libfmagic.
+ - use rpmdeps rather than find-{requires,provides}.
+ - bundle libfmagic into librpmbuild for now.
+ - apply patches 7 and 8 to db-4.1.24.
+ - upgrade to elfutils-0.59.
+ - add -g to all platforms optflags.
+ - build with external elfutils (preferred), if available.
+ - upgrade to elfutils-0.63.
+ - link rpm libraries together, use shared helpers with external -lelf.
+ - move libfmagic to librpmio.
+ - use libtool-1.4.3, autoconf-2.56.
+ - add explicit -L/lib64 -L/usr/lib64 for libtool mode=relink on x86_64.
+ - use usrlib_LTLIBRARIES to install directly in /usr/lib64 instead.
+ - late rpmts reference causes premature free (#78862).
+ - internal automagic dependency generation (disabled for now).
+ - don't generate dependencies unless execute bit is set.
+ - enable internal automagic dependency generation as default.
+ - fix: add rpmlib(VersionedDependencies) if versioned Provides: found.
+ - fix: add %%ifnarch noarch to debug_package macro.
+ - debug_packages "works", but non-noarch w/o %setup has empty payload.
+ - make dependency generation "opt-in" in order to build in distro.
+ - fix: make sure each library has DT_NEEDED for all unresolved syms.
+ - generate Elf provides even if file is not executable.
+ - disable fcntl(2) lock on Packages until glibc+nptl is fixed.
+ - make cdb locks "private" for pthreads compatibility w/o NPTL.
+ - add --enable-posixmutexes to use NPTL.
+ - make dependency generation "opt-out" everywhere.
+ - rebuild against glibc with fcntl fixed in libpthread.
+ - re-enable CDB locking, removing "private" from %%__dbi_cdb macro.
+ - popt aliases for -U et al to achieve dynamic link with nptl.
+ - add --file{class,provide,require} popt aliases and header extensions.
+ - statically link against /usr/lib/nptl/libpthread.a, if present.
+ - remove popt aliases for -U et al.
+ - add -I/usr/include/nptl, Conflicts: kernel < 2.4.20.
+ - dynamically link /bin/rpm, link against good old -lpthread.
+ - test pthread_{mutex,cond}attr_setpshared(), add DB_ENV_PRIVATE if not.
+ - error on exclusive Packages fcntl lock if DB_ENV_PRIVATE is set.
+ - copy compressFilelist to convertdb1.c, remove internal legacy.h.
+ - add --enable-posixmutexes when configuring on linux.
+ - add rpmdb_{deadlock,dump,load,svc,stat,verify} utilities.
+ - include srpm pkgid in binary headers (#71460).
+ - add %check scriptlet to run after %install (#64137).
+ - simplify specfile query linkage loop.
+ - drill rpmts into parseSpec(), carrying Spec along.
+ - fix: remove rpmfi scareMem so that headers can be reloaded on ia64.
+ - fix: set DB_PRIVATE, not DB_ENV_PRIVATE, if unshared posix mutexes.
+ - remove useless kernel/glibc dependencies (#79872).
+ - add matching "config(N) = EVR" dependencies iff %%config is found.
+ - add %%pubkey attribute to read armored pubkey files into header.
+ - permit both relative/absolute paths, display 'P' when verifying.
+ - resurrect automagic perl(foo) dependency generation.
+ - add BETA-GPG-KEY (but not in headers using %%pubkey yet).
+ - disable perl module magic rule.
+ - ignore ENOENT return from db->close (#80514,#79314).
+ - fix builddir relative inclusion, add %%pubkeys to rpm header.
+ - fix: package relocations were broken (#75057).
+ - error if querying with iterator on different sized arrays.
+ - add rpmfi methods to access color, class, and dependencies.
+ - don't segfault with packages produced by rpm-2.93 (#80618).
+ - python: eliminate hash.[ch] and upgrade.[ch], methods too.
+ - fix :armor query extension, tgpg mktmp handling (#80684).
+ - use rpmfiFClass() underneath --fileclass.
+ - use rpmfiFDepends() underneath --fileprovide and --filerequire.
+ - python: add fi.FColor() and fi.FClass() methods.
+ - calculate dependency color and refernces.
+ - python: add ds.Color() and ds.Refs() methods.
+ - fix: typo in assertion.
+ - add rpmts/rpmte/rpmfi/rpmds element colors.
+ - ignore items not in our rainbow (i.e. colors are functional).
+ - fix: dependency helpers now rate limited at 10ms, not 1s.
+ - add per-arch canonical color, only x86_64 enabled for now.
+ - file: avoid ogg/vorbis file classification problems.
+ - portabilitly: solaris fixes.
+ - for DSO's, provide the file basename if DT_SONAME not found.
+ - add perldeps.pl, start to replace perl.{prov,req}.
+ - file: read elf64 notes correctly.
+ - python: put rpmmodule.so where python expects to find.
+ - add brp-strip-static-archive build root policy helper.
+ - add -lelf to rpm LDFLAGS, not LDADD, since there is no libelf.la now.
+ - fix: obscure corner case(s) with rpmvercmp (#50977).
+ - file: *really* read elf64 notes correctly.
+ - python: restore thread context on errorCB (#80744).
+ - teach rpmquery to return "owning" package(s) in spite of alternatives.
+ - duplicate package checks with arch/os checks if colored.
+ - file conflict checks with colors.
+ - fix: debugedit.c problem.
+ - permit anaconda to choose "presentation order".
+ - fix: more debugedit.c problems.
+ - fix: clean relocation path for --prefix=/.
+ - python: permit stdout/stderr to be remapped to install.log.
+ - pay attention to package color when upgrading identical packages.
+ - fix: trap SIGPIPE, close database(s).
+ - configurable default query output format.
+ - popt: diddle doxygen/splint annotations, corrected doco.
+ - file: fix ogg/vorbis file classification problems.
+ - skip fingerprints in /usr/share/doc and /usr/src/debug.
+ - add file(1) as /usr/lib/rpm/rpmfile.
+ - enable transaction coloring for s390x/ppc64.
+ - file: check size read from elf header (#85297).
+ - fix: memory leak (85522).
+ - build with internal elfutils if not installed.
+
+4.0.4 -> 4.1:
+ - loosely wire beecrypt library into rpm.
+ - drop rpmio/base64.[ch] in favor of beecrypt.
+ - drop lib/md5*.[ch] files in favor of beecrypt.
+ - legacy: drop brokenMD5 support (rpm-2.3.3 to rpm-2.3.8 on sparc).
+ - eliminate DYING code.
+ - bind beecrypt md5/sha1 underneath rpmio.
+ - create RFC-2440 OpenPGP API in rpmio.
+ - proof-of-concept GPG/DSA verification for legacy signatures.
+ - upgrade to beecrypt-2.2.0pre.
+ - proof-of-concept PGP/RSA verification for legacy signatures.
+ - ratchet up to lclint "strict" level.
+ - upgrade to db-4.0.7.
+ - use only header methods, routines are now static.
+ - beecrypt is at least as good as pgp/gpg on verify, pulling the plug.
+ - add :base64 and :armor format extensions, dump binary tags in hex.
+ - proof-of-concept pubkey retrieval from RPM-{PGP,GPG}-KEY.
+ - stupid macros to configure public key file paths.
+ - all symbols but hdrVec are now forward references in linkage.
+ - generate an rpm header on the fly for imported pubkeys.
+ - wire transactions through rpmcli signature modes.
+ - wire transactions through rpmcli query/verify modes.
+ - wire transactions through rpmcli install/erase modes.
+ - legacy signatures always checked (where possible) on package read.
+ - wire transactions through rpmcli build modes.
+ - lazy rpmdb open/close through transaction methods (mostly anyways).
+ - no-brainer refcounts for rpmdb object.
+ - check added header against transaction set, replace if newer.
+ - transaction sets created in cli main.
+ - no-brainer refcounts for ts object.
+ - memory indices for dependency check are typedef'd and abstract'd.
+ - no-brainer refcounts for fi object, debug the mess.
+ - dump the header early in transaction, recreate fi before installing.
+ - start hiding availablePackage data/methods in rpmal.c/rpmal.h.
+ - add some dinky availablePackage methods.
+ - transaction.c: cleanly uncouple availablePackage from TFI_t.
+ - add header refcount annotations throughout.
+ - depends.c: availablePackage is (almost) opaque.
+ - invent some toy transactionElement iterators.
+ - create rpmDepSet constructors/destructors.
+ - create toy rpmDepSet iterators.
+ - rpmRangesOverlap renamed to dsCompare, add dsNotify method as well.
+ - depends.c: rpmDepSet is (almost) opaque, move to rpmds.[ch].
+ - rpmds: create dsProblem(), dsiGetDNEVR() retrieved DNEVR, not N.
+ - depends.h: hack around teIterator() et al from include for now.
+ - rpmds: move trigger dependencies into a rpmDepSet as well.
+ - rpmal: availablePackage is totally opaque, alKey with index replaces.
+ - linear search on added package provides is dumb.
+ - discarding entire signature header when using --addsign is dumb.
+ - rip out rpmDependencyConflict, replace with rpmProblem instead.
+ - no-brainer refcounts for rpmProblemSet object.
+ - header tag sets are per-transactionElement, not per-availablePackage.
+ - no-brainer refcounts for rpmDepSet and rpmFNSet objects.
+ - strip header tags for erased as well as installed transactionElements.
+ - common structure elements for unification of TFI_t and rpmFNSet.
+ - factor per-transactionElement data out of TFI_t through pointer ref.
+ - unify rpmFNSet into TFI_t.
+ - eliminate header reference in rpmtransAddPackage, use TFI_t data.
+ - commit to using rpmDepSet and TFI_t, not header.
+ - lclint rpmio fiddles.
+ - split file info tag sets into rpmfi.c.
+ - create toy TFI_t iterators.
+ - tweak overlapped file fingerprint retrieval for speed.
+ - transaction.c: use wrappers/iterators to access TFI_t.
+ - annotations to make a transactionElement opaque.
+ - use array of pointers rather than contiguous array for ts->order.
+ - methods to complete making transactionElement opaque.
+ - use TR_REMOVED relations as well as TR_ADDED for ordering.
+ - drop requirement that removed packages immediately follow added.
+ - hybrid chainsaw/presentation ordering algorithm.
+ - convert file md5sum's to binary on the fly, reducing memory footprint.
+ - header handling moved to librpmdb to avoid linkage loops.
+ - fix a couple dinky memory leaks.
+ - build with an internal zlib for now.
+ - protect brp-compress against /bin/ls output ambiguity (#56656,#56336).
+ - 3 madvise calls and a 16Mb mmapped buffer == ~5% install speedup. Wow.
+ - use db-4.0.14 final internally.
+ - 1st crack at making zlib rsync friendly.
+ - lclint-3.0.0.19 fiddles.
+ - simple automake wrapper for zlib.
+ - splint fiddles.
+ - make peace with gcc-3.1, remove compiler cruft.
+ - make peace with automake et al in 8.0, ugh.
+ - add payload uncompressed size to signature to avoid rewriting header.
+ - drill header sha1 into signature parallel to header+payload md5.
+ - mandatory "most effective" signature check on query/verify/install.
+ - don't bother adding empty filemd's to index.
+ - add Pubkey index, using signer id as binary key.
+ - display pubkeys in hex when debugging db access.
+ - retrieve pubkey(s) from rpmdb, not from detached signature file.
+ - add header DSA signature.
+ - add header RSA signature (untested, disabled for now).
+` - don't bother with signing check if 16 bits of hash don't match.
+ - only V3 signatures for now.
+ - wire --nodigest/--nosignature options to checksig/query/verify modes.
+ - splint annotations, signature cleanup.
+ - drill ts/fi through verify mode, add methods to keep fi abstract.
+ - use mmap when calculating file digests on verify, ~20% faster.
+ - permit --dbpath and --root with signature (i.e. --import) modes.
+ - beecrypt: add types.h, eliminate need for config.gnu.h.
+ - rescusitate --rebuild.
+ - use rpmdb-redhat to suggest dependency resolution(s).
+ - merge conflicts into problems, handle as transaction set variable.
+ - use build time to choose one of multiple alternative suggestions.
+ - add --nosuggests to disable suggested resolutions.
+ - attempt to make peace with automake-1.6.1, autoconf-2.53.
+ - rip out two layers of dbN gook, internal Berkeley db is here to stay.
+ - eliminate db1 support.
+ - enable CDB by default.
+ - use DBT_DB_MALLOC to eliminate re-malloc'ing header blobs.
+ - rework most of rpmdb.c prepatory to implementing duplicates.
+ - fix: 2 memory leaks in headerSprintf.
+ - fix: db mire's access out-of-bounds memory.
+ - plug install mode leaks.
+ - opaque (well mostly) rpmTransactionSet using methods.
+ - Grand Renaming of rpm data types.
+ - fix: synthesize unpacking progress callbacks for packages w/o files.
+ - python: add rpmds/rpmfi/rpmts methods.
+ - python: re-enable rpm-python sub-package.
+ - fix: resurrect "()(64bit)" markings using objdump.
+ - python: add rpmal/rpmte/rpmfd methods.
+ - perl: drop cpanflute and cpanflute2, will be in Chip's CPAN package.
+ - python: eliminate legacy db methods, add ts.dbMatch method.
+ - fix: use getgrnam, not getpwnam, to convert gid -> group.
+ - fix: avoid sign extension, use only 16 bits, when verifying rdev.
+ - python: separate {add,del}Macro methods, prepare for macro dictionary.
+ - i18n: copy current production PO files to top-of-stack.
+ - python: include rpmdb module, renamed from bsddb3.
+ - use /etc/rpm/platform (if it exists), rather than uname(2), for arch.
+ - python: portability fiddles (#54350).
+ - check inodes (but not blocks) on FAT file systems (#64256).
+ - add /usr/lib/rpm/redhat/* per-vendor configuration.
+ - remove build mode compatibility aliases, documented and gone.
+ - document digital signature verification in rpm.8.
+ - fix: separate existence and number checks for problems found (#66552).
+ - beecrypt: merge changes from beecrypt-2.3.0.
+ - beecrypt: merge doxygen markup with rpmapi doco.
+ - beecrypt: revert cpu/arch compile option mixup (#66752).
+ - ix86: make sure that rpm can verify prelinked shared libraries.
+ - don't install /usr/lib/rpm/redhat per-vendor configuration anymore.
+ - add translated man pages from PLD.
+ - resurrect libelf with Elf64, prelink verify should work everywhere.
+ - fix: reading macro files can corrupt memory if BUFSIZ is teensy.
+ - fix: assertion failure iff incomplete package install (#66837).
+ - python: link internal libelf (if used) directly into rpmmodule.so.
+ - use rpmdb-redhat for suggestions if/when configured (#67430).
+ - disambiguate failures to import (with error messages, duh).
+ - fix: multiple relocations (#67596).
+ - add --build/--program-prefix, delete libtoolize, from %configure.
+ - find-lang.sh: make sure that mo pattern matches leading '/' (#67368).
+ - disambiguate added/installed dependency failures (#50388).
+ - rescusitate remote ftp globs (#67678).
+ - open rpmdb early RDONLY, reopen later RDWR, avoid signed srpm noise.
+ - turn off annoying gpg secmem warning.
+ - warn only once for each NOKEY/UNTRUSTED key id.
+ - factor common options into table, add rpmcliInit() and rpmcliFini().
+ - add preliminary rpmgraph(8) and rpmcache(8) executables to rpm-devel.
+ - use rpmfi in showQueryPackage(), eliminating headerGetEntry().
+ - fix: forgot lazy open of database on --freshen path (#67907).
+ - proof-of-concept rpmcache functionality.
+ - fix: do lazy open of database in rpmtsInitDB() (#67994).
+ - update rpmcache.8.
+ - fix: permit deletions of added packages (#67108).
+ - placeholders for manifest constants for SuSE patch packages.
+ - fix: repair 2ndary match criteria with rpmdb iterators.
+ - update for sv.po.
+ - display signature details using rpm -qi.
+ - skip signing packages already signed with same key (#62118).
+ - install rpmal.h and rpmhash.h, implicit rpmps.hinclude, for now.
+ - revert headerFree/headerLink/headerUnlink debugging.
+ - popt: mingw32 portability configure check (#67911).
+ - teach gendiff about unreadable files (#42666).
+ - python: sanity check fixes on rpmts/rpmte methods.
+ - have rpmdb-redhat autoconfigure rpm to use %%_solve_dbpath.
+ - popt: parse file into string of options (#56860).
+ - version added to *.la dependency libraries (#69063).
+ - expose digests in rpmio API, but hide internal beecrypt API (#68999).
+ - add methods to make signature handling opaque wrto rpmts.
+ - verify signatures/digests retrieved through rpmdbNextIterator().
+ - imbue %ghost with missingok attribute with --verify (#68933).
+ - fix: segfault if given a text file as 2nd arg to -Uvh (#69508).
+ - python: add ts.hdrCheck(), ts.rebuildDB() methods.
+ - python: iterating on an ts object returns transaction elements now.
+ - add yellowdog as vendor.
+ - python: remove the old initdb/rebuilddb methods, use ts.fooDB().
+ - python: 1st crack at backport to 1.5.2.
+ - popt: fix --usage (#62234).
+ - fix: --repackage repaired (#67217).
+ - fix: rpm2cpio disables signature checks (i.e. same behavior).
+ - popt: display sub-table options only once on --usage.
+ - wire --nosignatures et al as common options, rework CLI options.
+ - python: don't segfault in ts.GetKeys() on erased packages.
+ - update trpm.
+ - factor all mode-specific options into mode-specific tables.
+ - treat an unspecified epoch as Epoch: 0 everywhere.
+ - detect athlon/duron with CMOV (PLD).
+ - prevent stale locks in __db files by closing databases on signals.
+ - make --querytags a common option, fix errant regex (#70135).
+ - db3: increase mpool and cachesize, compile w/o --enable-debug.
+ - configurable (default off) build failure if missing %%doc files (PLD).
+ - configurable (default off) build failure iff unpackaged files (PLD).
+ - change from default off to default on.
+ - python: methods to disable all new features for benchmarking.
+ - preserve rpmdb file attributes across --rebuilddb (#70367).
+ - fix: identify athlon with 3DNOWEXT as "athlon", not "i786" (#70539).
+ - fix: repair --root with --verify (#70527).
+ - fix: signed pubkeys were imported incorrectly (#68291).
+ - include tgpg script to verify signatures using only gpg.
+ - check header blobs on export (i.e. rpmdbAdd()).
+ - enable iterator header blob checks for install/erase modes.
+ - python: _vsflags_up2date macro to configure verify signature flags.
+ - resurrect --rollback.
+ - renumber the callback types to be an orthogonal bit mask.
+ - provide repackage progress callbacks, compression is slow.
+ - fix: don't repackage %%ghost files.
+ - add --predefine to define macros before reading macro configuration.
+ - python: bare bones rollback bindings.
+ - python: enable threads on callbacks and longish rpmlib calls.
+ - python: expose RPMTAG_SOURCEPACKAGE to identify source headers.
+ - python: eliminate rpm.headerFromPackage() tuple return, deprecated.
+ - python: add ts.hdrFromFdno(fdno) method.
+ - fix: check for lead magic, better error message on failure (#69751).
+ - python: the death of rpmdb-py.[ch], use ts.fooDB() methods instead.
+ - python: the death of rpm.headerFromPackage(), use ts.hdrFromFdno().
+ - python: permit direct ts.dbMatch() python iterations.
+ - python: the death of rpm.checksig(), use ts.hdrFromFdno() instead.
+ - add bitmask for precise control of signature/digest verification.
+ - python: bindings to import pubkeys and display openpgp packets.
+ - fix: src.rpm installs need fd pos at payload.
+ - python: add return codes for rollbacks and fooDB methods.
+ - avoid generating fingerprints for locale/zoneinfo sub-directories.
+ - python: add (optional) ts.check() callback.
+ - python: include instance in IDTXload, filename in IDTXglob, return
+ - python: argument to ts.addErase (if integer) deletes that instance.
+ - python: rpmmi methods to return this instance, and number of members.
+ - supply transitive closure for CLI packages from rpmdb-redhat database.
+ - fix: rebuilddb stat'ed target, not source, for rename sanity.
+ - create /var/lib/rpm if non-existent in, say, a chroot.
+ - erased packages are now repackaged into /var/spool/repackage.
+ - fix: rebuilddb stat'ed target, not source, for rename sanity, take 2.
+ - python: explicit method to set transFlags.
+ - python: stuff package name into a string for repackage callbacks.
+ - rollback: re-create empty transaction set for multiple rollbacks.
+ - fix: %%basename typo (Dmitry V. Levin<ldv@altlinux.org>).
+ - fix: queryformat segfaults (Dmitry V. Levin<ldv@altlinux.org>).
+ - add --with-efence to configure, check install/upgrade with efence.
+ - beecrypt: short hex string conversion overflows target buffer.
+ - mark "successors only" packages in transaction.
+ - reap scriptlets with SIGCHLD handler.
+ - rename PSM_t to rpmpsm, add methods and refcounts to manage.
+ - remove %%configure/%%makeinstall from arch-os/macros, default is OK.
+ - don't export MALLOC_CHECK_ to scriptlets.
+ - squeaky clean memory leak checking.
+ - always malloc rpmfi structure, refcounts are correct in rpmtsRun().
+ - skip redundant /sbin/ldconfig scripts on upgrade (if possible).
+ - python: stupid typo broke ts.check().
+ - fix: add epoch to "already installed" check.
+ - check for interrupt during iteration.
+ - python: add ts.setProbFilter() method, remove ts.run() argument.
+ - fix: region trailer offset sanity check wrong (#71996).
+ - fix: don't stop if db1 database is currently in /var/lib/rpm (#72224).
+ - add a macro to create a sub-package with debugging symbols.
+ - merge signature returns into rpmRC.
+ - python: exceptions on NOKEY/NOTTRUSTED.
+ - python: don't remap NOKEY/UNTRUSTED to OK.
+ - beecrypt: change local absolute symbols to defines for prelinking.
+ - update ru.po.
+ - fix: handle NOKEY/NOTTRUSTED returns as if OK, always return header.
+ - portability: carry libelf in src rpm, include signal.h.
+ - fix: segfault with --checksig, plug memory leak (#72455).
+ - rpm-4.1 release candidate.
+ - requirement on libelf >= 0.8.2 to work around incompatible soname (#72792).
+ - fix: common sanity check on headers, prevent segfault (#72590).
+ - limit number of NOKEY/UNTRUSTED keys that will be warned once.
+ - libadd -lelf to rpmdb (#73024).
+ - portability: non-linux is easier, more to do (#72893).
+ - fix: SIGCHLD reaper race (#73134).
+ - fix: don't exit with open cursor, there be a stale lock.
+ - fix: check for signal induced exit more often (#73193).
+ - reinterpret the _unsafe_rollbacks macro as earliest rollback.
+ - fix: always do rpmalMakeIndex.
+ - fix: resurrect --triggers (#73330).
+ - python: typo in NOKEY exception string.
+ - fix: parse pgp packets more carefully.
+ - fix: parse header data more carefully.
+ - fix: register SIGCHLD handler before forking (#73134).
+ - better diagnostics on failed header parsing.
+ - lclint clean.
+ - rpm-4.1 release.
+ - fix: make sure that psm->child pid is set before SIGCHLD is handled.
+ - fix: use size_t consistently, avoid segfault on ia64.
+ - use %%{_lib} for libraries.
+ - fix: permit build with --disable-nls (#76258).
+
+4.0.3 -> 4.0.4:
+ - solaris: translate i86pc to i386 (#57182).
+ - fix: %GNUconfigure breaks with single quotes (#57264).
+ - fix: typo in find-requires.
+ - tru64 compiler message cleanup.
+ - add buildarch lines for hppa (#57728).
+ - sparc: make dbenv per-rpmdb, not per-dbi.
+ - handle lazy db open's in chroot with absolute path, not prefix strip.
+ - Depends should use CDB if configured.
+ - autodetect python 1.5/2.2.
+ - make rpm-perl package self-hosting (#57748).
+ - permit gpg/pgp/pgp5 execs to be reconfigured.
+ - fix: signing multiple times dinna work, discard immutable region.
+ - remove poptmodule.so for separate packaging.
+ - permit subset installs for %lang colored hardlink file sets.
+ - missing key(s) on keyring when verifying a signature is now an error.
+ - remove dependency whiteout.
+ - calculate rpm-4.1 ordering/orientation metrics in rpmdepOrder().
+ - sync popt and rpmio with rpm-4.1, rpmio has OpenPGP API.
+ - sync rpmdb and build with rpm-4.1, lots of splint annotations.
+ - add :armor and :base64 query format qualifiers for binary signatures.
+ - fix: query format qualifiers needed header.c merge.
+ - fix: query format qualifiers needed header.c merge.
+ - ppc64 arch added (#58634,#58636).
+ - turn on auto-generated perl requirements (#58519, #58536, #58537).
+ - fix: %exclude functional (again).
+ - trap SIGILL for ppc64 inline asm voodoo fix from cross-dressed ppc32.
+ - fix: fancy hash fiddles if not a tty.
+ - fix: handle /.../ correctly in rpmCleanPath().
+ - transaction rollback code in rpmRollback().
+ - Red Hat 6.2 portability cruft.
+ - legacy: configurable whiteout for known Red Hat dependency loops.
+ - perl.req: don't mis-generate dependencies like perl(::path/to/foo.pl).
+ - permit args to be hidden within %__find_{requires,provides}.
+ - a couple more perl.{prov,req} fiddles.
+ - macro for %files, always include %defattr(), redhat config only.
+ - fix: drop header region when writing repackaged legacy header.
+ - bail on %files macro.
+ - transaction rollbacks are functional.
+ - generate index for pkgid (aka Sigmd5) tag, query/verify by pkgid.
+ - generate index for hdrid (aka Sha1header) tag, query/verify by hdrid.
+ - generate index for fileid (aka Filemd5s) tag, query/verify by fileid.
+ - query/verify by install transaction id.
+ - rpm-4.0.4 release candidate.
+ - add cpanflute2, another perl.req fiddle.
+ - reapply Berkeley DB patch #4491.
+ - make --addsign and --resign behave exactly the same.
+ - *really* dump signature header immutable region.
+ - speedup large queries by ~50%.
+ - revert to presentation ordering Yet Again (#62158).
+ - non-glibc: on upgrade, mergesort is much faster than quicksort.
+ - fix: queries that evaluated to "" incorrectly returned NULL.
+ - fix: packages produced by rpm-4.0 dinna merge signature tags.
+ - fix: rpmdb iterator memory leak in python bindings.
+ - fix: include <sys/time.h> for 6.2 python modules.
+ - remove vestiges of mipseb arch (#62408).
+
+4.0.2 -> 4.0.3:
+ - update per-interpreter dependency scripts, add sql/tcl (#20295).
+ - fix: rpmvercmp("1.a", "1.") returned -1, not +1 (#21392).
+ - add cpuid asm voodoo to detect athlon processors.
+ - add %exclude support (i.e. "everything but") to %files.
+ (Michael (Micksa) Slade" <micksa@knobbits.org>)
+ - add --with/--without popt glue for conditional builds(Tomasz Kloczko).
+ - python: strip header regions during unload.
+ - add -g to optflags in per-platform config.
+ - permit confgure/compile with db3-3.2.9.
+ - permit manifest files as args to query/verify/install modes.
+ - fix: parameterized macro segfault (Jakub Bogusz <qboosh@pld-linux.org>)
+ - fix: i18n tags in rpm-2.5.x had wrong offset/length (#33478).
+ - fix: AIX has sizeof(uint_16) != sizeof(mode_t) verify cast needed.
+ - fix: zero length hard links unpacked incorrectly (#34211).
+ - fix: --relocate missing trailing slash (#28874,#25876).
+ - fix: --excludedoc shouldn't create empty doc dir (#14531).
+ - fix: %_netsharedpath needs to look at basenames (#26561).
+ - fix: --excludepath was broken (#24434).
+ - fix: s390 (and ppc?) could return CPIOERR_BAD_HEADER (#28645).
+ - fix: Fwrite's are optimized out by aggressive compiler(irix) (#34711).
+ - portability: vsnprintf/snprintf wrappers for those without (#34657).
+ - more info provided by rpmdepOrder() debugging messages.
+ - merge (compatible) changes from top-of-stack into rpmlib.h.
+ - cpio mappings carry dirname/basename, not absolute path.
+ - fix: check waitpid return code.
+ - remove support for v1 src rpm's.
+ - re-position callbacks with ts/fi in cpio payload layer.
+ - state machines for packages (psm.c) and payloads (fsm.c)
+ - add --repackage option to put erased bits back into a package.
+ - fix: (ppc) copy va_list in loop (#36845).
+ - cpanflute perl dependency needs explicit epoch (#37034).
+ - regenerate rpm.8 man page from docbook glop (in max-rpm).
+ - lib/depends.c: diddle debugging messages.
+ - fix: readlink return value clobbered by header write.
+ - fix: ineeded count wrong for overlapped, created files.
+ - globalize _free(3) wrapper in rpmlib.h, consistent usage throughout.
+ - internalize locale insensitive ctype(3) in rpmio.h.
+ - boring lclint annotations and fiddles.
+ - transaction iterator(s) need to run in reverse order on pure erasures.
+ - erasures not yet strict, warn & chug on unlink(2)/rmdir(2) failure.
+ - more boring lclint annotations and fiddles.
+ - yet more boring lclint annotations and fiddles.
+ - still more boring lclint annotations and fiddles.
+ - enough lclint annotations and fiddles already.
+ - fix: specfile queries with BuildArch: (#27589).
+ - fix: debugging message displays header keys (#38454).
+ - use internal db-3.2.9 sources to build by default.
+ - don't build db1 support by default.
+ - create rpmdb.la so that linkage against rpm's db-3.2.9 is possible.
+ - rpm database has rpm.rpm g+w permissions to share db3 mutexes.
+ - expose more db3 macro configuration tokens.
+ - move fprint.[ch] and hash.[ch] to rpmdb directory.
+ - detect and fiddle incompatible mixtures of db3 env/open flags.
+ - add DBI_WRITECURSOR to map to db3 flags with CDB database model.
+ - add rpmdbSetIteratorRewrite to warn of pending lazy (re-)writes.
+ - harden rpmdb iterators from damaged header instance segfaults.
+ - add cron/logrotate scripts to save installed package filenames.
+ - upgrade to db-3.3.4.
+ - fix: filter duplicate package removals (#35828).
+ - add armv3l arch.
+ - fix: i18n strings need 1 on sucess return code (#41313).
+ - fix: skip %ghost files when building packages (#38218).
+ - headerFree() returns NULL, _free is C++ safe.
+ - remove all header region assertion failures, return NULL instead.
+ - perform db->verify when closing db files.
+ - eliminate db-1.85 and db-2.x configuration.
+ - fix: popt arg sanity checks broken, optarg != optArg.
+ - fix: popt range checks on floats/doubles broken.
+ - popt: return POPT_ERROR_ERRNO on config open/read/close failure.
+ - fix: popt exec doesn't add '--', --target et al no longer need '='.
+ - fix: popt consume-next-arg "!#:+" w/o side effect (#41956).
+ - fix: for busted db1, attempt chain reconnection to following record.
+ - return multiple suggested packages
+ (Pawel Kolodziej <pawelk@pld.org.pl>).
+ - fix: return suggested packages when using Depends cache.
+ - merge sparc64/ia64 fiddles back into linux.{req,prov}.
+ - automagically generate perl module dependencies always.
+ - fix: lclint fiddles broke uCache initialization (#43139).
+ - always use db cursors.
+ - permit duplicates for btree indices.
+ - document build modes in rpmbuild.8, rpmbuild is born.
+ - default to dbenv with mpool, --rebuilddb with nofsync is much faster.
+ - fix: QUERY_FOR_LIST file count clobbered.
+ - create top level rpmcli API, factor top level modes into popt tables.
+ - popt: add POPT_BIT_SET/POPT_BIT_CLR to API.
+ - autogen.sh checks for latest libtool-1.4 and automake-1.4-p2.
+ - rpm --verify reports failure(s) if corresponding tag is not in header.
+ - rpm --verify honors %config(missingok), add -v for legacy behavior.
+ - remove dead code frpm popt table reorg.
+ - more CLI typedefs/prototypes moved from rpmlib.h to rpmcli.h.
+ - rpm --verify skips files in non-installed states.
+ - rpm --verify skips content checks for %ghost files.
+ - rpm --verify displays config/doc/gnost/license/readme atrrs for files.
+ - rpm --verify checks immutable header region digest if available.
+ - rpmbuild adds header region digest (SHA1 as string).
+ - use rpmTag* typedefs in new hge/hae/hme/hre header vectors.
+ - remove rpmrc Provides: Yet Again, use virtual packages.
+ - dump cursor debugging wrappers.
+ - rpm --verify can disable rpmFileAttr checks.
+ - add rpmdbSetIteratorRE() for regex matching in database iterators.
+ - permit rpm -qa to take RE args applied to name tag.
+ - permit dbiFindMatches() to use version/release patterns.
+ - eliminate all uses of rpmdbSetIterator{Version,Release}.
+ - fix: db1 end-of-file not detected in legacy compatible way.
+ - fix: remove (harmless) chown error message from %post.
+ - add --target/--host to %configure, add example cross-build/config.site
+ scripts to /usr/lib/rpm <arjanv@redhat.com> (#44581).
+ - rpmdb iterator selectors permit default/strcmp/regex/glob matching.
+ - rpmdb iterator selectors permit negative matches.
+ - alpha: don't add "()(64bit)" dependency markers.
+ - ia64/sparc: <arch>.{req,prov} identical to linux.{req,prov}.
+ - add "rpmlib(ScriptletInterpreterArgs)" to track
+ %post -p "/sbin/ldconfig -n /usr/lib"
+ incompatibilities.
+ - popt: add POPT_ARGFLAG_SHOW_DEFAULT to display initial values(#32558).
+ - popt: add POPT_CONTEXT_ARG_OPTS for all opts to return 1 (#30912).
+ - fix: fsm reads/writes now return error on partial I/O.
+ - fix: Ferror returned spurious error for gzdio/bzdio.
+ - check for API/ABI creep, diddle up some compatibility.
+ - preliminary abstraction to support per-header methods.
+ - finalize per-header methods, accessing headerFoo through vector.
+ - make package ordering loop messages debug, not warning.
+ - remove {ia64,sparc}-linux.{prov,req}, changes merged into linux.*.
+ - fix: partial sets of hardlinked files permitted in payload.
+ - fix: mark rpmdb files with %config to prevent erasure on downgrade.
+ - work around a (possible) compiler problem on ia64.
+ - fix: rpm -qlv link count for directories dinna include '..'.
+ - fix: rpm -qlv size for directories should be zero.
+ - add --noghost to filter non-payload files from rpm -qlv output.
+ - add %{_gnu} macro to append "-gnu" to %{_target_platform} to
+ support --target/--host flavored %configure. Legacy behavior
+ available by undefining %{_gnu}.
+ - propagate %{_gnu} to per-platform configuration.
+ - fix: parameterized macros with massive mumber of options need
+ "optind = 1" "Dmitry V. Levin" <ldv@alt-linux.org>.
+ - add athlon per-platform configuration.
+ - remove executable bit to disable autogenerated perl requires until
+ perl provides can be vetted.
+ - disable per-platform %%configure use of %%_gnu until libtool package
+ stabilizes.
+ - fix: permit partially enumerated hardlink file sets during build.
+ - fix: resurrect rpm signature modes.
+ - fix: sanity checks on #tags (<65K) and offset (<16Mb) in header.
+ - fix: add -r to useradd to prevent /etc/skel glop (#46215).
+ - fix: disambiguate typedef and struct name(s) for kpackage.
+ - update intl dirs to gettext-0.10.38.
+ - fix: sanity check for header size added in headerCopyLoad() (#46469).
+ - fix: redundant entries in file manifests handled correctly (#46914).
+ - map uid/gid from metadata into payload headers.
+ - add removetid to header during --repackage.
+ - expose rpmShowProgress() and rpmVerifyDigest() in rpmcli.h.
+ - portability: avoid st_mtime, gendiff uses basename, etc (#47497).
+ - glibc-2.0.x has not __va_copy().
+ - popthelp.c: don't use stpcpy to avoid portability grief (#47500).
+ - permit alias/exec description/arg text to be set from popt config.
+ - python: rhnLoad/rhnUnload to check header digest.
+ - package version now configureable, default v3.
+ - rename rpm libraries to have version with libtool -release.
+ - fix: -i CLI context broken Yet Again.
+ - unlink all __db.nnn files before 1st db open.
+ - python bindings should not segfault when fed bad data.
+ - fix: adjust arg count for --POPTdesc/--POPTargs deletion.
+ - add linux per-platform macro %_smp_mflags <sopwith@redhat.com>.
+ - document more popt aliases for --help usage.
+ - remove --tarbuild from man page(s), use -t[abpcils] instead (#48666).
+ - fix: scope multi-mode options like --nodeps correctly (#48825).
+ - isolate cdb access configuration (experimental, use at your own risk).
+ - fix: hard fail on locked dbopen if CDB locking not in use.
+ - fix: dbconfig with mp_mmapsize=16Mb/mp_size=1Mb for
+ "everything ENOSPC" failure check.
+ - fix: don't total hard linked file size multiple times (#46286).
+ - add %dev(type,major,minor) directive to permit non-root dev build.
+ - fix: _smp_flags macro broken.
+ - python: bind rhnUnload differently.
+ - fix: rescusitate --querytags.
+ - fix: short aliases broken (#49213).
+ - python: "seal" immutable region for legacy headers in rhnUnload() .
+ - python: add poptmodule.so bindings.
+ - fix: %dev(...) needs to map rdev and mtime from metadata.
+ - resurrect --specedit for i18n.
+ - fix: 4 memory leaks eliminated.
+ - fix: yet another segfault from bad metadata prevented.
+ - add sha1 test vectors, verify on ix86/alpha/sparc.
+ - add (but disable for now) rpm-perl subpackage from Perl-RPM.
+ - python: parameterize with PYVER to handle 1.5 and/or 2.1 builds.
+ - add build dependency on zlib-devel (#49575).
+ - enable rpm-perl subpackage.
+ - add pmac/ppciseries/ppcpseries varieties to ppc arch family.
+ - include tdigest.c tkey.c and trpmio.c to "make dist".
+ - re-enable dependency resolution source from package NVR.
+ - rename pmac to ppcmac.
+ - ia64: revert -O0 compilation.
+ - upgrade to db-3.3.11 final.
+ - fix: don't segfault when presented with rpm-2.4.10 packaging (#49688).
+ - fix: --noscripts is another multimode option.
+ - add tmpdir to configure db3 tmpdir into chroot tree.
+ - permit lazy db opens within chroot.
+ - fix: diddle dbenv path to accomodate backing store reopen in chroot.
+ - add support for mips (#49283).
+ - add __as, _build_arch, and __cxx macros (#36662, #36663, #49280).
+ - detailed build package error messages.
+ - fix: i18n tags not terminated correctly with NUL (#50304).
+ - add explicit casts to work around a s390 compiler problem.
+ - fix: autoconf glob tests (#50845).
+ - portability: some compilers squawk at return ((void) foo()) (#50419).
+ - remove fdFileno() from librpmio, use inline version instead (#50420).
+ - fix: linux find-requires needs quotes around [:blank:].
+ - remove /var/lib/rpm/__db* cache files if %__dbi_cdb is not configured.
+ - python: add hiesenbug patch.
+ - add legacy (compile only) wrappers for fdFileno et al.
+ - add -D_REENTRANT (note rpmlib is still not thread safe).
+ - fix: segfault on headerFree given malicious data.
+ - fix: don't verify hash page nelem.
+ - better error messages for verification failures.
+ - include directory /usr/lib/rpm in rpm package.
+ - always use dl size in regionSwab() return.
+ - ppc: revert ppcmac to ppc.
+ - ppc: autoconf test for va_copy.
+ - python: add exception to detect bad data in hdrUnload.
+ - change dir creation message from warning to debug for now.
+ - verify perms (but not mode) on %ghost files.
+ - headers without RPMTAG_NAME are skipped when retrieved.
+ - within a region, entries sort by address; added drips sort by tag.
+ - fix: error message on failed package installs resurrected.
+ - python: memory leaks in headerLoad/headerunload bindings.
+ - python: retrofit sha1 digest using RPMTAG_SHA1RHN.
+ - python: change rhnUnload bindings.
+ - python: teach rhnLoad about RPMTAG_SHA1RHN as well.
+ - fix: Provides: /path did not work with added packages (#52183).
+ - fix: progress bar scaling did not include source rpm count.
+ - fix: hash page nelem failure to verify.
+ - fix: initialize "verify" transaction stepName with -vv (#53582).
+ - fix: ftp remote globs broken (#46892).
+ - popt: clarify X consortium license in popt.3 man page.
+ - close/discard Depends index after rpmdepCheck() use.
+ - lclint-3.0.0.15 fiddles.
+ - fix: harmless typo in db3 chroot hack.
+ - fix: big-endian's with sizeof(time_t) != sizeof(int_32) mtime broken.
+ - fix: add Korean message catalogs (#54473).
+ - add RPHNPLATFORM and PLATFORM tags.
+
+4.0 -> 4.0.[12]
+ - fix: avoid calling getpass twice as side effect of xstrdup macro
+ (katzj@linuxpower.org) (#17672).
+ - order packages using tsort, clipping Requires:'s in dependency loops.
+ - handle possible db3 dependency on -lpthread more gracefully.
+ - bump popt version to 1.6.1.
+ - fix: more (possible) xstrdup side effects.
+ - fix: rpm2cpio error check wrong on non-libio platforms.
+ - fix: runTriggers was not adding countCorrection.
+ - add rpmGetRpmlibProvides() to retrieve rpmlib(...) provides
+ "Pawel A. Gajda" <mis@k2.net.pl>.
+ - syntax to specify source of Requires: (PreReq: now legacy).
+ - rip out rpm{get,put}text, use getpo.sh and specspo instead.
+ - fine-grained Requires, remove install PreReq's from Requires db.
+ - fix: duplicate headerFree() on instalBinaryPackage() error return.
+ - fix: work around for (mis-compilation?!) segfaults on signature paths.
+ - fix: segfault on exit of "rpm -qp --qf '%{#fsnames}' pkg" (#20595).
+ - hpux w/o -D_OPEN_SOURCE has not h_errno.
+ - verify MD5 sums of payload files when unpacking archive.
+ - hide libio lossage in prototype, not API.
+ - add support for SHA1 as well as MD5 message digests.
+ - don't verify src rpm MD5 sums (yet).
+ - md5 sums are little endian (no swap) so big endian needs the swap.
+ - add doxygen and lclint annotations most everywhere.
+ - consistent return for all signature verification.
+ - use enums for almost all rpmlib #define's.
+ - API: change rpmProblem typedef to pass by reference, not value.
+ - unify rpmError and rpmMessge interfaces through rpmlog.
+ - collect and display rpm build error messages at end of build.
+ - don't trim leading ./ in rpmCleanPath() (#14961).
+ - detect (still need to test) rdonly linux file systems.
+ - check available inodes as well as blocks on mounted file systems.
+ - pass rpmTransactionSet, not elements, to installBinaryPackage et al.
+ - add cscope/ctags (Rodrigo Barbosa<rodrigob@conectiva.com.br>).
+ - remove getMacroBody() from rpmio API.
+ - add support for unzip <rodrigob@conectiva.com.br>
+ - add brp-strip-shared script <rodrigob@conectiva.com.br>.
+ - better item/task progress bars <rodrigob@conectiva.com.br>.
+ - load headers as single contiguous region.
+ - add region marker as RPM_BIN_TYPE in packages and database.
+ - fix: don't headerCopy() relocatable packages if not relocating.
+ - merge signatures into header after reading from package.
+ - RPM_BIN_TYPE malloc'ed when retrieved through headerGetEntry().
+ - add headerFreeData() to free any data malloc'ed during retrieval.
+ - preserve exact image of original header when installing/upgrading.
+ - add missing headerFree for legacy signature header.
+ - fix: removed packages leaked DIRINDEXES tag data.
+ - reload tags added during install when loading header from rpmdb.
+ - avoid brp-compress hang with both compressed/uncompressed man pages.
+ - improved find-{requires,provides} for aix4/hpux/irix6/osf.
+ Tim Mooney<mooney@dogbert.cc.ndsu.NoDak.edu>
+ - portability: remove use of GNU make subst in lib/Makefile (Joe Orton).
+ - python: bind package removal (#21274).
+ - autoconfigure building python bindings.
+ - autoconfigure generating rpm API doco.
+ - fix: don't fdFree in rpmVerifyScript, rpmtransFree does already.
+ - use package version 3 if --nodirtokens is specified.
+ - add package names to problem sets early, don't save removed header.
+ - make sure that replaced tags in region are counted in headerSizeof().
+ - support for dmalloc debugging.
+ - filter region tags in headerNextIterator, exit throut headerReload.
+ - add rpmtransGetKeys() to retrieve transaction keys in tsort'ed order.
+ - python bindings for rpmtransGetKeys().
+ - fix: include alignment in count when swabbing header region.
+ - handle added dirtoken tags (mostly) correctly with header regions.
+ - add FHS doc/man/info dirs, diddle autoconf goo.
+ - fix: headerUnload handles headers w/o regions correctly on rebuilddb.
+ - resurrect rpmrc Provides: as well as implicit dependency on packge
+ info.
+ - change dependency loop message to RPMMESS_WARNING to use stderr, not
+ stdout.
+ - fix: (transaction.c) assume file state normal if tag is missing.
+ - fix: failed signature read headerFree segfault.
+ - fix: revert ALPHA_LOSSAGE, breaks 6.2/i386.
+ - fix: synthesized callbacks for removed packages have not a pkgkey.
+ - identify install scriptlet failures with the name of the scriptlet.
+ - handle install chroot's identically throughout the install process.
+ - add rpmlib(HeaderLoadSortsTags) for tracking header regions
+ "just in case".
+ - create _tmppath on the fly if not present.
+ - remove /etc/rpm/macros.db1 configuration file if db3 rebuilt.
+ - remove overly verbose dbiOpen() error messages, no longer needed.
+ - whiteout mozilla loop for 7.1.
+ - immutable headers, once installed by rpm3, need to lose immutablity.
+ - fix: removed headers from db need a headerCopy().
+ - send query/verify output through rpmlog().
+ - resurrect rpmErrorSetCallback() and rpmErrorString().
+ - use malloc'ed buffer for large queries.
+ - fix: avoid FAT and other brain-dead file systems that have not inodes.
+ - fix: hack around alpha mis-compilation signature problems.
+ - rpmmodule.c(handleDbResult): return empty list when nothing matches.
+ - (non-linux): move stubs.c to rpmio (#21132).
+ - (python): bind initdb (#20988).
+ - (popt): fix float/double handling (#19701).
+ - (popt): non-linux needs <float.h> (#22732).
+ - (popt): add POPT_ARGFLAG_OPTIONAL for long options with optional arg.
+ - (popt): diddle auto-help to include type of arg expected.
+ - use popt autohelp for rpm helper binaries.
+ - fix: avoid locale issues with strcasecmp/strncasecmp (#23199).
+ - remove almost all explicit uses of stderr in rpmlib using rpmError().
+ - fix: pass scriptlet args, as in %post -p "/sbin/ldconfig -n /lib".
+ (Rodrigo Barbosa).
+ - fix: 3 packages from Red Hat 5.2 had bogus %verifyscript tag.
+ - tsorted packages processed in successor count order.
+ - fix: resurrect --excludepath (#19666).
+ - fix: digests on input FD_t dinna work.
+ - fix: remove rebuilddb debugging leakage.
+ - successors from tsort are processed in presentation order.
+ - fix: find-requires.perl needed update (#23450).
+ - fix: don't hang on build error.
+ - fix: remove "error: " prefix from signature verification message.
+ - hack: permit installer to determine package ordering using 1000003 tag.
+ - fix: extra newline in many error messages (#23947).
+ - fix: rpm -Va with db1 needs per-iterator, not per-index, offset.
+ - add install/remove transaction id tags.
+ - tsort prefers presentation order.
+ - 1st crack at Mandrake specific per-platform macros.
+ - fix: insure that %lang scopes over hard links correctly.
+ - fix: rpmCleanPath was nibbling at .. in macrofiles incorrectly.
+ - fix: check waitpid return code.
+ - fix: make a copy of retrieved header before loading.
+ - fix: diddle exit code for attempted installs of non-packages (#26850).
+ - python binding diddles to reduce installer memory footprint by
+ delayed loading of file info.
+ - fix: remove fixed size buffer on output path (#26987,#26332).
+ - resurrect rpmErrorCode in the API for Perl-RPM.
+ - fix: permit packages to differ by 0 or 32 bytes (#26373).
+ - fix: permit HEADER_IMMUTABLE tag queries.
+ - split db configuration into separate file.
+ - portability changes from Joe Orton <jorton@redhat.com> et al.
+ - (alpha): rip out ALPHA_LOSSAGE now that gcc-2.96-76 has fix (#28509).
+ - (popt): use sprintf rather than snprintf for portability.
+ - (sparc) disable MD5 sum checks during install.
+ - (db1) plug largish memory leak in simulated interface for falloc.c.
+ - remove mozilla dependency white out, no longer needed.
+ - fix: adjust for libio breakage in Red Hat 5.x with glibc-2.0.7-29.4.
+ - map i686-like (i.e. w/o CMOV) platforms to better alternatives.
+
+3.0.6 -> 4.0
+ - use DIRNAMES/BASENAMES/DIRINDICES not FILENAMES in packages and db.
+ - API: change dbi to pass by reference, not value.
+ - cram all of db1, db_185, and db2 interfaces into rpmlib.
+ - convert db1 -> db2 on-disk format using --rebuilddb.
+ - add db3 to the pile, isolate all with incremental link and vectors.
+ - prefer db3 as default.
+ - permit db3 configuration using macros.
+ - create dbi from template rather than passed args.
+ - use hashed access for package headers.
+ - db3: save join keys in endian neutral binary format.
+ - treat legacy falloc.c as "special" db[01] index for package headers.
+ - API: pass *SearchIndex() length of key (0 will use strlen(key)).
+ - API: remove rpmdb{First,Next}RecNum routines.
+ - add explcit "Provides: name = [epoch:]version-release" to headers.
+ - fix: cpio.c: pre-, not post-, decrement the link count.
+ (from Fabrice Bellet <Fabrice.Bellet@creatis.insa-lyon.fr>)
+ - make db indices as lightweight as possible, with per-dbi config.
+ - db1.c will never be needed, eliminate.
+ - API: merge rebuilddb.c into rpmdb.c.
+ - API: replace rpmdbUpdateRecord with rpmdbSetIteratorModified.
+ - API: replace rpmdbFindByLabel with RPMDBI_LABEL iteration.
+ - API: replace rpmdbGetRecord with iterators.
+ - API: replace findMatches with iterators.
+ - Filter DB_INCOMPLETE on db->sync, it's usually harmless.
+ - Add per-transaction cache of resolved dependencies (aka Depends).
+ - Do lazy dbi{Open,Close} throughout.
+ - Attempt fine grained dbi cursors throughout.
+ - fix: free iterator *after* loop, not during.
+ - fix: Depends needed keylen in dbiPut, rpmdbFreeIterator after use.
+ - Rename db0.c to db1.c, resurrect db2.c (from db3.c).
+ - simplify --last popt alias, date like -qi (bjerrick@easystreet.com).
+ - fix: alloca'd memory used outside of scope (alpha segfault).
+ - fix: define/eval options assumed sizeof(int) == sizeof(void *).
+ - fix: sparc64 per-platform directory shouldn't be sparc64linux.
+ - fix: (segfault) verify needs rpmdb while query does not.
+ - add calculated nlink field to -qlv output (like ls -al).
+ - detects and builds properly against the new fopencookie API in
+ glibc 2.2.
+ - change popt exec alias in oreder to exec rpm children.
+ - split rpm into 5 pieces along major mode fault lines with popt glue.
+ - turn on new, more complete version of %%configure.
+ - add %%makeinstall analogue of new %%configure for autoconf packages.
+ - mark packaging with version 4 to reflect filename/provide changes.
+ - change next version from 3.1 to 4.0 to reflect package format change.
+ - change %configure, add %makeinstall macros to handle FHS changes.
+ - add optflags for i486 and i586.
+ - fix: segfault with legacy packages missing RPMTAG_FILEINODES.
+ - require db3 in default configuration.
+ - create rpmio directory for librpmio.
+ - make librpmio standalone.
+ - fix: avoid clobbering db cursor in removeBinaryPackage.
+ - expose cursors in dbi interfaces, remove internal cursors.
+ - remove incremental link.
+ - portability: sparc-sun-solaris2.5.1.
+ - fix: don't count removed files if removed packages is empty set.
+ - fix: permit '\0' as special case key (e.g. "/" in Basenames).
+ - require --rebuilddb to convert db1 -> db3, better messages.
+ - fix: open all db indices before performing chroot.
+ - fix: typo in brp-compress caused i18n man pages not to compress.
+ - API: uncouple fadio from rest of rpmio.
+ - API: externalize legacy fdOpen interface for rpmfind et al.
+ - put version on rpmpopt filename to avoid legacy filename collision.
+ - change optflags for i386.
+ - multilib patch, take 1.
+ - add pre-transaction syscall's to handle /etc/init.d change.
+ - don't bother saving '/' as fingerprint subdir.
+ - prefix payload paths with "./", otherwise "/" can't be represented.
+ - fix: compressFilelist broke when fed '/'.
+ - fix: typo in --last popt alias (#12690).
+ - fix: clean file paths before performing -qf (#12493).
+ - remove build mode help from rpm.c, use rpmb instead.
+ - fix: set multilibno on sparc per-platform config.
+ - fix: legacy requires './' payload prefix to be omitted for rpm itself.
+ - fix: remove verbose database +++/--- messages to conform to doco.
+ - add S_ISLNK pre-transaction syscall test.
+ - fix: initialize pretransaction argv (segfault).
+ - fix: check rpmlib features w/o database (and check earlier as well).
+ - rip out pre-transaction syscalls, more design is needed.
+ - remove (dead) dependency checks on implicitly provided package names.
+ - remove (dead) rpmdb API code in python bindings.
+ - fix: make set of replaced file headers unique.
+ - fix: don't attempt dbiOpen with anything but requested dbN.
+ - create rpmbuild/rpmquery/rpmverify/rpmsign symlinks.
+ - fix: look for any/all dbapi when rebuilding.
+ - link rpm2cpio dynamically since cpio is linked dynamically.
+ - fix: uniqify dependency problems when printing (#14034).
+ - fix: segfault on erase if filestates is missing in header (#14679).
+ - fix: popt POST callbacks typo.
+ - fix: -Va broken, make db cursors per-iterator, not per-dbi.
+ - fix: segfault when globbing on "" (#15593).
+ - fix: rebuild db1 -> db3 ate 1st header (#16263).
+ - translate rpm.8 man page (Peter Ivanyi <ivanyi@internet.sk>).
+
+3.0.6 -> 3.0.7
+
+3.0.5 -> 3.0.6
+ - python bindings to query and verify signatures.
+ - add callbacks on package erasure.
+ - fix: preserve cpio errno when using Fclose with libio.
+ - fix: initialize sigs everywhere in python header object.
+ - popt: support for float/double args.
+ - fix: honor --test when doing --freshen.
+ - add alpha* architectures.
+
+3.0.4 -> 3.0.5
+ - configure.in fiddles for BSD systems (Patrick Schoo).
+ - solaris2.6: avoid bsearch with empty dir list (Ric Klaren - klaren@cs.utwente.nl)
+ - include RPM-GPG-KEY in file manifest.
+ - Add ia64 and sparc64 changes.
+ - rpm.spec: add per-platform sub-directories.
+ - FreeBSD fixes (bero@redhat.com).
+ - handle version 4 packaging as input.
+ - builds against bzip2 1.0
+ - fix: resurrect symlink unique'ifying property of finger prints.
+ - fix: broken glob test with empty build directory (Geoff Keating).
+ - fix: create per-platform directories correctly.
+ - update brp-* scripts from rpm-4.0, enable in per-platform config.
+ - alpha: add -mieee to default optflags.
+ - add RPMTAG_OPTFLAGS, configured optflags when package was built.
+ - add RPMTAG_DISTURL for rpmfind-like tools (content unknown yet).
+ - teach brp-compress about /usr/info and /usr/share/info as well.
+ - update macros.in from rpm-4.0 (w/o dbi configuration).
+ - fix: don't expand macros in false branch of %if (kasal@suse.cz).
+ - fix: macro expansion problem and clean up (#11484) (kasal@suse.cz).
+ - uname on i370 has s390 as arch (#11456).
+ - python: initdb binding (Dan Burcaw <dburcaw@terraplex.com>).
+ - internalize --freshen (Gordon Messmer <yinyang@eburg.com>).
+ - support for separate source/binary compression policy.
+ - support for bzip payloads.
+ - fix: payload compression tag not nul terminated.
+ - identify package when install scriptlet fails (#12448).
+ - remove (unused) RPMTAG_CAPABILITY.
+ - remove (legacy) use of RPMTAG_{OBSOLETES,PROVIDES} internally.
+ - remove (legacy) support for version 1 packaging.
+ - remove (legacy) support for converting gdbm databases.
+ - eliminate unused headerGz{Read,Write}.
+ - support for rpmlib(...) internal feature dependencies.
+ - display rpmlib provides when invoked with --showrc.
+ - fix: compare versions if doing --freshen.
+ - disable rpmlib(VersionedDependencies) by defining _noVersionedDependencies.
+
+3.0.3 -> 3.0.4
+ - use compressed filenames on install side.
+ - start unifying FD types, CFD_t now gone.
+ - check for memory leaks (almost all leaks are plugged).
+ - fix: resurrect multiple target platform builds.
+ - freshen.sh: detect when all packages are up to date (Ian Macdonald).
+ - fix: typo in error message (#6858).
+ - add/update dependency scripts (Ken Estes).
+ - use directory tokens internally to reduce memory usage.
+ - permit --whatprovides to lookup file dependencies.
+ - fail to package if absolute symlink points within build root.
+ - initial version of check-prereqs.
+ - expose enough of legacy fdio interface to compile rpmfind/rpm2html.
+ - fix: Fopen should use 0666 as default (umask will be applied later).
+ - fix: default for rd_timeoutsecs is 1 sec (avoid ufdio assertion).
+ - fix: new FILENAMES tags require package index, not pointer in lookups.
+ - rename new FILENAMES tags to BASENAMES/DIRNAMES/DIRINDEXES.
+ - fix: don't look at password when searching urlCache.
+ - add contentLength sanity check on rpmdb headerWrite.
+ - fix: fprint abort on stat("/", ...) in empty chroots.
+ - perform glob on remote ftp query args.
+ - fix: ftpAbort must close the data channel to read abort status.
+ - perform glob on remote ftp install args.
+ - fix: reload macros from cmd line when re-reading config files.
+ - fix: compressFileList was over-generating dirNames.
+ - fix: alAddPackage sorted dirNames too soon, destroying dirMapping.
+ - expose enough of legacy fdio interface to compile gnorpm.
+ - fix: missing strdup when overriding buildroot from command line
+ argument (#1026,#5006).
+ - diddle some names to keep my C++ brethern happy (i.e. kpackage port).
+ - fix: add ufdSeek.
+ - build popt (with libpopt.so*) as a sub-package of rpm.
+ - split python bindings into a separate sub-package of rpm.
+ - add ja translation and man pages (Kanda Mitsuru kanda@nn.iij4u.or.jp).
+ - fix: fp.subDir was incorrectly set to NULL in sparse chroot's.
+ - fix: manageFile needs to and with O_WRONLY(=1), not O_RDONLY(=0).
+ - fix: resurrect failed glob error message during build.
+ - add several BuildRoot FTW policies.
+ - add manpage for gendiff (pbrown@redhat.com).
+ - updated sv.po (goeran@uddeborg.pp.se) (#8349).
+ - configurable PATH for install %pre/%post et al scriptlets.
+ - use only %_install_langs, not LINGUAS/LANG when deciding to install.
+ - configurable compression type/level for package payloads.
+ - default value for %_install_langs is all.
+ - fix: resurrect relative path's in fprint lookup queries.
+ - extract spec files from bzip'ped tarballs too on tar builds.
+ - add %_rebuilddbpath macro to permit rebuilding db in new location.
+ - updated perl scripts (Ken Estes).
+ - fix: on --rebuilddb, make sure new/old paths are not the same (#8752).
+ - fix: on --erase, segfault caused by "" prefix.
+ - explicitly expand file lists in writeRPM for rpmputtext.
+ - {Free,Open}BSD find-{provides,requires} (suzukis@file.phys.tohoku.ac.jp).
+ - new rpm-build package to isolate rpm dependencies on perl/bash2.
+ - always remove duplicate identical package entries on --rebuilddb.
+ - add scripts for autogenerating CPAN dependencies.
+ - add sl.po from Primoz Peterlin <peterlin@biofiz.mf.uni-lj.si>.
+ - updated sv.po from <goeran@uddeborg.pp.se>.
+ - macro expansion (and absolute path) in %files -f arg (#9508,#9091).
+ - permit cli setting of build root policies.
+ - fix: filter excluded paths before adding install prefixes (#8709).
+ - add i18n lookaside to PO catalogue(s) for i18n strings.
+ - try for /etc/rpm/macros.specspo so that specspo autoconfigures rpm.
+ - per-platform configuration factored into /usr/lib/rpm subdir.
+ - sparc-sun-solaris2.6 portability check.
+ - simpler hpux.prov script (Tim Mooney).
+ - portability: skip bzip2 if not available.
+ - portability: skip gzseek if not available (zlib-1.0.4).
+ - portability: skip personality if not available (linux).
+ - portability: always include arpa/inet.h (HP-UX).
+ - portability: don't use id -u (Brandon Allbery).
+ - portability: don't chown/chgrp -h w/o lchown.
+ - portability: splats in rpm.spec to find /usr/{share,lib}/locale/* .
+ - fix: better filter in linux.req to avoid ARM specific objdump output.
+ - fix: use glibc 2.1 glob/fnmatch everywhere.
+ - fix: noLibio = 0 on Red Hat 4.x and 5.x.
+ - fix: typo in autodeps/linux.req.
+ - configure noarch compatibility in rpmrc for ia64.
+
+3.0.2 -> 3.0.3
+ - add --eval to find result of macro expansion.
+ - add configure scaffolding to support rpm-4.0 packages.
+ - include shared libs in rpm-devel (no versioning yet).
+ - add epoch (as [0-9]*:version-release) to install dependency parse.
+ - move install/erase major modes into rpmlib.
+ - move checksig/resign major modes into rpmlib.
+ - add python bindings to rpm-devel (linux only).
+ - make query (rpm -qvl) behave like (POSIX?) ls for older files (#4050).
+ - fix: %if parsing skipped 3 chars too many.
+ - permit multiline macro expansions with comments and %if.
+ - add pl translation and man pages (PLD team - from Tomasz Kloczko).
+ - fix: incomplete cleanup if --rebuilddb fails (#4115).
+ - add versions to provides.
+ - fix: sanity test on specfile fails when encountering i18n chars.
+ - print all dependencies for each package at end of build.
+ - the death of RPMSENSE_SERIAL, use [epoch:]version[-release] instead.
+ - add _mandir/_infodir macro expansions to docdirs (Tomasz Kloczko).
+ - add post install configurable dependency checking.
+ - fix: segfault on --rebuild (#4185).
+ - macro fixes (Benedict Lofstedt, #4220):
+ expand %# just like %{#} (and with same value as shell analogues).
+ macro defaults for *, 0, and # if no args specified.
+ getopt on non-linux requires optind to be saved/restored.
+ - fix: don't remove file until last occurence in transaction (#4291).
+ - resuscitate net shared paths (#4330).
+ - fix: macro table cannot contain NULL pointers (#4263).
+ - fix: last char in rpmrc w/o terminating newline lost (#4361).
+ - prepare for handling \r in macro exapnsions.
+ - fix: n>1 occurrences of %config(noreplace) should not FA_CREATE (#4355).
+ - fix: use pgp5 rather than pgp-2.6.3 if both are in %_pgpbin (#4564).
+ - match "de" when locale is specified as "de_DE.ISO-8859-1@Munich".
+ - add versions to obsoletes.
+ - add %_install_langs to configure languages to be installed.
+ - add LC_ALL/LC_MESSAGES to query locale search.
+ - fix: segfault with "--sign" w/o supplying files (#4651).
+ - add headerWrite return code and check for errors.
+ - update python bindings from anaconda.
+ - add versions to prereq.
+ - add syntax sensitive implict prereq on rpm-3.0.3.
+ - fix: don't successfully match with strncasecmp("sparc", "sparc64", 5)
+ - add sparcv9 architecture.
+ - add --freshen to usage message (#4823).
+ - suggested changes to docs from Ken Estes (#4451).
+ - link libbz2.a statically to avoid rpm->bzip2 dependence for now.
+ - Tru64: avoid find-requires variable size limit (Tim Mooney).
+ - Solaris: use getpassphrase rather than getpass if available.
+ - pgp and pgp5 have compatible RSA signature (#4780).
+ - fix: avoid db problems with self-obsoleting packages on install.
+ - glibc2: always enable dynamic mtrace if available.
+ - fix: versioned provides devolved to existence test with conflicts.
+ - fix: with unspecified epochs, skip dependency epoch compare.
+ - python: shared module linked correctly.
+ - do versioned provides/conflicts resolution correctly.
+ - rpmpopt: display versioned provides/obsoletes.
+ - revert to shared libbz2.so now that bzip2 is in base install.
+ - fix: command line install had header memory leak.
+ - check for NULL on all memory allocations.
+ - free rpmrc mallocs on exit.
+ - glibc2: permit run time leak detection.
+ - fix: removed files fingerprint memory leak.
+ - fix: resurrect allfiles flag from rpm-2.5.x.
+ - fix: version compares compatible with epoch-less requires/conflicts.
+ - fix: rpm-2.5.1 had file list w/o leading / fix.
+ - portatbility fiddles (solaris).
+ - create binary rpm directory (e.g. .../%{_target_cpu}) on the fly.
+ - updated pl/rpm.8 (PLD team).
+ - new find req/prov scripts for non-linux platforms (Tim Mooney).
+ - fix: non-GNU globs burp on repeated '/' in patterns.
+ - dumb cpp's want white space around lclint annotations (Tim Mooney).
+ - aix: aix.req broken by cut-and-paste (Tim Mooney).
+
+3.0.1 -> 3.0.2
+ - eliminate armv4 entries from rpmrc (Andrew E. Mileski).
+ - permit multiple "Provides: " lines in rpmrc (#2999).
+ - add BuildConflicts: and BuildRequires: in spec file and src rpm.
+ - fix: bigendian's with longlong file sizes (e.g. IRIX) dinna work.
+ - move printDep* routines into rpmlib for gnorpm et al.
+ - updated ru translation (Sergey Kubushin).
+ - add vpkg-provides.sh (Tim Mooney).
+ - don't clobber LDFLAGS in top-level Makefile (Tim Mooney).
+ - fix: build root from cmd line did not set macro %buildroot (#1026).
+ - fix: resurrect "rpm -Va --nofiles" (verify dependencies only) (#3111).
+ - rpm-devel should require popt (#3125).
+ - don't spin while waiting for delayed requires/provides input (#3289).
+ - common parse for all dependency token syntax.
+ - eliminate find-requirements on libNoVersion (Red Hat linux only).
+ - add new-fangled requires on "libc.so.6(GLIBC_2.1)" (sparc-linux only).
+ - MiNT port (Guido Flohr <gufl0000@stud.uni-sb.de>).
+ - fix: --rebuilddb with --root dinna remove directory (Michael Andres).
+ - fix: false fingerprint stat cache hit -- "the tetex problem" (#2727).
+ - fix: bsearch needs macro table sorted after undefine. (#3713).
+ - fix: --checksig segfault with odd pgp output (e.g. w/o ~/.pgp) (#3720)
+ - avoid numeric overflow in version comparison (Thayne Harbaugh<tharbaug@liberate.com>).
+ - move url.c and ftp.c to rpmlib right next to query.
+ - 12 more dead strtoks.
+ - changelog stamp broken w/ big endian 64 bit time_t (Stephane Erania).
+ - tru64: use /bin/sh not /usr/bin/ksh in find-requires.
+ - 32Mb (~16x largest known) sanity check on header size.
+
+3.0 -> 3.0.1
+ - fix: %verifyscript resurrected (Shing-Gene Yung).
+ - fix: % before non-alphabetic non-macro special now passed unscathed.
+ - fix: noarch header gets initialized differently.
+ - fix: $2 to triggerpostun scripts was wrong
+ - fix: --querybypkg in man page should be --filesbypkg
+ - fix: optflags not implicitly set to canonical arch value.
+ - fix: prefer pgp2.6.3 over pgp5 if both are installed.
+ - make sure that rpm-the-package auto-requires glibc.
+ - add rpmputtext/rpmgettext to rpm package.
+ - fix: non-apache servers need "GET ... HTTP/1.0" by the book.
+ - fix: %doc wrongly inherits lang from last entry in %files.
+ - resurrect toplevel tar target.
+ - spec file removal separate from source removal (Shing-Gene Yung).
+ - add rpm prefix to MD5 routines to avoid name conflict on solaris.
+ - fix: resurrect -Vp, -Vf and -Vg functionality.
+ - colesce query and verify modes.
+ - better cpio error message if package contains missing hard links.
+ - fix: shared file not skipped when removed.
+ - fix: conversion script left off leading underscores.
+ - another strtok bites the dust.
+ - fix: prevent return code wrap during packagage checking/resigning.
+ - permit multiple %lang(xx) markers on elements in %files.
+ - permit %lang(xx,yy,zz) constructs -- 2 more dead strtoks.
+ - fix: --prefix should work properly during package installs.
+ - add librpmbuild.a to the file list.
+
+2.94 -> 2.95
+ - fix: last update transaction set segfault bug in installer.
+ - improved checks for statfs (Tim Mooney).
+ - remove inconsistent use of __P((...)) throughout.
+ - non-static inline functions caused IRIX cc pain.
+ - CPIOERR_CHECK_ERRNO masking caused AIX cc warnings.
+ - solaris 2.6+ needs statvfs.
+ - check build prerequisites before building from specfile.
+ - convert per-system configuration in /etc/rpmrc to macros.
+
+2.93 -> 2.94
+ - fix: segfault while parsing target string.
+ - fix: os was not initialized with "--target i586".
+ - fix: --prefix resurrected.
+ - non-linux, non-gcc portability fixes (Tim Mooney).
+ - default to static libs only (remove implied support for shared libs).
+
+2.92 -> 2.93
+ - eliminate old rpmrc configuration syntax.
+ - pgp5 support (Carlo Wood <carlo@runaway.xs4all.nl>)
+ - fix: segfault from double close on ftpGetFileDesc->ftpAbort path.
+ - fix: don't add header if signature generation failed (Carlo Wood).
+ - more DU 4.0D fiddles (Shing-Gene Yung).
+ - fix: segfault from unknown uid/gid -- use builder's uid/gid instead.
+ - autoReq/autoProv now per-package.
+ - fix: avoid segfault using --prefix until ewt fixes.
+ - add --define "%foo %bar" option.
+ - dump macros to same fd as --showrc uses.
+ - add %GNUconfigure for full-blown package regeneration.
+ - fix: RPM_ARCH/RPM_OS had wrong values.
+ - fix: create ppc directories correctly.
+ - (re-)enable fixowner/fixgroup macros.
+ - fix: specfile BuildRoot was masking rpmrc macro.
+ - expand twiddles in macrofiles list.
+ - add explicit macrofiles path to rpmrc.
+ - add per-target macrofiles to search path.
+ - take globalMacroContext out of macro api.
+ - fix: flush all macros between builds.
+ - add name/version/release macros during src.rpm install.
+ - attempt mkdir sourcedir/specdir during src.rpm install.
+
+2.91 -> 2.92
+ - update with libtool-2.4f.
+ - DU 4.0D fiddles (Shing-Gene Yung<shing@cz3.nus.edu.sg>)
+ - change support@redhat.com to rpm-list@redhat.com.
+ - fix: with --target=i686, pass macro %_arch=i386.
+ - fix: rpm --target=arch ... resurrected.
+ - fix: rpm -q --specfile --specedit now works even with BuildArch:.
+ - fix: nested strtok's is a no-no.
+ - added disk space checking
+
+2.90 -> 2.91
+ - fix: memory leaks in rpmRunTransactions plugged.
+ - fix: build of packages w/o BuildRoot segfault.
+ - permit substitution of I18N strings from PO meta-catalogues.
+ - add callbacks for installer updates while doing URL xfers.
+ - resurrect http queries/verifies.
+ - create rpmbzio.c to avoid implicit dependence on libbz2 for installer.
+ - spec files can provide /filename now
+ - added rpmdbOpenForTraversal()
+ - proxy http (Alex deVries).
+ - add BuildPrereq: in spec file and src rpm.
+ - added rpmtransSetScriptFd()
+ - fixed config file problems during chroot upgrades
+ - fixed %attr brokenness for directories
+ - augment linux provides/requires for glibc 2.1 backward compatibility.
+ - fixed --noscript, --notriggers, --excludedocs, and a bunch
+ of other install/remove flags
+ - fixed noreplace handling
+ - complain about old packages being installed
+
+2.5.x -> 2.90
+ - added --excludepath
+ - identify missing keys by type (Toshio Kuratomi).
+ - package install/removal much smarter about symlinks
+ - redid install/remove API to allow transaction semantics
+ - support for GPG (Toshio Kuratomi <badger@prtr-13.ucsc.edu>)
+ - file lookup finally sane wrt symbolic links :-)
+ - fileindex format changed -- rebuilddb is necessary for rpm 2.90!!
+ - --rebuilddb doesn't open old index files
+ - permit http:// and file:// url's as well as ftp://.
+ - change --rcfile to permit colon separated file list.
+ - compile in defaults from rpmrc/macros.
+ - finish hiding rpmdb index record data ("matches").
+ - implement abstract fd type almost everywhere.
+ - update and rename Czech (Pavel Makovec <pavelm@terminal.cz>)
+ - augment --showrc with -v, only display set variables without -v.
+ - add macrofiles variable, permit second entry to initMacros().
+ - add config.h defines for paths to find-requires et. al.
+ - add readRPM to libbuild, headerGetLangs to librpm.
+ - permit rpm to be built in a sub-directory (--srcdir=DIR).
+ - configure using automake.
+ - arch/os (and platform) should be case insensitive everywhere forever.
+ - attempt to deal rationally with os as "Linux" or "linux".
+ - add generalized expression handler (Tom Dyas<tdyas@remus.rutgers.edu>)
+ - use /usr/lib/rpm/mkinstalldirs if mkdir -p fails.
+ - more portable dirent handling (Hermann Lauer).
+ - add Slovak translation (Stanislav Meduna <stano@trillian.eunet.sk>)
+ - gettextify rpmMessage/rpmError/fprintf messages.
+ - update po files; add cz to catalogs.
+ - cpio_gzip: dup the fd before doing gzdopen (Thanks Erik!)
+ - add --noLang to skip non-default languages.
+ - writeRPM can now copy cpio archive from fd.
+ - preliminary macro environment as side effect of rpmrc parse.
+ - macro handling in rpmlib -- rework include: tag with macro expansion.
+ - first attempt at librpmbuild API.
+ - fixed lib/rpmrc.c to accept include: tags (AdV)
+ - fixed the CHANGES file to reflect that this is 2.9, not 3.0 (AdV)
+ - aggregate system includes into system.h.
+ - rearrange functions to minimize exported routines in librpmbuild API.
+ - generalize cpio I/O to eliminate pipe to exec'd gzip on install.
+ - add {init,add,expand}Macro args everywhere (new macro.c compatibility)
+ - add new fully recursive macro.c
+ - there must be a { between two % in a query format (unless %% is used)
+
+2.5.6 -> 2.5.7:
+ - permit 0x1b in specfile sanity check.
+ - increase timeout in tread from 5 to 30 secs for slow links.
+ - rename file before unlinking to avoid EBUSY failures.
+ - headerGetEntry now returns count=0 if tag not found (Chris Blizzard).
+ - resurrect osf1 as canonical os name (Time Mooney).
+ - sub-packages should inheirit Prefixes tag (Ian Mortimer).
+ - make '-' character illegal (again) in version/release.
+ - use portable #!/bin/sh (Tim Mooney).
+ - don't erase failing build script (Tim Mooney).
+ - use portable mkinstalldirs (Tim Mooney).
+ - irix6 autodeps were dup'd (Shing-Gene Yung <shing@cz3.nus.edu.sg>).
+ - getservbyname needed ntohs().
+ - propagate "const char *" into rpmlib prototypes.
+ - use "original db-1.85" if available (Raw Hide glibc 2.1).
+ - make sure files to sign exist before asking for the pass phrase
+
+2.5.5 -> 2.5.6:
+ - ultrapenguin 1.1.9 sparc64 changes.
+ - attempt ftp ABOR on query/verify url's.
+ - cache open ftp control descriptor with password.
+ - verify needed same realpath semantics as query.
+ - plug fd leak in urlGetFile().
+ - translate cpio errors using cpioStrerror.
+ - display "..?....." rather than "..5....." for unreadable files.
+ - run time (rather than compile time) host endian check.
+ - caldera patches (ray@Caldera.DE)
+ - added ARM patches.
+ - fix incorrect directory permissions using %attr/%defattr.
+ - permit "rpm -q --specfile ... file.spec" queries.
+ - strncasecmp on spec file separators (KDE has %Description).
+ - remove redundant md5 computation on uninstall.
+ - permit --rmsource --force even if sources/patches are missing.
+ - don't compute md5sum on non-file %config objects. (from Jos Vos)
+ - check arch only on RPMBUILD_{PREP,BUILD,INSTALL,PACKAGEBINARY}.
+ - configure.in: set default value for RPM. (Tim Mooney)
+ - add new Epoch: keyword just like Serial:.
+ - update Russian translation w man pages.
+ - solaris: don't attempt static link. (Tim Mooney)
+ - fix: timeCheck in rpm.c should be unsigned long. (Tim Mooney)
+ - osf: prov searches only shared libraries. (Tim Mooney)
+ - solaris: set PATH in prov/req scripts. (Tim Mooney)
+ - fix: ignore modes on symlinks. (Tim Mooney)
+ - sub-packages inherit RPMTAG_EPOCH (just like RPMTAG_VERSION/RELEASE).
+ - fix off-by-1 alloca that prevented relocating /.
+ - there must be a { between two % in a query format (unless %% is
+ used).
+
+2.5.4 -> 2.5.5:
+ - permit rpm to be built in a sub-directory (--srcdir=DIR).
+ - return CPIO_BAD_HEADER instead of exiting. (Scott M. Stone)
+ - untranslate "(none)" for auto relocating script wrappers.
+ - non-linux arch/os identification (Eugene Kanter).
+ - portable mode_t/pid_t typedefs.
+ - fix check for trailing / in Prefix:
+ - remove 2 character language name assumption.
+ - add /usr/lib/rpm/find-lang.sh (W. L. Estes <wlestes@uncg.edu>)
+ - miscellaneous portability cruft (Eugene Kanter).
+ - Makefile: don't use ln -sf.
+ - getOutputFrom(): fix race between last read on pipe and child death
+ (exacerbated in 2.5.4).
+ - rpm.spec: create /usr/src/redhat/* in %install.
+
+2.5.3 -> 2.5.4:
+ - expand args using popt on pre-rpmReadConfigFiles arg pass.
+ - skip arch checks if only packaging source rpm.
+ - add license field to rpmpopt -qi alias.
+ - provides/obsoletes requires tokens that begin with alnum or _.
+ - non-zero exit status for verify failures.
+ - hpux does setreuid differently (Hermann Lauer).
+ - check for setreuid portably (Eugene Kanter).
+ - add Serbian translation (Zoltan Csala <zcsala@iname.com>).
+ - arch/os tables were not being initialized for noarch builds.
+ - quote users/groups/filenames in --setugids.
+ - add Russian translation w man pages (Serguei Koubouchine <ksi@gu.net>)
+ - fix virtual file attribute bug that skipped all files in binary rpm.
+ - eliminate infinite loop with missing tmpdir (Trent Jarvi).
+ - os_canon for CYGWIN32_NT/95.
+ - rationalize autoconf detection of gzip/bzip2.
+ - restore backward compatible rpmrc/rpmpopt symlinks.
+ - update pt_BR translations (Arnaldo Carvalho de Melo).
+ - permit --{buildroot,timecheck,test,sign} with -tX (Toshio Kuratomi).
+ - fix database rebuilds with triggers (Steve Sanberg).
+ - diagnostic message if unreadable/short source or patch file.
+ - eliminate redundant close in provide/require processing.
+ - solaris portability patch resurrection (Steve Sanberg).
+ - permit autogen.sh to work on non "prefix=/usr" hosts.
+ - add %license/%readme virtual file attributes.
+ - align "Build Host:" with other fields.
+
+2.5.2 -> 2.5.3:
+ - copy changelog tags to sub-packages just before packaging.
+ - added EPOCH handling to supplement serial numbers
+ - add RPMTAG_EPOCH and RPMTAG_CAPABILITY init to 0.
+ - fix infinite recursion on non-ERANGE return from getcwd() during
+ install (Matt Wilson).
+ - rm .depend for multiple builds in same tree (Will Partain)
+ - addFile: fix special case of "/" in %files.
+ - better query semantics with symlinks (Tim Mooney)
+ - build.c: fix incorrect check for successful open
+ - allow %define with leading whitespace
+ - use /usr/lib/rpm for rpmpopt, rpmrc, find-requires, find-provides
+ - added popt 'exec' functionality
+ - made --rebuilddb a bit more robust by checking data types
+ - added --freshen via popt exec stuff
+ - fixed spelling of expected
+ - updated de.po (Karl Eichwalder)
+ - do a better job of checking for a spec file in tarballs
+ (Pavel Roskin)
+ - fixed --triggers alias (Michael Andres)
+ - added :hex query format
+ - fixed --querytags to display virtual tags
+????? - added --triggers and --triggered by to man page, help, and usage
+????? - added support for epochs
+
+2.5.1 -> 2.5.2:
+ - added -bs to build just a source package
+ - included irix.req and irix.prov (Tim Mooney)
+ - copy CHANGELOG* and URL tags to all subpackages
+ - follow symlinks when packaging sources
+ - handle %files -f with no %setup (no build directory)
+ - fixed ugly i18n header bug
+ - deal with lang paths sanely when entries are missing languages
+ - fix bug packing /usr/doc when last file was %dir
+ - added --last alias
+ - fix :depflags query format
+ - Group: i18n (like Summary:)
+ - make --justdb install files in normal state
+ - %{fssizes} segv'd for packages with empty file lists
+ - updated HP-UX, OSF1, Irix 6.x dependency scripts (Tim Mooney)
+ - added arm and MachTen arch/os info
+ - added --filesbypkg query format
+ - updated README to have proper URLs
+ - updated rpm.spec for proper paths and cleanliness
+ - dependency resolution could hang when Provides: line is used in
+ rpmrc (Tim Mooney)
+ - updated mips rpmrc entries (Alex deVries)
+ - version/release conditional triggers weren't ignoring the trigger
+ package name at the front of the TRIGGERVERSION
+ - added --notriggers for -i and -e
+ - made --triggers a synonym for --triggerscripts
+ - ftp installs were trying to use /var/tmp/tmp
+ - allow whitespace in source/patch lines
+
+2.5 -> 2.5.1:
+ - fail if sources are not regular files
+ - wasn't catching readLine() errors
+ - fixed (hopefully) temp file creation problems
+ - make %doc obey --test
+ - unlink before writing .rpms
+ - librpm.c: added headerGzRead()/headerGzWrite()
+ - set bzip2path via lib-rpmrc/configure (Toshio Kuratomi)
+ - added finish translation (Raimo Koski)
+ - prefer db_185.h to db.h (Christopher Seawood)
+ - included updated hpux.req (Ralph Goers)
+ - added aix.req (Ralph Goers)
+ - updated hpux.prov, osf.req, osf.prov (Tim Mooney)
+ - set file states for --justdb packages to "not installed"
+ - handle missing file states properly in -e code
+ - install time wasn missing for --justdb packages
+ - missing parameter in an rpmError() caused segfault
+
+2.4.109 -> 2.5:
+ - fixed return code bug in build code
+ - do macro expansion before %if processing
+ - dep ordering returns w/ an error as soon as a prereq loop is found
+ - autoreqprov flag was being ignored during builds
+ - add autoreq: and autoprov:
+ - missed a few unlink() when scripts failed
+ - freePrefixes wasn't initialized in runScript()
+ - fix typo in %triggerpostun generation
+ - include icons in source packages
+ - headerGetEntry() should return count of 1 when returning
+ strings plucked from i18n strings
+ - do not remove comments in scripts
+ - save/restore existing arch when done with buildarch
+ - copy the I18N table to the source header so i18n stuff works
+ - fixed multiple memory leaks in install code
+ - fixed bug in part recognition
+ - shared files weren't being handled properly in net shared paths
+
+2.4.108 -> 2.4.109:
+ - remove icons with --rmsource
+ - do dependecy generation on -bl
+ - check files on all packages on -bl
+ - integrate Jeff Johnson's memleak patches
+ - added OSF1 autodep scripts
+
+2.4.107 -> 2.4.108:
+ - make --clean work with no %setup
+ - fixed FSSIZES problem introduced in 2.4.107
+ - fixed search for find-requires.sh
+ - improved solaris autodeps scripts
+ - automated (somewhat) the -static flag
+
+2.4.106 -> 2.4.107:
+ - --nomd5 wasn't handled properly
+ - updated configure.in find-req and find-prov checks (Tim Mooney)
+ - make --rmsource actually work
+ - run postun triggers
+
+2.4.105 -> 2.4.106:
+ - build: only check for non-printables in first 128 chars
+ - added %triggerpostun
+ - linux.req generates deps for shared libs
+ - added a CC=@CC@ to popt/Makefile.in
+ - handle signed return types from poptGetNextOpt() properly
+
+2.4.104 -> 2.4.105:
+ - added langpatt: to rpmrc, and mark files with matches
+ - added some C++ cruft to rpmlib.h
+ - added find-requires and find-provides for hpux (Tim Mooney)
+ - respect LINGUAS when install package files
+ - added trigger support to build code
+ - got rid of annoying mwftw() type warning
+ - fixed many command line options which got broke by changes
+ for non-gcc compilers
+ - added trigger support in install code
+ - added doc/triggers
+ - strntoul() in lib/cpio.c was returning a pointer to freed
+ memory
+ - headerAppend() was doing a bad memcpy()
+
+2.4.103 -> 2.4.104:
+ - fixed popt/Makefile.in to use CPP from configure
+ - use tmppath from rpmrc to for ftp'd files (rather then /var/tmp)
+ - autoconf files and .depend files weren't created properly during
+ make archive
+
+2.4.102 -> 2.4.103:
+ - need to create popt/configure during make archive
+ - added comments about modifictation to base popt and rpmrc files
+ - allow spaces in group names
+ - fix bug in memory allocation of special doc stuff
+ - Jeff Johnson's mode/dev fixes
+ - clean up buildroot
+ - be more paranoid about making temp files
+ - added patches from Tim Mooney which let RPM build with non-gcc
+ compilers and non-GNU versions of make
+
+2.4.101 -> 2.4.102:
+ - fixed spelling of "instchangelog" in lib-rpmrc.in
+ - fixed memory leak in headerSprintf() extension cache
+ - fixed memory allocation for header formatting extension cache
+ - added support for INSTPREFIX virtual tag for backwards compatibility
+ - cpio error codes were poorly defined, causing bad error messages
+ - generates INSTPREFIXES tag properly, and sets RPM_INSTALL_PREFIX
+ and RPM_INSTALL_PREFIXn environment variables
+ - fixed memory leak in install code which occured when net shared paths
+ were used
+ - don't pass net shared path to rpmInstallPackage() -- it looks
+ directly in the rpmrc entries
+ - don't remove files in netsharedpath, even for files whose states
+ are not net shared
+ - changed --setugids to use separate chown and chgrp programs, for
+ better portability
+ - popt moved to autoconf
+ - Makefiles changed to allow building in a different directory then
+ the source code resides in
+ - finally fixed the Build Host spacing in rpmpopt
+
+2.4.100 -> 2.4.101:
+ - handle files with spaces (put double quotes around them)
+ - new rpmrc setting, buildshell, can be used to set shell
+ used for build scripts (default is /bin/sh)
+ - fix bug where macros were being improperly set for
+ Patch: and Source: lines
+ - may use "instchangelog" in rpmrc to limit the maxmium number of
+ changelog entries that are stored in the database for each package
+ (-1 means store all of them)
+ - default instchangelog is set to 5
+ - headerRemoveEntry() didn't free the item's data -- this led to
+ a slight memory leak when installing packages
+ - implemented generic file relocations at install time
+ (use --relocate <oldpath>=<newpath>, i.e. --relocate /usr=/foo)
+ - added --badreloc flag to force RPM to relocate files which packages
+ haven't advertised as relocatable
+ - fix return code on failed uncompresses in %prep
+ - preliminary handling of bzip2 compressed files
+ - differentiates between big and little endian mips
+ - added support for "prefixes:" tag
+
+2.4.99 -> 2.4.100:
+ - fixed handling of --rebuild and --recompile
+ - fixed rpmlibbuild.a typo in Makefile
+ - fixed handling of '\' in spec files (a specific case of a more
+ general bug)
+ - change use of "export" to work with non-bash shells
+ - compress the archives. oops.
+ - fixed bug when there is no %setup
+ - added -L$(topdir)/popt to Makefile.inc
+
+2.4.12 -> 2.4.99:
+ - added many more i18n strings
+ - merged in large rewrite of build code, which includes the following
+ changes:
+ - new option --rmsource
+ - all scripts can now take -p <prog>
+ - more strict about %package placement and use of main package
+ preamble
+ - %attr(mode, user, group [, dirmode])
+ - %defattr()
+ - %defverify()
+ - Root: is depricated. Use BuildRoot: instead
+ - "nosrc" sources arn't deleted when sources are removed
+ - New tag DocDir: <dir> to set alternate doc dir (default is
+ /usr/doc)
+ - %doc should work as expected with buildroot, prefix, DocDir:
+ - all file processing is done before any packaging
+ - should work with modern patch programs (later than 2.1)
+ - %patch -z <arg> same as %patch -b <arg>
+ - %define only defines a macro if it starts a line
+ - script prog entries are now arrays (ie with arguments)
+ - standard macros: tag names, buildarch, buildos, buildarch_lc,
+ buildos_lc, PATCHn, SOURCEn, PATCHURLn, SOURCEURLn, sourcedir,
+ builddir, optflags
+ - deprecate require_distribution, require_icon, require_vendor
+ - add RPMTAG_FILEDEVICES and RPMTAG_FILEINODES to header
+ - export variables in scripts
+ - fixed tag:field bug
+ - %lang() in %files
+ - %description -l <lang>
+ - Summary(<lang>):
+ - fixed read_line() termination usage
+ - Makefile changes to shorten compiler lines
+
+2.4.11 -> 2.4.12:
+ - intialize reserved portion of lead when writing packages
+ - fixed error messages displayed when opening the database
+ fails during package installation and removal
+ - query format of the form '[A%{}]' would drop the static string
+ - fixed fix in 2.4.9 for empty packages which broke -qip on ftp URL's
+ - fixed arch/os numbers in lead
+ - added Turkish message catalog
+ - -e was running scripts even w/ --test was specified
+
+2.4.10 -> 2.4.11:
+ - HAVE_SYS_SOCKET_H was mistakingly MACHINE_SYS_SOCKET_H in
+ config.h.in
+ - \%description was trying to do %d expansion in query formats
+ - made %% work in query formats
+ - fixed bug in handling characters before array
+ - let mips build noarch packages
+ - --setperms would set wrong permissions in some cases (it was
+ following symlinks)
+
+2.4.9 -> 2.4.10:
+ - obsolete entries could cause segv's during upgrades
+ - sources now installed with uid/gid of process rather then
+ the ids used when the src rpm was created
+ - don't give an error if missingok files don't exist during remove
+ - touched ftp code to make it coexist w/ Red Hat install better
+ - use rand/srand rather then random/srandom
+ - don't build misc directory unless it's necessary
+ - empty package files should be treated the same as files
+ with bad magic, not as read errors
+ - fix bug where Prefix directory is included in file list
+ - sinix readdir() work-around
+
+2.4.8 -> 2.4.9:
+ - fix for verification on systems where a single group id
+ maps to mulitiple group names (Benedict Lofstedt)
+ - added 'make tar' rule for building a distribution tarball
+ (Horacio Rodriguez Montero)
+ - fixed serial number handling in dependencies and install
+ code
+ - make mips compatible with noarch
+ - fixed bug w/ printing string arrays in conditionals
+ - handle modern patch programs (> 2.1)
+ - handle packages w/ duplicate dependency names
+ - --noscripts didn't get handled properly for removed packages
+ - fixed handling of packages where %prereq creates users/groups
+
+2.4.7 -> 2.4.8:
+ - added noarch build compatibilities for ppc, m68k
+ - fixed some minor typos (Florian La Roche)
+ - added Obsoletes: tag, an upgrade removes packages which
+ have been obsoleted
+ - updated rpmdepUpgradePackage() to deal with obsoletes tag
+ - convertdb needed to read rpmrc
+ - fixed ugly bug in package ordering
+ - archivesize tag was incorrect for packages with hard links
+ - moved popt into a separate library
+ - directory created with %doc is now name-version (dropped
+ the release)
+ - added buildarch/buildos macros
+ - added %ghost file option
+ - updated linux.req to only find requirements for exectuable files
+
+2.4.6 -> 2.4.7:
+ - had some wrong month lengths in changelog date parsing
+ - updated fine-requires (Linux version) to add lines for shell
+ scripts (Donnie Barnes)
+ - didn't package / properly
+ - pre/post script processing had some erroneous free() calls
+ - fixed typos for HP archs in lib/rpmrc.c
+ - uname() results should go through *_canon tables before anything
+ else happens
+ - set -x in debug shells, not -xs
+
+2.4.5 -> 2.4.6:
+ - added os_canon entries for BSD/OS and NextStep
+ - replaced include of <malloc.h> with includes of <stdlib.h>
+ - fixed md5sum of source packages w/ a buildroot is used
+ - fixed bugs installing version 1 packages
+ - remove hyphens from uname() result (specifically for HP-UX)
+ - hacks to recognize architecture under parisc
+ - RPM_INSTALL_PREFIX wasn't being set properly (this should be
+ fixed now)
+ - replaced temporary file creation to be race-condition safe
+ - prerequisites may not specify versions
+
+2.4.4 -> 2.4.5:
+ - call getpwnam()/endpwent() once before a chroot(), forcing name
+ service shared libs to be loaded from outside of the root path
+ - added vesrion stamp to lib/misc.o (and librpm.a by extension)
+ - fixed config.sub, config.guess to recognize i686
+ - ARCHIVESIZE tag didn't get filled in properly, breaking progress
+ meters
+
+2.4.3 -> 2.4.4:
+ - restore working directory after installing a package w/ a chroot
+ - dump the package stack when a dependency loop is encountered
+ - when a user/group lookup fails, end*ent() and retry
+ - fixed broken --scripts argument (it was --s2)
+ - only display the packager and url in -qi output if they have defined
+ values
+ - print "(not installed)" as the install time for -p queries rather
+ then "not a number"
+ - almost completely rewrote rcfile parsing; I'm sure this will
+ break things eventually but it's much more flexible now
+ - added buildarch/buildos compatibility tables, listed values
+ in --showrc
+ - added cpio archive building code; GNU cpio is no longer used!
+ packages created w/ rpm 2.4.4 and later cannot be installed with
+ rpm 2.4 - rpm 2.4.3 however (version of RPM before 2.4 will
+ work fine, however). An "error -2 reading header" happens when
+ this is attempted
+ - removed cpiobin from rpmrc
+ - added rpmrc "provides" tag to allow easy fulfillment of
+ automatically generated dependencies
+ - look for random() in libm if it can't be found be default
+ - fixed problems in Solaris's autodeps stuff (Eric Mumpower)
+ - --setperms should work properly on directories now
+ - --justdb on install, upgrade, and erasure causes a database
+ update w/o the filesystem being touched
+ - fixed version comparison of a package w/ a serial tag against
+ a package w/o one
+ - added BuildArchitectures: tag to spec file to enable builds
+ for alternate/multiple architectures
+ - look for random() in -lucb
+ - changed the licensing terms for librpm to allow redistribution
+ under the LGPL
+ - applied man page changes from Alex deVries
+ - configure.in builds up LIBS by appending (Benedict Lofstedt)
+ - rpm2cpio reported wrong zlib error string
+ - removed \n from (none) generated by query format code
+ - queries of fssizes w/o fsnames didn't work (Till Bubeck)
+ - added --noorder option to skip package reordering (Elliot Lee)
+
+2.4.2 -> 2.4.3:
+ - implemented install time prerequisites
+ - repaired %{#TAG} query format
+ - implemented ternary operator as query expression
+ - fixed --scripts to only print information on scripts which
+ are present
+ - check symlink() return for < 0, not != 0 (Bob Tanner)
+ - uses chroot() for installs --root option
+ - archive expansion doesn't create new devices or symlinks when
+ the proper files already exist
+ - added -p to %post (etc) to specify the program which a script
+ is run through
+ - if -p is used w/ an empty script, the specified program is
+ executed directly
+ - the -p argument (or /bin/sh) is automaticall added as a prereq
+
+2.4.1 -> 2.4.2:
+ - completely rewrote queryformat code
+ - added fsnames, fssizes virtual query tags
+ - added rpmdbFindByHeader() and rpmdbFindByTag() public functions
+ - added rpmfilename tag to rpmrc to define the filename format to
+ use for binary packages (note the rpmdir is prepended to it)
+ - used pclose() instead of fclose() in -t code
+ - updated man pages
+ - changed "struct rpmdb" to "struct rpmdb_s" for C++
+ - netsharedpath entries shouldn't match partial directory names
+ anymore (a nersharedpath of /usr/lib shouldn't affect /usr/libexec)
+ - don't backup config files on netsharedpaths (take 2)
+ - added "day" query format which is like date, but doesn't print
+ any time
+ - added --changelog alias to query a packages changelog entry
+ - added mntctl() support for AIX (I think, I can't test this)
+ - fflags query type displays 's' for specfiles, 'm' for missingok
+ files, and 'n' for noreplace files
+ - implemented %config(missingok) flag in install
+ - added --allfiles flag for -i and -U, which forces all files (even
+ missingok files) to be installed
+ - implemented %config(noreplace) for the install, but it hasn't
+ been tested in any way
+ - added i18n support to headers
+ - added ppc/rs6000 differntiation for AIX
+ - all IP* from uname() is changed to just IP
+ - IP is considered the same as mips (not sgi)
+ - added IRIX64 OS, it's compatible w/ IRIX
+
+2.4 -> 2.4.1:
+ - take advantage of lchown() if it's available
+ - fixed configure script to assume chown() doesn't follow symlinks
+ if lchown() isn't available and configure is not being run as root
+ - more header file changes for AIX
+ - added :shescape query format type for strings, which prints strings
+ which will survive a single level of shell expansion
+ - fixed --setperms and --setugids to handle empty packages and
+ packages with odd filenames
+ - include <sys/time.h> before <sys/resource.h>
+ - include "miscfn.h" first in every file which needs it
+ - created noarch architecture which everything is compatible with
+ - fixed group verification (Benedict Lofstedt)
+ - don't backup config files on netsharedpaths
+ - added info on --build{arch|os} to --help and usage messages
+
+2.3.11 -> 2.4:
+ - changed RPMNLSDIR directories to and @datadir@ to better
+ conform with autoconf
+ - set RPM_INSTALL_PREFIX environment variable when running
+ verify scripts
+ - beginnings of SCO support (though I suspect it will take one
+ or two more iterations to get it right)
+ - switched to CVS and updated some Makefile rules
+ - look for gethostbyname() instead of gethostname() in -nsl
+ (this could break some things)
+ - added check for strcasecmp() in -lucb on systems which don't
+ have strcasecmp() in libc
+ - don't build -static on hpux10
+ - don't try and NLS empty strings
+ - changed index() call to strchr() in macro code
+ - include <time.h> in build/spec.c for various platforms
+ - added update-po rule to po/Makefile.in
+ - updated de.po (thanks to Karl Eichwalder)
+ - rpmFindByFile() removes trailing and duplicate /'s
+ - made many string in rpm program (though not yet in the various
+ libraries) translatable
+ - eight character user names could break -qlv
+ - requirements which begin with a leading / require files (in
+ the database!) instead of packages
+ - clean up conflictsindex during --rebuilddb
+ - get path to gzip from /usr/lib/rpmrc rather then just hoping it's
+ in the path
+ - use dbpath for error messages with include database path in
+ their text
+ - don't set owner/group if binaries installed by "make install"
+ - include <strings.h> on SCO
+ - don't use cpio when installing packages <gulp>
+ - fixed bug which affected dependencies on the Alpha
+ - made '=' work for long arguments (the switch to popt broke this)
+ - handle solaris systems better
+ - complain if critical rpmrc variables (cpiobin, gzipbin, etc) aren't
+ set anywhere
+ - allow --dbpath for --rebuilddb
+ - added check for systems whose chown() follows symlinks. If configure
+ is run as root, this should get it right, otherwise it assumes
+ chown() does not follow symlinks. You can use --enable-broken-chown
+ to force configure to think chown does indeed follow symlinks.
+ - if chown() follows symlinks, we don't chown() symlinks during cpio
+ unpacking and we don't verify the owner or group of symlinks
+ - added packager and url to default -qi output
+ - look for <sys/select.h> and use it if it's there (for AIX)
+
+2.3.10 -> 2.3.11:
+ - fixed newlines in --scripts output
+ - fix handling of source files with bad owners/groups
+
+2.3.9 -> 2.3.10:
+ - --allmatches handling in -e broke some cases
+ - new predefined macros: %SOURCEn %PATCHn %SOURCEURLn %PATCHURLn
+ - fix anomoly with %files -f <file> and %doc
+ - ignore config bit when it's set on directories (which allows
+ users to replace directories with symlinks)
+ - don't set config bit on directories
+ - strip trailing slashes from files (during build)
+ - %tags are now case sensitive (macros too)
+
+2.3.8 -> 2.3.9:
+ - reworked %setup to allow multiple -a and -b options, which
+ should noticeably ease the task of unapcking multiple tar files
+ - md5 sum's were calculated incorrectly on big endian machines
+ from 2.3.2 through 2.3.8 -- this was fixed and some hacks were
+ done to keep verification working
+ - updated README
+ - added --allmatches to allow erasing multiple versions/releases
+ of a package
+ - changed ftp URL's to use \r\n, not just \n (this should let RPM
+ work w/ some picky (but rfc compliant) ftp servers
+ - fix problem where parts at end of spec file were dropped
+ - added %config(noreplace missingok) (build-side)
+ - simple spec file macros
+ - should now process entire file list before failing
+
+2.3.7 -> 2.3.8:
+ - added -t? options to build packages from tarballs which contain
+ .spec files instead of from the .spec files directly
+ - fixed error in man page where ftp URLs are discussed
+ - don't strlen(NULL) in headerAddEntry()
+ - minor portability changes
+ - stopped building oldrpmdb.c as part of rpmlib
+ - added Makefile rule for building rpmconvert (which is almost
+ never needed) -- this isolated gdbm dependence to this target
+ - fixed checking of popt stack overflow
+ - --requires shouldn't imply -q
+ - fixed error message issued when a groupname does not exist
+ - fixed but in changelog processing which made it hang on '*' in a
+ changelog entry
+ - generate S_ISSOCK and S_ISLNK macros on systems w/o them
+ - "rpm --erase" wasn't returning proper error codes w/ package
+ removal failed
+
+2.3.6 -> 2.3.7:
+ - fixed nasty memory link in -Va
+ - configure checks for -lnsl explicitly rather then linking it
+ to -lsocket (for NCR SysVR4)
+ - configure checks for dirent.h
+ - modified glob.c to include config.h and use HAVE_DIRENT_H
+ - cleanup of LIBS/LIBPATH mess a bit more
+
+2.3.5 -> 2.3.6:
+ - -Vf uses realpath() now
+ - -Vp lets you use --ftpproxy, --ftpport
+ - changed popt format, breaking all popt alises :-(
+ - added ability to alias character arguments to popt
+ - moved --requires, --info to /usr/lib/rpmpopt
+ - RPM is more forgiving of blank user names (dumb)
+ - popt searches for aliases in the correct order now
+ - cleanup query code to handle missing uid lists better
+ - cleanup up configure.in a tad
+
+2.3.4 -> 2.3.5:
+ - %{#TAG} in query format prints the array length
+ - cleanup up protoypes in rpmlib.h
+ - let -Vp work on URLs
+ - don't set umask(0) anymore -- that confused programs which
+ link against rpmlib quite badly
+ - moved print out in "rpm -v -i" to occur after any warnings
+ to pretty up the output a bit
+ - added default optflags for powerpc
+ - run shell for post/pre scripts in debug mode with -sx for
+ some silly shells
+ - installing source packages with --root checked for the
+ sources/specs directory to exist outside of the root -- fixed
+ - modified toplevel Makefile to run dependency generation only
+ against referenced sources
+ - array size mismatches in --qf should send error to stderr
+ - tried to make the locale stuff a bit more portable (again)
+ - reworked the owner/group setting on installs to be more generic
+ (in preperation for getting rid of cpio)
+ - made verify verify owner and groups by name rather then by id -- if
+ the symbolic names aren't available use the uids
+ - cleaned up relocateFilelist() and related code thanks to
+ new header introduced in 2.3.3 -- this could break relocatable
+ packages but they seem okay
+ - fixed a bug which could cause relocatable packages to not get
+ relocated -- I think this bit some people during hard drive
+ installs of all things (Jason Salopek pestered me consistently
+ enough to keep this on the front burner for me)
+ - removed FILEUIDS and FILEGIDS from the header in the database --
+ we never used it and it jsut wasted room
+ - convert uid/gid lists in v1 headers to symbolic names
+
+2.3.3 -> 2.3.4:
+ - %changelog processing
+ - fixed broken requires/conflicts parsing for spec file
+ - vastly improved --rebuilddb's robustness
+ - fixed misplaced free() (only affected inconsistent databases)
+ - added conflicts documentation to docs/dependencies
+ - using multiple query formats has them all concatenated
+ - removed stdin based query and verify selectors
+ - installs rpmpopt in libdir
+ - moved --provides and --scripts to rpmpopt
+ - added --setperms, --setugids
+ - incorporated newer de.po from Karsten Weiss
+ - --resign/--addsign was broken in 2.3.3 from popt conversion
+
+2.3.2 -> 2.3.3:
+ - Ripped out header internals and redid them. Any compatibility
+ problems this causes are *bugs* as it should be completley
+ transparent. If this works the devil better buy some Prestone (TM).
+ - Use "cp -pr" instead of "cp -ar" for %doc expansion
+ - use <string.h> instead of (non standard) <strings.h> in some places
+ - look for non-POSIX (broken) chmod
+ - include local copies of glob/fnmatch
+ - removed getopt() check from configure.in
+ - fixed bug in ftp code which prevented proper logins to some sites
+ - switched to popt from getopt, which allows command line aliasing
+ - read initial aliases from /usr/lib/rpmpopt then /etc/popt and
+ $HOME/.popt
+ - cleanup up rdev verification (only verifies device files, checks
+ device related mode bits as well)
+ - fixed allocation of temporary paths (Eugene Kanter noticed this)
+ - made tools/dumpdb read the rpmrc so it can find the database
+ - added --nomd5 for -V and -K
+ - don't assume mkdir -p will succeed if the dir exists
+ - use RPMNLS* defines to avoid header file conflicts
+ - bunch of minor cleanups to avoid warnings on other OS's
+
+2.3.1 -> 2.3.2:
+ - fixed bug in new rpmVersionCompare() which made it worse then
+ useless (thanks to Norbert Kiesel)
+ - fixed silly message
+
+2.3 -> 2.3.1:
+ - changed --help routing to have intelligent line wrapping
+ to make i18n efforts easier
+ - NLSDIR should be used for nls catalogs, not a hardcoded path
+ - NLSDIR should be in share, not lib
+ - renamed sweedish catalog from se to sv
+ - added german catalog
+ - treat RPM_CHAR_TYPE as RPM_INT8_TYPE for queries
+ - made rpmEnsureOlder() internal to lib/install.c
+ - added rpmVersionCompare() to compare version/release/serial numbers
+ for packages -- returns like strcmp()
+ - stdout/stderr were getting closed after running a verify script
+ - relocting packages didn't work w/ the packages contained the
+ directory which was it's prefix
+
+2.2.11 -> 2.3:
+ - replaced putenv/setenv which calls which malloc() buffer -- these
+ are memory leaks, but the functions are only used between a fork()
+ and exec() so it doesn't matter
+ - created directroies are stamped with mtime from the file list
+
+2.2.10 -> 2.2.11:
+ - fixed some include file problems for FreeBSD
+ - fixed find-provides script for Linux (silly typo)
+ - -qvl didn't print out sticky bit
+ - linux.prov won't print provides info for symlinks which point
+ to libraries w/ proper sonames
+
+2.2.9 -> 2.2.10:
+ - changed how installArchive() handles running out of gzread()
+ bytes while the child is still alive
+ - changed tag for Alpha's to "alpha" from "axp" <gulp>
+ - made ./configure look for --quiet support in cpio
+ - netsharedPath's were having mkdir()'s done on them and had
+ bad interactions with rooted directories
+ - made -qp accept '-' to query the package on stdin
+ - dependency checking was broken when no database was being used
+ - don't *ever* let cpio make directories -- we do a better job
+ (esp because we don't kill symlinks!)
+ - plugged memory leaks in upgrade (again thanks to mpr) -- install,
+ erase, upgrade, query, and verify all seem to be leakproof
+ - use select() rather than busy waiting in cpio_gzip()
+ - use half as much temp space during package assembly
+ - fail if spec file check fails
+ - changed canonical name for 68k to m68k (sorry)
+ - integrated FreeBSD changes from Jared Mauch
+ - integrated Irix changes from Hermann Lauer
+ - i18n support can be disabled w/ configure by --disable-nls
+ (thanks to Remy Card)
+ - integrated more AmigaOS patches, played with configure some
+ more to allow cross compiling (Kristof Depraetere)
+ - cleanups to rpm2cpio (closing the gz stream) (Elliot Lee)
+ - made find-provides return filename for libs w/ no soname
+
+2.2.8 -> 2.2.9:
+ - fixed typo in default rpmrc
+ - made getBooleanVar() a bit better
+ - added triggers to package builds
+ - tagged spec file in source package file list
+ - added %verifyscript (controlled by --noscript, -v flags)
+ - changed pkgReadHeader() mechanism to be more generic
+ - added find-provides for Solaris, made find-provides setup
+ more generic (w/ configure.in picking the right one)
+ - fix -Q
+ - The Great Renaming
+ - use external OS specific script to generate requires lines
+ (should work with ld.so 1.8.x) (find-requries)
+
+2.2.7 -> 2.2.8:
+ - added --ftpproxy, --ftpport (and wrote about them in rpm.8)
+ - added --nodeps to man page
+ - added --showrc to man page
+ - added conflict checking (use conflicts tag, which looks
+ just like the requires tag)
+ - fixed RPM's return code when package removal fails
+ - cleaned up lib/install.c a bit for readability
+ - plugged a bunch of memory leaks thanks to mpr -- install,
+ uninstall, verify, and query all seem clean now
+ - added support for trees shared over a network via netsharedpath
+ in rpmrc
+ - don't exit when there is an unknown option in an rpmrc, just
+ give an error and continue
+ - tried once again to get things working properly with 2.1's
+ write behavior
+ - added -E option for %patch
+ - added UltraSPARC support to lib-rpmrc
+ - moved default topdir and optflags settings to lib-rpmrc from
+ /etc/rpmrc
+ - removed /etc/rpmrc from standard distribution
+ - use separate chgrp/chown commands in %setup macro
+ - kill(2) arguments were backwards in lib/install.c
+ - fileFile logging needed stdio to handle NULL args to %s
+ - default docdir (for %doc macro) set in lib-rpmrc rather then
+ hardcoded
+ - removed some of the \n from args to error() [though many are
+ still left]
+ - uninstall should fail if the preuninstall script fails
+ - --root works with --initdb now
+
+2.2.6 -> 2.2.7:
+ - applied lots of portability patches
+ - builds on Solaris machines now!
+ - will build w/o i18n support if GNU gettext isn't installed
+ - added inet_aton, setenv functions for libmisc
+ - added Sun4c, Sun4m architectures
+ - use vfork() if fork() doesn't exist (for AmigaOS)
+ - look for GNU cpio, complain if it doesn't exist at build time
+ - put path for GNU cpio in /usr/lib/librpmrc
+ - install rpm.shared if rpm wasn't built (for Solaris)
+ - readHeader() in librpm.a should work on sockets (which may
+ return partial reads)
+ - package file query (-q -p) accepts ftp:// style URL's
+ - if gzread returns 0 bytes (at EOF), don't call write w/ 0 byte
+ argument as it's behviour isn't portable
+ - fixed -Vp behavior (doesn't seg fault w/ packages have dependencies)
+
+2.2.5 -> 2.2.6:
+ - added --rebuilddb to rebuild database, updated man page
+ - fix fd leak in md5sum
+ - fixed group cache bug
+
+2.2.4 -> 2.2.5:
+ - if rename() for moving .spec file from SOURCES to SPECS fails,
+ try copying it instead
+ - -h and -v work for source package >= V2
+ - -h output is much smoother now
+ - new AutoReqProv: tag in spec file can disable automatic
+ require/provide generation
+ - fixed md5sum problem on big endian machines in a way that's
+ mostly backwards compatible; this hack will be removed someday
+ - added :fflags tag
+ - fixed a couple of minor memory leaks in lib/install.c
+ - --test for building
+
+2.2.3 -> 2.2.4:
+ - only remove docdir if %doc occurs
+ - allow -R to %patch
+ - moved to use GNU autoconf, though it probably isn't perfect yet
+ (thanks Kristof Depraetere)
+ - spec file sanity: no - chars in version or release,
+ must be a regular file :-)
+ - version specifications for requirements can use "-<release number>"
+ - default lib path, tmp path, topdir, and /usr/lib/rpmrc get set
+ by configure script relative to --prefix
+
+2.2.2 -> 2.2.3:
+ - fixed script file md5 checking when files are in a root
+ - implemented proper strdup/free logic for dependency conflict
+ lists
+ - strip leading directories from ldd output
+ - fix non-null-terminated readlink() result
+ - fixed sscanf() in ftp code to use proper types
+
+2.2.1 -> 2.2.2:
+ - added functionality to rpmlib to suggest resolutions for
+ dependency problems
+ - fix stupid allocation problem in exclude/exclusive stuff
+ - fix nasty bug where pointers in to the header were getting
+ stale after some realloc()s in addEntry()
+ - ignore OS tag for v2 packages -- it was wrong anyway
+ - match shared libs on ".so" rather than ".so."
+ - skip blanks from objdump for auto-provide
+ - if objdump gets us _end, provide the file name
+ - do not ldd non-regular files
+ - do not pass leading "/" to ldd
+ - fix ExcludeOs: and ExclusiveOs:
+ - -V verifies dependencies, can be controlled with --nodeps
+ and --nofiles
+ - added information on --nodeps to usage messages
+ - implement --timecheck and rpmrc timecheck:
+ - implement -bl
+ - catch duplicate files in file lists
+ - some random sanity checking on the file list
+
+2.2 -> 2.2.1:
+ - made rpmRemovePackage() print message in verbose mode
+ - added support for ftp://user:pass@machine.org/ URL's
+ during installation - the password will be prompted for
+ if only the user is given, and anonymous ftp will be used
+ it both user and password are omitted (as before)
+ - Remove Exclusive: Exclude:
+ Replace with: ExclusiveArch: ExclusiveOs:
+ ExcludeArch: ExcludeOs:
+ - fixed dependency cheking for packages that are installed
+ at the same time
+ - fixed version number dependency checking
+ - fixed problem installing v1 source packages (thanks to
+ Nikita Borisov)
+ - fixed minor spelling/spacing problems (Nikita Borisov)
+ - assume all v1 packages were made for Linux so OS check works
+ - began to implement proxyftp, though it doesn't work yet
+ - fixed spacing when reporting dependency conflicts
+ - fixed bug where a long name (uname()) was mapping to itself
+
+2.1.2 -> 2.2:
+ - don't fail, and do report, if -K can't find a PGP key
+ - handle file names with quotes and spaces when passed to ldd
+ (still can't have spaces in %files)
+ - do not allow Buildprefix: in sub packages
+ - removed require_group from rpmrc -- groups are always required
+ - removed arch_sensitive from rpmrc -- always on
+ - removed docdir from rpmrc -- always /usr/doc
+ - fixed nasty bug in installing packages with large filelists
+ - made -R work
+ - --provides and --requries don't print anything if no information
+ is present (rather then (none) )
+ - -qi prints Summary now
+ - changed Buildprefix: -> Buildroot: (spec file, rpmrc)
+ --buildprefix -> --buildroot (command line)
+ RPM_BUILD_PREFIX -> RPM_BUILD_ROOT
+ (%prep, %build, %install, %clean)
+ sorry :-)
+ - allow Prefix: for sub-packages
+ - allow packager: in rpmrc
+ - --arch and --os are now --buildarch and --buildos
+ - magic arch/os handling through arch_canon and os_canon
+ see /usr/lib/rpmrc (in short: uname short_name num)
+ - removed build_arch: from rpmrc
+ Replacing it is buildarchtranslate: and buildostranslate:
+ to allow building with arch/os other than what uname() returns.
+ Can still be overriden with --buildarch and --buildos
+ - rpmrc keywords are now case-insensitive
+ - check os at install time
+ - check return code from gzread() during installs
+ - implemented os_compat
+ - added arch_compat and os_compat information to --showrc (the
+ changes needed to do this removed any lingering questions about
+ the efficiency of the compat lookups for large tables or tables
+ with loops -- it should all work fine)
+ - made -u (--uninstall) exit with an error and not do anything
+ - added --ignoreos
+ - fixed error message given when a file is missing
+ - fixed hashing when multiple packages are being modified
+ - changed man page for readability (thanks to Joseph L. Hartmann, Jr)
+
+2.1.1 -> 2.1.2:
+ - fixed error message for unrelocatable packages
+ - automatic shared lib provides now work with buildprefix
+ - fixed dependency checking during upgrades to work if the
+ package wasn't previously installed
+ - clean up temp file after signature check
+ - dependencies weren't looking through packages that were
+ being installed at the same time quite right
+
+2.1 -> 2.1.1:
+ - fixed -qi query format
+
+2.0.11 -> 2.1:
+ - added --requires, --whatrequires, --provides and
+ --whatprovides queries
+ - using a string array tag in a queryformat results in every
+ item in the string being printed out with spaces in between
+ (though this behaviour will probably go away shortly)
+ - all packages are ftp'd before any are installed (required to
+ do proper dependency checking)
+ - if only source packages are being installed, the database is
+ never opened
+ - automatic shared library require/provides tags generated
+ - added --nodeps flag for install and uninstall
+ - added dependency checking for installs and uninstalls
+ - misc fixes to compile with glibc
+ - use PGPPATH if set (and no pgp_path: in rpmrc)
+ - remove pgp_pubring, pgp_secring stuff
+ - new extensible signature
+ - signature section supports multiple signatures
+ - --addsign to add a signature to a package
+ - PGP key no longer limited to 1024 bits
+ - always do at least an MD5 "signature"
+ as a result, -K will always tell you something
+ - signatures now include a simple "header+archive size" check
+ just calling readSignature() checks this
+ - --nopgp (with -K) to skip PGP check, just do MD5
+ - allow '#' comments in preamble and %files section
+ - fixed -qsv to print both the states and the file information
+ - added --dump option to query to print all file attributes
+ - installs with --root use the /etc/passwd and /etc/group from
+ the target directory
+ - added --initdb to aid in database initialization
+ - --queryformat can print items of type INT8
+ - "sourceless" packages with nosource: and nopatch:
+ - [] now allows interation through query formats
+ - '-' flag for query tags removed
+ - :date and :perms supported as query format specifiers
+ - new rpmrc entries "arch" and "os" to override
+ - --arch and --os on the command line to override
+ - arch and os are now strings in the package header
+ - added arch_compat handling in /etc/rpmrc
+ - added build_arch to /etc/rpmrc
+ - support arch as string
+ - added --ignorearch option
+ - Prefix: in spec file to specify default installation prefix
+ - rpmrc and command line may be used to override the path
+ used for the rpm database
+ - relocatable packages get installed properly
+ - added support for --prefix and RPM_INSTALL_PREFIX environemtn
+ variable
+ - added dependency checking for version numbers
+ - added correct dependency checking for upgrades
+ - added :depflags query format flag
+ - changes --provides, --requires, and --scripts queries to use
+ queryFormats
+
+2.0.10 -> 2.0.11:
+ - fixed chmod(symlink) bug (since 2.0.9)
+
+2.0.9 -> 2.0.10:
+ - fixed the fix to rpm -q <num> bug
+ to query by number you now need --querybynumber
+ - made arch_sensitive on by default
+ - handle # comments in preamble
+ - don't barf if we can't canonicalize the hostname during builds
+ - fixed --verify with --root
+
+2.0.8 -> 2.0.9:
+ - %files -f <file>
+ - prelim Require/Provide handling
+ - prelim strict checking of spec file
+ - removed some bash-isms
+ - fixed globbing/root bug
+ - fixed rpm -q <num> bug
+ - fixed ftw() related bug where symlinks were being
+ followed in %files rather than just being noted!!
+ - pass "upgrade" arg to pre/post scripts when upgrading
+ - use PATH to find cpio when installing
+ - fixed rpm.magic, added sun4, mips, 68k, sgi, sunos, solaris
+ - added %attr(mode owner group) feature to file list
+ - fixed dumb %verify() parse bug
+
+2.0.7 -> 2.0.8:
+ - explicitly turn off ASCII armor when running PGP
+ - fixed --noscripts logic, which was on by default and
+ off if you specified it!
+ - uses a temp file to pass filenames to cpio in case when
+ their are more then 500 filenames in a package
+ - added --rcfile
+ - fixed problem with $HOME/.rcfile not being read
+ - undocumented --search, --where, --keep-temps which
+ will probably won't be implemented in RPM 2.x anyway
+
+2.0.6 -> 2.0.7:
+ - builds now set umask 022 for all scripts
+ - queries relative paths correctly (thanks to Johnie Stafford)
+ - fixed error codes for failed installs
+ - don't add NULL entry to group index for packages that don't
+ have group information, add it to the "Unknown" group instead
+ - added --scripts query option
+ - added --noscripts for installing and uninstall without using
+ the pre/post scripts
+ - "rpm -qd" and "rpm -qc" work properly now (they didn't imply
+ -l before)
+
+2.0.5 -> 2.0.6:
+ - internal changes to error messages
+
+2.0.4 -> 2.0.5:
+ - added support for generic querying
+ - added --querytags option
+ - updated man page for above two
+ - short-circuit got added before 2.0.5, but I don't know when
+ - query and installs should now return 0 on success and nonzero
+ otherwise (rpm -i should return the number of packages that
+ failed actually)
+ - made rpm -qa fail if extra arguments are passed to it
+
+2.0.3 -> 2.0.4:
+ - added support for PowerPC, and OSF mklinux ports
+ - added --resign
+ - added --recompile
+ - added verbose error messages from Tyson Sawyer
+ - rpmconvert won't overwrite an existing database
+ - won't core dump querying old format source packages
+ - freed minor memory leak
+ - more descriptive error messages during build
+ - added support for not installing documentation
+
+2.0.2 -> 2.0.3:
+ - added support for 686, 786, 886, 986
+
+2.0.1 -> 2.0.2:
+ - fixed ftp.c to return an error code when select timeouts
+ - added basic NLS support, along with a Sweedish message catalog
+ (thanks to Michael Nyquist)
+
+2.0 -> 2.0.1:
+ - hashing and percentages no longer SIGFPE on 0 byte packages
+ - when an ftp fails, install.c no longer tries to install the package
+ - uses /var/tmp rather then /usr/tmp during for ftp space
+ - added debugging messages to ftp.c
+ - fixed some mistakes in the PGP section of the man page
+ - added mdfile prototype to rpmlib.h - the Python module wants this
+ - fixed struct oldrpmlead to align properly on the alpha
+
+2.0 - everything done :-)
+
+2.0b -> 2.0c:
+ - an incredible number of changes - I won't bother trying to
+ list them
+
+2.0a -> 2.0b:
+ - moved build stuff to main rpm command, though --rebuild is still
+ not supported
+ - install should work, although replaced files are not marked as
+ replaced
+ - %doc macro fixed
+ - --percent, --hash work for installs
+ - converted databases and packages get the file list in the correct
+ order now
+ - none of this is well tested
+ - rpms are output to proper dirs (which are always arch sensitive)
+ - basic rpmrc functions are implemented, full parsing is present
+ - changed error messages for missing files to include full path
+ - fixed detection of Alpha's
+
+1.4.6 -> 2.0a:
+ - completely rewritten in C
+ - verification missing
+ - build functionality not in main rpm, in rpmbuild instead
+ (this will be corrected)
+ - an awful lot is still missing - this is an ALPHA release
+
+1.4.5 -> 1.4.6:
+ - fixed rpmq problem with packages w/o groups (old RPM's would do this)
+ - fixed uninstalling with --root
+
+1.4.4 -> 1.4.5:
+ - added support for mips processors
+ - added support for osf1 and irix os's
+
+1.4.3 -> 1.4.4:
+ - fixed bug in arch detection code which caused i386 failure
+
+1.4.2 -> 1.4.3:
+ - added tokens for SPARC, MIPS, PowerPC, and 680x0 architectures
+ - fixed sparc arch, added arch sanity check
+
+1.4.1 -> 1.4.2:
+ - added --root to man page, usage, and help messages
+ - added a " " to the "Creating directory" debug message in install.pl
+ - make --rebuild fail on binary packages
+ - don't output prep/build/install sections if there aren't any
+
+1.4 -> 1.4.1:
+ - fixed man page
+ - updated corruption messages to not mention --rebuild
+ - added RPM_PACKAGE_VERSION and RPM_PACKAGE_RELEASE variables
+ at build time
+ - no longer allows installing binary packages across architectures
+ - fixed handling of symlinks marked as config files
+
+1.3.2 -> 1.4:
+ - make -v the default when using -b and --rebuild
+ - added %postbuild as an alias for %clean
+ - added gendiff
+ - added groups file installed in /usr/lib/rhs/rpm
+ - made usage message different and more concise then the --help message
+ - added --version option
+ - updated man page
+ - changed C build tree for concurrent building on multiple architectures
+
+1.3.1 -> 1.3.2:
+ - add -b option to %patch
+ - fixed install/chroot temp file deleting
+
+1.3 -> 1.3.1:
+ - fixed bug when doing md5 of erased config file during rpm -u
+ - fixed spec file searching
+
+1.2 -> 1.3:
+ - added --search and --where options
+ - multiarchitecture support
+ - added --rebuild option
+ - started C rewrite - rpmq (query options only)
+
+1.1 -> 1.2:
+ - preuninstalls weren't getting handled properly
+ - Alpha architecture is now recognized and builds are allowed
+ - the database open is checked for success before continuing
+ - rpm -b? checks the SPEC files for package names given as args