commit:     07e60cd2a4f67f0b4207fb8150f9d7a1689cb295
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 22 07:27:11 2024 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Thu Feb 22 07:27:11 2024 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=07e60cd2

Merge remote-tracking branch 'origin/master' into prefix

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 .git-blame-ignore-revs                             |   2 +
 .github/workflows/ci.yml                           |  47 +-
 .github/workflows/lint.yml                         |   2 +-
 .pre-commit-config.yaml                            |   8 +-
 NEWS                                               | 173 +++++
 bin/dispatch-conf                                  |   2 +-
 bin/ebuild-helpers/dohtml                          |   2 +-
 bin/ebuild-helpers/fowners                         |   2 +-
 bin/ebuild-helpers/fperms                          |   2 +-
 bin/ebuild.sh                                      |   8 +-
 bin/estrip                                         |  35 +-
 bin/fixpackages                                    |  71 +-
 bin/install-qa-check.d/05prefix                    |  10 +-
 bin/install-qa-check.d/60bash-completion           |   4 +-
 bin/install-qa-check.d/90bad-bin-group-write       |   2 +-
 bin/install-qa-check.d/90bad-bin-owner             |   2 +-
 bin/install-qa-check.d/90cmake-warnings            |   2 +-
 bin/install-qa-check.d/90world-writable            |   2 +-
 bin/install-qa-check.d/95empty-dirs                |   2 +-
 bin/phase-functions.sh                             |   3 +-
 bin/phase-helpers.sh                               |  10 +-
 bin/quickpkg                                       |  13 +-
 cnf/make.conf.example.arc.diff                     |  46 ++
 cnf/make.globals                                   |  10 +-
 lib/_emerge/AbstractDepPriority.py                 |   3 +-
 lib/_emerge/AsynchronousTask.py                    |   6 +-
 lib/_emerge/Binpkg.py                              |  34 +-
 lib/_emerge/BinpkgFetcher.py                       | 120 ++--
 lib/_emerge/BinpkgPrefetcher.py                    |  36 +-
 lib/_emerge/BinpkgVerifier.py                      |  22 +-
 lib/_emerge/DepPriority.py                         |   4 +-
 lib/_emerge/DepPriorityNormalRange.py              |   4 +-
 lib/_emerge/DepPrioritySatisfiedRange.py           |   1 +
 lib/_emerge/EbuildBinpkg.py                        |  37 +-
 lib/_emerge/EbuildBuild.py                         |  39 +-
 lib/_emerge/EbuildFetchonly.py                     |  10 +-
 lib/_emerge/EbuildMetadataPhase.py                 |  52 +-
 lib/_emerge/EbuildPhase.py                         |  29 +-
 lib/_emerge/MergeListItem.py                       |   1 -
 lib/_emerge/MetadataRegen.py                       |  16 +-
 lib/_emerge/PipeReader.py                          |   1 -
 lib/_emerge/Scheduler.py                           |  65 +-
 lib/_emerge/SpawnProcess.py                        |  50 +-
 lib/_emerge/SubProcess.py                          |  28 +-
 lib/_emerge/UnmergeDepPriority.py                  |  38 +-
 lib/_emerge/actions.py                             |  51 +-
 lib/_emerge/depgraph.py                            | 238 +++++--
 lib/_emerge/resolver/circular_dependency.py        |  21 +-
 lib/_emerge/resolver/slot_collision.py             |  12 +-
 .../{binpkg_compression.py => binpkg_format.py}    |  16 +-
 lib/portage/_compat_upgrade/meson.build            |   1 +
 lib/portage/_emirrordist/DeletionIterator.py       |   8 +-
 lib/portage/_emirrordist/FetchIterator.py          |  18 +-
 lib/portage/_global_updates.py                     |  15 +-
 lib/portage/_selinux.py                            |  17 +-
 lib/portage/_sets/dbapi.py                         |   2 +-
 lib/portage/_sets/libs.py                          |   1 -
 lib/portage/binpkg.py                              |   2 +-
 lib/portage/cache/anydbm.py                        |  17 +-
 lib/portage/const.py                               |   4 +-
 lib/portage/dbapi/__init__.py                      |  14 +-
 lib/portage/dbapi/bintree.py                       | 187 +++--
 lib/portage/dbapi/porttree.py                      | 130 ++--
 lib/portage/dbapi/vartree.py                       |  51 +-
 lib/portage/dep/__init__.py                        |  24 +-
 lib/portage/dep/_slot_operator.py                  |   1 +
 lib/portage/dep/dep_check.py                       |  17 +-
 lib/portage/dep/libc.py                            |  83 +++
 lib/portage/dep/meson.build                        |   1 +
 lib/portage/dep/soname/multilib_category.py        |  10 +
 lib/portage/emaint/main.py                         |   2 +-
 lib/portage/emaint/modules/merges/merges.py        |   4 +-
 lib/portage/exception.py                           |  10 +-
 lib/portage/gpg.py                                 |  14 +-
 lib/portage/gpkg.py                                |  34 +-
 lib/portage/output.py                              |  15 +-
 lib/portage/package/ebuild/config.py               |  67 +-
 lib/portage/package/ebuild/doebuild.py             | 214 +++---
 lib/portage/package/ebuild/fetch.py                |   1 +
 lib/portage/process.py                             | 766 +++++++++++++++------
 lib/portage/proxy/objectproxy.py                   |   1 -
 lib/portage/sync/modules/git/git.py                |  32 +-
 lib/portage/sync/modules/rsync/rsync.py            |  40 +-
 lib/portage/tests/__init__.py                      |  12 +-
 lib/portage/tests/bin/setup_env.py                 |   7 +-
 lib/portage/tests/dbapi/test_auxdb.py              |  71 +-
 lib/portage/tests/dbapi/test_portdb_cache.py       |   6 +-
 lib/portage/tests/dep/meson.build                  |   1 +
 lib/portage/tests/dep/test_libc.py                 |  81 +++
 lib/portage/tests/dep/test_overlap_dnf.py          |  49 +-
 lib/portage/tests/ebuild/test_fetch.py             |  24 +-
 lib/portage/tests/emerge/conftest.py               |  21 +-
 lib/portage/tests/emerge/meson.build               |   2 +
 lib/portage/tests/emerge/test_actions.py           |  23 +-
 lib/portage/tests/emerge/test_baseline.py          |   2 +-
 ...cker_file_collision.py => test_binpkg_fetch.py} | 185 ++---
 lib/portage/tests/emerge/test_config_protect.py    |   2 +-
 .../emerge/test_emerge_blocker_file_collision.py   |   2 +-
 lib/portage/tests/emerge/test_emerge_slot_abi.py   |   2 +-
 lib/portage/tests/emerge/test_libc_dep_inject.py   | 552 +++++++++++++++
 .../tests/env/config/test_PortageModulesFile.py    |   3 +-
 lib/portage/tests/glsa/test_security_set.py        |   4 +-
 lib/portage/tests/gpkg/test_gpkg_gpg.py            |  23 +-
 .../tests/gpkg/test_gpkg_metadata_update.py        |   2 +-
 lib/portage/tests/gpkg/test_gpkg_metadata_url.py   |  45 +-
 lib/portage/tests/gpkg/test_gpkg_path.py           |   3 +-
 lib/portage/tests/locks/test_lock_nonblock.py      |  55 +-
 lib/portage/tests/news/test_NewsItem.py            |   3 +-
 lib/portage/tests/process/meson.build              |   1 +
 lib/portage/tests/process/test_AsyncFunction.py    |  27 +-
 lib/portage/tests/process/test_spawn_fail_e2big.py |   7 +-
 lib/portage/tests/process/test_spawn_returnproc.py |  39 ++
 lib/portage/tests/resolver/ResolverPlayground.py   |  96 ++-
 lib/portage/tests/resolver/meson.build             |   2 +
 .../tests/resolver/soname/test_skip_update.py      |  17 +-
 lib/portage/tests/resolver/test_broken_deps.py     |  76 ++
 .../tests/resolver/test_cross_dep_priority.py      | 164 +++++
 lib/portage/tests/resolver/test_depclean_order.py  | 117 +++-
 lib/portage/tests/resolver/test_eapi.py            |   4 +-
 lib/portage/tests/sets/base/test_variable_set.py   |   8 +
 .../tests/sets/files/test_config_file_set.py       |   3 +-
 .../tests/sets/files/test_static_file_set.py       |   3 +-
 lib/portage/tests/sets/shell/test_shell.py         |   4 +-
 lib/portage/tests/sync/test_sync_local.py          |   2 +-
 lib/portage/tests/update/test_move_ent.py          | 205 +++++-
 lib/portage/tests/update/test_move_slot_ent.py     | 157 ++++-
 lib/portage/tests/update/test_update_dbentry.py    | 217 +++++-
 lib/portage/tests/util/dyn_libs/meson.build        |   1 +
 .../tests/util/dyn_libs/test_installed_dynlibs.py  |  65 ++
 lib/portage/tests/util/futures/asyncio/meson.build |   1 -
 .../util/futures/asyncio/test_child_watcher.py     |  50 --
 lib/portage/tests/util/futures/test_retry.py       |  43 +-
 lib/portage/tests/util/test_manifest.py            |   7 +-
 lib/portage/util/_async/AsyncTaskFuture.py         |   8 +-
 lib/portage/util/_async/BuildLogger.py             |  39 +-
 lib/portage/util/_async/ForkProcess.py             | 191 ++---
 lib/portage/util/_async/PipeLogger.py              |   1 -
 lib/portage/util/_async/PopenProcess.py            |   5 +-
 lib/portage/util/_async/TaskScheduler.py           |   1 -
 lib/portage/util/_dyn_libs/LinkageMapELF.py        |   3 -
 lib/portage/util/_dyn_libs/dyn_libs.py             |  43 +-
 lib/portage/util/elf/constants.py                  |   5 +
 lib/portage/util/file_copy/__init__.py             |   7 +-
 lib/portage/util/futures/_asyncio/__init__.py      |  32 +-
 lib/portage/util/futures/_sync_decorator.py        |   8 +-
 lib/portage/util/futures/executor/fork.py          |   6 +-
 lib/portage/util/locale.py                         |  73 +-
 lib/portage/util/socks5.py                         |  36 +-
 man/ebuild.5                                       |   8 +
 man/emerge.1                                       |   5 +-
 man/make.conf.5                                    |  30 +-
 meson.build                                        |   2 +-
 misc/emerge-delta-webrsync                         |   1 +
 tox.ini                                            |   3 +-
 154 files changed, 4862 insertions(+), 1338 deletions(-)

diff --cc lib/portage/const.py
index 8769ab2707,2154213b7b..1909199ef3
--- a/lib/portage/const.py
+++ b/lib/portage/const.py
@@@ -1,14 -1,7 +1,14 @@@
  # portage: Constants
- # Copyright 1998-2023 Gentoo Authors
+ # Copyright 1998-2024 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
 +# BEGIN PREFIX LOCAL
 +# ===========================================================================
 +# autotool supplied constants.
 +# ===========================================================================
 +from portage.const_autotool import *
 +# END PREFIX LOCAL
 +
  import os
  
  from portage import installation
diff --cc lib/portage/package/ebuild/doebuild.py
index c627077a27,bc51fdff2d..7994394bdd
--- a/lib/portage/package/ebuild/doebuild.py
+++ b/lib/portage/package/ebuild/doebuild.py
@@@ -19,10 -19,9 +19,11 @@@ import sy
  import tempfile
  from textwrap import wrap
  import time
+ from typing import Union
  import warnings
  import zlib
 +# PREFIX LOCAL
 +import platform
  
  import portage
  

Reply via email to