| portage-3.0.36 (2022-09-09) |
| -------------- |
| |
| Bug fixes: |
| * The layout of gpkg (new binpkg format) packages has been fixed (bug #865905). |
| |
| * Fix getbinpkg fetching (bug #864160). |
| |
| portage-3.0.35 (2022-08-23) |
| -------------- |
| |
| Features: |
| * Portage can now set scheduling policies using the PORTAGE_SCHEDULING_POLICY |
| and PORTAGE_SCHEDULING_PRIORITY variables. See make.conf.example for details. |
| |
| See also https://wiki.gentoo.org/wiki/Portage_niceness. |
| |
| * The header of build.log now contains the package's slot (bug #864382). |
| |
| Bug fixes: |
| * xml: Fix XML node parsing (resulted in duplicate USE flag descriptions |
| in gentoolkit, bug 858791). This code is thought to have only one |
| consumer (gentoolkit, and only as of its most recent releases), so |
| impact is not severe. |
| |
| * portage: dbapi: porttree: fix _set_porttrees() to operate correctly if passed |
| a generator. Fixes e.g. blank emerge --metadata caches in /var/cache/edb |
| which affected eix (bug #865635). Regression from 3.0.31. |
| |
| * logging: don't clutter with a global logger and instead scope to |
| each module. Allows further logging refactoring in future. |
| |
| * estrip: fix double slash for older EAPIs (bug #862600). |
| |
| * estrip: avoid spurious NEEDED warning when no ELF files installed for |
| < EAPI 7 (bug #749624, bug #862606). |
| |
| * estrip: apply scanelf optimisation for EAPI 7+ too (bug #749624, bug #862606). |
| |
| * dispatch-conf: respect (E)ROOT |
| |
| * install-qa-check.d: 60pkgconfig: drop noisy pkg-config mismatched Version |
| field check (bug 857654). |
| |
| * install-qa-check.d: 60pkgconfig: fix --validate check by adding |
| ${ED}/usr/{lib*,share} to search path. |
| |
| * install-qa-check.d: 60pkgconfig: only check defined variables for |
| ${EPREFIX} compliance (bug 860825). |
| |
| * install-qa-check.d: 60pkgconfig: display the detected version from |
| the .pc file (improves the QA warning output), and hint to the user/developer |
| about the existence of QA_PKGCONFIG_VERSION to silence the warning. |
| |
| * install-qa-check.d: 60pkgconfig: use eqatag for nicer output. |
| |
| * install-qa-check.d: 60pkgconfig: use ver_test where possible in version |
| comparison checks to avoid warning if the Version field in the .pc file |
| is equivalent to the ebuild version. |
| |
| * install-qa-check.d: 80libraries: include Darwin/Mach-O objects in checks. |
| |
| * install-qa-check.d: 80multilib-strict: use file/find from Prefix instead |
| of absolute paths in /usr/bin. |
| |
| * install-qa-checks.d: 90gcc-warnings: add arm64, aarch64 (used by Apple), |
| loongarch64, riscv64, s390x to list of 64-bit arches which affects the |
| severity of some warnings (like pointer truncation). |
| |
| * install-qa-check.d: 90world-writable: include EPREFIX in paths. |
| |
| * portage: output: update obsolete /etc/init.d/functions.sh path. |
| |
| * bin: style tweaks to conform to Gentoo style (mostly variable bracing). |
| |
| * doins: fix D check, add EPREFIX check |
| |
| * misc-functions.sh: add Prefix fixups, like including EPREFIX in |
| INSTALL_MASK for /usr/share for noman, noinfo, nodoc. |
| |
| * phase-function.sh: mark ED, EROOT read-only variables |
| |
| * eapi.sh: cleanup obsolete references to unofficial 5-hdepend EAPI. |
| |
| * isolated-functions.sh: sync __makeopts_jobs implementation with |
| multiprocessing.eclass. |
| |
| * ebuild(1): improve descriptions of various phase functions. |
| |
| * emerge(1): mention --with-bdeps=n behavior for both --usepkg (-k) and |
| --usepkgonly (-K) (bug #863422). |
| |
| * ecompress: add option to lz4 in order to be able to compress multiple |
| files at once (bug #672916). |
| |
| portage-3.0.34 (2022-07-20) |
| -------------- |
| |
| Bug fixes: |
| * checksum: fix trying to use discard on a frozenset(). |
| |
| * ebuild(5): mention doexe behavior is undefined if exeinto not yet called. |
| |
| * ebuild(5): fix typos. |
| |
| portage-3.0.33 (2022-07-18) |
| -------------- |
| |
| Bug fixes: |
| * env-update: Handle BROOT vs ROOT distinction for PATH (and other |
| variables like PREROOTPATH and ROOTPATH). The issue being that |
| only some variables are relevant for execution (and hence need |
| to be derived from BROOT), while others need to correspond to |
| EROOT for e.g. library paths. This should help with Clang |
| stage building. |
| |
| * Build: Fix test suite file data processing (copying of .gnupg data |
| for the gpkg tests led to a failure in src_test in the portage ebuild). |
| |
| * emerge: drop obsolete fixpackages warning (as a result of refactoring, |
| started to show on every emerge, but is harmless and left over |
| from many years ago). Bug #858407. |
| |
| * quickpkg: Fix quoting/splitting of BINPKG_COMPRESS_FLAGS arguments. Bug #857933. |
| |
| * estrip: fix double prefix (regression from "don't call estrip twice" fix |
| in 3.0.31). Bug #858818. |
| |
| * ebuild(5): dolib, libopts: mention dolib, libopts being banned in EAPI 7. |
| |
| * ebuild(5): dohtml: mention dohtml is banned in EAPI 7. |
| |
| * ebuild(5): hasv: mention hasv is banned in EAPI 8. |
| |
| * ebuild(5): dosym: mention dosym -r for EAPI 8. |
| |
| * ebuild(5): einstall: mention einstall was banned in EAPI 6. |
| |
| * ebuild(5): econf: add --docdir and --htmldir for EAPI 6, |
| add --with-sysroot for EAPI 7, add --datarootdir and --disable-static for EAPI |
| 8. |
| |
| * ebuild(5): econf: drop --disable-dependency-tracking from "example" |
| because it's confusing (implies it was always added, even before EAPI 4). |
| |
| * ebuild(5): modernize examples slightly. |
| |
| portage-3.0.32 (2022-07-11) |
| -------------- |
| |
| Bug fixes: |
| * Fix marking all news items as relevant. See bug #857669. |
| |
| * Allow nested ebegin again while there's a lack of consensus on banning it. |
| |
| * Fix use of deprecated (now removed) getchildren() call in XML parser, |
| which caused failures with gentoolkit. See bug #857537. (Note that this |
| was not originally in the release notes for 3.0.32, but the fix was in |
| 3.0.32). |
| |
| * Fix doc generation by removing reference to removed EAPIs. See bug #857486. |
| |
| portage-3.0.31 (2022-07-10) |
| -------------- |
| |
| Breaking changes: |
| * repoman support dropped. Please migrate to pkgcheck. See bug 835013. |
| |
| * Remove support for never-official EAPIs: "4-python", "5-progress". |
| Further cleanups as a result allowed removal of "USE alias" support too. |
| |
| * Drop support for Python 3.6. It's been EOL upstream since 2021-12-23. |
| The minimum version of Python for Portage is now Python 3.7. |
| |
| Features: |
| * GLEP 78 "gpkg" binary package format support, including the ability to sign |
| binpkgs! See bug 500630, bug 659864, bug 672672, bug 773259, bug 820578. |
| |
| This is still somewhat experimental! |
| |
| To try it out: |
| - set BINPKG_FORMAT="gpkg" in make.conf; |
| |
| - optionally, set FEATURES="binpkg-signing binpkg-request-signature", and so on. |
| See cnf/make.conf.example for the full details, options, and documentation. |
| |
| * emerge: Add -X short option for --exclude. |
| |
| * emerge: Support the "foot" terminal for title updates. |
| |
| * Recognize LoongArch ABIs in multilib_category. |
| |
| * depclean: Return failure via exit code if requested packages |
| aren't depcleaned. See bug 851750. |
| |
| * estrip: Optimize calls (avoid duplicate call) by using previously |
| collected scanelf data. See bug 749624 |
| |
| * autoclean: Optimize unmerges by only enabling autoclean for global |
| updates and/or depcleans. This avoids needing to iterate over all |
| installed packages after each individual removal. |
| |
| * vartree: Optimize by skipping `env-update` call (which is expensive, as |
| it ends up calling `ldconfig` to regenerate ld.so.cache) if no files |
| were installed (e.g. virtual/). |
| |
| * vartree: Optimize by avoiding VDB lock contention (avoid taking |
| lock if no blockers). |
| |
| * QA: warn if 'eend' is called without a corresponding 'ebegin', |
| and vice-versa: if 'ebegin' is called without a corresponding 'eend'. |
| See bug 835824 and bug 835823. |
| |
| * QA: install-qa-check.d: Add 60pkgconfig check which: |
| - checks libdir in installed .pc files |
| - checks paths not respecting EPREFIX in .pc files |
| - runs pkg-config --validate on .pc files |
| - checks for mismatched version in .pc files vs ${PV}. Ebuilds can override |
| this using QA_PKGCONFIG_VERSION. |
| |
| * QA: install-qa-check.d: Update 20runtime-directories to warn on /var/tmp |
| usage too. |
| |
| * emerge: Deduplicate atoms in 'dropped' message for --keep-going. |
| |
| * dispatch-conf: Warn about changing the 'use-rcs' setting. See bug 837533. |
| |
| * Lots of general refactoring and code cleanups. |
| |
| Bug fixes: |
| * Disable SONAME dependencies by default again (i.e. set --ignore-soname-deps=y |
| to default on). See bug 687956 and bug 829623. |
| |
| This was done because of problems caused with depcleans. |
| |
| * git: Mark repository as safe for newer versions of git (>= git-2.35.2). |
| See bug 838223 and bug 838271. |
| |
| * dosym: Fix EAPI check for '-r' (relative) flag. It would previously allow |
| using an EAPI 8 only feature. |
| |
| * ebuild: Fix re-sourcing IDEPEND (EAPI 8+). |
| |
| * estrip: Fix race when creating build-id debug symlinks. See bug 831927. |
| |
| * MergeProcess: Fix bug causing unnecessary ld.so.cache regeneration even |
| when no libraries were installed. This used to work in the past, so is viewed |
| as a bug fix, rather than an optimization, although it's a bit of both. |
| See bug 836375. |
| |
| * MiscFunctionsProcess: Avoid clobbering the main sandbox.log if a "die hook" |
| is invoked. This should prevent sandbox.log being blank in many cases. |
| |
| * Drop /run warning as it ended up being too noisy and we've decided |
| to workaround/fix (depending on your perspective) the issues in packages |
| themselves, given only one package was actually at fault here: bug 832853. |
| |
| * movefile: Merge symlinks atomically. This should reduce the risk of build |
| failures during parallel builds (multiple emerge jobs). See bug 836400. |
| |
| * Improve error message when Bash version is too old for an ebuild |
| to be read. |
| |
| * Minor improvements to 'die' output. |
| |
| * Undo dep_zapdeps change in 3.0.29 as it introduced a regression w.r.t solving |
| blockers for gentoo-kernel. See bug 833014. |
| |
| * QA: install-qa-check.d: update 95empty-dirs to mention Portage behavior |
| change for EAPI 8+. |
| |
| * QA: install-qa-check.d: Fix usage of obsolete 'egrep' and 'fgrep' which |
| now emit warnings with an upcoming grep release (> 3.7). |
| |
| * portageq: Ditto re egrep/fgrep. |
| |
| * util: Fix Whirlpool implementation breaking (crashing/failing tests) with |
| OpenSSL 3. This wasn't noticed before as previously, OpenSSL exposed its |
| Whirlpool implementation by default, whereas it's now marked as legacy. |
| See bug 846389. |
| |
| * socks5-server: Fix Python 3.10 DeprecationWarning. See bug 794115. |
| |
| * portage.eapi: Include workaround for consumers with misconfigured |
| logger to avoid needing a newer gentoolkit. See bug 838406. |
| |
| * CI: Run 'black' on remaining files missed in the previous conversion and fix |
| CI to catch regressions related to this. |
| |
| * CI: Test with Python 3.11. |
| |
| * CI: Drop references to unsupported Python 3.6. |
| |
| * make.conf: document MAKEOPTS defaulting to the number of processors for |
| the number of jobs in make.conf(5). |
| |
| * dispatch-conf: fix description of 'frozen-files' format in dispatch-conf.conf |
| man page. See bug 830618. |
| |
| portage-3.0.30 |
| -------------- |
| * fix warning/crash on bad PROVIDES in package. See bug 828966. |
| * avoid infinite loop in _optimized_copyfile. See bug 828844. |
| |
| portage-3.0.29 |
| -------------- |
| * check for inconsistent/missing PROVIDES during package (and binpkg) |
| installation. See bug 811462. |
| * avoid pulling in newer slots for upgrades in some cases. See bug 828136. |
| * enable SONAME dependencies for binpkgs by default. See bug 687956. |
| * add new options to allow avoiding building/using binpkgs for live ebuilds: |
| FEATURES="binpkg-live" and --usepkg-exclude-live. |
| * add emphasis in output to user patches being applied. |
| |
| portage-3.0.27 |
| -------------- |
| * improve blocker output to make it clear which blockers |
| are not satisfied. |
| * use distinct colors for einfo/elog and ewarn/eqawarn. |
| |
| portage-3.0.26 |
| -------------- |
| * fix broken FILESDIR copying logic. |
| |
| portage-3.0.25 (yanked) |
| ----------------------- |
| * fix Python < 3.8 compatibility of FILESDIR copying code. |
| |
| portage-3.0.24 |
| -------------- |
| * remove doebuild(dbkey=...) support that was deprecated since 2013. |
| * pass metadata internally using key=value format. |
| * include INHERIT key md5-cache to match pkgcore. |
| * reformat Portage code using black. |
| * fix Python 3.10 deprecation warnings. |
| * replace compat_coroutine use with modern async. |
| |
| portage-3.0.23 |
| -------------- |
| * enable autogroup scheduling with pid-sandbox if possible. This should |
| make the kernel respect niceness better. |
| * add support conf-update.d hooks. |
| * display all preserved libraries with --verbose. |
| * restore QA warnings when EXPORT_FUNCTIONS is called before inherit. |
| * catch more setuptools warnings via the respective QA check. |
| |
| portage-3.0.22 |
| -------------- |
| * USE flags are now sorted with respect to numerical segments in emerge |
| output (e.g. python3_10 comes after python3_9). |
| * setuptools version normalization warnings are now ignored. |
| * FEATURES=installsources no longer copies irrelevant directory trees |
| with gcc-11. |
| * sdist archives built using "build" now include setup.py. |
| |
| portage-3.0.21 |
| -------------- |
| * EAPI 8 fixups. |
| |
| portage-3.0.20 |
| -------------- |
| * Finalize EAPI 8. |
| |
| portage-3.0.19 |
| -------------- |
| * Enable EAPI 8. |
| |
| portage-3.0.18 |
| -------------- |
| * profile-repo-deps is supported in layout.conf profile-formats. |
| |
| portage-3.0.16 |
| -------------- |
| * emirrordist supports the content-hash distfiles mirror layout. |
| |
| portage-3.0.15 |
| -------------- |
| * FEATURES=binpkg-multi-instance is now enabled by default. |
| |
| portage-3.0.13 |
| -------------- |
| * FETCHCOMMAND now supports a \${DIGESTS} placeholder which expands |
| to a space separated list of digests. Refer to the FETCHCOMMAND |
| documentation in the make.conf(5) man page. |
| |
| portage-3.0.6 |
| -------------- |
| * emerge --search now detects regular expressions automatically. This |
| behavior is controlled by the --regex-search-auto option. |
| * make.conf now treats variable names that begin with two underscores |
| as local variables which are not displayed by emerge --info --verbose. |
| * egencache --update-pkg-desc now has a --verbose option which causes |
| it to emulate esync --verbose output. |
| * env-update now generates a systemd user-session environment in a file |
| named /etc/environment.d/10-gentoo-env.conf. |
| * binrepos.conf is a new configuration file that acts as a substitute |
| for the PORTAGE_BINHOST variable, and allows each repository to have |
| a separate FETCHCOMMAND which can be used to customize authentication. |
| This file is documented in the portage(5) man page. |
| |
| portage-3.0.0 |
| -------------- |
| * Dropped support for Python 2.x. |
| |
| portage-2.3.101 |
| -------------- |
| * The new PORTAGE_LOG_FILTER_FILE_CMD make.conf(5) variable specifies a |
| command that filters build log output to a log file. In order to |
| filter ANSI escape codes from build logs, ansifilter(1) is a |
| convenient setting for this variable. |
| |
| portage-2.3.100 |
| -------------- |
| * New BINPKG_COMPRESS=zstd default (does not apply to installed systems |
| using the old bzip2 default). |
| |
| portage-2.3.97 |
| -------------- |
| * Support for the PORTAGE_LOG_FILTER_FILE_CMD variable has been |
| temporarily removed due to bug 716636. |
| |
| portage-2.3.90 |
| -------------- |
| * The new PORTAGE_LOG_FILTER_FILE_CMD make.conf(5) variable specifies a |
| command that filters build log output to a log file. In order to |
| filter ANSI escape codes from build logs, ansifilter(1) is a |
| convenient setting for this variable. |
| |
| portage-2.3.80 |
| -------------- |
| * The emerge --quickpkg-direct option enables use of installed packages |
| directly as binary packages. It can be used to create minimal runtime |
| container images (which need not include a package manager), or to |
| enable a live image to act as a binary installer that uses packages |
| installed in the live image as a source of binary packages. This |
| option is especially useful in combination with --usepkgonly and |
| --ignore-soname-deps=n options, allowing implicit system dependencies |
| such as libc to be automatically accounted for. |
| |
| portage-2.3.77 |
| -------------- |
| * The emerge --autounmask option is now disabled by default, except for |
| portions of behavior which are controlled by the --autounmask-use and |
| --autounmask-license options. For backward compatibility, previous |
| behavior of --autounmask=y and --autounmask=n is entirely preserved. |
| Users can get the old behavior simply by adding --autounmask to the |
| make.conf EMERGE_DEFAULT_OPTS variable. |
| |
| portage-2.3.72 |
| -------------- |
| * The glsa-check program is now provided by portage, and it has been |
| removed from gentoolkit. See bug 463952. |
| |
| portage-2.3.70 |
| -------------- |
| * The @live-rebuild package set now searches for PROPERTIES=live, see |
| bug 233589. The @deprecated-live-rebuild package set provides the |
| old behavior which was based on inherited eclasses. |
| |
| portage-2.3.64 |
| -------------- |
| * New (council approved) default locations for the Gentoo repository, |
| distfiles, and binary packages (does not apply to installed systems |
| using the old defaults): |
| /usr/portage -> /var/db/repos/gentoo |
| /usr/portage/distfiles -> /var/cache/distfiles |
| /usr/portage/packages -> /var/cache/binpkgs |
| |
| portage-2.3.53 |
| -------------- |
| * Renamed PORT_LOGDIR and PORT_LOGDIR_CLEAN variables to |
| PORTAGE_LOGDIR and PORTAGE_LOGDIR_CLEAN to match other existing |
| similar variables |
| * Enable FEATURES={ipc,network,pid}-sandbox by default |
| |
| portage-2.3.42 |
| ---------------- |
| * Sync with rsync quarantines data prior to verification, using the |
| rsync --link-dest option (can be disabled by setting |
| "sync-allow-hardlinks = no" in repos.conf). |
| * Sync with git quarantines data prior to verification, see |
| https://wiki.gentoo.org/wiki/Portage_Security#git-mirror_repo. |
| * Sync with shallow git pull is supported, by "setting sync-depth = 1" |
| in repos.conf. |
| |
| portage-2.3.32 |
| ---------------- |
| * EAPI 7 support. |
| |
| portage-2.3.29 |
| ---------------- |
| * Portage API consumers can use asyncio with portage's internal event |
| loop, see portage.util.futures.unix_events.DefaultEventLoopPolicy. |
| |
| portage-2.3.25 |
| ---------------- |
| * Experimental support for EAPI 7_pre1. |
| |
| portage-2.3.20 |
| ---------------- |
| * Support RESTRICT=network-sandbox in ebuilds. |
| |
| portage-2.3.17 |
| ---------------- |
| * The doins ebuild helper has been rewritten in python for performance, and |
| it does in-kernel file copying on Linux. |
| |
| portage-2.3.14 |
| ---------------- |
| * Repository metadata/layout.conf supports manifest-required-hashes |
| attribute (default value is SHA512). |
| |
| portage-2.3.12 |
| ---------------- |
| * better_cache implemented to use less expensive os.listdir() instead of |
| os.stat() operations to scan for ebuilds. Avoids exhaustively scanning |
| overlays for all ebuilds which allows Portage to not slow down significantly |
| with lots of overlays enabled. (Daniel Robbins) |
| |
| portage-2.3.7 |
| ----------------- |
| * eapply_user combines patch basenames from all matched directories into a |
| list, and applies them in POSIX sorted order. This allows patches in |
| more-specific directories to override patches of the same basename found |
| in less-specific directories. An empty patch (or /dev/null symlink) negates |
| a patch with the same basename found in a less-specific directory. |
| * FEATURES=multilib-strict no longer recurses into subdirectories, in order |
| to avoid false-positives. The MULTILIB_STRICT_EXEMPT variable only served |
| to filter false-positives that were triggered by recursion, so it will no |
| longer be needed. |
| * New emerge --autounmask-keep-keywords and --onlydeps-with-rdeps=<y|n> |
| options. |
| * Set compression method for binpackages via BINPKG_COMPRESS variable |
| * Support for environment variables for git cmd in repos.conf via sync-git-env |
| |
| |
| portage-2.3.5 |
| ----------------- |
| * Numerous patches updating checksums code and python module imports for them |
| including new checksum methods |
| * New linux in kernel movefile support via a new "C" extension module |
| |
| |
| portage-2.3.3 |
| ----------------- |
| * Reverted commits: |
| - Bug 552814 Revert "GitSync.update: respect sync-depth |
| (Shallow fetch is not a practical default at this time, |
| given performance issues introduced by `git update-index` |
| and `git prune` (see bug 599008). |
| ) |
| |
| |
| portage-2.3.1 |
| ----------------- |
| * Support News-Item-Format 2.0 |
| * emerge: add --fuzzy-search and --search-similarity |
| * Add emerge --autounmask-continue option |
| |
| portage-2.3.0 |
| ----------------- |
| * Final release |
| * Includes numerous bugfixes |
| |
| portage-2.3.0_rc1 |
| ----------------- |
| * New split release for the repoman Q/A tool |
| * Includes the stage2 rewite of the repoman code base |
| |
| |
| portage-2.2.26 |
| -------------- |
| * EAPI 6 stable portage release |
| |
| |
| portage-2.2.25 |
| -------------- |
| * EAPI 6 final fully implemented. |
| |
| |
| portage-2.2.22 |
| ------------- |
| * Stage 1 of the repoman re-write code merged in to master branch |
| This is the first release of the new code base. |
| |
| |
| portage-2.2.19 |
| ------------- |
| * The squashdelta sync module was removed for separate installation |
| and development work |
| |
| |
| portage-2.2.19 |
| ------------- |
| * websync module now fully renamed to webrsync |
| * New squashdelta sync module for downloading full or updates for a squasfs tree |
| requires dev-util/squashmerge be installed |
| * New binpkg-multi-instance feature allows for multiple variations |
| (USE settings) to be saved in the pkgdir and index. |
| |
| |
| portage-2.2.16 |
| ------------- |
| * New portage plug-in sync system. |
| Read the news anouncement for more details of the changes in config |
| settings and operation. |
| * New native portage postsync.d capability |
| * New native portage repo.postsync.d capability |
| * New native indexed search capability for decent search speed |
| * Tentative EAPI 6 patches for additional testing |
| |
| |
| portage-2.2.14 |
| ------------- |
| * Remaining bugs in build/install system should be fixed. |
| |
| |
| portge-2.2.14_rc1 |
| ------------- |
| * Many new build/installation system errors fixed. |
| |
| |
| portage-2.2.13 |
| ------------- |
| * New setup.py build system and distutils-r1 ebuild at EAPI 5 |
| * PORTAGE_{BIN,PYM}_PATH variables. If you want to call internal portage tools, |
| you need to query PORTAGE_BIN_PATH and PORTAGE_PYM_PATH, use them |
| and re-export them. |
| * New @changed-deps set to update packages which need dependecy change updates. |
| |
| |
| 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 PORTAGE_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. |