Add test for bug #478188.
[portage.git] / NEWS
diff --git a/NEWS b/NEWS
index 13c0b8474d1e589f28401e0663cce22fae9e4bd1..f57c6c2c6475753b6d08345e990e31cd69baa22b 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,17 +3,141 @@ News (mainly features/major bug fixes)
 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 license visibility filtering (GLEP 23)
-* 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.
-* Experimental support for preserving old library files on package upgrades
-  based on FEATURES=preserve-libs, USE AT YOUR OWN RISK!!!
-* Make elog functionality available to python code
 * Add support for news items (GLEP 42)
-* Add support for generic package sets (also see RELEASE-NOTES)
+* 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
 -------------
@@ -30,6 +154,10 @@ portage-2.1.3
 * 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
 -------------