| News (mainly features/major bug fixes) |
| |
| portage-2.2.12 |
| |
| * New emaint module "merges" for finding and fixing failed merges |
| If a pkg fails to merge to the live filesystem correctly, that pkg may |
| not work correctly if at all. This module scans the installed pkg database |
| for those failures and can re-emerge those packages. |
| |
| portage-2.2.1 |
| ------------- |
| |
| * Add cgroups, ipc-sandbox, and network-sandbox FEATURES. |
| |
| portage-2.2 |
| ------------- |
| |
| * Add extended set configuration via /etc/portage/sets.conf. See |
| /usr/share/portage/config/sets/portage.conf for examples. |
| |
| portage-2.1.11.20 |
| ------------- |
| * Add support for EAPI 5. Refer to the PMS EAPI Cheat Sheet, portage's html |
| docs installed with USE=doc, or `man 5 ebuild` for more info about EAPI 5. |
| * Add support for FEATURES=preserve-libs which preserves libraries when the |
| sonames change during upgrade or downgrade, and the @preserved-rebuild |
| package set which rebuilds consumers of preserved libraries. |
| * Add link level dependency awareness to emerge --depclean and --prune actions |
| in order to protect against uninstallation of required libraries. Refer to |
| the --depclean-lib-check option in the emerge(1) man page. |
| |
| portage-2.1.11 |
| ------------- |
| |
| * Add support for experimental EAPI "4-slot-abi". Refer to the corresponding |
| html documentation that is installed with USE=doc, and also to the emerge(1) |
| man page for information about the related --ignore-built-slot-operator-deps and |
| --rebuild-if-new-slot options. |
| |
| portage-2.1.10 |
| ------------- |
| |
| * Improve handling of repositories/overlays for cases in which the same ebuild |
| is provided by multiple repositories but with different masking status, and |
| support for repository constraints on atoms (atom::repo) in configuration |
| files. |
| * Add emerge --rebuild-if-* options that trigger rebuilds of reverse |
| dependencies when packages are rebuilt or updated. Related --rebuild-exclude |
| and --rebuild-ignore options can be used to avoid rebuilds for specific |
| packages. |
| * Add emerge --reinstall-atoms, --useoldpkg-atoms, and --usepkg-exclude options |
| which can be used to alter selection rules for specific packages. |
| * Add FEATURES=parallel-install and ebuild-locks, allowing for greater |
| parallelization when installing packages (by using finer-grained locks). |
| |
| portage-2.1.9.27 |
| ------------- |
| |
| * Add support for EAPI 4. Refer to the PMS EAPI Cheat Sheet, portage's html |
| docs installed with USE=doc, or `man 5 ebuild` for more info about EAPI 4. |
| Bug #273620 tracks EAPI 4 implementation in portage. |
| |
| portage-2.1.9 |
| ------------- |
| |
| * There is a new ipc (inter-process communication) USE flag which is enabled |
| by default. This allows portage to communicate with running ebuild processes, |
| for things like best_version, has_version, and die calls in nested processes. |
| This flag should remain enabled unless it is found to be incompatible with a |
| specific profile or environment. When enabled, it fixes bug #278895, |
| bug #315615, and makes subshell die support more robust (so that repoman's |
| ebuild.nesteddie check is irrelevant). |
| |
| portage-2.1.8 |
| ------------- |
| * The top-level __init__.py for the portage python package has been split into |
| many smaller python modules, making the code easier to navigate and allowing |
| small parts of the portage api to be imported with less overhead. |
| |
| portage-2.1.7.17 |
| ------------- |
| * Add support for EAPI 3. This adds support for installation prefix, including |
| new EPREFIX, ED, and EROOT variables which are used by econf and einstall |
| helpers. Also, EAPI 3 adds xz extension support to the unpack helper. |
| |
| portage-2.1.7 |
| ------------- |
| |
| * Add license visibility filtering (GLEP 23) |
| * Add --accept-properties option for emerge which allows you to use |
| --accept-properties=-interactive in order to temporarily exclude |
| interactive updates. |
| * Add support for Python 3.0. At least Python 2.6 is now required in order to |
| support the new syntax which is used by Python 3.0. |
| |
| portage-2.1.6 |
| ------------- |
| |
| * Add support for a new EAPI="2" value. For more information about new EAPI |
| features, refer to the "Ebuild" chapter of the html documentation that is |
| installed with portage. |
| * Add PORTAGE_IONICE_COMMAND setting for make.conf which is called to adjust |
| IO priority on portage and it's subprocesses. |
| * Add emerge --jobs and --load-average options which specify behavior |
| for building packages in parallel or for generating metadata in parallel |
| with emerge --regen. |
| * Add emerge --keep-going option to continue as much as possible after |
| an error. When an error occurs, dependencies are recalculated for |
| remaining packages and any with unsatisfied dependencies are |
| automatically dropped. The --skipfirst option automatically drops |
| packages in the same way, and also drops any masked packages. |
| * Add git and subversion support for repoman. |
| * It is now possible to use `emerge <file>` to reinstall the package that |
| installed a particular file. Package contents entries are indexed to |
| improve performance. A command such as `emerge /lib/modules` can serve |
| as a decent substitute for module-rebuild. |
| * Namespace sanitizing: move all portage related code into portage.* namespace, |
| rename portage_foo modules to portage.foo (but keep symlinks for compability) |
| * Add support for news items (GLEP 42) |
| * Add FEATURES=protect-owned which is identical to the collision-protect |
| feature except that files may be overwritten if they are not explicitly |
| listed in the contents of a currently installed package. |
| |
| portage-2.1.5 |
| ------------- |
| |
| * For extra careful dependency handling, emerge has a new --complete-graph |
| option that causes it to consider the deep dependencies of all packages from |
| the system and world sets. With this option enabled, emerge will bail out |
| if it determines that the given operation will break any dependencies of |
| the packages that have been added to the graph. Unlike the --deep option, |
| the --complete-graph option does not cause any more packages to be updated |
| than would have otherwise been updated with the option disabled. |
| * Blockers are now resolved automatically in many more cases |
| than before. When it's safe, blocked packages are uninstalled |
| automatically so that users are no longer inconvenienced with the |
| task. Automatically uninstalled packages are displayed in the merge |
| list, marked "uninstall" and highlighted in red. With the --tree |
| option enabled, it's possible to see which package(s) caused other |
| ones to be automatically uninstalled. |
| * The dependency resolver now has a feedback mechanism that helps make atom |
| selections more consistent with previous selections that have been added to |
| the graph. This solves some common cases of bug #1343. |
| |
| portage-2.1.4 |
| ------------- |
| |
| * After the initial setup phase, the original ebuild and eclasses are no |
| longer needed because the same ebuild environment is reused for the |
| entire lifecycle of the package, including uninstallation. |
| * The emerge --search action supports searching of both installed and binary packages |
| The --usepkg and --usepkgonly options control which repositories are searched. |
| |
| portage-2.1.3 |
| ------------- |
| |
| * Allow per-module setting of PORTAGE_ELOG_CLASSES |
| * Add new elog module "echo" to simply display messages when emerge exits |
| * Add ** as new token for package.keywords to bypass the keyword visibility layer |
| * USE_EXPAND variables such as LINGUAS support a * wildcard that will enable |
| all of the corresponding flags that are listed in IUSE for a given package. |
| USE_EXPAND wildcards such as linguas_* are supported in USE and package.use. |
| * The merge process preserves the modification timestamp of files that it |
| installs. The unmerge process will not uninstall files that are claimed by |
| another package in the same slot. |
| * PDEPEND is now installed as soon as possible so that it behaves more like |
| RDEPEND. This makes PDEPEND more useful for breaking the dependency cycles |
| that are sometimes triggered by RDEPEND and DEPEND. |
| * Enable "echo" and "save_summary" elog modules by default |
| * Fix -* handling in package.keywords to work as intended (reset the accepted |
| keywords list), also see RELEASE-NOTES. |
| * Make elog functionality available to python code |
| |
| portage-2.1.2 |
| ------------- |
| |
| * Ebuilds support default USE flags via +flag in IUSE. |
| * New-style virtuals are now usable for packages that depend on themselves for |
| bootstrap. |
| * Profiles support multiple inheritance and package.use. |
| * CONFIG_PROTECT and CONFIG_PROTECT_MASK both support files (not just |
| directories). |
| * Collision protection handles symlinks properly. |
| * Dependencies can be satisfied by installed packages that do not have matching |
| ebuilds in the portage tree or overlay. |
| * Emerge automatically ignores blockers that are made irrelevant by an upgrade. |
| * Emerge supports "reverse blocker detection" which means that the blockers of |
| installed packages will always be respected. |
| * Emerge builds a complete dependency graph in order to ensure correct merge |
| order and detection of circular dependencies. |
| * The world and system sets allow automatic update of all installed slots. |
| * DEPEND atoms support SLOT dependencies of the form ${CATEGORY}/${PN}:${SLOT}. |
| * Development: Extend PYTHONPATH support to allow overriding the hardcoded |
| /usr/lib/portage/pym for development/testing purposes |
| * New "finalize" hook for elog modules enabling modules to perform actions on |
| shutdown (like dispatching collected messages). |
| * New elog modules mail_summary and save_summary that act like the mail/save |
| modules except that they merge messages from multiple packages in a single |
| file/mail. |
| * New QA loglevel and matching eqawarn function |
| * `ebuild foo test` now always runs src_test if available |
| * If DOC_SYMLINK_DIR is set portage installs symlinks to html documention there |
| * FEATURES="test" automatically implies USE="test". |
| |
| portage-2.1.1 |
| ------------- |
| |
| * Profiles support use.force, package.use.force, and package.use.mask files. |
| |
| portage-2.1 (ongoing via pre releases) |
| ------------ |
| |
| * FEATURES="confcache" integration; global caching to speed up configure calls, |
| requires dev-util/confcache |
| * elog framework and accompanying modules for logging ebuild warnings, errors |
| and general notices. Collects eerror/ewarn/elog/einfo messages. |
| * New elog function (should replace einfo in many cases) |
| * version syntax enhancements allowing multiple suffixes and a new 'cvs' |
| version prefix for denoting "live sources" ebuilds. |
| * config files as directories enabling more flexible settings management. |
| * Addition of an register_die_hook method that allows ebuild/eclasses to |
| register functions to be called for better debugging on errors. |
| * Addition of pre and post user hookable functions for each ebuild phase, accessible |
| via portage bashrc. Example would be pre_src_unpack . |
| * cache refactoring- runtime improvement from 35% -> 65%. |
| * Intelligently handle and display USE_EXPAND-based IUSE variables. |
| * FEATURES="parallel-fetch". Download in parallel to compilation. |
| * Include a "changed or new" USE flag output when --verbose isn't specified. |
| * Support for splitting out debug information into separate files in |
| /usr/lib{,32,64}. |
| * exec subsystem refactoring (now with less bugs!) |
| * Added sha256 and rmd160 hashes for digests/manifests |
| * Make --emptytree only apply to ${ROOT} rather than always including /. |
| * Allow packages to be upgraded that are only depended on via a |
| "|| ( =cat/pkg-1* =cat/pkg-2* )" construct. |
| * Ebuild output is no longer cut off early when using PORT_LOGDIR. |
| * Distfiles indirection- $DISTFILES access goes through a tmp dir to fail |
| access to files not listed in SRC_URI. |
| * Emerge now uses --resume to restart itself after portage upgrade. |
| * Atomic file updates via the new atomic_ofstream class. |
| * Global updates and fixpackages performance optimizations. |
| * Tests show that file locking is now more reliable. |
| * A bash call stack is printed when an ebuild dies in ebuild.sh. |
| * New rsync option handling by using a generic PORTAGE_RSYNC_EXTRA_OPTS variable |
| * Manifest2 support that will allow digest-* files to be eliminated from the tree. |