commit:     c55afba42611e49eb49896c603b5329a8b3d18ca
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 26 11:25:03 2020 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sat Sep 26 11:28:52 2020 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=c55afba4

Merge remote-tracking branch 'overlays-gentoo-org/master' into prefix

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

 .editorconfig                                      |   5 +-
 DEVELOPING                                         |  18 ++-
 NEWS                                               |  15 ++
 RELEASE-NOTES                                      |  64 ++++++++
 bin/archive-conf                                   |   4 +-
 bin/check-implicit-pointer-usage.py                |   2 -
 bin/clean_locks                                    |   4 +-
 bin/dispatch-conf                                  |   4 +-
 bin/dohtml.py                                      |   4 +-
 bin/doins.py                                       |   6 +-
 bin/ebuild                                         |   4 +-
 bin/egencache                                      | 126 +++++++++++----
 bin/emaint                                         |   4 +-
 bin/emerge                                         |   4 +-
 bin/env-update                                     |   4 +-
 bin/fixpackages                                    |   4 +-
 bin/glsa-check                                     |   4 +-
 bin/portageq                                       |   4 +-
 bin/quickpkg                                       |   6 +-
 bin/regenworld                                     |   4 +-
 cnf/repo.postsync.d/example                        |  14 +-
 doc/api/conf.py                                    |   2 +-
 lib/_emerge/AbstractEbuildProcess.py               |   3 +-
 lib/_emerge/AbstractPollTask.py                    |   3 +-
 lib/_emerge/Binpkg.py                              |   8 +-
 lib/_emerge/BinpkgEnvExtractor.py                  |  11 +-
 lib/_emerge/BinpkgFetcher.py                       |  29 ++--
 lib/_emerge/DependencyArg.py                       |   3 -
 lib/_emerge/EbuildBinpkg.py                        |   4 +-
 lib/_emerge/EbuildBuild.py                         |   4 +-
 lib/_emerge/EbuildPhase.py                         |  17 +-
 lib/_emerge/FakeVartree.py                         |   7 +-
 lib/_emerge/FifoIpcDaemon.py                       |   2 +-
 lib/_emerge/MetadataRegen.py                       |   7 +-
 lib/_emerge/Package.py                             |   1 -
 lib/_emerge/PollScheduler.py                       |   4 +-
 lib/_emerge/Scheduler.py                           | 148 ++++++++++++------
 lib/_emerge/SequentialTaskQueue.py                 |   4 +-
 lib/_emerge/SpawnProcess.py                        |  27 +++-
 lib/_emerge/UseFlagDisplay.py                      |   1 -
 lib/_emerge/UserQuery.py                           |   2 -
 lib/_emerge/actions.py                             |  51 +++---
 lib/_emerge/chk_updated_cfg_files.py               |   2 -
 lib/_emerge/countdown.py                           |   4 +-
 lib/_emerge/depgraph.py                            |  44 ++++--
 lib/_emerge/help.py                                |   4 +-
 lib/_emerge/main.py                                |  13 +-
 lib/_emerge/post_emerge.py                         |   4 +-
 lib/_emerge/resolver/backtracking.py               |   7 +-
 lib/_emerge/resolver/circular_dependency.py        |  14 +-
 lib/_emerge/resolver/output.py                     |  39 +----
 lib/_emerge/resolver/output_helpers.py             | 115 +-------------
 lib/_emerge/resolver/package_tracker.py            |   4 +-
 lib/_emerge/resolver/slot_collision.py             | 143 ++++++++---------
 lib/_emerge/search.py                              |  20 ++-
 lib/_emerge/stdout_spinner.py                      |   2 +-
 lib/_emerge/unmerge.py                             |  34 ++--
 lib/portage/__init__.py                            |  17 ++
 lib/portage/_emirrordist/Config.py                 |   1 -
 lib/portage/_emirrordist/FetchTask.py              |   8 +-
 lib/portage/_emirrordist/main.py                   |   2 +-
 lib/portage/_global_updates.py                     |   4 +-
 lib/portage/_selinux.py                            |  16 +-
 lib/portage/_sets/__init__.py                      |  12 +-
 lib/portage/_sets/base.py                          |  22 +--
 lib/portage/_sets/dbapi.py                         |  87 ++++-------
 lib/portage/_sets/files.py                         |  14 +-
 lib/portage/_sets/libs.py                          |   4 +-
 lib/portage/_sets/security.py                      |  16 +-
 lib/portage/_sets/shell.py                         |   4 +-
 .../{_compat_upgrade => binrepo}/__init__.py       |   0
 lib/portage/binrepo/config.py                      | 133 ++++++++++++++++
 lib/portage/cache/anydbm.py                        |   5 +-
 lib/portage/cache/ebuild_xattr.py                  |   1 -
 lib/portage/cache/flat_hash.py                     |   2 +-
 lib/portage/cache/fs_template.py                   |   2 +-
 lib/portage/cache/mappings.py                      |   4 +-
 lib/portage/cache/metadata.py                      |   4 +-
 lib/portage/cache/sql_template.py                  |  24 +--
 lib/portage/cache/sqlite.py                        |  37 +++--
 lib/portage/cache/template.py                      |   6 +-
 lib/portage/checksum.py                            |  19 +--
 lib/portage/const.py                               |   2 +
 lib/portage/cvstree.py                             |   8 +-
 lib/portage/dbapi/IndexedPortdb.py                 |   3 +-
 lib/portage/dbapi/__init__.py                      |   6 +-
 lib/portage/dbapi/bintree.py                       |  75 ++++++---
 lib/portage/dbapi/cpv_expand.py                    |   4 +-
 lib/portage/dbapi/porttree.py                      |  12 +-
 lib/portage/dbapi/vartree.py                       |  15 +-
 lib/portage/dbapi/virtual.py                       |   4 +-
 lib/portage/dep/__init__.py                        |  46 +++---
 lib/portage/dep/dep_check.py                       |   4 +-
 lib/portage/dep/soname/SonameAtom.py               |   3 -
 lib/portage/dep/soname/multilib_category.py        |  11 +-
 lib/portage/dispatch_conf.py                       |   5 +-
 lib/portage/elog/__init__.py                       |   4 +-
 lib/portage/elog/messages.py                       |  14 +-
 lib/portage/elog/mod_custom.py                     |   9 +-
 lib/portage/elog/mod_echo.py                       |   5 +-
 lib/portage/elog/mod_mail.py                       |  10 +-
 lib/portage/elog/mod_mail_summary.py               |   9 +-
 lib/portage/elog/mod_save_summary.py               |   2 +-
 lib/portage/elog/mod_syslog.py                     |   4 +-
 lib/portage/emaint/main.py                         |   4 +-
 lib/portage/emaint/modules/merges/merges.py        |   4 +-
 lib/portage/emaint/modules/move/move.py            |   5 +-
 lib/portage/emaint/modules/sync/sync.py            |   4 -
 lib/portage/env/config.py                          |  22 +--
 lib/portage/env/loaders.py                         |  22 +--
 lib/portage/env/validators.py                      |   4 +-
 lib/portage/exception.py                           |   2 +-
 lib/portage/getbinpkg.py                           |  40 ++---
 lib/portage/glsa.py                                |  36 ++---
 lib/portage/localization.py                        |   6 +-
 lib/portage/locks.py                               |  10 +-
 lib/portage/mail.py                                |   2 -
 lib/portage/manifest.py                            |  32 ++--
 lib/portage/metadata.py                            |  16 +-
 lib/portage/module.py                              |   5 +-
 lib/portage/news.py                                |   9 +-
 lib/portage/output.py                              |  10 +-
 .../package/ebuild/_config/KeywordsManager.py      |   5 +-
 .../package/ebuild/_config/LicenseManager.py       |   4 +-
 lib/portage/package/ebuild/_spawn_nofetch.py       |   6 +-
 lib/portage/package/ebuild/config.py               |  12 +-
 .../package/ebuild/deprecated_profile_check.py     |   4 +-
 lib/portage/package/ebuild/doebuild.py             |   2 +-
 lib/portage/package/ebuild/fetch.py                |  10 +-
 lib/portage/package/ebuild/getmaskingreason.py     |   4 +-
 lib/portage/package/ebuild/getmaskingstatus.py     |   4 +-
 lib/portage/package/ebuild/prepare_build_dirs.py   |   1 -
 lib/portage/process.py                             |  32 ++--
 lib/portage/repository/config.py                   |   2 +-
 .../repository/storage/hardlink_quarantine.py      |  26 +--
 lib/portage/repository/storage/hardlink_rcu.py     |  34 ++--
 lib/portage/repository/storage/inplace.py          |  10 +-
 lib/portage/repository/storage/interface.py        |  10 +-
 lib/portage/sync/controller.py                     |   8 +-
 lib/portage/sync/modules/git/git.py                |  14 +-
 lib/portage/sync/modules/mercurial/__init__.py     |  39 +++++
 lib/portage/sync/modules/mercurial/mercurial.py    | 174 +++++++++++++++++++++
 lib/portage/sync/modules/rsync/rsync.py            |  64 ++++----
 lib/portage/sync/modules/webrsync/webrsync.py      |   4 +-
 lib/portage/sync/old_tree_timestamp.py             |   4 +-
 lib/portage/sync/syncbase.py                       |  23 ++-
 lib/portage/tests/__init__.py                      |   4 +-
 lib/portage/tests/dbapi/test_auxdb.py              |  43 ++++-
 lib/portage/tests/dep/testAtom.py                  |   6 +-
 lib/portage/tests/dep/testExtractAffectingUSE.py   |   6 +-
 lib/portage/tests/dep/test_dep_getcpv.py           |   4 +-
 lib/portage/tests/ebuild/test_config.py            |   4 +-
 lib/portage/tests/emerge/test_simple.py            |  23 ++-
 .../tests/env/config/test_PackageMaskFile.py       |   8 +-
 lib/portage/tests/lafilefixer/test_lafilefixer.py  |   4 +-
 lib/portage/tests/locks/test_lock_nonblock.py      |   1 +
 lib/portage/tests/process/test_AsyncFunction.py    |  28 +++-
 lib/portage/tests/process/test_PipeLogger.py       |   2 +-
 lib/portage/tests/resolver/ResolverPlayground.py   |   8 +-
 .../tests/resolver/test_circular_dependencies.py   |  10 +-
 lib/portage/tests/resolver/test_eapi.py            |  80 +++++-----
 lib/portage/tests/resolver/test_merge_order.py     |   3 +-
 .../test_missing_iuse_and_evaluated_atoms.py       |   8 +-
 .../tests/resolver/test_old_dep_chain_display.py   |   6 +-
 lib/portage/tests/resolver/test_required_use.py    |   4 +-
 lib/portage/tests/resolver/test_simple.py          |   4 +-
 .../resolver/test_slot_change_without_revbump.py   |   4 +-
 lib/portage/tests/resolver/test_slot_collisions.py |   8 +-
 .../tests/resolver/test_slot_conflict_rebuild.py   |  61 +++++++-
 .../test_slot_conflict_unsatisfied_deep_deps.py    |  10 +-
 .../resolver/test_slot_operator_missed_update.py   | 112 +++++++++++++
 lib/portage/tests/runTests.py                      |   7 +-
 lib/portage/tests/sets/shell/testShell.py          |   4 +-
 lib/portage/tests/sync/test_sync_local.py          |  67 +++++++-
 .../tests/util/eventloop/test_call_soon_fifo.py    |   4 +-
 .../util/futures/asyncio/test_child_watcher.py     |   4 +-
 .../futures/asyncio/test_event_loop_in_fork.py     |  23 +--
 .../util/futures/asyncio/test_wakeup_fd_sigchld.py |   2 +-
 .../tests/util/futures/test_compat_coroutine.py    |  45 +++---
 lib/portage/tests/util/test_getconfig.py           |   3 +-
 lib/portage/tests/util/test_grabdict.py            |   4 +-
 lib/portage/tests/util/test_normalizedPath.py      |   6 +-
 lib/portage/tests/util/test_socks5.py              |   2 +-
 lib/portage/tests/util/test_xattr.py               |   4 +-
 lib/portage/tests/xpak/test_decodeint.py           |   4 +-
 lib/portage/update.py                              |   2 +-
 lib/portage/util/__init__.py                       |   8 +-
 lib/portage/util/_async/BuildLogger.py             |  31 ++--
 lib/portage/util/_async/ForkProcess.py             |   6 +-
 lib/portage/util/_async/PipeLogger.py              |   6 +-
 lib/portage/util/_async/SchedulerInterface.py      |   4 +-
 lib/portage/util/_desktop_entry.py                 |   9 +-
 lib/portage/util/_dyn_libs/LinkageMapELF.py        |   4 +-
 lib/portage/util/_dyn_libs/NeededEntry.py          |   4 +-
 .../util/_dyn_libs/PreservedLibsRegistry.py        |  10 +-
 .../util/_dyn_libs/display_preserved_libs.py       |   6 +-
 lib/portage/util/_eventloop/EventLoop.py           |  11 +-
 lib/portage/util/_eventloop/PollSelectAdapter.py   |   5 +-
 lib/portage/util/_eventloop/asyncio_event_loop.py  |   4 +-
 lib/portage/util/_eventloop/global_event_loop.py   |   7 +-
 lib/portage/util/_urlopen.py                       |  10 +-
 lib/portage/util/_xattr.py                         |   4 +-
 lib/portage/util/env_update.py                     |  46 +++++-
 lib/portage/util/futures/_asyncio/process.py       |  16 +-
 lib/portage/util/futures/_asyncio/tasks.py         |   6 +-
 lib/portage/util/futures/_sync_decorator.py        |   3 +-
 lib/portage/util/futures/compat_coroutine.py       |   7 +-
 lib/portage/util/futures/executor/fork.py          |   2 +-
 lib/portage/util/futures/iter_completed.py         |   4 +-
 lib/portage/util/locale.py                         |   5 +-
 lib/portage/util/movefile.py                       |   4 +-
 lib/portage/util/netlink.py                        |   3 +-
 lib/portage/util/socks5.py                         |  13 +-
 lib/portage/util/whirlpool.py                      |   2 -
 lib/portage/xml/metadata.py                        |  24 +--
 lib/portage/xpak.py                                |  18 +--
 man/egencache.1                                    |  12 +-
 man/emerge.1                                       |  20 ++-
 man/make.conf.5                                    |  11 +-
 man/portage.5                                      | 118 +++++++++++---
 pylintrc                                           |  26 ++-
 repoman/RELEASE-NOTES                              |  11 ++
 repoman/bin/repoman                                |   5 +-
 repoman/lib/repoman/actions.py                     |   4 +-
 repoman/lib/repoman/argparser.py                   |   9 ++
 repoman/lib/repoman/errors.py                      |   2 -
 repoman/lib/repoman/gpg.py                         |   2 -
 repoman/lib/repoman/main.py                        |   5 +-
 repoman/lib/repoman/metadata.py                    |   2 -
 repoman/lib/repoman/modules/commit/repochecks.py   |   2 -
 .../modules/linechecks/deprecated/inherit.py       |   1 -
 repoman/lib/repoman/modules/scan/depend/profile.py | 117 +++++++++++---
 repoman/lib/repoman/modules/scan/ebuild/ebuild.py  |   3 +-
 repoman/lib/repoman/modules/vcs/settings.py        |   3 +-
 repoman/lib/repoman/modules/vcs/vcs.py             |   3 +-
 repoman/lib/repoman/profile.py                     |   2 -
 repoman/lib/repoman/scanner.py                     |  18 +--
 repoman/lib/repoman/tests/__init__.py              |   4 +-
 repoman/lib/repoman/utilities.py                   |   4 +-
 repoman/man/repoman.1                              |   9 +-
 repoman/runtests                                   |   4 +-
 repoman/setup.py                                   |   6 +-
 runtests                                           |   4 +-
 setup.py                                           |   4 +-
 tabcheck.py                                        |   3 +-
 tox.ini                                            |   2 +
 246 files changed, 2385 insertions(+), 1464 deletions(-)

diff --cc bin/archive-conf
index 6271b833c,bfc54a629..11e1d25b7
--- a/bin/archive-conf
+++ b/bin/archive-conf
@@@ -1,5 -1,5 +1,5 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2014 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
  #
diff --cc bin/clean_locks
index a35b9f73a,d1f296065..25dc62915
--- a/bin/clean_locks
+++ b/bin/clean_locks
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2014 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import sys, errno
  from os import path as osp
  if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), 
".portage_not_installed")):
diff --cc bin/dispatch-conf
index 2a9db88a9,fa047244a..6fe6d332c
--- a/bin/dispatch-conf
+++ b/bin/dispatch-conf
@@@ -1,5 -1,5 +1,5 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2019 Gentoo Authors
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
  #
diff --cc bin/dohtml.py
index 7be1241eb,6a1ed10fe..2e25a4b02
--- a/bin/dohtml.py
+++ b/bin/dohtml.py
@@@ -1,5 -1,5 +1,5 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2014 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
  #
diff --cc bin/ebuild
index d3961ddc5,09f7f839b..54c024fd3
--- a/bin/ebuild
+++ b/bin/ebuild
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2019 Gentoo Authors
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import argparse
  import platform
  import signal
diff --cc bin/egencache
index 1dc94b790,4ee63edad..ae54b611c
--- a/bin/egencache
+++ b/bin/egencache
@@@ -1,5 -1,5 +1,5 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 2009-2015 Gentoo Foundation
+ # Copyright 2009-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
  # unicode_literals for compat with TextIOWrapper in Python 2
diff --cc bin/emaint
index ea97c9b04,5cb667f28..af5234183
--- a/bin/emaint
+++ b/bin/emaint
@@@ -1,5 -1,5 +1,5 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 2005-2014 Gentoo Foundation
+ # Copyright 2005-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
  """System health checks and maintenance utilities.
diff --cc bin/emerge
index 65547e390,f0a2b8429..8f1db61a6
--- a/bin/emerge
+++ b/bin/emerge
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 2006-2014 Gentoo Foundation
+ # Copyright 2006-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import platform
  import signal
  import sys
diff --cc bin/env-update
index 6ffadc638,6571b0011..5c2df8544
--- a/bin/env-update
+++ b/bin/env-update
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2014 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import errno
  import sys
  
diff --cc bin/fixpackages
index f43506600,e56d26ec1..5c4185071
--- a/bin/fixpackages
+++ b/bin/fixpackages
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2014 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import argparse
  import os
  import sys
diff --cc bin/glsa-check
index 64a4ea617,8200f75b6..a61dee4f8
--- a/bin/glsa-check
+++ b/bin/glsa-check
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2019 Gentoo Authors
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import argparse
  import re
  import sys
diff --cc bin/portageq
index d54f8d02b,dbcd9f62d..91b9c1322
--- a/bin/portageq
+++ b/bin/portageq
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2018 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import argparse
  import signal
  import sys
diff --cc bin/quickpkg
index 17de837f7,a171b3bd5..72fe19c18
--- a/bin/quickpkg
+++ b/bin/quickpkg
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2014 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import division, print_function
- 
  import argparse
  import errno
  import math
diff --cc bin/regenworld
index 45394ab5b,9f33502c6..c195c0b3a
--- a/bin/regenworld
+++ b/bin/regenworld
@@@ -1,9 -1,7 +1,7 @@@
 -#!/usr/bin/python -b
 +#!@PREFIX_PORTAGE_PYTHON@ -b
- # Copyright 1999-2014 Gentoo Foundation
+ # Copyright 1999-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- from __future__ import print_function
- 
  import sys
  from os import path as osp
  if osp.isfile(osp.join(osp.dirname(osp.dirname(osp.realpath(__file__))), 
".portage_not_installed")):
diff --cc lib/_emerge/actions.py
index 961ecf3d1,5e8a46957..a2f21ed2f
--- a/lib/_emerge/actions.py
+++ b/lib/_emerge/actions.py
@@@ -34,11 -31,9 +31,10 @@@ portage.proxy.lazyimport.lazyimport(glo
  
  from portage import os
  from portage import shutil
- from portage import eapi_is_supported, _encodings, _unicode_decode
- from portage.cache.cache_errors import CacheError
+ from portage import _encodings, _unicode_decode
+ from portage.binrepo.config import BinRepoConfigLoader
+ from portage.const import BINREPOS_CONF_FILE, _DEPCLEAN_LIB_CHECK_DEFAULT
 +from portage.const import EPREFIX
- from portage.const import GLOBAL_CONFIG_PATH, VCS_DIRS, 
_DEPCLEAN_LIB_CHECK_DEFAULT
- from portage.const import SUPPORTED_BINPKG_FORMATS, TIMESTAMP_FORMAT
  from portage.dbapi.dep_expand import dep_expand
  from portage.dbapi._expand_new_virt import expand_new_virt
  from portage.dbapi.IndexedPortdb import IndexedPortdb
diff --cc lib/portage/dbapi/bintree.py
index 9111cec06,7e24589e5..22bc8b7b1
--- a/lib/portage/dbapi/bintree.py
+++ b/lib/portage/dbapi/bintree.py
@@@ -380,11 -382,11 +382,11 @@@ class binarytree
                        self._pkgindex_keys.update(["CPV", "SIZE"])
                        self._pkgindex_aux_keys = \
                                ["BASE_URI", "BDEPEND", "BUILD_ID", 
"BUILD_TIME", "CHOST",
-                               "DEFINED_PHASES", "DEPEND", "DESCRIPTION", 
"EAPI",
+                               "DEFINED_PHASES", "DEPEND", "DESCRIPTION", 
"EAPI", "FETCHCOMMAND",
                                "IUSE", "KEYWORDS", "LICENSE", "PDEPEND",
                                "PKGINDEX_URI", "PROPERTIES", "PROVIDES",
-                               "RDEPEND", "repository", "REQUIRES", "RESTRICT",
+                               "RDEPEND", "repository", "REQUIRES", 
"RESTRICT", "RESUMECOMMAND",
 -                              "SIZE", "SLOT", "USE"]
 +                              "SIZE", "SLOT", "USE", "EPREFIX"]
                        self._pkgindex_aux_keys = list(self._pkgindex_aux_keys)
                        self._pkgindex_use_evaluated_keys = \
                                ("BDEPEND", "DEPEND", "LICENSE", "RDEPEND",
diff --cc lib/portage/package/ebuild/config.py
index b1b2b47d7,a09fdbced..8e95fdf3b
--- a/lib/portage/package/ebuild/config.py
+++ b/lib/portage/package/ebuild/config.py
@@@ -39,11 -38,10 +38,10 @@@ from portage.dep import Atom, isvalidat
  from portage.eapi import (eapi_exports_AA, eapi_exports_merge_type,
        eapi_supports_prefix, eapi_exports_replace_vars, _get_eapi_attrs)
  from portage.env.loaders import KeyValuePairFileLoader
- from portage.exception import InvalidDependString, IsADirectory, \
-               PortageException
+ from portage.exception import InvalidDependString, PortageException
  from portage.localization import _
  from portage.output import colorize
 -from portage.process import fakeroot_capable, sandbox_capable
 +from portage.process import fakeroot_capable, sandbox_capable, 
macossandbox_capable
  from portage.repository.config import load_repository_config
  from portage.util import ensure_dirs, getconfig, grabdict, \
        grabdict_package, grabfile, grabfile_package, LazyItemsDict, \
diff --cc lib/portage/tests/runTests.py
index 2f9a7ad47,9514abebe..271a959e9
--- a/lib/portage/tests/runTests.py
+++ b/lib/portage/tests/runTests.py
@@@ -1,11 -1,11 +1,11 @@@
 -#!/usr/bin/python -bWd
 +#!@PREFIX_PORTAGE_PYTHON@ -bWd
  # runTests.py -- Portage Unit Test Functionality
- # Copyright 2006-2014 Gentoo Foundation
+ # Copyright 2006-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  
- import os, sys
- import os.path as osp
  import grp
+ import os
+ import os.path as osp
  import platform
  import pwd
  import signal
diff --cc lib/portage/util/env_update.py
index 59f5bb9cc,dec086cf8..2e0e037dd
--- a/lib/portage/util/env_update.py
+++ b/lib/portage/util/env_update.py
@@@ -333,14 -333,16 +333,16 @@@ def _env_update(makelinks, target_root
  
        del specials["LDPATH"]
  
-       penvnotice  = "# THIS FILE IS AUTOMATICALLY GENERATED BY env-update.\n"
-       penvnotice += "# DO NOT EDIT THIS FILE. CHANGES TO STARTUP PROFILES\n"
+       notice      = "# THIS FILE IS AUTOMATICALLY GENERATED BY env-update.\n"
+       notice     += "# DO NOT EDIT THIS FILE."
+       penvnotice  = notice + " CHANGES TO STARTUP PROFILES\n"
        cenvnotice  = penvnotice[:]
 -      penvnotice += "# GO INTO /etc/profile NOT /etc/profile.env\n\n"
 -      cenvnotice += "# GO INTO /etc/csh.cshrc NOT /etc/csh.env\n\n"
 +      penvnotice += "# GO INTO " + eprefix + "/etc/profile NOT 
/etc/profile.env\n\n"
 +      cenvnotice += "# GO INTO " + eprefix + "/etc/csh.cshrc NOT 
/etc/csh.env\n\n"
  
        #create /etc/profile.env for bash support
-       outfile = atomic_ofstream(os.path.join(eroot, "etc", "profile.env"))
+       profile_env_path = os.path.join(eroot, "etc", "profile.env")
+       outfile = atomic_ofstream(profile_env_path)
        outfile.write(penvnotice)
  
        env_keys = [x for x in env if x != "LDPATH"]
diff --cc runtests
index 9bc5dfced,685a7d9c7..3196962a9
--- a/runtests
+++ b/runtests
@@@ -1,5 -1,5 +1,5 @@@
 -#!/usr/bin/python
 +#!/usr/bin/env python
- # Copyright 2010-2015 Gentoo Foundation
+ # Copyright 2010-2020 Gentoo Authors
  # Distributed under the terms of the GNU General Public License v2
  #
  # Note: We don't want to import portage modules directly because we do things
diff --cc tabcheck.py
index fe5227ca7,1df26785d..7bc9813f7
--- a/tabcheck.py
+++ b/tabcheck.py
@@@ -1,7 -1,7 +1,8 @@@
 -#!/usr/bin/python -b
 +#!/usr/bin/env python
  
- import tabnanny,sys
+ import sys
+ import tabnanny
  
  for x in sys.argv:
 +      print ("Tabchecking " + x)
        tabnanny.check(x)

Reply via email to