1 News (mainly features/major bug fixes)
6 * New-style virtuals are now usable for packages that depend on themselves for
8 * Profiles support multiple inheritance.
9 * CONFIG_PROTECT and CONFIG_PROTECT_MASK both support files (not just
11 * Collision protection handles symlinks properly.
12 * Dependencies can be satisfied by installed packages that do not have matching
13 ebuilds in the portage tree or overlay.
14 * Emerge automatically ignores blockers that are made irrelevant by an upgrade.
15 * Emerge builds a complete dependency graph in order to ensure correct merge
16 order and detection of circular dependencies.
17 * The world and system sets allow automatic update of all installed slots.
18 * DEPEND atoms support SLOT dependencies of the form ${CATEGORY}/${PN}:${SLOT}.
23 * Profiles support use.force, package.use.force, and package.use.mask files.
25 portage-2.1 (ongoing via pre releases)
28 * FEATURES="confcache" integration; global caching to speed up configure calls,
29 requires dev-util/confcache
30 * elog framework and accompanying modules for logging ebuild warnings, errors
31 and general notices. Collects eerror/ewarn/elog/einfo messages.
32 * New elog function (should replace einfo in many cases)
33 * version syntax enhancements allowing multiple suffixes and a new 'cvs'
34 prefix for denoting "live sources" ebuilds.
35 * config files as directories enabling more flexible settings management.
36 * Addition of an register_die_hook method that allows ebuild/eclasses to
37 register functions to be called for better debugging on errors.
38 * Addition of pre and post user hookable functions for each ebuild phase, accessible
39 via portage bashrc. Example would be pre_src_unpack .
40 * cache refactoring- runtime improvement from 35% -> 65%.
41 * Intelligently handle and display USE_EXPAND-based IUSE variables.
42 * FEATURES="parallel-fetch". Download in parallel to compilation.
43 * Include a "changed or new" USE flag output when --verbose isn't specified.
44 * Support for splitting out debug information into separate files in
46 * exec subsystem refactoring (now with less bugs!)
47 * Added sha256 and rmd160 hashes for digests/manifests
48 * Make --emptytree only apply to ${ROOT} rather than always including /.
49 * Allow packages to be upgraded that are only depended on via a
50 "|| ( =cat/pkg-1* =cat/pkg-2* )" construct.
51 * Ebuild output is no longer cut off early when using PORT_LOGDIR.
52 * Distfiles indirection- $DISTFILES access goes through a tmp dir to fail
53 access to files not listed in SRC_URI.
54 * Emerge now uses --resume to restart itself after portage upgrade.
55 * Atomic file updates via the new atomic_ofstream class.
56 * Global updates and fixpackages performance optimizations.
57 * Tests show that file locking is now more reliable.
58 * A bash call stack is printed when an ebuild dies in ebuild.sh.
59 * New rsync option handling by using a generic PORTAGE_RSYNC_EXTRA_OPTS variable
60 * Manifest2 support that will allow digest-* files to be eliminated from the tree.