* [gentoo-portage-dev] [PATCH 4/4] Use ">>>>" and "!!!!" for output prefixes
2021-09-28 14:20 [gentoo-portage-dev] [PATCH 0/4] Output rewrite for better clarify and greppability Michał Górny
` (2 preceding siblings ...)
2021-09-28 14:20 ` [gentoo-portage-dev] [PATCH 3/4] Use verbose prefixes for output messages Michał Górny
@ 2021-09-28 14:20 ` Michał Górny
2021-09-28 15:28 ` [gentoo-portage-dev] [PATCH 0/4] Output rewrite for better clarify and greppability Mike Gilbert
2021-10-04 6:49 ` Michał Górny
5 siblings, 0 replies; 8+ messages in thread
From: Michał Górny @ 2021-09-28 14:20 UTC (permalink / raw
To: gentoo-portage-dev; +Cc: Michał Górny
Replace ">>>" with ">>>>" and "!!!" with "!!!!" output prefixes in order
to align Portage's messages with the new log output.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
bin/clean_locks | 2 +-
bin/dohtml.py | 2 +-
bin/doins.py | 2 +-
bin/ebuild | 8 +-
bin/ebuild-helpers/dobin | 2 +-
bin/ebuild-helpers/dodoc | 2 +-
bin/ebuild-helpers/doexe | 2 +-
bin/ebuild-helpers/doinfo | 2 +-
bin/ebuild-helpers/dolib | 2 +-
bin/ebuild-helpers/doman | 2 +-
bin/ebuild-helpers/domo | 2 +-
bin/ebuild-helpers/dosbin | 2 +-
bin/ebuild-helpers/dosed | 4 +-
bin/ebuild-helpers/keepdir | 2 +-
bin/ebuild-helpers/newins | 4 +-
bin/env-update | 2 +-
bin/fixpackages | 4 +-
bin/glsa-check | 14 +-
bin/install.py | 2 +-
bin/misc-functions.sh | 22 +--
bin/phase-functions.sh | 64 ++++-----
bin/phase-helpers.sh | 18 +--
bin/portageq | 6 +-
cnf/repo.postsync.d/example | 4 +-
lib/_emerge/Binpkg.py | 10 +-
| 4 +-
lib/_emerge/BinpkgVerifier.py | 12 +-
lib/_emerge/BlockerCache.py | 2 +-
lib/_emerge/BlockerDB.py | 2 +-
lib/_emerge/EbuildBuild.py | 2 +-
lib/_emerge/EbuildIpcDaemon.py | 2 +-
lib/_emerge/EbuildPhase.py | 2 +-
lib/_emerge/JobStatusDisplay.py | 2 +-
lib/_emerge/MergeListItem.py | 2 +-
lib/_emerge/PackageUninstall.py | 6 +-
lib/_emerge/Scheduler.py | 20 +--
lib/_emerge/SpawnProcess.py | 2 +-
lib/_emerge/SubProcess.py | 2 +-
lib/_emerge/actions.py | 126 ++++++++++--------
lib/_emerge/countdown.py | 4 +-
lib/_emerge/depgraph.py | 121 +++++++++--------
lib/_emerge/main.py | 6 +-
lib/_emerge/post_emerge.py | 4 +-
lib/_emerge/resolver/output_helpers.py | 4 +-
lib/_emerge/resolver/slot_collision.py | 16 +--
lib/_emerge/show_invalid_depstring_notice.py | 2 +-
lib/_emerge/unmerge.py | 44 +++---
lib/portage/__init__.py | 24 ++--
lib/portage/_selinux.py | 4 +-
lib/portage/_sets/shell.py | 2 +-
lib/portage/binrepo/config.py | 4 +-
lib/portage/data.py | 2 +-
lib/portage/dbapi/__init__.py | 2 +-
lib/portage/dbapi/bintree.py | 45 ++++---
lib/portage/dbapi/porttree.py | 12 +-
lib/portage/dbapi/vartree.py | 94 ++++++-------
lib/portage/dep/__init__.py | 48 +++----
lib/portage/elog/__init__.py | 2 +-
lib/portage/elog/messages.py | 5 +-
lib/portage/elog/mod_custom.py | 4 +-
lib/portage/elog/mod_mail_summary.py | 2 +-
lib/portage/elog/mod_save_summary.py | 2 +-
lib/portage/emaint/modules/binhost/binhost.py | 3 +-
lib/portage/env/loaders.py | 14 +-
lib/portage/getbinpkg.py | 32 ++---
lib/portage/locks.py | 2 +-
lib/portage/mail.py | 12 +-
lib/portage/manifest.py | 2 +-
lib/portage/metadata.py | 6 +-
lib/portage/news.py | 6 +-
.../ebuild/_config/LocationsManager.py | 10 +-
.../_parallel_manifest/ManifestProcess.py | 6 +-
.../_parallel_manifest/ManifestScheduler.py | 2 +-
.../ebuild/_parallel_manifest/ManifestTask.py | 6 +-
lib/portage/package/ebuild/config.py | 61 ++++-----
.../ebuild/deprecated_profile_check.py | 12 +-
lib/portage/package/ebuild/digestcheck.py | 24 ++--
lib/portage/package/ebuild/digestgen.py | 20 +--
lib/portage/package/ebuild/doebuild.py | 36 ++---
lib/portage/package/ebuild/fetch.py | 126 +++++++++---------
.../package/ebuild/prepare_build_dirs.py | 25 ++--
lib/portage/repository/config.py | 31 ++---
lib/portage/sync/config_checks.py | 12 +-
lib/portage/sync/controller.py | 6 +-
lib/portage/sync/modules/cvs/__init__.py | 2 +-
lib/portage/sync/modules/cvs/cvs.py | 4 +-
lib/portage/sync/modules/git/__init__.py | 4 +-
lib/portage/sync/modules/git/git.py | 14 +-
.../sync/modules/mercurial/mercurial.py | 4 +-
lib/portage/sync/modules/rsync/rsync.py | 60 ++++-----
lib/portage/sync/modules/svn/svn.py | 6 +-
lib/portage/sync/modules/webrsync/webrsync.py | 10 +-
lib/portage/sync/old_tree_timestamp.py | 2 +-
lib/portage/sync/syncbase.py | 6 +-
lib/portage/tests/resolver/test_autounmask.py | 6 +-
.../resolver/test_autounmask_use_breakage.py | 6 +-
...est_slot_conflict_unsatisfied_deep_deps.py | 12 +-
lib/portage/update.py | 4 +-
lib/portage/util/__init__.py | 30 ++---
.../util/_dyn_libs/PreservedLibsRegistry.py | 4 +-
.../util/_dyn_libs/display_preserved_libs.py | 4 +-
lib/portage/util/env_update.py | 8 +-
lib/portage/util/locale.py | 2 +-
lib/portage/util/movefile.py | 40 +++---
lib/portage/util/mtimedb.py | 5 +-
lib/portage/util/writeable_check.py | 4 +-
lib/portage/versions.py | 20 +--
lib/portage/xml/metadata.py | 18 +--
misc/emerge-delta-webrsync | 8 +-
repoman/lib/repoman/__init__.py | 12 +-
repoman/lib/repoman/actions.py | 24 ++--
repoman/lib/repoman/gpg.py | 2 +-
.../lib/repoman/modules/commit/manifest.py | 4 +-
repoman/lib/repoman/modules/vcs/cvs/status.py | 6 +-
.../lib/repoman/modules/vcs/git/changes.py | 2 +-
repoman/lib/repoman/modules/vcs/svn/status.py | 6 +-
repoman/lib/repoman/scanner.py | 4 +-
117 files changed, 834 insertions(+), 788 deletions(-)
diff --git a/bin/clean_locks b/bin/clean_locks
index e5765fd7e..14f3c857c 100755
--- a/bin/clean_locks
+++ b/bin/clean_locks
@@ -36,7 +36,7 @@ for x in sys.argv[1:]:
except OSError as e:
if e.errno in (errno.ENOENT, errno.ENOTDIR):
- print("!!! %s is not a directory or does not exist" % x)
+ print("!!!! %s is not a directory or does not exist" % x)
else:
raise
sys.exit(e.errno)
diff --git a/bin/dohtml.py b/bin/dohtml.py
index c7235ff4e..344ab7579 100755
--- a/bin/dohtml.py
+++ b/bin/dohtml.py
@@ -96,7 +96,7 @@ def install(basename, dirname, options, prefix=""):
).rstrip(os.sep)
if not os.path.exists(fullpath):
- sys.stderr.write("!!! dohtml: %s does not exist\n" % fullpath)
+ sys.stderr.write("!!!! dohtml: %s does not exist\n" % fullpath)
return False
elif os.path.isfile(fullpath):
ext = os.path.splitext(basename)[1][1:]
diff --git a/bin/doins.py b/bin/doins.py
index 97b0e2e2f..0f4c0fd3c 100644
--- a/bin/doins.py
+++ b/bin/doins.py
@@ -34,7 +34,7 @@ def _warn(helper, msg):
helper: helper executable name.
msg: Message to be output.
"""
- print("!!! %s: %s\n" % (helper, msg), file=sys.stderr)
+ print("!!!! %s: %s\n" % (helper, msg), file=sys.stderr)
def _parse_group(group):
diff --git a/bin/ebuild b/bin/ebuild
index 0a2b13a13..2cf004671 100755
--- a/bin/ebuild
+++ b/bin/ebuild
@@ -328,7 +328,7 @@ def stale_env_warning():
(tmpsettings["PF"], )
msg = textwrap.wrap(msg, 70)
for x in msg:
- portage.writemsg(">>> %s\n" % x)
+ portage.writemsg(">>>> %s\n" % x)
if ebuild_changed:
open(os.path.join(tmpsettings['PORTAGE_BUILDDIR'],
@@ -359,13 +359,13 @@ for arg in pargs:
msg = textwrap.wrap(str(e), 70)
del e
for x in msg:
- portage.writemsg("!!! %s\n" % x, noiselevel=-1)
+ portage.writemsg("!!!! %s\n" % x, noiselevel=-1)
a = 1
except PortagePackageException as e:
- portage.writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ portage.writemsg("!!!! %s\n" % (e,), noiselevel=-1)
a = 1
except PermissionDenied as e:
- portage.writemsg("!!! Permission Denied: %s\n" % (e,), noiselevel=-1)
+ portage.writemsg("!!!! Permission Denied: %s\n" % (e,), noiselevel=-1)
a = 1
if a == None:
print("Could not run the required binary?")
diff --git a/bin/ebuild-helpers/dobin b/bin/ebuild-helpers/dobin
index 975067fb1..aaa3f2588 100755
--- a/bin/ebuild-helpers/dobin
+++ b/bin/ebuild-helpers/dobin
@@ -31,7 +31,7 @@ for x in "$@" ; do
if [[ -e ${x} ]] ; then
install -m0755 -o ${PORTAGE_INST_UID:-0} -g ${PORTAGE_INST_GID:-0} "${x}" "${ED%/}/${_E_DESTTREE_#/}/bin"
else
- echo "!!! ${0##*/}: $x does not exist" 1>&2
+ echo "!!!! ${0##*/}: $x does not exist" 1>&2
false
fi
((ret|=$?))
diff --git a/bin/ebuild-helpers/dodoc b/bin/ebuild-helpers/dodoc
index e83091045..30bc3ab0e 100755
--- a/bin/ebuild-helpers/dodoc
+++ b/bin/ebuild-helpers/dodoc
@@ -29,7 +29,7 @@ for x in "$@" ; do
elif [ -s "${x}" ] ; then
install -m0644 "${x}" "${dir}" || { ((ret|=1)); continue; }
elif [ ! -e "${x}" ] ; then
- echo "!!! ${0##*/}: $x does not exist" 1>&2
+ echo "!!!! ${0##*/}: $x does not exist" 1>&2
((ret|=1))
fi
done
diff --git a/bin/ebuild-helpers/doexe b/bin/ebuild-helpers/doexe
index 152c13bf6..27b4acc19 100755
--- a/bin/ebuild-helpers/doexe
+++ b/bin/ebuild-helpers/doexe
@@ -34,7 +34,7 @@ for x in "$@" ; do
if [ -e "$mysrc" ] ; then
install ${EXEOPTIONS} "$mysrc" "${ED%/}/${_E_EXEDESTTREE_#/}"
else
- echo "!!! ${0##*/}: $mysrc does not exist" 1>&2
+ echo "!!!! ${0##*/}: $mysrc does not exist" 1>&2
false
fi
((ret|=$?))
diff --git a/bin/ebuild-helpers/doinfo b/bin/ebuild-helpers/doinfo
index 30a38e055..515cdc3bb 100755
--- a/bin/ebuild-helpers/doinfo
+++ b/bin/ebuild-helpers/doinfo
@@ -21,7 +21,7 @@ install -m0644 "$@" "${ED%/}/usr/share/info"
rval=$?
if [ $rval -ne 0 ] ; then
for x in "$@" ; do
- [ -e "$x" ] || echo "!!! ${0##*/}: $x does not exist" 1>&2
+ [ -e "$x" ] || echo "!!!! ${0##*/}: $x does not exist" 1>&2
done
__helpers_die "${0##*/} failed"
fi
diff --git a/bin/ebuild-helpers/dolib b/bin/ebuild-helpers/dolib
index bd8eebca7..8975611c6 100755
--- a/bin/ebuild-helpers/dolib
+++ b/bin/ebuild-helpers/dolib
@@ -50,7 +50,7 @@ for x in "$@" ; do
ln -s "$(readlink "${x}")" "${libdir}/${x##*/}"
fi
else
- echo "!!! ${0##*/}: ${x} does not exist" 1>&2
+ echo "!!!! ${0##*/}: ${x} does not exist" 1>&2
false
fi
((ret|=$?))
diff --git a/bin/ebuild-helpers/doman b/bin/ebuild-helpers/doman
index 9cfc89df0..1b56e08dd 100755
--- a/bin/ebuild-helpers/doman
+++ b/bin/ebuild-helpers/doman
@@ -56,7 +56,7 @@ for x in "$@" ; do
install -m0644 "${x}" "${ED%/}/usr/share/man/${mandir}/${name}"
((ret|=$?))
elif [[ ! -e ${x} ]] ; then
- echo "!!! ${0##*/}: $x does not exist" 1>&2
+ echo "!!!! ${0##*/}: $x does not exist" 1>&2
((ret|=1))
fi
else
diff --git a/bin/ebuild-helpers/domo b/bin/ebuild-helpers/domo
index 2e95eb751..416e15ae6 100755
--- a/bin/ebuild-helpers/domo
+++ b/bin/ebuild-helpers/domo
@@ -42,7 +42,7 @@ for x in "$@" ; do
fi
install -m0644 "${x}" "${mydir}/${MOPREFIX}.mo"
else
- echo "!!! ${0##*/}: $x does not exist" 1>&2
+ echo "!!!! ${0##*/}: $x does not exist" 1>&2
false
fi
((ret|=$?))
diff --git a/bin/ebuild-helpers/dosbin b/bin/ebuild-helpers/dosbin
index ac0ab37ca..db99ab17a 100755
--- a/bin/ebuild-helpers/dosbin
+++ b/bin/ebuild-helpers/dosbin
@@ -31,7 +31,7 @@ for x in "$@" ; do
if [[ -e ${x} ]] ; then
install -m0755 -o ${PORTAGE_INST_UID:-0} -g ${PORTAGE_INST_GID:-0} "${x}" "${ED%/}/${_E_DESTTREE_#/}/sbin"
else
- echo "!!! ${0##*/}: ${x} does not exist" 1>&2
+ echo "!!!! ${0##*/}: ${x} does not exist" 1>&2
false
fi
((ret|=$?))
diff --git a/bin/ebuild-helpers/dosed b/bin/ebuild-helpers/dosed
index 37c8a29d3..9c75cbf64 100755
--- a/bin/ebuild-helpers/dosed
+++ b/bin/ebuild-helpers/dosed
@@ -10,7 +10,7 @@ if ! ___eapi_has_dosed; then
fi
if [[ $# -lt 1 ]] ; then
- echo "!!! ${0##*/}: at least one argument needed" >&2
+ echo "!!!! ${0##*/}: at least one argument needed" >&2
exit 1
fi
@@ -39,7 +39,7 @@ for x in "$@" ; do
done
if [ $file_found = 0 ] ; then
- echo "!!! ${0##*/}: $y does not exist" 1>&2
+ echo "!!!! ${0##*/}: $y does not exist" 1>&2
((ret|=1))
fi
diff --git a/bin/ebuild-helpers/keepdir b/bin/ebuild-helpers/keepdir
index a3c0c151c..0ea23ad1b 100755
--- a/bin/ebuild-helpers/keepdir
+++ b/bin/ebuild-helpers/keepdir
@@ -13,7 +13,7 @@ ret=$?
for x in "$@"; do
>> "${ED%/}/${x#/}/.keep_${CATEGORY}_${PN}-${SLOT%/*}" || \
- { echo "!!! ${0##*/}: cannot write .keep in ${ED%/}/${x#/}" 1>&2; ret=1; }
+ { echo "!!!! ${0##*/}: cannot write .keep in ${ED%/}/${x#/}" 1>&2; ret=1; }
done
[[ ${ret} -ne 0 ]] && __helpers_die "${0##*/} failed"
diff --git a/bin/ebuild-helpers/newins b/bin/ebuild-helpers/newins
index 30e54b7e5..dcb779913 100755
--- a/bin/ebuild-helpers/newins
+++ b/bin/ebuild-helpers/newins
@@ -24,14 +24,14 @@ trap 'rm -rf "${TMP}"' EXIT
if [[ ${stdin} ]] ; then
if [[ -t 0 ]] ; then
- __helpers_die "!!! ${helper}: Input is from a terminal"
+ __helpers_die "!!!! ${helper}: Input is from a terminal"
exit 1
fi
cat > "${TMP}/$2"
ret=$?
else
if [[ ! -e $1 ]] ; then
- __helpers_die "!!! ${helper}: $1 does not exist"
+ __helpers_die "!!!! ${helper}: $1 does not exist"
exit 1
fi
diff --git a/bin/env-update b/bin/env-update
index 6571b0011..4fe916a6a 100755
--- a/bin/env-update
+++ b/bin/env-update
@@ -20,7 +20,7 @@ if "--no-ldconfig" in sys.argv:
sys.argv.pop(sys.argv.index("--no-ldconfig"))
if len(sys.argv) > 1:
- print("!!! Invalid command line options!\n")
+ print("!!!! Invalid command line options!\n")
usage(1)
from os import path as osp
diff --git a/bin/fixpackages b/bin/fixpackages
index e56d26ec1..b4d6f6a1d 100755
--- a/bin/fixpackages
+++ b/bin/fixpackages
@@ -38,9 +38,9 @@ if mysettings['ROOT'] != "/":
try:
os.nice(int(mysettings.get("PORTAGE_NICENESS", "0")))
except (OSError, ValueError) as e:
- portage.writemsg("!!! Failed to change nice value to '%s'\n" % \
+ portage.writemsg("!!!! Failed to change nice value to '%s'\n" % \
mysettings["PORTAGE_NICENESS"])
- portage.writemsg("!!! %s\n" % str(e))
+ portage.writemsg("!!!! %s\n" % str(e))
del e
_global_updates(mytrees, mtimedb["updates"], if_mtime_changed=False)
diff --git a/bin/glsa-check b/bin/glsa-check
index c8610f7df..db6d95894 100755
--- a/bin/glsa-check
+++ b/bin/glsa-check
@@ -233,16 +233,16 @@ if mode in ["dump", "fix", "inject", "pretend"]:
sys.stdout.write("Fixing GLSA "+myid+"\n")
if not myglsa.isVulnerable():
if not quiet:
- sys.stdout.write(">>> no vulnerable packages installed\n")
+ sys.stdout.write(">>>> no vulnerable packages installed\n")
else:
if quiet:
sys.stdout.write("Fixing GLSA "+myid+"\n")
mergelist = myglsa.getMergeList(least_change=least_change)
if mergelist == []:
- sys.stdout.write(">>> cannot fix GLSA, no unaffected packages available\n")
+ sys.stdout.write(">>>> cannot fix GLSA, no unaffected packages available\n")
sys.exit(2)
for pkg in mergelist:
- sys.stdout.write(">>> merging "+pkg+"\n")
+ sys.stdout.write(">>>> merging "+pkg+"\n")
# using emerge for the actual merging as it contains the dependency
# code and we want to be consistent in behaviour. Also this functionality
# will be integrated in emerge later, so it shouldn't hurt much.
@@ -262,7 +262,7 @@ if mode in ["dump", "fix", "inject", "pretend"]:
sys.stdout.write("Checking GLSA "+myid+"\n")
if not myglsa.isVulnerable():
if not quiet:
- sys.stdout.write(">>> no vulnerable packages installed\n")
+ sys.stdout.write(">>>> no vulnerable packages installed\n")
else:
if quiet:
sys.stdout.write("Checking GLSA "+myid+"\n")
@@ -272,19 +272,19 @@ if mode in ["dump", "fix", "inject", "pretend"]:
# first, extract the atoms that cannot be upgraded (where key == "")
no_upgrades = []
- sys.stdout.write(">>> The following updates will be performed for this GLSA:\n")
+ sys.stdout.write(">>>> The following updates will be performed for this GLSA:\n")
if "" in mergedict:
no_upgrades = mergedict[""]
del mergedict[""]
# see if anything is left that can be upgraded
if mergedict:
- sys.stdout.write(">>> Updates that will be performed:\n")
+ sys.stdout.write(">>>> Updates that will be performed:\n")
for (upd, vuln) in mergedict.items():
sys.stdout.write(" " + green(upd) + " (vulnerable: " + red(", ".join(vuln)) + ")\n")
if no_upgrades:
- sys.stdout.write(">>> No upgrade path exists for these packages:\n")
+ sys.stdout.write(">>>> No upgrade path exists for these packages:\n")
sys.stdout.write(" " + red(", ".join(no_upgrades)) + "\n")
sys.stdout.write("\n")
elif mode == "inject":
diff --git a/bin/install.py b/bin/install.py
index d6faeb6a4..e53200c42 100755
--- a/bin/install.py
+++ b/bin/install.py
@@ -173,7 +173,7 @@ def main(args):
returncode = copy_xattrs(opts, files)
if returncode != os.EX_OK:
portage.util.writemsg(
- "!!! install: copy_xattrs failed with the "
+ "!!!! install: copy_xattrs failed with the "
"following arguments: %s\n"
% " ".join(portage._shell_quote(x) for x in args),
noiselevel=-1,
diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh
index e4defa550..8a4c913b5 100755
--- a/bin/misc-functions.sh
+++ b/bin/misc-functions.sh
@@ -255,8 +255,8 @@ install_qa_check() {
__dyn_instprep() {
if [[ -e ${PORTAGE_BUILDDIR}/.instprepped ]] ; then
- __vecho ">>> It appears that '$PF' is already instprepped; skipping."
- __vecho ">>> Remove '${PORTAGE_BUILDDIR}/.instprepped' to force instprep."
+ __vecho ">>>> It appears that '$PF' is already instprepped; skipping."
+ __vecho ">>>> Remove '${PORTAGE_BUILDDIR}/.instprepped' to force instprep."
return 0
fi
@@ -398,11 +398,11 @@ preinst_sfperms() {
find "${ED}" -type f -perm -4000 -print0 | \
while read -r -d $'\0' i ; do
if [ -n "$(find "$i" -perm -2000)" ] ; then
- ebegin ">>> SetUID and SetGID: [chmod o-r] ${i#${ED%/}}"
+ ebegin ">>>> SetUID and SetGID: [chmod o-r] ${i#${ED%/}}"
chmod o-r "$i"
eend $?
else
- ebegin ">>> SetUID: [chmod go-r] ${i#${ED%/}}"
+ ebegin ">>>> SetUID: [chmod go-r] ${i#${ED%/}}"
chmod go-r "$i"
eend $?
fi
@@ -414,7 +414,7 @@ preinst_sfperms() {
# by the SetUID check above.
true
else
- ebegin ">>> SetGID: [chmod o-r] ${i#${ED%/}}"
+ ebegin ">>>> SetGID: [chmod o-r] ${i#${ED%/}}"
chmod o-r "$i"
eend $?
fi
@@ -440,19 +440,19 @@ preinst_suid_scan() {
# to files outside of the sandbox, but this
# can easly be bypassed using the addwrite() function
addwrite "${sfconf}"
- __vecho ">>> Performing suid scan in ${ED}"
+ __vecho ">>>> Performing suid scan in ${ED}"
for i in $(find "${ED}" -type f \( -perm -4000 -o -perm -2000 \) ); do
if [ -s "${sfconf}" ]; then
install_path=${i#${ED%/}}
if grep -q "^${install_path}\$" "${sfconf}" ; then
__vecho "- ${install_path} is an approved suid file"
else
- __vecho ">>> Removing sbit on non registered ${install_path}"
+ __vecho ">>>> Removing sbit on non registered ${install_path}"
LC_ALL=C sleep 1.5
ls_ret=$(ls -ldh "${i}")
chmod ugo-s "${i}"
grep "^#${install_path}$" "${sfconf}" > /dev/null || {
- __vecho ">>> Appending commented out entry to ${sfconf} for ${PF}"
+ __vecho ">>>> Appending commented out entry to ${sfconf} for ${PF}"
echo "## ${ls_ret%${ED%/}*}${install_path}" >> "${sfconf}"
echo "#${install_path}" >> "${sfconf}"
# no delwrite() eh?
@@ -476,7 +476,7 @@ preinst_selinux_labels() {
# only attempt to label if setfiles is executable
# and 'context' is available on selinuxfs.
if [ -f /sys/fs/selinux/context -a -x /usr/sbin/setfiles -a -x /usr/sbin/selinuxconfig ]; then
- __vecho ">>> Setting SELinux security labels"
+ __vecho ">>>> Setting SELinux security labels"
(
eval "$(/usr/sbin/selinuxconfig)" || \
die "Failed to determine SELinux policy paths.";
@@ -488,7 +488,7 @@ preinst_selinux_labels() {
else
# nonfatal, since merging can happen outside a SE kernel
# like during a recovery situation
- __vecho "!!! Unable to set SELinux security labels"
+ __vecho "!!!! Unable to set SELinux security labels"
fi
fi
}
@@ -534,7 +534,7 @@ __dyn_package() {
fi
[ -n "${md5_hash}" ] && \
echo ${md5_hash} > "${PORTAGE_BUILDDIR}"/build-info/BINPKGMD5
- __vecho ">>> Done."
+ __vecho ">>>> Done."
cd "${PORTAGE_BUILDDIR}"
>> "$PORTAGE_BUILDDIR/.packaged" || \
diff --git a/bin/phase-functions.sh b/bin/phase-functions.sh
index 9a4c97b16..967af68b5 100644
--- a/bin/phase-functions.sh
+++ b/bin/phase-functions.sh
@@ -219,8 +219,8 @@ __ebuild_phase_with_hooks() {
__dyn_pretend() {
if [[ -e $PORTAGE_BUILDDIR/.pretended ]] ; then
- __vecho ">>> It appears that '$PF' is already pretended; skipping."
- __vecho ">>> Remove '$PORTAGE_BUILDDIR/.pretended' to force pretend."
+ __vecho ">>>> It appears that '$PF' is already pretended; skipping."
+ __vecho ">>>> Remove '$PORTAGE_BUILDDIR/.pretended' to force pretend."
return 0
fi
__ebuild_phase pre_pkg_pretend
@@ -232,8 +232,8 @@ __dyn_pretend() {
__dyn_setup() {
if [[ -e $PORTAGE_BUILDDIR/.setuped ]] ; then
- __vecho ">>> It appears that '$PF' is already setup; skipping."
- __vecho ">>> Remove '$PORTAGE_BUILDDIR/.setuped' to force setup."
+ __vecho ">>>> It appears that '$PF' is already setup; skipping."
+ __vecho ">>>> Remove '$PORTAGE_BUILDDIR/.setuped' to force setup."
return 0
fi
__ebuild_phase pre_pkg_setup
@@ -245,7 +245,7 @@ __dyn_setup() {
__dyn_unpack() {
if [[ -f ${PORTAGE_BUILDDIR}/.unpacked ]] ; then
- __vecho ">>> WORKDIR is up-to-date, keeping..."
+ __vecho ">>>> WORKDIR is up-to-date, keeping..."
return 0
fi
if [ ! -d "${WORKDIR}" ]; then
@@ -253,11 +253,11 @@ __dyn_unpack() {
fi
cd "${WORKDIR}" || die "Directory change failed: \`cd '${WORKDIR}'\`"
__ebuild_phase pre_src_unpack
- __vecho ">>> Unpacking source..."
+ __vecho ">>>> Unpacking source..."
__ebuild_phase src_unpack
>> "$PORTAGE_BUILDDIR/.unpacked" || \
die "Failed to create $PORTAGE_BUILDDIR/.unpacked"
- __vecho ">>> Source unpacked in ${WORKDIR}"
+ __vecho ">>>> Source unpacked in ${WORKDIR}"
__ebuild_phase post_src_unpack
}
@@ -370,8 +370,8 @@ __has_phase_defined_up_to() {
__dyn_prepare() {
if [[ -e $PORTAGE_BUILDDIR/.prepared ]] ; then
- __vecho ">>> It appears that '$PF' is already prepared; skipping."
- __vecho ">>> Remove '$PORTAGE_BUILDDIR/.prepared' to force prepare."
+ __vecho ">>>> It appears that '$PF' is already prepared; skipping."
+ __vecho ">>>> Remove '$PORTAGE_BUILDDIR/.prepared' to force prepare."
return 0
fi
@@ -388,7 +388,7 @@ __dyn_prepare() {
trap __abort_prepare SIGINT SIGQUIT
__ebuild_phase pre_src_prepare
- __vecho ">>> Preparing source in $PWD ..."
+ __vecho ">>>> Preparing source in $PWD ..."
__ebuild_phase src_prepare
# keep path in eapply_user in sync!
@@ -398,7 +398,7 @@ __dyn_prepare() {
>> "$PORTAGE_BUILDDIR/.prepared" || \
die "Failed to create $PORTAGE_BUILDDIR/.prepared"
- __vecho ">>> Source prepared."
+ __vecho ">>>> Source prepared."
__ebuild_phase post_src_prepare
trap - SIGINT SIGQUIT
@@ -407,8 +407,8 @@ __dyn_prepare() {
__dyn_configure() {
if [[ -e $PORTAGE_BUILDDIR/.configured ]] ; then
- __vecho ">>> It appears that '$PF' is already configured; skipping."
- __vecho ">>> Remove '$PORTAGE_BUILDDIR/.configured' to force configuration."
+ __vecho ">>>> It appears that '$PF' is already configured; skipping."
+ __vecho ">>>> Remove '$PORTAGE_BUILDDIR/.configured' to force configuration."
return 0
fi
@@ -426,11 +426,11 @@ __dyn_configure() {
__ebuild_phase pre_src_configure
- __vecho ">>> Configuring source in $PWD ..."
+ __vecho ">>>> Configuring source in $PWD ..."
__ebuild_phase src_configure
>> "$PORTAGE_BUILDDIR/.configured" || \
die "Failed to create $PORTAGE_BUILDDIR/.configured"
- __vecho ">>> Source configured."
+ __vecho ">>>> Source configured."
__ebuild_phase post_src_configure
@@ -440,8 +440,8 @@ __dyn_configure() {
__dyn_compile() {
if [[ -e $PORTAGE_BUILDDIR/.compiled ]] ; then
- __vecho ">>> It appears that '${PF}' is already compiled; skipping."
- __vecho ">>> Remove '$PORTAGE_BUILDDIR/.compiled' to force compilation."
+ __vecho ">>>> It appears that '${PF}' is already compiled; skipping."
+ __vecho ">>>> Remove '$PORTAGE_BUILDDIR/.compiled' to force compilation."
return 0
fi
@@ -459,11 +459,11 @@ __dyn_compile() {
__ebuild_phase pre_src_compile
- __vecho ">>> Compiling source in $PWD ..."
+ __vecho ">>>> Compiling source in $PWD ..."
__ebuild_phase src_compile
>> "$PORTAGE_BUILDDIR/.compiled" || \
die "Failed to create $PORTAGE_BUILDDIR/.compiled"
- __vecho ">>> Source compiled."
+ __vecho ">>>> Source compiled."
__ebuild_phase post_src_compile
@@ -473,8 +473,8 @@ __dyn_compile() {
__dyn_test() {
if [[ -e $PORTAGE_BUILDDIR/.tested ]] ; then
- __vecho ">>> It appears that ${PN} has already been tested; skipping."
- __vecho ">>> Remove '${PORTAGE_BUILDDIR}/.tested' to force test."
+ __vecho ">>>> It appears that ${PN} has already been tested; skipping."
+ __vecho ">>>> Remove '${PORTAGE_BUILDDIR}/.tested' to force test."
return
fi
@@ -494,20 +494,20 @@ __dyn_test() {
! { has test_network ${PORTAGE_PROPERTIES} && has network ${ALLOW_TEST}; }
then
einfo "Skipping make test/check due to ebuild restriction."
- __vecho ">>> Test phase [disabled because of RESTRICT=test]: ${CATEGORY}/${PF}"
+ __vecho ">>>> Test phase [disabled because of RESTRICT=test]: ${CATEGORY}/${PF}"
# If ${EBUILD_FORCE_TEST} == 1 and FEATURES came from ${T}/environment
# then it might not have FEATURES=test like it's supposed to here.
elif [[ ${EBUILD_FORCE_TEST} != 1 ]] && ! has test ${FEATURES} ; then
- __vecho ">>> Test phase [not enabled]: ${CATEGORY}/${PF}"
+ __vecho ">>>> Test phase [not enabled]: ${CATEGORY}/${PF}"
else
local save_sp=${SANDBOX_PREDICT}
addpredict /
__ebuild_phase pre_src_test
- __vecho ">>> Test phase: ${CATEGORY}/${PF}"
+ __vecho ">>>> Test phase: ${CATEGORY}/${PF}"
__ebuild_phase src_test
- __vecho ">>> Completed testing ${CATEGORY}/${PF}"
+ __vecho ">>>> Completed testing ${CATEGORY}/${PF}"
>> "$PORTAGE_BUILDDIR/.tested" || \
die "Failed to create $PORTAGE_BUILDDIR/.tested"
@@ -523,8 +523,8 @@ __dyn_install() {
if has noauto $FEATURES ; then
rm -f "${PORTAGE_BUILDDIR}/.installed"
elif [[ -e $PORTAGE_BUILDDIR/.installed ]] ; then
- __vecho ">>> It appears that '${PF}' is already installed; skipping."
- __vecho ">>> Remove '${PORTAGE_BUILDDIR}/.installed' to force install."
+ __vecho ">>>> It appears that '${PF}' is already installed; skipping."
+ __vecho ">>>> Remove '${PORTAGE_BUILDDIR}/.installed' to force install."
return 0
fi
trap "__abort_install" SIGINT SIGQUIT
@@ -578,7 +578,7 @@ __dyn_install() {
fi
__vecho
- __vecho ">>> Install ${CATEGORY}/${PF} into ${D}"
+ __vecho ">>>> Install ${CATEGORY}/${PF} into ${D}"
#our custom version of libtool uses $S and $D to fix
#invalid paths in .la files
export S D
@@ -599,7 +599,7 @@ __dyn_install() {
__ebuild_phase src_install
>> "$PORTAGE_BUILDDIR/.installed" || \
die "Failed to create $PORTAGE_BUILDDIR/.installed"
- __vecho ">>> Completed installing ${CATEGORY}/${PF} into ${D}"
+ __vecho ">>>> Completed installing ${CATEGORY}/${PF} into ${D}"
__vecho
__ebuild_phase post_src_install
@@ -1031,11 +1031,11 @@ __ebuild_main() {
if has noauto $FEATURES && \
[[ ! -f $PORTAGE_BUILDDIR/.unpacked ]] ; then
echo
- echo "!!! We apparently haven't unpacked..." \
+ echo "!!!! We apparently haven't unpacked..." \
"This is probably not what you"
- echo "!!! want to be doing... You are using" \
+ echo "!!!! want to be doing... You are using" \
"FEATURES=noauto so I'll assume"
- echo "!!! that you know what you are doing..." \
+ echo "!!!! that you know what you are doing..." \
"You have 5 seconds to abort..."
echo
diff --git a/bin/phase-helpers.sh b/bin/phase-helpers.sh
index 94f4f24f2..3ccb58a9b 100644
--- a/bin/phase-helpers.sh
+++ b/bin/phase-helpers.sh
@@ -269,8 +269,8 @@ use() {
use_with() {
if [ -z "$1" ]; then
- echo "!!! use_with() called without a parameter." >&2
- echo "!!! use_with <USEFLAG> [<flagname> [value]]" >&2
+ echo "!!!! use_with() called without a parameter." >&2
+ echo "!!!! use_with <USEFLAG> [<flagname> [value]]" >&2
return 1
fi
@@ -291,8 +291,8 @@ use_with() {
use_enable() {
if [ -z "$1" ]; then
- echo "!!! use_enable() called without a parameter." >&2
- echo "!!! use_enable <USEFLAG> [<flagname> [value]]" >&2
+ echo "!!!! use_enable() called without a parameter." >&2
+ echo "!!!! use_enable <USEFLAG> [<flagname> [value]]" >&2
return 1
fi
@@ -321,7 +321,7 @@ unpack() {
[ -z "$*" ] && die "Nothing passed to the 'unpack' command"
for x in "$@"; do
- __vecho ">>> Unpacking ${x} to ${PWD}"
+ __vecho ">>>> Unpacking ${x} to ${PWD}"
suffix=${x##*.}
suffix_insensitive=$(LC_ALL=C tr "[:upper:]" "[:lower:]" <<< "${suffix}")
y=${x%.*}
@@ -703,8 +703,8 @@ econf() {
if [ -s config.log ]; then
echo
- echo "!!! Please attach the following file when seeking support:"
- echo "!!! ${PWD}/config.log"
+ echo "!!!! Please attach the following file when seeking support:"
+ echo "!!!! ${PWD}/config.log"
fi
# econf dies unconditionally in EAPIs 0 to 3
___eapi_helpers_can_die || die "econf failed"
@@ -1188,8 +1188,8 @@ if ___eapi_has_in_iuse; then
local use=${1}
if [[ -z "${use}" ]]; then
- echo "!!! in_iuse() called without a parameter." >&2
- echo "!!! in_iuse <USEFLAG>" >&2
+ echo "!!!! in_iuse() called without a parameter." >&2
+ echo "!!!! in_iuse <USEFLAG>" >&2
die "in_iuse() called without a parameter"
fi
diff --git a/bin/portageq b/bin/portageq
index d3cb9f140..9f94d001b 100755
--- a/bin/portageq
+++ b/bin/portageq
@@ -1304,9 +1304,9 @@ def add_pquery_arguments(parser):
def usage(argv):
- print(">>> Portage information query tool")
- print(">>> %s" % portage.VERSION)
- print(">>> Usage: portageq <command> [<option> ...]")
+ print(">>>> Portage information query tool")
+ print(">>>> %s" % portage.VERSION)
+ print(">>>> Usage: portageq <command> [<option> ...]")
print("")
print("Available commands:")
diff --git a/cnf/repo.postsync.d/example b/cnf/repo.postsync.d/example
index 72d91a60e..ac29cd416 100644
--- a/cnf/repo.postsync.d/example
+++ b/cnf/repo.postsync.d/example
@@ -41,7 +41,7 @@ if [ -n "${repository_name}" ]; then
if [ "${repository_name}" != "gentoo" ]; then
if ! egencache --update --repo="${repository_name}" --jobs=4
then
- echo "!!! egencache failed!"
+ echo "!!!! egencache failed!"
ret=1
fi
fi
@@ -55,7 +55,7 @@ if [ -n "${repository_name}" ] && ! [ -e "${repository_path}/metadata/pkg_desc_i
# does not interfere with repository verification.
if ! egencache --update-pkg-desc-index --external-cache-only --repo="${repository_name}" ${PORTAGE_VERBOSE+--verbose}
then
- echo "!!! egencache failed!"
+ echo "!!!! egencache failed!"
ret=1
fi
fi
diff --git a/lib/_emerge/Binpkg.py b/lib/_emerge/Binpkg.py
index c7dde69bd..ae83b6b75 100644
--- a/lib/_emerge/Binpkg.py
+++ b/lib/_emerge/Binpkg.py
@@ -323,7 +323,7 @@ class Binpkg(CompositeTask):
# This initializes PORTAGE_LOG_FILE.
portage.prepare_build_dirs(self.settings["ROOT"], self.settings, 1)
- self._writemsg_level(">>> Extracting info\n")
+ self._writemsg_level(">>>> Extracting info\n")
await self._bintree.dbapi.unpack_metadata(
self.settings, infloc, loop=self.scheduler
@@ -404,7 +404,7 @@ class Binpkg(CompositeTask):
self._async_unlock_builddir(returncode=self.returncode)
return
- self._writemsg_level(">>> Extracting %s\n" % self.pkg.cpv)
+ self._writemsg_level(">>>> Extracting %s\n" % self.pkg.cpv)
self._start_task(
AsyncTaskFuture(
future=self._bintree.dbapi.unpack_contents(
@@ -418,7 +418,7 @@ class Binpkg(CompositeTask):
if self._default_exit(unpack_contents) != os.EX_OK:
unpack_contents.future.result()
self._writemsg_level(
- "!!! Error Extracting '%s'\n" % self._pkg_path,
+ "!!!! Error Extracting '%s'\n" % self._pkg_path,
noiselevel=-1,
level=logging.ERROR,
)
@@ -462,13 +462,13 @@ class Binpkg(CompositeTask):
scheduler=self.scheduler,
logfile=self.settings.get("PORTAGE_LOG_FILE"),
)
- self._writemsg_level(">>> Adjusting Prefix to %s\n" % self.settings["EPREFIX"])
+ self._writemsg_level(">>>> Adjusting Prefix to %s\n" % self.settings["EPREFIX"])
self._start_task(chpathtool, self._chpathtool_exit)
def _chpathtool_exit(self, chpathtool):
if self._final_exit(chpathtool) != os.EX_OK:
self._writemsg_level(
- "!!! Error Adjusting Prefix to %s\n" % (self.settings["EPREFIX"],),
+ "!!!! Error Adjusting Prefix to %s\n" % (self.settings["EPREFIX"],),
noiselevel=-1,
level=logging.ERROR,
)
--git a/lib/_emerge/BinpkgExtractorAsync.py b/lib/_emerge/BinpkgExtractorAsync.py
index a0380a0a4..9219882fe 100644
--- a/lib/_emerge/BinpkgExtractorAsync.py
+++ b/lib/_emerge/BinpkgExtractorAsync.py
@@ -58,7 +58,7 @@ class BinpkgExtractorAsync(SpawnProcess):
decomp_cmd = None
if decomp_cmd is None:
self.scheduler.output(
- "!!! %s\n"
+ "!!!! %s\n"
% _("File compression header unrecognized: %s")
% self.pkg_path,
log_path=self.logfile,
@@ -90,7 +90,7 @@ class BinpkgExtractorAsync(SpawnProcess):
if find_binary(decompression_binary) is None:
missing_package = decomp.get("package")
self.scheduler.output(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"File compression unsupported %s.\n Command was: %s.\n Maybe missing package: %s"
)
diff --git a/lib/_emerge/BinpkgVerifier.py b/lib/_emerge/BinpkgVerifier.py
index 6d8efb9c4..7a0a40028 100644
--- a/lib/_emerge/BinpkgVerifier.py
+++ b/lib/_emerge/BinpkgVerifier.py
@@ -43,7 +43,7 @@ class BinpkgVerifier(CompositeTask):
if e.errno not in (errno.ENOENT, errno.ESTALE):
raise
self.scheduler.output(
- ("!!! Fetching Binary failed " "for '%s'\n") % self.pkg.cpv,
+ ("!!!! Fetching Binary failed " "for '%s'\n") % self.pkg.cpv,
log_path=self.logfile,
background=self.background,
)
@@ -127,11 +127,11 @@ class BinpkgVerifier(CompositeTask):
self.scheduler.output(
(
- "\n!!! Digest verification failed:\n"
- "!!! %s\n"
- "!!! Reason: Failed on %s verification\n"
- "!!! Got: %s\n"
- "!!! Expected: %s\n"
+ "\n!!!! Digest verification failed:\n"
+ "!!!! %s\n"
+ "!!!! Reason: Failed on %s verification\n"
+ "!!!! Got: %s\n"
+ "!!!! Expected: %s\n"
"File renamed to '%s'\n"
)
% (self._pkg_path, name, value, expected, temp_filename),
diff --git a/lib/_emerge/BlockerCache.py b/lib/_emerge/BlockerCache.py
index 5aad581f4..581b98a38 100644
--- a/lib/_emerge/BlockerCache.py
+++ b/lib/_emerge/BlockerCache.py
@@ -62,7 +62,7 @@ class BlockerCache(portage.cache.mappings.MutableMapping):
pass
else:
writemsg(
- "!!! Error loading '%s': %s\n" % (self._cache_filename, str(e)),
+ "!!!! Error loading '%s': %s\n" % (self._cache_filename, str(e)),
noiselevel=-1,
)
del e
diff --git a/lib/_emerge/BlockerDB.py b/lib/_emerge/BlockerDB.py
index b6542157c..e778fdd90 100644
--- a/lib/_emerge/BlockerDB.py
+++ b/lib/_emerge/BlockerDB.py
@@ -71,7 +71,7 @@ class BlockerDB:
inst_pkg.root, portage.VDB_PATH, inst_pkg.category, inst_pkg.pf
)
portage.writemsg(
- "!!! %s/*DEPEND: %s\n" % (pkg_location, atoms), noiselevel=-1
+ "!!!! %s/*DEPEND: %s\n" % (pkg_location, atoms), noiselevel=-1
)
continue
diff --git a/lib/_emerge/EbuildBuild.py b/lib/_emerge/EbuildBuild.py
index 2ed16537b..caf2e45d2 100644
--- a/lib/_emerge/EbuildBuild.py
+++ b/lib/_emerge/EbuildBuild.py
@@ -447,7 +447,7 @@ class EbuildBuild(CompositeTask):
return
if self._issyspkg:
- msg = ">>> This is a system package, " + "let's pack a rescue tarball.\n"
+ msg = ">>>> This is a system package, " + "let's pack a rescue tarball.\n"
self.scheduler.output(msg, log_path=self.settings.get("PORTAGE_LOG_FILE"))
binpkg_tasks = TaskSequence()
diff --git a/lib/_emerge/EbuildIpcDaemon.py b/lib/_emerge/EbuildIpcDaemon.py
index ee6fd7658..c32465ad4 100644
--- a/lib/_emerge/EbuildIpcDaemon.py
+++ b/lib/_emerge/EbuildIpcDaemon.py
@@ -111,7 +111,7 @@ class EbuildIpcDaemon(FifoIpcDaemon):
# This probably means that the client has been killed,
# which causes open to fail with ENXIO.
writemsg_level(
- "!!! EbuildIpcDaemon %s: %s\n" % (_("failed to send reply"), e),
+ "!!!! EbuildIpcDaemon %s: %s\n" % (_("failed to send reply"), e),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/lib/_emerge/EbuildPhase.py b/lib/_emerge/EbuildPhase.py
index 12326fffd..9f28bdfef 100644
--- a/lib/_emerge/EbuildPhase.py
+++ b/lib/_emerge/EbuildPhase.py
@@ -387,7 +387,7 @@ class EbuildPhase(CompositeTask):
self._append_temp_log(post_phase.logfile, log_path)
if self._final_exit(post_phase) != os.EX_OK:
- writemsg("!!! post %s failed; exiting.\n" % self.phase, noiselevel=-1)
+ writemsg("!!!! post %s failed; exiting.\n" % self.phase, noiselevel=-1)
self._die_hooks()
return
diff --git a/lib/_emerge/JobStatusDisplay.py b/lib/_emerge/JobStatusDisplay.py
index e3cb2ff0f..bc50c4149 100644
--- a/lib/_emerge/JobStatusDisplay.py
+++ b/lib/_emerge/JobStatusDisplay.py
@@ -127,7 +127,7 @@ class JobStatusDisplay:
return True
def _format_msg(self, msg):
- return ">>> %s" % msg
+ return ">>>> %s" % msg
def _erase(self):
self._write(self._term_codes["carriage_return"] + self._term_codes["clr_eol"])
diff --git a/lib/_emerge/MergeListItem.py b/lib/_emerge/MergeListItem.py
index 87767c153..e666998cb 100644
--- a/lib/_emerge/MergeListItem.py
+++ b/lib/_emerge/MergeListItem.py
@@ -81,7 +81,7 @@ class MergeListItem(CompositeTask):
if not build_opts.pretend:
self.statusMessage(msg)
logger.log(
- " >>> emerge (%s of %s) %s to %s"
+ " >>>> emerge (%s of %s) %s to %s"
% (pkg_count.curval, pkg_count.maxval, pkg.cpv, pkg.root)
)
diff --git a/lib/_emerge/PackageUninstall.py b/lib/_emerge/PackageUninstall.py
index 468db3030..a5cb8c937 100644
--- a/lib/_emerge/PackageUninstall.py
+++ b/lib/_emerge/PackageUninstall.py
@@ -93,7 +93,7 @@ class PackageUninstall(CompositeTask):
self._async_unlock_builddir(returncode=retval)
return
- self._writemsg_level(">>> Unmerging %s...\n" % (self.pkg.cpv,), noiselevel=-1)
+ self._writemsg_level(">>>> Unmerging %s...\n" % (self.pkg.cpv,), noiselevel=-1)
self._emergelog("=== Unmerging... (%s)" % (self.pkg.cpv,))
cat, pf = portage.catsplit(self.pkg.cpv)
@@ -115,9 +115,9 @@ class PackageUninstall(CompositeTask):
def _unmerge_exit(self, unmerge_task):
if self._final_exit(unmerge_task) != os.EX_OK:
- self._emergelog(" !!! unmerge FAILURE: %s" % (self.pkg.cpv,))
+ self._emergelog(" !!!! unmerge FAILURE: %s" % (self.pkg.cpv,))
else:
- self._emergelog(" >>> unmerge success: %s" % (self.pkg.cpv,))
+ self._emergelog(" >>>> unmerge success: %s" % (self.pkg.cpv,))
self.world_atom(self.pkg)
self._async_unlock_builddir(returncode=self.returncode)
diff --git a/lib/_emerge/Scheduler.py b/lib/_emerge/Scheduler.py
index 15d646c4f..6f82965e9 100644
--- a/lib/_emerge/Scheduler.py
+++ b/lib/_emerge/Scheduler.py
@@ -303,22 +303,22 @@ class Scheduler(PollScheduler):
or "--fetchonly" in self.myopts
):
if "distlocks" not in features:
- portage.writemsg(red("!!!") + "\n", noiselevel=-1)
+ portage.writemsg(red("!!!!") + "\n", noiselevel=-1)
portage.writemsg(
- red("!!!")
+ red("!!!!")
+ " parallel-fetching "
+ "requires the distlocks feature enabled"
+ "\n",
noiselevel=-1,
)
portage.writemsg(
- red("!!!")
+ red("!!!!")
+ " you have it disabled, "
+ "thus parallel-fetching is being disabled"
+ "\n",
noiselevel=-1,
)
- portage.writemsg(red("!!!") + "\n", noiselevel=-1)
+ portage.writemsg(red("!!!!") + "\n", noiselevel=-1)
elif merge_count > 1:
self._parallel_fetch = True
@@ -442,7 +442,7 @@ class Scheduler(PollScheduler):
if interactive_tasks:
background = False
writemsg_level(
- ">>> Sending package output to stdio due "
+ ">>>> Sending package output to stdio due "
+ "to interactive package(s):\n",
level=logging.INFO,
noiselevel=-1,
@@ -462,15 +462,15 @@ class Scheduler(PollScheduler):
if self._max_jobs is True or self._max_jobs > 1:
self._set_max_jobs(1)
writemsg_level(
- ">>> Setting --jobs=1 due "
+ ">>>> Setting --jobs=1 due "
+ "to the above interactive package(s)\n",
level=logging.INFO,
noiselevel=-1,
)
writemsg_level(
- ">>> In order to temporarily mask "
+ ">>>> In order to temporarily mask "
+ "interactive updates, you may\n"
- + ">>> specify --accept-properties=-interactive\n",
+ + ">>>> specify --accept-properties=-interactive\n",
level=logging.INFO,
noiselevel=-1,
)
@@ -732,7 +732,7 @@ class Scheduler(PollScheduler):
pkgsettings["O"] = os.path.dirname(ebuild_path)
if not digestgen(mysettings=pkgsettings, myportdb=portdb):
writemsg_level(
- "!!! Unable to generate manifest for '%s'.\n" % x.cpv,
+ "!!!! Unable to generate manifest for '%s'.\n" % x.cpv,
level=logging.ERROR,
noiselevel=-1,
)
@@ -2250,7 +2250,7 @@ class Scheduler(PollScheduler):
world_set.add(atom)
else:
writemsg_level(
- '\n!!! Unable to record %s in "world"\n' % (atom,),
+ '\n!!!! Unable to record %s in "world"\n' % (atom,),
level=logging.WARN,
noiselevel=-1,
)
diff --git a/lib/_emerge/SpawnProcess.py b/lib/_emerge/SpawnProcess.py
index c43b17c12..2e5cfe6bc 100644
--- a/lib/_emerge/SpawnProcess.py
+++ b/lib/_emerge/SpawnProcess.py
@@ -267,7 +267,7 @@ class SpawnProcess(SubProcess):
if e.errno == errno.EPERM:
# Reported with hardened kernel (bug #358211).
writemsg_level(
- "!!! kill: (%i) - Operation not permitted\n" % (p,),
+ "!!!! kill: (%i) - Operation not permitted\n" % (p,),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/lib/_emerge/SubProcess.py b/lib/_emerge/SubProcess.py
index e2d2e61be..3383829ae 100644
--- a/lib/_emerge/SubProcess.py
+++ b/lib/_emerge/SubProcess.py
@@ -31,7 +31,7 @@ class SubProcess(AbstractPollTask):
if e.errno == errno.EPERM:
# Reported with hardened kernel (bug #358211).
writemsg_level(
- "!!! kill: (%i) - Operation not permitted\n" % (self.pid,),
+ "!!!! kill: (%i) - Operation not permitted\n" % (self.pid,),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/lib/_emerge/actions.py b/lib/_emerge/actions.py
index 05a115250..aa9316a46 100644
--- a/lib/_emerge/actions.py
+++ b/lib/_emerge/actions.py
@@ -171,7 +171,9 @@ def action_build(
getbinpkgs="--getbinpkg" in emerge_config.opts, **kwargs
)
except ParseError as e:
- writemsg("\n\n!!!%s.\nSee make.conf(5) for more info.\n" % e, noiselevel=-1)
+ writemsg(
+ "\n\n!!!!%s.\nSee make.conf(5) for more info.\n" % e, noiselevel=-1
+ )
return 1
# validate the state of the resume data
@@ -364,9 +366,9 @@ def action_build(
if success:
if dropped_tasks:
portage.writemsg(
- "!!! One or more packages have been "
+ "!!!! One or more packages have been "
+ "dropped due to\n"
- + "!!! masking or unsatisfied dependencies:\n\n",
+ + "!!!! masking or unsatisfied dependencies:\n\n",
noiselevel=-1,
)
for task, atoms in dropped_tasks.items():
@@ -430,7 +432,7 @@ def action_build(
)
except ParseError as e:
writemsg(
- "\n\n!!!%s.\nSee make.conf(5) for more info.\n" % e,
+ "\n\n!!!!%s.\nSee make.conf(5) for more info.\n" % e,
noiselevel=-1,
)
return 1
@@ -577,7 +579,7 @@ def action_build(
for eroot in eroots:
if need_write_vardb and not trees[eroot]["vartree"].dbapi.writable:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Read-only file system: %s")
% trees[eroot]["vartree"].dbapi._dbroot,
level=logging.ERROR,
@@ -596,7 +598,7 @@ def action_build(
and not trees[eroot]["bintree"].dbapi.writable
):
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Read-only file system: %s")
% trees[eroot]["bintree"].pkgdir,
level=logging.ERROR,
@@ -639,7 +641,7 @@ def action_build(
if retval == os.EX_OK and not (buildpkgonly or fetchonly or pretend):
if "yes" == settings.get("AUTOCLEAN"):
- portage.writemsg_stdout(">>> Auto-cleaning packages...\n")
+ portage.writemsg_stdout(">>>> Auto-cleaning packages...\n")
unmerge(
trees[settings["EROOT"]]["root_config"],
myopts,
@@ -662,15 +664,15 @@ def action_config(settings, trees, myopts, myfiles):
enter_invalid = "--ask-enter-invalid" in myopts
uq = UserQuery(myopts)
if len(myfiles) != 1:
- print(red("!!! config can only take a single package atom at this time\n"))
+ print(red("!!!! config can only take a single package atom at this time\n"))
sys.exit(1)
if not is_valid_package_atom(myfiles[0], allow_repo=True):
portage.writemsg(
- "!!! '%s' is not a valid package atom.\n" % myfiles[0], noiselevel=-1
+ "!!!! '%s' is not a valid package atom.\n" % myfiles[0], noiselevel=-1
)
- portage.writemsg("!!! Please check ebuild(5) for full details.\n")
+ portage.writemsg("!!!! Please check ebuild(5) for full details.\n")
portage.writemsg(
- "!!! (Did you specify a version but forget to prefix with '='?)\n"
+ "!!!! (Did you specify a version but forget to prefix with '='?)\n"
)
sys.exit(1)
print()
@@ -801,7 +803,7 @@ def action_depclean(
noiselevel=-1,
)
if not matched_packages:
- writemsg_level(">>> No packages selected for removal by %s\n" % action)
+ writemsg_level(">>>> No packages selected for removal by %s\n" % action)
return 0
# The calculation is done in a separate function so that depgraph
@@ -899,7 +901,7 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
# A nested set could not be resolved, so ignore nested sets.
set_atoms[k] = root_config.sets[k].getAtoms()
writemsg_level(
- _("!!! The set '%s' " "contains a non-existent set named '%s'.\n")
+ _("!!!! The set '%s' " "contains a non-existent set named '%s'.\n")
% (k, e),
level=logging.ERROR,
noiselevel=-1,
@@ -909,12 +911,12 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
# Support @profile as an alternative to @system.
if not (set_atoms["system"] or set_atoms["profile"]):
writemsg_level(
- _("!!! You have no system list.\n"), level=logging.WARNING, noiselevel=-1
+ _("!!!! You have no system list.\n"), level=logging.WARNING, noiselevel=-1
)
if not set_atoms["selected"]:
writemsg_level(
- _("!!! You have no world file.\n"), level=logging.WARNING, noiselevel=-1
+ _("!!!! You have no world file.\n"), level=logging.WARNING, noiselevel=-1
)
# Suppress world file warnings unless @world is completely empty,
@@ -923,7 +925,7 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
world_atoms = bool(root_config.setconfig.getSetAtoms("world"))
except portage.exception.PackageSetNotFound as e:
writemsg_level(
- _("!!! The set '%s' " "contains a non-existent set named '%s'.\n")
+ _("!!!! The set '%s' " "contains a non-existent set named '%s'.\n")
% ("world", e),
level=logging.ERROR,
noiselevel=-1,
@@ -932,20 +934,22 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
else:
if not world_atoms:
writemsg_level(
- _("!!! Your @world set is empty.\n"), level=logging.ERROR, noiselevel=-1
+ _("!!!! Your @world set is empty.\n"),
+ level=logging.ERROR,
+ noiselevel=-1,
)
set_error = True
if set_error:
writemsg_level(
- _("!!! Aborting due to set configuration " "errors displayed above.\n"),
+ _("!!!! Aborting due to set configuration " "errors displayed above.\n"),
level=logging.ERROR,
noiselevel=-1,
)
return _depclean_result(1, [], False, 0, None)
if action == "depclean":
- emergelog(xterm_titles, " >>> depclean")
+ emergelog(xterm_titles, " >>>> depclean")
writemsg_level("\nCalculating dependencies ")
resolver_params = create_depgraph_params(myopts, "remove")
@@ -1285,14 +1289,14 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
show_parents(pkg)
if not pkgs_to_remove:
- writemsg_level(">>> No packages selected for removal by %s\n" % action)
+ writemsg_level(">>>> No packages selected for removal by %s\n" % action)
if "--verbose" not in myopts:
writemsg_level(
- ">>> To see reverse dependencies, use %s\n" % good("--verbose")
+ ">>>> To see reverse dependencies, use %s\n" % good("--verbose")
)
if action == "prune":
writemsg_level(
- ">>> To ignore dependencies, use %s\n" % good("--nodeps")
+ ">>>> To ignore dependencies, use %s\n" % good("--nodeps")
)
return pkgs_to_remove
@@ -1324,7 +1328,7 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
provider_cache = {}
consumer_map = {}
- writemsg_level(">>> Checking for lib consumers...\n")
+ writemsg_level(">>>> Checking for lib consumers...\n")
for pkg in cleanlist:
@@ -1391,7 +1395,7 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
search_files.add(lib_consumer)
search_files.update(providers)
- writemsg_level(">>> Assigning files to packages...\n")
+ writemsg_level(">>>> Assigning files to packages...\n")
file_owners = {}
for f in search_files:
owner_set = set()
@@ -1498,7 +1502,7 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
# Add lib providers to the graph as children of lib consumers,
# and also add any dependencies pulled in by the provider.
- writemsg_level(">>> Adding lib providers to graph...\n")
+ writemsg_level(">>>> Adding lib providers to graph...\n")
for pkg, consumers in consumer_map.items():
for consumer_dblink in set(chain(*consumers.values())):
@@ -1538,7 +1542,7 @@ def _calc_depclean(settings, trees, ldpath_mtimes, myopts, action, args_set, spi
clean_set = set(cleanlist)
if clean_set:
- writemsg_level(">>> Calculating removal order...\n")
+ writemsg_level(">>>> Calculating removal order...\n")
# Use a topological sort to create an unmerge order such that
# each package is unmerged before it's dependencies. This is
# necessary to avoid breaking things that may need to run
@@ -1747,7 +1751,7 @@ def action_deselect(settings, trees, opts, atoms):
filename = "world"
writemsg_stdout(
- '>>> %s %s from "%s" favorites file...\n'
+ '>>>> %s %s from "%s" favorites file...\n'
% (action_desc, colorize("INFORM", str(atom)), filename),
noiselevel=-1,
)
@@ -1766,7 +1770,7 @@ def action_deselect(settings, trees, opts, atoms):
if not pretend:
world_set.replace(remaining)
else:
- print('>>> No matching atoms found in "world" favorites file...')
+ print('>>>> No matching atoms found in "world" favorites file...')
finally:
if locked:
world_set.unlock()
@@ -2263,7 +2267,7 @@ def action_info(settings, trees, myopts, myfiles):
continue
writemsg_stdout(
- ">>> Attempting to run pkg_info() for '%s'\n" % pkg.cpv, noiselevel=-1
+ ">>>> Attempting to run pkg_info() for '%s'\n" % pkg.cpv, noiselevel=-1
)
if pkg_type == "installed":
@@ -2353,7 +2357,7 @@ def action_search(root_config, myopts, myfiles, spinner):
searchinstance.execute(mysearch)
except re.error as comment:
print(
- '\n!!! Regular expression error in "%s": %s' % (mysearch, comment)
+ '\n!!!! Regular expression error in "%s": %s' % (mysearch, comment)
)
sys.exit(1)
searchinstance.output()
@@ -2426,7 +2430,7 @@ def action_uninstall(settings, trees, ldpath_mtimes, opts, action, files, spinne
)
for line in textwrap.wrap(msg, 70):
writemsg_level(
- "!!! %s\n" % (line,), level=logging.ERROR, noiselevel=-1
+ "!!!! %s\n" % (line,), level=logging.ERROR, noiselevel=-1
)
for i in e.args[0]:
writemsg_level(
@@ -2440,7 +2444,7 @@ def action_uninstall(settings, trees, ldpath_mtimes, opts, action, files, spinne
if atom.use and atom.use.conditional:
writemsg_level(
(
- "\n\n!!! '%s' contains a conditional "
+ "\n\n!!!! '%s' contains a conditional "
+ "which is not allowed.\n"
)
% (x,),
@@ -2448,7 +2452,7 @@ def action_uninstall(settings, trees, ldpath_mtimes, opts, action, files, spinne
noiselevel=-1,
)
writemsg_level(
- "!!! Please check ebuild(5) for full details.\n",
+ "!!!! Please check ebuild(5) for full details.\n",
level=logging.ERROR,
)
return 1
@@ -2457,7 +2461,7 @@ def action_uninstall(settings, trees, ldpath_mtimes, opts, action, files, spinne
elif x.startswith(os.sep):
if not x.startswith(eroot):
writemsg_level(
- ("!!! '%s' does not start with" + " $EROOT.\n") % x,
+ ("!!!! '%s' does not start with" + " $EROOT.\n") % x,
level=logging.ERROR,
noiselevel=-1,
)
@@ -2477,7 +2481,7 @@ def action_uninstall(settings, trees, ldpath_mtimes, opts, action, files, spinne
msg.append("'%s' is not a valid package atom." % (x,))
msg.append("Please check ebuild(5) for full details.")
writemsg_level(
- "".join("!!! %s\n" % line for line in msg),
+ "".join("!!!! %s\n" % line for line in msg),
level=logging.ERROR,
noiselevel=-1,
)
@@ -2512,7 +2516,7 @@ def action_uninstall(settings, trees, ldpath_mtimes, opts, action, files, spinne
msg.append("'%s' is not a valid package atom." % (x,))
msg.append("Please check ebuild(5) for full details.")
writemsg_level(
- "".join("!!! %s\n" % line for line in msg),
+ "".join("!!!! %s\n" % line for line in msg),
level=logging.ERROR,
noiselevel=-1,
)
@@ -2542,7 +2546,7 @@ def action_uninstall(settings, trees, ldpath_mtimes, opts, action, files, spinne
valid_atoms.append(portage.dep.Atom(atom))
else:
writemsg_level(
- ("!!! '%s' is not claimed " + "by any package.\n") % lookup_owners[0],
+ ("!!!! '%s' is not claimed " + "by any package.\n") % lookup_owners[0],
level=logging.WARNING,
noiselevel=-1,
)
@@ -2657,9 +2661,10 @@ def adjust_config(myopts, settings):
try:
CLEAN_DELAY = int(settings.get("CLEAN_DELAY", str(CLEAN_DELAY)))
except ValueError as e:
- portage.writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ portage.writemsg("!!!! %s\n" % str(e), noiselevel=-1)
portage.writemsg(
- "!!! Unable to parse integer: CLEAN_DELAY='%s'\n" % settings["CLEAN_DELAY"],
+ "!!!! Unable to parse integer: CLEAN_DELAY='%s'\n"
+ % settings["CLEAN_DELAY"],
noiselevel=-1,
)
settings["CLEAN_DELAY"] = str(CLEAN_DELAY)
@@ -2671,9 +2676,9 @@ def adjust_config(myopts, settings):
settings.get("EMERGE_WARNING_DELAY", str(EMERGE_WARNING_DELAY))
)
except ValueError as e:
- portage.writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ portage.writemsg("!!!! %s\n" % str(e), noiselevel=-1)
portage.writemsg(
- "!!! Unable to parse integer: EMERGE_WARNING_DELAY='%s'\n"
+ "!!!! Unable to parse integer: EMERGE_WARNING_DELAY='%s'\n"
% settings["EMERGE_WARNING_DELAY"],
noiselevel=-1,
)
@@ -2705,14 +2710,17 @@ def adjust_config(myopts, settings):
PORTAGE_DEBUG = int(settings.get("PORTAGE_DEBUG", str(PORTAGE_DEBUG)))
if PORTAGE_DEBUG not in (0, 1):
portage.writemsg(
- "!!! Invalid value: PORTAGE_DEBUG='%i'\n" % PORTAGE_DEBUG, noiselevel=-1
+ "!!!! Invalid value: PORTAGE_DEBUG='%i'\n" % PORTAGE_DEBUG,
+ noiselevel=-1,
+ )
+ portage.writemsg(
+ "!!!! PORTAGE_DEBUG must be either 0 or 1\n", noiselevel=-1
)
- portage.writemsg("!!! PORTAGE_DEBUG must be either 0 or 1\n", noiselevel=-1)
PORTAGE_DEBUG = 0
except ValueError as e:
- portage.writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ portage.writemsg("!!!! %s\n" % str(e), noiselevel=-1)
portage.writemsg(
- "!!! Unable to parse integer: PORTAGE_DEBUG='%s'\n"
+ "!!!! Unable to parse integer: PORTAGE_DEBUG='%s'\n"
% settings["PORTAGE_DEBUG"],
noiselevel=-1,
)
@@ -2910,9 +2918,9 @@ def getgccversion(chost=None):
gcc_ver_prefix = "gcc-"
gcc_not_found_error = red(
- "!!! No gcc found. You probably need to 'source /etc/profile'\n"
- + "!!! to update the environment of this terminal and possibly\n"
- + "!!! other terminals also.\n"
+ "!!!! No gcc found. You probably need to 'source /etc/profile'\n"
+ + "!!!! to update the environment of this terminal and possibly\n"
+ + "!!!! other terminals also.\n"
)
if chost:
@@ -2992,7 +3000,7 @@ def check_procfs():
return os.EX_OK
msg = "It seems that %s is not mounted. You have been warned." % procfs_path
writemsg_level(
- "".join("!!! %s\n" % l for l in textwrap.wrap(msg, 70)),
+ "".join("!!!! %s\n" % l for l in textwrap.wrap(msg, 70)),
level=logging.ERROR,
noiselevel=-1,
)
@@ -3003,7 +3011,7 @@ def config_protect_check(trees):
for root, root_trees in trees.items():
settings = root_trees["root_config"].settings
if not settings.get("CONFIG_PROTECT"):
- msg = "!!! CONFIG_PROTECT is empty"
+ msg = "!!!! CONFIG_PROTECT is empty"
if settings["ROOT"] != "/":
msg += " for '%s'" % root
msg += "\n"
@@ -3099,7 +3107,7 @@ def missing_sets_warning(root_config, missing_sets):
% (os.path.join(global_config_path, "sets/portage.conf"),)
)
msg.append(" is missing or corrupt.")
- msg.append(" Falling back to default world and system set configuration!!!")
+ msg.append(" Falling back to default world and system set configuration!!!!")
for line in msg:
writemsg_level(line + "\n", level=logging.ERROR, noiselevel=-1)
@@ -3405,7 +3413,7 @@ def run_action(emerge_config):
)
except ParseError as e:
writemsg(
- "\n\n!!!%s.\nSee make.conf(5) for more info.\n" % (e,),
+ "\n\n!!!!%s.\nSee make.conf(5) for more info.\n" % (e,),
noiselevel=-1,
)
return 1
@@ -3488,7 +3496,7 @@ def run_action(emerge_config):
print(
colorize(
"BAD",
- "\n*** emerging by path is broken " "and may not always work!!!\n",
+ "\n*** emerging by path is broken " "and may not always work!!!!\n",
)
)
break
@@ -3579,7 +3587,7 @@ def run_action(emerge_config):
# note: this breaks `emerge --ask | tee logfile`, but that doesn't work anyway.
if ("--ask" in emerge_config.opts) and (not sys.stdin.isatty()):
portage.writemsg(
- '!!! "--ask" should only be used in a terminal. Exiting.\n', noiselevel=-1
+ '!!!! "--ask" should only be used in a terminal. Exiting.\n', noiselevel=-1
)
return 1
@@ -3708,8 +3716,8 @@ def run_action(emerge_config):
portage.util.ensure_dirs(emerge_log_dir)
except portage.exception.PortageException as e:
writemsg_level(
- "!!! Error creating directory for "
- + "EMERGE_LOG_DIR='%s':\n!!! %s\n" % (emerge_log_dir, e),
+ "!!!! Error creating directory for "
+ + "EMERGE_LOG_DIR='%s':\n!!!! %s\n" % (emerge_log_dir, e),
noiselevel=-1,
level=logging.ERROR,
)
@@ -3874,7 +3882,7 @@ def run_action(emerge_config):
)
for line in textwrap.wrap(msg, 70):
writemsg_level(
- "!!! %s\n" % (line,), level=logging.ERROR, noiselevel=-1
+ "!!!! %s\n" % (line,), level=logging.ERROR, noiselevel=-1
)
for i in e.args[0]:
writemsg_level(
@@ -3889,7 +3897,7 @@ def run_action(emerge_config):
msg.append("'%s' is not a valid package atom." % (x,))
msg.append("Please check ebuild(5) for full details.")
writemsg_level(
- "".join("!!! %s\n" % line for line in msg),
+ "".join("!!!! %s\n" % line for line in msg),
level=logging.ERROR,
noiselevel=-1,
)
@@ -3920,7 +3928,7 @@ def run_action(emerge_config):
msg.append("'%s' is not a valid package atom." % (x,))
msg.append("Please check ebuild(5) for full details.")
writemsg_level(
- "".join("!!! %s\n" % line for line in msg),
+ "".join("!!!! %s\n" % line for line in msg),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/lib/_emerge/countdown.py b/lib/_emerge/countdown.py
index 9d506c3c7..f40ebbf05 100644
--- a/lib/_emerge/countdown.py
+++ b/lib/_emerge/countdown.py
@@ -10,8 +10,8 @@ from portage.output import colorize
def countdown(secs=5, doing="Starting"):
if secs:
print(
- ">>> Waiting %s seconds before starting...\n"
- ">>> (Control-C to abort)...\n"
+ ">>>> Waiting %s seconds before starting...\n"
+ ">>>> (Control-C to abort)...\n"
"%s in:" % (secs, doing),
end="",
)
diff --git a/lib/_emerge/depgraph.py b/lib/_emerge/depgraph.py
index 22d0be196..7c869ae75 100644
--- a/lib/_emerge/depgraph.py
+++ b/lib/_emerge/depgraph.py
@@ -1140,7 +1140,7 @@ class depgraph:
"\n%s\n\n"
% colorize(
"WARN",
- "!!! Detected ebuild dependency change(s) without revision bump:",
+ "!!!! Detected ebuild dependency change(s) without revision bump:",
),
noiselevel=-1,
)
@@ -1223,7 +1223,7 @@ class depgraph:
def _show_ignored_binaries_respect_use(self, respect_use):
writemsg(
- "\n!!! The following binary packages have been ignored "
+ "\n!!!! The following binary packages have been ignored "
+ "due to non matching USE:\n\n",
noiselevel=-1,
)
@@ -1256,7 +1256,7 @@ class depgraph:
def _show_ignored_binaries_changed_deps(self, changed_deps):
writemsg(
- "\n!!! The following binary packages have been "
+ "\n!!!! The following binary packages have been "
"ignored due to changed dependencies:\n\n",
noiselevel=-1,
)
@@ -1364,7 +1364,7 @@ class depgraph:
continue
writemsg(
- "\n!!! The following update has been skipped "
+ "\n!!!! The following update has been skipped "
+ "due to unsatisfied dependencies:\n\n",
noiselevel=-1,
)
@@ -1393,9 +1393,9 @@ class depgraph:
# These are shown in abbreviated form, in order to avoid terminal
# flooding from mask messages as reported in bug #285832.
writemsg(
- "\n!!! The following update(s) have been skipped "
+ "\n!!!! The following update(s) have been skipped "
+ "due to unsatisfied dependencies\n"
- + "!!! triggered by backtracking:\n\n",
+ + "!!!! triggered by backtracking:\n\n",
noiselevel=-1,
)
for pkg, parent_atoms in backtrack_masked:
@@ -1554,7 +1554,7 @@ class depgraph:
if debug:
writemsg_level(
- "\n!!! Slot conflict handler started.\n",
+ "\n!!!! Slot conflict handler started.\n",
level=logging.DEBUG,
noiselevel=-1,
)
@@ -1718,7 +1718,7 @@ class depgraph:
if debug:
writemsg_level(
- "\n!!! Slot conflict graph:\n", level=logging.DEBUG, noiselevel=-1
+ "\n!!!! Slot conflict graph:\n", level=logging.DEBUG, noiselevel=-1
)
conflict_graph.debug_print()
@@ -1793,7 +1793,7 @@ class depgraph:
if debug:
writemsg_level(
- "\n!!! Slot conflict solution:\n", level=logging.DEBUG, noiselevel=-1
+ "\n!!!! Slot conflict solution:\n", level=logging.DEBUG, noiselevel=-1
)
for conflict in conflicts:
writemsg_level(
@@ -1920,7 +1920,7 @@ class depgraph:
):
if debug:
writemsg_level(
- "!!! backtracking loop detected: %s %s\n"
+ "!!!! backtracking loop detected: %s %s\n"
% (pkg, self._dynamic_config._runtime_pkg_mask[pkg]),
level=logging.DEBUG,
noiselevel=-1,
@@ -4567,11 +4567,13 @@ class depgraph:
x = os.path.join(pkgsettings["PKGDIR"], x)
else:
writemsg(
- "\n\n!!! Binary package '" + str(x) + "' does not exist.\n",
+ "\n\n!!!! Binary package '"
+ + str(x)
+ + "' does not exist.\n",
noiselevel=-1,
)
writemsg(
- "!!! Please ensure the tbz2 exists as specified.\n\n",
+ "!!!! Please ensure the tbz2 exists as specified.\n\n",
noiselevel=-1,
)
return 0, myfavorites
@@ -4625,7 +4627,7 @@ class depgraph:
tree_root = os.path.dirname(os.path.dirname(pkgdir))
cp = pkgdir[len(tree_root) + 1 :]
error_msg = (
- "\n\n!!! '%s' is not in a valid ebuild repository "
+ "\n\n!!!! '%s' is not in a valid ebuild repository "
"hierarchy or does not exist\n"
) % x
if not portage.isvalidatom(cp):
@@ -4690,7 +4692,7 @@ class depgraph:
elif x.startswith(os.path.sep):
if not x.startswith(eroot):
portage.writemsg(
- ("\n\n!!! '%s' does not start with" + " $EROOT.\n") % x,
+ ("\n\n!!!! '%s' does not start with" + " $EROOT.\n") % x,
noiselevel=-1,
)
self._dynamic_config._skip_restart = True
@@ -4703,7 +4705,7 @@ class depgraph:
if not f.startswith(eroot):
portage.writemsg(
(
- "\n\n!!! '%s' (resolved from '%s') does not start with"
+ "\n\n!!!! '%s' (resolved from '%s') does not start with"
+ " $EROOT.\n"
)
% (f, x),
@@ -4768,11 +4770,12 @@ class depgraph:
continue
if not is_valid_package_atom(x, allow_repo=True):
portage.writemsg(
- "\n\n!!! '%s' is not a valid package atom.\n" % x, noiselevel=-1
+ "\n\n!!!! '%s' is not a valid package atom.\n" % x,
+ noiselevel=-1,
)
- portage.writemsg("!!! Please check ebuild(5) for full details.\n")
+ portage.writemsg("!!!! Please check ebuild(5) for full details.\n")
portage.writemsg(
- "!!! (Did you specify a version but forget to prefix with '='?)\n"
+ "!!!! (Did you specify a version but forget to prefix with '='?)\n"
)
self._dynamic_config._skip_restart = True
return (0, [])
@@ -4865,13 +4868,13 @@ class depgraph:
if atom.use and atom.use.conditional:
writemsg(
(
- "\n\n!!! '%s' contains a conditional "
+ "\n\n!!!! '%s' contains a conditional "
+ "which is not allowed.\n"
)
% (x,),
noiselevel=-1,
)
- writemsg("!!! Please check ebuild(5) for full details.\n")
+ writemsg("!!!! Please check ebuild(5) for full details.\n")
self._dynamic_config._skip_restart = True
return (0, [])
@@ -4896,7 +4899,7 @@ class depgraph:
if not owners:
portage.writemsg(
- ("\n\n!!! '%s' is not claimed " + "by any package.\n")
+ ("\n\n!!!! '%s' is not claimed " + "by any package.\n")
% lookup_owners[0],
noiselevel=-1,
)
@@ -5031,7 +5034,7 @@ class depgraph:
if not self.need_restart():
writemsg(
(
- "\n\n!!! Problem "
+ "\n\n!!!! Problem "
+ "resolving dependencies for %s\n"
)
% arg.arg,
@@ -5132,7 +5135,7 @@ class depgraph:
elif isinstance(arg, SetArg):
writemsg(
(
- "\n\n!!! Problem resolving "
+ "\n\n!!!! Problem resolving "
+ "dependencies for %s from %s\n"
)
% (atom, arg.arg),
@@ -5140,7 +5143,10 @@ class depgraph:
)
else:
writemsg(
- ("\n\n!!! Problem resolving " + "dependencies for %s\n")
+ (
+ "\n\n!!!! Problem resolving "
+ + "dependencies for %s\n"
+ )
% (atom,),
noiselevel=-1,
)
@@ -5150,10 +5156,10 @@ class depgraph:
raise # Needed else can't exit
except Exception as e:
writemsg(
- "\n\n!!! Problem in '%s' dependencies.\n" % atom, noiselevel=-1
+ "\n\n!!!! Problem in '%s' dependencies.\n" % atom, noiselevel=-1
)
writemsg(
- "!!! %s %s\n" % (str(e), str(getattr(e, "__module__", None)))
+ "!!!! %s %s\n" % (str(e), str(getattr(e, "__module__", None)))
)
raise
@@ -5674,7 +5680,7 @@ class depgraph:
)
except InvalidDependString as e:
writemsg_level(
- "!!! Invalid RDEPEND in "
+ "!!!! Invalid RDEPEND in "
+ "'%svar/db/pkg/%s/RDEPEND': %s\n" % (pkg.root, pkg.cpv, e),
noiselevel=-1,
level=logging.ERROR,
@@ -5713,7 +5719,7 @@ class depgraph:
if not pkg.installed:
raise
writemsg_level(
- "!!! Invalid RDEPEND in "
+ "!!!! Invalid RDEPEND in "
+ "'%svar/db/pkg/%s/RDEPEND': %s\n" % (pkg.root, pkg.cpv, e),
noiselevel=-1,
level=logging.ERROR,
@@ -6403,7 +6409,7 @@ class depgraph:
pkg = show_req_use
output_cpv = pkg.cpv + _repo_separator + pkg.repo
writemsg(
- "\n!!! "
+ "\n!!!! "
+ colorize("BAD", "The ebuild selected to satisfy ")
+ colorize("INFORM", xinfo)
+ colorize("BAD", " has unmet requirements.")
@@ -6447,7 +6453,7 @@ class depgraph:
noiselevel=-1,
)
writemsg(
- "!!! One of the following packages is required to complete your request:\n",
+ "!!!! One of the following packages is required to complete your request:\n",
noiselevel=-1,
)
for pkg, mreasons in show_missing_use:
@@ -6464,7 +6470,7 @@ class depgraph:
elif masked_packages:
writemsg(
- "\n!!! "
+ "\n!!!! "
+ colorize("BAD", "All ebuilds that could satisfy ")
+ colorize("INFORM", xinfo)
+ colorize("BAD", " have been masked.")
@@ -6472,7 +6478,7 @@ class depgraph:
noiselevel=-1,
)
writemsg(
- "!!! One of the following masked packages is required to complete your request:\n",
+ "!!!! One of the following masked packages is required to complete your request:\n",
noiselevel=-1,
)
have_eapi_mask = show_masked_packages(masked_packages)
@@ -8978,7 +8984,7 @@ class depgraph:
)
except portage.exception.InvalidDependString as e:
portage.writemsg(
- "!!! Invalid RDEPEND in "
+ "!!!! Invalid RDEPEND in "
+ "'%svar/db/pkg/%s/RDEPEND': %s\n"
% (running_root, running_portage.cpv, e),
noiselevel=-1,
@@ -9385,7 +9391,7 @@ class depgraph:
)
except portage.exception.InvalidDependString as e:
portage.writemsg(
- "!!! Invalid PROVIDE in "
+ "!!!! Invalid PROVIDE in "
+ "'%svar/db/pkg/%s/PROVIDE': %s\n"
% (task.root, task.cpv, e),
noiselevel=-1,
@@ -9423,7 +9429,7 @@ class depgraph:
skip = True
except portage.exception.InvalidDependString as e:
portage.writemsg(
- "!!! Invalid PROVIDE in "
+ "!!!! Invalid PROVIDE in "
+ "'%svar/db/pkg/%s/PROVIDE': %s\n"
% (task.root, task.cpv, e),
noiselevel=-1,
@@ -9465,7 +9471,7 @@ class depgraph:
break
except portage.exception.InvalidDependString as e:
portage.writemsg(
- "!!! Invalid PROVIDE in "
+ "!!!! Invalid PROVIDE in "
+ "'%svar/db/pkg/%s/PROVIDE': %s\n"
% (task.root, task.cpv, e),
noiselevel=-1,
@@ -10276,7 +10282,7 @@ class depgraph:
for (abs_user_config, f), path in file_to_write_to.items():
if path is None:
problems.append(
- "!!! No file to write for '%s'\n"
+ "!!!! No file to write for '%s'\n"
% os.path.join(abs_user_config, f)
)
@@ -10353,7 +10359,7 @@ class depgraph:
file_contents = []
else:
problems.append(
- "!!! Failed to read '%s': %s\n" % (file_to_write_to, e)
+ "!!!! Failed to read '%s': %s\n" % (file_to_write_to, e)
)
if file_contents is not None:
file_contents.extend(changes)
@@ -10370,7 +10376,7 @@ class depgraph:
try:
write_atomic(file_to_write_to, "".join(file_contents))
except PortageException:
- problems.append("!!! Failed to write '%s'\n" % file_to_write_to)
+ problems.append("!!!! Failed to write '%s'\n" % file_to_write_to)
if not quiet and (p_mask_change_msg or masked_by_missing_keywords):
msg = [
@@ -10522,23 +10528,23 @@ class depgraph:
if world_problems:
writemsg(
- "\n!!! Problems have been " + "detected with your world file\n",
+ "\n!!!! Problems have been " + "detected with your world file\n",
noiselevel=-1,
)
writemsg(
- "!!! Please run " + green("emaint --check world") + "\n\n",
+ "!!!! Please run " + green("emaint --check world") + "\n\n",
noiselevel=-1,
)
if self._dynamic_config._missing_args:
writemsg(
"\n"
- + colorize("BAD", "!!!")
+ + colorize("BAD", "!!!!")
+ " Ebuilds for the following packages are either all\n",
noiselevel=-1,
)
writemsg(
- colorize("BAD", "!!!") + " masked or don't exist:\n", noiselevel=-1
+ colorize("BAD", "!!!!") + " masked or don't exist:\n", noiselevel=-1
)
writemsg(
" ".join(str(atom) for arg, atom in self._dynamic_config._missing_args)
@@ -10604,7 +10610,7 @@ class depgraph:
if masked_packages:
writemsg(
"\n"
- + colorize("BAD", "!!!")
+ + colorize("BAD", "!!!!")
+ " The following updates are masked by LICENSE changes:\n",
noiselevel=-1,
)
@@ -10625,7 +10631,7 @@ class depgraph:
if masked_packages:
writemsg(
"\n"
- + colorize("BAD", "!!!")
+ + colorize("BAD", "!!!!")
+ " The following installed packages are masked:\n",
noiselevel=-1,
)
@@ -10639,25 +10645,27 @@ class depgraph:
if self._dynamic_config._buildpkgonly_deps_unsatisfied:
self._show_merge_list()
writemsg(
- "\n!!! --buildpkgonly requires all " "dependencies to be merged.\n",
+ "\n!!!! --buildpkgonly requires all " "dependencies to be merged.\n",
noiselevel=-1,
)
writemsg(
- "!!! Cannot merge requested packages. " "Merge deps and try again.\n\n",
+ "!!!! Cannot merge requested packages. "
+ "Merge deps and try again.\n\n",
noiselevel=-1,
)
if self._dynamic_config._quickpkg_direct_deps_unsatisfied:
self._show_merge_list()
writemsg(
- "\n!!! --quickpkg-direct requires all "
+ "\n!!!! --quickpkg-direct requires all "
"dependencies to be merged for root '{}'.\n".format(
self._frozen_config._running_root.root
),
noiselevel=-1,
)
writemsg(
- "!!! Cannot merge requested packages. " "Merge deps and try again.\n\n",
+ "!!!! Cannot merge requested packages. "
+ "Merge deps and try again.\n\n",
noiselevel=-1,
)
@@ -10704,10 +10712,11 @@ class depgraph:
added_favorites.add(myfavkey)
except portage.exception.InvalidDependString as e:
writemsg(
- "\n\n!!! '%s' has invalid PROVIDE: %s\n" % (x.cpv, e), noiselevel=-1
+ "\n\n!!!! '%s' has invalid PROVIDE: %s\n" % (x.cpv, e),
+ noiselevel=-1,
)
writemsg(
- "!!! see '%s'\n\n"
+ "!!!! see '%s'\n\n"
% os.path.join(x.root, portage.VDB_PATH, x.cpv, "PROVIDE"),
noiselevel=-1,
)
@@ -10753,7 +10762,7 @@ class depgraph:
else:
filename = "world"
writemsg_stdout(
- '>>> Recording %s in "%s" favorites file...\n'
+ '>>>> Recording %s in "%s" favorites file...\n'
% (colorize("INFORM", str(a)), filename),
noiselevel=-1,
)
@@ -11386,11 +11395,11 @@ def ambiguous_package_name(arg, atoms, root_config, spinner, myopts):
if "--quiet" in myopts:
writemsg(
- '!!! The short ebuild name "%s" is ambiguous. Please specify\n' % arg,
+ '!!!! The short ebuild name "%s" is ambiguous. Please specify\n' % arg,
noiselevel=-1,
)
writemsg(
- "!!! one of the following fully-qualified ebuild names instead:\n\n",
+ "!!!! one of the following fully-qualified ebuild names instead:\n\n",
noiselevel=-1,
)
for cp in sorted(set(portage.dep_getkey(atom) for atom in atoms)):
@@ -11413,11 +11422,11 @@ def ambiguous_package_name(arg, atoms, root_config, spinner, myopts):
s.addCP(cp)
s.output()
writemsg(
- '!!! The short ebuild name "%s" is ambiguous. Please specify\n' % arg,
+ '!!!! The short ebuild name "%s" is ambiguous. Please specify\n' % arg,
noiselevel=-1,
)
writemsg(
- "!!! one of the above fully-qualified ebuild names instead.\n\n", noiselevel=-1
+ "!!!! one of the above fully-qualified ebuild names instead.\n\n", noiselevel=-1
)
diff --git a/lib/_emerge/main.py b/lib/_emerge/main.py
index 34555b26c..e30c59e07 100644
--- a/lib/_emerge/main.py
+++ b/lib/_emerge/main.py
@@ -96,8 +96,8 @@ COWSAY_MOO = r"""
def multiple_actions(action1, action2):
- sys.stderr.write("\n!!! Multiple actions requested... Please choose one only.\n")
- sys.stderr.write("!!! '%s' or '%s'\n\n" % (action1, action2))
+ sys.stderr.write("\n!!!! Multiple actions requested... Please choose one only.\n")
+ sys.stderr.write("!!!! '%s' or '%s'\n\n" % (action1, action2))
sys.exit(1)
@@ -1170,7 +1170,7 @@ def profile_check(trees, myaction):
"--help, --info, --search, --sync, and --version."
)
writemsg_level(
- "".join("!!! %s\n" % l for l in textwrap.wrap(msg, 70)),
+ "".join("!!!! %s\n" % l for l in textwrap.wrap(msg, 70)),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/lib/_emerge/post_emerge.py b/lib/_emerge/post_emerge.py
index 019167251..911050250 100644
--- a/lib/_emerge/post_emerge.py
+++ b/lib/_emerge/post_emerge.py
@@ -139,10 +139,10 @@ def post_emerge(myaction, myopts, myfiles, target_root, trees, mtimedb, retval):
if vardbapi._plib_registry.hasEntries():
if "--quiet" in myopts:
print()
- print(colorize("WARN", "!!!") + " existing preserved libs found")
+ print(colorize("WARN", "!!!!") + " existing preserved libs found")
else:
print()
- print(colorize("WARN", "!!!") + " existing preserved libs:")
+ print(colorize("WARN", "!!!!") + " existing preserved libs:")
display_preserved_libs(vardbapi, verbose="--verbose" in myopts)
print(
"Use "
diff --git a/lib/_emerge/resolver/output_helpers.py b/lib/_emerge/resolver/output_helpers.py
index f80b79ccf..3f42510cf 100644
--- a/lib/_emerge/resolver/output_helpers.py
+++ b/lib/_emerge/resolver/output_helpers.py
@@ -203,9 +203,9 @@ class _DisplayConfig:
try:
mywidth = int(frozen_config.settings["COLUMNWIDTH"])
except ValueError as e:
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
writemsg(
- "!!! Unable to parse COLUMNWIDTH='%s'\n"
+ "!!!! Unable to parse COLUMNWIDTH='%s'\n"
% frozen_config.settings["COLUMNWIDTH"],
noiselevel=-1,
)
diff --git a/lib/_emerge/resolver/slot_collision.py b/lib/_emerge/resolver/slot_collision.py
index 0b063b5f3..e5def035d 100644
--- a/lib/_emerge/resolver/slot_collision.py
+++ b/lib/_emerge/resolver/slot_collision.py
@@ -250,11 +250,11 @@ class slot_conflict_handler:
msg = self.conflict_msg
indent = " "
msg.append(
- "\n!!! Multiple package instances within a single "
+ "\n!!!! Multiple package instances within a single "
+ "package slot have been pulled\n"
)
msg.append(
- "!!! into the dependency graph, resulting" + " in a slot conflict:\n\n"
+ "!!!! into the dependency graph, resulting" + " in a slot conflict:\n\n"
)
for root, slot_atom, pkgs in self.all_conflicts:
@@ -366,7 +366,7 @@ class slot_conflict_handler:
# above findAtomForPackage call to
# return None unexpectedly.
msg = (
- "\n\n!!! BUG: Detected "
+ "\n\n!!!! BUG: Detected "
"USE dep match inconsistency:\n"
"\tppkg: %s\n"
"\tviolated_atom: %s\n"
@@ -729,12 +729,12 @@ class slot_conflict_handler:
if need_rebuild:
msg.append(
- "\n!!! The slot conflict(s) shown above involve package(s) which may need to\n"
+ "\n!!!! The slot conflict(s) shown above involve package(s) which may need to\n"
)
msg.append(
- "!!! be rebuilt in order to solve the conflict(s). However, the following\n"
+ "!!!! be rebuilt in order to solve the conflict(s). However, the following\n"
)
- msg.append("!!! package(s) cannot be rebuilt for the reason(s) shown:\n\n")
+ msg.append("!!!! package(s) cannot be rebuilt for the reason(s) shown:\n\n")
for ppkg, reason in need_rebuild.items():
msg.append("%s%s: %s\n" % (indent, ppkg, reason))
msg.append("\n")
@@ -750,8 +750,8 @@ class slot_conflict_handler:
if self.conflict_is_unspecific and not (
"--newuse" in self.myopts and "--update" in self.myopts
):
- msg += "!!! Enabling --newuse and --update might solve this conflict.\n"
- msg += "!!! If not, it might help emerge to give a more specific suggestion.\n\n"
+ msg += "!!!! Enabling --newuse and --update might solve this conflict.\n"
+ msg += "!!!! If not, it might help emerge to give a more specific suggestion.\n\n"
return msg
solutions = self.solutions
diff --git a/lib/_emerge/show_invalid_depstring_notice.py b/lib/_emerge/show_invalid_depstring_notice.py
index 0b01d157c..7736896f7 100644
--- a/lib/_emerge/show_invalid_depstring_notice.py
+++ b/lib/_emerge/show_invalid_depstring_notice.py
@@ -11,7 +11,7 @@ from portage.util import writemsg_level
def show_invalid_depstring_notice(parent_node, error_msg):
msg1 = (
- "\n\n!!! Invalid or corrupt dependency specification: "
+ "\n\n!!!! Invalid or corrupt dependency specification: "
+ "\n\n%s\n\n%s\n\n" % (error_msg, parent_node)
)
p_key = parent_node.cpv
diff --git a/lib/_emerge/unmerge.py b/lib/_emerge/unmerge.py
index 81541cb4a..34e1e748b 100644
--- a/lib/_emerge/unmerge.py
+++ b/lib/_emerge/unmerge.py
@@ -129,7 +129,7 @@ def _unmerge_display(
candidate_catpkgs.append(x)
elif unmerge_action in ["prune", "clean"]:
print(
- "\n!!! Prune and clean do not accept individual"
+ "\n!!!! Prune and clean do not accept individual"
+ " ebuilds as arguments;\n skipping.\n"
)
continue
@@ -137,7 +137,7 @@ def _unmerge_display(
# it appears that the user is specifying an installed
# ebuild and we're in "unmerge" mode, so it's ok.
if not os.path.exists(x):
- print("\n!!! The path '" + x + "' doesn't exist.\n")
+ print("\n!!!! The path '" + x + "' doesn't exist.\n")
return 1, {}
absx = os.path.abspath(x)
@@ -154,7 +154,7 @@ def _unmerge_display(
sp_vdb_len = len(sp_vdb)
if not os.path.exists(absx + "/CONTENTS"):
- print("!!! Not a valid db dir: " + str(absx))
+ print("!!!! Not a valid db dir: " + str(absx))
return 1, {}
if sp_absx_len <= sp_vdb_len:
@@ -162,7 +162,9 @@ def _unmerge_display(
print(sp_absx)
print(absx)
print(
- "\n!!!", x, "cannot be inside " + vdb_path + "; aborting.\n"
+ "\n!!!!",
+ x,
+ "cannot be inside " + vdb_path + "; aborting.\n",
)
return 1, {}
@@ -171,7 +173,7 @@ def _unmerge_display(
print(sp_absx)
print(absx)
print(
- "\n!!!",
+ "\n!!!!",
x,
"is not inside " + vdb_path + "; aborting.\n",
)
@@ -187,14 +189,14 @@ def _unmerge_display(
writemsg_level(
darkgreen(
newline
- + ">>> Using system located in ROOT tree %s\n" % settings["ROOT"]
+ + ">>>> Using system located in ROOT tree %s\n" % settings["ROOT"]
)
)
if ("--pretend" in myopts or "--ask" in myopts) and not quiet:
writemsg_level(
darkgreen(
- newline + ">>> These are the packages that would be unmerged:\n"
+ newline + ">>>> These are the packages that would be unmerged:\n"
)
)
@@ -211,12 +213,12 @@ def _unmerge_display(
mymatch = vartree.dbapi.match(x)
except portage.exception.AmbiguousPackageName as errpkgs:
print(
- '\n\n!!! The short ebuild name "'
+ '\n\n!!!! The short ebuild name "'
+ x
+ '" is ambiguous. Please specify'
)
print(
- "!!! one of the following fully-qualified "
+ "!!!! one of the following fully-qualified "
+ "ebuild names instead:\n"
)
for i in errpkgs[0]:
@@ -314,13 +316,13 @@ def _unmerge_display(
numselected = len(all_selected)
if global_unmerge and not numselected:
portage.writemsg_stdout(
- "\n>>> No outdated packages were found on your system.\n"
+ "\n>>>> No outdated packages were found on your system.\n"
)
return 1, {}
if not numselected:
portage.writemsg_stdout(
- "\n>>> No packages selected for removal by " + unmerge_action + "\n"
+ "\n>>>> No packages selected for removal by " + unmerge_action + "\n"
)
return 1, {}
finally:
@@ -456,7 +458,7 @@ def _unmerge_display(
numselected = len(all_selected)
if not numselected:
writemsg_level(
- "\n>>> No packages selected for removal by " + unmerge_action + "\n"
+ "\n>>>> No packages selected for removal by " + unmerge_action + "\n"
)
return 1, {}
@@ -512,14 +514,14 @@ def _unmerge_display(
writemsg_level(
colorize(
"BAD",
- "\n\n!!! " + "%s is part of your system profile.\n" % (cp_info,),
+ "\n\n!!!! " + "%s is part of your system profile.\n" % (cp_info,),
),
level=logging.WARNING,
noiselevel=-1,
)
writemsg_level(
colorize(
- "WARN", "!!! Unmerging it may " + "be damaging to your system.\n\n"
+ "WARN", "!!!! Unmerging it may " + "be damaging to your system.\n\n"
),
level=logging.WARNING,
noiselevel=-1,
@@ -561,12 +563,12 @@ def _unmerge_display(
)
writemsg_level(
- "\n>>> "
+ "\n>>>> "
+ colorize("UNMERGE_WARN", "'Selected'")
+ " packages are slated for removal.\n"
)
writemsg_level(
- ">>> "
+ ">>>> "
+ colorize("GOOD", "'Protected'")
+ " and "
+ colorize("GOOD", "'omitted'")
@@ -633,7 +635,7 @@ def unmerge(
if not vartree.dbapi.writable:
writemsg_level(
- "!!! %s\n" % _("Read-only file system: %s") % vartree.dbapi._dbroot,
+ "!!!! %s\n" % _("Read-only file system: %s") % vartree.dbapi._dbroot,
level=logging.ERROR,
noiselevel=-1,
)
@@ -641,7 +643,7 @@ def unmerge(
# the real unmerging begins, after a short delay unless we're raging....
if not unmerge_action == "rage-clean" and clean_delay and not autoclean:
- countdown(int(settings["CLEAN_DELAY"]), ">>> Unmerging")
+ countdown(int(settings["CLEAN_DELAY"]), ">>>> Unmerging")
all_selected = set()
all_selected.update(*[x["selected"] for x in pkgmap])
@@ -653,7 +655,7 @@ def unmerge(
for x in range(len(pkgmap)):
for y in pkgmap[x]["selected"]:
emergelog(xterm_titles, "=== Unmerging... (" + y + ")")
- message = ">>> Unmerging ({0} of {1}) {2}...\n".format(
+ message = ">>>> Unmerging ({0} of {1}) {2}...\n".format(
colorize("MERGE_LIST_PROGRESS", str(curval)),
colorize("MERGE_LIST_PROGRESS", str(maxval)),
y,
@@ -673,7 +675,7 @@ def unmerge(
)
if retval != os.EX_OK:
- emergelog(xterm_titles, " !!! unmerge FAILURE: " + y)
+ emergelog(xterm_titles, " !!!! unmerge FAILURE: " + y)
if raise_on_error:
raise UninstallFailure(retval)
sys.exit(retval)
@@ -688,7 +690,7 @@ def unmerge(
sets["selected"].load()
sets["selected"].cleanPackage(vartree.dbapi, y)
sets["selected"].unlock()
- emergelog(xterm_titles, " >>> unmerge success: " + y)
+ emergelog(xterm_titles, " >>>> unmerge success: " + y)
if (
clean_world
diff --git a/lib/portage/__init__.py b/lib/portage/__init__.py
index 13af8da09..02799eba9 100644
--- a/lib/portage/__init__.py
+++ b/lib/portage/__init__.py
@@ -33,20 +33,20 @@ try:
except ImportError as e:
sys.stderr.write("\n\n")
sys.stderr.write(
- "!!! Failed to complete python imports. These are internal modules for\n"
+ "!!!! Failed to complete python imports. These are internal modules for\n"
)
sys.stderr.write(
- "!!! python and failure here indicates that you have a problem with python\n"
+ "!!!! python and failure here indicates that you have a problem with python\n"
)
sys.stderr.write(
- "!!! itself and thus portage is not able to continue processing.\n\n"
+ "!!!! itself and thus portage is not able to continue processing.\n\n"
)
sys.stderr.write(
- "!!! You might consider starting python with verbose flags to see what has\n"
+ "!!!! You might consider starting python with verbose flags to see what has\n"
)
sys.stderr.write(
- "!!! gone wrong. Here is the information we got for this exception:\n"
+ "!!!! gone wrong. Here is the information we got for this exception:\n"
)
sys.stderr.write(" " + str(e) + "\n\n")
raise
@@ -168,21 +168,21 @@ try:
except ImportError as e:
sys.stderr.write("\n\n")
sys.stderr.write(
- "!!! Failed to complete portage imports. There are internal modules for\n"
+ "!!!! Failed to complete portage imports. There are internal modules for\n"
)
sys.stderr.write(
- "!!! portage and failure here indicates that you have a problem with your\n"
+ "!!!! portage and failure here indicates that you have a problem with your\n"
)
sys.stderr.write(
- "!!! installation of portage. Please try a rescue portage located in the ebuild\n"
+ "!!!! installation of portage. Please try a rescue portage located in the ebuild\n"
)
sys.stderr.write(
- "!!! repository under '/var/db/repos/gentoo/sys-apps/portage/files/' (default).\n"
+ "!!!! repository under '/var/db/repos/gentoo/sys-apps/portage/files/' (default).\n"
)
sys.stderr.write(
- "!!! There is a README.RESCUE file that details the steps required to perform\n"
+ "!!!! There is a README.RESCUE file that details the steps required to perform\n"
)
- sys.stderr.write("!!! a recovery of portage.\n")
+ sys.stderr.write("!!!! a recovery of portage.\n")
sys.stderr.write(" " + str(e) + "\n\n")
raise
@@ -408,7 +408,7 @@ try:
_selinux_merge = _unicode_module_wrapper(_selinux, encoding=_encodings["merge"])
except (ImportError, OSError) as e:
if isinstance(e, OSError):
- sys.stderr.write("!!! SELinux not loaded: %s\n" % str(e))
+ sys.stderr.write("!!!! SELinux not loaded: %s\n" % str(e))
del e
_selinux = None
selinux = None
diff --git a/lib/portage/_selinux.py b/lib/portage/_selinux.py
index d05d6b8e7..460cbd8e1 100644
--- a/lib/portage/_selinux.py
+++ b/lib/portage/_selinux.py
@@ -98,14 +98,14 @@ def setexec(ctx="\n"):
if selinux.security_getenforce() == 1:
raise OSError(msg)
else:
- portage.writemsg("!!! %s\n" % msg, noiselevel=-1)
+ portage.writemsg("!!!! %s\n" % msg, noiselevel=-1)
if rc < 0:
if selinux.security_getenforce() == 1:
raise OSError(_('Failed setting exec() context "%s".') % ctx)
else:
portage.writemsg(
- "!!! " + _('Failed setting exec() context "%s".') % ctx, noiselevel=-1
+ "!!!! " + _('Failed setting exec() context "%s".') % ctx, noiselevel=-1
)
diff --git a/lib/portage/_sets/shell.py b/lib/portage/_sets/shell.py
index 249e1fb05..e82fe031b 100644
--- a/lib/portage/_sets/shell.py
+++ b/lib/portage/_sets/shell.py
@@ -15,7 +15,7 @@ class CommandOutputSet(PackageSet):
"""This class creates a PackageSet from the output of a shell command.
The shell command should produce one atom per line, that is:
- >>> atom1
+ >>>> atom1
atom2
...
atomN
diff --git a/lib/portage/binrepo/config.py b/lib/portage/binrepo/config.py
index 8024f24d7..3bbc4651e 100644
--- a/lib/portage/binrepo/config.py
+++ b/lib/portage/binrepo/config.py
@@ -58,7 +58,7 @@ class BinRepoConfigLoader(Mapping):
parser = self._parse(paths, parser_defaults)
except ConfigParserError as e:
writemsg(
- _("!!! Error while reading binrepo config file: %s\n") % e,
+ _("!!!! Error while reading binrepo config file: %s\n") % e,
noiselevel=-1,
)
parser = SafeConfigParser(defaults=parser_defaults)
@@ -71,7 +71,7 @@ class BinRepoConfigLoader(Mapping):
repo = BinRepoConfig(repo_data)
if repo.sync_uri is None:
writemsg(
- _("!!! Missing sync-uri setting for binrepo %s\n") % (repo.name,),
+ _("!!!! Missing sync-uri setting for binrepo %s\n") % (repo.name,),
noiselevel=-1,
)
continue
diff --git a/lib/portage/data.py b/lib/portage/data.py
index 09a4dd079..0e6abdd70 100644
--- a/lib/portage/data.py
+++ b/lib/portage/data.py
@@ -37,7 +37,7 @@ if not lchown:
def lchown(*_args, **_kwargs):
writemsg(
- colorize("BAD", "!!!")
+ colorize("BAD", "!!!!")
+ _(
" It seems that os.lchown does not"
" exist. Please rebuild python.\n"
diff --git a/lib/portage/dbapi/__init__.py b/lib/portage/dbapi/__init__.py
index 717ab95d5..449751013 100644
--- a/lib/portage/dbapi/__init__.py
+++ b/lib/portage/dbapi/__init__.py
@@ -375,7 +375,7 @@ class dbapi:
noiselevel=-1,
)
else:
- writemsg("!!! Invalid db entry: %s\n" % mypath, noiselevel=-1)
+ writemsg("!!!! Invalid db entry: %s\n" % mypath, noiselevel=-1)
def update_ents(self, updates, onProgress=None, onUpdate=None):
"""
diff --git a/lib/portage/dbapi/bintree.py b/lib/portage/dbapi/bintree.py
index 777fc4918..2d1fbbecf 100644
--- a/lib/portage/dbapi/bintree.py
+++ b/lib/portage/dbapi/bintree.py
@@ -589,15 +589,15 @@ class binarytree:
if (mynewpkg != myoldpkg) and self.dbapi.cpv_exists(mynewcpv):
writemsg(
- _("!!! Cannot update binary: Destination exists.\n"), noiselevel=-1
+ _("!!!! Cannot update binary: Destination exists.\n"), noiselevel=-1
)
- writemsg("!!! " + mycpv + " -> " + mynewcpv + "\n", noiselevel=-1)
+ writemsg("!!!! " + mycpv + " -> " + mynewcpv + "\n", noiselevel=-1)
continue
tbz2path = self.getname(mycpv)
if os.path.exists(tbz2path) and not os.access(tbz2path, os.W_OK):
writemsg(
- _("!!! Cannot update readonly binary: %s\n") % mycpv, noiselevel=-1
+ _("!!!! Cannot update readonly binary: %s\n") % mycpv, noiselevel=-1
)
continue
@@ -760,7 +760,7 @@ class binarytree:
if not self._binrepos_conf:
writemsg(
_(
- "!!! %s is missing (or PORTAGE_BINHOST is unset), but use is requested.\n"
+ "!!!! %s is missing (or PORTAGE_BINHOST is unset), but use is requested.\n"
)
% (config_path,),
noiselevel=-1,
@@ -885,7 +885,10 @@ class binarytree:
continue
if not os.access(full_path, os.R_OK):
writemsg(
- _("!!! Permission denied to read " "binary package: '%s'\n")
+ _(
+ "!!!! Permission denied to read "
+ "binary package: '%s'\n"
+ )
% full_path,
noiselevel=-1,
)
@@ -903,7 +906,7 @@ class binarytree:
if not mycat or not mypf or not slot:
# old-style or corrupt package
writemsg(
- _("\n!!! Invalid binary package: '%s'\n") % full_path,
+ _("\n!!!! Invalid binary package: '%s'\n") % full_path,
noiselevel=-1,
)
missing_keys = []
@@ -927,7 +930,7 @@ class binarytree:
)
)
for line in textwrap.wrap("".join(msg), 72):
- writemsg("!!! %s\n" % line, noiselevel=-1)
+ writemsg("!!!! %s\n" % line, noiselevel=-1)
self.invalids.append(mypkg)
continue
@@ -948,7 +951,7 @@ class binarytree:
if invalid_name:
writemsg(
- _("\n!!! Binary package name is " "invalid: '%s'\n")
+ _("\n!!!! Binary package name is " "invalid: '%s'\n")
% full_path,
noiselevel=-1,
)
@@ -959,7 +962,7 @@ class binarytree:
build_id = int(pkg_metadata["BUILD_ID"])
except ValueError:
writemsg(
- _("!!! Binary package has " "invalid BUILD_ID: '%s'\n")
+ _("!!!! Binary package has " "invalid BUILD_ID: '%s'\n")
% full_path,
noiselevel=-1,
)
@@ -982,7 +985,7 @@ class binarytree:
if not self.dbapi._category_re.match(mycat):
writemsg(
_(
- "!!! Binary package has an "
+ "!!!! Binary package has an "
"unrecognized category: '%s'\n"
)
% full_path,
@@ -990,7 +993,7 @@ class binarytree:
)
writemsg(
_(
- "!!! '%s' has a category that is not"
+ "!!!! '%s' has a category that is not"
" listed in %setc/portage/categories\n"
)
% (mycpv, self.settings["PORTAGE_CONFIGROOT"]),
@@ -1035,7 +1038,7 @@ class binarytree:
self._eval_use_flags(mycpv, d)
except portage.exception.InvalidDependString:
writemsg(
- _("!!! Invalid binary package: '%s'\n")
+ _("!!!! Invalid binary package: '%s'\n")
% self.getname(mycpv),
noiselevel=-1,
)
@@ -1251,7 +1254,7 @@ class binarytree:
pkgindex = None
writemsg(
_(
- "\n\n!!! Binhost package index "
+ "\n\n!!!! Binhost package index "
" has no TIMESTAMP field.\n"
),
noiselevel=-1,
@@ -1260,7 +1263,7 @@ class binarytree:
if not self._pkgindex_version_supported(rmt_idx):
writemsg(
_(
- "\n\n!!! Binhost package index version"
+ "\n\n!!!! Binhost package index version"
" is not supported: '%s'\n"
)
% rmt_idx.header.get("VERSION"),
@@ -1281,7 +1284,7 @@ class binarytree:
AlarmSignal.unregister()
except AlarmSignal:
writemsg(
- "\n\n!!! %s\n"
+ "\n\n!!!! %s\n"
% _("Timed out while closing connection to binhost"),
noiselevel=-1,
)
@@ -1299,7 +1302,7 @@ class binarytree:
# This includes URLError which is raised for SSL
# certificate errors when PEP 476 is supported.
writemsg(
- _("\n\n!!! Error fetching binhost package" " info from '%s'\n")
+ _("\n\n!!!! Error fetching binhost package" " info from '%s'\n")
% _hide_url_passwd(base_url)
)
# With Python 2, the EnvironmentError message may
@@ -1309,7 +1312,7 @@ class binarytree:
error_msg = str(e)
except UnicodeDecodeError as uerror:
error_msg = str(uerror.object, encoding="utf_8", errors="replace")
- writemsg("!!! %s\n\n" % error_msg)
+ writemsg("!!!! %s\n\n" % error_msg)
del e
pkgindex = None
if proc is not None:
@@ -1403,7 +1406,7 @@ class binarytree:
raise
del e
writemsg(
- _("!!! Binary package does not exist: '%s'\n") % full_path,
+ _("!!!! Binary package does not exist: '%s'\n") % full_path,
noiselevel=-1,
)
return
@@ -1414,7 +1417,9 @@ class binarytree:
except portage.exception.InvalidDependString:
invalid_depend = True
if invalid_depend or not metadata.get("SLOT"):
- writemsg(_("!!! Invalid binary package: '%s'\n") % full_path, noiselevel=-1)
+ writemsg(
+ _("!!!! Invalid binary package: '%s'\n") % full_path, noiselevel=-1
+ )
return
fetched = False
@@ -2008,7 +2013,7 @@ class binarytree:
digests["size"] = int(metadata["SIZE"])
except ValueError:
writemsg(
- _("!!! Malformed SIZE attribute in remote " "metadata for '%s'\n")
+ _("!!!! Malformed SIZE attribute in remote " "metadata for '%s'\n")
% cpv
)
diff --git a/lib/portage/dbapi/porttree.py b/lib/portage/dbapi/porttree.py
index 93f3fee2f..11cff1b3f 100644
--- a/lib/portage/dbapi/porttree.py
+++ b/lib/portage/dbapi/porttree.py
@@ -599,10 +599,10 @@ class portdbapi(dbapi):
ebuild_hash.mtime
except FileNotFound:
writemsg(
- _("!!! aux_get(): ebuild for " "'%s' does not exist at:\n") % (cpv,),
+ _("!!!! aux_get(): ebuild for " "'%s' does not exist at:\n") % (cpv,),
noiselevel=-1,
)
- writemsg("!!! %s\n" % ebuild_path, noiselevel=-1)
+ writemsg("!!!! %s\n" % ebuild_path, noiselevel=-1)
raise PortageKeyError(cpv)
# Pull pre-generated metadata from the metadata/cache/
@@ -723,7 +723,7 @@ class portdbapi(dbapi):
if not myebuild:
writemsg(
- "!!! aux_get(): %s\n" % _("ebuild not found for '%s'") % mycpv,
+ "!!!! aux_get(): %s\n" % _("ebuild not found for '%s'") % mycpv,
noiselevel=1,
)
future.set_exception(PortageKeyError(mycpv))
@@ -1161,7 +1161,7 @@ class portdbapi(dbapi):
if invalid_category and mylist:
writemsg(
_(
- "\n!!! '%s' has a category that is not listed in "
+ "\n!!!! '%s' has a category that is not listed in "
"%setc/portage/categories\n"
)
% (mycp, self.settings["PORTAGE_CONFIGROOT"]),
@@ -1436,10 +1436,10 @@ class portdbapi(dbapi):
continue
except PortageException as e:
writemsg(
- "!!! Error: aux_get('%s', %s)\n" % (mycpv, aux_keys),
+ "!!!! Error: aux_get('%s', %s)\n" % (mycpv, aux_keys),
noiselevel=-1,
)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
del e
continue
diff --git a/lib/portage/dbapi/vartree.py b/lib/portage/dbapi/vartree.py
index 8ffb23b1c..2f8fbddd1 100644
--- a/lib/portage/dbapi/vartree.py
+++ b/lib/portage/dbapi/vartree.py
@@ -721,7 +721,7 @@ class vardbapi(dbapi):
pass
else:
writemsg(
- _("!!! Error loading '%s': %s\n") % (self._aux_cache_filename, e),
+ _("!!!! Error loading '%s': %s\n") % (self._aux_cache_filename, e),
noiselevel=-1,
)
del e
@@ -1167,19 +1167,19 @@ class vardbapi(dbapi):
counter = int(f.readline().strip())
except (OverflowError, ValueError) as e:
writemsg(
- _("!!! COUNTER file is corrupt: '%s'\n") % self._counter_path,
+ _("!!!! COUNTER file is corrupt: '%s'\n") % self._counter_path,
noiselevel=-1,
)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
except EnvironmentError as e:
# Silently allow ENOENT since files under
# /var/cache/ are allowed to disappear.
if e.errno != errno.ENOENT:
writemsg(
- _("!!! Unable to read COUNTER file: '%s'\n") % self._counter_path,
+ _("!!!! Unable to read COUNTER file: '%s'\n") % self._counter_path,
noiselevel=-1,
)
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
del e
if self._cached_counter == counter:
@@ -2100,9 +2100,9 @@ class dblink:
pkgfiles[path] = data
if errors:
- writemsg(_("!!! Parse error in '%s'\n") % contents_file, noiselevel=-1)
+ writemsg(_("!!!! Parse error in '%s'\n") % contents_file, noiselevel=-1)
for pos, e in errors:
- writemsg(_("!!! line %d: %s\n") % (pos, e), noiselevel=-1)
+ writemsg(_("!!!! line %d: %s\n") % (pos, e), noiselevel=-1)
self.contentscache = pkgfiles
return pkgfiles
@@ -2211,7 +2211,7 @@ class dblink:
continue
obj_type = self.getcontents()[contents_key][0]
self._display_merge(
- _(">>> needed %s %s\n") % (obj_type, contents_key),
+ _(">>>> needed %s %s\n") % (obj_type, contents_key),
noiselevel=-1,
)
plib_registry.register(
@@ -2401,7 +2401,7 @@ class dblink:
retval = self._pre_unmerge_backup(background)
if retval != os.EX_OK:
showMessage(
- _("!!! FAILED prerm: quickpkg: %s\n") % retval,
+ _("!!!! FAILED prerm: quickpkg: %s\n") % retval,
level=logging.ERROR,
noiselevel=-1,
)
@@ -2417,7 +2417,7 @@ class dblink:
# Sometimes this happens due to corruption of the EAPI file.
failures += 1
showMessage(
- _("!!! FAILED prerm: %s\n") % os.path.join(self.dbdir, "EAPI"),
+ _("!!!! FAILED prerm: %s\n") % os.path.join(self.dbdir, "EAPI"),
level=logging.ERROR,
noiselevel=-1,
)
@@ -2438,7 +2438,7 @@ class dblink:
if retval != os.EX_OK:
failures += 1
showMessage(
- _("!!! FAILED prerm: %s\n") % retval,
+ _("!!!! FAILED prerm: %s\n") % retval,
level=logging.ERROR,
noiselevel=-1,
)
@@ -2465,7 +2465,7 @@ class dblink:
if retval != os.EX_OK:
failures += 1
showMessage(
- _("!!! FAILED postrm: %s\n") % retval,
+ _("!!!! FAILED postrm: %s\n") % retval,
level=logging.ERROR,
noiselevel=-1,
)
@@ -2972,7 +2972,7 @@ class dblink:
if e.errno not in ignored_unlink_errnos:
raise
del e
- show_unmerge("!!!", "", file_type, obj)
+ show_unmerge("!!!!", "", file_type, obj)
elif pkgfiles[objkey][0] == "obj":
if statobj is None or not stat.S_ISREG(statobj.st_mode):
show_unmerge("---", unmerge_desc["!obj"], file_type, obj)
@@ -3137,7 +3137,7 @@ class dblink:
if e.errno not in ignored_unlink_errnos:
raise
del e
- show_unmerge("!!!", "", "sym", obj)
+ show_unmerge("!!!!", "", "sym", obj)
protected_symlinks.clear()
self._unmerge_dirs(
@@ -3188,7 +3188,7 @@ class dblink:
if e.errno not in ignored_unlink_errnos:
raise
del e
- show_unmerge("!!!", "", "obj", child)
+ show_unmerge("!!!!", "", "obj", child)
try:
parent_name = os.path.dirname(obj)
@@ -3254,7 +3254,7 @@ class dblink:
if e.errno not in ignored_unlink_errnos:
raise
del e
- show_unmerge("!!!", "", "sym", obj)
+ show_unmerge("!!!!", "", "sym", obj)
else:
parents.append(os.path.dirname(obj))
@@ -3483,7 +3483,7 @@ class dblink:
self._linkmap_broken = True
self._display_merge(
_(
- "!!! Disabling preserve-libs "
+ "!!!! Disabling preserve-libs "
"due to error: Command Not Found: %s\n"
)
% (e,),
@@ -3658,7 +3658,7 @@ class dblink:
# it shouldn't be preserved here.
showMessage(
_(
- "!!! File '%s' will not be preserved "
+ "!!!! File '%s' will not be preserved "
"due to missing contents entry\n"
)
% (f_abs,),
@@ -3669,7 +3669,7 @@ class dblink:
continue
new_contents[f_abs] = contents_entry
obj_type = contents_entry[0]
- showMessage(_(">>> needed %s %s\n") % (obj_type, f_abs), noiselevel=-1)
+ showMessage(_(">>>> needed %s %s\n") % (obj_type, f_abs), noiselevel=-1)
# Add parent directories to contents if necessary.
parent_dir = os.path.dirname(f_abs)
while len(parent_dir) > len(root):
@@ -3795,8 +3795,8 @@ class dblink:
# registry, but the actual lib it points to is not.
self._display_merge(
_(
- "!!! symlink to lib is preserved, "
- "but not the lib itself:\n!!! '%s'\n"
+ "!!!! symlink to lib is preserved, "
+ "but not the lib itself:\n!!!! '%s'\n"
)
% (obj,),
level=logging.ERROR,
@@ -4271,7 +4271,7 @@ class dblink:
if not os.path.isdir(srcroot):
showMessage(
- _("!!! Directory Not Found: D='%s'\n") % srcroot,
+ _("!!!! Directory Not Found: D='%s'\n") % srcroot,
level=logging.ERROR,
noiselevel=-1,
)
@@ -4287,7 +4287,7 @@ class dblink:
)
phase.start()
if phase.wait() != os.EX_OK:
- showMessage(_("!!! instprep failed\n"), level=logging.ERROR, noiselevel=-1)
+ showMessage(_("!!!! instprep failed\n"), level=logging.ERROR, noiselevel=-1)
return 1
is_binpkg = self.settings.get("EMERGE_FROM") == "binary"
@@ -4318,7 +4318,7 @@ class dblink:
slot = self.settings.get(var_name, "")
if not slot.strip():
showMessage(
- _("!!! SLOT is undefined\n"),
+ _("!!!! SLOT is undefined\n"),
level=logging.ERROR,
noiselevel=-1,
)
@@ -4920,7 +4920,7 @@ class dblink:
rval = self._pre_merge_backup(self._installed_instance, downgrade)
if rval != os.EX_OK:
showMessage(
- _("!!! FAILED preinst: ") + "quickpkg: %s\n" % rval,
+ _("!!!! FAILED preinst: ") + "quickpkg: %s\n" % rval,
level=logging.ERROR,
noiselevel=-1,
)
@@ -4928,7 +4928,7 @@ class dblink:
# run preinst script
showMessage(
- _(">>> Merging %(cpv)s to %(destroot)s\n")
+ _(">>>> Merging %(cpv)s to %(destroot)s\n")
% {"cpv": self.mycpv, "destroot": destroot}
)
phase = EbuildPhase(
@@ -4943,7 +4943,7 @@ class dblink:
# XXX: Decide how to handle failures here.
if a != os.EX_OK:
showMessage(
- _("!!! FAILED preinst: ") + str(a) + "\n",
+ _("!!!! FAILED preinst: ") + str(a) + "\n",
level=logging.ERROR,
noiselevel=-1,
)
@@ -5058,7 +5058,7 @@ class dblink:
autoclean = self.settings.get("AUTOCLEAN", "yes") == "yes" or preserve_paths
if autoclean:
- emerge_log(_(" >>> AUTOCLEAN: %s") % (slot_atom,))
+ emerge_log(_(" >>>> AUTOCLEAN: %s") % (slot_atom,))
others_in_slot.append(self) # self has just been merged
for dblnk in list(others_in_slot):
@@ -5066,7 +5066,7 @@ class dblink:
continue
if not (autoclean or dblnk.mycpv == self.mycpv or reinstall_self):
continue
- showMessage(_(">>> Safely unmerging already-installed instance...\n"))
+ showMessage(_(">>>> Safely unmerging already-installed instance...\n"))
emerge_log(_(" === Unmerging... (%s)") % (dblnk.mycpv,))
others_in_slot.remove(dblnk) # dblnk will unmerge itself now
dblnk._linkmap_broken = self._linkmap_broken
@@ -5083,9 +5083,9 @@ class dblink:
dblnk.settings.pop("REPLACED_BY_VERSION", None)
if unmerge_rval == os.EX_OK:
- emerge_log(_(" >>> unmerge success: %s") % (dblnk.mycpv,))
+ emerge_log(_(" >>>> unmerge success: %s") % (dblnk.mycpv,))
else:
- emerge_log(_(" !!! unmerge FAILURE: %s") % (dblnk.mycpv,))
+ emerge_log(_(" !!!! unmerge FAILURE: %s") % (dblnk.mycpv,))
self.lockdb()
try:
@@ -5093,7 +5093,7 @@ class dblink:
dblnk.delete()
finally:
self.unlockdb()
- showMessage(_(">>> Original instance of package unmerged safely.\n"))
+ showMessage(_(">>>> Original instance of package unmerged safely.\n"))
if len(others_in_slot) > 1:
showMessage(
@@ -5221,7 +5221,7 @@ class dblink:
phase.start()
a = phase.wait()
if a == os.EX_OK:
- showMessage(_(">>> %s merged.\n") % self.mycpv)
+ showMessage(_(">>>> %s merged.\n") % self.mycpv)
finally:
self.settings.pop("PORTAGE_UPDATE_ENV", None)
@@ -5533,7 +5533,7 @@ class dblink:
mydest_link,
)
- zing = "!!!"
+ zing = "!!!!"
if not moveme:
# confmem rejected this update
zing = "---"
@@ -5582,7 +5582,7 @@ class dblink:
continue
# unlinking no longer necessary; "movefile" will overwrite symlinks atomically and correctly
if moveme:
- zing = ">>>"
+ zing = ">>>>"
mymtime = movefile(
mysrc,
mydest,
@@ -5625,12 +5625,12 @@ class dblink:
)
else:
showMessage(
- _("!!! Failed to move file.\n"),
+ _("!!!! Failed to move file.\n"),
level=logging.ERROR,
noiselevel=-1,
)
showMessage(
- "!!! %s -> %s\n" % (mydest, myto),
+ "!!!! %s -> %s\n" % (mydest, myto),
level=logging.ERROR,
noiselevel=-1,
)
@@ -5649,20 +5649,20 @@ class dblink:
if not stat.S_ISLNK(mydmode) and not os.access(mydest, os.W_OK):
pkgstuff = pkgsplit(self.pkg)
writemsg(
- _("\n!!! Cannot write to '%s'.\n") % mydest, noiselevel=-1
+ _("\n!!!! Cannot write to '%s'.\n") % mydest, noiselevel=-1
)
writemsg(
_(
- "!!! Please check permissions and directories for broken symlinks.\n"
+ "!!!! Please check permissions and directories for broken symlinks.\n"
)
)
writemsg(
_(
- "!!! You may start the merge process again by using ebuild:\n"
+ "!!!! You may start the merge process again by using ebuild:\n"
)
)
writemsg(
- "!!! ebuild "
+ "!!!! ebuild "
+ self.settings["PORTDIR"]
+ "/"
+ self.cat
@@ -5672,7 +5672,7 @@ class dblink:
+ self.pkg
+ ".ebuild merge\n"
)
- writemsg(_("!!! And finish by running this: env-update\n\n"))
+ writemsg(_("!!!! And finish by running this: env-update\n\n"))
return 1
if stat.S_ISDIR(mydmode) or (
@@ -5732,7 +5732,7 @@ class dblink:
bsd_chflags.lchflags(mydest, dflags)
os.chmod(mydest, mystat[0])
os.chown(mydest, mystat[4], mystat[5])
- showMessage(">>> %s/\n" % mydest)
+ showMessage(">>>> %s/\n" % mydest)
else:
try:
# destination doesn't exist
@@ -5753,7 +5753,7 @@ class dblink:
del e
os.chmod(mydest, mystat[0])
os.chown(mydest, mystat[4], mystat[5])
- showMessage(">>> %s/\n" % mydest)
+ showMessage(">>>> %s/\n" % mydest)
try:
self._merged_path(mydest, os.lstat(mydest))
@@ -5810,7 +5810,7 @@ class dblink:
if mymtime is None:
return 1
hardlink_candidates.append(mydest)
- zing = ">>>"
+ zing = ">>>>"
try:
self._merged_path(mydest, os.lstat(mydest))
@@ -5829,7 +5829,7 @@ class dblink:
showMessage("%s %s\n" % (zing, mydest))
else:
# we are merging a fifo or device node
- zing = "!!!"
+ zing = "!!!!"
if mydmode is None:
# destination doesn't exist
if (
@@ -5843,7 +5843,7 @@ class dblink:
)
is not None
):
- zing = ">>>"
+ zing = ">>>>"
try:
self._merged_path(mydest, os.lstat(mydest))
diff --git a/lib/portage/dep/__init__.py b/lib/portage/dep/__init__.py
index 3b3577025..727915bbe 100644
--- a/lib/portage/dep/__init__.py
+++ b/lib/portage/dep/__init__.py
@@ -254,9 +254,9 @@ def _get_useflag_re(eapi):
def cpvequal(cpv1, cpv2):
"""
Example Usage:
- >>> from portage.dep import cpvequal
- >>> cpvequal("sys-apps/portage-2.1","sys-apps/portage-2.1")
- >>> True
+ >>>> from portage.dep import cpvequal
+ >>>> cpvequal("sys-apps/portage-2.1","sys-apps/portage-2.1")
+ >>>> True
@param cpv1: CategoryPackageVersion (no operators) Example: "sys-apps/portage-2.1"
@type cpv1: String
@@ -317,7 +317,7 @@ def paren_reduce(mystr, _deprecation_warn=True):
split the list elements by spaces. All redundant brackets are removed.
Example usage:
- >>> paren_reduce('foobar foo? ( bar baz )')
+ >>>> paren_reduce('foobar foo? ( bar baz )')
['foobar', 'foo?', ['bar', 'baz']]
@param mystr: The string to reduce
@@ -484,8 +484,8 @@ def paren_enclose(mylist, unevaluated_atom=False, opconvert=False):
@return: The paren enclosed string
Example usage:
- >>> test = ['foobar','foo',['bar','baz']]
- >>> paren_enclose(test)
+ >>>> test = ['foobar','foo',['bar','baz']]
+ >>>> paren_enclose(test)
'foobar foo ( bar baz )'
"""
mystrparts = []
@@ -989,8 +989,8 @@ def dep_opconvert(deplist):
list of deps that follows..
Example usage:
- >>> test = ["blah", "||", ["foo", "bar", "baz"]]
- >>> dep_opconvert(test)
+ >>>> test = ["blah", "||", ["foo", "bar", "baz"]]
+ >>>> dep_opconvert(test)
['blah', ['||', 'foo', 'bar', 'baz']]
@param deplist: A list of deps to format
@@ -1034,7 +1034,7 @@ def flatten(mylist):
@return: A single list containing only non-list elements.
Example usage:
- >>> flatten([1, [2, 3, [4]]])
+ >>>> flatten([1, [2, 3, [4]]])
[1, 2, 3, 4]
"""
if portage._internal_caller:
@@ -2086,8 +2086,8 @@ def get_operator(mydep):
Return the operator used in a depstring.
Example usage:
- >>> from portage.dep import *
- >>> get_operator(">=test-1.0")
+ >>>> from portage.dep import *
+ >>>> get_operator(">=test-1.0")
'>='
@param mydep: The dep string to check
@@ -2107,7 +2107,7 @@ def dep_getcpv(mydep):
Return the category-package-version with any operators/slot specifications stripped off
Example usage:
- >>> dep_getcpv('>=media-libs/test-3.0')
+ >>>> dep_getcpv('>=media-libs/test-3.0')
'media-libs/test-3.0'
@param mydep: The depstring
@@ -2126,7 +2126,7 @@ def dep_getslot(mydep):
Retrieve the slot on a depend.
Example usage:
- >>> dep_getslot('app-misc/test:3')
+ >>>> dep_getslot('app-misc/test:3')
'3'
@param mydep: The depstring to retrieve the slot of
@@ -2160,7 +2160,7 @@ def dep_getrepo(mydep):
@return: The repository name
Example usage:
- >>> dep_getrepo('app-misc/test::repository')
+ >>>> dep_getrepo('app-misc/test::repository')
'repository'
"""
repo = getattr(mydep, "repo", False)
@@ -2213,7 +2213,7 @@ def dep_getusedeps(depend):
@return: List of use flags ( or [] if no flags exist )
Example usage:
- >>> dep_getusedeps('app-misc/test:3[foo,-bar]')
+ >>>> dep_getusedeps('app-misc/test:3[foo,-bar]')
('foo', '-bar')
"""
use_list = []
@@ -2276,9 +2276,9 @@ def isvalidatom(
Check to see if a depend atom is valid
Example usage:
- >>> isvalidatom('media-libs/test-3.0')
+ >>>> isvalidatom('media-libs/test-3.0')
False
- >>> isvalidatom('>=media-libs/test-3.0')
+ >>>> isvalidatom('>=media-libs/test-3.0')
True
@param atom: The depend atom to check against
@@ -2314,9 +2314,9 @@ def isjustname(mypkg):
Checks to see if the atom is only the package name (no version parts).
Example usage:
- >>> isjustname('=media-libs/test-3.0')
+ >>>> isjustname('=media-libs/test-3.0')
False
- >>> isjustname('media-libs/test')
+ >>>> isjustname('media-libs/test')
True
@param mypkg: The package atom to check
@@ -2345,9 +2345,9 @@ def isspecific(mypkg):
package-version format.
Example usage:
- >>> isspecific('media-libs/test')
+ >>>> isspecific('media-libs/test')
False
- >>> isspecific('=media-libs/test-3.0')
+ >>>> isspecific('=media-libs/test-3.0')
True
@param mypkg: The package depstring to check against
@@ -2373,7 +2373,7 @@ def dep_getkey(mydep):
Return the category/package-name of a depstring.
Example usage:
- >>> dep_getkey('=media-libs/test-3.0')
+ >>>> dep_getkey('=media-libs/test-3.0')
'media-libs/test'
@param mydep: The depstring to retrieve the category/package-name of
@@ -2538,7 +2538,7 @@ def match_from_list(mydep, candidate_list):
if ver and rev:
operator = mydep.operator
if not operator:
- writemsg(_("!!! Invalid atom: %s\n") % mydep, noiselevel=-1)
+ writemsg(_("!!!! Invalid atom: %s\n") % mydep, noiselevel=-1)
return []
else:
operator = None
@@ -3120,7 +3120,7 @@ def extract_affecting_use(mystr, atom, eapi=None):
@return: Set of use flags affecting given atom
Example usage:
- >>> extract_affecting_use('sasl? ( dev-libs/cyrus-sasl ) \
+ >>>> extract_affecting_use('sasl? ( dev-libs/cyrus-sasl ) \
!minimal? ( cxx? ( dev-libs/cyrus-sasl ) )', 'dev-libs/cyrus-sasl')
{'cxx', 'minimal', 'sasl'}
"""
diff --git a/lib/portage/elog/__init__.py b/lib/portage/elog/__init__.py
index 48e2a39de..138407719 100644
--- a/lib/portage/elog/__init__.py
+++ b/lib/portage/elog/__init__.py
@@ -195,7 +195,7 @@ def elog_process(cpv, mysettings, phasefilter=None):
except (ImportError, AttributeError) as e:
writemsg(
_(
- "!!! Error while importing logging modules "
+ "!!!! Error while importing logging modules "
'while loading "mod_%s":\n'
)
% str(s)
diff --git a/lib/portage/elog/messages.py b/lib/portage/elog/messages.py
index 6a67a45de..ea4e8c736 100644
--- a/lib/portage/elog/messages.py
+++ b/lib/portage/elog/messages.py
@@ -50,7 +50,7 @@ def collect_ebuild_messages(path):
filename = os.path.join(path, msgfunction)
if msgfunction not in EBUILD_PHASES:
writemsg(
- _("!!! can't process invalid log file: %s\n") % filename, noiselevel=-1
+ _("!!!! can't process invalid log file: %s\n") % filename, noiselevel=-1
)
continue
if not msgfunction in logentries:
@@ -74,7 +74,8 @@ def collect_ebuild_messages(path):
raise ValueError(msgtype)
except ValueError:
writemsg(
- _("!!! malformed entry in " "log file: '%s': %s\n") % (filename, l),
+ _("!!!! malformed entry in " "log file: '%s': %s\n")
+ % (filename, l),
noiselevel=-1,
)
continue
diff --git a/lib/portage/elog/mod_custom.py b/lib/portage/elog/mod_custom.py
index e0ae77e10..37a3e86c4 100644
--- a/lib/portage/elog/mod_custom.py
+++ b/lib/portage/elog/mod_custom.py
@@ -12,7 +12,7 @@ def process(mysettings, key, logentries, fulltext):
if not mysettings.get("PORTAGE_ELOG_COMMAND"):
raise portage.exception.MissingParameter(
- "!!! Custom logging requested but PORTAGE_ELOG_COMMAND is not defined"
+ "!!!! Custom logging requested but PORTAGE_ELOG_COMMAND is not defined"
)
else:
mylogcmd = mysettings["PORTAGE_ELOG_COMMAND"]
@@ -21,5 +21,5 @@ def process(mysettings, key, logentries, fulltext):
retval = portage.process.spawn_bash(mylogcmd)
if retval != 0:
raise portage.exception.PortageException(
- "!!! PORTAGE_ELOG_COMMAND failed with exitcode %d" % retval
+ "!!!! PORTAGE_ELOG_COMMAND failed with exitcode %d" % retval
)
diff --git a/lib/portage/elog/mod_mail_summary.py b/lib/portage/elog/mod_mail_summary.py
index a695290ef..79f705f8c 100644
--- a/lib/portage/elog/mod_mail_summary.py
+++ b/lib/portage/elog/mod_mail_summary.py
@@ -28,7 +28,7 @@ def process(mysettings, key, logentries, fulltext):
errors="replace",
)
header = _(
- ">>> Messages generated for package %(pkg)s by process %(pid)d on %(time)s:\n\n"
+ ">>>> Messages generated for package %(pkg)s by process %(pid)d on %(time)s:\n\n"
) % {"pkg": key, "pid": portage.getpid(), "time": time_str}
config_root = mysettings["PORTAGE_CONFIGROOT"]
diff --git a/lib/portage/elog/mod_save_summary.py b/lib/portage/elog/mod_save_summary.py
index 939198fdc..75f5097d3 100644
--- a/lib/portage/elog/mod_save_summary.py
+++ b/lib/portage/elog/mod_save_summary.py
@@ -85,7 +85,7 @@ def process(mysettings, key, logentries, fulltext):
)
elogfile.write(
_(
- ">>> Messages generated by process "
+ ">>>> Messages generated by process "
"%(pid)d on %(time)s for package %(pkg)s:\n\n"
)
% {"pid": portage.getpid(), "time": time_str, "pkg": key}
diff --git a/lib/portage/emaint/modules/binhost/binhost.py b/lib/portage/emaint/modules/binhost/binhost.py
index 9d924f7e1..cd5c4c92a 100644
--- a/lib/portage/emaint/modules/binhost/binhost.py
+++ b/lib/portage/emaint/modules/binhost/binhost.py
@@ -158,7 +158,8 @@ class BinhostHandler:
bintree._eval_use_flags(cpv, d)
except portage.exception.InvalidDependString:
writemsg(
- "!!! Invalid binary package: '%s'\n" % bintree.getname(cpv),
+ "!!!! Invalid binary package: '%s'\n"
+ % bintree.getname(cpv),
noiselevel=-1,
)
else:
diff --git a/lib/portage/env/loaders.py b/lib/portage/env/loaders.py
index 284c311a1..6c69a1ecf 100644
--- a/lib/portage/env/loaders.py
+++ b/lib/portage/env/loaders.py
@@ -197,10 +197,10 @@ class ItemFileLoader(FileLoader):
"""
Class to load data from a file full of items one per line
- >>> item1
- >>> item2
- >>> item3
- >>> item1
+ >>>> item1
+ >>>> item2
+ >>>> item3
+ >>>> item1
becomes { 'item1':None, 'item2':None, 'item3':None }
Note that due to the data store being a dict, duplicates
@@ -235,7 +235,7 @@ class KeyListFileLoader(FileLoader):
"""
Class to load data from a file full of key [list] tuples
- >>>>key foo1 foo2 foo3
+ >>>>>key foo1 foo2 foo3
becomes
{'key':['foo1','foo2','foo3']}
"""
@@ -288,8 +288,8 @@ class KeyValuePairFileLoader(FileLoader):
"""
Class to load data from a file full of key=value pairs
- >>>>key=value
- >>>>foo=bar
+ >>>>>key=value
+ >>>>>foo=bar
becomes:
{'key':'value',
'foo':'bar'}
diff --git a/lib/portage/getbinpkg.py b/lib/portage/getbinpkg.py
index 6aa8f1de1..f9e4aaa62 100644
--- a/lib/portage/getbinpkg.py
+++ b/lib/portage/getbinpkg.py
@@ -29,7 +29,7 @@ from urllib.parse import unquote as urllib_parse_unquote
try:
import ftplib
except ImportError as e:
- sys.stderr.write(colorize("BAD", "!!! CANNOT IMPORT FTPLIB: ") + str(e) + "\n")
+ sys.stderr.write(colorize("BAD", "!!!! CANNOT IMPORT FTPLIB: ") + str(e) + "\n")
else:
_all_errors.extend(ftplib.all_errors)
@@ -39,7 +39,9 @@ try:
from http.client import ResponseNotReady as http_client_ResponseNotReady
from http.client import error as http_client_error
except ImportError as e:
- sys.stderr.write(colorize("BAD", "!!! CANNOT IMPORT HTTP.CLIENT: ") + str(e) + "\n")
+ sys.stderr.write(
+ colorize("BAD", "!!!! CANNOT IMPORT HTTP.CLIENT: ") + str(e) + "\n"
+ )
else:
_all_errors.append(http_client_error)
@@ -635,7 +637,7 @@ def dir_get_metadata(
except _all_errors as e:
# ftplib.FTP(host) can raise errors like this:
# socket.error: (111, 'Connection refused')
- sys.stderr.write("!!! %s\n" % (e,))
+ sys.stderr.write("!!!! %s\n" % (e,))
return {}
out = sys.stdout
@@ -672,8 +674,8 @@ def dir_get_metadata(
metadata[baseurl]["data"] = {}
if not os.access(cache_path, os.W_OK):
- sys.stderr.write(_("!!! Unable to write binary metadata to disk!\n"))
- sys.stderr.write(_("!!! Permission denied: '%s'\n") % cache_path)
+ sys.stderr.write(_("!!!! Unable to write binary metadata to disk!\n"))
+ sys.stderr.write(_("!!!! Permission denied: '%s'\n") % cache_path)
return metadata[baseurl]["data"]
import portage.exception
@@ -682,9 +684,9 @@ def dir_get_metadata(
filelist = dir_get_list(baseurl, conn)
except portage.exception.PortageException as e:
sys.stderr.write(
- _("!!! Error connecting to '%s'.\n") % _hide_url_passwd(baseurl)
+ _("!!!! Error connecting to '%s'.\n") % _hide_url_passwd(baseurl)
)
- sys.stderr.write("!!! %s\n" % str(e))
+ sys.stderr.write("!!!! %s\n" % str(e))
del e
return metadata[baseurl]["data"]
tbz2list = match_in_array(filelist, suffix=".tbz2")
@@ -728,7 +730,7 @@ def dir_get_metadata(
raise
except Exception as e:
mytempfile.close()
- sys.stderr.write(_("!!! Failed to use gzip: ") + str(e) + "\n")
+ sys.stderr.write(_("!!!! Failed to use gzip: ") + str(e) + "\n")
sys.stderr.flush()
mytempfile.close()
try:
@@ -744,9 +746,9 @@ def dir_get_metadata(
raise
except Exception as e:
sys.stderr.write(
- _("!!! Failed to read data from index: ") + str(mfile) + "\n"
+ _("!!!! Failed to read data from index: ") + str(mfile) + "\n"
)
- sys.stderr.write("!!! %s" % str(e))
+ sys.stderr.write("!!!! %s" % str(e))
sys.stderr.flush()
try:
metadatafile = open(
@@ -760,8 +762,8 @@ def dir_get_metadata(
except SystemExit as e:
raise
except Exception as e:
- sys.stderr.write(_("!!! Failed to write binary metadata to disk!\n"))
- sys.stderr.write("!!! %s\n" % str(e))
+ sys.stderr.write(_("!!!! Failed to write binary metadata to disk!\n"))
+ sys.stderr.write("!!!! %s\n" % str(e))
sys.stderr.flush()
break
# We may have metadata... now we run through the tbz2 list and check.
@@ -829,7 +831,7 @@ def dir_get_metadata(
metadata[baseurl]["data"][x] = make_metadata_dict(myid)
elif verbose:
sys.stderr.write(
- colorize("BAD", _("!!! Failed to retrieve metadata on: "))
+ colorize("BAD", _("!!!! Failed to retrieve metadata on: "))
+ str(x)
+ "\n"
)
@@ -871,8 +873,8 @@ def dir_get_metadata(
except SystemExit as e:
raise
except Exception as e:
- sys.stderr.write(_("!!! Failed to write binary metadata to disk!\n"))
- sys.stderr.write("!!! " + str(e) + "\n")
+ sys.stderr.write(_("!!!! Failed to write binary metadata to disk!\n"))
+ sys.stderr.write("!!!! " + str(e) + "\n")
sys.stderr.flush()
if not keepconnection:
diff --git a/lib/portage/locks.py b/lib/portage/locks.py
index 67541a84d..92a3030ea 100644
--- a/lib/portage/locks.py
+++ b/lib/portage/locks.py
@@ -343,7 +343,7 @@ def _lockfile_iteration(
% lockfilename
)
writemsg(
- "\n!!! %s: %s\n" % (context_desc, e), noiselevel=-1
+ "\n!!!! %s: %s\n" % (context_desc, e), noiselevel=-1
)
time.sleep(_HARDLINK_POLL_LATENCY)
diff --git a/lib/portage/mail.py b/lib/portage/mail.py
index aa2617b42..b2a647a76 100644
--- a/lib/portage/mail.py
+++ b/lib/portage/mail.py
@@ -102,7 +102,9 @@ def send_mail(mysettings, message):
mymailuser, mymailpasswd = myauthdata.split(":")
except ValueError:
print(
- _("!!! invalid SMTP AUTH configuration, trying unauthenticated ...")
+ _(
+ "!!!! invalid SMTP AUTH configuration, trying unauthenticated ..."
+ )
)
else:
myconndata = mymailuri
@@ -122,7 +124,7 @@ def send_mail(mysettings, message):
if fd.close() != None:
sys.stderr.write(
_(
- "!!! %s returned with a non-zero exit code. This generally indicates an error.\n"
+ "!!!! %s returned with a non-zero exit code. This generally indicates an error.\n"
)
% mymailhost
)
@@ -134,7 +136,7 @@ def send_mail(mysettings, message):
if not myconn.has_extn("STARTTLS"):
raise portage.exception.PortageException(
_(
- "!!! TLS support requested for logmail but not supported by server"
+ "!!!! TLS support requested for logmail but not supported by server"
)
)
myconn.starttls()
@@ -149,12 +151,12 @@ def send_mail(mysettings, message):
myconn.quit()
except smtplib.SMTPException as e:
raise portage.exception.PortageException(
- _("!!! An error occurred while trying to send logmail:\n") + str(e)
+ _("!!!! An error occurred while trying to send logmail:\n") + str(e)
)
except socket.error as e:
raise portage.exception.PortageException(
_(
- "!!! A network error occurred while trying to send logmail:\n%s\nSure you configured PORTAGE_ELOG_MAILURI correctly?"
+ "!!!! A network error occurred while trying to send logmail:\n%s\nSure you configured PORTAGE_ELOG_MAILURI correctly?"
)
% str(e)
)
diff --git a/lib/portage/manifest.py b/lib/portage/manifest.py
index 0b4fad76c..450f9e494 100644
--- a/lib/portage/manifest.py
+++ b/lib/portage/manifest.py
@@ -447,7 +447,7 @@ class Manifest:
# unless this repo is being prepared for distribution
# via rsync.
writemsg_level(
- "!!! utime('%s', (%s, %s)): %s\n"
+ "!!!! utime('%s', (%s, %s)): %s\n"
% (path, max_mtime, max_mtime, e),
level=logging.WARNING,
noiselevel=-1,
diff --git a/lib/portage/metadata.py b/lib/portage/metadata.py
index 0bd2bcce4..39940e27b 100644
--- a/lib/portage/metadata.py
+++ b/lib/portage/metadata.py
@@ -19,7 +19,7 @@ from portage.util import writemsg_level
def action_metadata(settings, portdb, myopts, porttrees=None):
if porttrees is None:
porttrees = portdb.porttrees
- portage.writemsg_stdout("\n>>> Updating Portage cache\n")
+ portage.writemsg_stdout("\n>>>> Updating Portage cache\n")
cachedir = os.path.normpath(settings.depcachedir)
if cachedir in [
"/",
@@ -38,12 +38,12 @@ def action_metadata(settings, portdb, myopts, porttrees=None):
"/var",
]:
print(
- "!!! PORTAGE_DEPCACHEDIR IS SET TO A PRIMARY "
+ "!!!! PORTAGE_DEPCACHEDIR IS SET TO A PRIMARY "
+ "ROOT DIRECTORY ON YOUR SYSTEM.",
file=sys.stderr,
)
print(
- "!!! This is ALMOST CERTAINLY NOT what you want: '%s'" % cachedir,
+ "!!!! This is ALMOST CERTAINLY NOT what you want: '%s'" % cachedir,
file=sys.stderr,
)
sys.exit(73)
diff --git a/lib/portage/news.py b/lib/portage/news.py
index ce61f8490..b60d06f13 100644
--- a/lib/portage/news.py
+++ b/lib/portage/news.py
@@ -155,7 +155,7 @@ class NewsManager:
itemid, encoding=_encodings["fs"], errors="replace"
)
writemsg_level(
- _("!!! Invalid encoding in news item name: '%s'\n") % itemid,
+ _("!!!! Invalid encoding in news item name: '%s'\n") % itemid,
level=logging.ERROR,
noiselevel=-1,
)
@@ -353,7 +353,9 @@ class NewsItem:
for lineno, line in invalids:
msg.append(_(" line %d: %s") % (lineno, line))
writemsg_level(
- "".join("!!! %s\n" % x for x in msg), level=logging.ERROR, noiselevel=-1
+ "".join("!!!! %s\n" % x for x in msg),
+ level=logging.ERROR,
+ noiselevel=-1,
)
self._parsed = True
diff --git a/lib/portage/package/ebuild/_config/LocationsManager.py b/lib/portage/package/ebuild/_config/LocationsManager.py
index d65aac609..23f87383e 100644
--- a/lib/portage/package/ebuild/_config/LocationsManager.py
+++ b/lib/portage/package/ebuild/_config/LocationsManager.py
@@ -133,7 +133,7 @@ class LocationsManager:
# that can be used for backward compatibility with
# old software.
writemsg(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Found 2 make.profile dirs: " "using '%s', ignoring '%s'")
% (self.profile_path, deprecated_profile_path),
noiselevel=-1,
@@ -162,10 +162,10 @@ class LocationsManager:
except ParseError as e:
if not portage._sync_mode:
writemsg(
- _("!!! Unable to parse profile: '%s'\n") % self.profile_path,
+ _("!!!! Unable to parse profile: '%s'\n") % self.profile_path,
noiselevel=-1,
)
- writemsg("!!! ParseError: %s\n" % str(e), noiselevel=-1)
+ writemsg("!!!! ParseError: %s\n" % str(e), noiselevel=-1)
self.profiles = []
self.profiles_complex = []
@@ -198,7 +198,7 @@ class LocationsManager:
def _check_var_directory(self, varname, var):
if not isdir_raise_eaccess(var):
writemsg(
- _("!!! Error: %s='%s' is not a directory. " "Please correct this.\n")
+ _("!!!! Error: %s='%s' is not a directory. " "Please correct this.\n")
% (varname, var),
noiselevel=-1,
)
@@ -392,7 +392,7 @@ class LocationsManager:
if self.sysroot != "/" and self.sysroot != self.target_root:
writemsg(
_(
- "!!! Error: SYSROOT (currently %s) must "
+ "!!!! Error: SYSROOT (currently %s) must "
"equal / or ROOT (currently %s).\n"
)
% (self.sysroot, self.target_root),
diff --git a/lib/portage/package/ebuild/_parallel_manifest/ManifestProcess.py b/lib/portage/package/ebuild/_parallel_manifest/ManifestProcess.py
index 7bf5dd141..bef21f22f 100644
--- a/lib/portage/package/ebuild/_parallel_manifest/ManifestProcess.py
+++ b/lib/portage/package/ebuild/_parallel_manifest/ManifestProcess.py
@@ -25,20 +25,20 @@ class ManifestProcess(ForkProcess):
mf.create(assumeDistHashesAlways=True)
except FileNotFound as e:
portage.writemsg(
- _("!!! File %s doesn't exist, can't update " "Manifest\n") % e,
+ _("!!!! File %s doesn't exist, can't update " "Manifest\n") % e,
noiselevel=-1,
)
return 1
except PortagePackageException as e:
- portage.writemsg(("!!! %s\n") % (e,), noiselevel=-1)
+ portage.writemsg(("!!!! %s\n") % (e,), noiselevel=-1)
return 1
try:
modified = mf.write(sign=False)
except PermissionDenied as e:
portage.writemsg(
- "!!! %s: %s\n"
+ "!!!! %s: %s\n"
% (
_("Permission Denied"),
e,
diff --git a/lib/portage/package/ebuild/_parallel_manifest/ManifestScheduler.py b/lib/portage/package/ebuild/_parallel_manifest/ManifestScheduler.py
index 4599e2d50..be4bd0523 100644
--- a/lib/portage/package/ebuild/_parallel_manifest/ManifestScheduler.py
+++ b/lib/portage/package/ebuild/_parallel_manifest/ManifestScheduler.py
@@ -63,7 +63,7 @@ class ManifestScheduler(AsyncScheduler):
disabled_repos.add(repo_config.name)
portage.writemsg(
_(
- ">>> Skipping creating Manifest for %s%s%s; "
+ ">>>> Skipping creating Manifest for %s%s%s; "
"repository is configured to not use them\n"
)
% (cp, _repo_separator, repo_config.name),
diff --git a/lib/portage/package/ebuild/_parallel_manifest/ManifestTask.py b/lib/portage/package/ebuild/_parallel_manifest/ManifestTask.py
index df279dab6..f439e155a 100644
--- a/lib/portage/package/ebuild/_parallel_manifest/ManifestTask.py
+++ b/lib/portage/package/ebuild/_parallel_manifest/ManifestTask.py
@@ -54,7 +54,7 @@ class ManifestTask(CompositeTask):
self.fetchlist_dict.result()
except InvalidDependString as e:
writemsg(
- _("!!! %s%s%s: SRC_URI: %s\n")
+ _("!!!! %s%s%s: SRC_URI: %s\n")
% (self.cp, _repo_separator, self.repo_config.name, e),
noiselevel=-1,
)
@@ -212,7 +212,9 @@ class ManifestTask(CompositeTask):
try:
os.rename(*rename_args)
except OSError as e:
- writemsg("!!! rename('%s', '%s'): %s\n" % rename_args + (e,), noiselevel=-1)
+ writemsg(
+ "!!!! rename('%s', '%s'): %s\n" % rename_args + (e,), noiselevel=-1
+ )
try:
os.unlink(self._manifest_path + ".asc")
except OSError:
diff --git a/lib/portage/package/ebuild/config.py b/lib/portage/package/ebuild/config.py
index b4d6862a3..d3e32108f 100644
--- a/lib/portage/package/ebuild/config.py
+++ b/lib/portage/package/ebuild/config.py
@@ -457,7 +457,7 @@ class config:
if make_conf_count == 2:
writemsg(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Found 2 make.conf files, using both '%s' and '%s'")
% tuple(make_conf_paths),
noiselevel=-1,
@@ -525,7 +525,7 @@ class config:
# that can be used for backward compatibility with
# old software.
writemsg(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Found obsolete make.globals file: "
"'%s', (using '%s' instead)"
@@ -687,7 +687,7 @@ class config:
new_ov.append(portage._shell_quote(ov))
else:
writemsg(
- _("!!! Invalid PORTDIR_OVERLAY" " (not a dir): '%s'\n")
+ _("!!!! Invalid PORTDIR_OVERLAY" " (not a dir): '%s'\n")
% ov,
noiselevel=-1,
)
@@ -1036,7 +1036,7 @@ class config:
# TODO: bail out?
writemsg(
(
- _("!!! package.provided not allowed in EAPI %s: ")
+ _("!!!! package.provided not allowed in EAPI %s: ")
% x.eapi
)
+ x.location
@@ -1151,7 +1151,7 @@ class config:
except ValueError:
writemsg(
_(
- "!!! %s='%s' is not a valid integer. "
+ "!!!! %s='%s' is not a valid integer. "
"Falling back to %s.\n"
)
% (var, self[var], default_val),
@@ -1294,10 +1294,10 @@ class config:
ensure_dirs(mydir, gid=gid, mode=mode, mask=modemask)
except PortageException as e:
writemsg(
- _("!!! Directory initialization failed: '%s'\n") % mydir,
+ _("!!!! Directory initialization failed: '%s'\n") % mydir,
noiselevel=-1,
)
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
@property
def _keywords_manager(self):
@@ -1390,7 +1390,7 @@ class config:
and group not in ("*", "~*", "**")
):
writemsg(
- _("!!! INVALID ACCEPT_KEYWORDS: %s\n") % str(group),
+ _("!!!! INVALID ACCEPT_KEYWORDS: %s\n") % str(group),
noiselevel=-1,
)
@@ -1428,26 +1428,26 @@ class config:
writemsg(
_(
- "\n\n!!! %s is not a symlink and will probably prevent most merges.\n"
+ "\n\n!!!! %s is not a symlink and will probably prevent most merges.\n"
)
% abs_profile_path,
noiselevel=-1,
)
writemsg(
- _("!!! It should point into a profile within %s/profiles/\n")
+ _("!!!! It should point into a profile within %s/profiles/\n")
% self["PORTDIR"]
)
writemsg(
_(
- "!!! (You can safely ignore this message when syncing. It's harmless.)\n\n\n"
+ "!!!! (You can safely ignore this message when syncing. It's harmless.)\n\n\n"
)
)
abs_user_virtuals = os.path.join(self["PORTAGE_CONFIGROOT"], USER_VIRTUALS_FILE)
if os.path.exists(abs_user_virtuals):
- writemsg("\n!!! /etc/portage/virtuals is deprecated in favor of\n")
- writemsg("!!! /etc/portage/profile/virtuals. Please move it to\n")
- writemsg("!!! this new location.\n\n")
+ writemsg("\n!!!! /etc/portage/virtuals is deprecated in favor of\n")
+ writemsg("!!!! /etc/portage/profile/virtuals. Please move it to\n")
+ writemsg("!!!! this new location.\n\n")
if not sandbox_capable and (
"sandbox" in self.features or "usersandbox" in self.features
@@ -1462,7 +1462,8 @@ class config:
# to the user.
writemsg(
colorize(
- "BAD", _("!!! Problem with sandbox" " binary. Disabling...\n\n")
+ "BAD",
+ _("!!!! Problem with sandbox" " binary. Disabling...\n\n"),
),
noiselevel=-1,
)
@@ -1470,7 +1471,7 @@ class config:
if "fakeroot" in self.features and not fakeroot_capable:
writemsg(
_(
- "!!! FEATURES=fakeroot is enabled, but the "
+ "!!!! FEATURES=fakeroot is enabled, but the "
"fakeroot binary is not installed.\n"
),
noiselevel=-1,
@@ -1479,7 +1480,7 @@ class config:
if "webrsync-gpg" in self.features:
writemsg(
_(
- "!!! FEATURES=webrsync-gpg is deprecated, see the make.conf(5) man page.\n"
+ "!!!! FEATURES=webrsync-gpg is deprecated, see the make.conf(5) man page.\n"
),
noiselevel=-1,
)
@@ -1490,7 +1491,7 @@ class config:
if "userpriv" in self.features:
writemsg(
_(
- "!!! FEATURES=userpriv is enabled, but "
+ "!!!! FEATURES=userpriv is enabled, but "
"os.setgroups is not available.\n"
),
noiselevel=-1,
@@ -1500,7 +1501,7 @@ class config:
if "userfetch" in self.features:
writemsg(
_(
- "!!! FEATURES=userfetch is enabled, but "
+ "!!!! FEATURES=userfetch is enabled, but "
"os.setgroups is not available.\n"
),
noiselevel=-1,
@@ -1509,7 +1510,7 @@ class config:
if warning_shown and platform.python_implementation() == "PyPy":
writemsg(
- _("!!! See https://bugs.pypy.org/issue833 for details.\n"),
+ _("!!!! See https://bugs.pypy.org/issue833 for details.\n"),
noiselevel=-1,
)
@@ -1519,7 +1520,7 @@ class config:
compression = _compressors[binpkg_compression]
except KeyError as e:
writemsg(
- "!!! BINPKG_COMPRESS contains invalid or "
+ "!!!! BINPKG_COMPRESS contains invalid or "
"unsupported compression method: %s" % e.args[0],
noiselevel=-1,
)
@@ -1530,7 +1531,7 @@ class config:
)[0]
except IndexError as e:
writemsg(
- "!!! BINPKG_COMPRESS contains invalid or "
+ "!!!! BINPKG_COMPRESS contains invalid or "
"unsupported compression method: %s" % e.args[0],
noiselevel=-1,
)
@@ -1538,7 +1539,7 @@ class config:
if portage.process.find_binary(compression_binary) is None:
missing_package = compression["package"]
writemsg(
- "!!! BINPKG_COMPRESS unsupported %s. "
+ "!!!! BINPKG_COMPRESS unsupported %s. "
"Missing package: %s"
% (binpkg_compression, missing_package),
noiselevel=-1,
@@ -2231,7 +2232,7 @@ class config:
)
if penvconfig is None:
writemsg(
- "!!! %s references non-existent file: %s\n"
+ "!!!! %s references non-existent file: %s\n"
% (os.path.join(abs_user_config, "package.env"), penvfile),
noiselevel=-1,
)
@@ -2239,7 +2240,7 @@ class config:
for k, v in penvconfig.items():
if k in protected_keys or k in non_user_variables:
writemsg(
- "!!! Illegal variable "
+ "!!!! Illegal variable "
+ "'%s' assigned in '%s'\n" % (k, penvfile),
noiselevel=-1,
)
@@ -2611,7 +2612,7 @@ class config:
self._accept_chost_re = re.compile(r"^%s$" % accept_chost[0])
except re.error as e:
writemsg(
- _("!!! Invalid ACCEPT_CHOSTS value: '%s': %s\n")
+ _("!!!! Invalid ACCEPT_CHOSTS value: '%s': %s\n")
% (accept_chost[0], e),
noiselevel=-1,
)
@@ -2623,7 +2624,7 @@ class config:
)
except re.error as e:
writemsg(
- _("!!! Invalid ACCEPT_CHOSTS value: '%s': %s\n")
+ _("!!!! Invalid ACCEPT_CHOSTS value: '%s': %s\n")
% (" ".join(accept_chost), e),
noiselevel=-1,
)
@@ -3236,7 +3237,7 @@ class config:
continue
if not isinstance(myvalue, str):
writemsg(
- _("!!! Non-string value in config: %s=%s\n") % (x, myvalue),
+ _("!!!! Non-string value in config: %s=%s\n") % (x, myvalue),
noiselevel=-1,
)
continue
@@ -3337,7 +3338,7 @@ class config:
mydict["LC_CTYPE"] = l
if check_locale(silent=True, env=mydict):
# TODO: output the following only once
- # writemsg(_("!!! LC_CTYPE unsupported, using %s instead\n")
+ # writemsg(_("!!!! LC_CTYPE unsupported, using %s instead\n")
# % mydict["LC_CTYPE"])
break
else:
@@ -3405,7 +3406,7 @@ class config:
else:
writemsg(
_(
- "!!! SELinux module not found. Please verify that it was installed.\n"
+ "!!!! SELinux module not found. Please verify that it was installed.\n"
),
noiselevel=-1,
)
diff --git a/lib/portage/package/ebuild/deprecated_profile_check.py b/lib/portage/package/ebuild/deprecated_profile_check.py
index 19bea1903..4d96e039a 100644
--- a/lib/portage/package/ebuild/deprecated_profile_check.py
+++ b/lib/portage/package/ebuild/deprecated_profile_check.py
@@ -51,18 +51,22 @@ def deprecated_profile_check(settings=None):
writemsg(
colorize(
"BAD",
- _("\n!!! Your current profile is " "deprecated and not supported anymore."),
+ _(
+ "\n!!!! Your current profile is "
+ "deprecated and not supported anymore."
+ ),
)
+ "\n",
noiselevel=-1,
)
writemsg(
- colorize("BAD", _("!!! Use eselect profile to update your " "profile.")) + "\n",
+ colorize("BAD", _("!!!! Use eselect profile to update your " "profile."))
+ + "\n",
noiselevel=-1,
)
if not dcontent:
writemsg(
- colorize("BAD", _("!!! Please refer to the " "Gentoo Upgrading Guide."))
+ colorize("BAD", _("!!!! Please refer to the " "Gentoo Upgrading Guide."))
+ "\n",
noiselevel=-1,
)
@@ -70,7 +74,7 @@ def deprecated_profile_check(settings=None):
newprofile = dcontent[0].rstrip("\n")
writemsg(
colorize(
- "BAD", _("!!! Please upgrade to the " "following profile if possible:")
+ "BAD", _("!!!! Please upgrade to the " "following profile if possible:")
)
+ "\n\n",
noiselevel=-1,
diff --git a/lib/portage/package/ebuild/digestcheck.py b/lib/portage/package/ebuild/digestcheck.py
index 3fe64550c..ebf7297fe 100644
--- a/lib/portage/package/ebuild/digestcheck.py
+++ b/lib/portage/package/ebuild/digestcheck.py
@@ -66,24 +66,24 @@ def digestcheck(myfiles, mysettings, strict=False, justmanifest=None, mf=None):
if mf.allow_missing:
continue
eout.eend(1)
- writemsg(_("\n!!! Missing digest for '%s'\n") % (f,), noiselevel=-1)
+ writemsg(_("\n!!!! Missing digest for '%s'\n") % (f,), noiselevel=-1)
return 0
mf.checkFileHashes(ftype, f, hash_filter=hash_filter)
eout.eend(0)
except FileNotFound as e:
eout.eend(1)
writemsg(
- _("\n!!! A file listed in the Manifest could not be found: %s\n") % str(e),
+ _("\n!!!! A file listed in the Manifest could not be found: %s\n") % str(e),
noiselevel=-1,
)
return 0
except DigestException as e:
eout.eend(1)
- writemsg(_("\n!!! Digest verification failed:\n"), noiselevel=-1)
- writemsg("!!! %s\n" % e.value[0], noiselevel=-1)
- writemsg(_("!!! Reason: %s\n") % e.value[1], noiselevel=-1)
- writemsg(_("!!! Got: %s\n") % e.value[2], noiselevel=-1)
- writemsg(_("!!! Expected: %s\n") % e.value[3], noiselevel=-1)
+ writemsg(_("\n!!!! Digest verification failed:\n"), noiselevel=-1)
+ writemsg("!!!! %s\n" % e.value[0], noiselevel=-1)
+ writemsg(_("!!!! Reason: %s\n") % e.value[1], noiselevel=-1)
+ writemsg(_("!!!! Got: %s\n") % e.value[2], noiselevel=-1)
+ writemsg(_("!!!! Expected: %s\n") % e.value[3], noiselevel=-1)
return 0
if mf.thin or mf.allow_missing:
# In this case we ignore any missing digests that
@@ -96,7 +96,7 @@ def digestcheck(myfiles, mysettings, strict=False, justmanifest=None, mf=None):
pf = f[:-7]
if pf is not None and not mf.hasFile("EBUILD", f):
writemsg(
- _("!!! A file is not listed in the Manifest: '%s'\n")
+ _("!!!! A file is not listed in the Manifest: '%s'\n")
% os.path.join(pkgdir, f),
noiselevel=-1,
)
@@ -114,7 +114,7 @@ def digestcheck(myfiles, mysettings, strict=False, justmanifest=None, mf=None):
parent, encoding=_encodings["fs"], errors="replace"
)
writemsg(
- _("!!! Path contains invalid " "character(s) for encoding '%s': '%s'")
+ _("!!!! Path contains invalid " "character(s) for encoding '%s': '%s'")
% (_encodings["fs"], parent),
noiselevel=-1,
)
@@ -129,7 +129,7 @@ def digestcheck(myfiles, mysettings, strict=False, justmanifest=None, mf=None):
d = _unicode_decode(d, encoding=_encodings["fs"], errors="replace")
writemsg(
_(
- "!!! Path contains invalid "
+ "!!!! Path contains invalid "
"character(s) for encoding '%s': '%s'"
)
% (_encodings["fs"], os.path.join(parent, d)),
@@ -151,7 +151,7 @@ def digestcheck(myfiles, mysettings, strict=False, justmanifest=None, mf=None):
f = os.path.join(parent, f)[len(filesdir) + 1 :]
writemsg(
_(
- "!!! File name contains invalid "
+ "!!!! File name contains invalid "
"character(s) for encoding '%s': '%s'"
)
% (_encodings["fs"], f),
@@ -166,7 +166,7 @@ def digestcheck(myfiles, mysettings, strict=False, justmanifest=None, mf=None):
file_type = mf.findFile(f)
if file_type != "AUX" and not f.startswith("digest-"):
writemsg(
- _("!!! A file is not listed in the Manifest: '%s'\n")
+ _("!!!! A file is not listed in the Manifest: '%s'\n")
% os.path.join(filesdir, f),
noiselevel=-1,
)
diff --git a/lib/portage/package/ebuild/digestgen.py b/lib/portage/package/ebuild/digestgen.py
index 3a3c92a3a..006aa1cc6 100644
--- a/lib/portage/package/ebuild/digestgen.py
+++ b/lib/portage/package/ebuild/digestgen.py
@@ -56,7 +56,7 @@ def digestgen(myarchives=None, mysettings=None, myportdb=None):
for myfile in fetchlist_dict[cpv]:
distfiles_map.setdefault(myfile, []).append(cpv)
except InvalidDependString as e:
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
del e
return 0
mytree = os.path.dirname(os.path.dirname(mysettings["O"]))
@@ -77,7 +77,7 @@ def digestgen(myarchives=None, mysettings=None, myportdb=None):
if not mf.allow_create:
writemsg_stdout(
_(
- ">>> Skipping creating Manifest for %s; "
+ ">>>> Skipping creating Manifest for %s; "
"repository is configured to not use them\n"
)
% mysettings["O"]
@@ -162,7 +162,7 @@ def digestgen(myarchives=None, mysettings=None, myportdb=None):
myebuild = os.path.join(mysettings["O"], catsplit(cpv)[1] + ".ebuild")
spawn_nofetch(myportdb, myebuild)
writemsg(
- _("!!! Fetch failed for %s, can't update Manifest\n") % myfile,
+ _("!!!! Fetch failed for %s, can't update Manifest\n") % myfile,
noiselevel=-1,
)
if myfile in dist_hashes and st is not None and st.st_size > 0:
@@ -176,17 +176,17 @@ def digestgen(myarchives=None, mysettings=None, myportdb=None):
writemsg(
(
_(
- "!!! If you would like to forcefully replace the existing Manifest entry\n"
- "!!! for %s, use the following command:\n"
+ "!!!! If you would like to forcefully replace the existing Manifest entry\n"
+ "!!!! for %s, use the following command:\n"
)
% myfile
)
- + "!!! %s\n" % cmd,
+ + "!!!! %s\n" % cmd,
noiselevel=-1,
)
return 0
- writemsg_stdout(_(">>> Creating Manifest for %s\n") % mysettings["O"])
+ writemsg_stdout(_(">>>> Creating Manifest for %s\n") % mysettings["O"])
try:
mf.create(
assumeDistHashesSometimes=True,
@@ -194,17 +194,17 @@ def digestgen(myarchives=None, mysettings=None, myportdb=None):
)
except FileNotFound as e:
writemsg(
- _("!!! File %s doesn't exist, can't update Manifest\n") % e,
+ _("!!!! File %s doesn't exist, can't update Manifest\n") % e,
noiselevel=-1,
)
return 0
except PortagePackageException as e:
- writemsg(("!!! %s\n") % (e,), noiselevel=-1)
+ writemsg(("!!!! %s\n") % (e,), noiselevel=-1)
return 0
try:
mf.write(sign=False)
except PermissionDenied as e:
- writemsg(_("!!! Permission Denied: %s\n") % (e,), noiselevel=-1)
+ writemsg(_("!!!! Permission Denied: %s\n") % (e,), noiselevel=-1)
return 0
if "assume-digests" not in mysettings.features:
distlist = list(mf.fhashdict.get("DIST", {}))
diff --git a/lib/portage/package/ebuild/doebuild.py b/lib/portage/package/ebuild/doebuild.py
index 9650a8444..d33f3e622 100644
--- a/lib/portage/package/ebuild/doebuild.py
+++ b/lib/portage/package/ebuild/doebuild.py
@@ -852,12 +852,12 @@ def doebuild(
if mydo not in validcommands:
validcommands.sort()
writemsg(
- "!!! doebuild: '%s' is not one of the following valid commands:" % mydo,
+ "!!!! doebuild: '%s' is not one of the following valid commands:" % mydo,
noiselevel=-1,
)
for vcount in range(len(validcommands)):
if vcount % 6 == 0:
- writemsg("\n!!! ", noiselevel=-1)
+ writemsg("\n!!!! ", noiselevel=-1)
writemsg(validcommands[vcount].ljust(11), noiselevel=-1)
writemsg("\n", noiselevel=-1)
return 1
@@ -880,7 +880,7 @@ def doebuild(
if mydo not in clean_phases and not os.path.exists(myebuild):
writemsg(
- "!!! doebuild: %s not found for %s\n" % (myebuild, mydo), noiselevel=-1
+ "!!!! doebuild: %s not found for %s\n" % (myebuild, mydo), noiselevel=-1
)
return 1
@@ -1035,7 +1035,7 @@ def doebuild(
if returnpid:
writemsg(
- "!!! doebuild: %s\n"
+ "!!!! doebuild: %s\n"
% _("returnpid is not supported for phase '%s'\n" % mydo),
noiselevel=-1,
)
@@ -1071,7 +1071,7 @@ def doebuild(
if mydo == "unmerge":
if returnpid:
writemsg(
- "!!! doebuild: %s\n"
+ "!!!! doebuild: %s\n"
% _("returnpid is not supported for phase '%s'\n" % mydo),
noiselevel=-1,
)
@@ -1116,12 +1116,12 @@ def doebuild(
os.path.join(mysettings["PORTAGE_BUILDDIR"], ".unpacked")
):
writemsg_stdout(
- _(">>> Not marked as unpacked; recreating WORKDIR...\n")
+ _(">>>> Not marked as unpacked; recreating WORKDIR...\n")
)
newstuff = True
else:
for x in alist:
- writemsg_stdout(">>> Checking %s's mtime...\n" % x)
+ writemsg_stdout(">>>> Checking %s's mtime...\n" % x)
try:
x_st = os.stat(os.path.join(mysettings["DISTDIR"], x))
except OSError:
@@ -1131,7 +1131,7 @@ def doebuild(
if x_st is not None and x_st.st_mtime > workdir_st.st_mtime:
writemsg_stdout(
_(
- ">>> Timestamp of "
+ ">>>> Timestamp of "
"%s has changed; recreating WORKDIR...\n"
)
% x
@@ -1159,7 +1159,7 @@ def doebuild(
)
builddir_lock = None
else:
- writemsg_stdout(_(">>> WORKDIR is up-to-date, keeping...\n"))
+ writemsg_stdout(_(">>>> WORKDIR is up-to-date, keeping...\n"))
unpacked = True
# Build directory creation isn't required for any of these.
@@ -1293,8 +1293,8 @@ def doebuild(
alist = _parse_uri_map(mysettings.mycpv, metadata, use=use)
aalist = _parse_uri_map(mysettings.mycpv, metadata)
except InvalidDependString as e:
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
- writemsg(_("!!! Invalid SRC_URI for '%s'.\n") % mycpv, noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
+ writemsg(_("!!!! Invalid SRC_URI for '%s'.\n") % mycpv, noiselevel=-1)
del e
return 1
@@ -1383,7 +1383,7 @@ def doebuild(
_doebuild_manifest_cache = None
digestgen(mysettings=mysettings, myportdb=mydbapi)
except PermissionDenied as e:
- writemsg(_("!!! Permission Denied: %s\n") % (e,), noiselevel=-1)
+ writemsg(_("!!!! Permission Denied: %s\n") % (e,), noiselevel=-1)
if mydo in ("digest", "manifest"):
return 1
@@ -1491,7 +1491,7 @@ def doebuild(
elif returnpid:
writemsg(
- "!!! doebuild: %s\n"
+ "!!!! doebuild: %s\n"
% _("returnpid is not supported for phase '%s'\n" % mydo),
noiselevel=-1,
)
@@ -1506,7 +1506,7 @@ def doebuild(
os.path.join(mysettings["PORTAGE_BUILDDIR"], ".installed")
):
writemsg(
- _("!!! mydo=qmerge, but the install phase has not been run\n"),
+ _("!!!! mydo=qmerge, but the install phase has not been run\n"),
noiselevel=-1,
)
return 1
@@ -1563,7 +1563,7 @@ def doebuild(
)
else:
- writemsg_stdout(_("!!! Unknown mydo: %s\n") % mydo, noiselevel=-1)
+ writemsg_stdout(_("!!!! Unknown mydo: %s\n") % mydo, noiselevel=-1)
return 1
return retval
@@ -2176,13 +2176,13 @@ def spawnebuild(
if os.path.exists(check_file):
writemsg_stdout(
_(
- ">>> It appears that "
+ ">>>> It appears that "
"'%(action)s' has already executed for '%(pkg)s'; skipping.\n"
)
% {"action": mydo, "pkg": mysettings["PF"]}
)
writemsg_stdout(
- _(">>> Remove '%(file)s' to force %(action)s.\n")
+ _(">>>> Remove '%(file)s' to force %(action)s.\n")
% {"file": check_file, "action": mydo}
)
return os.EX_OK
@@ -2277,7 +2277,7 @@ def _check_build_log(mysettings, out=None):
)
command_not_found_exclude_re = re.compile(r"/configure: line ")
helper_missing_file = []
- helper_missing_file_re = re.compile(r"^!!! (do|new).*: .* does not exist$")
+ helper_missing_file_re = re.compile(r"^!!!! (do|new).*: .* does not exist$")
configure_opts_warn = []
configure_opts_warn_re = re.compile(
diff --git a/lib/portage/package/ebuild/fetch.py b/lib/portage/package/ebuild/fetch.py
index 8c64362c2..ef47c4115 100644
--- a/lib/portage/package/ebuild/fetch.py
+++ b/lib/portage/package/ebuild/fetch.py
@@ -330,11 +330,11 @@ def _check_digests(filename, digests, show_errors=1):
if not verified_ok:
if show_errors:
writemsg(
- _("!!! Previously fetched" " file: '%s'\n") % filename, noiselevel=-1
+ _("!!!! Previously fetched" " file: '%s'\n") % filename, noiselevel=-1
)
- writemsg(_("!!! Reason: %s\n") % reason[0], noiselevel=-1)
+ writemsg(_("!!!! Reason: %s\n") % reason[0], noiselevel=-1)
writemsg(
- _("!!! Got: %s\n" "!!! Expected: %s\n") % (reason[1], reason[2]),
+ _("!!!! Got: %s\n" "!!! Expected: %s\n") % (reason[1], reason[2]),
noiselevel=-1,
)
return False
@@ -815,7 +815,7 @@ def fetch(
# XXX: This is not a good thing, and is temporary at best.
print(
_(
- '>>> "mirror" mode desired and "mirror" restriction found; skipping fetch.'
+ '>>>> "mirror" mode desired and "mirror" restriction found; skipping fetch.'
)
)
return 1
@@ -834,14 +834,14 @@ def fetch(
except (ValueError, OverflowError):
writemsg(
_(
- "!!! Variable PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS"
+ "!!!! Variable PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS"
" contains non-integer value: '%s'\n"
)
% mysettings["PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS"],
noiselevel=-1,
)
writemsg(
- _("!!! Using PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS " "default value: %s\n")
+ _("!!!! Using PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS " "default value: %s\n")
% checksum_failure_max_tries,
noiselevel=-1,
)
@@ -849,14 +849,14 @@ def fetch(
if v < 1:
writemsg(
_(
- "!!! Variable PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS"
+ "!!!! Variable PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS"
" contains value less than 1: '%s'\n"
)
% v,
noiselevel=-1,
)
writemsg(
- _("!!! Using PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS " "default value: %s\n")
+ _("!!!! Using PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS " "default value: %s\n")
% checksum_failure_max_tries,
noiselevel=-1,
)
@@ -875,14 +875,14 @@ def fetch(
if match is None or (match.group(2).upper() not in _size_suffix_map):
writemsg(
_(
- "!!! Variable PORTAGE_FETCH_RESUME_MIN_SIZE"
+ "!!!! Variable PORTAGE_FETCH_RESUME_MIN_SIZE"
" contains an unrecognized format: '%s'\n"
)
% mysettings["PORTAGE_FETCH_RESUME_MIN_SIZE"],
noiselevel=-1,
)
writemsg(
- _("!!! Using PORTAGE_FETCH_RESUME_MIN_SIZE " "default value: %s\n")
+ _("!!!! Using PORTAGE_FETCH_RESUME_MIN_SIZE " "default value: %s\n")
% fetch_resume_size_default,
noiselevel=-1,
)
@@ -929,7 +929,7 @@ def fetch(
colorize(
"BAD",
_(
- "!!! For fetching to a read-only filesystem, "
+ "!!!! For fetching to a read-only filesystem, "
"locking should be turned off.\n"
),
),
@@ -937,7 +937,7 @@ def fetch(
)
writemsg(
_(
- "!!! This can be done by adding -distlocks to "
+ "!!!! This can be done by adding -distlocks to "
"FEATURES in /etc/portage/make.conf\n"
),
noiselevel=-1,
@@ -1089,7 +1089,7 @@ def fetch(
mirrorname not in custommirrors
and mirrorname not in thirdpartymirrors
):
- writemsg(_("!!! No known mirror by the name: %s\n") % (mirrorname))
+ writemsg(_("!!!! No known mirror by the name: %s\n") % (mirrorname))
else:
writemsg(_("Invalid mirror definition in SRC_URI:\n"), noiselevel=-1)
writemsg(" %s\n" % (myuri), noiselevel=-1)
@@ -1131,17 +1131,17 @@ def fetch(
_ensure_distdir(mysettings, mysettings["DISTDIR"])
except PortageException as e:
if not os.path.isdir(mysettings["DISTDIR"]):
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
writemsg(
- _("!!! Directory Not Found: DISTDIR='%s'\n")
+ _("!!!! Directory Not Found: DISTDIR='%s'\n")
% mysettings["DISTDIR"],
noiselevel=-1,
)
- writemsg(_("!!! Fetching will fail!\n"), noiselevel=-1)
+ writemsg(_("!!!! Fetching will fail!\n"), noiselevel=-1)
if can_fetch and not fetch_to_ro and not os.access(mysettings["DISTDIR"], os.W_OK):
writemsg(
- _("!!! No write access to '%s'\n") % mysettings["DISTDIR"], noiselevel=-1
+ _("!!!! No write access to '%s'\n") % mysettings["DISTDIR"], noiselevel=-1
)
can_fetch = False
@@ -1175,11 +1175,11 @@ def fetch(
expected,
)
writemsg(
- _("!!! Fetched file: %s VERIFY FAILED!\n") % myfile, noiselevel=-1
+ _("!!!! Fetched file: %s VERIFY FAILED!\n") % myfile, noiselevel=-1
)
- writemsg(_("!!! Reason: %s\n") % reason[0], noiselevel=-1)
+ writemsg(_("!!!! Reason: %s\n") % reason[0], noiselevel=-1)
writemsg(
- _("!!! Got: %s\n!!! Expected: %s\n") % (reason[1], reason[2]),
+ _("!!!! Got: %s\n!!! Expected: %s\n") % (reason[1], reason[2]),
noiselevel=-1,
)
@@ -1217,7 +1217,7 @@ def fetch(
vfs_stat = os.statvfs(mysettings["DISTDIR"])
except OSError as e:
writemsg_level(
- "!!! statvfs('%s'): %s\n" % (mysettings["DISTDIR"], e),
+ "!!!! statvfs('%s'): %s\n" % (mysettings["DISTDIR"], e),
noiselevel=-1,
level=logging.ERROR,
)
@@ -1258,7 +1258,7 @@ def fetch(
except TryAgain:
writemsg(
_(
- ">>> File '%s' is already locked by "
+ ">>>> File '%s' is already locked by "
"another fetcher. Continuing...\n"
)
% myfile,
@@ -1289,7 +1289,7 @@ def fetch(
except PortageException as e:
if not os.access(myfile_path, os.R_OK):
writemsg(
- _("!!! Failed to adjust permissions:" " %s\n")
+ _("!!!! Failed to adjust permissions:" " %s\n")
% str(e),
noiselevel=-1,
)
@@ -1310,9 +1310,9 @@ def fetch(
if stat.S_ISDIR(mystat.st_mode):
writemsg_level(
_(
- "!!! Unable to fetch file since "
+ "!!!! Unable to fetch file since "
"a directory is in the way: \n"
- "!!! %s\n"
+ "!!!! %s\n"
)
% myfile_path,
level=logging.ERROR,
@@ -1361,7 +1361,7 @@ def fetch(
# it instead of deleting it.
writemsg(
_(
- ">>> Renaming distfile with size "
+ ">>>> Renaming distfile with size "
"%d (smaller than "
"PORTAGE_FETCH_RESU"
"ME_MIN_SIZE)\n"
@@ -1414,7 +1414,7 @@ def fetch(
# the file is not already fetched
if not has_space:
writemsg(
- _("!!! Insufficient space to store %s in %s\n")
+ _("!!!! Insufficient space to store %s in %s\n")
% (myfile, mysettings["DISTDIR"]),
noiselevel=-1,
)
@@ -1422,7 +1422,7 @@ def fetch(
if has_space_superuser:
writemsg(
_(
- "!!! Insufficient privileges to use "
+ "!!!! Insufficient privileges to use "
"remaining space.\n"
),
noiselevel=-1,
@@ -1430,9 +1430,9 @@ def fetch(
if userfetch:
writemsg(
_(
- '!!! You may set FEATURES="-userfetch"'
+ '!!!! You may set FEATURES="-userfetch"'
" in /etc/portage/make.conf in order to fetch with\n"
- "!!! superuser privileges.\n"
+ "!!!! superuser privileges.\n"
),
noiselevel=-1,
)
@@ -1471,7 +1471,7 @@ def fetch(
except PortageException as e:
if not os.access(download_path, os.R_OK):
writemsg(
- _("!!! Failed to adjust permissions:" " %s\n")
+ _("!!!! Failed to adjust permissions:" " %s\n")
% (e,),
noiselevel=-1,
)
@@ -1512,15 +1512,15 @@ def fetch(
verified_ok, reason = verify_all(download_path, digests)
if not verified_ok:
writemsg(
- _("!!! Previously fetched" " file: '%s'\n")
+ _("!!!! Previously fetched" " file: '%s'\n")
% myfile,
noiselevel=-1,
)
writemsg(
- _("!!! Reason: %s\n") % reason[0], noiselevel=-1
+ _("!!!! Reason: %s\n") % reason[0], noiselevel=-1
)
writemsg(
- _("!!! Got: %s\n" "!!! Expected: %s\n")
+ _("!!!! Got: %s\n" "!!! Expected: %s\n")
% (reason[1], reason[2]),
noiselevel=-1,
)
@@ -1594,8 +1594,8 @@ def fetch(
if fetchcommand is None:
writemsg_level(
_(
- "!!! %s is unset. It should "
- "have been defined in\n!!! %s/make.globals.\n"
+ "!!!! %s is unset. It should "
+ "have been defined in\n!!!! %s/make.globals.\n"
)
% (fetchcommand_var, global_config_path),
level=logging.ERROR,
@@ -1605,7 +1605,7 @@ def fetch(
if "${FILE}" not in fetchcommand:
writemsg_level(
_(
- "!!! %s does not contain the required ${FILE}"
+ "!!!! %s does not contain the required ${FILE}"
" parameter.\n"
)
% fetchcommand_var,
@@ -1622,8 +1622,8 @@ def fetch(
if resumecommand is None:
writemsg_level(
_(
- "!!! %s is unset. It should "
- "have been defined in\n!!! %s/make.globals.\n"
+ "!!!! %s is unset. It should "
+ "have been defined in\n!!!! %s/make.globals.\n"
)
% (resumecommand_var, global_config_path),
level=logging.ERROR,
@@ -1633,7 +1633,7 @@ def fetch(
if "${FILE}" not in resumecommand:
writemsg_level(
_(
- "!!! %s does not contain the required ${FILE}"
+ "!!!! %s does not contain the required ${FILE}"
" parameter.\n"
)
% resumecommand_var,
@@ -1645,8 +1645,8 @@ def fetch(
if missing_file_param:
writemsg_level(
_(
- "!!! Refer to the make.conf(5) man page for "
- "information about how to\n!!! correctly specify "
+ "!!!! Refer to the make.conf(5) man page for "
+ "information about how to\n!!!! correctly specify "
"FETCHCOMMAND and RESUMECOMMAND.\n"
),
level=logging.ERROR,
@@ -1667,14 +1667,14 @@ def fetch(
if mysize == 0:
writemsg(
- _("!!! File %s isn't fetched but unable to get it.\n")
+ _("!!!! File %s isn't fetched but unable to get it.\n")
% myfile,
noiselevel=-1,
)
elif size is None or size > mysize:
writemsg(
_(
- "!!! File %s isn't fully fetched, but unable to complete it\n"
+ "!!!! File %s isn't fully fetched, but unable to complete it\n"
)
% myfile,
noiselevel=-1,
@@ -1682,7 +1682,7 @@ def fetch(
else:
writemsg(
_(
- "!!! File %s is incorrect size, "
+ "!!!! File %s is incorrect size, "
"but unable to retry.\n"
)
% myfile,
@@ -1705,7 +1705,7 @@ def fetch(
if distdir_writable and mystat.st_size < fetch_resume_size:
writemsg(
_(
- ">>> Deleting distfile with size "
+ ">>>> Deleting distfile with size "
"%d (smaller than "
"PORTAGE_FETCH_RESU"
"ME_MIN_SIZE)\n"
@@ -1721,14 +1721,16 @@ def fetch(
fetched = 0
if fetched == 1:
# resume mode:
- writemsg(_(">>> Resuming download...\n"))
+ writemsg(_(">>>> Resuming download...\n"))
locfetch = resumecommand
command_var = resumecommand_var
else:
# normal mode:
locfetch = fetchcommand
command_var = fetchcommand_var
- writemsg_stdout(_(">>> Downloading '%s'\n") % _hide_url_passwd(loc))
+ writemsg_stdout(
+ _(">>>> Downloading '%s'\n") % _hide_url_passwd(loc)
+ )
variables = {"URI": loc, "FILE": os.path.basename(download_path)}
try:
@@ -1765,7 +1767,7 @@ def fetch(
except PortageException as e:
if not os.access(download_path, os.R_OK):
writemsg(
- _("!!! Failed to adjust permissions:" " %s\n")
+ _("!!!! Failed to adjust permissions:" " %s\n")
% str(e),
noiselevel=-1,
)
@@ -1802,8 +1804,8 @@ def fetch(
# instead have -O.
writemsg_level(
_(
- "!!! The command specified in the "
- "%s variable appears to have\n!!! "
+ "!!!! The command specified in the "
+ "%s variable appears to have\n!!!! "
"created a directory instead of a "
"normal file.\n"
)
@@ -1813,9 +1815,9 @@ def fetch(
)
writemsg_level(
_(
- "!!! Refer to the make.conf(5) "
+ "!!!! Refer to the make.conf(5) "
"man page for information about how "
- "to\n!!! correctly specify "
+ "to\n!!!! correctly specify "
"FETCHCOMMAND and RESUMECOMMAND.\n"
),
level=logging.ERROR,
@@ -1864,7 +1866,7 @@ def fetch(
os.unlink(download_path)
writemsg(
_(
- ">>> Deleting invalid distfile. (Improper 404 redirect from server.)\n"
+ ">>>> Deleting invalid distfile. (Improper 404 redirect from server.)\n"
)
)
fetched = 0
@@ -1886,15 +1888,16 @@ def fetch(
verified_ok, reason = verify_all(download_path, digests)
if not verified_ok:
writemsg(
- _("!!! Fetched file: %s VERIFY FAILED!\n")
+ _("!!!! Fetched file: %s VERIFY FAILED!\n")
% myfile,
noiselevel=-1,
)
writemsg(
- _("!!! Reason: %s\n") % reason[0], noiselevel=-1
+ _("!!!! Reason: %s\n") % reason[0],
+ noiselevel=-1,
)
writemsg(
- _("!!! Got: %s\n!!! Expected: %s\n")
+ _("!!!! Got: %s\n!!! Expected: %s\n")
% (reason[1], reason[2]),
noiselevel=-1,
)
@@ -1976,11 +1979,11 @@ def fetch(
if restrict_fetch and not restrict_fetch_msg:
restrict_fetch_msg = True
msg = _(
- "\n!!! %s/%s"
+ "\n!!!! %s/%s"
" has fetch restriction turned on.\n"
- "!!! This probably means that this "
+ "!!!! This probably means that this "
"ebuild's files must be downloaded\n"
- "!!! manually. See the comments in"
+ "!!!! manually. See the comments in"
" the ebuild for more information.\n\n"
) % (mysettings["CATEGORY"], mysettings["PF"])
writemsg_level(msg, level=logging.ERROR, noiselevel=-1)
@@ -1995,7 +1998,8 @@ def fetch(
)
else:
writemsg(
- _("!!! Couldn't download '%s'. Aborting.\n") % myfile, noiselevel=-1
+ _("!!!! Couldn't download '%s'. Aborting.\n") % myfile,
+ noiselevel=-1,
)
if listonly:
diff --git a/lib/portage/package/ebuild/prepare_build_dirs.py b/lib/portage/package/ebuild/prepare_build_dirs.py
index 41de1a3a9..2954accff 100644
--- a/lib/portage/package/ebuild/prepare_build_dirs.py
+++ b/lib/portage/package/ebuild/prepare_build_dirs.py
@@ -279,19 +279,19 @@ def _prepare_features_dirs(mysettings):
except DirectoryNotFound as e:
failure = True
writemsg(
- _("\n!!! Directory does not exist: '%s'\n") % (e,), noiselevel=-1
+ _("\n!!!! Directory does not exist: '%s'\n") % (e,), noiselevel=-1
)
- writemsg(_("!!! Disabled FEATURES='%s'\n") % myfeature, noiselevel=-1)
+ writemsg(_("!!!! Disabled FEATURES='%s'\n") % myfeature, noiselevel=-1)
except PortageException as e:
failure = True
- writemsg("\n!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("\n!!!! %s\n" % str(e), noiselevel=-1)
writemsg(
- _("!!! Failed resetting perms on %s='%s'\n")
+ _("!!!! Failed resetting perms on %s='%s'\n")
% (kwargs["basedir_var"], basedir),
noiselevel=-1,
)
- writemsg(_("!!! Disabled FEATURES='%s'\n") % myfeature, noiselevel=-1)
+ writemsg(_("!!!! Disabled FEATURES='%s'\n") % myfeature, noiselevel=-1)
if failure:
mysettings.features.remove(myfeature)
@@ -314,13 +314,13 @@ def _prepare_workdir(mysettings):
workdir_mode = parsed_mode
except KeyError as e:
writemsg(
- _("!!! PORTAGE_WORKDIR_MODE is unset, using %s.\n") % oct(workdir_mode)
+ _("!!!! PORTAGE_WORKDIR_MODE is unset, using %s.\n") % oct(workdir_mode)
)
except ValueError as e:
if len(str(e)) > 0:
writemsg("%s\n" % e)
writemsg(
- _("!!! Unable to parse PORTAGE_WORKDIR_MODE='%s', using %s.\n")
+ _("!!!! Unable to parse PORTAGE_WORKDIR_MODE='%s', using %s.\n")
% (mysettings["PORTAGE_WORKDIR_MODE"], oct(workdir_mode))
)
mysettings["PORTAGE_WORKDIR_MODE"] = oct(workdir_mode).replace("o", "")
@@ -356,13 +356,13 @@ def _prepare_workdir(mysettings):
mode=0o2770,
)
except PortageException as e:
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
writemsg(
- _("!!! Permission issues with PORTAGE_LOGDIR='%s'\n")
+ _("!!!! Permission issues with PORTAGE_LOGDIR='%s'\n")
% mysettings["PORTAGE_LOGDIR"],
noiselevel=-1,
)
- writemsg(_("!!! Disabling logging.\n"), noiselevel=-1)
+ writemsg(_("!!!! Disabling logging.\n"), noiselevel=-1)
while "PORTAGE_LOGDIR" in mysettings:
del mysettings["PORTAGE_LOGDIR"]
@@ -409,13 +409,14 @@ def _prepare_workdir(mysettings):
try:
_ensure_log_subdirs(logdir, log_subdir)
except PortageException as e:
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
if os.access(log_subdir, os.W_OK):
logdir_subdir_ok = True
else:
writemsg(
- "!!! %s: %s\n" % (_("Permission Denied"), log_subdir), noiselevel=-1
+ "!!!! %s: %s\n" % (_("Permission Denied"), log_subdir),
+ noiselevel=-1,
)
tmpdir_log_path = os.path.join(mysettings["T"], "build.log%s" % compress_log_ext)
diff --git a/lib/portage/repository/config.py b/lib/portage/repository/config.py
index 0b591d94f..0f9ffa5de 100644
--- a/lib/portage/repository/config.py
+++ b/lib/portage/repository/config.py
@@ -291,7 +291,8 @@ class RepoConfig:
v = int(v)
except (OverflowError, ValueError):
writemsg(
- _("!!! Invalid %s setting for repo" " %s: %s\n") % (k, name, v),
+ _("!!!! Invalid %s setting for repo" " %s: %s\n")
+ % (k, name, v),
noiselevel=-1,
)
v = None
@@ -621,7 +622,7 @@ class RepoConfigLoader:
# File "/usr/lib/python3.2/shlex.py", line 168, in read_token
# raise ValueError("No closing quotation")
writemsg(
- _("!!! Invalid PORTDIR_OVERLAY:" " %s: %s\n") % (e, portdir_overlay),
+ _("!!!! Invalid PORTDIR_OVERLAY:" " %s: %s\n") % (e, portdir_overlay),
noiselevel=-1,
)
port_ov = []
@@ -724,7 +725,7 @@ class RepoConfigLoader:
if not portage._sync_mode:
writemsg(
- _("!!! Invalid PORTDIR_OVERLAY (not a dir): '%s'\n") % ov,
+ _("!!!! Invalid PORTDIR_OVERLAY (not a dir): '%s'\n") % ov,
noiselevel=-1,
)
@@ -799,7 +800,7 @@ class RepoConfigLoader:
self._parse(paths, prepos, settings.local_config, default_opts)
except ConfigParserError as e:
writemsg(
- _("!!! Error while reading repo config file: %s\n") % e, noiselevel=-1
+ _("!!!! Error while reading repo config file: %s\n") % e, noiselevel=-1
)
# The configparser state is unreliable (prone to quirky
# exceptions) after it has thrown an error, so use empty
@@ -850,7 +851,7 @@ class RepoConfigLoader:
# Skip this warning for repoman (bug #474578).
if settings.local_config and paths:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Section '%s' in repos.conf is missing location attribute"
)
@@ -864,7 +865,7 @@ class RepoConfigLoader:
if not portage._sync_mode:
if not isdir_raise_eaccess(repo.location):
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Section '%s' in repos.conf has location attribute set "
"to nonexistent directory: '%s'"
@@ -884,7 +885,7 @@ class RepoConfigLoader:
# if repo.missing_repo_name:
if repo.missing_repo_name and repo.name != repo_name:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Section '%s' in repos.conf refers to repository "
"without repository name set in '%s'"
@@ -898,7 +899,7 @@ class RepoConfigLoader:
if repo.name != repo_name:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Section '%s' in repos.conf has name different "
"from repository name '%s' set inside repository"
@@ -928,7 +929,7 @@ class RepoConfigLoader:
continue
writemsg_level(
_(
- "!!! Repository name or alias '%s', "
+ "!!!! Repository name or alias '%s', "
+ "defined for repository '%s', overrides "
+ "existing alias or repository.\n"
)
@@ -957,7 +958,7 @@ class RepoConfigLoader:
prepos["DEFAULT"].main_repo = None
if portdir and not portage._sync_mode:
writemsg(
- _("!!! main-repo not set in DEFAULT and PORTDIR is empty.\n"),
+ _("!!!! main-repo not set in DEFAULT and PORTDIR is empty.\n"),
noiselevel=-1,
)
@@ -970,7 +971,7 @@ class RepoConfigLoader:
if portdir_sync and main_repo is not None:
writemsg(
_(
- "!!! SYNC setting found in make.conf.\n "
+ "!!!! SYNC setting found in make.conf.\n "
"This setting is Deprecated and no longer used. "
"Please ensure your 'sync-type' and 'sync-uri' are set correctly"
" in /etc/portage/repos.conf/gentoo.conf\n"
@@ -1097,13 +1098,13 @@ class RepoConfigLoader:
):
# TODO: Delete masters code in lib/portage/tests/resolver/ResolverPlayground.py when deleting this warning.
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Repository '%s' is missing masters attribute in '%s'")
% (
repo.name,
os.path.join(repo.location, "metadata", "layout.conf"),
)
- + "!!! %s\n"
+ + "!!!! %s\n"
% _("Set 'masters = %s' in this file for future compatibility")
% self.mainRepo().name,
level=logging.WARNING,
@@ -1147,14 +1148,14 @@ class RepoConfigLoader:
if name != "DEFAULT":
if r.location is None:
writemsg(
- _("!!! Location not set for repository %s\n") % name,
+ _("!!!! Location not set for repository %s\n") % name,
noiselevel=-1,
)
else:
if not isdir_raise_eaccess(r.location) and not portage._sync_mode:
self.prepos_order.remove(name)
writemsg(
- _("!!! Invalid Repository Location" " (not a dir): '%s'\n")
+ _("!!!! Invalid Repository Location" " (not a dir): '%s'\n")
% r.location,
noiselevel=-1,
)
diff --git a/lib/portage/sync/config_checks.py b/lib/portage/sync/config_checks.py
index a73e0dc88..1f270dfcf 100644
--- a/lib/portage/sync/config_checks.py
+++ b/lib/portage/sync/config_checks.py
@@ -18,7 +18,7 @@ from portage.util import writemsg_level
def check_type(repo, logger, module_names):
if repo.sync_uri is not None and repo.sync_type is None:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Repository '%s' has sync-uri attribute, but is missing sync-type attribute"
)
@@ -29,7 +29,7 @@ def check_type(repo, logger, module_names):
return False
if repo.sync_type not in module_names + [None]:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Repository '%s' has sync-type attribute set to unsupported value: '%s'"
)
@@ -38,7 +38,7 @@ def check_type(repo, logger, module_names):
noiselevel=-1,
)
writemsg_level(
- "!!! %s\n" % _("Installed sync-types are: '%s'") % (str(module_names)),
+ "!!!! %s\n" % _("Installed sync-types are: '%s'") % (str(module_names)),
level=logger.ERROR,
noiselevel=-1,
)
@@ -68,7 +68,7 @@ class CheckSyncConfig:
"""Check the sync_uri setting"""
if self.repo.sync_uri is None:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Repository '%s' has sync-type attribute, but is missing sync-uri attribute"
)
@@ -81,7 +81,7 @@ class CheckSyncConfig:
"""Check the auto_sync setting"""
if self.repo.auto_sync is None:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Repository '%s' is missing auto_sync attribute")
% self.repo.name,
level=self.logger.ERROR,
@@ -89,7 +89,7 @@ class CheckSyncConfig:
)
elif self.repo.auto_sync.lower() not in ["yes", "true", "no", "false"]:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Repository '%s' auto_sync attribute must be one of: %s")
% (self.repo.name, "{yes, true, no, false}"),
level=self.logger.ERROR,
diff --git a/lib/portage/sync/controller.py b/lib/portage/sync/controller.py
index 987aa5481..d7031db9c 100644
--- a/lib/portage/sync/controller.py
+++ b/lib/portage/sync/controller.py
@@ -212,7 +212,7 @@ class SyncManager:
return succeeded
def pre_sync(self, repo):
- msg = ">>> Syncing repository '%s' into '%s'..." % (repo.name, repo.location)
+ msg = ">>>> Syncing repository '%s' into '%s'..." % (repo.name, repo.location)
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n")
try:
@@ -248,7 +248,7 @@ class SyncManager:
pw = pwd.getpwuid(int(username))
except (ValueError, KeyError):
writemsg(
- "!!! User '%s' invalid or does not exist\n" % username,
+ "!!!! User '%s' invalid or does not exist\n" % username,
noiselevel=-1,
)
return (logname, user, group, home)
@@ -266,7 +266,7 @@ class SyncManager:
pw = grp.getgrgid(int(groupname))
except (ValueError, KeyError):
writemsg(
- "!!! Group '%s' invalid or does not exist\n" % groupname,
+ "!!!! Group '%s' invalid or does not exist\n" % groupname,
noiselevel=-1,
)
return (logname, user, group, home)
diff --git a/lib/portage/sync/modules/cvs/__init__.py b/lib/portage/sync/modules/cvs/__init__.py
index 344a7f847..3d7373272 100644
--- a/lib/portage/sync/modules/cvs/__init__.py
+++ b/lib/portage/sync/modules/cvs/__init__.py
@@ -18,7 +18,7 @@ class CheckCVSConfig(CheckSyncConfig):
def check_cvs_repo(self):
if self.repo.module_specific_options.get("sync-cvs-repo") is None:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _(
"Repository '%s' has sync-type=cvs, but is missing sync-cvs-repo attribute"
)
diff --git a/lib/portage/sync/modules/cvs/cvs.py b/lib/portage/sync/modules/cvs/cvs.py
index 722f54ab4..07a92d423 100644
--- a/lib/portage/sync/modules/cvs/cvs.py
+++ b/lib/portage/sync/modules/cvs/cvs.py
@@ -45,7 +45,7 @@ class CVSSync(NewBase):
)
!= os.EX_OK
):
- msg = "!!! cvs checkout error; exiting."
+ msg = "!!!! cvs checkout error; exiting."
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", noiselevel=-1, level=logging.ERROR)
return (1, False)
@@ -67,7 +67,7 @@ class CVSSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! cvs update error; exiting."
+ msg = "!!!! cvs update error; exiting."
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", noiselevel=-1, level=logging.ERROR)
return (exitcode, False)
diff --git a/lib/portage/sync/modules/git/__init__.py b/lib/portage/sync/modules/git/__init__.py
index ef32a9da0..4d3777936 100644
--- a/lib/portage/sync/modules/git/__init__.py
+++ b/lib/portage/sync/modules/git/__init__.py
@@ -28,7 +28,7 @@ class CheckGitConfig(CheckSyncConfig):
d = int(d)
except ValueError:
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _("%s value is not a number: '%s'")
% (attr.replace("_", "-"), d),
level=self.logger.ERROR,
@@ -44,7 +44,7 @@ class CheckGitConfig(CheckSyncConfig):
if v not in ("yes", "no", "true", "false"):
writemsg_level(
- "!!! %s\n"
+ "!!!! %s\n"
% _("sync-git-verify-commit-signature not one of: %s")
% ("{yes, no, true, false}"),
level=self.logger.ERROR,
diff --git a/lib/portage/sync/modules/git/git.py b/lib/portage/sync/modules/git/git.py
index 98670e1f9..fa92bb657 100644
--- a/lib/portage/sync/modules/git/git.py
+++ b/lib/portage/sync/modules/git/git.py
@@ -107,7 +107,7 @@ class GitSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! git clone error in %s" % self.repo.location
+ msg = "!!!! git clone error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (exitcode, False)
@@ -166,7 +166,7 @@ class GitSync(NewBase):
)
).rstrip("\n")
except subprocess.CalledProcessError as e:
- msg = "!!! git rev-parse error in %s" % self.repo.location
+ msg = "!!!! git rev-parse error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (e.returncode, False)
@@ -187,7 +187,7 @@ class GitSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! git gc error in %s" % self.repo.location
+ msg = "!!!! git gc error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (exitcode, False)
@@ -211,7 +211,7 @@ class GitSync(NewBase):
)
if exitcode != os.EX_OK:
- msg = "!!! git fetch error in %s" % self.repo.location
+ msg = "!!!! git fetch error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (exitcode, False)
@@ -235,7 +235,7 @@ class GitSync(NewBase):
)
if exitcode != os.EX_OK:
- msg = "!!! git merge error in %s" % self.repo.location
+ msg = "!!!! git merge error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (exitcode, False)
@@ -254,7 +254,7 @@ class GitSync(NewBase):
if self.repo.sync_openpgp_key_path is not None and gemato is None:
writemsg_level(
- "!!! Verifying against specified key requires gemato-14.5+ installed\n",
+ "!!!! Verifying against specified key requires gemato-14.5+ installed\n",
level=logging.ERROR,
noiselevel=-1,
)
@@ -273,7 +273,7 @@ class GitSync(NewBase):
self._refresh_keys(openpgp_env)
except (GematoException, asyncio.TimeoutError) as e:
writemsg_level(
- "!!! Verification impossible due to keyring problem:\n%s\n"
+ "!!!! Verification impossible due to keyring problem:\n%s\n"
% (e,),
level=logging.ERROR,
noiselevel=-1,
diff --git a/lib/portage/sync/modules/mercurial/mercurial.py b/lib/portage/sync/modules/mercurial/mercurial.py
index 486b4fdd6..c410bf4e1 100644
--- a/lib/portage/sync/modules/mercurial/mercurial.py
+++ b/lib/portage/sync/modules/mercurial/mercurial.py
@@ -87,7 +87,7 @@ class MercurialSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! hg clone error in %s" % self.repo.location
+ msg = "!!!! hg clone error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (exitcode, False)
@@ -144,7 +144,7 @@ class MercurialSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! hg pull error in %s" % self.repo.location
+ msg = "!!!! hg pull error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (exitcode, False)
diff --git a/lib/portage/sync/modules/rsync/rsync.py b/lib/portage/sync/modules/rsync/rsync.py
index 5f4cf1aeb..4c7b7c0f4 100644
--- a/lib/portage/sync/modules/rsync/rsync.py
+++ b/lib/portage/sync/modules/rsync/rsync.py
@@ -71,8 +71,8 @@ class RsyncSync(NewBase):
for vcs_dir in vcs_dirs:
writemsg_level(
(
- "!!! %s appears to be under revision "
- + "control (contains %s).\n!!! Aborting rsync sync "
+ "!!!! %s appears to be under revision "
+ + "control (contains %s).\n!!!! Aborting rsync sync "
'(override with "sync-rsync-vcs-ignore = true" in repos.conf).\n'
)
% (self.repo.location, vcs_dir),
@@ -117,7 +117,7 @@ class RsyncSync(NewBase):
raise ValueError(self.verify_jobs)
except ValueError:
writemsg_level(
- "!!! sync-rsync-verify-jobs not a positive integer: %s\n"
+ "!!!! sync-rsync-verify-jobs not a positive integer: %s\n"
% (self.verify_jobs,),
level=logging.WARNING,
noiselevel=-1,
@@ -139,7 +139,7 @@ class RsyncSync(NewBase):
raise ValueError(self.max_age)
except ValueError:
writemsg_level(
- "!!! sync-rsync-max-age must be a non-negative integer: %s\n"
+ "!!!! sync-rsync-max-age must be a non-negative integer: %s\n"
% (self.max_age,),
level=logging.WARNING,
noiselevel=-1,
@@ -166,7 +166,7 @@ class RsyncSync(NewBase):
self._refresh_keys(openpgp_env)
except (GematoException, asyncio.TimeoutError) as e:
writemsg_level(
- "!!! Manifest verification impossible due to keyring problem:\n%s\n"
+ "!!!! Manifest verification impossible due to keyring problem:\n%s\n"
% (e,),
level=logging.ERROR,
noiselevel=-1,
@@ -225,7 +225,7 @@ class RsyncSync(NewBase):
)[1:5]
except ValueError:
writemsg_level(
- "!!! sync-uri is invalid: %s\n" % syncuri,
+ "!!!! sync-uri is invalid: %s\n" % syncuri,
noiselevel=-1,
level=logging.ERROR,
)
@@ -266,7 +266,7 @@ class RsyncSync(NewBase):
)
except socket.error as e:
writemsg_level(
- "!!! getaddrinfo failed for '%s': %s\n"
+ "!!!! getaddrinfo failed for '%s': %s\n"
% (_unicode_decode(hostname), str(e)),
noiselevel=-1,
level=logging.ERROR,
@@ -334,7 +334,7 @@ class RsyncSync(NewBase):
dosyncuri = uris.pop()
elif maxretries < 0 or retries > maxretries:
writemsg(
- "!!! Exhausted addresses for %s\n" % _unicode_decode(hostname),
+ "!!!! Exhausted addresses for %s\n" % _unicode_decode(hostname),
noiselevel=-1,
)
return (1, False)
@@ -360,18 +360,18 @@ class RsyncSync(NewBase):
print()
sys.exit(128 + signal.SIGINT)
self.logger(
- self.xterm_titles, ">>> Starting rsync with " + dosyncuri
+ self.xterm_titles, ">>>> Starting rsync with " + dosyncuri
)
if "--quiet" not in opts:
- print(">>> Starting rsync with " + dosyncuri + "...")
+ print(">>>> Starting rsync with " + dosyncuri + "...")
else:
self.logger(
self.xterm_titles,
- ">>> Starting retry %d of %d with %s"
+ ">>>> Starting retry %d of %d with %s"
% (retries, effective_maxretries, dosyncuri),
)
writemsg_stdout(
- "\n\n>>> Starting retry %d of %d with %s\n"
+ "\n\n>>>> Starting retry %d of %d with %s\n"
% (retries, effective_maxretries, dosyncuri),
noiselevel=-1,
)
@@ -390,7 +390,7 @@ class RsyncSync(NewBase):
retries = retries + 1
if maxretries < 0 or retries <= maxretries:
- print(">>> Retrying...")
+ print(">>>> Retrying...")
else:
# over retries
# exit loop
@@ -411,7 +411,7 @@ class RsyncSync(NewBase):
if exitcode == 0 and self.verify_metamanifest:
if gemato is None:
writemsg_level(
- "!!! Unable to verify: gemato-14.5+ is required\n",
+ "!!!! Unable to verify: gemato-14.5+ is required\n",
level=logging.ERROR,
noiselevel=-1,
)
@@ -469,7 +469,7 @@ class RsyncSync(NewBase):
out.eend(0)
except GematoException as e:
writemsg_level(
- "!!! Manifest verification failed:\n%s\n" % (e,),
+ "!!!! Manifest verification failed:\n%s\n" % (e,),
level=logging.ERROR,
noiselevel=-1,
)
@@ -495,7 +495,7 @@ class RsyncSync(NewBase):
elif exitcode == SERVER_OUT_OF_DATE:
exitcode = 1
elif exitcode == EXCEEDED_MAX_RETRIES:
- sys.stderr.write(">>> Exceeded PORTAGE_RSYNC_RETRIES: %s\n" % maxretries)
+ sys.stderr.write(">>>> Exceeded PORTAGE_RSYNC_RETRIES: %s\n" % maxretries)
exitcode = 1
elif exitcode > 0:
msg = []
@@ -657,7 +657,7 @@ class RsyncSync(NewBase):
updatecache_flg = False
is_synced = False
if timestamp != 0 and "--quiet" not in opts:
- print(">>> Checking server timestamp ...")
+ print(">>>> Checking server timestamp ...")
rsynccommand = [self.bin_command] + self.rsync_opts + self.extra_rsync_opts
@@ -762,34 +762,34 @@ class RsyncSync(NewBase):
local_state_unchanged = True
is_synced = True
self.logger(
- self.xterm_titles, ">>> Cancelling sync -- Already current."
+ self.xterm_titles, ">>>> Cancelling sync -- Already current."
)
print()
- print(">>>")
+ print(">>>>")
print(
- ">>> Timestamps on the server and in the local repository are the same."
+ ">>>> Timestamps on the server and in the local repository are the same."
)
print(
- ">>> Cancelling all further sync action. You are already up to date."
+ ">>>> Cancelling all further sync action. You are already up to date."
)
- print(">>>")
+ print(">>>>")
print(
- ">>> In order to force sync, remove '%s'."
+ ">>>> In order to force sync, remove '%s'."
% self.servertimestampfile
)
- print(">>>")
+ print(">>>>")
print()
elif (servertimestamp != 0) and (servertimestamp < timestamp):
- self.logger(self.xterm_titles, ">>> Server out of date: %s" % syncuri)
+ self.logger(self.xterm_titles, ">>>> Server out of date: %s" % syncuri)
print()
- print(">>>")
- print(">>> SERVER OUT OF DATE: %s" % syncuri)
- print(">>>")
+ print(">>>>")
+ print(">>>> SERVER OUT OF DATE: %s" % syncuri)
+ print(">>>>")
print(
- ">>> In order to force sync, remove '%s'."
+ ">>>> In order to force sync, remove '%s'."
% self.servertimestampfile
)
- print(">>>")
+ print(">>>>")
print()
exitcode = SERVER_OUT_OF_DATE
elif (servertimestamp == 0) or (servertimestamp > timestamp):
diff --git a/lib/portage/sync/modules/svn/svn.py b/lib/portage/sync/modules/svn/svn.py
index 788e394cd..9a2312337 100644
--- a/lib/portage/sync/modules/svn/svn.py
+++ b/lib/portage/sync/modules/svn/svn.py
@@ -39,7 +39,7 @@ class SVNSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! svn checkout error; exiting."
+ msg = "!!!! svn checkout error; exiting."
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", noiselevel=-1, level=logging.ERROR)
return (exitcode, False)
@@ -63,7 +63,7 @@ class SVNSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! svn update error; exiting."
+ msg = "!!!! svn update error; exiting."
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", noiselevel=-1, level=logging.ERROR)
return (exitcode, False)
@@ -81,7 +81,7 @@ class SVNSync(NewBase):
**self.spawn_kwargs
)
if exitcode != os.EX_OK:
- msg = "!!! svn upgrade error; exiting."
+ msg = "!!!! svn upgrade error; exiting."
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", noiselevel=-1, level=logging.ERROR)
return exitcode
diff --git a/lib/portage/sync/modules/webrsync/webrsync.py b/lib/portage/sync/modules/webrsync/webrsync.py
index 0e2f63472..d427f346f 100644
--- a/lib/portage/sync/modules/webrsync/webrsync.py
+++ b/lib/portage/sync/modules/webrsync/webrsync.py
@@ -70,7 +70,7 @@ class WebRsync(SyncBase):
if not self.repo.sync_openpgp_key_path:
writemsg_level(
- "!!! sync-openpgp-key-path is not set\n",
+ "!!!! sync-openpgp-key-path is not set\n",
level=logging.ERROR,
noiselevel=-1,
)
@@ -78,7 +78,7 @@ class WebRsync(SyncBase):
if not os.path.isfile(self.repo.sync_openpgp_key_path):
writemsg_level(
- "!!! sync-openpgp-key-path file not found: %s\n"
+ "!!!! sync-openpgp-key-path file not found: %s\n"
% self.repo.sync_openpgp_key_path,
level=logging.ERROR,
noiselevel=-1,
@@ -87,7 +87,7 @@ class WebRsync(SyncBase):
if gemato is None:
writemsg_level(
- "!!! Verifying against specified key requires gemato-14.5+ installed\n",
+ "!!!! Verifying against specified key requires gemato-14.5+ installed\n",
level=logging.ERROR,
noiselevel=-1,
)
@@ -105,7 +105,7 @@ class WebRsync(SyncBase):
self.spawn_kwargs["env"]["PORTAGE_TEMP_GPG_DIR"] = openpgp_env.home
except (GematoException, asyncio.TimeoutError) as e:
writemsg_level(
- "!!! Verification impossible due to keyring problem:\n%s\n"
+ "!!!! Verification impossible due to keyring problem:\n%s\n"
% (e,),
level=logging.ERROR,
noiselevel=-1,
@@ -125,7 +125,7 @@ class WebRsync(SyncBase):
exitcode = portage.process.spawn(webrsync_cmd, **self.spawn_kwargs)
if exitcode != os.EX_OK:
- msg = "!!! emerge-webrsync error in %s" % self.repo.location
+ msg = "!!!! emerge-webrsync error in %s" % self.repo.location
self.logger(self.xterm_titles, msg)
writemsg_level(msg + "\n", level=logging.ERROR, noiselevel=-1)
return (exitcode, False)
diff --git a/lib/portage/sync/old_tree_timestamp.py b/lib/portage/sync/old_tree_timestamp.py
index 3558a25ad..01fc95d57 100644
--- a/lib/portage/sync/old_tree_timestamp.py
+++ b/lib/portage/sync/old_tree_timestamp.py
@@ -82,7 +82,7 @@ def old_tree_timestamp_warn(portdir, settings):
warnsync = float(settings.get(var_name, default_warnsync))
except ValueError:
writemsg_level(
- "!!! %s contains non-numeric value: %s\n" % (var_name, settings[var_name]),
+ "!!!! %s contains non-numeric value: %s\n" % (var_name, settings[var_name]),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/lib/portage/sync/syncbase.py b/lib/portage/sync/syncbase.py
index 94c873e1f..aa33f3312 100644
--- a/lib/portage/sync/syncbase.py
+++ b/lib/portage/sync/syncbase.py
@@ -67,13 +67,13 @@ class SyncBase:
% (self.bin_pkg, self._bin_command),
]
for l in msg:
- writemsg_level("!!! %s\n" % l, level=logging.ERROR, noiselevel=-1)
+ writemsg_level("!!!! %s\n" % l, level=logging.ERROR, noiselevel=-1)
return False
try:
self.repo_storage
except RepoStorageException as e:
- writemsg_level("!!! %s\n" % (e,), level=logging.ERROR, noiselevel=-1)
+ writemsg_level("!!!! %s\n" % (e,), level=logging.ERROR, noiselevel=-1)
return False
return True
@@ -240,7 +240,7 @@ class SyncBase:
if errors:
lines = []
lines.append("")
- lines.append("!!! Retry disabled for openpgp key refresh:")
+ lines.append("!!!! Retry disabled for openpgp key refresh:")
lines.append("")
for msg in errors:
lines.append(" {}".format(msg))
diff --git a/lib/portage/tests/resolver/test_autounmask.py b/lib/portage/tests/resolver/test_autounmask.py
index 4e98e5bfc..f9d1b67b4 100644
--- a/lib/portage/tests/resolver/test_autounmask.py
+++ b/lib/portage/tests/resolver/test_autounmask.py
@@ -320,7 +320,7 @@ class AutounmaskTestCase(TestCase):
# # required by =app-portage/A-1 (argument)
# >=app-portage/B-1 foo
#
- # !!! The ebuild selected to satisfy "app-portage/B[foo]" has unmet requirements.
+ # !!!! The ebuild selected to satisfy "app-portage/B[foo]" has unmet requirements.
# - app-portage/B-1::test_repo USE="bar (forced-flag) -foo"
#
# The following REQUIRED_USE flag constraints are unsatisfied:
@@ -337,7 +337,7 @@ class AutounmaskTestCase(TestCase):
# # required by =app-portage/A-2 (argument)
# >=app-portage/B-1 foo
#
- # !!! The ebuild selected to satisfy "app-portage/B[foo=]" has unmet requirements.
+ # !!!! The ebuild selected to satisfy "app-portage/B[foo=]" has unmet requirements.
# - app-portage/B-1::test_repo USE="bar (forced-flag) -foo"
#
# The following REQUIRED_USE flag constraints are unsatisfied:
@@ -363,7 +363,7 @@ class AutounmaskTestCase(TestCase):
# # required by sci-mathematics/octave (argument)
# >=x11-libs/qscintilla-2.9.4 qt5
#
- # !!! The ebuild selected to satisfy ">=x11-libs/qscintilla-2.9.3-r2:=[qt5(+)]" has unmet requirements.
+ # !!!! The ebuild selected to satisfy ">=x11-libs/qscintilla-2.9.3-r2:=[qt5(+)]" has unmet requirements.
# - x11-libs/qscintilla-2.9.4::test_repo USE="qt4 -qt5"
#
# The following REQUIRED_USE flag constraints are unsatisfied:
diff --git a/lib/portage/tests/resolver/test_autounmask_use_breakage.py b/lib/portage/tests/resolver/test_autounmask_use_breakage.py
index 02c08affa..6320deead 100644
--- a/lib/portage/tests/resolver/test_autounmask_use_breakage.py
+++ b/lib/portage/tests/resolver/test_autounmask_use_breakage.py
@@ -37,7 +37,7 @@ class AutounmaskUseBreakageTestCase(TestCase):
),
# With --autounmask-backtrack=y:
# emerge: there are no ebuilds built with USE flags to satisfy "app-misc/D[foo]".
- #!!! One of the following packages is required to complete your request:
+ #!!!! One of the following packages is required to complete your request:
# - app-misc/D-0::test_repo (Change USE: +foo)
# (dependency required by "app-misc/B-0::test_repo" [ebuild])
# (dependency required by "app-misc/B" [argument])
@@ -48,8 +48,8 @@ class AutounmaskUseBreakageTestCase(TestCase):
# [ebuild N ] app-misc/B-0
# [ebuild N ] app-misc/A-0
#
- #!!! Multiple package instances within a single package slot have been pulled
- #!!! into the dependency graph, resulting in a slot conflict:
+ #!!!! Multiple package instances within a single package slot have been pulled
+ #!!!! into the dependency graph, resulting in a slot conflict:
#
# app-misc/D:0
#
diff --git a/lib/portage/tests/resolver/test_slot_conflict_unsatisfied_deep_deps.py b/lib/portage/tests/resolver/test_slot_conflict_unsatisfied_deep_deps.py
index b392aaded..25b32d639 100644
--- a/lib/portage/tests/resolver/test_slot_conflict_unsatisfied_deep_deps.py
+++ b/lib/portage/tests/resolver/test_slot_conflict_unsatisfied_deep_deps.py
@@ -120,12 +120,12 @@ class SlotConflictUnsatisfiedDeepDepsTestCase(TestCase):
# required by @world (argument)
# =dev-libs/A-2 ~x86
#
- #!!! Problems have been detected with your world file
- #!!! Please run emaint --check world
+ #!!!! Problems have been detected with your world file
+ #!!!! Please run emaint --check world
#
#
- #!!! Ebuilds for the following packages are either all
- #!!! masked or don't exist:
+ #!!!! Ebuilds for the following packages are either all
+ #!!!! masked or don't exist:
# dev-libs/broken
#
# emerge: there are no ebuilds to satisfy "dev-libs/initially-unsatisfied".
@@ -133,8 +133,8 @@ class SlotConflictUnsatisfiedDeepDepsTestCase(TestCase):
# (dependency required by "@selected" [set])
# (dependency required by "@world" [argument])
# Without --autounmask-backtrack=y:
- #!!! Multiple package instances within a single package slot have been pulled
- #!!! into the dependency graph, resulting in a slot conflict:
+ #!!!! Multiple package instances within a single package slot have been pulled
+ #!!!! into the dependency graph, resulting in a slot conflict:
#
# dev-libs/A:0
#
diff --git a/lib/portage/update.py b/lib/portage/update.py
index 0ccca6e26..64296c75c 100644
--- a/lib/portage/update.py
+++ b/lib/portage/update.py
@@ -452,9 +452,9 @@ def update_config_files(
try:
write_atomic(updating_file, "".join(file_contents[x]))
except PortageException as e:
- writemsg("\n!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("\n!!!! %s\n" % str(e), noiselevel=-1)
writemsg(
- _("!!! An error occurred while updating a config file:")
+ _("!!!! An error occurred while updating a config file:")
+ " '%s'\n" % updating_file,
noiselevel=-1,
)
diff --git a/lib/portage/util/__init__.py b/lib/portage/util/__init__.py
index 5ade7f660..bc5498cd0 100644
--- a/lib/portage/util/__init__.py
+++ b/lib/portage/util/__init__.py
@@ -220,19 +220,19 @@ def stack_dictlist(original_dicts, incremental=0, incrementals=[], ignore_none=0
Returns a single dict. Higher index in lists is preferenced.
Example usage:
- >>> from portage.util import stack_dictlist
- >>> print stack_dictlist( [{'a':'b'},{'x':'y'}])
- >>> {'a':'b','x':'y'}
- >>> print stack_dictlist( [{'a':'b'},{'a':'c'}], incremental = True )
- >>> {'a':['b','c'] }
- >>> a = {'KEYWORDS':['x86','alpha']}
- >>> b = {'KEYWORDS':['-x86']}
- >>> print stack_dictlist( [a,b] )
- >>> { 'KEYWORDS':['x86','alpha','-x86']}
- >>> print stack_dictlist( [a,b], incremental=True)
- >>> { 'KEYWORDS':['alpha'] }
- >>> print stack_dictlist( [a,b], incrementals=['KEYWORDS'])
- >>> { 'KEYWORDS':['alpha'] }
+ >>>> from portage.util import stack_dictlist
+ >>>> print stack_dictlist( [{'a':'b'},{'x':'y'}])
+ >>>> {'a':'b','x':'y'}
+ >>>> print stack_dictlist( [{'a':'b'},{'a':'c'}], incremental = True )
+ >>>> {'a':['b','c'] }
+ >>>> a = {'KEYWORDS':['x86','alpha']}
+ >>>> b = {'KEYWORDS':['-x86']}
+ >>>> print stack_dictlist( [a,b] )
+ >>>> { 'KEYWORDS':['x86','alpha','-x86']}
+ >>>> print stack_dictlist( [a,b], incremental=True)
+ >>>> { 'KEYWORDS':['alpha'] }
+ >>>> print stack_dictlist( [a,b], incrementals=['KEYWORDS'])
+ >>>> { 'KEYWORDS':['alpha'] }
@param original_dicts a list of (dictionary objects or None)
@type list
@@ -827,7 +827,7 @@ def getconfig(
if portage._native_string("\r") in content:
writemsg(
(
- "!!! "
+ "!!!! "
+ _(
"Please use dos2unix to convert line endings "
+ "in config file: '%s'"
@@ -1071,7 +1071,7 @@ def pickle_read(filename, default=None, debug=0):
except SystemExit as e:
raise
except Exception as e:
- writemsg(_("!!! Failed to load pickle: ") + str(e) + "\n", 1)
+ writemsg(_("!!!! Failed to load pickle: ") + str(e) + "\n", 1)
data = default
return data
diff --git a/lib/portage/util/_dyn_libs/PreservedLibsRegistry.py b/lib/portage/util/_dyn_libs/PreservedLibsRegistry.py
index fd5c97362..a5cd1fb4f 100644
--- a/lib/portage/util/_dyn_libs/PreservedLibsRegistry.py
+++ b/lib/portage/util/_dyn_libs/PreservedLibsRegistry.py
@@ -101,7 +101,7 @@ class PreservedLibsRegistry:
raise
except Exception:
writemsg_level(
- _("!!! Error loading '%s': %s\n") % (self._filename, e),
+ _("!!!! Error loading '%s': %s\n") % (self._filename, e),
level=logging.ERROR,
noiselevel=-1,
)
@@ -147,7 +147,7 @@ class PreservedLibsRegistry:
except EnvironmentError as e:
if e.errno != PermissionDenied.errno:
writemsg_level(
- "!!! %s %s\n" % (e, self._filename),
+ "!!!! %s %s\n" % (e, self._filename),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/lib/portage/util/_dyn_libs/display_preserved_libs.py b/lib/portage/util/_dyn_libs/display_preserved_libs.py
index e81ca369c..c6da339fe 100644
--- a/lib/portage/util/_dyn_libs/display_preserved_libs.py
+++ b/lib/portage/util/_dyn_libs/display_preserved_libs.py
@@ -20,7 +20,7 @@ def display_preserved_libs(vardb, verbose=False):
linkmap.rebuild()
except portage.exception.CommandNotFound as e:
portage.util.writemsg_level(
- "!!! Command Not Found: %s\n" % (e,), level=logging.ERROR, noiselevel=-1
+ "!!!! Command Not Found: %s\n" % (e,), level=logging.ERROR, noiselevel=-1
)
else:
search_for_owners = set()
@@ -54,7 +54,7 @@ def display_preserved_libs(vardb, verbose=False):
all_preserved.update(*plibdata.values())
for cpv in plibdata:
- print(colorize("WARN", ">>>") + " package: %s" % cpv)
+ print(colorize("WARN", ">>>>") + " package: %s" % cpv)
samefile_map = {}
for f in plibdata[cpv]:
obj_key = linkmap._obj_key(f)
diff --git a/lib/portage/util/env_update.py b/lib/portage/util/env_update.py
index bb0ebf84c..98ed62608 100644
--- a/lib/portage/util/env_update.py
+++ b/lib/portage/util/env_update.py
@@ -146,12 +146,12 @@ def _env_update(makelinks, target_root, prev_mtimes, contents, env, writemsg_lev
try:
myconfig = getconfig(file_path, expand=False)
except ParseError as e:
- writemsg("!!! '%s'\n" % str(e), noiselevel=-1)
+ writemsg("!!!! '%s'\n" % str(e), noiselevel=-1)
del e
continue
if myconfig is None:
# broken symlink or file removed by a concurrent process
- writemsg("!!! File Not Found: '%s'\n" % file_path, noiselevel=-1)
+ writemsg("!!!! File Not Found: '%s'\n" % file_path, noiselevel=-1)
continue
config_list.append(myconfig)
@@ -365,12 +365,12 @@ def _env_update(makelinks, target_root, prev_mtimes, contents, env, writemsg_lev
# to overwrite the symlinks we just made. -X means no links. After 'clean'
# we can safely create links.
writemsg_level(
- _(">>> Regenerating %setc/ld.so.cache...\n") % (target_root,)
+ _(">>>> Regenerating %setc/ld.so.cache...\n") % (target_root,)
)
os.system("cd / ; %s -X -r '%s'" % (ldconfig, target_root))
elif ostype in ("FreeBSD", "DragonFly"):
writemsg_level(
- _(">>> Regenerating %svar/run/ld-elf.so.hints...\n") % target_root
+ _(">>>> Regenerating %svar/run/ld-elf.so.hints...\n") % target_root
)
os.system(
(
diff --git a/lib/portage/util/locale.py b/lib/portage/util/locale.py
index 8fb6cb6eb..e4849bcfb 100644
--- a/lib/portage/util/locale.py
+++ b/lib/portage/util/locale.py
@@ -90,7 +90,7 @@ def _check_locale(silent):
]
)
writemsg_level(
- "".join(["!!! %s\n" % l for l in msg]), level=logging.ERROR, noiselevel=-1
+ "".join(["!!!! %s\n" % l for l in msg]), level=logging.ERROR, noiselevel=-1
)
return False
diff --git a/lib/portage/util/movefile.py b/lib/portage/util/movefile.py
index ddafe5571..299d1b989 100644
--- a/lib/portage/util/movefile.py
+++ b/lib/portage/util/movefile.py
@@ -149,9 +149,9 @@ def movefile(
raise
except Exception as e:
writemsg(
- "!!! %s\n" % _("Stating source file failed... movefile()"), noiselevel=-1
+ "!!!! %s\n" % _("Stating source file failed... movefile()"), noiselevel=-1
)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
return None
destexists = 1
@@ -223,10 +223,10 @@ def movefile(
raise
except Exception as e:
writemsg(
- "!!! %s\n" % _("failed to properly create symlink:"), noiselevel=-1
+ "!!!! %s\n" % _("failed to properly create symlink:"), noiselevel=-1
)
- writemsg("!!! %s -> %s\n" % (dest, target), noiselevel=-1)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s -> %s\n" % (dest, target), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
return None
hardlinked = False
@@ -244,11 +244,11 @@ def movefile(
except OSError as e:
if e.errno != errno.ENOENT:
writemsg(
- _("!!! Failed to remove hardlink temp file: %s\n")
+ _("!!!! Failed to remove hardlink temp file: %s\n")
% (hardlink_tmp,),
noiselevel=-1,
)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
return None
del e
for hardlink_src in hardlink_candidates:
@@ -261,10 +261,10 @@ def movefile(
os.rename(hardlink_tmp, dest)
except OSError as e:
writemsg(
- _("!!! Failed to rename %s to %s\n") % (hardlink_tmp, dest),
+ _("!!!! Failed to rename %s to %s\n") % (hardlink_tmp, dest),
noiselevel=-1,
)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
return None
hardlinked = True
try:
@@ -287,12 +287,12 @@ def movefile(
if e.errno != errno.EXDEV:
# Some random error.
writemsg(
- "!!! %s\n"
+ "!!!! %s\n"
% _("Failed to move %(src)s to %(dest)s")
% {"src": src, "dest": dest},
noiselevel=-1,
)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
return None
# Invalid cross-device-link 'bind' mounted or actually Cross-Device
if renamefailed:
@@ -322,19 +322,19 @@ def movefile(
)
msg = textwrap.wrap(msg, 65)
for line in msg:
- writemsg("!!! %s\n" % (line,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (line,), noiselevel=-1)
raise
_rename(dest_tmp_bytes, dest_bytes)
_os.unlink(src_bytes)
success = True
except Exception as e:
writemsg(
- "!!! %s\n"
+ "!!!! %s\n"
% _("copy %(src)s -> %(dest)s failed.")
% {"src": src, "dest": dest},
noiselevel=-1,
)
- writemsg("!!! %s\n" % (e,), noiselevel=-1)
+ writemsg("!!!! %s\n" % (e,), noiselevel=-1)
return None
finally:
if not success:
@@ -346,16 +346,16 @@ def movefile(
# we don't yet handle special, so we need to fall back to /bin/mv
a = spawn([MOVE_BINARY, "-f", src, dest], env=os.environ)
if a != os.EX_OK:
- writemsg(_("!!! Failed to move special file:\n"), noiselevel=-1)
+ writemsg(_("!!!! Failed to move special file:\n"), noiselevel=-1)
writemsg(
- _("!!! '%(src)s' to '%(dest)s'\n")
+ _("!!!! '%(src)s' to '%(dest)s'\n")
% {
"src": _unicode_decode(src, encoding=encoding),
"dest": _unicode_decode(dest, encoding=encoding),
},
noiselevel=-1,
)
- writemsg("!!! %s\n" % a, noiselevel=-1)
+ writemsg("!!!! %s\n" % a, noiselevel=-1)
return None # failure
# In Python <3.3 always use stat_obj[stat.ST_MTIME] for the integral timestamp
@@ -384,9 +384,9 @@ def movefile(
try:
newmtime = os.stat(dest).st_mtime_ns
except OSError as e:
- writemsg(_("!!! Failed to stat in movefile()\n"), noiselevel=-1)
- writemsg("!!! %s\n" % dest, noiselevel=-1)
- writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg(_("!!!! Failed to stat in movefile()\n"), noiselevel=-1)
+ writemsg("!!!! %s\n" % dest, noiselevel=-1)
+ writemsg("!!!! %s\n" % str(e), noiselevel=-1)
return None
if bsd_chflags:
diff --git a/lib/portage/util/mtimedb.py b/lib/portage/util/mtimedb.py
index 7a7fe6784..77ced65b1 100644
--- a/lib/portage/util/mtimedb.py
+++ b/lib/portage/util/mtimedb.py
@@ -46,7 +46,7 @@ class MtimeDB(dict):
pass
else:
writemsg(
- _("!!! Error loading '%s': %s\n") % (filename, e), noiselevel=-1
+ _("!!!! Error loading '%s': %s\n") % (filename, e), noiselevel=-1
)
finally:
if f is not None:
@@ -75,7 +75,8 @@ class MtimeDB(dict):
raise
except Exception:
writemsg(
- _("!!! Error loading '%s': %s\n") % (filename, e), noiselevel=-1
+ _("!!!! Error loading '%s': %s\n") % (filename, e),
+ noiselevel=-1,
)
if d is None:
diff --git a/lib/portage/util/writeable_check.py b/lib/portage/util/writeable_check.py
index be73745a1..d4d36846b 100644
--- a/lib/portage/util/writeable_check.py
+++ b/lib/portage/util/writeable_check.py
@@ -88,7 +88,7 @@ def linux_ro_checker(dir_list):
# filesystems and return.
except EnvironmentError:
writemsg_level(
- _("!!! /proc/self/mountinfo cannot be read"),
+ _("!!!! /proc/self/mountinfo cannot be read"),
level=logging.WARNING,
noiselevel=-1,
)
@@ -96,7 +96,7 @@ def linux_ro_checker(dir_list):
for line in invalids:
writemsg_level(
- _("!!! /proc/self/mountinfo contains unrecognized line: %s\n")
+ _("!!!! /proc/self/mountinfo contains unrecognized line: %s\n")
% line.rstrip(),
level=logging.WARNING,
noiselevel=-1,
diff --git a/lib/portage/versions.py b/lib/portage/versions.py
index fe1ff6ce0..68d69bdf4 100644
--- a/lib/portage/versions.py
+++ b/lib/portage/versions.py
@@ -148,7 +148,7 @@ def ververify(myver, silent=1):
if ver_regexp.match(myver):
return True
if not silent:
- print(_("!!! syntax error in version: %s") % myver)
+ print(_("!!!! syntax error in version: %s") % myver)
return False
@@ -157,12 +157,12 @@ def vercmp(ver1, ver2, silent=1):
"""
Compare two versions
Example usage:
- >>> from portage.versions import vercmp
- >>> vercmp('1.0-r1','1.2-r3')
+ >>>> from portage.versions import vercmp
+ >>>> vercmp('1.0-r1','1.2-r3')
negative number
- >>> vercmp('1.3','1.2-r3')
+ >>>> vercmp('1.3','1.2-r3')
positive number
- >>> vercmp('1.0_p3','1.0_p3')
+ >>>> vercmp('1.0_p3','1.0_p3')
0
@param pkg1: version to compare with (see ver_regexp in portage.versions.py)
@@ -186,11 +186,11 @@ def vercmp(ver1, ver2, silent=1):
# checking that the versions are valid
if not match1 or not match1.groups():
if not silent:
- print(_("!!! syntax error in version: %s") % ver1)
+ print(_("!!!! syntax error in version: %s") % ver1)
return None
if not match2 or not match2.groups():
if not silent:
- print(_("!!! syntax error in version: %s") % ver2)
+ print(_("!!!! syntax error in version: %s") % ver2)
return None
# building lists of the version parts before the suffix
@@ -305,10 +305,10 @@ def pkgcmp(pkg1, pkg2):
Compare 2 package versions created in pkgsplit format.
Example usage:
- >>> from portage.versions import *
- >>> pkgcmp(pkgsplit('test-1.0-r1'),pkgsplit('test-1.2-r3'))
+ >>>> from portage.versions import *
+ >>>> pkgcmp(pkgsplit('test-1.0-r1'),pkgsplit('test-1.2-r3'))
-1
- >>> pkgcmp(pkgsplit('test-1.3'),pkgsplit('test-1.2-r3'))
+ >>>> pkgcmp(pkgsplit('test-1.3'),pkgsplit('test-1.2-r3'))
1
@param pkg1: package to compare with
diff --git a/lib/portage/xml/metadata.py b/lib/portage/xml/metadata.py
index 807847d7e..f65177c8e 100644
--- a/lib/portage/xml/metadata.py
+++ b/lib/portage/xml/metadata.py
@@ -4,27 +4,27 @@
"""Provides an easy-to-use python interface to Gentoo's metadata.xml file.
Example usage:
- >>> from portage.xml.metadata import MetaDataXML
- >>> pkg_md = MetaDataXML('/var/db/repos/gentoo/app-misc/gourmet/metadata.xml')
- >>> pkg_md
+ >>>> from portage.xml.metadata import MetaDataXML
+ >>>> pkg_md = MetaDataXML('/var/db/repos/gentoo/app-misc/gourmet/metadata.xml')
+ >>>> pkg_md
<MetaDataXML '/var/db/repos/gentoo/app-misc/gourmet/metadata.xml'>
- >>> pkg_md.herds()
+ >>>> pkg_md.herds()
['no-herd']
- >>> for maint in pkg_md.maintainers():
+ >>>> for maint in pkg_md.maintainers():
... print "{0} ({1})".format(maint.email, maint.name)
...
nixphoeni@gentoo.org (Joe Sapp)
- >>> for flag in pkg_md.use():
+ >>>> for flag in pkg_md.use():
... print flag.name, "->", flag.description
...
rtf -> Enable export to RTF
gnome-print -> Enable printing support using gnome-print
- >>> upstream = pkg_md.upstream()
- >>> upstream
+ >>>> upstream = pkg_md.upstream()
+ >>>> upstream
[<_Upstream {'docs': [], 'remoteid': [], 'maintainer':
[<_Maintainer 'Thomas_Hinkle@alumni.brown.edu'>], 'bugtracker': [],
'changelog': []}>]
- >>> upstream[0].maintainer[0].name
+ >>>> upstream[0].maintainer[0].name
'Thomas Mills Hinkle'
"""
diff --git a/misc/emerge-delta-webrsync b/misc/emerge-delta-webrsync
index 082e15e52..e10acb9a5 100755
--- a/misc/emerge-delta-webrsync
+++ b/misc/emerge-delta-webrsync
@@ -597,10 +597,10 @@ verify_md5_file() {
#--------------------
if ! type -p patcher &> /dev/null; then
- echo "!!!"
- echo "!!! cannot find patcher, did you emerge dev-util/diffball?"
- echo "!!! lack of patcher == have to do full fetch"
- echo "!!!"
+ echo "!!!!"
+ echo "!!!! cannot find patcher, did you emerge dev-util/diffball?"
+ echo "!!!! lack of patcher == have to do full fetch"
+ echo "!!!!"
sleep 10
if do_latest_snapshot; then
rm -fr "${TMPDIR}"
diff --git a/repoman/lib/repoman/__init__.py b/repoman/lib/repoman/__init__.py
index b3690c07d..403bd3af9 100644
--- a/repoman/lib/repoman/__init__.py
+++ b/repoman/lib/repoman/__init__.py
@@ -11,21 +11,21 @@ try:
except ImportError as e:
sys.stderr.write("\n\n")
sys.stderr.write(
- "!!! Failed to complete portage imports. There are internal modules for\n"
+ "!!!! Failed to complete portage imports. There are internal modules for\n"
)
sys.stderr.write(
- "!!! portage and failure here indicates that you have a problem with your\n"
+ "!!!! portage and failure here indicates that you have a problem with your\n"
)
sys.stderr.write(
- "!!! installation of portage. Please try a rescue portage located in the ebuild\n"
+ "!!!! installation of portage. Please try a rescue portage located in the ebuild\n"
)
sys.stderr.write(
- "!!! repository under '/var/db/repos/gentoo/sys-apps/portage/files/' (default).\n"
+ "!!!! repository under '/var/db/repos/gentoo/sys-apps/portage/files/' (default).\n"
)
sys.stderr.write(
- "!!! There is a README.RESCUE file that details the steps required to perform\n"
+ "!!!! There is a README.RESCUE file that details the steps required to perform\n"
)
- sys.stderr.write("!!! a recovery of portage.\n")
+ sys.stderr.write("!!!! a recovery of portage.\n")
sys.stderr.write(" " + str(e) + "\n\n")
raise
diff --git a/repoman/lib/repoman/actions.py b/repoman/lib/repoman/actions.py
index 920f0e97a..fdbbcb0d1 100644
--- a/repoman/lib/repoman/actions.py
+++ b/repoman/lib/repoman/actions.py
@@ -117,7 +117,7 @@ class Actions:
except (IOError, OSError) as e:
if e.errno == errno.ENOENT:
portage.writemsg(
- "!!! File Not Found:"
+ "!!!! File Not Found:"
" --commitmsgfile='%s'\n" % self.options.commitmsgfile
)
else:
@@ -379,7 +379,7 @@ the whole commit message to abort.
# so it's safe to ignore.
del myunadded[x]
elif xs[-1] == "files":
- print("!!! files dir is not added! Please correct this.")
+ print("!!!! files dir is not added! Please correct this.")
sys.exit(-1)
elif xs[-1] == "Manifest":
# It's a manifest... auto add
@@ -389,13 +389,13 @@ the whole commit message to abort.
if myunadded:
print(
red(
- "!!! The following files are in your local tree"
+ "!!!! The following files are in your local tree"
" but are not added to the master"
)
)
print(
red(
- "!!! tree. Please remove them from the local tree"
+ "!!!! tree. Please remove them from the local tree"
" or add them to the master tree."
)
)
@@ -410,13 +410,13 @@ the whole commit message to abort.
if self.vcs_settings.changes.has_deleted:
print(
red(
- "!!! The following files are removed manually"
+ "!!!! The following files are removed manually"
" from your local tree but are not"
)
)
print(
red(
- "!!! removed from the repository."
+ "!!!! removed from the repository."
' Please remove them, using "%s remove [FILES]".'
% self.vcs_settings.vcs
)
@@ -608,7 +608,7 @@ the whole commit message to abort.
)
if new_changelog is None:
writemsg_level(
- "!!! Updating the ChangeLog failed\n",
+ "!!!! Updating the ChangeLog failed\n",
level=logging.ERROR,
noiselevel=-1,
)
@@ -632,7 +632,7 @@ the whole commit message to abort.
broken_changelog_manifests.append(x)
if myautoadd:
- print(">>> Auto-Adding missing Manifest/ChangeLog file(s)...")
+ print(">>>> Auto-Adding missing Manifest/ChangeLog file(s)...")
self.vcs_settings.changes.add_items(myautoadd)
myupdates += myautoadd
return myupdates, broken_changelog_manifests
@@ -660,7 +660,7 @@ the whole commit message to abort.
pass
if retval != os.EX_OK:
writemsg_level(
- "!!! Exiting on %s (shell) "
+ "!!!! Exiting on %s (shell) "
"error code: %s\n" % (self.vcs_settings.vcs, retval),
level=logging.ERROR,
noiselevel=-1,
@@ -696,7 +696,7 @@ the whole commit message to abort.
pass
if retval != os.EX_OK:
writemsg_level(
- "!!! Exiting on %s (shell) "
+ "!!!! Exiting on %s (shell) "
"error code: %s\n" % (self.vcs_settings.vcs, retval),
level=logging.ERROR,
noiselevel=-1,
@@ -720,8 +720,8 @@ the whole commit message to abort.
continue
gpgsign(manifest_path, self.repoman_settings, self.options)
except portage.exception.PortageException as e:
- portage.writemsg("!!! %s\n" % str(e))
- portage.writemsg("!!! Disabled FEATURES='sign'\n")
+ portage.writemsg("!!!! %s\n" % str(e))
+ portage.writemsg("!!!! Disabled FEATURES='sign'\n")
self.repo_settings.sign_manifests = False
def msg_prefix(self):
diff --git a/repoman/lib/repoman/gpg.py b/repoman/lib/repoman/gpg.py
index 10e884e52..9bed52606 100644
--- a/repoman/lib/repoman/gpg.py
+++ b/repoman/lib/repoman/gpg.py
@@ -57,7 +57,7 @@ def gpgsign(filename, repoman_settings, options):
os.rename(filename + ".asc", filename)
else:
raise portage.exception.PortageException(
- "!!! gpg exited with '" + str(rValue) + "' status"
+ "!!!! gpg exited with '" + str(rValue) + "' status"
)
diff --git a/repoman/lib/repoman/modules/commit/manifest.py b/repoman/lib/repoman/modules/commit/manifest.py
index e282ad406..bee80effa 100644
--- a/repoman/lib/repoman/modules/commit/manifest.py
+++ b/repoman/lib/repoman/modules/commit/manifest.py
@@ -48,14 +48,14 @@ class Manifest:
except portage.exception.PermissionDenied as e:
self.generated_manifest = False
writemsg_level(
- "!!! Permission denied: '%s'\n" % (e,),
+ "!!!! Permission denied: '%s'\n" % (e,),
level=logging.ERROR,
noiselevel=-1,
)
if not self.generated_manifest:
writemsg_level(
- "!!! Unable to generate manifest for '%s'.\n" % (checkdir,),
+ "!!!! Unable to generate manifest for '%s'.\n" % (checkdir,),
level=logging.ERROR,
noiselevel=-1,
)
diff --git a/repoman/lib/repoman/modules/vcs/cvs/status.py b/repoman/lib/repoman/modules/vcs/cvs/status.py
index 0d131c75a..71570bf24 100644
--- a/repoman/lib/repoman/modules/vcs/cvs/status.py
+++ b/repoman/lib/repoman/modules/vcs/cvs/status.py
@@ -94,11 +94,11 @@ class Status:
continue
logging.error(
red(
- "!!! Please fix the following issues reported "
+ "!!!! Please fix the following issues reported "
"from cvs: %s" % green("(U,P,M,A,R,D are ok)")
)
)
- logging.error(red("!!! Note: This is a pretend/no-modify pass..."))
+ logging.error(red("!!!! Note: This is a pretend/no-modify pass..."))
logging.error(out)
sys.exit(1)
elif line[0] in "UP":
@@ -112,7 +112,7 @@ class Status:
else:
retval = os.system("cvs update " + " ".join(myupdates))
if retval != os.EX_OK:
- logging.fatal("!!! cvs exited with an error. Terminating.")
+ logging.fatal("!!!! cvs exited with an error. Terminating.")
sys.exit(retval)
return False
diff --git a/repoman/lib/repoman/modules/vcs/git/changes.py b/repoman/lib/repoman/modules/vcs/git/changes.py
index 3430cf3ec..da3a87c55 100644
--- a/repoman/lib/repoman/modules/vcs/git/changes.py
+++ b/repoman/lib/repoman/modules/vcs/git/changes.py
@@ -120,7 +120,7 @@ class Changes(ChangesBase):
retval = spawn(update_index_cmd, env=os.environ)
if retval != os.EX_OK:
writemsg_level(
- "!!! Exiting on %s (shell) "
+ "!!!! Exiting on %s (shell) "
"error code: %s\n" % (self.vcs_settings.vcs, retval),
level=logging.ERROR,
noiselevel=-1,
diff --git a/repoman/lib/repoman/modules/vcs/svn/status.py b/repoman/lib/repoman/modules/vcs/svn/status.py
index 2e6ee927d..82ac29f68 100644
--- a/repoman/lib/repoman/modules/vcs/svn/status.py
+++ b/repoman/lib/repoman/modules/vcs/svn/status.py
@@ -111,11 +111,11 @@ class Status:
continue
logging.error(
red(
- "!!! Please fix the following issues reported "
+ "!!!! Please fix the following issues reported "
"from cvs: %s" % green("(U,P,M,A,R,D are ok)")
)
)
- logging.error(red("!!! Note: This is a pretend/no-modify pass..."))
+ logging.error(red("!!!! Note: This is a pretend/no-modify pass..."))
logging.error(out)
sys.exit(1)
elif line[8] == "*":
@@ -129,7 +129,7 @@ class Status:
else:
retval = os.system("svn update " + " ".join(myupdates))
if retval != os.EX_OK:
- logging.fatal("!!! svn exited with an error. Terminating.")
+ logging.fatal("!!!! svn exited with an error. Terminating.")
sys.exit(retval)
return False
diff --git a/repoman/lib/repoman/scanner.py b/repoman/lib/repoman/scanner.py
index 890950c65..f4c71c9a2 100644
--- a/repoman/lib/repoman/scanner.py
+++ b/repoman/lib/repoman/scanner.py
@@ -456,7 +456,7 @@ class Scanner:
# Do not try to do any more QA checks on this package since missing
# metadata leads to false positives for several checks, and false
# positives confuse users.
- # logging.debug("\t>>> Continuing")
+ # logging.debug("\t>>>> Continuing")
break
logging.debug("Finished ebuild plugin loop, continuing...")
@@ -480,5 +480,5 @@ class Scanner:
logging.debug("\tRunning function: %s", func)
_continue = func(**self.set_func_kwargs(mod, dynamic_data))
if _continue:
- # logging.debug("\t>>> Continuing")
+ # logging.debug("\t>>>> Continuing")
break
--
2.33.0
^ permalink raw reply related [flat|nested] 8+ messages in thread