ebuild: fetch: Flatten conditionals in _get_fetch_resume_size
[portage.git] / RELEASE-NOTES
index 540809a43deb98beb25c3b655e70fd41e52c6d7c..8a35b556d1d6318a86703fe8d40301419ecaa0ea 100644 (file)
 Release Notes; upgrade information mainly.
 Features/major bugfixes are listed in NEWS
 
+portage-2.2.8
+==================================
+* Bug Fixes:
+    - Bug 488972 - sys-apps/portage-2.2.7:
+      "egencache --update --rsync" does not create metadata/timestamp.chk
+    - For a complete list of bug fixes, changes, See the Changelog installed at
+      /usr/share/doc/portage-2.2.8/ChangeLog.bz2
+
+
 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" does no longer include "system" unconditionally, but you can add
-  "@system" to the world_sets file to restore the old state.
+
+portage-2.1.13
+==================================
+
+* FEATURES=userpriv and usersandbox are enabled by default.
+* FEATURES=usersync is enabled by default.
+* New sync-cvs-repo, sync-type and sync-uri attributes in repos.conf replace
+  SYNC variable.
+
+portage-2.1.12
+==================================
+
+* FEATURES=preserve-libs is enabled by default.
+* ACCEPT_RESTRICT variable may be used to mask packages based on RESTRICT.
+
+portage-2.1.11
+==================================
+* User-defined package sets can now be created by placing files in the
+  /etc/portage/sets/ directory. Refer to the emerge(1) and portage(5) man
+  pages for more information.
+* The "selected" package set, which includes packages listed in
+  /var/lib/portage/world, has been extended to include nested sets that may
+  be listed /var/lib/portage/world_sets.
+
+portage-2.1.10.61
+==================================
+* FEATURES=config-protect-if-modified is now enabled by default. This causes
+  the CONFIG_PROTECT behavior to be skipped for files that have not been
+  modified since they were installed.
+
+portage-2.1.10.27
+==================================
+* FEATURES=fixpackages is now enabled unconditionally. Set --package-moves=n
+  in EMERGE_DEFAULT_OPTS if you need to temporarily avoid package moves for
+  some reason.
+
+portage-2.1.10
+==================================
+* The emerge --autounmask option is now enabled by default. The
+  --autounmask-write option can be used to have config changes automatically
+  written to the appropriate files (respecting --ask and CONFIG_PROTECT). If
+  --autounmask behavior is not desired as the default behavior, then it can
+  be disabled by adding --autounmask=n to the EMERGE_DEFAULT_OPTS variable in
+  make.conf. Refer to the emerge(1) man page for more information.
+
+portage-2.1.9
+==================================
+* The emerge "world" set now includes separate "selected" and "system" sets,
+  where the "selected" set includes packages listed in /var/lib/portage/world.
+* Package set names in emerge arguments have to be prefixed with @ (exceptions:
+  'world' and 'system' can be used without the prefix).
+* Configuration files now support atoms with wildcards inside the category and
+  package name parts of the atoms.
+* The functionality of the autounmask program is emulated by the new emerge
+  --autounmask option, which outputs required configuration changes for
+  package.accept_keywords and package.use.
+* The new emerge --exclude option allows packages to be excluded from the
+  dependency resolution. Doing so might result in a fatal error. See the
+  emerge(1) man page for details.
+* Per-package environment variables can be set with the new package.env
+  configuration file in /etc/portage/. See the portage(5) man page for details.
+* Support for per-package bashrc files in /etc/portage/env. See the portage(5)
+  man page for details.
+* The package.keywords configuration file in /etc/portage/ is now deprecated.
+  Instead use the package.accept_keywords file which has the same format and
+  behavior. See the portage(5) man page for details.
+* FEATURES="fixlafiles" (enabled by default): Rewrites newly installed .la
+  files in the same way dev-util/lafilefixer does. Note that this won't fix
+  your installed .la files.
+
+portage-2.1.8
+==================================
+* The new --rebuilt-binaries option will replace installed packages with binary
+  packages that have been rebuilt. Rebuilds are detected by comparison of
+  BUILD_TIME package metadata. This option is enabled automatically when using
+  binary packages (--usepkgonly or --getbinpkgonly) together with --update and
+  --deep.
+
+portage-2.1.7
+==================================
+* Default behavior for emerge commands has changed so that packages are only
+  updated when necessary. In order to ensure that all packages are updated
+  when possible, you must now specify the -u/--update option. See bug #275945
+  for the rationale behind this change.
+* If using python3, you may notice that some types of program output which
+  require a tty device (like the wget progress bar) will be disabled. This
+  is due to an upstream python issue: http://bugs.python.org/issue5380. See
+  bug #287648 for more information.
+* Licenses in the @EULA license group are now masked by the default
+  ACCEPT_LICENSE setting. You can unmask all licenses by setting
+  ACCEPT_LICENSE="*" in /etc/make.conf. See the make.conf(5) man page for
+  more information about ACCEPT_LICENSE.
+
+portage-2.1.6.12
+==================================
+* 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.
+  (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.
-* -* support in package.keywords was changed as it was inconsistent with 
+* -* 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="-*",
@@ -41,6 +141,15 @@ portage-2.1.6
   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.
+* 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
 ==================================
@@ -130,7 +239,7 @@ portage-2.1.1
 
 * emerge --search doesn't use regular expressions now anymore by default, so
   emerge --search dvd+rw-tools now works as expected. Regular expressions can be enabled
-  by prefixing the search string with %. 
+  by prefixing the search string with %.
 * emerge --depclean algorithm is much safer than the old one.
 * emerge --newuse detects changes in IUSE that previously went undetected.
 
@@ -143,9 +252,9 @@ portage-2.1
   by the name of --alphabetical.  Adding the option to EMERGE_DEFAULT_OPTS
   in make.conf will restore the old behaviour permanently.
 * The deprecated --inject has been removed, use /etc/portage/profile/package.provided
-* The deprecated --upgradeonly has been removed, use /etc/portage/package.* 
+* The deprecated --upgradeonly has been removed, use /etc/portage/package.*
   instead.
-* 'emerge sync' has been deprecated, use 'emerge --sync' instead (same 
+* 'emerge sync' has been deprecated, use 'emerge --sync' instead (same
   for other actions)
 * Tools that call emerge should override the EMERGE_DEFAULT_OPTS environment
   variable or use the emerge --ignore-default-opts option.
@@ -154,6 +263,6 @@ portage-2.1
 * autouse (use.defaults) has been deprecated by specifying USE_ORDER in make.defaults
   Users may still turn this back on by specifying USE_ORDER="env:pkg:conf:auto:defaults"
   in make.conf.  Interested in figuring out what use flags were turned off?  Check out
-  /usr/portage/profiles/base/use.defaults and other use.defaults files that correspond 
+  /usr/portage/profiles/base/use.defaults and other use.defaults files that correspond
   to your profile.