332 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			332 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
xbps-0.8.0 (???):
 | 
						|
 | 
						|
 * xbps-{bin,repo}(8): -c (cachedir) argument now is an absolute path and
 | 
						|
   not relative to the root directory.
 | 
						|
 | 
						|
 * Fixed finally when a package should replace an installed package, but
 | 
						|
   at the same time the package to be replaced also needs to be updated
 | 
						|
   in the transaction. A real example:
 | 
						|
 | 
						|
	- sg3_utils-1.28 is currently installed.
 | 
						|
	- Installed package udisks-1.0.2_1 depends on sg3_utils-1.28.
 | 
						|
	- sg3_utils-1.28 has been splitted into libsgutils for 1.31,
 | 
						|
	  and libsgutils-1.31 has "replaces=sg3_utils<1.31".
 | 
						|
	- udisks-1.0.2_2 depends on libsgutils-1.31.
 | 
						|
 | 
						|
   So now the old sg3_utils-1.28 package will be marked in its transaction
 | 
						|
   object as "remove" and the new sg3_utils-1.31 package as "update".
 | 
						|
   Therefore both packages (sg3_utils old/new) will be in the transaction
 | 
						|
   but one will be removed and the other one updated.
 | 
						|
 | 
						|
 * Fixed a bug that made all registered repositories to fail when the first
 | 
						|
   one couldn't be internalized in xbps_repository_pool_init().
 | 
						|
 | 
						|
 * Added the concept of package properties in the API. At this moment
 | 
						|
   only one property is fully working, "virtual". When xbps-bin(8)
 | 
						|
   sets this property for a package, its virtual package list will be
 | 
						|
   set in the XBPS_REGPKGDB plist in a package dictionary and the matching
 | 
						|
   logic will always prefer its virtual packages over the real ones.
 | 
						|
   You can do wonderful things with this, like always using development
 | 
						|
   package versions, or simply customize what packages you want to
 | 
						|
   install rather than the default ones. As a real example, you can now
 | 
						|
   use the 'xbps-devel' package rather than the stable package version
 | 
						|
   'xbps' before installing the system and package dependencies will
 | 
						|
   still be resolved:
 | 
						|
 | 
						|
   "$ xbps-bin set-prop virtual xbps-devel"
 | 
						|
   "$ xbps-bin install xbps-base-system"
 | 
						|
 | 
						|
   Only packages that have the "provides" object are valid for the
 | 
						|
   "virtual" property.
 | 
						|
 | 
						|
 * Moved the "replaces" handling logic into the API. But instead of
 | 
						|
   removing any package, the packages that should be replaced are
 | 
						|
   added into the transaction dictionary and marked as "remove".
 | 
						|
   The frontend is responsible to install, update, configure and remove
 | 
						|
   all packages by using the properties set in the transaction dictionary.
 | 
						|
 | 
						|
 * xbps-dgraph: now parses the "provides" object in the package properties
 | 
						|
   metadata plist file for packages providing virtual packages.
 | 
						|
 | 
						|
 * xbps-bin(8): added -R option for the "remove" target, to recursively
 | 
						|
   remove packages that were installed automatically by the package(s)
 | 
						|
   that we want to remove, and no other package currently depends on.
 | 
						|
   This is much like the remove and autoremove targets together, i.e
 | 
						|
   "xbps-bin -yp remove foo && xbps-bin -yp autoremove".
 | 
						|
 | 
						|
 * xbps-bin(8): added -D option to only show the URLs to download the binary
 | 
						|
   packages required by the "install", "update" and "autoupdate" targets.
 | 
						|
 | 
						|
 * xbps-bin(8): make the list target (without arguments) only show
 | 
						|
   packages that are fully installed. Previously packages in unpacked
 | 
						|
   state were also shown.
 | 
						|
 | 
						|
 * Added support for virtual packages. A virtual package is one that doesn't
 | 
						|
   exist in the repository, but other packages can provide it. A new array
 | 
						|
   in the package properties dictionary has been added to specify which
 | 
						|
   virtual packages the package supports. As an example, the `rsyslog'
 | 
						|
   package provides the virtual package `syslog-daemon-0'. Other packages
 | 
						|
   can depend in `syslog-daemon>=0' and `rsyslog' will satisfy the dependency.
 | 
						|
 | 
						|
 * Merged the `progress_callback' branch that makes possible to specify a
 | 
						|
   function callback to update progress while unpacking binary packages
 | 
						|
   and while fetching files. xbps-bin(8) now reports a percentage while
 | 
						|
   unpacking package files if -v not set, otherwise it will list the
 | 
						|
   current extracted file with its size in bytes.
 | 
						|
 | 
						|
 * Improved package dependency resolution in repositories by using a new
 | 
						|
   function, xbps_repository_pool_find_pkg() that returns a package dictionary
 | 
						|
   found in the first repository registered in the pool. It can also be used
 | 
						|
   to find the newest version found in all registered repositories.
 | 
						|
 | 
						|
 * Improved package dependency sorting algorithm that uses less memory,
 | 
						|
   it is 60% faster approximately and as bonus sorts all packages in the way
 | 
						|
   they should be (previously the sorting was a bit different for packages
 | 
						|
   with no run-time dependencies).
 | 
						|
 | 
						|
 * Many structural changes in the API. Made some stuff private and changed
 | 
						|
   some function arguments in the API, the ABI is not compatible anymore with
 | 
						|
   previous versions... anyway you shouldn't be using libxbps just yet.
 | 
						|
   The API documentation has been modified to stay in sync with reality.
 | 
						|
 | 
						|
xbps-0.7.3 (2011-01-16):
 | 
						|
 | 
						|
 * Fixed a bug that made libxbps fail to detect properly configuration files.
 | 
						|
   This made all updates in configuration files to be lost.
 | 
						|
 | 
						|
 * It is now possible to properly build against an external portable proplib
 | 
						|
   (with pkg-config support) and libfetch.
 | 
						|
 | 
						|
 * Enabled a bunch of compiler warnings in the configure script (if supported
 | 
						|
   by the compiler), and made symbol visibility dependent of configure tests.
 | 
						|
 | 
						|
 * Added --silent argument to the configure script, hiding compilation
 | 
						|
   details in the build process (disabled by default).
 | 
						|
 | 
						|
xbps-0.7.2 (2010-12-28):
 | 
						|
 | 
						|
 * Fixed some memleaks in libxbps and its clients, found by valgrind.
 | 
						|
 | 
						|
xbps-0.7.1 (2010-12-23):
 | 
						|
 | 
						|
 * xbps-dgraph: fixed small build error on x86 shown in buildbot tests.
 | 
						|
 | 
						|
 * libxbps: xbps_repository_pool_init(): don't loop forever if repository
 | 
						|
   pkg-index.plist files cannot be internalized.
 | 
						|
 | 
						|
 * libxbps: xbps_fetch_file(): set a 30 seconds timeout for transfers.
 | 
						|
 | 
						|
 * xbps-repo(8): fixed the 'genindex' target for the API changes in 0.7.0.
 | 
						|
 | 
						|
 * xbps-uhelper: fixed the 'unregister' target for the API changes in 0.7.0.
 | 
						|
 | 
						|
xbps-0.7.0 (2010-12-15):
 | 
						|
 
 | 
						|
 * xbps-repo(8): implemented the 'find-files' target to print which packages
 | 
						|
   own a file, link, directory, etc. Analogue to the one implemented in
 | 
						|
   xbps-bin(8). Works for local and remote repository, fetching info on-the-fly.
 | 
						|
 | 
						|
 * Fixed a typo in the configure script that broke detection of strlcat(),
 | 
						|
   reported and patch provided by Min Sik Kim in issue 2.
 | 
						|
 | 
						|
 * xbps-bin(8): added -F flag for the remove target. Unless it's set,
 | 
						|
   packages that are dependencies of other installed packages won't be removed.
 | 
						|
   This flag overrides this behaviour and forces the package removal.
 | 
						|
 | 
						|
 * xbps-{bin,repo}(8): indent uniformly all lines while listing packages
 | 
						|
   in xbps-bin or while searching for packages in xbps-repo.
 | 
						|
 | 
						|
 * xbps-repo(8): while searching for packages also try to find strings
 | 
						|
   in the short description object.
 | 
						|
 
 | 
						|
 * xbps-{bin,repo}(8): added -d arg to enable debugging output to stderr.
 | 
						|
 | 
						|
 * While updating packages, obsolete directories are also removed when
 | 
						|
   necessary. This helped to remove some empty dirs for python 2.6 > 2.7
 | 
						|
   update, just to mention a real example.
 | 
						|
 | 
						|
 * Cleaned up the API. Still not finished and there's a long way to have this
 | 
						|
   finished and ready for public consumption.
 | 
						|
 
 | 
						|
 * xbps-dgraph: new utility to generate graphviz' dot(1) graphs for package
 | 
						|
   metadata properties, such as dependencies, reverse dependencies, etc.
 | 
						|
   Extracts the info from installed package metadata plist files.
 | 
						|
 | 
						|
 * Performance improvements in libxbps and all utilities, by avoiding
 | 
						|
   unnecessary access(2) and chdir(2) calls while executing the
 | 
						|
   INSTALL/REMOVE scripts at pre/post (de)install time.
 | 
						|
 | 
						|
 * Fixed some memleaks on libxbps found while working on the xbps-dgraph
 | 
						|
   utility.
 | 
						|
 | 
						|
xbps-0.6.2 (2010-10-31):
 | 
						|
 | 
						|
 * libxbps: xbps_repository_unregister(): in remote repositories, also
 | 
						|
   remove the pkg index file and its directory.
 | 
						|
 | 
						|
 * libxbps: xbps_get_pkg_index_plist(): fixed a memleak.
 | 
						|
 | 
						|
 * xbps-bin(8): modify the 'list' target to accept an optional argument to
 | 
						|
   list packages in the specified state, so that you can list packages that
 | 
						|
   need to be purged, configured and broken (will be used in the future).
 | 
						|
 | 
						|
 * xbps-bin(8): added a new target 'find-files' to find which installed
 | 
						|
   package(s) own a file. Exact matches "/bin/mount" or patterns
 | 
						|
   "/usr/lib/libb[ao]b\*" can be specified.
 | 
						|
 | 
						|
 * When updating a package and removing obsolete files, don't forget to
 | 
						|
   remove those directories if they were empty.
 | 
						|
 | 
						|
xbps-0.6.1 (2010-10-23):
 | 
						|
 | 
						|
 * When replacing a package that is going to be updated in the transaction
 | 
						|
   do not remove it, just overwrite its files and continue. The updated
 | 
						|
   package will find that old files didn't match the SHA256 hash and will
 | 
						|
   skip them. This solves the issue of new package updates requiring new
 | 
						|
   dependencies with files that were previously stored in the old version.
 | 
						|
   For example gtk+-2.20 containing gdk-pixbuf, and gtk+-2.22 requiring
 | 
						|
   gdk-pixbuf externally.
 | 
						|
 | 
						|
xbps-0.6.0 (2010-06-03):
 | 
						|
 | 
						|
 * Synced libfetch code with NetBSD pkgsrc, updated to 2.31.
 | 
						|
 | 
						|
 * libxbps: improved xbps_get_file_hash() to mmap(2) rather than read(2)
 | 
						|
   the file we have to process. With mmap'ed files the hash can be
 | 
						|
   processed 5x faster than before, or even more in some cases.
 | 
						|
 | 
						|
 * libxbps: switch to OpenSSL SHA256 implementation and remove the one
 | 
						|
   previously used. It's faster and OpenSSL is required for libfetch so
 | 
						|
   there is not point in using it.
 | 
						|
 | 
						|
 * Added strlcpy() and strlcat() from OpenBSD. Use them if they weren't
 | 
						|
   found by the configure script on the system.
 | 
						|
 | 
						|
 * Added a configure script that emulates GNU autoconf but simplified, to
 | 
						|
   simplify customization for build options, flags, etc.
 | 
						|
 | 
						|
xbps-0.5.2.2 (2010-05-18):
 | 
						|
 | 
						|
 * libxbps: do not forget to reset a variable to 0 when removing obsolete files
 | 
						|
   that are unexistent or its hash didn't match.
 | 
						|
 | 
						|
xbps-0.5.2.1 (2010-05-18):
 | 
						|
 | 
						|
 * Due to human error, last fix in 0.5.2 was completely wrong and the
 | 
						|
   INSTALL/REMOVE scripts were simply empty so ENOENT was returned, clearly
 | 
						|
   this is expected and shouldn't be ignored.
 | 
						|
 | 
						|
xbps-0.5.2 (2010-05-18):
 | 
						|
 | 
						|
 * libxbps: while running INSTALL/REMOVE scripts, do not fail if a script
 | 
						|
   returns ENOENT but the script exists; that means the script did not match
 | 
						|
   the expected action on its switch statement and the fact can be simply
 | 
						|
   ignored.
 | 
						|
 | 
						|
 * libxbps: while upgrading packages and searching for obsolete files,
 | 
						|
   do not remove the files that did not match previous SHA256 hash. Also,
 | 
						|
   only remove obsolete dangling symlinks.
 | 
						|
 | 
						|
 * xbps-repo(8): fixed the 'genindex' target to not return error if any
 | 
						|
   package is already registered in the index.
 | 
						|
 | 
						|
 * xbps-repo(8): improved the 'search' target to also match substrings in
 | 
						|
   package/version tuples.
 | 
						|
 | 
						|
xbps-0.5.1 (2010-05-12):
 | 
						|
 | 
						|
 * Fixed build issues in RHEL5, Ubuntu and others distributions.
 | 
						|
 | 
						|
 * libxbps: changed the epoch component in version strings to the ':'
 | 
						|
   character to be differentiated from '-' in pkgname, and '_' in revision.
 | 
						|
 | 
						|
 * xbps-bin(8): added a new target 'show-orphans' that list all package
 | 
						|
   orphans currently installed.
 | 
						|
 | 
						|
 * Removed asciidoc build dependency, simply use the troff manpages.
 | 
						|
 | 
						|
xbps-0.5.0 (2010-05-01):
 | 
						|
 | 
						|
 * xbps-repo(8): fixed the 'search' target to also match patterns against
 | 
						|
   its description, and not only from the package/version tuple.
 | 
						|
 | 
						|
 * Cleaned up the code by using the LLVM's clang static analyzer, found
 | 
						|
   two possible NULL pointer dereferences in error branches and dead code.
 | 
						|
 | 
						|
 * xbps-bin(8): added new flag '-p' for the 'remove' and 'autoremove'
 | 
						|
   targets, to also purge the package(s) after successful removal.
 | 
						|
 | 
						|
 * xbps-repo(8): print a warning when registering a repository that has
 | 
						|
   been already added previously.
 | 
						|
 | 
						|
 * Add proplib-0.4.1 source and use it in XBPS. This is to avoid
 | 
						|
   an external dependency, so that we depend on the features of the
 | 
						|
   internal library. This also means that proplib is not required anymore.
 | 
						|
 | 
						|
 * Added support to read/write gzip compressed plists by default, thanks
 | 
						|
   to proplib-0.4 that gained new functionality.
 | 
						|
 | 
						|
xbps-0.4.1 (2010-02-28):
 | 
						|
 | 
						|
 * xbps-bin(8): fixed the install target to work with package names containing
 | 
						|
   multiple '-', thus resulting in incorrect package name.
 | 
						|
   [ https://bugs.launchpad.net/bugs/528212 ]
 | 
						|
 | 
						|
 * xbps-bin(8): fixed printing of incorrect message for packages containing
 | 
						|
   the 'preserve' object in its props dictionary.
 | 
						|
   [ https://bugs.launchpad.net/xbps/bugs/528216 ]
 | 
						|
 | 
						|
xbps-0.4 (2010-02-01):
 | 
						|
 
 | 
						|
 * libxbps, xbps-bin(8), xbps-repo(8): redirect all warning and error
 | 
						|
   messages to stderr.
 | 
						|
 | 
						|
 * libxbps: changes xbps_yesno() and xbps_noyes() to only accept "yes" or "no"
 | 
						|
   (case insensitive) answers rather than 'y' or 'n', to avoid mistaken answers.
 | 
						|
 | 
						|
 * xbps-repo(8): added support to the 'search' target to find exact matches,
 | 
						|
   i.e 'xbps-repo search bash'.
 | 
						|
 | 
						|
 * xbps-bin(8) added support to the 'install', 'remove' and 'update'
 | 
						|
   targets to accept any arbitrary number of package names, i.e
 | 
						|
   "xbps-bin install foo blah baz".
 | 
						|
   See https://blueprints.launchpad.net/xbps/+spec/arbitrary-pkgname-args
 | 
						|
 | 
						|
 * xbps-bin(8): added support to the 'install' and 'update' targets to
 | 
						|
   accept package patterns, i.e "xbps-bin install 'foo<=3.0'.
 | 
						|
   See https://blueprints.launchpad.net/xbps/+spec/install-pkg-by-pkgmatch
 | 
						|
 | 
						|
 * libxbps: fixed some bugs while upgrading essential packages when new package
 | 
						|
   didn't have an INSTALL or REMOVE script and old package had them.
 | 
						|
 | 
						|
 * libxbps: fixed some memleaks found by cppcheck and valgrind.
 | 
						|
 | 
						|
 * Makefiles reworked to support parallel builds.
 | 
						|
 | 
						|
 * libxbps: many exported functions to the API are now internal and not
 | 
						|
   exported, because they were only used internally. The API is still not
 | 
						|
   finished and may be changed without notice.
 | 
						|
 | 
						|
 * libxbps: be more strict finding required metadata plist files in binary
 | 
						|
   packages. Now the code checks for the two required plist files to be at
 | 
						|
   index <= 4 and doesn't write any entry to storage until they aren't found.
 | 
						|
 | 
						|
 * Added doxygen documentation for the API, enabled with BUILD_API_DOCS.
 | 
						|
 | 
						|
 * libxbps: synced libfetch code with NetBSD's pkgsrc, updated to 2.30.
 | 
						|
 | 
						|
 * xbps-bin(8): when downloading binary packages, it now sets default
 | 
						|
   libfetch cache connection limits, thus reusing connections to the same host.
 | 
						|
 | 
						|
 * xbps-uhelper: the 'fetch' target now accepts an arbitrary number of
 | 
						|
   arguments, and sets default libfetch cache connection limits.
 | 
						|
 | 
						|
 * xbps-bin(8): enable -f option for the 'purge' and 'remove' targets.
 | 
						|
   If set, files will be removed even if its hash doesn't match for the
 | 
						|
   'remove' target, and configuration files for the 'purge' target.
 | 
						|
 | 
						|
 * libxbps: if updating a package, always overwrite files while unpacking;
 | 
						|
   compare old and new files to remove obsoletes if necessary. This makes
 | 
						|
   the "essential" object in package dictionary unnecessary, because all
 | 
						|
   packages are treated as they were essential.
 |