portage-2.2
==================================
+* Portage now warns if an ebuild repository does not have a name, as several
+ new features in 2.2 make use of or require named repositories. The repository
+ name is stored in profiles/repo_name in each repository.
+* Package set support: There are several important notes regarding package
+ sets:
+ - setnames have to be prefixed with @ (exceptions: 'world' and 'system' can
+ be used without the prefix)
+ - they may currently only include simple and versioned atoms or other sets,
+ use conditionals or any-of constructs aren't possible yet
+ - sets can be referenced either in other file-based sets or as argument to
+ emerge, but not in ebuilds, config files or other tools at this time.
+ - packages won't be unmerged if they are referenced by an installed package
+ set (with the exception of the world set, and installed being determined
+ by the world_sets file).
+* "world" no longer includes "system" unconditionally, but you can add
+ "@system" to the world_sets file to restore the old state.
+
+portage-2.1.6.11
+==================================
+* If you want overlay eclasses to override eclasses from other repos then see
+ the portage(5) man page for information about the new layout.conf and
+ repos.conf configuration files.
+
+portage-2.1.6
+==================================
+
+* The default behavior has changed for `emerge world` and `emerge system`
+ commands. These commands will reinstall all packages from the given set
+ unless an option such as --noreplace, --update, or --newuse is specified.
+* FEATURES=fixpackages is now enabled by default via make.globals. Set
+ FEATURES="-fixpackages" in make.conf if you'd like to disable it.
+* File collision protection is now enabled by default via make.globals with
+ FEATURES=protect-owned. In order to protect files from be overwritten or
+ removed a inappropriate times, it is recommended to leave protect-owned
+ (or the similar collision-protect feature) enabled at all times. If you
+ want to disable collision protection completely (not recommended), then
+ you need to ensure that neither protect-owned nor collision-protect are
+ enabled.
* The python namespace for portage has been sanitized, all portage related code
- is now contained within the portage namespace. External script should be updated
- accordingly, though links exist for backward compability.
+ is now contained within the portage namespace. External script should be
+ updated accordingly, though links exist for backward compability.
* -* support in package.keywords was changed as it was inconsistent with
- ACCEPT_KEYWORDS behavior (also see http://dev.gentoo.org/~genone/docs/KEYWORDS.stupid).
- Previously having -* in package.keywords matched packages with KEYWORDS="-*",
+ ACCEPT_KEYWORDS behavior (also see
+ http://dev.gentoo.org/~genone/docs/KEYWORDS.stupid).
+ Previously having -* in package.keywords matched packages with KEYWORDS="-*",
now it resets the ACCEPT_KEYWORDS list for the given atom like it does when
used in ACCEPT_KEYWORDS.
- For packages that don't specify any other KEYWORDS you can use the new ** token
- as documented in portage(5) to disable KEYWORDS filtering completely.
-* Portage now warns if an ebuild repository does not have a name, as several new
- features in 2.2 make use of or require named repositories. The repository name
- is stored in profiles/repo_name in each repository.
-* Package set support: There are several important notes regarding package sets:
- - they may currently only include simple and versioned atom, use conditionals
- or any-of constructs aren't possible yet
- - emerge makes no difference atm wether you pass a setname or all atoms contained
- in the set to it, this means that without options packages will be remerged if
- already installed and added to the worldfile (exception: "world" and "system"
- are still handled specially), or in the case of --unmerge all atoms in a set
- will be unmerged even if they are depended upon by other packages
- - sets shadow packages with the same name
- - sets can not contain other sets
+ For packages that don't specify any other KEYWORDS you can use the new **
+ token as documented in portage(5) to disable KEYWORDS filtering completely.
+* When generating manifests, existing distfiles digests will not be updated
+ in cases when the current file in $DISTDIR does not match. In order to
+ force digests to be updated, run `ebuild --force <ebuild file> manifest`.
+ This is a safety measure which protects valid distfiles digests from being
+ accidentally replaced by invalid digests.
+* If you have overridden FETCHCOMMAND or RESUMECOMMAND variables, for
+ compatibility with EAPI 2, you must ensure that these variables are written
+ such that the downloaded file will be placed at \"\${DISTDIR}/\${FILE}\".
+ Refer to make.conf(5) for information about FETCHCOMMAND and RESUMECOMMAND.
+
+portage-2.1.5
+==================================
+
+* The pkg_postinst phase is now called after the previous version of a
+ package has been removed. As a consequence, it is no longer possible
+ to call has_version in pkg_postinst to detect whether the current
+ install operation is an upgrade or downgrade. If this information is
+ needed during the pkg_postinst phase, do the has_version call in an
+ earlier phase (such as pkg_preinst) and store the result in a global
+ variable to be accessed by pkg_postinst when it is called. Bug #226505
+ tracks all issues related to this phase execution order change.
+* The metadata-transfer feature is now disabled by default. This disables the
+ "Updating Portage cache" routine that used to run at the tail end of each
+ `emerge --sync` operation. If you use something like the sqlite module and
+ want to keep all metadata in that format alone (useful for querying), enable
+ FEATURES="metadata-transfer" in make.conf. You should also enable
+ FEATURES="metadata-transfer" if you have any eclasses from PORTDIR_OVERLAY
+ that override eclasses from PORTDIR (in this case, you may have disabled
+ a relevant warning message by setting PORTAGE_ECLASS_WARNING_ENABLE="0" in
+ make.conf).
+* The parallel-fetch feature is now enabled by default. It is optimized
+ to avoid doing redundant checksums for previously downloaded files that have
+ the correct size. Run `tail -f /var/log/emerge-fetch.log` in a
+ terminal to view parallel-fetch progress. Add FEATURES="-parallel-fetch"
+ to /etc/make.conf if you want to disable this feature.
+
+portage-2.1.4.1
+==================================
+
+* If you have an overlay then you should remove **/files/digest-*
+ files (Manifest1) because they are no longer supported.
+* If earlier versions of portage will be used to generate manifests
+ for your overlay then you should add a file named manifest1_obsolete
+ to the root of the repository in order to disable generation of the
+ Manifest1 digest files.
+
+portage-2.1.4
+==================================
+
+* Visibility filtering is now supported for binary packages, so masking behavior
+ is essentially equivalent to that of ebuilds.
+* There is no need to have a complete portage tree available when installing binary
+ packages or uninstalling packages, but a warning message will still be displayed if
+ it appears that a valid profile is not available.
portage-2.1.3
==================================