diff --git a/Manifest.files.gz b/Manifest.files.gz
index 9e9972b77ec0..0b231f71281e 100644
Binary files a/Manifest.files.gz and b/Manifest.files.gz differ
diff --git a/app-admin/Manifest.gz b/app-admin/Manifest.gz
index fb2a89ee11b9..09bcb690892c 100644
Binary files a/app-admin/Manifest.gz and b/app-admin/Manifest.gz differ
diff --git a/app-admin/awscli/Manifest b/app-admin/awscli/Manifest
index 3ffdac22e985..ddc13ce14e3c 100644
--- a/app-admin/awscli/Manifest
+++ b/app-admin/awscli/Manifest
@@ -4,3 +4,4 @@ DIST awscli-1.20.65.tar.gz 2091702 BLAKE2B e8295cf4e859c1e642077f4014fdea333292e
DIST awscli-1.21.5.tar.gz 2095418 BLAKE2B 152d0ac70e9e0120fb9b10451904af52035bce84168c055695e7dc93e56648bd7689f20ac0ecdbdfc54ccb846d51b33027d2e9ee09c5e5d1e915c0ec05b0fbfe SHA512 e3063252a50fc6033669a0ff80f82d73764a6728d623d75a27f0652e779cbeb452454d887bf5bd70199a7394df40f9758b14619778c6428a164d590e6c8aaa89
DIST awscli-1.21.6.tar.gz 2095961 BLAKE2B 7c765168604cf98f2c1be1aebf1cacb425124dff51a0a1ba1792634187feab6361d740aa743eda7d41a671300d4196e852640e04f56aa399752ce3305ac1ce86 SHA512 912d81f96cef3ae1c2a0969050e1bce304d1019a98d6bf16e45de50c66f85f6f69a10ceffeae773aafa002227e657861a9f41d123368c1b4a93b5d49747137d3
DIST awscli-1.21.7.tar.gz 2095914 BLAKE2B 6cb53fab223941a41eceeb8430d7158bc14da670a42609707ee5aea02a7e9d43f32fd7118ef7ab4ede54dd5312a4907eac7aa0e040d775ca7f606049dfc1a090 SHA512 8bf7dd4aaab890e4269a02fdd8735dd918a31783128dab46bc5077310ca385717fe4da913c2fb3c36e1132eaaea40cb7c4f434d6060fe27cd4bfc704581cd1e0
+DIST awscli-1.21.8.tar.gz 2096389 BLAKE2B 5af0d744e243f9251a4d70914db58d2e154959505960fc93de6804951c4f41851072f7431f13e91b0d8ac96e349bdfc67517e2166e33e4224a68f91d9d7749c4 SHA512 3ca4913070ed468ea95376b5e571244af8bc562972c1894b4144b7e5e1c6937f298267d9e4db65549fcd61f6b6b552354070091c5b387b6e10f67f8a36e3611c
diff --git a/app-admin/awscli/awscli-1.21.8.ebuild b/app-admin/awscli/awscli-1.21.8.ebuild
new file mode 100644
index 000000000000..81d5997098c2
--- /dev/null
+++ b/app-admin/awscli/awscli-1.21.8.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit bash-completion-r1 distutils-r1
+
+DESCRIPTION="Universal Command Line Environment for AWS"
+HOMEPAGE="https://pypi.org/project/awscli/"
+#SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+SRC_URI="https://github.com/aws/aws-cli/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/aws-cli-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+# botocore is x.(y+1).z
+BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 1)).$(ver_cut 3-)"
+RDEPEND="
+ >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/rsa[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.4.0[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests --install pytest
+
+python_test() {
+ distutils_install_for_testing
+ # integration tests require AWS credentials and Internet access
+ epytest tests/{functional,unit}
+}
+
+python_install_all() {
+ newbashcomp bin/aws_bash_completer aws
+
+ insinto /usr/share/zsh/site-functions
+ newins bin/aws_zsh_completer.sh _aws
+
+ distutils-r1_python_install_all
+
+ rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
+}
diff --git a/app-benchmarks/Manifest.gz b/app-benchmarks/Manifest.gz
index a975c0839075..c828408256d4 100644
Binary files a/app-benchmarks/Manifest.gz and b/app-benchmarks/Manifest.gz differ
diff --git a/app-benchmarks/stress/stress-1.0.5.ebuild b/app-benchmarks/stress/stress-1.0.5.ebuild
index 60a9c7e1e06d..adc0493fb5ba 100644
--- a/app-benchmarks/stress/stress-1.0.5.ebuild
+++ b/app-benchmarks/stress/stress-1.0.5.ebuild
@@ -11,7 +11,7 @@ SRC_URI="mirror://debian/pool/main/s/${PN}/${PN}_${PV}.orig.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
IUSE="static"
src_prepare() {
diff --git a/app-misc/Manifest.gz b/app-misc/Manifest.gz
index 8f1f1e1ddbc5..85e0350dad77 100644
Binary files a/app-misc/Manifest.gz and b/app-misc/Manifest.gz differ
diff --git a/app-misc/broot/broot-1.7.0.ebuild b/app-misc/broot/broot-1.7.0.ebuild
index f04c95fff990..43b95782a76c 100644
--- a/app-misc/broot/broot-1.7.0.ebuild
+++ b/app-misc/broot/broot-1.7.0.ebuild
@@ -221,6 +221,7 @@ RDEPEND="
X? ( x11-libs/libxcb:= )
"
DEPEND="${RDEPEND}"
+BDEPEND=">=virtual/rust-1.56"
QA_FLAGS_IGNORED="usr/bin/broot"
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index 9ccda238b189..eb2cc9c4b52a 100644
Binary files a/dev-lang/Manifest.gz and b/dev-lang/Manifest.gz differ
diff --git a/dev-lang/inform/Manifest b/dev-lang/inform/Manifest
index fc608436e98c..affbf7ed9449 100644
--- a/dev-lang/inform/Manifest
+++ b/dev-lang/inform/Manifest
@@ -1 +1,2 @@
DIST inform-6.33.1-b2.tar.gz 1822648 BLAKE2B e2ea59aa310b2f0122d1b834d98b0b827b945a8031a3e61c70bf502f7a746f43b81035cc22805ab351abf6f9df9ba898ea6ea83da863ef9aa313840ed974d725 SHA512 12cc10b7dae4118600a4d19d0aa44c3a7c93dfc8aa17bd56df7b9237f21df0ae99db6840eefaa5b11ff346369c6f6f2f128167b3479c8f540c29e3e36666c368
+DIST inform-6.35-r4.tar.gz 2307089 BLAKE2B 9864324fe29fe920e226a239f92f327678ed796e5f5a27b3814f62b1158673b2c14d6771abd7af6f9743bb0949c4c6de75a6b591337b0e99196f8ab4d9f0c9f7 SHA512 c30c7067786845e0c77783f7a03a151ae1238978f648f6036fe9535a33662c76abc11db21bab00fe60c4742cd4da46e4674081711b9b3852520bfb14c1b068a6
diff --git a/dev-lang/inform/inform-6.33.1_p2.ebuild b/dev-lang/inform/inform-6.33.1_p2.ebuild
index 939c464d7591..f07551c95d98 100644
--- a/dev-lang/inform/inform-6.33.1_p2.ebuild
+++ b/dev-lang/inform/inform-6.33.1_p2.ebuild
@@ -1,25 +1,31 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
-MY_P=${P/_p/-b}
-DESCRIPTION="design system for interactive fiction"
-HOMEPAGE="http://www.inform-fiction.org/"
-SRC_URI="http://mirror.ifarchive.org/if-archive/infocom/compilers/inform6/source/${MY_P}.tar.gz"
+EAPI=8
+
+MY_P="${P/_p/-b}"
+
+DESCRIPTION="Design system for interactive fiction"
+HOMEPAGE="https://www.inform-fiction.org/"
+SRC_URI="mirror://gentoo/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
LICENSE="Artistic-2 Inform"
SLOT="0"
KEYWORDS="amd64 ~ppc ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="emacs"
-PDEPEND="emacs? ( app-emacs/inform-mode )"
-S=${WORKDIR}/${MY_P}
+PDEPEND="emacs? ( app-emacs/inform-mode )"
src_install() {
default
+
dodoc VERSION
+
docinto tutorial
dodoc tutor/README tutor/*.inf
- mv "${ED}"/usr/share/${PN}/manual "${ED}"/usr/share/doc/${PF}/html
- rmdir "${ED}"/usr/share/inform/{include,module}
+
+ mv "${ED}"/usr/share/{${PN}/manual,doc/${PF}/html} || die
+ rmdir "${ED}"/usr/share/inform/{include,module} || die
+ rm "${ED}"/usr/share/inform/6.33b2/include/SmartCantGo.h || die #723062
}
diff --git a/dev-lang/inform/inform-6.35_p4.ebuild b/dev-lang/inform/inform-6.35_p4.ebuild
new file mode 100644
index 000000000000..3b193b357e92
--- /dev/null
+++ b/dev-lang/inform/inform-6.35_p4.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_P="${P/_p/-r}"
+
+DESCRIPTION="Design system for interactive fiction"
+HOMEPAGE="https://www.inform-fiction.org/"
+SRC_URI="https://ifarchive.org/if-archive/infocom/compilers/inform6/source/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="Artistic-2 Inform"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="emacs tools"
+# non-interactive tests use ruby, seem broken, and return true even on failure
+RESTRICT="test"
+
+RDEPEND="
+ tools? (
+ dev-lang/perl
+ dev-perl/DateTime
+ )"
+PDEPEND="emacs? ( app-emacs/inform-mode )"
+
+src_compile() {
+ tc-export CC
+
+ emake PREFIX="${EPREFIX}"/usr OPTS="${CFLAGS} ${CPPFLAGS}"
+}
+
+src_install() {
+ local emakeargs=(
+ PREFIX="${ED}"/usr
+ REAL_PREFIX="${EPREFIX}"/usr
+ MANDIR="${ED}"/usr/share/man/man1
+ PUNYDOCS="${ED}"/usr/share/doc/${PF}/punyinform
+ PUNYTESTS="${T}" # don't install tests
+ )
+
+ emake -j1 "${emakeargs[@]}" install
+
+ dodoc AUTHORS NEWS README.md VERSION docs/README*
+
+ use tools || rm "${ED}"/usr/bin/*blorb* || die
+
+ find "${ED}"/usr/share/doc \( -name Makefile -o -name 'custom.*' \) -delete || die
+}
diff --git a/dev-lang/inform/metadata.xml b/dev-lang/inform/metadata.xml
index 2396a6450fa3..20f18c5cfb1b 100644
--- a/dev-lang/inform/metadata.xml
+++ b/dev-lang/inform/metadata.xml
@@ -1,44 +1,14 @@
-
- games@gentoo.org
- Gentoo Games Project
-
-
-A Design System for Interactive Fiction
-
-Just as film might be called a form of literature which needs technology to be
-read (a cinema projector or a television set) and to be written (a camera),
-interactive fiction is read with the aid of a computer. On this analogy, Inform
-is a piece of software enabling any modern computer to be used as the camera, or
-the film studio, to create works of interactive fiction. To read the resulting
-works, you and your audience need only a simpler piece of software called an
-interpreter.
-
-In this genre of fiction, the computer describes a world and the player types
-instructions like touch the mirror for the protagonist character to follow; the
-computer responds by describing the result, and so on until a story is told.
-
-Interactive fiction emerged from the old-style "adventure game" (c.1975) and
-tends to be a playful genre, which must sometimes be teased out as though it were
-a cryptic crossword puzzle. But this doesn't prevent it from being an artistic
-medium, which has attracted (for instance) the former U.S. Poet Laureate, Robert
-Pinsky, and the novelists Thomas M. Disch and Michael Crichton. An interactive
-fiction is not a child's puzzle-book, with a maze on one page and a rebus on the
-next, but nor is it a novel. Neither pure interaction nor pure fiction, it lies
-in a strange and still largely unexplored land in between.
-
-Since its invention (by Graham Nelson in 1993), Inform has been used to design
-some hundreds of works of interactive fiction, in eight languages, reviewed in
-periodicals ranging in specialisation from XYZZYnews to The New York Times. It
-accounts for around ten thousand postings per year to Internet newsgroups.
-Commercially, Inform has been used as a multimedia games prototyping tool.
-Academically, it has turned up in syllabuses and seminars from computer science
-to theoretical architecture, and appears in books such as Cybertext: Perspectives
-on Ergodic Literature (E. J. Aarseth, Johns Hopkins Press, 1997). Having started
-as a revival of the then-disused Infocom adventure game format, the Z-Machine,
-Inform came full circle when it produced Infocom's only text game of the 1990s:
-Zork: The Undiscovered Underground, by Mike Berlyn and Marc Blank.
-
+
+ games@gentoo.org
+ Gentoo Games Project
+
+
+
+ DavidGriffith/inform6unix
+
diff --git a/dev-lang/rust-bin/Manifest b/dev-lang/rust-bin/Manifest
index 300d7e34671a..60ce3455137f 100644
--- a/dev-lang/rust-bin/Manifest
+++ b/dev-lang/rust-bin/Manifest
@@ -158,3 +158,35 @@ DIST rust-1.56.0-x86_64-unknown-linux-gnu.tar.xz 147894784 BLAKE2B 6cbdb8a82aba4
DIST rust-1.56.0-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B e0ed39db46b40631f69fa379a04ec37ba314587a4f081aa1f3251e01b7221ee8732b668cfcc4c24c1a3950f3f8dcfd542a1a73c603cea545b812d5d3a9527055 SHA512 3e9d0b159684a496e29c9e40af11f16f5ef5cadd8bc4852018a953310e77a4e29db6c14ffcc86198908aa4998550c83cfd3f2cc42e007122d56167d664776c44
DIST rust-1.56.0-x86_64-unknown-linux-musl.tar.xz 255010720 BLAKE2B 286e91cbf001de6f888bd82139e6711b32f03d45c599f26b01f60222d98c3521a1933b3b9b7f8c46fa79d481780dc8dc47e5e24985b721a6998d620b446c38b4 SHA512 fb5a914a25ef3cb39393207a75c40f1313740167062feb4cda4084e738f4e93a51624a8a9591acc18553cfd6e2e232984c8c84acc3dfd77fbe38b17085850881
DIST rust-1.56.0-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B bb7cfc775c1c44569276e687028e9a7ffac31577310052d9c354179a541ee13b0ca00a025e994e03ab17086d0abe6dda6845ed1cb10879425439c7651bdc9269 SHA512 cb23d98cfb1b59fcccaec575145b6f38846f3f49b16a3be199b06d6198b1db13720157ca65a01f6ef76abf742507bba39776d130f0fd03aa228acf5917457f7d
+DIST rust-1.56.1-aarch64-unknown-linux-gnu.tar.xz 223440940 BLAKE2B 9b4256943c4f5c8be83a81bbeb5f61d80b97c9925a2a2a47d8952530253f0e3e85363357a3cef9c425217a8b9572d4f55df3839640a24bf5b1e3c1dc8323f2b0 SHA512 1e612617206f0cb49ddc24352b8c8d344ac4613a71c59532e8df78189fd2ff13d71e4b1fa433e06e4af9b50292558b00f2118ffb8efff31359c28ac2fd5f5044
+DIST rust-1.56.1-aarch64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 008a4eebe92b3403f863ab7bbb023292d267c6084513104ed1d6f401a806abbe3c97a4346d2b01c2c78ea0efd44292fe563f5a7cde959e23b309f492d388d04f SHA512 09180d201ed196105651d7fbe009df96a333ef2326309428db0b10b2c7e0a8fd3e013a63b287e27e7a04441f70cd5ff8abb8a32ac109495d9c4aa4f80ba777f3
+DIST rust-1.56.1-aarch64-unknown-linux-musl.tar.xz 220094692 BLAKE2B b70936cfe4af636cee40bac700f043b1839bdd6f547eb3e9c781b51fb6ab426dded80ecd0c347a9c13d6930041a674f6b53a335a1be538d801eeebee0d98b3fd SHA512 ad9e0725bf570e04f5f439b231480b26a1cbd75eb770397ce2872895ff5705a5025eca06bfe6a60247b7071b0bc810bebe30f2ff99a68a252452e058c72d535e
+DIST rust-1.56.1-aarch64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B 8cf6a20edb6f4f53f6169f63031b259d02491a494c3110aecc791d80bc90aa9a7d90987e789946680b7ecac1bcf7f0a29c6208af5e29ac971c55a017252d99e2 SHA512 d4d4b04ea3c0f2c435186098b7889da008fbcf6205aff8e10d3b1c64e72aaa49520a9d781e9fc01c064d5bea471bb67af3a64e510ba4406151a52fdaa3640e77
+DIST rust-1.56.1-arm-unknown-linux-gnueabi.tar.xz 202697992 BLAKE2B e4f4e68792699aa5a52e53414529309aef309533c3955a38a1de6a32ba13e8f4742693c7ca9ad0c1609a8e827200a8abc23c706d8dab302e9ce67ba493b81fa5 SHA512 afef90ce4e438e1383025642541bc2cdb383f1716b51484ad8a0ec7df4ce0dd635362b892bd009bb389b537d4d56ff876fbc1544af52c8d26d7e39842ab8b99b
+DIST rust-1.56.1-arm-unknown-linux-gnueabi.tar.xz.asc 801 BLAKE2B 19808e687f5c24f7a4d63441fecfb80a2eed5c7cac448a34b2e049a6bf8656b9a145656066cb381ba0ba163a191c1a6fe99389fa0bb9e6937ef31f1514b8f0ae SHA512 7dc83b332ffe654ea811b4e0a8280cae7cac997592b8011a014ce8c13e33696e4a08fe062dad1e95b6577d41680281394b0d7757376a9fe7c91b6648b27673a5
+DIST rust-1.56.1-arm-unknown-linux-gnueabihf.tar.xz 199832312 BLAKE2B 547f24f17e99b365855d52fc4eeec60d268b1fd039a551266328d553b8a5f4159c7fa466b2eadd340a4e66bd184fecbef5422a9168bbbf51f256c84273f9b6cc SHA512 2c498d84fd6ac68f11e7751c6bf4ed694b53ba1605b7c77a9d25f0d443443268bdbc9f1cb68bf19af0b22c928c4f3e261baa2c7ed360561820cb4926a5e9d88b
+DIST rust-1.56.1-arm-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B ecd6e8641f899f3f3a05d7a9b8cdab820d0cc7f7a03cb37df9302d6f40cd4f1cafa4b78b0341289bfe798c8cb4778c471337563a5248e2e369dfb5cf82d1a57c SHA512 1848a554df193a2ac799fe021fef0f5ccd7288576b7370bb11202595c1706cfad30debccea90bc8678e83ab5050671e99de7b6bae2581935f669718f2dfebb60
+DIST rust-1.56.1-armv7-unknown-linux-gnueabihf.tar.xz 205164704 BLAKE2B fb2b1c21561e35898a70a590dcf917f38eb0771c2902fa8e58d6e2a5c634ade52c893027ea22f00be350c249ab5336135ac462bd3495c9722b17576f0e39b7f9 SHA512 fd890ad58a346896a282b78b5138523c0ac06d177f9ec7c6df5262f24e9226be0e0f7a5d67d93d989e73c9380c0292fb7b3c977627cb5b57f48c8621a9b1444a
+DIST rust-1.56.1-armv7-unknown-linux-gnueabihf.tar.xz.asc 801 BLAKE2B 810674d02b026ac9a768ed1bae893c62d25311c3316eae6a97e9b885b55a896acc286c1f039af040ebad8de80795eb3c8a2e476fc71e11485340240361b74800 SHA512 e1a0f9b8e22725634e96c42fe8e6f950836baf077ea578f099120c9eb77b8e075f6317df730849f3577d320253ce90b15a4a5803c47b33c340b104533f66aa76
+DIST rust-1.56.1-i686-unknown-linux-gnu.tar.xz 215749044 BLAKE2B 5aa6b03f77ba632ac43d972d70e40c4f81e40607ad691f789829ca307acb167e164978a11aade4e89a7b2a4ebaf76833c9f59de9c2b7f7387a3a726fd62da638 SHA512 56e9fa266c0cb668695c202c80b768aba9443b8e594530a3fbdef9ddaff6a37251eca5de584423b51fbee9f0b7712e5de59f6cd0892da4ed036fef5b9e74f27c
+DIST rust-1.56.1-i686-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 4b16a978a6b8a10fd23a280351f37bee1bba23f437e613d2059a3c735ee472700a82fab973c2570f36eab730d000c27c0356ffd68a1784cc3dacf3366b211916 SHA512 b702a4f8953867b205f872ca8c886ad6e45a0794a955c878f18fe087d6d3d181221fa44e87e6f9913a683139707ade2f084558ade7475438f3c2a25be009a715
+DIST rust-1.56.1-mips-unknown-linux-gnu.tar.xz 160905644 BLAKE2B 28fe08b7b80666d36c9f31f885778b3710a443ba2ca2b42d26ccb8172c6035e75badb49e0947f728648d68f1b10620088178568c5b9c847eb57e60233f3a91a8 SHA512 d805115ca963035bbefa619b20c756159983653746d1e7b6f239a9ea694fcc5fef39dda362c138a2951c739be8e3dc1c982a5317d646c332be9203408f80b43c
+DIST rust-1.56.1-mips-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B d9a6aa5a05dd6266007c779a16bdae01c23f34433e3e53e5937f67e0905bd59f67ee9d986a53f22d88e8f1a3eb5cf627314b5f1e504d55163f2bf18f206d8455 SHA512 3e32d3b95fbc95b41eee9bb95946f94336ad6edde58c2eba1a89674beaa544c00fb1de3ccfd7336109bae2b20ae590691062eeba198ed5ff0272db4a073aed55
+DIST rust-1.56.1-mips64-unknown-linux-gnuabi64.tar.xz 165745828 BLAKE2B c79f54e19d2cf8fe06ee796787880ef1946f737174a18e9b0ddd1b5b8770421c6d0339bc18970abc1c0cb18055c3ef78ff2fda51083175d875f38664a2a467c2 SHA512 be7c3d341f0217015ccb4c0221feec6612e10bac826e3b0d35c1a6cb09499ef1fe7ee1b44e131e91ae569a4b6ac02f533b7ee4f3b0a4c048c2a02f95d1f68797
+DIST rust-1.56.1-mips64-unknown-linux-gnuabi64.tar.xz.asc 801 BLAKE2B 97ea8d84db8d68d821d2bfec3bac1fff1e30554447bf5e9e5e1e27efce095b26ea5df8dc41087edccfbd2a57a58aa225423a597ee04c15c49fa8f74d59faf022 SHA512 91acab66759833b31d46f757d6d482dff3fc85b305a682aa8bcaecfbd0072df3cb4b0544b32c52ef79a6ed1096997172ecf35bc07e1ae6ff207b60f8ff6933d4
+DIST rust-1.56.1-mipsel-unknown-linux-gnu.tar.xz 165019404 BLAKE2B f452b04048250ad9e4bdd5797b4c0d0c45cc2e8be72b25b1e5b8421d8b6e240ed05e5573569dd0aea450ccc2fae6cb463814e7795af50477cdda86db807a19b1 SHA512 6b4ea1b864ce57d7796c1c268fff23184cf669de47f5b54775bff3062d7862f4a7d98f5ff84387b76b10088c36eda15a4073847687305b5e290c18ed47d2e11f
+DIST rust-1.56.1-mipsel-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 07c3a01b9daadc6ea952ec3a7110ee1a3c4dfddd69cd9e5339165f76c91902d634908ec0beb0dc0fb5bdfe42406901d0039f28861f6662a18555e289e8aab05d SHA512 b09a18fc1e4e2fe181895e41e62896bfcffc2ce46a03204455f9b7beb19771af4e79000d16ef07f7fa4a06eb018dbaf3d8b8b1385a4dfaa147ad2b693efe1334
+DIST rust-1.56.1-powerpc-unknown-linux-gnu.tar.xz 174988436 BLAKE2B b1adae448adff47283b0761c9923d78dd6cf2aa608e9f53f9e156f41cdf5c29358236222c65e3d6202f98a08c2199e9f3ea7cd5838c259f8ff07b0ea276aa408 SHA512 680e0a4e5b3cda2ea89c4ab35a2fcf6210f2b829f284090ba5c793d9e76cb58f7cf6f60dcfcf1e26eba836690fa48be40b902a4f3599446be7be98b57d8ea20b
+DIST rust-1.56.1-powerpc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 10f35bc23dd39a1e3f924e472ad0a0dfff4b30060c5b41868688541a80da7d47c5ea3a16684fe980fb83e8c72b6b6ca7d6f7c349d9c869f8300f042be2cc8e4a SHA512 765f0f9ef47568b8bba751b788ff9baa837c7d5e25da52e18b99ae6cb613ce19a725b7fdd6d6adaada18c24fdb308f73b18ad13b6abeaf34be91748fe78173b6
+DIST rust-1.56.1-powerpc64-unknown-linux-gnu.tar.xz 186458276 BLAKE2B 3510ca7e2356f2101dc8e6a22de2d68fe48d4c1892e26b23eab18d7f0f1218499e41d325be267fb0284369567243c7e2fae9bb1ba62035fea1ad1c8ee1d57cba SHA512 34db35c1543239a4641eba4ee7d5435ac5383863fce843163ce1fa22c7aeb48199a696ccac199719d308eacd9c626922cf50a918869ae88cc2ae63dd0de9f5b5
+DIST rust-1.56.1-powerpc64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 5755d15be9df74576abf0ec4db1ead6a7bf3069d8ce2edcb834da971ad0dadc0a41fecddecbf06b653b4ca71dbb799bd7a02126a00c294c0f0c2b9fb76fc69ab SHA512 27a57ad6aade3ba6453f3e98b8c456bea61ce9ccc6d8682721edad3b7747f2aac8dba87c419db2c5e049e005e3ccc708cc9a5f1d84e6a7daf6d90ec2d39c7bc5
+DIST rust-1.56.1-powerpc64le-unknown-linux-gnu.tar.xz 196128248 BLAKE2B 7e5e5cb32496f2aa5f2dfbca37c53db92741ab7e56ee42c092046a96effead9819c906d22552159ddee9d7fbc4cf98b6e02aa53d39a3e58bc28a145304bb80d5 SHA512 603e9232879e5b9f79f91807f64e088cf657449bd8884c37218585d78c8b6e1919ac8f0aa7b6d38cbe844a89f837170a1bb8e0b4062c8b4aa9cca457eff89bdf
+DIST rust-1.56.1-powerpc64le-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 7e0822d38d7a6de478441c97d0f0d7506a750cb2bbe8c80f3bd210e74c2b2a0523b417c6b3070ec1f0131e0b9375f7a10a1b97588aaf8a1a73dc4ba110237c2f SHA512 cc5eca73c067b0802081c2469857d85a2853a1dd7a42a604400c150e91df1a0baae0a4a612f9a3e11fdc5de745598ae160f1606787ef251186db9b1f121cac3d
+DIST rust-1.56.1-riscv64gc-unknown-linux-gnu.tar.xz 192592824 BLAKE2B 77d786d652978b7a6c93c290b5be49e69986858eb388e8325e40b7bdf5659b4e8bdaeef1b2654955ca0a4cb66fab83a788db2299fda9938a281ff534dd901191 SHA512 7d2431b173b48f8411a7e10d4c3b8880ded7330b14709d847f50b0b974f2cc261c942d729b663b86f2b4b637dd7c30f6d10976da037d0d4215c798407d418efe
+DIST rust-1.56.1-riscv64gc-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B 210d69dc7c7cfba3ca4ecc8070e2ab193ce6abfe927779f3a55fe30b6cd6c588a2e4c8c18dcfa2014830c087fe97896fb1907b2a639c953cb6056d49107e34a9 SHA512 774f917e1145db0c9164d97937d486916334ccfb8dcb6bf859cfb49585f82e34185e755a105b7b811e74e6a3d629e3343d7620094b1d6aa43428525508368871
+DIST rust-1.56.1-s390x-unknown-linux-gnu.tar.xz 194367060 BLAKE2B 33820048a10e83754b09bb8c99ac876fd9dd7a36377dfc6802b906b1fab4669a711d1ac4e2b59e8cba3ae0ad3cd96d10fb00cb1324e8cd2ebde5d0805a58861a SHA512 aa0231187d3f096bfb223707e08262ff79f1b6fb9969814fc2385d3a134efc456bb43030723e614163ff27e6d6a779d27b77ad7ed05c80ab24b22fd10f9bc183
+DIST rust-1.56.1-s390x-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B c3c5e9678c61a1ec80aca4620d13bbe2164bb648895d25c90e61ac4a2b31c059445cb851417fa3477906cb5ea52c2318f6b6974916d59a3ab41444d419edbb64 SHA512 a5372dd48b9b65a9c4aa74dfe6f5294b1fe12149d6fdc15a6b23b132c8b05d634211dd9a4be3a916aecc7bfbc6710ea1116681876d547ecc4c1de6958fd6f26e
+DIST rust-1.56.1-x86_64-unknown-linux-gnu.tar.xz 147853396 BLAKE2B 1d1318c9f076f1488d94eb345f01b511ed956b29511fa64706603aa141a18b1a937459b95f1354507a31ef8dc795ebff06f0006431088792e629a0534b9beabf SHA512 129c619c3a27b6be903b953efa033731b29436cf83c5229ad1137d2d26571379e5d6e2b3a5704e3002547560e47ae1fa7b6c98990bd2ea482299ad94099bb4b0
+DIST rust-1.56.1-x86_64-unknown-linux-gnu.tar.xz.asc 801 BLAKE2B ff984dfa092ff3c1c5a3d1a5849b8dc5807c5885dff5eca020d0b1c404484197adb8e1ea5802886b15e2b8846d0f3aa4bb161e49dc39adc151ca7d57a988ff24 SHA512 53b57ceaf621248fff020de75434c8fe60657335852c88d14ea399c7935206caaff61ce159cb2f487510336981aa1d839b91153b9764ea21ced1fb6455a16bdd
+DIST rust-1.56.1-x86_64-unknown-linux-musl.tar.xz 255304020 BLAKE2B c379fb419b6fa1c73b9c426a4f6e46328ce2ac1beddffb1ed25922b3387147eaf0217d3904ccc14ce2b97952f1035760264ae5fc7a575f92bea84d9581d8b315 SHA512 b26d4b9f6396be87aadfbb4777d91c80cfe656570e2bf1a0350788ca45caa7178d4b91966e77c8cc4873e017fd99649ae6a82abad64b32a4eb1f5dfb3a20d45e
+DIST rust-1.56.1-x86_64-unknown-linux-musl.tar.xz.asc 801 BLAKE2B aed2703ef8cdcdf076d6538fb968f465c0a884b4c11916470324116e56a5b93fd7118b8b167ab19007ac71201044789f58de3a7ee1b60dffc47c3d123db1b4a5 SHA512 32c042982da7bde6c36bcb33fd3d9ebcb469667c880214b703e7b2cf89467e7e2bf37282cbc128d0207b9e433b7f2bd028e0d2614b657b544a552aa401bc98c8
diff --git a/dev-lang/rust-bin/rust-bin-1.56.1.ebuild b/dev-lang/rust-bin/rust-bin-1.56.1.ebuild
new file mode 100644
index 000000000000..64f7fa3d9544
--- /dev/null
+++ b/dev-lang/rust-bin/rust-bin-1.56.1.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit bash-completion-r1 prefix rust-toolchain toolchain-funcs verify-sig multilib-minimal
+
+MY_P="rust-${PV}"
+
+DESCRIPTION="Systems programming language from Mozilla"
+HOMEPAGE="https://www.rust-lang.org/"
+SRC_URI="$(rust_all_arch_uris ${MY_P})"
+
+LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
+SLOT="stable"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="clippy cpu_flags_x86_sse2 doc prefix rls rustfmt"
+
+DEPEND=""
+RDEPEND=">=app-eselect/eselect-rust-20190311"
+BDEPEND="
+ prefix? ( dev-util/patchelf )
+ verify-sig? ( app-crypt/openpgp-keys-rust )
+"
+
+REQUIRED_USE="x86? ( cpu_flags_x86_sse2 )"
+
+QA_PREBUILT="
+ opt/${P}/bin/.*
+ opt/${P}/lib/.*.so
+ opt/${P}/libexec/.*
+ opt/${P}/lib/rustlib/.*/bin/.*
+ opt/${P}/lib/rustlib/.*/lib/.*
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/rust.asc
+
+pkg_pretend() {
+ if [[ "$(tc-is-softfloat)" != "no" ]] && [[ ${CHOST} == armv7* ]]; then
+ die "${CHOST} is not supported by upstream Rust. You must use a hard float version."
+ fi
+}
+
+src_unpack() {
+ verify-sig_src_unpack
+ mv "${WORKDIR}/${MY_P}-$(rust_abi)" "${S}" || die
+}
+
+patchelf_for_bin() {
+ local filetype=$(file -b ${1})
+ if [[ ${filetype} == *ELF*interpreter* ]]; then
+ einfo "${1}'s interpreter changed"
+ patchelf ${1} --set-interpreter ${2} || die
+ elif [[ ${filetype} == *script* ]]; then
+ hprefixify ${1}
+ fi
+}
+
+multilib_src_install() {
+ if multilib_is_native_abi; then
+
+ # start native abi install
+ pushd "${S}" >/dev/null || die
+ local analysis std
+ analysis="$(grep 'analysis' ./components)"
+ std="$(grep 'std' ./components)"
+ local components="rustc,cargo,${std}"
+ use doc && components="${components},rust-docs"
+ use clippy && components="${components},clippy-preview"
+ use rls && components="${components},rls-preview,${analysis}"
+ use rustfmt && components="${components},rustfmt-preview"
+ ./install.sh \
+ --components="${components}" \
+ --disable-verify \
+ --prefix="${ED}/opt/${P}" \
+ --mandir="${ED}/opt/${P}/man" \
+ --disable-ldconfig \
+ || die
+
+ if use prefix; then
+ local interpreter=$(patchelf --print-interpreter ${EPREFIX}/bin/bash)
+ ebegin "Changing interpreter to ${interpreter} for Gentoo prefix at ${ED}/opt/${P}/bin"
+ find "${ED}/opt/${P}/bin" -type f -print0 | \
+ while IFS= read -r -d '' filename; do
+ patchelf_for_bin ${filename} ${interpreter} \; || die
+ done
+ eend $?
+ fi
+
+ local symlinks=(
+ cargo
+ rustc
+ rustdoc
+ rust-gdb
+ rust-gdbgui
+ rust-lldb
+ )
+
+ use clippy && symlinks+=( clippy-driver cargo-clippy )
+ use rls && symlinks+=( rls )
+ use rustfmt && symlinks+=( rustfmt cargo-fmt )
+
+ einfo "installing eselect-rust symlinks and paths"
+ local i
+ for i in "${symlinks[@]}"; do
+ # we need realpath on /usr/bin/* symlink return version-appended binary path.
+ # so /usr/bin/rustc should point to /opt/rust-bin-/bin/rustc-
+ local ver_i="${i}-bin-${PV}"
+ ln -v "${ED}/opt/${P}/bin/${i}" "${ED}/opt/${P}/bin/${ver_i}"
+ dosym "../../opt/${P}/bin/${ver_i}" "/usr/bin/${ver_i}"
+ done
+
+ # symlinks to switch components to active rust in eselect
+ dosym "../../../opt/${P}/lib" "/usr/lib/rust/lib-bin-${PV}"
+ dosym "../../../opt/${P}/man" "/usr/lib/rust/man-bin-${PV}"
+ dosym "../../opt/${P}/lib/rustlib" "/usr/lib/rustlib-bin-${PV}"
+ dosym "../../../opt/${P}/share/doc/rust" "/usr/share/doc/${P}"
+
+ # musl logic can be improved a bit, but fine as is for now
+ cat <<-_EOF_ > "${T}/50${P}"
+ LDPATH="${EPREFIX}/usr/lib/rust/lib"
+ MANPATH="${EPREFIX}/usr/lib/rust/man"
+ $(use amd64 && usex elibc_musl 'CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
+ $(use arm64 && usex elibc_musl 'CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
+ _EOF_
+ doenvd "${T}/50${P}"
+
+ # note: eselect-rust adds EROOT to all paths below
+ cat <<-_EOF_ > "${T}/provider-${P}"
+ /usr/bin/cargo
+ /usr/bin/rustdoc
+ /usr/bin/rust-gdb
+ /usr/bin/rust-gdbgui
+ /usr/bin/rust-lldb
+ /usr/lib/rustlib
+ /usr/lib/rust/lib
+ /usr/lib/rust/man
+ /usr/share/doc/rust
+ _EOF_
+
+ if use clippy; then
+ echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
+ fi
+ if use rls; then
+ echo /usr/bin/rls >> "${T}/provider-${P}"
+ fi
+ if use rustfmt; then
+ echo /usr/bin/rustfmt >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
+ fi
+
+ insinto /etc/env.d/rust
+ doins "${T}/provider-${P}"
+ popd >/dev/null || die
+ #end native abi install
+
+ else
+ local rust_target
+ rust_target="$(rust_abi $(get_abi_CHOST ${v##*.}))"
+ dodir "/opt/${P}/lib/rustlib"
+ cp -vr "${WORKDIR}/rust-${PV}-${rust_target}/rust-std-${rust_target}/lib/rustlib/${rust_target}"\
+ "${ED}/opt/${P}/lib/rustlib" || die
+ fi
+
+ # BUG: installs x86_64 binary on other arches
+ rm -f "${ED}/opt/${P}/lib/rustlib/"*/bin/rust-llvm-dwp || die
+}
+
+pkg_postinst() {
+ eselect rust update
+
+ elog "Rust installs a helper script for calling GDB now,"
+ elog "for your convenience it is installed under /usr/bin/rust-gdb-bin-${PV}."
+
+ if has_version app-editors/emacs; then
+ elog "install app-emacs/rust-mode to get emacs support for rust."
+ fi
+
+ if has_version app-editors/gvim || has_version app-editors/vim; then
+ elog "install app-vim/rust-vim to get vim support for rust."
+ fi
+}
+
+pkg_postrm() {
+ eselect rust cleanup
+}
diff --git a/dev-lang/rust/Manifest b/dev-lang/rust/Manifest
index da21b720d380..b029d642ad79 100644
--- a/dev-lang/rust/Manifest
+++ b/dev-lang/rust/Manifest
@@ -168,3 +168,5 @@ DIST rustc-1.55.0-src.tar.xz 117197580 BLAKE2B 8d9739ce7571146aee0e07c6287de9a8c
DIST rustc-1.55.0-src.tar.xz.asc 801 BLAKE2B 5b4ba951ed7ed56c7bd9c71df89cc1e966485d77411016ad71a811ad8e21b88295deec08f24f65afdb163e69ee0fe19288bcc64d18fe272bea51319caddb66b2 SHA512 9bc858ce26cc069cafaefe6165cb15a07e144ad6d6312bcbe115a0a51fec6e281d3e8a7977e958d7fa10e77139548d57396b1552a2802ec74b7bc6ac641e7ae4
DIST rustc-1.56.0-src.tar.xz 121802340 BLAKE2B aa471fd0785d6ceb75d4b661d466a450c960f6df19018a74732f2bab6ec176ea95e247e7cd44d550345bfa723bfc1b6088f0436287bed3752558654198856003 SHA512 2daa365524b47dcc48e49a0e9c8c45988af44c0845e2695dc5053f18e768e49acf3dbdd77f808dbf260546ef608eb47c593544012dd05675cb7e6b6223900315
DIST rustc-1.56.0-src.tar.xz.asc 801 BLAKE2B 75bd829e457b6cefb2fcdfd04ef835487c295420d9d9c8fd7af800b405fe1113c14be01ad3540fea7ed7c743397e337ce1d3b0e757c73292d7f342f352e89791 SHA512 e81cf3d8b1c97803138d4487c32c1463526d53513112b4fa170a81ba947280613fb3260b43d0629a45c859519ea094e467ce0cc0def722577febc3cc34ce5ed8
+DIST rustc-1.56.1-src.tar.xz 121798264 BLAKE2B 09677b0332022f28a0d80949a6735929dbf64276f7eb57195d8c33e6c80f13c903432ff77d8834093ab551677618fb1d385f2300e2b1b4c064f9c245c696be32 SHA512 193468e211cde9ebc5f6e30b8e3733b79bd8710fe6dd45c7ed8d4392f91010d30466787afd4d0b2041cd7dd994924fee8ad111048824e248bd994959e55bf15f
+DIST rustc-1.56.1-src.tar.xz.asc 801 BLAKE2B 70ed1c26971e864aa6cc9b05eb52c4a140d0d0cccb3ff66d4a13e1b1dbac958c5369f76524c4702311566ed26aff635f5e3d35d9da71d96e070f5f0e978dc2ba SHA512 f997e7962ef8b283c19c97d8b898f3642f1a58c89a9cc5470cf88682263a42e2054d670c12bf93c41e81edf8324a5b51453f402a74bccb7744c7f463cf689aa8
diff --git a/dev-lang/rust/rust-1.56.1.ebuild b/dev-lang/rust/rust-1.56.1.ebuild
new file mode 100644
index 000000000000..59c50dac02da
--- /dev/null
+++ b/dev-lang/rust/rust-1.56.1.ebuild
@@ -0,0 +1,683 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..10} )
+
+inherit bash-completion-r1 check-reqs estack flag-o-matic llvm multiprocessing \
+ multilib-build python-any-r1 rust-toolchain toolchain-funcs verify-sig
+
+if [[ ${PV} = *beta* ]]; then
+ betaver=${PV//*beta}
+ BETA_SNAPSHOT="${betaver:0:4}-${betaver:4:2}-${betaver:6:2}"
+ MY_P="rustc-beta"
+ SLOT="beta/${PV}"
+ SRC="${BETA_SNAPSHOT}/rustc-beta-src.tar.xz -> rustc-${PV}-src.tar.xz"
+else
+ ABI_VER="$(ver_cut 1-2)"
+ SLOT="stable/${ABI_VER}"
+ MY_P="rustc-${PV}"
+ SRC="${MY_P}-src.tar.xz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+fi
+
+RUST_STAGE0_VERSION="1.$(($(ver_cut 2) - 1)).0"
+
+DESCRIPTION="Systems programming language from Mozilla"
+HOMEPAGE="https://www.rust-lang.org/"
+
+SRC_URI="
+ https://static.rust-lang.org/dist/${SRC}
+ verify-sig? ( https://static.rust-lang.org/dist/${SRC}.asc )
+ !system-bootstrap? ( $(rust_all_arch_uris rust-${RUST_STAGE0_VERSION}) )
+"
+
+# keep in sync with llvm ebuild of the same version as bundled one.
+ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430
+ NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore )
+ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
+LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?}
+
+LICENSE="|| ( MIT Apache-2.0 ) BSD-1 BSD-2 BSD-4 UoI-NCSA"
+
+IUSE="clippy cpu_flags_x86_sse2 debug doc miri nightly parallel-compiler rls rustfmt system-bootstrap system-llvm test wasm ${ALL_LLVM_TARGETS[*]}"
+
+# Please keep the LLVM dependency block separate. Since LLVM is slotted,
+# we need to *really* make sure we're not pulling more than one slot
+# simultaneously.
+
+# How to use it:
+# List all the working slots in LLVM_VALID_SLOTS, newest first.
+LLVM_VALID_SLOTS=( 13 )
+LLVM_MAX_SLOT="${LLVM_VALID_SLOTS[0]}"
+
+# splitting usedeps needed to avoid CI/pkgcheck's UncheckableDep limitation
+# (-) usedep needed because we may build with older llvm without that target
+LLVM_DEPEND="|| ( "
+for _s in ${LLVM_VALID_SLOTS[@]}; do
+ LLVM_DEPEND+=" ( "
+ for _x in ${ALL_LLVM_TARGETS[@]}; do
+ LLVM_DEPEND+="
+ ${_x}? ( sys-devel/llvm:${_s}[${_x}(-)] )"
+ done
+ LLVM_DEPEND+=" )"
+done
+unset _s _x
+LLVM_DEPEND+=" )
+ =sys-devel/gcc-4.7
+ >=sys-devel/clang-3.5
+ )
+ system-bootstrap? ( ${BOOTSTRAP_DEPEND} )
+ !system-llvm? (
+ >=dev-util/cmake-3.13.4
+ dev-util/ninja
+ )
+ test? ( sys-devel/gdb )
+ verify-sig? ( app-crypt/openpgp-keys-rust )
+"
+
+DEPEND="
+ >=app-arch/xz-utils-5.2
+ net-misc/curl:=[http2,ssl]
+ sys-libs/zlib:=
+ dev-libs/openssl:0=
+ elibc_musl? ( sys-libs/libunwind:= )
+ system-llvm? ( ${LLVM_DEPEND} )
+"
+
+# we need to block older versions due to layout changes.
+RDEPEND="${DEPEND}
+ app-eselect/eselect-rust
+ !/dev/null) )
+ rustc_version=${rustc_version[0]#rust-bin-}
+ rustc_version=${rustc_version#rust-}
+
+ [[ -z "${rustc_version}" ]] && die "Failed to determine rust version, check 'eselect rust' output"
+
+ if ver_test "${rustc_version}" -lt "${rustc_wanted}" ; then
+ eerror "Rust >=${rustc_wanted} is required"
+ eerror "please run 'eselect rust' and set correct rust version"
+ die "selected rust version is too old"
+ elif ver_test "${rustc_version}" -ge "${rustc_toonew}" ; then
+ eerror "Rust <${rustc_toonew} is required"
+ eerror "please run 'eselect rust' and set correct rust version"
+ die "selected rust version is too new"
+ else
+ einfo "Using rust ${rustc_version} to build"
+ fi
+}
+
+pre_build_checks() {
+ local M=4096
+ # multiply requirements by 1.5 if we are doing x86-multilib
+ if use amd64; then
+ M=$(( $(usex abi_x86_32 15 10) * ${M} / 10 ))
+ fi
+ M=$(( $(usex clippy 128 0) + ${M} ))
+ M=$(( $(usex miri 128 0) + ${M} ))
+ M=$(( $(usex rls 512 0) + ${M} ))
+ M=$(( $(usex rustfmt 256 0) + ${M} ))
+ # add 2G if we compile llvm and 256M per llvm_target
+ if ! use system-llvm; then
+ M=$(( 2048 + ${M} ))
+ local ltarget
+ for ltarget in ${ALL_LLVM_TARGETS[@]}; do
+ M=$(( $(usex ${ltarget} 256 0) + ${M} ))
+ done
+ fi
+ M=$(( $(usex wasm 256 0) + ${M} ))
+ M=$(( $(usex debug 2 1) * ${M} ))
+ eshopts_push -s extglob
+ if is-flagq '-g?(gdb)?([1-9])'; then
+ M=$(( 15 * ${M} / 10 ))
+ fi
+ eshopts_pop
+ M=$(( $(usex system-bootstrap 0 1024) + ${M} ))
+ M=$(( $(usex doc 256 0) + ${M} ))
+ CHECKREQS_DISK_BUILD=${M}M check-reqs_pkg_${EBUILD_PHASE}
+}
+
+llvm_check_deps() {
+ has_version -r "sys-devel/llvm:${LLVM_SLOT}[${LLVM_TARGET_USEDEPS// /,}]"
+}
+
+pkg_pretend() {
+ pre_build_checks
+}
+
+pkg_setup() {
+ pre_build_checks
+ python-any-r1_pkg_setup
+
+ export LIBGIT2_NO_PKG_CONFIG=1 #749381
+
+ use system-bootstrap && bootstrap_rust_version_check
+
+ if use system-llvm; then
+ llvm_pkg_setup
+
+ local llvm_config="$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
+ export LLVM_LINK_SHARED=1
+ export RUSTFLAGS="${RUSTFLAGS} -Lnative=$("${llvm_config}" --libdir)"
+ fi
+}
+
+src_prepare() {
+ if ! use system-bootstrap; then
+ local rust_stage0_root="${WORKDIR}"/rust-stage0
+ local rust_stage0="rust-${RUST_STAGE0_VERSION}-$(rust_abi)"
+
+ "${WORKDIR}/${rust_stage0}"/install.sh --disable-ldconfig \
+ --without=rust-docs --destdir="${rust_stage0_root}" --prefix=/ || die
+ fi
+
+ default
+}
+
+src_configure() {
+ local rust_target="" rust_targets="" arch_cflags
+
+ # Collect rust target names to compile standard libs for all ABIs.
+ for v in $(multilib_get_enabled_abi_pairs); do
+ rust_targets="${rust_targets},\"$(rust_abi $(get_abi_CHOST ${v##*.}))\""
+ done
+ if use wasm; then
+ rust_targets="${rust_targets},\"wasm32-unknown-unknown\""
+ if use system-llvm; then
+ # un-hardcode rust-lld linker for this target
+ # https://bugs.gentoo.org/715348
+ sed -i '/linker:/ s/rust-lld/wasm-ld/' compiler/rustc_target/src/spec/wasm_base.rs || die
+ fi
+ fi
+ rust_targets="${rust_targets#,}"
+
+ local tools="\"cargo\","
+ if use clippy; then
+ tools="\"clippy\",$tools"
+ fi
+ if use miri; then
+ tools="\"miri\",$tools"
+ fi
+ if use rls; then
+ tools="\"rls\",\"analysis\",\"src\",$tools"
+ fi
+ if use rustfmt; then
+ tools="\"rustfmt\",$tools"
+ fi
+
+ local rust_stage0_root
+ if use system-bootstrap; then
+ local printsysroot
+ printsysroot="$(rustc --print sysroot || die "Can't determine rust's sysroot")"
+ rust_stage0_root="${printsysroot}"
+ else
+ rust_stage0_root="${WORKDIR}"/rust-stage0
+ fi
+ # in case of prefix it will be already prefixed, as --print sysroot returns full path
+ [[ -d ${rust_stage0_root} ]] || die "${rust_stage0_root} is not a directory"
+
+ rust_target="$(rust_abi)"
+
+ cat <<- _EOF_ > "${S}"/config.toml
+ changelog-seen = 2
+ [llvm]
+ download-ci-llvm = false
+ optimize = $(toml_usex !debug)
+ release-debuginfo = $(toml_usex debug)
+ assertions = $(toml_usex debug)
+ ninja = true
+ targets = "${LLVM_TARGETS// /;}"
+ experimental-targets = ""
+ link-shared = $(toml_usex system-llvm)
+ [build]
+ build-stage = 2
+ test-stage = 2
+ doc-stage = 2
+ build = "${rust_target}"
+ host = ["${rust_target}"]
+ target = [${rust_targets}]
+ cargo = "${rust_stage0_root}/bin/cargo"
+ rustc = "${rust_stage0_root}/bin/rustc"
+ rustfmt = "${rust_stage0_root}/bin/rustfmt"
+ docs = $(toml_usex doc)
+ compiler-docs = false
+ submodules = false
+ python = "${EPYTHON}"
+ locked-deps = true
+ vendor = true
+ extended = true
+ tools = [${tools}]
+ verbose = 2
+ sanitizers = false
+ profiler = false
+ cargo-native-static = false
+ [install]
+ prefix = "${EPREFIX}/usr/lib/${PN}/${PV}"
+ sysconfdir = "etc"
+ docdir = "share/doc/rust"
+ bindir = "bin"
+ libdir = "lib"
+ mandir = "share/man"
+ [rust]
+ # https://github.com/rust-lang/rust/issues/54872
+ codegen-units-std = 1
+ optimize = true
+ debug = $(toml_usex debug)
+ debug-assertions = $(toml_usex debug)
+ debug-assertions-std = $(toml_usex debug)
+ debuginfo-level = $(usex debug 2 0)
+ debuginfo-level-rustc = $(usex debug 2 0)
+ debuginfo-level-std = $(usex debug 2 0)
+ debuginfo-level-tools = $(usex debug 2 0)
+ debuginfo-level-tests = 0
+ backtrace = true
+ incremental = false
+ default-linker = "$(tc-getCC)"
+ parallel-compiler = $(toml_usex parallel-compiler)
+ channel = "$(usex nightly nightly stable)"
+ description = "gentoo"
+ rpath = false
+ verbose-tests = true
+ optimize-tests = $(toml_usex !debug)
+ codegen-tests = true
+ dist-src = false
+ remap-debuginfo = true
+ lld = $(usex system-llvm false $(toml_usex wasm))
+ # only deny warnings if doc+wasm are NOT requested, documenting stage0 wasm std fails without it
+ # https://github.com/rust-lang/rust/issues/74976
+ # https://github.com/rust-lang/rust/issues/76526
+ deny-warnings = $(usex wasm $(usex doc false true) true)
+ backtrace-on-ice = true
+ jemalloc = false
+ [dist]
+ src-tarball = false
+ compression-formats = ["gz"]
+ _EOF_
+
+ for v in $(multilib_get_enabled_abi_pairs); do
+ rust_target=$(rust_abi $(get_abi_CHOST ${v##*.}))
+ arch_cflags="$(get_abi_CFLAGS ${v##*.})"
+
+ cat <<- _EOF_ >> "${S}"/config.env
+ CFLAGS_${rust_target}=${arch_cflags}
+ _EOF_
+
+ cat <<- _EOF_ >> "${S}"/config.toml
+ [target.${rust_target}]
+ cc = "$(tc-getBUILD_CC)"
+ cxx = "$(tc-getBUILD_CXX)"
+ linker = "$(tc-getCC)"
+ ar = "$(tc-getAR)"
+ _EOF_
+ # librustc_target/spec/linux_musl_base.rs sets base.crt_static_default = true;
+ if use elibc_musl; then
+ cat <<- _EOF_ >> "${S}"/config.toml
+ crt-static = false
+ _EOF_
+ fi
+ if use system-llvm; then
+ cat <<- _EOF_ >> "${S}"/config.toml
+ llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
+ _EOF_
+ fi
+ done
+ if use wasm; then
+ cat <<- _EOF_ >> "${S}"/config.toml
+ [target.wasm32-unknown-unknown]
+ linker = "$(usex system-llvm lld rust-lld)"
+ _EOF_
+ fi
+
+ if [[ -n ${I_KNOW_WHAT_I_AM_DOING_CROSS} ]]; then # whitespace intentionally shifted below
+ # experimental cross support
+ # discussion: https://bugs.gentoo.org/679878
+ # TODO: c*flags, clang, system-llvm, cargo.eclass target support
+ # it would be much better if we could split out stdlib
+ # complilation to separate ebuild and abuse CATEGORY to
+ # just install to /usr/lib/rustlib/
+
+ # extra targets defined as a bash array
+ # spec format: ::
+ # best place would be /etc/portage/env/dev-lang/rust
+ # Example:
+ # RUST_CROSS_TARGETS=(
+ # "AArch64:aarch64-unknown-linux-gnu:aarch64-unknown-linux-gnu"
+ # )
+ # no extra hand holding is done, no target transformations, all
+ # values are passed as-is with just basic checks, so it's up to user to supply correct values
+ # valid rust targets can be obtained with
+ # rustc --print target-list
+ # matching cross toolchain has to be installed
+ # matching LLVM_TARGET has to be enabled for both rust and llvm (if using system one)
+ # only gcc toolchains installed with crossdev are checked for now.
+
+ # BUG: we can't pass host flags to cross compiler, so just filter for now
+ # BUG: this should be more fine-grained.
+ filter-flags '-mcpu=*' '-march=*' '-mtune=*'
+
+ local cross_target_spec
+ for cross_target_spec in "${RUST_CROSS_TARGETS[@]}";do
+ # extracts first element form ::
+ local cross_llvm_target="${cross_target_spec%%:*}"
+ # extracts toolchain triples, :
+ local cross_triples="${cross_target_spec#*:}"
+ # extracts first element after before : separator
+ local cross_rust_target="${cross_triples%%:*}"
+ # extracts last element after : separator
+ local cross_toolchain="${cross_triples##*:}"
+ use llvm_targets_${cross_llvm_target} || die "need llvm_targets_${cross_llvm_target} target enabled"
+ command -v ${cross_toolchain}-gcc > /dev/null 2>&1 || die "need ${cross_toolchain} cross toolchain"
+
+ cat <<- _EOF_ >> "${S}"/config.toml
+ [target.${cross_rust_target}]
+ cc = "${cross_toolchain}-gcc"
+ cxx = "${cross_toolchain}-g++"
+ linker = "${cross_toolchain}-gcc"
+ ar = "${cross_toolchain}-ar"
+ _EOF_
+ if use system-llvm; then
+ cat <<- _EOF_ >> "${S}"/config.toml
+ llvm-config = "$(get_llvm_prefix "${LLVM_MAX_SLOT}")/bin/llvm-config"
+ _EOF_
+ fi
+ if [[ "${cross_toolchain}" == *-musl* ]]; then
+ cat <<- _EOF_ >> "${S}"/config.toml
+ musl-root = "$(${cross_toolchain}-gcc -print-sysroot)/usr"
+ _EOF_
+ fi
+
+ # append cross target to "normal" target list
+ # example 'target = ["powerpc64le-unknown-linux-gnu"]'
+ # becomes 'target = ["powerpc64le-unknown-linux-gnu","aarch64-unknown-linux-gnu"]'
+
+ rust_targets="${rust_targets},\"${cross_rust_target}\""
+ sed -i "/^target = \[/ s#\[.*\]#\[${rust_targets}\]#" config.toml || die
+
+ ewarn
+ ewarn "Enabled ${cross_rust_target} rust target"
+ ewarn "Using ${cross_toolchain} cross toolchain"
+ ewarn
+ if ! has_version -b 'sys-devel/binutils[multitarget]' ; then
+ ewarn "'sys-devel/binutils[multitarget]' is not installed"
+ ewarn "'strip' will be unable to strip cross libraries"
+ ewarn "cross targets will be installed with full debug information"
+ ewarn "enable 'multitarget' USE flag for binutils to be able to strip object files"
+ ewarn
+ ewarn "Alternatively llvm-strip can be used, it supports stripping any target"
+ ewarn "define STRIP=\"llvm-strip\" to use it (experimental)"
+ ewarn
+ fi
+ done
+ fi # I_KNOW_WHAT_I_AM_DOING_CROSS
+
+ einfo "Rust configured with the following flags:"
+ echo
+ echo RUSTFLAGS="${RUSTFLAGS:-}"
+ echo RUSTFLAGS_BOOTSTRAP="${RUSTFLAGS_BOOTSTRAP:-}"
+ echo RUSTFLAGS_NOT_BOOTSTRAP="${RUSTFLAGS_NOT_BOOTSTRAP:-}"
+ env | grep "CARGO_TARGET_.*_RUSTFLAGS="
+ cat "${S}"/config.env || die
+ echo
+ einfo "config.toml contents:"
+ cat "${S}"/config.toml || die
+ echo
+}
+
+src_compile() {
+ # we need \n IFS to have config.env with spaces loaded properly. #734018
+ (
+ IFS=$'\n'
+ env $(cat "${S}"/config.env) RUST_BACKTRACE=1\
+ "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
+ )
+}
+
+src_test() {
+ # https://rustc-dev-guide.rust-lang.org/tests/intro.html
+
+ # those are basic and codegen tests.
+ local tests=(
+ codegen
+ codegen-units
+ compile-fail
+ incremental
+ mir-opt
+ pretty
+ run-make
+ )
+
+ # fails if llvm is not built with ALL targets.
+ # and known to fail with system llvm sometimes.
+ use system-llvm || tests+=( assembly )
+
+ # fragile/expensive/less important tests
+ # or tests that require extra builds
+ # TODO: instead of skipping, just make some nonfatal.
+ if [[ ${ERUST_RUN_EXTRA_TESTS:-no} != no ]]; then
+ tests+=(
+ rustdoc
+ rustdoc-js
+ rustdoc-js-std
+ rustdoc-ui
+ run-make-fulldeps
+ ui
+ ui-fulldeps
+ )
+ fi
+
+ local i failed=()
+ einfo "rust_src_test: enabled tests ${tests[@]/#/src/test/}"
+ for i in "${tests[@]}"; do
+ local t="src/test/${i}"
+ einfo "rust_src_test: running ${t}"
+ if ! (
+ IFS=$'\n'
+ env $(cat "${S}"/config.env) RUST_BACKTRACE=1 \
+ "${EPYTHON}" ./x.py test -vv --config="${S}"/config.toml \
+ -j$(makeopts_jobs) --no-doc --no-fail-fast "${t}"
+ )
+ then
+ failed+=( "${t}" )
+ eerror "rust_src_test: ${t} failed"
+ fi
+ done
+
+ if [[ ${#failed[@]} -ne 0 ]]; then
+ eerror "rust_src_test: failure summary: ${failed[@]}"
+ die "aborting due to test failures"
+ fi
+}
+
+src_install() {
+ (
+ IFS=$'\n'
+ env $(cat "${S}"/config.env) DESTDIR="${D}" \
+ "${EPYTHON}" ./x.py install -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
+ )
+
+ # bug #689562, #689160
+ rm -v "${ED}/usr/lib/${PN}/${PV}/etc/bash_completion.d/cargo" || die
+ rmdir -v "${ED}/usr/lib/${PN}/${PV}"/etc{/bash_completion.d,} || die
+ newbashcomp src/tools/cargo/src/etc/cargo.bashcomp.sh cargo
+
+ local symlinks=(
+ cargo
+ rustc
+ rustdoc
+ rust-gdb
+ rust-gdbgui
+ rust-lldb
+ )
+
+ use clippy && symlinks+=( clippy-driver cargo-clippy )
+ use miri && symlinks+=( miri cargo-miri )
+ use rls && symlinks+=( rls )
+ use rustfmt && symlinks+=( rustfmt cargo-fmt )
+
+ einfo "installing eselect-rust symlinks and paths: ${symlinks[@]}"
+ local i
+ for i in "${symlinks[@]}"; do
+ # we need realpath on /usr/bin/* symlink return version-appended binary path.
+ # so /usr/bin/rustc should point to /usr/lib/rust//bin/rustc-
+ # need to fix eselect-rust to remove this hack.
+ local ver_i="${i}-${PV}"
+ if [[ -f "${ED}/usr/lib/${PN}/${PV}/bin/${i}" ]]; then
+ einfo "Installing ${i} symlink"
+ ln -v "${ED}/usr/lib/${PN}/${PV}/bin/${i}" "${ED}/usr/lib/${PN}/${PV}/bin/${ver_i}" || die
+ else
+ ewarn "${i} symlink requested, but source file not found"
+ ewarn "please report this"
+ fi
+ dosym "../lib/${PN}/${PV}/bin/${ver_i}" "/usr/bin/${ver_i}"
+ done
+
+ # symlinks to switch components to active rust in eselect
+ dosym "${PV}/lib" "/usr/lib/${PN}/lib-${PV}"
+ dosym "${PV}/libexec" "/usr/lib/${PN}/libexec-${PV}"
+ dosym "${PV}/share/man" "/usr/lib/${PN}/man-${PV}"
+ dosym "rust/${PV}/lib/rustlib" "/usr/lib/rustlib-${PV}"
+ dosym "../../lib/${PN}/${PV}/share/doc/rust" "/usr/share/doc/${P}"
+
+ newenvd - "50${P}" <<-_EOF_
+ LDPATH="${EPREFIX}/usr/lib/rust/lib"
+ MANPATH="${EPREFIX}/usr/lib/rust/man"
+ $(use amd64 && usex elibc_musl 'CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
+ $(use arm64 && usex elibc_musl 'CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS="-C target-feature=-crt-static"' '')
+ _EOF_
+
+ rm -rf "${ED}/usr/lib/${PN}/${PV}"/*.old || die
+ rm -rf "${ED}/usr/lib/${PN}/${PV}/doc"/*.old || die
+
+ # note: eselect-rust adds EROOT to all paths below
+ cat <<-_EOF_ > "${T}/provider-${P}"
+ /usr/bin/cargo
+ /usr/bin/rustdoc
+ /usr/bin/rust-gdb
+ /usr/bin/rust-gdbgui
+ /usr/bin/rust-lldb
+ /usr/lib/rustlib
+ /usr/lib/rust/lib
+ /usr/lib/rust/libexec
+ /usr/lib/rust/man
+ /usr/share/doc/rust
+ _EOF_
+
+ if use clippy; then
+ echo /usr/bin/clippy-driver >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-clippy >> "${T}/provider-${P}"
+ fi
+ if use miri; then
+ echo /usr/bin/miri >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-miri >> "${T}/provider-${P}"
+ fi
+ if use rls; then
+ echo /usr/bin/rls >> "${T}/provider-${P}"
+ fi
+ if use rustfmt; then
+ echo /usr/bin/rustfmt >> "${T}/provider-${P}"
+ echo /usr/bin/cargo-fmt >> "${T}/provider-${P}"
+ fi
+
+ insinto /etc/env.d/rust
+ doins "${T}/provider-${P}"
+}
+
+pkg_postinst() {
+ eselect rust update
+
+ if has_version sys-devel/gdb || has_version dev-util/lldb; then
+ elog "Rust installs a helper script for calling GDB and LLDB,"
+ elog "for your convenience it is installed under /usr/bin/rust-{gdb,lldb}-${PV}."
+ fi
+
+ if has_version app-editors/emacs; then
+ elog "install app-emacs/rust-mode to get emacs support for rust."
+ fi
+
+ if has_version app-editors/gvim || has_version app-editors/vim; then
+ elog "install app-vim/rust-vim to get vim support for rust."
+ fi
+}
+
+pkg_postrm() {
+ eselect rust cleanup
+}
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz
index 0a8b0d6cd7e6..d32cb138be2d 100644
Binary files a/dev-libs/Manifest.gz and b/dev-libs/Manifest.gz differ
diff --git a/dev-libs/libarcus/libarcus-4.9.1.ebuild b/dev-libs/libarcus/libarcus-4.9.1.ebuild
index 8a82c33b9bb0..ce9da7cb6141 100644
--- a/dev-libs/libarcus/libarcus-4.9.1.ebuild
+++ b/dev-libs/libarcus/libarcus-4.9.1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{8,9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake python-single-r1
diff --git a/dev-libs/libcec/libcec-6.0.2.ebuild b/dev-libs/libcec/libcec-6.0.2.ebuild
index c118e5234689..80507a293bfb 100644
--- a/dev-libs/libcec/libcec-6.0.2.ebuild
+++ b/dev-libs/libcec/libcec-6.0.2.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_COMPAT=( python3_{8..10} )
MY_PV=${PV/_p/-}
MY_P=${PN}-${MY_PV}
diff --git a/dev-libs/libcharon/libcharon-4.9.1-r1.ebuild b/dev-libs/libcharon/libcharon-4.9.1-r1.ebuild
index 8bb7404534a2..6ba209c25452 100644
--- a/dev-libs/libcharon/libcharon-4.9.1-r1.ebuild
+++ b/dev-libs/libcharon/libcharon-4.9.1-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake python-single-r1
diff --git a/dev-libs/libmowgli/libmowgli-2.1.3-r2.ebuild b/dev-libs/libmowgli/libmowgli-2.1.3-r2.ebuild
deleted file mode 100644
index e7b02c8ea2b2..000000000000
--- a/dev-libs/libmowgli/libmowgli-2.1.3-r2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="Useful set of performance and usability-oriented extensions to C"
-HOMEPAGE="https://github.com/atheme/libmowgli-2"
-SRC_URI="https://github.com/atheme/libmowgli-2/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="2"
-KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE="ssl"
-
-RDEPEND="ssl? (
- dev-libs/openssl:0=
- )
- !~dev-libs/libmowgli-2.1.0" # Bug 629644
-DEPEND="${RDEPEND}"
-
-DOCS=( AUTHORS README doc/BOOST doc/design-concepts.txt )
-PATCHES=(
- "${FILESDIR}"/${P}-cacheline-Ensure-sysconf-var-is-defined-before-use.patch
- "${FILESDIR}"/${P}-use-host-tools-for-ar-and-ranlib.patch
-)
-
-S="${WORKDIR}/${PN}-2-${PV}"
-
-src_prepare() {
- default
-
- # $(MAKE) invocation will handle passing down flags.
- sed -i -e 's/${MFLAGS}//' buildsys.mk.in || die
-
- AT_M4DIR="m4" eautoreconf
-}
-
-src_configure() {
- econf $(use_with ssl openssl)
-}
diff --git a/dev-libs/libsass/libsass-3.6.5.ebuild b/dev-libs/libsass/libsass-3.6.5.ebuild
index 16a7fb2752de..d1807595adcc 100644
--- a/dev-libs/libsass/libsass-3.6.5.ebuild
+++ b/dev-libs/libsass/libsass-3.6.5.ebuild
@@ -10,7 +10,7 @@ if [[ ${PV} = *9999 ]]; then
inherit git-r3
else
SRC_URI="https://github.com/sass/libsass/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 ~arm arm64 ~ia64 ~ppc ~ppc64 ~riscv x86 ~amd64-linux"
+ KEYWORDS="amd64 ~arm arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv x86 ~amd64-linux"
fi
DESCRIPTION="A C/C++ implementation of a Sass CSS compiler"
diff --git a/dev-libs/libsavitar/libsavitar-4.9.1.ebuild b/dev-libs/libsavitar/libsavitar-4.9.1.ebuild
index c2659976510a..263cdd5d1947 100644
--- a/dev-libs/libsavitar/libsavitar-4.9.1.ebuild
+++ b/dev-libs/libsavitar/libsavitar-4.9.1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake python-single-r1
diff --git a/dev-libs/snowball-stemmer/files/libstemmer_c-shared-library.patch b/dev-libs/snowball-stemmer/files/libstemmer_c-shared-library.patch
deleted file mode 100644
index ca27fc517705..000000000000
--- a/dev-libs/snowball-stemmer/files/libstemmer_c-shared-library.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- /home/graaff/Desktop/Makefile 2009-11-06 01:57:50.000000000 +0100
-+++ Makefile 2013-07-18 10:57:32.482149252 +0200
-@@ -1,9 +1,13 @@
- include mkinc.mak
--CFLAGS=-Iinclude
--all: libstemmer.o stemwords
--libstemmer.o: $(snowball_sources:.c=.o)
-- $(AR) -cru $@ $^
--stemwords: examples/stemwords.o libstemmer.o
-- $(CC) -o $@ $^
-+CFLAGS+=-Iinclude -fPIC
-+all: libstemmer.so libstemmer.a stemwords
-+libstemmer.so: $(snowball_sources:.c=.o)
-+ $(CC) $(CFLAGS) -shared $(LDFLAGS) -Wl,-soname,$@.0d -o $@.0d.0.0 $^
-+ ln -s $@.0d.0.0 $@.0d
-+ ln -s $@.0d.0.0 $@
-+libstemmer.a: $(snowball_sources:.c=.o)
-+ $(AR) -crs $@ $^
-+stemwords: examples/stemwords.o libstemmer.so
-+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
- clean:
-- rm -f stemwords *.o src_c/*.o runtime/*.o libstemmer/*.o
-+ rm -f stemwords libstemmer.so* libstemmer.a *.o src_c/*.o runtime/*.o libstemmer/*.o
diff --git a/dev-ml/Manifest.gz b/dev-ml/Manifest.gz
index 5d4fd747d90f..7c02eece67ae 100644
Binary files a/dev-ml/Manifest.gz and b/dev-ml/Manifest.gz differ
diff --git a/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.14.3.ebuild b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.14.3.ebuild
index e757ef8332b3..070c960efe14 100644
--- a/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.14.3.ebuild
+++ b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.14.3.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/janestreet/ppx_sexp_conv/archive/v${PV}.tar.gz -> ${
LICENSE="MIT"
SLOT="0/${PV}"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
IUSE="+ocamlopt"
# Upper bound on ppxlib for bug #769536
diff --git a/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.14.2.ebuild b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.14.2.ebuild
index 33347b97f969..defa761b96e6 100644
--- a/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.14.2.ebuild
+++ b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.14.2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.g
LICENSE="MIT"
SLOT="0/${PV}"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
IUSE="+ocamlopt"
DEPEND="
diff --git a/dev-ml/ppxlib/ppxlib-0.22.2-r2.ebuild b/dev-ml/ppxlib/ppxlib-0.22.2-r2.ebuild
index 9ff10478520d..003412304ee9 100644
--- a/dev-ml/ppxlib/ppxlib-0.22.2-r2.ebuild
+++ b/dev-ml/ppxlib/ppxlib-0.22.2-r2.ebuild
@@ -16,7 +16,7 @@ SRC_URI="https://github.com/ocaml-ppx/ppxlib/archive/${PV}.tar.gz -> ${P}.tar.gz
LICENSE="Apache-2.0"
SLOT="0/${PV}"
-KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
+KEYWORDS="amd64 arm arm64 ppc ppc64 x86"
IUSE="+ocamlopt test"
RESTRICT="!test? ( test )"
diff --git a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-local-scalar.patch b/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-local-scalar.patch
deleted file mode 100644
index 1d305f542d9e..000000000000
--- a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-local-scalar.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From ef8efc5b80c9395c01f23e5acd28bb3ee7810b54 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 8 Oct 2017 13:08:20 +1300
-Subject: Fix useless localization of scalar assignment
-
-Bug: https://rt.cpan.org/Ticket/Display.html?id=73873
----
- lib/DBI/Format.pm | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/DBI/Format.pm b/lib/DBI/Format.pm
-index 49cd7dd..bc985f9 100755
---- a/lib/DBI/Format.pm
-+++ b/lib/DBI/Format.pm
-@@ -374,7 +374,7 @@ sub header {
-
- sub row {
- my($self, $rowref) = @_;
-- local( $^W = 0 );
-+ local ($^W) = 0;
- my @row = @$rowref;
- my $fh = $self->{'fh'};
- print $fh (join($self->{sep}, @row), "\n");
---
-2.14.1
-
diff --git a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-nochrdir.patch b/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-nochrdir.patch
deleted file mode 100644
index b79649da4f5c..000000000000
--- a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-nochrdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 9fb29d16514530245965b932040bb4fc37ffa9bf Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 8 Oct 2017 13:11:29 +1300
-Subject: Fix no_chrdir warning
-
-Bug: https://rt.cpan.org/Ticket/Display.html?id=123215
----
- lib/DBI/Shell/FindSqlFile.pm | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/DBI/Shell/FindSqlFile.pm b/lib/DBI/Shell/FindSqlFile.pm
-index e604290..2b56ccc 100644
---- a/lib/DBI/Shell/FindSqlFile.pm
-+++ b/lib/DBI/Shell/FindSqlFile.pm
-@@ -62,7 +62,7 @@ sub look_for_file {
- File::Find::find(
- {
- wanted => \&wanted
-- , no_chrdir => 1
-+ , no_chdir => 1
- , bydepth => 0
- },
- @search_path);
---
-2.14.1
-
diff --git a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-perl526.patch b/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-perl526.patch
deleted file mode 100644
index cd8258480d70..000000000000
--- a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-perl526.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 792cf15cb387e58cec1ef3c6d538689d02ab44c3 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 8 Oct 2017 12:46:17 +1300
-Subject: Fix '.' removal from @INC in Perl 5.26
-
-Configuration files were always assumed to be explicit paths given
-by outsiders, not random entries in @INC
-
-Bug: https://bugs.gentoo.org/615592
-Bug: https://rt.cpan.org/Ticket/Display.html?id=121136
----
- lib/DBI/Shell.pm | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/lib/DBI/Shell.pm b/lib/DBI/Shell.pm
-index 03dd958..7869f0f 100755
---- a/lib/DBI/Shell.pm
-+++ b/lib/DBI/Shell.pm
-@@ -133,6 +133,7 @@ use Text::Abbrev ();
- use Term::ReadLine;
- use Getopt::Long 2.17; # upgrade from CPAN if needed: http://www.perl.com/CPAN
- use IO::File;
-+use File::Spec ();
-
- use DBI 1.00 qw(:sql_types :utils);
- use DBI::Format;
-@@ -544,7 +545,8 @@ sub configuration {
- $sh->{config_file} = $ENV{DBISH_CONFIG} || "$homedir/.dbish_config";
- my $config;
- if ($sh->{config_file} && -f $sh->{config_file}) {
-- $config = require $sh->{config_file};
-+ my $full = File::Spec->rel2abs( $sh->{config_file} );
-+ $config = require $full;
- # allow for custom configuration options.
- if (exists $config->{'options'} ) {
- $sh->install_options( $config->{'options'} );
---
-2.14.1
-
diff --git a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-sprintf-warn.patch b/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-sprintf-warn.patch
deleted file mode 100644
index 46943c1266ba..000000000000
--- a/dev-perl/DBI-Shell/files/DBI-Shell-11.950.0-sprintf-warn.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From f44b8ba9d8cf954c76a967cbfb5d4182f109f8cf Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 8 Oct 2017 13:30:36 +1300
-Subject: Silence warnings about reduntant sprintf args
-
-Bug: https://rt.cpan.org/Ticket/Display.html?id=123216
----
- lib/DBI/Format/SQLMinus.pm | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/lib/DBI/Format/SQLMinus.pm b/lib/DBI/Format/SQLMinus.pm
-index c3a9ba2..7b240c9 100755
---- a/lib/DBI/Format/SQLMinus.pm
-+++ b/lib/DBI/Format/SQLMinus.pm
-@@ -155,6 +155,7 @@ sub header {
-
- if ( exists $cf->{format} and defined $cf->{format} ) {
- $format_names = $cf->{format};
-+ no warnings 'redundant';
- $width = length sprintf( $format_names, " " );
- }
-
---
-2.14.1
-
diff --git a/dev-perl/Dist-Zilla-Plugin-NextVersion-Semantic/files/Dist-Zilla-Plugin-NextVersion-Semantic-0.2.5-no-V-in-test.patch b/dev-perl/Dist-Zilla-Plugin-NextVersion-Semantic/files/Dist-Zilla-Plugin-NextVersion-Semantic-0.2.5-no-V-in-test.patch
deleted file mode 100644
index ab09936f2832..000000000000
--- a/dev-perl/Dist-Zilla-Plugin-NextVersion-Semantic/files/Dist-Zilla-Plugin-NextVersion-Semantic-0.2.5-no-V-in-test.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From e38c5bfa847361ab251ce533fdd6e8993afbd2f3 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sat, 19 Sep 2020 22:13:21 +1200
-Subject: t/basic.t: Don't become broken when MAKEOPTS includes V=1
-
-Some people set MAKEOPTS to include V=1, in order to coax autotools
-based makefiles into being more verbose.
-
-But when that ENV var is used to direct perl ebuilds for Dzil things,
-well, it unintentionally uses "1" as the *next version*, and so breaks
-all code that isn't expecting that to happen.
-
-Given its not the job of tests to tell people their system is weird, it
-just makes the scope "normal" ( that is, defaulting V to be unset
-internally )
-
-Bug: https://bugs.gentoo.org/737308
-Bug: https://github.com/yanick/Dist-Zilla-Plugin-NextVersion-Semantic/pull/6
----
- t/basic.t | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/t/basic.t b/t/basic.t
-index 22d04fe..b2942c8 100644
---- a/t/basic.t
-+++ b/t/basic.t
-@@ -6,6 +6,10 @@ use Test::Exception;
-
- use Test::DZil;
-
-+# V=1 is common in MAKEOPTS for gnu autotools
-+# to set "verbose mode"
-+delete $ENV{V} if exists $ENV{V};
-+
- my $changes = make_changes(<<'END_CHANGES');
- - got included in an awesome test suite
- END_CHANGES
---
-2.28.0
-
diff --git a/dev-perl/ExtUtils-CppGuess/files/ExtUtils-CppGuess-0.110.0-no-dot-inc.patch b/dev-perl/ExtUtils-CppGuess/files/ExtUtils-CppGuess-0.110.0-no-dot-inc.patch
deleted file mode 100644
index 0bca84c1aad7..000000000000
--- a/dev-perl/ExtUtils-CppGuess/files/ExtUtils-CppGuess-0.110.0-no-dot-inc.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 2c89bb54f233776fb8760a264286f9e0932f62c6 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sat, 21 Oct 2017 13:15:43 +1300
-Subject: Fix tests on 5.26 without '.' in @INC
-
-Bug: https://rt.cpan.org/Ticket/Display.html?id=120848
-Bug: https://bugs.gentoo.org/615842
-Bug: https://github.com/tsee/extutils-cppguess/pull/15
----
- t/010_module_build.t | 3 ++-
- t/011_makemaker.t | 3 ++-
- t/lib/TestUtils.pm | 3 ++-
- 3 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/t/010_module_build.t b/t/010_module_build.t
-index 93b5f44..ef004d3 100644
---- a/t/010_module_build.t
-+++ b/t/010_module_build.t
-@@ -2,7 +2,8 @@
-
- use strict;
- use Test::More tests => 1;
--use t::lib::TestUtils;
-+use lib 't/lib';
-+use TestUtils;
-
- my $separator = ( '=' x 40 . "\n" );
-
-diff --git a/t/011_makemaker.t b/t/011_makemaker.t
-index 237636a..5986395 100644
---- a/t/011_makemaker.t
-+++ b/t/011_makemaker.t
-@@ -2,7 +2,8 @@
-
- use strict;
- use Test::More tests => 1;
--use t::lib::TestUtils;
-+use lib 't/lib';
-+use TestUtils;
-
- my $separator = ( '=' x 40 . "\n" );
-
-diff --git a/t/lib/TestUtils.pm b/t/lib/TestUtils.pm
-index c71572b..b3480c4 100644
---- a/t/lib/TestUtils.pm
-+++ b/t/lib/TestUtils.pm
-@@ -1,4 +1,5 @@
--package t::lib::TestUtils;
-+package # hide
-+ TestUtils;
-
- use strict;
-
---
-2.14.2
-
diff --git a/dev-perl/File-NFSLock/files/File-NFSLock-1.27-no-dot-inc.patch b/dev-perl/File-NFSLock/files/File-NFSLock-1.27-no-dot-inc.patch
deleted file mode 100644
index 9b67d24d10d6..000000000000
--- a/dev-perl/File-NFSLock/files/File-NFSLock-1.27-no-dot-inc.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 08deb6590eecd9d92a38edf1b22d615175e1d8d3 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Mon, 26 Jun 2017 19:43:14 +1200
-Subject: [PATCH] Fix for '.' removal from Perl 5.26 @INC
-
----
- File-NFSLock.spec.PL | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/File-NFSLock.spec.PL b/File-NFSLock.spec.PL
-index fdf9fdf..f5586c1 100644
---- a/File-NFSLock.spec.PL
-+++ b/File-NFSLock.spec.PL
-@@ -18,7 +18,7 @@ sub WriteMakefile {
- } elsif (my $version_from = $props{VERSION_FROM}) {
- $@ = "";
- $version = eval qq{
-- do "$version_from";
-+ do "./$version_from";
- \$$name\::VERSION || die "$version_from: Missing VERSION";
- };
- die $@ if $@;
-@@ -29,7 +29,7 @@ sub WriteMakefile {
- die "Makefile.PL: Could not determine version!";
- }
- }
--do "Makefile.PL";
-+do "./Makefile.PL";
- if ($name) {
- $name =~ s/::/-/g;
- } else {
---
-2.13.1
-
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0001-fix-spelling-error-settting-should-be-setting.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0001-fix-spelling-error-settting-should-be-setting.patch
deleted file mode 100644
index fcec61009070..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0001-fix-spelling-error-settting-should-be-setting.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 07:26:00 +0200
-Subject: fix spelling error ("settting" should be "setting")
-
----
- README | 2 +-
- lib/GnuPG/Interface.pm | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/README b/README
-index fcb982a..f457577 100644
---- a/README
-+++ b/README
-@@ -6,7 +6,7 @@ SYNOPSIS
- use IO::Handle;
- use GnuPG::Interface;
-
-- # settting up the situation
-+ # setting up the situation
- my $gnupg = GnuPG::Interface->new();
- $gnupg->options->hash_init( armor => 1,
- homedir => '/home/foobar' );
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index f952f3e..83a4b1a 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -834,7 +834,7 @@ GnuPG::Interface - Perl interface to GnuPG
- use IO::Handle;
- use GnuPG::Interface;
-
-- # settting up the situation
-+ # setting up the situation
- my $gnupg = GnuPG::Interface->new();
- $gnupg->options->hash_init( armor => 1,
- homedir => '/home/foobar' );
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0002-Generalize-the-test-suite.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0002-Generalize-the-test-suite.patch
deleted file mode 100644
index d0d3e6ccdf9d..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0002-Generalize-the-test-suite.patch
+++ /dev/null
@@ -1,151 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 10:38:12 -0400
-Subject: Generalize the test suite
-
-The test suite currently assumes it knows something about the internal
-state of GnuPG's homedir.
-
-It's safer and less brittle to rely explicitly on the public interface
-that GnuPG has committed to, such as --import-keys and --list-keys,
-rather than assuming that certain files are in certain places in the
-GnuPG homedir.
-
-It's also better to create a fresh homedir and allow GnuPG to populate
-it during the test suite, cleaning it up at the end, rather than hope
-that GnuPG will leave a pre-existing homedir untouched.
-
-With this change, many more of the tests pass when /usr/bin/gpg is
-provided by GnuPG 2.1.
----
- t/000_setup.t | 28 ++++++++++++++++++++++++++++
- t/MyTestSpecific.pm | 2 +-
- t/zzz_cleanup.t | 17 +++++++++++++++++
- test/fake-pinentry.pl | 28 ++++++++++++++++++++++++++++
- test/{options => gpg.conf} | 0
- test/secret-keys/1.0.test | 4 ++--
- 6 files changed, 76 insertions(+), 3 deletions(-)
- create mode 100644 t/000_setup.t
- create mode 100644 t/zzz_cleanup.t
- create mode 100755 test/fake-pinentry.pl
- rename test/{options => gpg.conf} (100%)
-
-diff --git a/t/000_setup.t b/t/000_setup.t
-new file mode 100644
-index 0000000..7f7f7b0
---- /dev/null
-+++ b/t/000_setup.t
-@@ -0,0 +1,28 @@
-+#!/usr/bin/perl -w
-+
-+use strict;
-+use English qw( -no_match_vars );
-+
-+use lib './t';
-+use MyTest;
-+use MyTestSpecific;
-+use Cwd;
-+use File::Path qw (make_path);
-+use File::Copy;
-+
-+TEST
-+{
-+ make_path('test/gnupghome', { mode => 0700 });
-+ my $agentconf = IO::File->new( "> test/gnupghome/gpg-agent.conf" );
-+ $agentconf->write("pinentry-program " . getcwd() . "/test/fake-pinentry.pl\n");
-+ $agentconf->close();
-+ copy('test/gpg.conf', 'test/gnupghome/gpg.conf');
-+ reset_handles();
-+
-+ my $pid = $gnupg->import_keys(command_args => [ 'test/pubring.gpg', 'test/secring.gpg' ],
-+ options => [ 'batch'],
-+ handles => $handles);
-+ waitpid $pid, 0;
-+
-+ return $CHILD_ERROR == 0;
-+};
-diff --git a/t/MyTestSpecific.pm b/t/MyTestSpecific.pm
-index 053b749..1af98ae 100644
---- a/t/MyTestSpecific.pm
-+++ b/t/MyTestSpecific.pm
-@@ -40,7 +40,7 @@ use vars qw( @ISA @EXPORT
-
- $gnupg = GnuPG::Interface->new( passphrase => 'test' );
-
--$gnupg->options->hash_init( homedir => 'test',
-+$gnupg->options->hash_init( homedir => 'test/gnupghome',
- armor => 1,
- meta_interactive => 0,
- meta_signing_key_id => '0xF950DA9C',
-diff --git a/t/zzz_cleanup.t b/t/zzz_cleanup.t
-new file mode 100644
-index 0000000..5c03a72
---- /dev/null
-+++ b/t/zzz_cleanup.t
-@@ -0,0 +1,17 @@
-+#!/usr/bin/perl -w
-+
-+use strict;
-+use English qw( -no_match_vars );
-+
-+use lib './t';
-+use MyTest;
-+use MyTestSpecific;
-+use File::Path qw (remove_tree);
-+
-+# this is actually no test, just cleanup.
-+TEST
-+{
-+ my $err = [];
-+ remove_tree('test/gnupghome', {error => \$err});
-+ return ! @$err;
-+};
-diff --git a/test/fake-pinentry.pl b/test/fake-pinentry.pl
-new file mode 100755
-index 0000000..12d3611
---- /dev/null
-+++ b/test/fake-pinentry.pl
-@@ -0,0 +1,28 @@
-+#!/usr/bin/perl -w
-+# Use this for your test suites when a perl interpreter is available.
-+#
-+# The encrypted keys in your test suite that you expect to work must
-+# be locked with a passphrase of "test"
-+#
-+# Author: Daniel Kahn Gillmor
-+#
-+# License: This trivial work is hereby explicitly placed into the
-+# public domain. Anyone may reuse it, modify it, redistribute it for
-+# any purpose.
-+
-+use strict;
-+use warnings;
-+
-+# turn off buffering
-+$| = 1;
-+
-+print "OK This is only for test suites, and should never be used in production\n";
-+while () {
-+ chomp;
-+ next if (/^$/);
-+ next if (/^#/);
-+ print ("D test\n") if (/^getpin/i);
-+ print "OK\n";
-+ exit if (/^bye/i);
-+}
-+1;
-diff --git a/test/options b/test/gpg.conf
-similarity index 100%
-rename from test/options
-rename to test/gpg.conf
-diff --git a/test/secret-keys/1.0.test b/test/secret-keys/1.0.test
-index 5999484..129d472 100644
---- a/test/secret-keys/1.0.test
-+++ b/test/secret-keys/1.0.test
-@@ -1,5 +1,5 @@
--test/secring.gpg
------------------
-+test/gnupghome/secring.gpg
-+--------------------------
- sec 1024D/F950DA9C 2000-02-06
- uid GnuPG test key (for testing purposes only)
- uid Foo Bar (1)
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0003-subkey-validity-of-an-key-when-we-have-established-n.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0003-subkey-validity-of-an-key-when-we-have-established-n.patch
deleted file mode 100644
index 23fbf97fee2c..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0003-subkey-validity-of-an-key-when-we-have-established-n.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 11:35:31 -0400
-Subject: subkey validity of an key when we have established no trust anchors
-
-This apparently isn't tested by deep comparisons, though, so it was
-never caught.
----
- t/get_public_keys.t | 2 +-
- t/get_secret_keys.t | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/t/get_public_keys.t b/t/get_public_keys.t
-index 53db021..73e320b 100644
---- a/t/get_public_keys.t
-+++ b/t/get_public_keys.t
-@@ -175,7 +175,7 @@ TEST
- ];
-
- my $subkey = GnuPG::SubKey->new
-- ( validity => 'u',
-+ ( validity => '-',
- length => 768,
- algo_num => 16,
- hex_id => 'ADB99D9C2E854A6B',
-diff --git a/t/get_secret_keys.t b/t/get_secret_keys.t
-index 3a1d99f..7bba083 100644
---- a/t/get_secret_keys.t
-+++ b/t/get_secret_keys.t
-@@ -48,7 +48,7 @@ TEST
-
-
- my $subkey = GnuPG::SubKey->new
-- ( validity => 'u',
-+ ( validity => '-',
- length => 768,
- algo_num => 16,
- hex_id => 'ADB99D9C2E854A6B',
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0004-ensure-that-test-covers-all-signatures.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0004-ensure-that-test-covers-all-signatures.patch
deleted file mode 100644
index 1743b7d9177c..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0004-ensure-that-test-covers-all-signatures.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 11:39:04 -0400
-Subject: ensure that test covers all signatures
-
-The earlier test wasn't reporting on one of the known self-sigs for
-the test key for some reason.
-
-This change ensures that all known signatures are present.
----
- t/get_public_keys.t | 12 +++++++++++-
- 1 file changed, 11 insertions(+), 1 deletion(-)
-
-diff --git a/t/get_public_keys.t b/t/get_public_keys.t
-index 73e320b..9e96f7d 100644
---- a/t/get_public_keys.t
-+++ b/t/get_public_keys.t
-@@ -83,7 +83,17 @@ TEST
- date_string => '2000-02-06',
- hex_id => '53AE596EF950DA9C',
- sig_class => 0x13,
-- validity => '!'));
-+ validity => '!'),
-+ GnuPG::Signature->new(
-+ date => 1177086329,
-+ algo_num => 17,
-+ is_exportable => 1,
-+ user_id_string => 'GnuPG test key (for testing purposes only)',
-+ date_string => '2007-04-20',
-+ hex_id => '53AE596EF950DA9C',
-+ sig_class => 0x13,
-+ validity => '!'),
-+ );
-
- my $uid1 = GnuPG::UserId->new( as_string => 'Foo Bar (1)',
- validity => '-');
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0005-add-gpg_is_modern-to-test-suite.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0005-add-gpg_is_modern-to-test-suite.patch
deleted file mode 100644
index 0016fa755c0c..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0005-add-gpg_is_modern-to-test-suite.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 14:31:38 -0400
-Subject: add $gpg_is_modern to test suite
-
-MyTestSpecific.pm now produces a new variable indicating whether it
-the version of GnuPG we run against is from the "Modern" line of GnuPG
-development (2.1 or later). This will be useful when comparing output
-that we can't expect from earlier versions.
----
- t/MyTestSpecific.pm | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/t/MyTestSpecific.pm b/t/MyTestSpecific.pm
-index 1af98ae..a309698 100644
---- a/t/MyTestSpecific.pm
-+++ b/t/MyTestSpecific.pm
-@@ -29,17 +29,20 @@ use GnuPG::Handles;
- use vars qw( @ISA @EXPORT
- $stdin $stdout $stderr
- $gpg_program $handles $gnupg
-- %texts
-+ %texts $gpg_is_modern
- );
-
- @ISA = qw( Exporter );
- @EXPORT = qw( stdin stdout stderr
- gnupg_program handles reset_handles
-- texts file_match
-+ texts file_match gpg_is_modern
- );
-
- $gnupg = GnuPG::Interface->new( passphrase => 'test' );
-
-+my @version = split('\.', $gnupg->version());
-+$gpg_is_modern = ($version[0] > 2 || ($version[0] == 2 && $version[1] >= 1));
-+
- $gnupg->options->hash_init( homedir => 'test/gnupghome',
- armor => 1,
- meta_interactive => 0,
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0006-Modern-GnuPG-2.1-reports-more-detail-about-secret-ke.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0006-Modern-GnuPG-2.1-reports-more-detail-about-secret-ke.patch
deleted file mode 100644
index bea8bfc68dfa..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0006-Modern-GnuPG-2.1-reports-more-detail-about-secret-ke.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 14:12:40 -0400
-Subject: Modern GnuPG (2.1) reports more detail about secret keys
-
-the GnuPG "modern" suite (version 2.1 or later) reports more detail
-about secret keys than previous versions did. In particular, it
-reports stored ownertrust, public key data, and designated revokers
-for secret keys. Older versions only reported those attributes for
-public keys.
-
-This patch adjusts the test suite to ensure that our handmade key
-matches the produced key when /usr/bin/gpg is supplied by the modern
-suite.
----
- t/get_secret_keys.t | 66 +++++++++++++++++++++++++++++++++++++++++++----------
- 1 file changed, 54 insertions(+), 12 deletions(-)
-
-diff --git a/t/get_secret_keys.t b/t/get_secret_keys.t
-index 7bba083..c798cce 100644
---- a/t/get_secret_keys.t
-+++ b/t/get_secret_keys.t
-@@ -23,16 +23,34 @@ TEST
- return 0 unless @returned_keys == 1;
-
- $given_key = shift @returned_keys;
--
-- $handmade_key = GnuPG::PrimaryKey->new
-- ( length => 1024,
-+ my $pubkey_data = [
-+ Math::BigInt->from_hex('0x'.
-+ '88FCAAA5BCDCD52084D46143F44ED1715A339794641158DE03AA2092AFD3174E3DCA2CB7DF2DDC6FEDF7C3620F5A8BDAD06713E6153F8748DD76CB97305F30CBA8F8801DB47FAC11EED725F55672CB9BDAD629178A677CBB089B3E8AE0D9A9AD7741697A35F2868C62D25670994A92D810480173DC24263EEA0F103A43C0B64B'),
-+ Math::BigInt->from_hex('0x'.
-+ '8F2A3842C70FF17660CBB78C78FC93F534AB9A17'),
-+ Math::BigInt->from_hex('0x'.
-+ '83E348C2AA65F56DE84E8FDCE6DA7B0991B1C75EC8CA446FA85869A43350907BFF36BE512385E8E7E095578BB2138C04E318495873218286DE2B8C86F36EA670135434967AC798EBA28581F709F0C6B696EB512D3E561E381A06E4B5239BCC655015F9A926C74E4B859B26EAD604F208A556511A76A40EDCD9C38E6BD82CCCB4'),
-+ Math::BigInt->from_hex('0x'.
-+ '80DE04C85E30C9D62C13F90CFF927A84A5A59D0900B3533D4D6193FEF8C5DAEF9FF8A7D5F76B244FBC17644F50D524E0B19CD3A4B5FC2D78DAECA3FE58FA1C1A64E6C7B96C4EE618173543163A72EF954DFD593E84342699096E9CA76578AC1DE3D893BCCD0BF470CEF625FAF816A0F503EF75C18C6173E35C8675AF919E5704')
-+ ];
-+
-+
-+ my $args = {
-+ length => 1024,
- algo_num => 17,
- hex_id => '53AE596EF950DA9C',
- creation_date => 949813093,
- creation_date_string => '2000-02-06',
-- owner_trust => '', # secret keys do not report ownertrust?
-+ owner_trust => '-',
- usage_flags => 'scaESCA',
-- );
-+ pubkey_data => $pubkey_data,
-+ };
-+ if (!$gpg_is_modern) {
-+ # older versions don't report ownertrust or pubkey_data for secret keys:
-+ delete $args->{pubkey_data};
-+ $args->{owner_trust} = '';
-+ }
-+ $handmade_key = GnuPG::PrimaryKey->new($args);
-
- $handmade_key->fingerprint
- ( GnuPG::Fingerprint->new( as_hex_string =>
-@@ -42,20 +60,42 @@ TEST
-
- $handmade_key->push_user_ids(
- GnuPG::UserId->new( as_string => 'GnuPG test key (for testing purposes only)',
-- validity => ''), # secret keys do not report uid validity?
-+ validity => $args->{owner_trust}),
- GnuPG::UserId->new( as_string => 'Foo Bar (1)',
-- validity => '')); # secret keys do not report uid validity?
--
--
-- my $subkey = GnuPG::SubKey->new
-- ( validity => '-',
-+ validity => $args->{owner_trust}));
-+
-+ my $revoker = GnuPG::Revoker->new
-+ ( algo_num => 17,
-+ class => 0x80,
-+ fingerprint => GnuPG::Fingerprint->new( as_hex_string =>
-+ '4F863BBBA8166F0A340F600356FFD10A260C4FA3'),
-+ );
-+
-+ my $subkey_pub_data = [
-+ Math::BigInt->from_hex('0x'.
-+ '8831982DADC4C5D05CBB01D9EAF612131DDC9C24CEA7246557679423FB0BA42F74D10D8E7F5564F6A4FB8837F8DC4A46571C19B122E6DF4B443D15197A6A22688863D0685FADB6E402316DAA9B560D1F915475364580A67E6DF0A727778A5CF3'),
-+ Math::BigInt->from_hex('0x'.
-+ '6'),
-+ Math::BigInt->from_hex('0x'.
-+ '2F3850FF130C6AC9AA0962720E86539626FAA9B67B33A74DFC0DE843FF3E90E43E2F379EE0182D914FA539CCCF5C83A20DB3A7C45E365B8A2A092E799A3DFF4AD8274EB977BAAF5B1AFB2ACB8D6F92454F01682F555565E73E56793C46EF7C3E')
-+ ];
-+
-+ my $sub_args = {
-+ validity => '-',
- length => 768,
- algo_num => 16,
- hex_id => 'ADB99D9C2E854A6B',
- creation_date => 949813119,
- creation_date_string => '2000-02-06',
- usage_flags => 'e',
-- );
-+ pubkey_data => $subkey_pub_data,
-+ };
-+
-+ if (!$gpg_is_modern) {
-+ # older versions do not report pubkey data for secret keys
-+ delete $sub_args->{pubkey_data};
-+ }
-+ my $subkey = GnuPG::SubKey->new($sub_args);
-
- $subkey->fingerprint
- ( GnuPG::Fingerprint->new( as_hex_string =>
-@@ -64,6 +104,8 @@ TEST
- );
-
- $handmade_key->push_subkeys( $subkey );
-+ # older versions do not report designated revokers for secret keys
-+ $handmade_key->push_revokers( $revoker ) if ($gpg_is_modern);
-
- $handmade_key->compare( $given_key );
- };
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0007-test-suite-match-plaintext-output-across-versions-of.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0007-test-suite-match-plaintext-output-across-versions-of.patch
deleted file mode 100644
index 85c1a46adae5..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0007-test-suite-match-plaintext-output-across-versions-of.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 14:46:13 -0400
-Subject: test suite: match plaintext output across versions of GnuPG
-
-The human-readable version of --list-keys is *not* expected to be
-static over time or as the user's environment changes (e.g. LANG or
-LC_MESSAGES), so expecting it to be machine-parseable is probably a
-mistake.
-
-That said, some users might want to pull textual information about
-specific keys to display directly to the user, so it's not a terrible
-idea to have it in the test suite.
-
-Modern GnuPG (2.1 or later) changes the default structure of the
-human-readable output in a few significant ways:
-
- * it writes the path to the keyring as an absolute path, even if
- $GNUPGHOME is set to a non-absolute path.
-
- * it shows the calculated user id validity by default (see
- show-uid-validity in gpg's --list-options). (note that this is a
- translated string, so that "unknown" (in the default C locale)
- becomes "inconnue" when LANG or LC_MESSAGES is set to fr_CH.UTF-8,
- for example.
-
- * it writes the key algorithm names differently (e.g. rsa2048 instead
- of 2048R)
-
- * it does not display the key ID at all by default
-
- * it displays the full fingerprint in compact form by default
-
-This changeset fixes the test suite so that it can do a rough
-verification of the human-readable text output by list_secret_keys in
-the C locale in modern versions of GnuPG, while leaving it working for
-older GnuPG suites.
----
- t/list_secret_keys.t | 15 +++++++++++++--
- test/secret-keys/1.modern.test | 8 ++++++++
- 2 files changed, 21 insertions(+), 2 deletions(-)
- create mode 100644 test/secret-keys/1.modern.test
-
-diff --git a/t/list_secret_keys.t b/t/list_secret_keys.t
-index 1fe9b7e..51e3651 100644
---- a/t/list_secret_keys.t
-+++ b/t/list_secret_keys.t
-@@ -16,13 +16,22 @@ TEST
- {
- reset_handles();
-
-+ $ENV{LC_MESSAGES} = 'C';
- my $pid = $gnupg->list_secret_keys( handles => $handles );
- close $stdin;
-
- $outfile = 'test/secret-keys/1.out';
- my $out = IO::File->new( "> $outfile" )
- or die "cannot open $outfile for writing: $ERRNO";
-- $out->print( <$stdout> );
-+ while (<$stdout>) {
-+ if ($gpg_is_modern && /^\/.*\/test\/gnupghome\/pubring.kbx$/) {
-+ $out->print("test/gnupghome/pubring.kbx\n");
-+ } elsif ($gpg_is_modern && /^--*$/) {
-+ $out->print("--------------------------\n");
-+ } else {
-+ $out->print( $_ );
-+ }
-+ }
- close $stdout;
- $out->close();
- waitpid $pid, 0;
-@@ -33,7 +42,9 @@ TEST
-
- TEST
- {
-- my @files_to_test = ( 'test/secret-keys/1.0.test' );
-+ my $suffix = '0';
-+ $suffix = 'modern' if ($gpg_is_modern);
-+ my @files_to_test = ( 'test/secret-keys/1.'.$suffix.'.test' );
-
- return file_match( $outfile, @files_to_test );
- };
-diff --git a/test/secret-keys/1.modern.test b/test/secret-keys/1.modern.test
-new file mode 100644
-index 0000000..3e46407
---- /dev/null
-+++ b/test/secret-keys/1.modern.test
-@@ -0,0 +1,8 @@
-+test/gnupghome/pubring.kbx
-+--------------------------
-+sec dsa1024 2000-02-06 [SCA]
-+ 93AFC4B1B0288A104996B44253AE596EF950DA9C
-+uid [ unknown] GnuPG test key (for testing purposes only)
-+uid [ unknown] Foo Bar (1)
-+ssb elg768 2000-02-06 [E]
-+
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0008-fix-test_default_key_passphrase-when-passphrase-come.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0008-fix-test_default_key_passphrase-when-passphrase-come.patch
deleted file mode 100644
index 5ae938325ff1..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0008-fix-test_default_key_passphrase-when-passphrase-come.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 13 Sep 2016 15:22:27 -0400
-Subject: fix test_default_key_passphrase when passphrase comes from agent
-
-In the modern GnuPG suite, where the passphrase is always managed by
-the agent, gpg itself doesn't emit the GOOD_PASSPHRASE status.
-Instead, if signing is successful it emits plain old SIG_CREATED.
-
-There are probably even better ways to test whether a given key is
-unlocked in this case, but this is a straightforward baseline fix that
-should get this part of the test suite to pass with all available
-versions of GnuPG.
----
- lib/GnuPG/Interface.pm | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index 83a4b1a..1f1e6d5 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -808,7 +808,7 @@ sub test_default_key_passphrase() {
-
- # all we realy want to check is the status fh
- while (<$status>) {
-- if (/^\[GNUPG:\]\s*GOOD_PASSPHRASE/) {
-+ if (/^\[GNUPG:\]\s*(GOOD_PASSPHRASE|SIG_CREATED)/) {
- waitpid $pid, 0;
- return 1;
- }
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0009-clean-up-trailing-whitespace.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0009-clean-up-trailing-whitespace.patch
deleted file mode 100644
index f408c6568b0f..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0009-clean-up-trailing-whitespace.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 19:52:13 -0400
-Subject: clean up trailing whitespace
-
----
- lib/GnuPG/Fingerprint.pm | 2 +-
- lib/GnuPG/Handles.pm | 2 +-
- lib/GnuPG/Interface.pm | 16 ++++++++--------
- 3 files changed, 10 insertions(+), 10 deletions(-)
-
-diff --git a/lib/GnuPG/Fingerprint.pm b/lib/GnuPG/Fingerprint.pm
-index fcb1028..81c38a7 100644
---- a/lib/GnuPG/Fingerprint.pm
-+++ b/lib/GnuPG/Fingerprint.pm
-@@ -20,7 +20,7 @@ with qw(GnuPG::HashInit);
-
- has as_hex_string => (
- isa => 'Any',
-- is => 'rw',
-+ is => 'rw',
- );
-
- sub compare {
-diff --git a/lib/GnuPG/Handles.pm b/lib/GnuPG/Handles.pm
-index b30ca57..3eee0e3 100644
---- a/lib/GnuPG/Handles.pm
-+++ b/lib/GnuPG/Handles.pm
-@@ -73,7 +73,7 @@ GnuPG::Handles - GnuPG handles bundle
- = ( IO::Handle->new(), IO::Handle->new(), IO::Handle->new(),
- IO::Handle->new(), IO::Handle->new(), IO::Handle->new(),
- );
--
-+
- my $handles = GnuPG::Handles->new
- ( stdin => $stdin,
- stdout => $stdout,
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index 1f1e6d5..19e8070 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -833,7 +833,7 @@ GnuPG::Interface - Perl interface to GnuPG
- # A simple example
- use IO::Handle;
- use GnuPG::Interface;
--
-+
- # setting up the situation
- my $gnupg = GnuPG::Interface->new();
- $gnupg->options->hash_init( armor => 1,
-@@ -852,7 +852,7 @@ GnuPG::Interface - Perl interface to GnuPG
- # Now we'll go about encrypting with the options already set
- my @plaintext = ( 'foobar' );
- my $pid = $gnupg->encrypt( handles => $handles );
--
-+
- # Now we write to the input of GnuPG
- print $input @plaintext;
- close $input;
-@@ -1144,7 +1144,7 @@ The following setup can be done before any of the following examples:
-
- my $handles = GnuPG::Handles->new( stdin => $input,
- stdout => $output );
--
-+
- # this sets up the communication
- # Note that the recipients were specified earlier
- # in the 'options' data member of the $gnupg object.
-@@ -1220,7 +1220,7 @@ The following setup can be done before any of the following examples:
- # a file written to disk
- # Make sure you "use IO::File" if you use this module!
- my $cipher_file = IO::File->new( 'encrypted.gpg' );
--
-+
- # this sets up the communication
- my $pid = $gnupg->decrypt( handles => $handles );
-
-@@ -1252,7 +1252,7 @@ The following setup can be done before any of the following examples:
- # This time we'll just let GnuPG print to our own output
- # and read from our input, because no input is needed!
- my $handles = GnuPG::Handles->new();
--
-+
- my @ids = ( 'ftobin', '0xABCD1234' );
-
- # this time we need to specify something for
-@@ -1260,7 +1260,7 @@ The following setup can be done before any of the following examples:
- # search ids as arguments
- my $pid = $gnupg->list_public_keys( handles => $handles,
- command_args => [ @ids ] );
--
-+
- waitpid $pid, 0;
-
- =head2 Creating GnuPG::PublicKey Objects
-@@ -1280,7 +1280,7 @@ The following setup can be done before any of the following examples:
- command_args => [ qw( test/key.1.asc ) ],
- handles => $handles,
- );
--
-+
- my @out = <$handles->stdout()>;
- waitpid $pid, 0;
-
-@@ -1357,7 +1357,7 @@ under the same terms as Perl itself.
-
- =head1 AUTHOR
-
--GnuPg::Interface is currently maintained by Jesse Vincent .
-+GnuPg::Interface is currently maintained by Jesse Vincent .
-
- Frank J. Tobin, ftobin@cpan.org was the original author of the package.
-
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0010-fix-capitalization-of-GnuPG.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0010-fix-capitalization-of-GnuPG.patch
deleted file mode 100644
index f55d4b15942c..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0010-fix-capitalization-of-GnuPG.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 19:52:58 -0400
-Subject: fix capitalization of GnuPG
-
----
- README | 2 +-
- lib/GnuPG/Interface.pm | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/README b/README
-index f457577..aa7c984 100644
---- a/README
-+++ b/README
-@@ -427,7 +427,7 @@ LICENSE
- under the same terms as Perl itself.
-
- AUTHOR
-- GnuPg::Interface is currently maintained by Jesse Vincent
-+ GnuPG::Interface is currently maintained by Jesse Vincent
- .
-
- Frank J. Tobin, ftobin@cpan.org was the original author of the package.
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index 19e8070..cf7138f 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -1357,7 +1357,7 @@ under the same terms as Perl itself.
-
- =head1 AUTHOR
-
--GnuPg::Interface is currently maintained by Jesse Vincent .
-+GnuPG::Interface is currently maintained by Jesse Vincent .
-
- Frank J. Tobin, ftobin@cpan.org was the original author of the package.
-
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0011-ommand_args-should-be-command_args.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0011-ommand_args-should-be-command_args.patch
deleted file mode 100644
index a9ab737aa04a..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0011-ommand_args-should-be-command_args.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 19:57:10 -0400
-Subject: ommand_args should be command_args
-
----
- t/list_public_keys.t | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/t/list_public_keys.t b/t/list_public_keys.t
-index 7e563c1..a36a78b 100644
---- a/t/list_public_keys.t
-+++ b/t/list_public_keys.t
-@@ -38,7 +38,7 @@ TEST
- reset_handles();
-
- my $pid = $gnupg->list_public_keys( handles => $handles,
-- ommand_args => '0xF950DA9C'
-+ command_args => '0xF950DA9C'
- );
- close $stdin;
-
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0012-use-fingerprints-as-inputs-during-tests-to-demonstra.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0012-use-fingerprints-as-inputs-during-tests-to-demonstra.patch
deleted file mode 100644
index 9694e0854ce8..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0012-use-fingerprints-as-inputs-during-tests-to-demonstra.patch
+++ /dev/null
@@ -1,265 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 20:05:16 -0400
-Subject: use fingerprints as inputs during tests to demonstrate explicit usage
-
----
- README | 6 +++---
- lib/GnuPG/Interface.pm | 6 +++---
- lib/GnuPG/Options.pm | 2 +-
- t/MyTestSpecific.pm | 2 +-
- t/encrypt.t | 6 +++---
- t/export_keys.t | 4 ++--
- t/get_public_keys.t | 2 +-
- t/get_secret_keys.t | 2 +-
- t/list_public_keys.t | 4 ++--
- t/list_secret_keys.t | 4 ++--
- t/list_sigs.t | 4 ++--
- t/sign_and_encrypt.t | 2 +-
- 12 files changed, 22 insertions(+), 22 deletions(-)
-
-diff --git a/README b/README
-index aa7c984..ed94ede 100644
---- a/README
-+++ b/README
-@@ -228,7 +228,7 @@ EXAMPLES
-
- $gnupg->options->hash_init( armor => 1,
- recipients => [ 'ftobin@uiuc.edu',
-- '0xABCD1234' ],
-+ '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' ],
- meta_interactive => 0 ,
- );
-
-@@ -347,7 +347,7 @@ EXAMPLES
- # and read from our input, because no input is needed!
- my $handles = GnuPG::Handles->new();
-
-- my @ids = ( 'ftobin', '0xABCD1234' );
-+ my @ids = ( 'ftobin', '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' );
-
- # this time we need to specify something for
- # command_args because --list-public-keys takes
-@@ -358,7 +358,7 @@ EXAMPLES
- waitpid $pid, 0;
-
- Creating GnuPG::PublicKey Objects
-- my @ids = [ 'ftobin', '0xABCD1234' ];
-+ my @ids = [ 'ftobin', '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' ];
-
- my @keys = $gnupg->get_public_keys( @ids );
-
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index cf7138f..6eaef7d 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -1130,7 +1130,7 @@ The following setup can be done before any of the following examples:
-
- $gnupg->options->hash_init( armor => 1,
- recipients => [ 'ftobin@uiuc.edu',
-- '0xABCD1234' ],
-+ '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' ],
- meta_interactive => 0 ,
- );
-
-@@ -1253,7 +1253,7 @@ The following setup can be done before any of the following examples:
- # and read from our input, because no input is needed!
- my $handles = GnuPG::Handles->new();
-
-- my @ids = ( 'ftobin', '0xABCD1234' );
-+ my @ids = ( 'ftobin', '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' );
-
- # this time we need to specify something for
- # command_args because --list-public-keys takes
-@@ -1265,7 +1265,7 @@ The following setup can be done before any of the following examples:
-
- =head2 Creating GnuPG::PublicKey Objects
-
-- my @ids = [ 'ftobin', '0xABCD1234' ];
-+ my @ids = [ 'ftobin', '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' ];
-
- my @keys = $gnupg->get_public_keys( @ids );
-
-diff --git a/lib/GnuPG/Options.pm b/lib/GnuPG/Options.pm
-index 86261a0..7788662 100644
---- a/lib/GnuPG/Options.pm
-+++ b/lib/GnuPG/Options.pm
-@@ -198,7 +198,7 @@ GnuPG::Options - GnuPG options embodiment
-
- # assuming $gnupg is a GnuPG::Interface object
- $gnupg->options->armor( 1 );
-- $gnupg->options->push_recipients( 'ftobin', '0xABCD1234' );
-+ $gnupg->options->push_recipients( 'ftobin', '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' );
-
- =head1 DESCRIPTION
-
-diff --git a/t/MyTestSpecific.pm b/t/MyTestSpecific.pm
-index a309698..c8764cc 100644
---- a/t/MyTestSpecific.pm
-+++ b/t/MyTestSpecific.pm
-@@ -46,7 +46,7 @@ $gpg_is_modern = ($version[0] > 2 || ($version[0] == 2 && $version[1] >= 1));
- $gnupg->options->hash_init( homedir => 'test/gnupghome',
- armor => 1,
- meta_interactive => 0,
-- meta_signing_key_id => '0xF950DA9C',
-+ meta_signing_key_id => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C',
- always_trust => 1,
- );
-
-diff --git a/t/encrypt.t b/t/encrypt.t
-index 3183ac4..e6bdc08 100644
---- a/t/encrypt.t
-+++ b/t/encrypt.t
-@@ -27,7 +27,7 @@ TEST
-
- $gnupg->options->clear_recipients();
- $gnupg->options->clear_meta_recipients_keys();
-- $gnupg->options->push_recipients( '0x2E854A6B' );
-+ $gnupg->options->push_recipients( '0x7466B7E98C4CCB64C2CE738BADB99D9C2E854A6B' );
-
- my $pid = $gnupg->encrypt( handles => $handles );
-
-@@ -43,7 +43,7 @@ TEST
- {
- reset_handles();
-
-- my @keys = $gnupg->get_public_keys( '0xF950DA9C' );
-+ my @keys = $gnupg->get_public_keys( '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
- $gnupg->options->clear_recipients();
- $gnupg->options->clear_meta_recipients_keys();
- $gnupg->options->push_meta_recipients_keys( @keys );
-@@ -64,7 +64,7 @@ TEST
-
- $gnupg->options->clear_recipients();
- $gnupg->options->clear_meta_recipients_keys();
-- $gnupg->options->push_recipients( '0x2E854A6B' );
-+ $gnupg->options->push_recipients( '0x7466B7E98C4CCB64C2CE738BADB99D9C2E854A6B' );
-
- $handles->stdin( $texts{plain}->fh() );
- $handles->options( 'stdin' )->{direct} = 1;
-diff --git a/t/export_keys.t b/t/export_keys.t
-index cf5c82b..5add064 100644
---- a/t/export_keys.t
-+++ b/t/export_keys.t
-@@ -15,7 +15,7 @@ TEST
- reset_handles();
-
- my $pid = $gnupg->export_keys( handles => $handles,
-- command_args => '0xF950DA9C' );
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
- close $stdin;
- waitpid $pid, 0;
-
-@@ -31,7 +31,7 @@ TEST
- $handles->options( 'stdout' )->{direct} = 1;
-
- my $pid = $gnupg->export_keys( handles => $handles,
-- command_args => '0xF950DA9C' );
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
- waitpid $pid, 0;
- return $CHILD_ERROR == 0;
- };
-diff --git a/t/get_public_keys.t b/t/get_public_keys.t
-index 9e96f7d..7893625 100644
---- a/t/get_public_keys.t
-+++ b/t/get_public_keys.t
-@@ -19,7 +19,7 @@ TEST
- {
- reset_handles();
-
-- my @returned_keys = $gnupg->get_public_keys_with_sigs( '0xF950DA9C' );
-+ my @returned_keys = $gnupg->get_public_keys_with_sigs( '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
-
- return 0 unless @returned_keys == 1;
-
-diff --git a/t/get_secret_keys.t b/t/get_secret_keys.t
-index c798cce..a7f1348 100644
---- a/t/get_secret_keys.t
-+++ b/t/get_secret_keys.t
-@@ -18,7 +18,7 @@ TEST
- {
- reset_handles();
-
-- my @returned_keys = $gnupg->get_secret_keys( '0xF950DA9C' );
-+ my @returned_keys = $gnupg->get_secret_keys( '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
-
- return 0 unless @returned_keys == 1;
-
-diff --git a/t/list_public_keys.t b/t/list_public_keys.t
-index a36a78b..622b092 100644
---- a/t/list_public_keys.t
-+++ b/t/list_public_keys.t
-@@ -38,7 +38,7 @@ TEST
- reset_handles();
-
- my $pid = $gnupg->list_public_keys( handles => $handles,
-- command_args => '0xF950DA9C'
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C'
- );
- close $stdin;
-
-@@ -64,7 +64,7 @@ TEST
- $handles->options( 'stdout' )->{direct} = 1;
-
- my $pid = $gnupg->list_public_keys( handles => $handles,
-- command_args => '0xF950DA9C',
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C',
- );
-
- waitpid $pid, 0;
-diff --git a/t/list_secret_keys.t b/t/list_secret_keys.t
-index 51e3651..7040c38 100644
---- a/t/list_secret_keys.t
-+++ b/t/list_secret_keys.t
-@@ -55,7 +55,7 @@ TEST
- reset_handles();
-
- my $pid = $gnupg->list_secret_keys( handles => $handles,
-- command_args => '0xF950DA9C' );
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
- close $stdin;
-
- $outfile = 'test/secret-keys/2.out';
-@@ -80,7 +80,7 @@ TEST
- $handles->options( 'stdout' )->{direct} = 1;
-
- my $pid = $gnupg->list_secret_keys( handles => $handles,
-- command_args => '0xF950DA9C' );
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
-
- waitpid $pid, 0;
-
-diff --git a/t/list_sigs.t b/t/list_sigs.t
-index 16cfa6a..1301fb2 100644
---- a/t/list_sigs.t
-+++ b/t/list_sigs.t
-@@ -36,7 +36,7 @@ TEST
- reset_handles();
-
- my $pid = $gnupg->list_sigs( handles => $handles,
-- command_args => '0xF950DA9C',
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C',
- );
- close $stdin;
-
-@@ -60,7 +60,7 @@ TEST
- $handles->options( 'stdout' )->{direct} = 1;
-
- my $pid = $gnupg->list_sigs( handles => $handles,
-- command_args => '0xF950DA9C',
-+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C',
- );
-
- waitpid $pid, 0;
-diff --git a/t/sign_and_encrypt.t b/t/sign_and_encrypt.t
-index 5dc1c08..df0fc75 100644
---- a/t/sign_and_encrypt.t
-+++ b/t/sign_and_encrypt.t
-@@ -14,7 +14,7 @@ TEST
- {
- reset_handles();
-
-- $gnupg->options->push_recipients( '0x2E854A6B' );
-+ $gnupg->options->push_recipients( '0x7466B7E98C4CCB64C2CE738BADB99D9C2E854A6B' );
- my $pid = $gnupg->sign_and_encrypt( handles => $handles );
-
- print $stdin @{ $texts{plain}->data() };
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0013-move-key-files-to-generic-names.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0013-move-key-files-to-generic-names.patch
deleted file mode 100644
index 489e685b7b8c..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0013-move-key-files-to-generic-names.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 20:17:49 -0400
-Subject: move key files to generic names
-
----
- t/000_setup.t | 2 +-
- test/{pubring.gpg => public_keys.pgp} | Bin
- test/{secring.gpg => secret_keys.pgp} | Bin
- 3 files changed, 1 insertion(+), 1 deletion(-)
- rename test/{pubring.gpg => public_keys.pgp} (100%)
- rename test/{secring.gpg => secret_keys.pgp} (100%)
-
-diff --git a/t/000_setup.t b/t/000_setup.t
-index 7f7f7b0..a8e3042 100644
---- a/t/000_setup.t
-+++ b/t/000_setup.t
-@@ -19,7 +19,7 @@ TEST
- copy('test/gpg.conf', 'test/gnupghome/gpg.conf');
- reset_handles();
-
-- my $pid = $gnupg->import_keys(command_args => [ 'test/pubring.gpg', 'test/secring.gpg' ],
-+ my $pid = $gnupg->import_keys(command_args => [ 'test/public_keys.pgp', 'test/secret_keys.pgp' ],
- options => [ 'batch'],
- handles => $handles);
- waitpid $pid, 0;
-diff --git a/test/pubring.gpg b/test/public_keys.pgp
-similarity index 100%
-rename from test/pubring.gpg
-rename to test/public_keys.pgp
-diff --git a/test/secring.gpg b/test/secret_keys.pgp
-similarity index 100%
-rename from test/secring.gpg
-rename to test/secret_keys.pgp
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0014-fix-spelling-s-convience-convenience.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0014-fix-spelling-s-convience-convenience.patch
deleted file mode 100644
index ee809b61d754..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0014-fix-spelling-s-convience-convenience.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 20:25:48 -0400
-Subject: fix spelling: s/convience/convenience/
-
----
- README | 4 ++--
- lib/GnuPG/Interface.pm | 4 ++--
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/README b/README
-index ed94ede..a05ef9b 100644
---- a/README
-+++ b/README
-@@ -143,7 +143,7 @@ OBJECT METHODS
- does not come into play. If the passphrase data member handle of the
- handles object is not defined, but the the passphrase data member
- handle of GnuPG::Interface object is, GnuPG::Interface will handle
-- passing this information into GnuPG for the user as a convience.
-+ passing this information into GnuPG for the user as a convenience.
- Note that this will result in GnuPG::Interface storing the
- passphrase in memory, instead of having it simply 'pass-through' to
- GnuPG via a handle.
-@@ -271,7 +271,7 @@ EXAMPLES
- );
-
- # indicate our pasphrase through the
-- # convience method
-+ # convenience method
- $gnupg->passphrase( $passphrase );
-
- # this sets up the communication
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index 6eaef7d..29205f0 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -1008,7 +1008,7 @@ and so this information is not generated and does not come into play.
- If the B data member handle of the B object
- is not defined, but the the B data member handle of GnuPG::Interface
- object is, GnuPG::Interface will handle passing this information into GnuPG
--for the user as a convience. Note that this will result in
-+for the user as a convenience. Note that this will result in
- GnuPG::Interface storing the passphrase in memory, instead of having
- it simply 'pass-through' to GnuPG via a handle.
-
-@@ -1175,7 +1175,7 @@ The following setup can be done before any of the following examples:
- );
-
- # indicate our pasphrase through the
-- # convience method
-+ # convenience method
- $gnupg->passphrase( $passphrase );
-
- # this sets up the communication
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0015-added-new-secret-key-with-different-passphrase.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0015-added-new-secret-key-with-different-passphrase.patch
deleted file mode 100644
index fcf20c1b9d1c..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0015-added-new-secret-key-with-different-passphrase.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 20:59:43 -0400
-Subject: added new secret key with different passphrase
-
-Adding a new secret key with a different passphrase should allow us to
-differentiate between passing the passphrase explicitly and relying on
-the agent + pinentry.
----
- t/000_setup.t | 2 +-
- test/new_secret.pgp | 58 ++++++++++++++++++++++++++++++++++++++++++
- test/secret-keys/1.0.test | 4 +++
- test/secret-keys/1.modern.test | 5 ++++
- 4 files changed, 68 insertions(+), 1 deletion(-)
- create mode 100644 test/new_secret.pgp
-
-diff --git a/t/000_setup.t b/t/000_setup.t
-index a8e3042..b183241 100644
---- a/t/000_setup.t
-+++ b/t/000_setup.t
-@@ -19,7 +19,7 @@ TEST
- copy('test/gpg.conf', 'test/gnupghome/gpg.conf');
- reset_handles();
-
-- my $pid = $gnupg->import_keys(command_args => [ 'test/public_keys.pgp', 'test/secret_keys.pgp' ],
-+ my $pid = $gnupg->import_keys(command_args => [ 'test/public_keys.pgp', 'test/secret_keys.pgp', 'test/new_secret.pgp' ],
- options => [ 'batch'],
- handles => $handles);
- waitpid $pid, 0;
-diff --git a/test/new_secret.pgp b/test/new_secret.pgp
-new file mode 100644
-index 0000000..5feb72c
---- /dev/null
-+++ b/test/new_secret.pgp
-@@ -0,0 +1,58 @@
-+-----BEGIN PGP PRIVATE KEY BLOCK-----
-+
-+lQPGBFf9iNIBCACZGF36JFTAggUJK85gweUquqh0kvVQICUtyiHXFXBBPzCK+RWL
-+oc5yeOfILHH7FfOztwPH1oJ7SWQtOgpuoiMHPtF7ne+MYevMf9jTYb/xCT0yZID5
-+/ieoHwUQQPiowxGewOww23RLQ1Cf46nqGBUD+fsWwT2Eq6ojLp/H72h+2lQ1ZCWd
-+Q/9MSQQgDo5tWptokFGmLBKCS59pYMBaLbKSj7lFa/ekPm9zhcdmmLrLHCS9rIUP
-+VKlWAg02MVmMB4fYm9nbtuwYHWvbDFYzpVr2WNlRZlPy0Y46ahxFbFwhtmOJAgT1
-+tgaQtDXo3kXRXngYZstDfe61Hqmc44j1vJ4VABEBAAH+BwMCnvb4v9vnhhzmdZdJ
-+EzK3ikXYQp3PcOMDlRE5qtBmXhOJXH2tdEmXjegjWGA501eeoks0VnpBba2m4B36
-+Z37fjpOEi4QOuTn6emVwijJZgmmTAC7JHNzAW+IsiRvk/2907UZCwa/1UQpC0bik
-+pHTZx+yKp33vGbkbCkKgHFQoHcS9D1by0WOkaLSlcE9CUCKb5LCe2Q1KDwZGrg60
-+4WUvg9eM2eatixAyOJEoRONlXDcQnUhSnG5+TUPNhVVWIaM/tPAgYmBG5oCSJ/N0
-+ls8cXoOVup/itBHo2Bfn+nyh0OAWdgdVmB0rPYUCLJV0FiQx5tB59OHmA3Naokj5
-+rvumyklCg314NnkEXrbPq7kKbX0X8UPoXdzAmalb4++OhgzEwd3NkWxvFSxKkQAt
-+XAU5i9XNHJXLwATAMlEaXMBmfcpjyIx4WpBUSmYMTjh0Nu5ee+kGvMY9fUxOKbet
-+IS9agFSMwVNRsX91+pKtBCQc7Je5tIrLhC8Hbvotn0GA8iFgu6LBqkrUO9Rh30Xs
-+vzz3oXm7WgHbL30m9h+rJ2dmPZOwmW/0zRUec/7alizx0T4sLx7T0qUPUxeEjkeU
-+JWtqfrcXEc3xIR9r5S2xqsUSKx6h1UhHMeMtQaDBgeH/Syq7a2gnkNoY84xxojGj
-+lGkis5PF3xFpYqvjY0thyPFNxQguRlqktN8gNB+V1dShbCpNI9bDzv4pzvogEiM0
-+EM/xvJSCkARCe6nqOugWV8j5f3+9tuyREqcidHq+PR+USoNYdUWQO14kPY6e62wO
-+lC5B4G7TDQtigCfOyEOiPXYC/qnC8sPVR2u5bCYm2YJT7L+rYRLSN+628qz7BwH3
-+9XtpnRtBFWpjI5qjn4uMM42e3k5UVB/r4GyrLXhEuO8D81TVzRQhjiqLweguk73h
-+VDjEd0yachHbtCxHbnVQRzo6SW50ZXJmYWNlIFRlc3Qga2V5IDx0ZXN0QGV4YW1w
-+bGUub3JnPokBNwQTAQgAIQUCV/2I0gIbAwULCQgHAgYVCAkKCwIEFgIDAQIeAQIX
-+gAAKCRAbkTzptnR93EZkB/9groVsVMBJtGP1GSFMg2Q9loyijXT2P6hCbUTS4YMz
-+O4jQPB8UQ39XIhyWo7hVGsXeA777+7VTto7q0CG9Ph7FTGKK8W2AnzTUKNdXAC6h
-+qIc+ymvlm71GxhkKFR0vDbFg6CLJ/MX/x1Bd0TKh4RZtgOqX6A7Pzw/AI7f2YJcJ
-+BKPT+/q/F/Wp1r+mxZ5pxUvYm643GVzdnbtuoqgBLng/3n1zjIz+oIz6RGBjzHni
-+3TUTKe//ewn1lIdTxPdUZA9G4vTE5dCnM4MHTxQSXA+aUexuONswQhiANtfVCW8c
-+sf9MQpkQ/Vqv9hfeYwH4pJ8IPK1No9F0a0fvnq2JaX4gnQPGBFf9iNIBCADEQ6HK
-+s5tWN2Ph/3A6D0A2nSc6m1Mh/AXhdptka0aPhhVgspCmQ1lJP/Kdf6AnlCi6u1G7
-+QXvGX8OtbKNosLi91nIqvNwckUOvXrLcAk/epkmidopOuHUZhE+1UaLKs7UssBOe
-+TQTtADdl2786E3qbtaNrjDTvbNesU1DEZjNoBWfKYHZYv2wCF170Lwzp7NJhAueO
-+bTwfUO8EusST6d1NYB0zFxbBi60/hJHCfcAuaSn00jFQ+kj8m7jXCgcyB+1+25d2
-+gpPbs19S4pi9f7eQflhglm0wB13C6yl+YgwVZQxU/fU70jgSYhkXNPx5bEN3WGkg
-+4hnP53hrsI4p3se1ABEBAAH+BwMCAppvwSTp9Y/mu317D14a9k6m/zC2LrzPx6dl
-+P3GtDJUCs1CVH/wXsUxLY4hAgS188xPhNLuIWuXwQ7qX7E8kanxgPqeK7NTAPKxH
-+CEqJPevFRBtftHq3zqZZF9CHXulDO3KkWxIHANMclq+zcUotrc4GXIxeYjewXv9p
-+tzKEjlt27Q00VvwRM7JVxBlC3xJvKXf6zyRoUt2/Clq+CFkb2s+dAzCI52o7tlB9
-+El84sTIlJr0+b6+GcwrKonS8HcGUECfYmSiIiNmxlkJ/4OabDlDYlzvmCYv2pMjc
-+Bif70Dowb8TBD/iTFLPY2lkhqBFi3Bcqc51MVecaQk3rRbVyOqhvGaRE084/LmkN
-+gkE6vQKRSbzRmYwyKC/QUKOW5qbl5Jf3lrjVeM5tEnvJeRCfZEokKjIZul4nX4dK
-+zxH+l+sCUA+RnEeGB2y1yhnPkP4dYHEb8iMLINqXQd18FpBFSs9yv9tFWJhdblUK
-+SiS8DXmuoZI2Mk8yMZ0j0bi8mu9eh52dqYgBGD7TgjP5vpYU/zbtpNgMP0Zvne1X
-+gig6NKK1+3VAZaiOvYUUHZERJGp/eggTtF66cD/0EHJjoZ/0pAciEvWYUyXWVBdj
-+eVWBZE/RVOwrTMBVtrxQsPJ3sfeGlLt21IZYKathTZ/dn5PSlU+i4f9VyC/hHd8S
-+xouQU3nB//ihbrR65YH5E53e8+jPaRtFvLbcqmY8YftV0y/5BZwduZoxcOtxD3A0
-+J/2GVpUhs3WngCksdUAEbrEXzKKSOC7b4KDw2sTIT5xHra4CBK5L5N85ny8tG7A6
-+wmTt+6PHo51gx/W/0jiMB3rEiGoTZ86uWLaGv5SgqLP49euCIEXNKK9srFK3o7QE
-+04upH9zOXR8ytvPOLy/K5zT6YH2eyNs19sWfjAfP/bxhnrDYajsZ2WKZiQEfBBgB
-+CAAJBQJX/YjSAhsMAAoJEBuRPOm2dH3c+6kH+wWoEqTlPdPLZcTN8I5a6HHD0Ul8
-+7xt3OtiRFoMD2M+zgLvImaj8AULap4w/0G+J+7PCUER8JhcePSzLbizfpTczbDP2
-+E1LhEM8IBE6GT8yL8VB9AL1xW+hXIi5sWW/f900deOhoh7ikrP7KxT0c8zQjaaqV
-+n6bio93CvZ3yBqMO20apwWDyiSoBpXVjLrW00BdL8i9Rsf6v5UwIIy9o7pfjK5zo
-+mAZM2dKzlp9z4q5P6yE4aXI0bHz+XvG7hdpkHmjG5A+EQCnN2qoDNIA4QiRhH8TQ
-+aTaj4AlCiCAV2hEelPYve5QKccAsfC//qr+FMF+0bhZa05X2afxLYtku0Ms=
-+=ftgB
-+-----END PGP PRIVATE KEY BLOCK-----
-diff --git a/test/secret-keys/1.0.test b/test/secret-keys/1.0.test
-index 129d472..f8239a9 100644
---- a/test/secret-keys/1.0.test
-+++ b/test/secret-keys/1.0.test
-@@ -5,3 +5,7 @@ uid GnuPG test key (for testing purposes only)
- uid Foo Bar (1)
- ssb 768g/2E854A6B 2000-02-06
-
-+sec 2048R/B6747DDC 2016-10-12
-+uid GnuPG::Interface Test key
-+ssb 2048R/AE441D0F 2016-10-12
-+
-diff --git a/test/secret-keys/1.modern.test b/test/secret-keys/1.modern.test
-index 3e46407..42b27a1 100644
---- a/test/secret-keys/1.modern.test
-+++ b/test/secret-keys/1.modern.test
-@@ -6,3 +6,8 @@ uid [ unknown] GnuPG test key (for testing purposes only)
- uid [ unknown] Foo Bar (1)
- ssb elg768 2000-02-06 [E]
-
-+sec rsa2048 2016-10-12 [SC]
-+ 278F850AA702911F1318F0A61B913CE9B6747DDC
-+uid [ unknown] GnuPG::Interface Test key
-+ssb rsa2048 2016-10-12 [E]
-+
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0016-Test-use-of-gpg-without-explicit-passphrase-agent-pi.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0016-Test-use-of-gpg-without-explicit-passphrase-agent-pi.patch
deleted file mode 100644
index 21e6294efaed..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0016-Test-use-of-gpg-without-explicit-passphrase-agent-pi.patch
+++ /dev/null
@@ -1,302 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Tue, 11 Oct 2016 21:29:22 -0400
-Subject: Test use of gpg without explicit passphrase (agent+pinentry)
-
-The modern GnuPG suite encourages the use of gpg-agent to control
-access to secret key material. In this use case, we avoid setting an
-explicit passphrase in code, and rely on either a correctly-configured
-and primed gpg-agent or a dedicated pinentry program to supply the
-passphrase.
-
-This additional test verifies that the passphrase can be handled by
-the agent. Note that the passphrase for this additional test key is
-*not* the default passphrase, so this test should fail in the event
-that gpg can't use the agent and the pinentry for this task.
-
-Unfortunately, this all assumes that we're using GnuPG "Modern". I've
-noted concerns about writing forward- and backward-compatible bindings
-for GnuPG here:
-https://lists.gnupg.org/pipermail/gnupg-devel/2016-October/031800.html
----
- README | 41 +++++++++++++++++++++++++++--------------
- lib/GnuPG/Interface.pm | 26 +++++++++++++++++++++++++-
- t/MyTestSpecific.pm | 10 ++++++++--
- t/decrypt.t | 27 +++++++++++++++++++++++++++
- test/encrypted.2.gpg | 12 ++++++++++++
- test/fake-pinentry.pl | 2 +-
- test/plain.2.txt | 1 +
- 7 files changed, 101 insertions(+), 18 deletions(-)
- create mode 100644 test/encrypted.2.gpg
- create mode 100644 test/plain.2.txt
-
-diff --git a/README b/README
-index a05ef9b..be06ef3 100644
---- a/README
-+++ b/README
-@@ -5,7 +5,7 @@ SYNOPSIS
- # A simple example
- use IO::Handle;
- use GnuPG::Interface;
--
-+
- # setting up the situation
- my $gnupg = GnuPG::Interface->new();
- $gnupg->options->hash_init( armor => 1,
-@@ -24,7 +24,7 @@ SYNOPSIS
- # Now we'll go about encrypting with the options already set
- my @plaintext = ( 'foobar' );
- my $pid = $gnupg->encrypt( handles => $handles );
--
-+
- # Now we write to the input of GnuPG
- print $input @plaintext;
- close $input;
-@@ -140,13 +140,26 @@ OBJECT METHODS
- standard error, standard output, or standard error. If the status or
- logger handle is not defined, this channel of communication is never
- established with GnuPG, and so this information is not generated and
-- does not come into play. If the passphrase data member handle of the
-- handles object is not defined, but the the passphrase data member
-- handle of GnuPG::Interface object is, GnuPG::Interface will handle
-- passing this information into GnuPG for the user as a convenience.
-- Note that this will result in GnuPG::Interface storing the
-- passphrase in memory, instead of having it simply 'pass-through' to
-- GnuPG via a handle.
-+ does not come into play.
-+
-+ If the passphrase data member handle of the handles object is not
-+ defined, but the the passphrase data member handle of
-+ GnuPG::Interface object is, GnuPG::Interface will handle passing
-+ this information into GnuPG for the user as a convenience. Note that
-+ this will result in GnuPG::Interface storing the passphrase in
-+ memory, instead of having it simply 'pass-through' to GnuPG via a
-+ handle.
-+
-+ If neither the passphrase data member of the GnuPG::Interface nor
-+ the passphrase data member of the handles object is defined, then
-+ GnuPG::Interface assumes that access and control over the secret key
-+ will be handled by the running gpg-agent process. This represents
-+ the simplest mode of operation with the GnuPG "modern" suite
-+ (version 2.1 and later). It is also the preferred mode for tools
-+ intended to be user-facing, since the user will be prompted directly
-+ by gpg-agent for use of the secret key material. Note that for
-+ programmatic use, this mode requires the gpg-agent and pinentry to
-+ already be correctly configured.
-
- Other Methods
- get_public_keys( @search_strings )
-@@ -241,7 +254,7 @@ EXAMPLES
-
- my $handles = GnuPG::Handles->new( stdin => $input,
- stdout => $output );
--
-+
- # this sets up the communication
- # Note that the recipients were specified earlier
- # in the 'options' data member of the $gnupg object.
-@@ -315,7 +328,7 @@ EXAMPLES
- # a file written to disk
- # Make sure you "use IO::File" if you use this module!
- my $cipher_file = IO::File->new( 'encrypted.gpg' );
--
-+
- # this sets up the communication
- my $pid = $gnupg->decrypt( handles => $handles );
-
-@@ -346,7 +359,7 @@ EXAMPLES
- # This time we'll just let GnuPG print to our own output
- # and read from our input, because no input is needed!
- my $handles = GnuPG::Handles->new();
--
-+
- my @ids = ( 'ftobin', '0xABCD1234ABCD1234ABCD1234ABCD1234ABCD1234' );
-
- # this time we need to specify something for
-@@ -354,7 +367,7 @@ EXAMPLES
- # search ids as arguments
- my $pid = $gnupg->list_public_keys( handles => $handles,
- command_args => [ @ids ] );
--
-+
- waitpid $pid, 0;
-
- Creating GnuPG::PublicKey Objects
-@@ -372,7 +385,7 @@ EXAMPLES
- command_args => [ qw( test/key.1.asc ) ],
- handles => $handles,
- );
--
-+
- my @out = <$handles->stdout()>;
- waitpid $pid, 0;
-
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index 29205f0..5d8b0ec 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -106,6 +106,14 @@ sub fork_attach_exec( $% ) {
- my ( $self, %args ) = @_;
-
- my $handles = $args{handles} or croak 'no GnuPG::Handles passed';
-+ my $use_loopback_pinentry = 0;
-+
-+ # WARNING: this assumes that we're using the "modern" GnuPG suite
-+ # -- version 2.1.x or later. It's not clear to me how we can
-+ # safely and efficiently avoid this assumption (see
-+ # https://lists.gnupg.org/pipermail/gnupg-devel/2016-October/031800.html)
-+ $use_loopback_pinentry = 1
-+ if ($handles->passphrase());
-
- # deprecation support
- $args{commands} ||= $args{gnupg_commands};
-@@ -293,8 +301,12 @@ sub fork_attach_exec( $% ) {
- $self->options->$option($fileno);
- }
-
-+ my @args = $self->options->get_args();
-+ push @args, '--pinentry-mode', 'loopback'
-+ if $use_loopback_pinentry;
-+
- my @command = (
-- $self->call(), $self->options->get_args(),
-+ $self->call(), @args,
- @commands, @command_args
- );
-
-@@ -1005,6 +1017,7 @@ and standard error will be tied to the running program's standard error,
- standard output, or standard error. If the B or B handle
- is not defined, this channel of communication is never established with GnuPG,
- and so this information is not generated and does not come into play.
-+
- If the B data member handle of the B object
- is not defined, but the the B data member handle of GnuPG::Interface
- object is, GnuPG::Interface will handle passing this information into GnuPG
-@@ -1012,6 +1025,17 @@ for the user as a convenience. Note that this will result in
- GnuPG::Interface storing the passphrase in memory, instead of having
- it simply 'pass-through' to GnuPG via a handle.
-
-+If neither the B data member of the GnuPG::Interface nor
-+the B data member of the B object is defined,
-+then GnuPG::Interface assumes that access and control over the secret
-+key will be handled by the running gpg-agent process. This represents
-+the simplest mode of operation with the GnuPG "modern" suite (version
-+2.1 and later). It is also the preferred mode for tools intended to
-+be user-facing, since the user will be prompted directly by gpg-agent
-+for use of the secret key material. Note that for programmatic use,
-+this mode requires the gpg-agent and pinentry to already be correctly
-+configured.
-+
- =back
-
- =head2 Other Methods
-diff --git a/t/MyTestSpecific.pm b/t/MyTestSpecific.pm
-index c8764cc..e513c25 100644
---- a/t/MyTestSpecific.pm
-+++ b/t/MyTestSpecific.pm
-@@ -55,9 +55,15 @@ struct( Text => { fn => "\$", fh => "\$", data => "\$" } );
- $texts{plain} = Text->new();
- $texts{plain}->fn( 'test/plain.1.txt' );
-
-+$texts{alt_plain} = Text->new();
-+$texts{alt_plain}->fn( 'test/plain.2.txt' );
-+
- $texts{encrypted} = Text->new();
- $texts{encrypted}->fn( 'test/encrypted.1.gpg' );
-
-+$texts{alt_encrypted} = Text->new();
-+$texts{alt_encrypted}->fn( 'test/encrypted.2.gpg' );
-+
- $texts{signed} = Text->new();
- $texts{signed}->fn( 'test/signed.1.asc' );
-
-@@ -68,7 +74,7 @@ $texts{temp} = Text->new();
- $texts{temp}->fn( 'test/temp' );
-
-
--foreach my $name ( qw( plain encrypted signed key ) )
-+foreach my $name ( qw( plain alt_plain encrypted alt_encrypted signed key ) )
- {
- my $entry = $texts{$name};
- my $filename = $entry->fn();
-@@ -90,7 +96,7 @@ sub reset_handles
- stderr => $stderr
- );
-
-- foreach my $name ( qw( plain encrypted signed key ) )
-+ foreach my $name ( qw( plain alt_plain encrypted alt_encrypted signed key ) )
- {
- my $entry = $texts{$name};
- my $filename = $entry->fn();
-diff --git a/t/decrypt.t b/t/decrypt.t
-index b2639ed..ee41448 100644
---- a/t/decrypt.t
-+++ b/t/decrypt.t
-@@ -58,3 +58,30 @@ TEST
- {
- return compare( $texts{plain}->fn(), $texts{temp}->fn() ) == 0;
- };
-+
-+
-+# test without default_passphrase (that is, by using the agent)
-+TEST
-+{
-+ reset_handles();
-+
-+ $handles->stdin( $texts{alt_encrypted}->fh() );
-+ $handles->options( 'stdin' )->{direct} = 1;
-+
-+ $handles->stdout( $texts{temp}->fh() );
-+ $handles->options( 'stdout' )->{direct} = 1;
-+
-+ $gnupg->clear_passphrase();
-+
-+ my $pid = $gnupg->decrypt( handles => $handles );
-+
-+ waitpid $pid, 0;
-+
-+ return $CHILD_ERROR == 0;
-+};
-+
-+
-+TEST
-+{
-+ return compare( $texts{alt_plain}->fn(), $texts{temp}->fn() ) == 0;
-+};
-diff --git a/test/encrypted.2.gpg b/test/encrypted.2.gpg
-new file mode 100644
-index 0000000..105cbb3
---- /dev/null
-+++ b/test/encrypted.2.gpg
-@@ -0,0 +1,12 @@
-+-----BEGIN PGP MESSAGE-----
-+
-+hQEMAw3NS2KuRB0PAQgAuCMQO6blPRIJZib+kDa51gac+BYPl8caXYTLqIHtiz2/
-+YRVqePJON4lNAqT6qUksIzQHtejFO6tb1SLqgX9Ti+fKAMLrQw9VGOYaJFoRrTJs
-++X33S4GHVVikRTu0dydAsekbfPSc2nRmTFUlSEV3psgAmg9xy8KA6cZroK9Xfcuh
-+xW7KLE0hLP+2NZ7zNmJMdu6LDGzvlQsnm1UeElXK8XdMGf8kA3R+GgeeOnR/oEQc
-+Uep77k/fLc+UV4fp9Dk1OBeg3Ko/irSaefk4mU7F4HmS8jIERHRvXBTiur1Zx8Nx
-+9U3fcQuc+P9+JC89iS4PJPF1Hr0MlezAghZYJrhOrtJIAe5Uaft5KMGRfy0VQnAs
-+MHqGnGtzzVWK6GK83ibgG4tTfPEHHIgNFsJf3rM4cWklUmCS9TeeDJJZfhnRA6+/
-+X82e6OI7QNbO
-+=DlGE
-+-----END PGP MESSAGE-----
-diff --git a/test/fake-pinentry.pl b/test/fake-pinentry.pl
-index 12d3611..40b8b08 100755
---- a/test/fake-pinentry.pl
-+++ b/test/fake-pinentry.pl
-@@ -21,7 +21,7 @@ while () {
- chomp;
- next if (/^$/);
- next if (/^#/);
-- print ("D test\n") if (/^getpin/i);
-+ print ("D supercalifragilisticexpialidocious\n") if (/^getpin/i);
- print "OK\n";
- exit if (/^bye/i);
- }
-diff --git a/test/plain.2.txt b/test/plain.2.txt
-new file mode 100644
-index 0000000..da5a1d5
---- /dev/null
-+++ b/test/plain.2.txt
-@@ -0,0 +1 @@
-+test message
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0017-Kill-any-GnuPG-agent-before-and-after-the-test-suite.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0017-Kill-any-GnuPG-agent-before-and-after-the-test-suite.patch
deleted file mode 100644
index 2f20f1455397..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0017-Kill-any-GnuPG-agent-before-and-after-the-test-suite.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Thu, 25 May 2017 16:07:45 -0400
-Subject: Kill any GnuPG agent before and after the test suite.
-
-This helps to ensure that the test suite daemon is started fresh at
-every test suite run. And it also avoids leaving a daemon running
-after the test suite, assuming the test suite manages to reach the
-end.
-
-This is considered a reasonable practice by upstream.
----
- t/000_setup.t | 3 +++
- t/zzz_cleanup.t | 2 ++
- 2 files changed, 5 insertions(+)
-
-diff --git a/t/000_setup.t b/t/000_setup.t
-index b183241..4dc4329 100644
---- a/t/000_setup.t
-+++ b/t/000_setup.t
-@@ -17,6 +17,9 @@ TEST
- $agentconf->write("pinentry-program " . getcwd() . "/test/fake-pinentry.pl\n");
- $agentconf->close();
- copy('test/gpg.conf', 'test/gnupghome/gpg.conf');
-+ # reset the state of any long-lived gpg-agent, ignoring errors:
-+ system('gpgconf', '--homedir=test/gnupghome', '--quiet', '--kill', 'gpg-agent');
-+
- reset_handles();
-
- my $pid = $gnupg->import_keys(command_args => [ 'test/public_keys.pgp', 'test/secret_keys.pgp', 'test/new_secret.pgp' ],
-diff --git a/t/zzz_cleanup.t b/t/zzz_cleanup.t
-index 5c03a72..eea3a48 100644
---- a/t/zzz_cleanup.t
-+++ b/t/zzz_cleanup.t
-@@ -12,6 +12,8 @@ use File::Path qw (remove_tree);
- TEST
- {
- my $err = [];
-+ # kill off any long-lived gpg-agent, ignoring errors:
-+ system('gpgconf', '--homedir=test/gnupghome', '--quiet', '--kill', 'gpg-agent');
- remove_tree('test/gnupghome', {error => \$err});
- return ! @$err;
- };
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0018-Use-a-short-temporary-homedir-during-the-test-suite.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0018-Use-a-short-temporary-homedir-during-the-test-suite.patch
deleted file mode 100644
index 457a5e74d532..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0018-Use-a-short-temporary-homedir-during-the-test-suite.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Fri, 26 May 2017 09:51:40 -0400
-Subject: Use a short temporary homedir during the test suite
-
-This avoids problems with the length of the path to the homedir as
-compared to the size limits of sockaddr_un.sun_path, particularly on
-systems where /run/user/$(id -u) is not present or available (such as
-many minimalist build environments).
----
- t/000_setup.t | 9 +++++----
- t/MyTestSpecific.pm | 18 +++++++++++++++++-
- t/list_secret_keys.t | 3 ++-
- t/zzz_cleanup.t | 6 ++++--
- 4 files changed, 28 insertions(+), 8 deletions(-)
-
-diff --git a/t/000_setup.t b/t/000_setup.t
-index 4dc4329..82d7005 100644
---- a/t/000_setup.t
-+++ b/t/000_setup.t
-@@ -12,13 +12,14 @@ use File::Copy;
-
- TEST
- {
-- make_path('test/gnupghome', { mode => 0700 });
-- my $agentconf = IO::File->new( "> test/gnupghome/gpg-agent.conf" );
-+ my $homedir = $gnupg->options->homedir();
-+ make_path($homedir, { mode => 0700 });
-+ my $agentconf = IO::File->new( "> " . $homedir . "/gpg-agent.conf" );
- $agentconf->write("pinentry-program " . getcwd() . "/test/fake-pinentry.pl\n");
- $agentconf->close();
-- copy('test/gpg.conf', 'test/gnupghome/gpg.conf');
-+ copy('test/gpg.conf', $homedir . '/gpg.conf');
- # reset the state of any long-lived gpg-agent, ignoring errors:
-- system('gpgconf', '--homedir=test/gnupghome', '--quiet', '--kill', 'gpg-agent');
-+ system('gpgconf', '--homedir', $homedir, '--quiet', '--kill', 'gpg-agent');
-
- reset_handles();
-
-diff --git a/t/MyTestSpecific.pm b/t/MyTestSpecific.pm
-index e513c25..809d55c 100644
---- a/t/MyTestSpecific.pm
-+++ b/t/MyTestSpecific.pm
-@@ -22,6 +22,7 @@ use IO::Seekable;
- use File::Compare;
- use Exporter;
- use Class::Struct;
-+use File::Temp qw (tempdir);
-
- use GnuPG::Interface;
- use GnuPG::Handles;
-@@ -40,10 +41,25 @@ use vars qw( @ISA @EXPORT
-
- $gnupg = GnuPG::Interface->new( passphrase => 'test' );
-
-+
-+my $homedir;
-+if (-f "test/gnupghome") {
-+ my $record = IO::File->new( "< test/gnupghome" );
-+ $homedir = <$record>;
-+ $record->close();
-+} else {
-+ $homedir = tempdir( DIR => '/tmp');
-+ my $record = IO::File->new( "> test/gnupghome" );
-+ $record->write($homedir);
-+ $record->close();
-+}
-+
- my @version = split('\.', $gnupg->version());
- $gpg_is_modern = ($version[0] > 2 || ($version[0] == 2 && $version[1] >= 1));
-
--$gnupg->options->hash_init( homedir => 'test/gnupghome',
-+
-+
-+$gnupg->options->hash_init( homedir => $homedir,
- armor => 1,
- meta_interactive => 0,
- meta_signing_key_id => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C',
-diff --git a/t/list_secret_keys.t b/t/list_secret_keys.t
-index 7040c38..d1e3f30 100644
---- a/t/list_secret_keys.t
-+++ b/t/list_secret_keys.t
-@@ -23,8 +23,9 @@ TEST
- $outfile = 'test/secret-keys/1.out';
- my $out = IO::File->new( "> $outfile" )
- or die "cannot open $outfile for writing: $ERRNO";
-+ my $modern_pubring_line = $gnupg->options->homedir() . "/pubring.kbx\n";
- while (<$stdout>) {
-- if ($gpg_is_modern && /^\/.*\/test\/gnupghome\/pubring.kbx$/) {
-+ if ($gpg_is_modern && ($_ eq $modern_pubring_line)) {
- $out->print("test/gnupghome/pubring.kbx\n");
- } elsif ($gpg_is_modern && /^--*$/) {
- $out->print("--------------------------\n");
-diff --git a/t/zzz_cleanup.t b/t/zzz_cleanup.t
-index eea3a48..c3ec16f 100644
---- a/t/zzz_cleanup.t
-+++ b/t/zzz_cleanup.t
-@@ -11,9 +11,11 @@ use File::Path qw (remove_tree);
- # this is actually no test, just cleanup.
- TEST
- {
-+ my $homedir = $gnupg->options->homedir();
- my $err = [];
- # kill off any long-lived gpg-agent, ignoring errors:
-- system('gpgconf', '--homedir=test/gnupghome', '--quiet', '--kill', 'gpg-agent');
-- remove_tree('test/gnupghome', {error => \$err});
-+ system('gpgconf', '--homedir', $homedir, '--quiet', '--kill', 'gpg-agent');
-+ remove_tree($homedir, {error => \$err});
-+ unlink('test/gnupghome');
- return ! @$err;
- };
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0019-Make-things-work-with-gpg1-assuming-plain-gpg-is-mod.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0019-Make-things-work-with-gpg1-assuming-plain-gpg-is-mod.patch
deleted file mode 100644
index ae6143190de3..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0019-Make-things-work-with-gpg1-assuming-plain-gpg-is-mod.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From: Daniel Kahn Gillmor
-Date: Fri, 26 May 2017 18:15:24 -0400
-Subject: Make things work with gpg1 (assuming plain 'gpg' is modern)
-
- * avoid sending --pinentry-mode=loopback if gpg is invoked as gpg1
- * fix up t/list_secret_keys to account for the varied output
- * t/decrypt.t still fails two agent-only tests, but presumably folks
- who use gpg1 are not expecting to use the agent.
----
- lib/GnuPG/Interface.pm | 5 ++++-
- t/list_secret_keys.t | 9 +++++----
- 2 files changed, 9 insertions(+), 5 deletions(-)
-
-diff --git a/lib/GnuPG/Interface.pm b/lib/GnuPG/Interface.pm
-index 5d8b0ec..f80ead5 100644
---- a/lib/GnuPG/Interface.pm
-+++ b/lib/GnuPG/Interface.pm
-@@ -112,8 +112,11 @@ sub fork_attach_exec( $% ) {
- # -- version 2.1.x or later. It's not clear to me how we can
- # safely and efficiently avoid this assumption (see
- # https://lists.gnupg.org/pipermail/gnupg-devel/2016-October/031800.html)
-+ #
-+ # as a (brittle and incomplete) cleanup, we will avoid trying to
-+ # send pinentry-loopback if the program is invoked as "gpg1"
- $use_loopback_pinentry = 1
-- if ($handles->passphrase());
-+ if ($handles->passphrase() && ! ($self->call =~ m/gpg1$/));
-
- # deprecation support
- $args{commands} ||= $args{gnupg_commands};
-diff --git a/t/list_secret_keys.t b/t/list_secret_keys.t
-index d1e3f30..8e3c911 100644
---- a/t/list_secret_keys.t
-+++ b/t/list_secret_keys.t
-@@ -23,11 +23,12 @@ TEST
- $outfile = 'test/secret-keys/1.out';
- my $out = IO::File->new( "> $outfile" )
- or die "cannot open $outfile for writing: $ERRNO";
-- my $modern_pubring_line = $gnupg->options->homedir() . "/pubring.kbx\n";
-+ my $seckey_file = $gpg_is_modern ? 'pubring.kbx' : 'secring.gpg';
-+ my $pubring_line = $gnupg->options->homedir() . '/' . $seckey_file . "\n";
- while (<$stdout>) {
-- if ($gpg_is_modern && ($_ eq $modern_pubring_line)) {
-- $out->print("test/gnupghome/pubring.kbx\n");
-- } elsif ($gpg_is_modern && /^--*$/) {
-+ if ($_ eq $pubring_line) {
-+ $out->print('test/gnupghome/'.$seckey_file."\n");
-+ } elsif (/^--*$/) {
- $out->print("--------------------------\n");
- } else {
- $out->print( $_ );
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0030-gpg-2.2.6.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0030-gpg-2.2.6.patch
deleted file mode 100644
index 1268beeb0a21..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0030-gpg-2.2.6.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 7c85ac40660861e7507c43d043323c3f1b83921b Mon Sep 17 00:00:00 2001
-From: Niko Tyni
-Date: Wed, 20 Jun 2018 21:57:50 +0300
-Subject: [PATCH] Fix test suite for GnuPG >= 2.2.6 compatibility
-
-GnuPG 2.2.6 (commit 1a5d95e7319e7e6f) started marking signatures
-with an expired key with '?', as seen with for instance
-
- GNUPGHOME=./test/gnupghome/ gpg --list-sigs 0xF950DA9C
-
-Adapt the test suite accordingly.
-
-See https://dev.gnupg.org/rG1a5d95e7319e7e6f0dd11064a26cbbc371b05214
-
-Bug-Debian: https://bugs.debian.org/900051
----
- t/get_public_keys.t | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/t/get_public_keys.t b/t/get_public_keys.t
-index 7893625..ede080a 100644
---- a/t/get_public_keys.t
-+++ b/t/get_public_keys.t
-@@ -13,8 +13,12 @@ use MyTestSpecific;
- use GnuPG::PrimaryKey;
- use GnuPG::SubKey;
-
-+use version;
-+
- my ( $given_key, $handmade_key );
-
-+my $gnupg_version = version->parse($gnupg->version);
-+
- TEST
- {
- reset_handles();
-@@ -74,7 +78,7 @@ TEST
- date_string => '2000-03-16',
- hex_id => '56FFD10A260C4FA3',
- sig_class => 0x10,
-- validity => '!'),
-+ validity => $gnupg_version < version->parse('2.2.6') ? '!' : '?'),
- GnuPG::Signature->new(
- date => 949813093,
- algo_num => 17,
-@@ -115,7 +119,7 @@ TEST
- date_string => '2000-03-16',
- hex_id => '56FFD10A260C4FA3',
- sig_class => 0x10,
-- validity => '!'),
-+ validity => $gnupg_version < version->parse('2.2.6') ? '!' : '?'),
- GnuPG::Signature->new(
- date => 953179891,
- algo_num => 17,
diff --git a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0031-gpg-2.2.8.patch b/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0031-gpg-2.2.8.patch
deleted file mode 100644
index 6c025007eef5..000000000000
--- a/dev-perl/GnuPG-Interface/files/GnuPG-Interface-0.520.0-0031-gpg-2.2.8.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From b356e7fda15e39e037da1888a24000a96fc85c90 Mon Sep 17 00:00:00 2001
-From: Niko Tyni
-Date: Sun, 24 Jun 2018 16:19:25 +0300
-Subject: [PATCH] Fix test suite for GnuPG >= 2.2.8 compatibility
-
-GnuPG 2.2.8 onwards issues a hard failure when decrypting
-messages not using the MDC mode.
-
-Bug-Debian: https://bugs.debian.org/900051
----
- t/decrypt.t | 19 +++++++++++++++++--
- 1 file changed, 17 insertions(+), 2 deletions(-)
-
-diff --git a/t/decrypt.t b/t/decrypt.t
-index ee41448..2d6740c 100644
---- a/t/decrypt.t
-+++ b/t/decrypt.t
-@@ -6,6 +6,7 @@
- use strict;
- use English qw( -no_match_vars );
- use File::Compare;
-+use version;
-
- use lib './t';
- use MyTest;
-@@ -13,6 +14,8 @@ use MyTestSpecific;
-
- my $compare;
-
-+my $gnupg_version = version->parse($gnupg->version);
-+
- TEST
- {
- reset_handles();
-@@ -26,7 +29,13 @@ TEST
- close $stdout;
- waitpid $pid, 0;
-
-- return $CHILD_ERROR == 0;;
-+ if ($gnupg_version < version->parse('2.2.8')) {
-+ return $CHILD_ERROR == 0;;
-+ } else {
-+ local $/ = undef;
-+ my $errstr = <$stderr>;
-+ return (($CHILD_ERROR >> 8 == 2) and ($errstr =~ /ignore-mdc-error/));
-+ }
- };
-
-
-@@ -50,7 +59,13 @@ TEST
-
- waitpid $pid, 0;
-
-- return $CHILD_ERROR == 0;
-+ if ($gnupg_version < version->parse('2.2.8')) {
-+ return $CHILD_ERROR == 0;
-+ } else {
-+ local $/ = undef;
-+ my $errstr = <$stderr>;
-+ return (($CHILD_ERROR >> 8 == 2) and ($errstr =~ /ignore-mdc-error/));
-+ }
- };
-
-
diff --git a/dev-perl/Google-Ads-AdWords-Client/files/4.14.0-no-dot-in-inc.patch b/dev-perl/Google-Ads-AdWords-Client/files/4.14.0-no-dot-in-inc.patch
deleted file mode 100644
index 218cb69b1483..000000000000
--- a/dev-perl/Google-Ads-AdWords-Client/files/4.14.0-no-dot-in-inc.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From a67324b5622088422b0b0c1a403c594312452d16 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 4 Jun 2017 07:35:25 +1200
-Subject: [PATCH 1/3] t/001_require.t: Force a relative path load for require
- test
-
-require_ok("Foo") is implemented in terms of require "Foo"
-
-This means:
-
-require "Foo.pm"
-
-Only loads "Foo.pm" from "." if:
-
-- '.' is in @INC ( Not true by default in Perl >5.25.11 )
-- Foo.pm is not installed in Perl5lib ( dangerous assumption )
-
-This forces require to side-step @INC traversal by using an explicit
-prefix of "./", which is special-cased in require.
-
-This fixes RT#120674
-
-Bug: https://rt.cpan.org/Ticket/Display.html?id=120674
----
- t/001_require.t | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/t/001_require.t b/t/001_require.t
-index fe0d205..d70b2d2 100755
---- a/t/001_require.t
-+++ b/t/001_require.t
-@@ -24,7 +24,7 @@ use File::Spec;
- use Test::More qw(no_plan);
-
- # Set up @INC at runtime with an absolute path.
--my $lib_path = File::Spec->catdir(dirname($0), "..", "lib");
-+my $lib_path = File::Spec->rel2abs(File::Spec->catdir(dirname($0), "..", "lib"));
- push(@INC, $lib_path);
-
- require_ok 'Google::Ads::AdWords::Client';
-@@ -38,6 +38,6 @@ sub test_require {
- local $SIG{__WARN__} = sub {
- warn @_ unless $_[0] =~ /redefine/;
- };
-- require_ok($file_name);
-+ require_ok("./$file_name");
- }
- }
---
-2.12.2
-
-From 76f5a421585b8c85b7e39b91adb0b257d1d83665 Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 4 Jun 2017 07:40:01 +1200
-Subject: [PATCH 2/3] t/020_GenerateOfflineCredentials.t: Force relative path
- for script
-
-require "some/path.pl" previously fell into worknig due to '.' being
-in @INC, as this still invokes @INC traversal
-
-This change simply forces a "./" so that Perl uses direct access via
-a special-cased path instead of relying on @INC traversal, which becomes
-unsafe to depend on since Perl 5.25.11
----
- t/020_GenerateOfflineCredentials.t | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/t/020_GenerateOfflineCredentials.t b/t/020_GenerateOfflineCredentials.t
-index 0dcde9d..dfa8b50 100755
---- a/t/020_GenerateOfflineCredentials.t
-+++ b/t/020_GenerateOfflineCredentials.t
-@@ -51,7 +51,7 @@ my $stdout;
- open(STDOUT, ">", \$stdout);
-
- # Calling the offline credentials code
--require qw(examples/oauth/generate_offline_credentials.pl);
-+require qw(./examples/oauth/generate_offline_credentials.pl);
- ok(generate_offline_credentials($client));
-
- # Checking the auth mock was correctly called
---
-2.12.2
-
diff --git a/dev-perl/Google-Ads-AdWords-Client/files/4.14.0-unescaped-lbracket.patch b/dev-perl/Google-Ads-AdWords-Client/files/4.14.0-unescaped-lbracket.patch
deleted file mode 100644
index 4e7a4546f9cd..000000000000
--- a/dev-perl/Google-Ads-AdWords-Client/files/4.14.0-unescaped-lbracket.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From a7e92591ac0415fbb7119e4ad7572f910e4fdb8f Mon Sep 17 00:00:00 2001
-From: Kent Fredric
-Date: Sun, 4 Jun 2017 07:43:59 +1200
-Subject: [PATCH 3/3] Fix unescaped "{" error in tests t/022* and t/024*
-
-Perl 5.26 makes use of literal unescaped { in a regex illegal,
-and this leads to test failures.
-
-This change simply quotes the offending characters to make tests pass.
-
-This closes RT#118509
-
-Bug: https://rt.cpan.org/Ticket/Display.html?id=118509
----
- t/022_ReportUtils.t | 2 +-
- t/024_BatchJobHandler.t | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/t/022_ReportUtils.t b/t/022_ReportUtils.t
-index 4f5f326..d0e2000 100755
---- a/t/022_ReportUtils.t
-+++ b/t/022_ReportUtils.t
-@@ -57,7 +57,7 @@ my $report_as_string = $report_handler->get_as_string();
- ok(!$report_as_string, "report as string");
- ok($report_as_string->isa("Google::Ads::Common::ReportDownloadError"),
- "check report handler->report_as_string return type");
--ok($report_as_string =~ /ReportDownloadError\s{[^}]+}/,
-+ok($report_as_string =~ /ReportDownloadError\s\{[^}]+}/,
- "check ReportDownloadError STRINGIFY");
-
- my ($fh, $filename) = tempfile();
-diff --git a/t/024_BatchJobHandler.t b/t/024_BatchJobHandler.t
-index 15983ae..4b86703 100755
---- a/t/024_BatchJobHandler.t
-+++ b/t/024_BatchJobHandler.t
-@@ -133,6 +133,6 @@ my $batch_job_handler_error =
- description => "test"
- });
- ok(!$batch_job_handler_error, "BOOLIFY on error false");
--ok($batch_job_handler_error =~ /BatchJobHandlerError\s{[^}]+}/,
-+ok($batch_job_handler_error =~ /BatchJobHandlerError\s\{[^}]+}/,
- "check BatchJobHandlerError STRINGIFY");
-
---
-2.12.2
-
diff --git a/dev-perl/Gtk3-ImageView/Gtk3-ImageView-10.0.0.ebuild b/dev-perl/Gtk3-ImageView/Gtk3-ImageView-10.0.0.ebuild
index b9b1a3df6014..59131c332d43 100644
--- a/dev-perl/Gtk3-ImageView/Gtk3-ImageView-10.0.0.ebuild
+++ b/dev-perl/Gtk3-ImageView/Gtk3-ImageView-10.0.0.ebuild
@@ -11,7 +11,7 @@ inherit perl-module virtualx
DESCRIPTION="Image viewer widget for Gtk3"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 x86"
RDEPEND="
dev-perl/Cairo
diff --git a/dev-perl/Gtk3/files/Gtk3-0.34.0-gdk-pixbuf-test.patch b/dev-perl/Gtk3/files/Gtk3-0.34.0-gdk-pixbuf-test.patch
deleted file mode 100644
index 48a725f1437a..000000000000
--- a/dev-perl/Gtk3/files/Gtk3-0.34.0-gdk-pixbuf-test.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 88bc49e7a21da0131b10546aa07ebdf98d18a37e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Torsten=20Sch=C3=B6nfeld?=
-Date: Sun, 6 Jan 2019 15:18:02 +0100
-Subject: [PATCH] Load GdkPixdata introspection data if gdk-pixbuf >= 2.38.0
-
-In gdk-pixbuf 2.38.0, the GdkPixdata introspection data was split out into its
-own file.
-
-Based on a patch by gregor herrmann .
-
-https://rt.cpan.org/Ticket/Display.html?id=127071
----
- lib/Gtk3.pm | 14 ++++++++++++++
- perl-Gtk3.doap => perl-gtk3.doap | 0
- 2 files changed, 14 insertions(+)
- rename perl-Gtk3.doap => perl-gtk3.doap (100%)
-
-diff --git a/lib/Gtk3.pm b/lib/Gtk3.pm
-index 6a65487..f90af7e 100644
---- a/lib/Gtk3.pm
-+++ b/lib/Gtk3.pm
-@@ -60,6 +60,7 @@ and Perl packages:
- Gtk-3.0 | Gtk3
- Gdk-3.0 | Gtk3::Gdk
- GdkPixbuf-2.0 | Gtk3::Gdk
-+ GdkPixdata-2.0| Gtk3::Gdk
- Pango-1.0 | Pango
-
- =cut
-@@ -84,6 +85,10 @@ my $_GDK_PIXBUF_BASENAME = 'GdkPixbuf';
- my $_GDK_PIXBUF_VERSION = '2.0';
- my $_GDK_PIXBUF_PACKAGE = 'Gtk3::Gdk';
-
-+my $_GDK_PIXDATA_BASENAME = 'GdkPixdata';
-+my $_GDK_PIXDATA_VERSION = '2.0';
-+my $_GDK_PIXDATA_PACKAGE = 'Gtk3::Gdk';
-+
- my $_PANGO_BASENAME = 'Pango';
- my $_PANGO_VERSION = '1.0';
- my $_PANGO_PACKAGE = 'Pango';
-@@ -471,6 +476,15 @@ sub import {
- package => $_GDK_PIXBUF_PACKAGE,
- flatten_array_ref_return_for => \@_GDK_PIXBUF_FLATTEN_ARRAY_REF_RETURN_FOR);
-
-+ # In gdk-pixbuf 2.38.0, the GdkPixdata introspection information was split
-+ # out into its own file.
-+ if (Gtk3::Gdk::Pixbuf::CHECK_VERSION (2, 38, 0)) {
-+ Glib::Object::Introspection->setup (
-+ basename => $_GDK_PIXDATA_BASENAME,
-+ version => $_GDK_PIXDATA_VERSION,
-+ package => $_GDK_PIXDATA_PACKAGE);
-+ }
-+
- Glib::Object::Introspection->setup (
- basename => $_PANGO_BASENAME,
- version => $_PANGO_VERSION,
-diff --git a/perl-Gtk3.doap b/perl-gtk3.doap
-similarity index 100%
-rename from perl-Gtk3.doap
-rename to perl-gtk3.doap
---
-2.18.1
-
diff --git a/dev-perl/HTML-StripScripts-Parser/HTML-StripScripts-Parser-1.30.0.ebuild b/dev-perl/HTML-StripScripts-Parser/HTML-StripScripts-Parser-1.30.0-r1.ebuild
similarity index 77%
rename from dev-perl/HTML-StripScripts-Parser/HTML-StripScripts-Parser-1.30.0.ebuild
rename to dev-perl/HTML-StripScripts-Parser/HTML-StripScripts-Parser-1.30.0-r1.ebuild
index 8ef3b367ecc9..30f763cdf32e 100644
--- a/dev-perl/HTML-StripScripts-Parser/HTML-StripScripts-Parser-1.30.0.ebuild
+++ b/dev-perl/HTML-StripScripts-Parser/HTML-StripScripts-Parser-1.30.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_VERSION=1.03
DIST_AUTHOR=DRTECH
@@ -11,14 +11,12 @@ DESCRIPTION="XSS filter using HTML::Parser"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
RDEPEND="
>=dev-perl/HTML-Parser-3.560.0
>=dev-perl/HTML-StripScripts-1.50.0
"
-DEPEND="${RDEPEND}
+BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? ( virtual/perl-Test-Simple )
"
diff --git a/dev-perl/HTML-StripScripts/HTML-StripScripts-1.60.0.ebuild b/dev-perl/HTML-StripScripts/HTML-StripScripts-1.60.0-r1.ebuild
similarity index 53%
rename from dev-perl/HTML-StripScripts/HTML-StripScripts-1.60.0.ebuild
rename to dev-perl/HTML-StripScripts/HTML-StripScripts-1.60.0-r1.ebuild
index a4f6b0ceb367..3bfa3ac67531 100644
--- a/dev-perl/HTML-StripScripts/HTML-StripScripts-1.60.0.ebuild
+++ b/dev-perl/HTML-StripScripts/HTML-StripScripts-1.60.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_VERSION=1.06
DIST_AUTHOR=DRTECH
@@ -11,12 +11,3 @@ DESCRIPTION="Strip scripting constructs out of HTML"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-"
-DEPEND="${RDEPEND}
- virtual/perl-ExtUtils-MakeMaker
- test? ( virtual/perl-Test-Simple )
-"
diff --git a/dev-perl/HTML-Table/HTML-Table-2.08a-r1.ebuild b/dev-perl/HTML-Table/HTML-Table-2.08a-r2.ebuild
similarity index 58%
rename from dev-perl/HTML-Table/HTML-Table-2.08a-r1.ebuild
rename to dev-perl/HTML-Table/HTML-Table-2.08a-r2.ebuild
index 8100d4c3b593..5eccfcd9aca0 100644
--- a/dev-perl/HTML-Table/HTML-Table-2.08a-r1.ebuild
+++ b/dev-perl/HTML-Table/HTML-Table-2.08a-r2.ebuild
@@ -1,16 +1,12 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
-MODULE_AUTHOR=AJPEACOCK
+DIST_AUTHOR=AJPEACOCK
inherit perl-module
DESCRIPTION="produces HTML tables"
-LICENSE="|| ( Artistic GPL-2 )"
SLOT="0"
KEYWORDS="amd64 ~ia64 ~ppc ~ppc64 sparc x86"
-IUSE=""
-
-SRC_TEST="do"
diff --git a/dev-perl/HTML-TableContentParser/HTML-TableContentParser-0.130.0.ebuild b/dev-perl/HTML-TableContentParser/HTML-TableContentParser-0.130.0.ebuild
deleted file mode 100644
index 642f69822aaa..000000000000
--- a/dev-perl/HTML-TableContentParser/HTML-TableContentParser-0.130.0.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=SDRABBLE
-MODULE_VERSION=0.13
-inherit perl-module
-
-DESCRIPTION="Parse the content of tables in HTML"
-
-SLOT="0"
-KEYWORDS="~amd64 x86"
-IUSE=""
-
-RDEPEND="dev-perl/HTML-Parser"
-DEPEND="${RDEPEND}"
-
-SRC_TEST=do
-PATCHES=( "${FILESDIR}"/0.13-test.patch )
diff --git a/dev-perl/HTML-TableContentParser/HTML-TableContentParser-0.305.0.ebuild b/dev-perl/HTML-TableContentParser/HTML-TableContentParser-0.305.0.ebuild
new file mode 100644
index 000000000000..f717feaa1540
--- /dev/null
+++ b/dev-perl/HTML-TableContentParser/HTML-TableContentParser-0.305.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DIST_AUTHOR=WYANT
+DIST_VERSION=0.305
+inherit perl-module
+
+DESCRIPTION="Do interesting things with the contents of tables"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ virtual/perl-Carp
+ dev-perl/HTML-Parser
+"
+BDEPEND="${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+"
diff --git a/dev-perl/HTML-TableContentParser/Manifest b/dev-perl/HTML-TableContentParser/Manifest
index b44e2dc670bf..3cef33595272 100644
--- a/dev-perl/HTML-TableContentParser/Manifest
+++ b/dev-perl/HTML-TableContentParser/Manifest
@@ -1,2 +1,2 @@
-DIST HTML-TableContentParser-0.13.tar.gz 4664 BLAKE2B 062dc7ac6a78ec75f7d306649710ef470c6b6f750f651cc976d9f44fa40fbf247a89e0847ed8a991cecd929f3ea328bbee69c2cb29627f6d4fb0e23d3a3ab5c5 SHA512 0707a0059a7d885052615ee7badecc8915d5f8c67fd8683a226e23a0690f1872519475c32f51f299333c3208c20ea15380624fd0ebd1dc0b11457febfb3db585
DIST HTML-TableContentParser-0.304.tar.gz 18437 BLAKE2B 404ba11f9174cd3db019ede6078fca246722ff9ce1d2108cd689cfa3f79aebb178853143faa45022e5785daae5e79d1f21ad519099508c5554828d54da84e369 SHA512 f5b8aee24f777a7e8d6b4a88ac6b88927b6ec51a6b14ff2f48a33248702349f2f3a446bda3679b7c510cf6c9390b6a635721c696be3b49165dc9ca89116b2202
+DIST HTML-TableContentParser-0.305.tar.gz 18931 BLAKE2B 616bfbb1809af1f0434fe3fb61082e635ba2cb62c1d14c47d059eb2c2dada80fa74ba577f85e9961036bf68f179ccc036410e2f3d67f497babbd3fe713bb6f2b SHA512 beee3b16e61b32e39bd7fdacbf993f18c1b11b6e0ba9704584243a629d72abed0012ee14518cd8c2490cb08a4c1323ee9b49ac2a764f37fa26c632a1d0ec2450
diff --git a/dev-perl/HTML-TableExtract/HTML-TableExtract-2.150.0.ebuild b/dev-perl/HTML-TableExtract/HTML-TableExtract-2.150.0-r1.ebuild
similarity index 87%
rename from dev-perl/HTML-TableExtract/HTML-TableExtract-2.150.0.ebuild
rename to dev-perl/HTML-TableExtract/HTML-TableExtract-2.150.0-r1.ebuild
index f5cca70f2a48..c4b1b8a6f23f 100644
--- a/dev-perl/HTML-TableExtract/HTML-TableExtract-2.150.0.ebuild
+++ b/dev-perl/HTML-TableExtract/HTML-TableExtract-2.150.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_AUTHOR=MSISK
DIST_VERSION=2.15
@@ -11,17 +11,17 @@ DESCRIPTION="The Perl Table-Extract Module"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm64 ppc ppc64 x86 ~x86-linux"
-IUSE=""
RDEPEND="
>=dev-perl/HTML-Element-Extended-1.160.0
dev-perl/HTML-Parser
"
-DEPEND="${RDEPEND}
+BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
"
mydoc="TODO"
+
src_test() {
# https://rt.cpan.org/Ticket/Display.html?id=121920
perl_rm_files t/30_tree.t t/01_pod.t t/02_pod_coverage.t
diff --git a/dev-perl/HTML-TableParser/HTML-TableParser-0.420.0.ebuild b/dev-perl/HTML-TableParser/HTML-TableParser-0.420.0.ebuild
deleted file mode 100644
index 328fd43b5041..000000000000
--- a/dev-perl/HTML-TableParser/HTML-TableParser-0.420.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DIST_AUTHOR=DJERIUS
-DIST_VERSION=0.42
-inherit perl-module
-
-DESCRIPTION="Extract data from an HTML table"
-
-LICENSE="GPL-3+"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-perl/HTML-Parser-3.260.0
-"
-DEPEND="${RDEPEND}
- >=virtual/perl-ExtUtils-MakeMaker-6.590.0
- virtual/perl-CPAN-Meta
- test? (
- >=virtual/perl-Test-Simple-0.320.0
- )
-"
diff --git a/dev-perl/HTML-TableParser/Manifest b/dev-perl/HTML-TableParser/Manifest
index 0ddcb9b4a12f..08b3621de69d 100644
--- a/dev-perl/HTML-TableParser/Manifest
+++ b/dev-perl/HTML-TableParser/Manifest
@@ -1,2 +1 @@
-DIST HTML-TableParser-0.42.tar.gz 73638 BLAKE2B d422069322eada6e72a6742b32418b3c99dda824ebe98c10211b0cf0c4bf7133c6c7fe990148969c8e18cb01c2f2792ebc13ebfc04f8b5032ab48c4febfa6992 SHA512 dddde421a186ebd354c06201fdaa1379378b83acfc86fb0ed9a7959a993dd403c6d40d9aa36e143d1236c9d21ec56c851d82867783e4954f0eeba75ea8400d3d
DIST HTML-TableParser-0.43.tar.gz 66079 BLAKE2B 5309e8b09fdff9b85b8612e4122a5732b2b85bf8e9382ba8656605d0b7faf4bc88e267226e3c7c4565637e370fa9a8526354d38e4296fa7d359004614275a91c SHA512 1f4fa5d5d91c830b6b0e53f6353af4a6016c08aeb572a9ab9d22f21d694b62cace6e745f6af3f96160b885ac2cd788331f0beb0a8777964fb80ff561c227dbf8
diff --git a/dev-perl/HTML-Template-Expr/HTML-Template-Expr-0.70.0-r1.ebuild b/dev-perl/HTML-Template-Expr/HTML-Template-Expr-0.70.0-r1.ebuild
deleted file mode 100644
index 4cc96417be10..000000000000
--- a/dev-perl/HTML-Template-Expr/HTML-Template-Expr-0.70.0-r1.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=SAMTREGAR
-MODULE_VERSION=0.07
-inherit perl-module
-
-DESCRIPTION="HTML::Template extension adding expression support"
-
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE=""
-
-RDEPEND=">=dev-perl/HTML-Template-2.8
- dev-perl/Parse-RecDescent"
-DEPEND="${RDEPEND}"
-
-SRC_TEST="do"
diff --git a/dev-perl/HTML-Template-Expr/HTML-Template-Expr-0.70.0-r2.ebuild b/dev-perl/HTML-Template-Expr/HTML-Template-Expr-0.70.0-r2.ebuild
new file mode 100644
index 000000000000..efa6dc81724a
--- /dev/null
+++ b/dev-perl/HTML-Template-Expr/HTML-Template-Expr-0.70.0-r2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DIST_AUTHOR=SAMTREGAR
+DIST_VERSION=0.07
+inherit perl-module
+
+DESCRIPTION="HTML::Template extension adding expression support"
+
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="
+ >=dev-perl/HTML-Template-2.800.0
+ dev-perl/Parse-RecDescent
+"
+BDEPEND="${RDEPEND}
+"
diff --git a/dev-perl/HTML-Template/HTML-Template-2.970.0.ebuild b/dev-perl/HTML-Template/HTML-Template-2.970.0-r1.ebuild
similarity index 85%
rename from dev-perl/HTML-Template/HTML-Template-2.970.0.ebuild
rename to dev-perl/HTML-Template/HTML-Template-2.970.0-r1.ebuild
index 852ebfe53564..f4a4e3e6c232 100644
--- a/dev-perl/HTML-Template/HTML-Template-2.970.0.ebuild
+++ b/dev-perl/HTML-Template/HTML-Template-2.970.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_AUTHOR=SAMTREGAR
DIST_VERSION=2.97
@@ -12,8 +12,6 @@ DESCRIPTION="A Perl module to use HTML Templates"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~mips ppc ~ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
RDEPEND="
virtual/perl-Carp
@@ -21,7 +19,7 @@ RDEPEND="
>=virtual/perl-File-Spec-0.820.0
virtual/perl-Scalar-List-Utils
"
-DEPEND="${RDEPEND}
+BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
dev-perl/CGI
@@ -29,6 +27,7 @@ DEPEND="${RDEPEND}
virtual/perl-Test-Simple
)
"
+
src_test() {
perl_rm_files t/author-*.t
perl-module_src_test
diff --git a/dev-perl/HTML-Tree/HTML-Tree-5.70.0.ebuild b/dev-perl/HTML-Tree/HTML-Tree-5.70.0-r1.ebuild
similarity index 92%
rename from dev-perl/HTML-Tree/HTML-Tree-5.70.0.ebuild
rename to dev-perl/HTML-Tree/HTML-Tree-5.70.0-r1.ebuild
index 3edd78285834..b260098ec75c 100644
--- a/dev-perl/HTML-Tree/HTML-Tree-5.70.0.ebuild
+++ b/dev-perl/HTML-Tree/HTML-Tree-5.70.0-r1.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_AUTHOR=KENTNL
DIST_VERSION=5.07
@@ -11,8 +11,6 @@ DESCRIPTION="A library to manage HTML-Tree in PERL"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-RESTRICT="!test? ( test )"
RDEPEND="
virtual/perl-Carp
@@ -22,7 +20,7 @@ RDEPEND="
virtual/perl-Scalar-List-Utils
"
# dev-perl/HTML-Format
-DEPEND="${RDEPEND}
+BDEPEND="${RDEPEND}
>=dev-perl/Module-Build-0.280.800
test? (
virtual/perl-Encode
diff --git a/dev-perl/HTTP-BrowserDetect/HTTP-BrowserDetect-3.140.0.ebuild b/dev-perl/HTTP-BrowserDetect/HTTP-BrowserDetect-3.350.0.ebuild
similarity index 53%
rename from dev-perl/HTTP-BrowserDetect/HTTP-BrowserDetect-3.140.0.ebuild
rename to dev-perl/HTTP-BrowserDetect/HTTP-BrowserDetect-3.350.0.ebuild
index a9a648487707..39c1cb43bfec 100644
--- a/dev-perl/HTTP-BrowserDetect/HTTP-BrowserDetect-3.140.0.ebuild
+++ b/dev-perl/HTTP-BrowserDetect/HTTP-BrowserDetect-3.350.0.ebuild
@@ -1,32 +1,33 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_AUTHOR=OALDERS
-DIST_VERSION=3.14
+DIST_VERSION=3.35
inherit perl-module
DESCRIPTION="Determine Web browser, version, and platform from an HTTP user agent string"
SLOT="0"
-KEYWORDS="amd64 ~hppa ~mips ppc x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
+KEYWORDS="~amd64 ~hppa ~mips ~ppc ~x86"
RDEPEND=""
-DEPEND="
- >=dev-perl/Module-Build-0.280.0
+BDEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
- virtual/perl-JSON-PP
+ virtual/perl-File-Spec
+ dev-perl/Hash-Merge
+ >=virtual/perl-JSON-PP-4.40.0
+ >=virtual/perl-Scalar-List-Utils-1.490.0
dev-perl/Path-Tiny
- dev-perl/Test-FailWarnings
- virtual/perl-Test-Simple
- dev-perl/Test-Most
+ dev-perl/Test-Differences
+ >=virtual/perl-Test-Simple-0.960.0
dev-perl/Test-NoWarnings
+ dev-perl/Test-Warnings
)
"
+
src_test() {
perl_rm_files t/release-*.t
perl-module_src_test
diff --git a/dev-perl/HTTP-BrowserDetect/Manifest b/dev-perl/HTTP-BrowserDetect/Manifest
index 76cbb1fb2f25..7a0295888ef4 100644
--- a/dev-perl/HTTP-BrowserDetect/Manifest
+++ b/dev-perl/HTTP-BrowserDetect/Manifest
@@ -1,2 +1,2 @@
-DIST HTTP-BrowserDetect-3.14.tar.gz 95445 BLAKE2B 08a90c6e1154f7a7e1c55af2c056e67ba906d187f3ac8b4e82f1039446462ea9a60f1f875e5f26a2229275436c0deb5acbf090f893aef51f7971ae8e0e547c62 SHA512 cf05af60dbda462df81a9d38d5738826b820534c5fde52f41a290f6d3253783154a2e460042117be32e86dd95f7f1e0e6055b4ca549cb7972cd3c156200c09df
DIST HTTP-BrowserDetect-3.31.tar.gz 121365 BLAKE2B 454f702905b269cf579bf6d192542cb8e4d63430b7107c78b505db65973c759f79f78053cc45e14b8f7c152f4c53fd18b728f04c0a5d8e86393b1c2bcc4c6b9f SHA512 9ea830b244be7b5d0707118f27a212c520a2117679fab75192881c04d244cc50ae71ee6de2d2be7c456c2a0d5f2bfd0c9bf473893a86ba5b13db89a7d4943e8b
+DIST HTTP-BrowserDetect-3.35.tar.gz 122366 BLAKE2B 997962c232419cdbf3ca8a1675e50cbb18190e6f5013156a2da9de47ab939dec81c086a300cca62bd6854a5e9f439ec79a20c5f7fb35ef66f26d57cf68fea928 SHA512 adf2239bffcafc9ae250307173cc3900fca55a4b8860aaefab93090853e5a307902d15cdee459d28c444c4c096f511d1e3f65df51e2f77cee045cbe4a5fc9963
diff --git a/dev-perl/HTTP-Cache-Transparent/HTTP-Cache-Transparent-1.400.0.ebuild b/dev-perl/HTTP-Cache-Transparent/HTTP-Cache-Transparent-1.400.0-r1.ebuild
similarity index 80%
rename from dev-perl/HTTP-Cache-Transparent/HTTP-Cache-Transparent-1.400.0.ebuild
rename to dev-perl/HTTP-Cache-Transparent/HTTP-Cache-Transparent-1.400.0-r1.ebuild
index 64f3bc62d1f5..e725afec1564 100644
--- a/dev-perl/HTTP-Cache-Transparent/HTTP-Cache-Transparent-1.400.0.ebuild
+++ b/dev-perl/HTTP-Cache-Transparent/HTTP-Cache-Transparent-1.400.0-r1.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_AUTHOR=MATTIASH
DIST_VERSION=1.4
@@ -12,17 +12,18 @@ DESCRIPTION="Cache the result of http get-requests persistently"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~ia64 ppc sparc x86 ~amd64-linux ~x86-linux"
-IUSE="test"
-RESTRICT="!test? ( test )"
-RDEPEND="dev-perl/libwww-perl
+RDEPEND="
+ dev-perl/libwww-perl
virtual/perl-Digest-MD5
- virtual/perl-Storable"
-DEPEND="${RDEPEND}
+ virtual/perl-Storable
+"
+BDEPEND="${RDEPEND}
test? (
dev-perl/Test-RequiresInternet
virtual/perl-Test-Simple
- )"
+ )
+"
src_test() {
perl_rm_files t/pod.t t/pod-coverage.t
diff --git a/dev-perl/HTTP-CookieJar/HTTP-CookieJar-0.8.0.ebuild b/dev-perl/HTTP-CookieJar/HTTP-CookieJar-0.12.0.ebuild
similarity index 82%
rename from dev-perl/HTTP-CookieJar/HTTP-CookieJar-0.8.0.ebuild
rename to dev-perl/HTTP-CookieJar/HTTP-CookieJar-0.12.0.ebuild
index ec1518bb120b..a7b630431d11 100644
--- a/dev-perl/HTTP-CookieJar/HTTP-CookieJar-0.8.0.ebuild
+++ b/dev-perl/HTTP-CookieJar/HTTP-CookieJar-0.12.0.ebuild
@@ -1,17 +1,16 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
DIST_AUTHOR=DAGOLDEN
-DIST_VERSION=0.008
+DIST_VERSION=0.012
inherit perl-module
DESCRIPTION="A minimalist HTTP user agent cookie jar"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="test minimal"
-RESTRICT="!test? ( test )"
+IUSE="minimal"
RDEPEND="
!minimal? ( dev-perl/Mozilla-PublicSuffix )
@@ -20,7 +19,7 @@ RDEPEND="
>=virtual/perl-Time-Local-1.190.100
virtual/perl-parent
"
-DEPEND="${RDEPEND}
+BDEPEND="${RDEPEND}
>=virtual/perl-ExtUtils-MakeMaker-6.170.0
test? (
!minimal? (
diff --git a/dev-perl/HTTP-CookieJar/Manifest b/dev-perl/HTTP-CookieJar/Manifest
index 1cb24aab9946..445144c9dd14 100644
--- a/dev-perl/HTTP-CookieJar/Manifest
+++ b/dev-perl/HTTP-CookieJar/Manifest
@@ -1,2 +1,2 @@
-DIST HTTP-CookieJar-0.008.tar.gz 28754 BLAKE2B 7e0b55506cb6c48fa8eb608224e7848c150addf64a39fa8c6abca5396152695b835cc872efff862e6045ca246bb2a9fb2a23830711d8c5d349de1a340546e4c1 SHA512 6e85c22084ba2959b385f4cd706b2b937fcdb68f219ee03ccdd69dd2a01ff34b72bf7f442e414e3da43199fc43624b781af0c7599f856dc580a5d0a7742c6aff
DIST HTTP-CookieJar-0.010.tar.gz 27883 BLAKE2B 3f0bf8fcff066955d1350a420a02fb8388238addc9877fee36e6073d04d4382cb34889b0fc851c13da10c020647be64248399fd35309c0346f6995178b651c19 SHA512 5e7d6222b9128441c506f1554de327af9695cb07bb6db9a772386752a6815b7e8ff1d02185429f9cd25a11085860867d42f6e209175c68cbeb9daa6547d83eac
+DIST HTTP-CookieJar-0.012.tar.gz 28223 BLAKE2B 67284519bf19271896625ec577121171d6bb559a7c011f2a8f1e92be537077d1ec5bbd5f4ad043e44c754d5b2a3f2b617e37a87bfef3026533fd442fd9275613 SHA512 3b4b0cd2228d53dfa9c1a75cf108f9b2a328c3bf054f0c7d8308bc0a71375340684b165ab05cb7868cdbeb232e4ceb4b465177a43c7573863e9274f8aa4034af
diff --git a/dev-perl/HTTP-Cookies/HTTP-Cookies-6.40.0.ebuild b/dev-perl/HTTP-Cookies/HTTP-Cookies-6.40.0.ebuild
deleted file mode 100644
index a90f99537465..000000000000
--- a/dev-perl/HTTP-Cookies/HTTP-Cookies-6.40.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DIST_AUTHOR=OALDERS
-DIST_VERSION=6.04
-inherit perl-module
-
-DESCRIPTION="Storage of cookies"
-
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- !=dev-perl/HTTP-Date-6.0.0
- virtual/perl-Time-Local
- >=dev-perl/HTTP-Message-6.0.0
-"
-DEPEND="${RDEPEND}
- virtual/perl-ExtUtils-MakeMaker
- test? (
- virtual/perl-Test
- virtual/perl-Test-Simple
- dev-perl/URI
- )
-"
diff --git a/dev-perl/HTTP-Cookies/Manifest b/dev-perl/HTTP-Cookies/Manifest
index 33f2de08423e..ce6202cf9bbd 100644
--- a/dev-perl/HTTP-Cookies/Manifest
+++ b/dev-perl/HTTP-Cookies/Manifest
@@ -1,2 +1 @@
-DIST HTTP-Cookies-6.04.tar.gz 39502 BLAKE2B a6a5de4a992ee246dd0e04594fe47ce635248d7fb004acdd4eb926a84c27a7b69f0b8d5a522460287f1786f3d3f9d8bfd23c933ab7650e8cfaffaf392eecb94e SHA512 e8b24b96e6630f1238e828edfbf7074fb9186a391fd1d129fb65a82748a4cf7d71669fa658c31957560a6faac3e638c8dc7aa3182acaa6fd14f0d56f3968f5e4
DIST HTTP-Cookies-6.10.tar.gz 42448 BLAKE2B ce261bde7071f34811827099322a0c7282c4f2287ce4baca258d8237dc82ffa5502acbe9ca2a4b76ebe6d8bd0c1facdad5448f1f377390e46c2f4564550bf57e SHA512 c24a986e524ebf5d8b13b4580c3ee6aed018e79c203fd62208bfe970744482832fe9c41bb3195a596af1e11058053ed7615a09a26fbcef4433e270f0f5d38658
diff --git a/dev-perl/HTTP-DAV/HTTP-DAV-0.480.0.ebuild b/dev-perl/HTTP-DAV/HTTP-DAV-0.480.0.ebuild
deleted file mode 100644
index 111c7c54b13e..000000000000
--- a/dev-perl/HTTP-DAV/HTTP-DAV-0.480.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=COSIMO
-MODULE_VERSION=0.48
-inherit perl-module
-
-DESCRIPTION="A WebDAV client library for Perl5"
-
-SLOT="0"
-KEYWORDS="amd64 ~ppc x86"
-IUSE=""
-
-RDEPEND="
- dev-perl/libwww-perl
- dev-perl/URI
- dev-perl/XML-DOM
-"
-DEPEND="${RDEPEND}"
-
-SRC_TEST="do"
diff --git a/dev-perl/HTTP-DAV/Manifest b/dev-perl/HTTP-DAV/Manifest
index a21a9f9a8a91..d51b0e59bc05 100644
--- a/dev-perl/HTTP-DAV/Manifest
+++ b/dev-perl/HTTP-DAV/Manifest
@@ -1,2 +1 @@
-DIST HTTP-DAV-0.48.tar.gz 105090 BLAKE2B e0a88e186ae26d3240783aeed91b3da786b1ad21e31f9293c361147c540bd513cfd1f570b9dabc77301c5310ca65128c1574cc342bd5512fcf7e6340c97eabf2 SHA512 2edf92791660b1996eb22b9ea68bd4e417c497afeebb56cb0a2ecf0cf72ea54b6fb8efd4d69dae1dcb946517f917593932a8040bd0ef5cfc83f7fdfd1fe3ccf8
DIST HTTP-DAV-0.49.tar.gz 107841 BLAKE2B 202a37766a949441417e6e88de02dcb238f811408f16cc86ebb5187f0cd0c8b780e322b3704dbc115225232c1d815cbe9d5fdb8ac7755e222c7eac5357ea0a81 SHA512 01a097f47d95090fd0fd08a44b440d0ed4f2f04e0bedc41f8e2abedf1879e7cfcae6cf5cf7a415ac89dc610cf0cacf4f75078586bbf6a818f8c6dd36ccb451f6
diff --git a/dev-perl/HTTP-Daemon/HTTP-Daemon-6.60.0.ebuild b/dev-perl/HTTP-Daemon/HTTP-Daemon-6.60.0.ebuild
deleted file mode 100644
index 36e0fc57d1b0..000000000000
--- a/dev-perl/HTTP-Daemon/HTTP-Daemon-6.60.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DIST_AUTHOR=OALDERS
-DIST_VERSION=6.06
-inherit perl-module
-
-DESCRIPTION="Base class for simple HTTP servers"
-
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- !=dev-perl/HTTP-Date-6.0.0
- >=dev-perl/HTTP-Message-6.0.0
- virtual/perl-IO-Socket-IP
- >=dev-perl/LWP-MediaTypes-6.0.0
- virtual/perl-Socket
-"
-DEPEND="${RDEPEND}
- virtual/perl-ExtUtils-MakeMaker
- >=dev-perl/Module-Build-Tiny-0.34.0
- test? (
- virtual/perl-File-Spec
- virtual/perl-Module-Metadata
- virtual/perl-Test-Simple
- dev-perl/Test-Needs
- dev-perl/URI
- )
-"
diff --git a/dev-perl/HTTP-Daemon/Manifest b/dev-perl/HTTP-Daemon/Manifest
index 2216248f00ef..40ec9b76c9e1 100644
--- a/dev-perl/HTTP-Daemon/Manifest
+++ b/dev-perl/HTTP-Daemon/Manifest
@@ -1,2 +1 @@
-DIST HTTP-Daemon-6.06.tar.gz 45576 BLAKE2B 3f5a5eaf8fd89422cad916cbe384ac45989147510d171d9496937e732fe83c8c5a5514d03c468415358a575326aa86fc78d8a135b8c7602560923511268fca67 SHA512 8e6dcf4451aaa6bd5f38508a087e5bb9b7f5105e8e243d09bdd3f4be3d7009222b3d9f8e494f049b48f0caebf36f239b8bbc7b8edc805f7d32b1bbeb38431732
DIST HTTP-Daemon-6.12.tar.gz 47117 BLAKE2B 54b494ff3976af427c899b2db6f7b4dad27fbf441e4b821c5185537f6661e5e10cd6a52f2faf07ef5843dbbfe86b8c8c86abe478663553d16e9b1b4a19dd791d SHA512 83a8b868162dfa1be66d4267e99af1111d28122c793e89d905243c175617c22ceb66f88b6ea54c29e7b131c26668776ab24cf671c4cc6c1c8810505e0f072596
diff --git a/dev-perl/HTTP-Date/HTTP-Date-6.20.0-r1.ebuild b/dev-perl/HTTP-Date/HTTP-Date-6.20.0-r1.ebuild
deleted file mode 100644
index 4fe24de8401d..000000000000
--- a/dev-perl/HTTP-Date/HTTP-Date-6.20.0-r1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-MODULE_AUTHOR=GAAS
-MODULE_VERSION=6.02
-inherit perl-module
-
-DESCRIPTION="Date conversion for HTTP date formats"
-
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE=""
-
-RDEPEND="
- !=dev-perl/JSON-MaybeXS-1.3.7
- virtual/perl-Module-Load
- dev-perl/Stream-Buffered
- >=dev-perl/WWW-Form-UrlEncoded-0.230.0
- xs? ( >=dev-perl/WWW-Form-UrlEncoded-XS-0.230.0 )
-"
-DEPEND="${RDEPEND}
- >=dev-perl/Module-Build-Tiny-0.35.0
- test? (
- virtual/perl-File-Spec
- >=dev-perl/HTTP-Message-6
- >=virtual/perl-Test-Simple-0.980.0
- )
-"
diff --git a/dev-perl/HTTP-Entity-Parser/Manifest b/dev-perl/HTTP-Entity-Parser/Manifest
index 5ab3c0495f40..906d576fc695 100644
--- a/dev-perl/HTTP-Entity-Parser/Manifest
+++ b/dev-perl/HTTP-Entity-Parser/Manifest
@@ -1,2 +1 @@
-DIST HTTP-Entity-Parser-0.20.tar.gz 23662 BLAKE2B d003bf695e32084b524a9e56327b5485ef2d8d4f608d55c776b960372165e2139cddd8a8db609c59f40ef84c979eb42c3af010fc36f3bd52945a6a88417396fc SHA512 c80d9058b8682c51a0fe3669249cc219142e674959237d8ae6bd435afafc16c92a38328329e9b09a25af8a79fec5bf01050145d3c63dd81b15ad9d75946fdfc6
DIST HTTP-Entity-Parser-0.25.tar.gz 24307 BLAKE2B 6c8e7d6dfef9c023ea9e6270d12c0790711a03bfe783ae7be0550b83859d03ad94515981f3b87887d2174ca45b1d3cbbee427064f1377f28e0a7d09c2942de2c SHA512 760bff3ddd818ecb8eeeaee86c2d2bd895820b4011c306135b2d6eb3c2519322b3bd4e20098c9458c2fec7dd944384dcd33bfdd5b2d368a28270ac14e8dab54b
diff --git a/dev-perl/Manifest.gz b/dev-perl/Manifest.gz
index 950e174cac75..7ea2cd5afe2a 100644
Binary files a/dev-perl/Manifest.gz and b/dev-perl/Manifest.gz differ
diff --git a/dev-perl/Params-Validate/Params-Validate-1.300.0.ebuild b/dev-perl/Params-Validate/Params-Validate-1.300.0.ebuild
index ff7304e53e45..0d28548f85ec 100644
--- a/dev-perl/Params-Validate/Params-Validate-1.300.0.ebuild
+++ b/dev-perl/Params-Validate/Params-Validate-1.300.0.ebuild
@@ -12,7 +12,7 @@ DESCRIPTION="Flexible system for validation of method/function call parameters"
LICENSE="Artistic-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
RDEPEND="
virtual/perl-Carp
diff --git a/dev-perl/Specio/Specio-0.470.0.ebuild b/dev-perl/Specio/Specio-0.470.0.ebuild
index ee421b054c76..80ca50cb25ad 100644
--- a/dev-perl/Specio/Specio-0.470.0.ebuild
+++ b/dev-perl/Specio/Specio-0.470.0.ebuild
@@ -9,7 +9,7 @@ inherit perl-module
DESCRIPTION="Type constraints and coercions for Perl"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="minimal"
RDEPEND="
diff --git a/dev-perl/Unicode-Map8/Unicode-Map8-0.130.0-r2.ebuild b/dev-perl/Unicode-Map8/Unicode-Map8-0.130.0-r2.ebuild
index 43b9a0468b76..2d39f6a2c027 100644
--- a/dev-perl/Unicode-Map8/Unicode-Map8-0.130.0-r2.ebuild
+++ b/dev-perl/Unicode-Map8/Unicode-Map8-0.130.0-r2.ebuild
@@ -10,7 +10,7 @@ inherit perl-module
DESCRIPTION="Convert between most 8bit encodings"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm ~hppa ~ia64 ~mips ppc ~ppc64 ~s390 sparc x86"
RDEPEND="
>=dev-perl/Unicode-String-2.60.0
diff --git a/dev-perl/WebService-MusicBrainz/Manifest b/dev-perl/WebService-MusicBrainz/Manifest
index 3bf0c1405095..b8a9390baed9 100644
--- a/dev-perl/WebService-MusicBrainz/Manifest
+++ b/dev-perl/WebService-MusicBrainz/Manifest
@@ -1,2 +1 @@
-DIST WebService-MusicBrainz-1.0.4.tar.gz 9937 BLAKE2B f57dc8edf4649bd1ee69d105cb6a1e885f695065f319e2537e1aa24a44560d19b2a947b98c2ad4fde0a965b93b3b3a9a562e6f6f6139d5694599e246735556d0 SHA512 91442fe4696a4f9ac1434cc9dc8d3a16d2e3a8ccd3434f5e4ac642ffba0d56db6583175283c0a1a75365cdc65dbb4516bfa6182be568de16767fba3676f2368b
DIST WebService-MusicBrainz-1.0.5.tar.gz 10029 BLAKE2B 52e9e09f4b0c68fb26391cbfca2ba092fece7ebd1ead2b09a243718da1876209a4c12e723fdaf5ea8a3c796ec65b10481aeddba6297ef40812f61fca935f743e SHA512 b1dfa497b460fb56702905518d3f2de0f5af0f4003be9ce983954673b0abc8a67215a77079a2989fca2c0228409788ff3f767302659003f544e6bbd56ab6df24
diff --git a/dev-perl/WebService-MusicBrainz/WebService-MusicBrainz-1.0.4.ebuild b/dev-perl/WebService-MusicBrainz/WebService-MusicBrainz-1.0.4.ebuild
deleted file mode 100644
index 7d1b87b678c6..000000000000
--- a/dev-perl/WebService-MusicBrainz/WebService-MusicBrainz-1.0.4.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-DIST_AUTHOR=BFAIST
-DIST_VERSION=1.0.4
-inherit perl-module
-
-DESCRIPTION="Web service API to MusicBrainz database"
-
-SLOT="0"
-KEYWORDS="amd64 ppc ppc64 ~riscv x86"
-IUSE=""
-PATCHES=( "${FILESDIR}/1.0.2-no-network-testing.patch" )
-RDEPEND="
- >=dev-perl/Mojolicious-7.130.0
-"
-DEPEND="${RDEPEND}
- >=dev-perl/Module-Build-0.420.0
-"
diff --git a/dev-perl/WebService-MusicBrainz/WebService-MusicBrainz-1.0.5.ebuild b/dev-perl/WebService-MusicBrainz/WebService-MusicBrainz-1.0.5.ebuild
index a135c22b3bdd..25e96ecfb98a 100644
--- a/dev-perl/WebService-MusicBrainz/WebService-MusicBrainz-1.0.5.ebuild
+++ b/dev-perl/WebService-MusicBrainz/WebService-MusicBrainz-1.0.5.ebuild
@@ -9,7 +9,7 @@ inherit perl-module
DESCRIPTION="Web service API to MusicBrainz database"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ppc ppc64 ~riscv x86"
PATCHES=( "${FILESDIR}/1.0.2-no-network-testing.patch" )
RDEPEND="
diff --git a/dev-perl/XString/XString-0.5.0.ebuild b/dev-perl/XString/XString-0.5.0.ebuild
index 81b1debc57d8..491a746ec76e 100644
--- a/dev-perl/XString/XString-0.5.0.ebuild
+++ b/dev-perl/XString/XString-0.5.0.ebuild
@@ -9,4 +9,4 @@ inherit perl-module
DESCRIPTION="Isolated String helpers from B"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index 310ef381171f..765d43d3a348 100644
Binary files a/dev-python/Manifest.gz and b/dev-python/Manifest.gz differ
diff --git a/dev-python/async_timeout/Manifest b/dev-python/async_timeout/Manifest
index 8679d7982d2a..2a4ec1b8f08c 100644
--- a/dev-python/async_timeout/Manifest
+++ b/dev-python/async_timeout/Manifest
@@ -1,2 +1,3 @@
DIST async-timeout-3.0.1.tar.gz 9724 BLAKE2B f18ae75969b7048469fe22949f25ea25da3fdbf08b98a16b5d5ffe823060a75e6de9ed764727e08d4344c79426e9c89013d49522f20ed62e6fbe912b5c7a8787 SHA512 fd30842671a79edfd52c7350e7fb2120533a6d97b44975f7b071ce2cbde43443bd5bbe1f2ad0ad3ab2156e1987b9e58e0c149b0ecfea8674eb0cb78eee79c986
+DIST async-timeout-4.0.0.tar.gz 8258 BLAKE2B 7a3edee9491aba11e59ef6bf7c07b9e3f00e97bf42e69adac92a23d89715e2c90dbf9e431c146c20e44b05ed47905cfd5afa41fd04df63315d9f347a6b8f70f1 SHA512 92716106b42ad3746c9873649b44d414da08f75cd507a0dc45d764270bcbd6f483c149e5cebe1a4c36f5cd02397c21b67b92a0475117d9dea17c580e422cf4da
DIST async-timeout-4.0.0a3.tar.gz 11386 BLAKE2B 8918878c4edd64c70d831ddd05e3235c3c7cc116a99755205b7624df52cacfb61bf4e80083c85d93e420fbf18e7da16ee3ebc796c5a4890e2801885b670a494a SHA512 04775ea30ffba90a4b604ef040df24a6a2711fd3e2c3b45d1ab87ae3487f216458f44bbfb2c85498bef286acca90af43d8b3b95cf22244027c0a48494ef84e7a
diff --git a/dev-python/async_timeout/async_timeout-4.0.0.ebuild b/dev-python/async_timeout/async_timeout-4.0.0.ebuild
new file mode 100644
index 000000000000..2f3850143bcd
--- /dev/null
+++ b/dev-python/async_timeout/async_timeout-4.0.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+inherit distutils-r1
+
+MY_P=${PN/_/-}-${PV}
+DESCRIPTION="Timeout context manager for asyncio programs"
+HOMEPAGE="https://github.com/aio-libs/async-timeout"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-aiohttp[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # remove pointless dep on pytest-cov
+ sed -i -e '/addopts/d' setup.cfg || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ epytest -p no:aiohttp
+}
diff --git a/dev-python/autopage/autopage-0.4.0.ebuild b/dev-python/autopage/autopage-0.4.0.ebuild
index d14b9446a9e3..0eb41b6e9617 100644
--- a/dev-python/autopage/autopage-0.4.0.ebuild
+++ b/dev-python/autopage/autopage-0.4.0.ebuild
@@ -19,7 +19,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 ~s390 sparc x86"
+KEYWORDS="amd64 ~arm arm64 ~hppa ~ppc64 ~s390 sparc x86"
BDEPEND="
test? ( dev-python/fixtures[${PYTHON_USEDEP}] )"
diff --git a/dev-python/backcall/backcall-0.2.0.ebuild b/dev-python/backcall/backcall-0.2.0.ebuild
index d449fcdeade5..67ffbe2ac9e2 100644
--- a/dev-python/backcall/backcall-0.2.0.ebuild
+++ b/dev-python/backcall/backcall-0.2.0.ebuild
@@ -13,6 +13,6 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ~hppa ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
distutils_enable_tests pytest
diff --git a/dev-python/berkeleydb/berkeleydb-18.1.4.ebuild b/dev-python/berkeleydb/berkeleydb-18.1.4.ebuild
index 783079c3e482..d4578a5945e2 100644
--- a/dev-python/berkeleydb/berkeleydb-18.1.4.ebuild
+++ b/dev-python/berkeleydb/berkeleydb-18.1.4.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://dev.gentoo.org/~arthurzam/distfiles/dev-python/${PN}/${P}.tar.x
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
RDEPEND="
|| (
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 140eb28bdc25..3ae3e8fbce96 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -4,3 +4,4 @@ DIST boto3-1.18.65.tar.gz 429858 BLAKE2B fbc80e0d8d10f6d02fcf9b86c6b4be03a9c9083
DIST boto3-1.19.5.tar.gz 433567 BLAKE2B 52c12a4dd18d6f02326f8002b345cc5df224455fc862daa700326ae1df258979211d2753f01e1a106f237de393e483dc8926bb4ef0e08bafa575f20811dccd55 SHA512 fad05102f0c3e7e30a3342009f6b3ae28f52758f17a0c22b4da9a03dd10d7f9149ea2ec0119f55ec7280824bd8173653271821e82fcd54ef9fb9161b2d62df70
DIST boto3-1.19.6.tar.gz 434389 BLAKE2B 3c7e4c91c95b93358b4a31d401e03f8a397802004a6ee2bfc2ef1a31df8b89e8866fa73d3354509ae00537898cc8e04b878cc9d00f82ae4e94266e8185e7abd1 SHA512 6ba4f7a89d973991afe329b4c648c8ecb0bb256d63c7e60ae8bb70e6fd5fc9b1929168dfdd55f2c84039856a32c891013abf61dc2e65f516490c446b0dfaaac2
DIST boto3-1.19.7.tar.gz 434848 BLAKE2B 102b2d985cbad6c6ff6fc7866f47c172028e4b1a56ef7eac5854b12aedfbca1b94eb426fead04397e119ebaf939f7732202718395775b0555f566ed938c27dc7 SHA512 40cf5341bfd7cc4cae4c542e39e4c5ec1b63ba3bfee5faedb75633e656700dd5e80a137b234b57d22cc1b7d85a2056ced4eb8b7189ab57c8f2c0269e8826811d
+DIST boto3-1.19.8.tar.gz 435192 BLAKE2B 2cec7fe3a114ef349e4afc15f15315d351de93ecae3439946d9936effa257e55a88f6605b33e13ca927a245e99ad60b0c9c356320be6e4f95a99e52c6ff8da11 SHA512 f1038a0103f09c4bb20d4feb30abf3e2be2535d8e9e0e807e4d98f20ac27f27f0260b274c1b6e6b91f00c5d3e4206a92ab1cd80029f2b0720241d98356f688e7
diff --git a/dev-python/boto3/boto3-1.19.8.ebuild b/dev-python/boto3/boto3-1.19.8.ebuild
new file mode 100644
index 000000000000..450c87d9f8b7
--- /dev/null
+++ b/dev-python/boto3/boto3-1.19.8.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="https://github.com/boto/boto3"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/boto3"
+ inherit git-r3
+ BOTOCORE_PV=${PV}
+else
+ SRC_URI="https://github.com/boto/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+ # botocore is x.(y+3).z
+ BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 3)).$(ver_cut 3-)"
+fi
+
+RDEPEND="
+ >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.3.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 5f0402308aea..6ffdbb992fdb 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -4,3 +4,4 @@ DIST botocore-1.21.65.tar.gz 8261668 BLAKE2B c955019d06aa1b2f4503673b7d9009e5d6e
DIST botocore-1.22.5.tar.gz 8301083 BLAKE2B 91f9d38e7c5bcb0b8f58c04547ad45489f58d2240c6b7301cf632969a4a73cf4a1d51c8c68c8def27653c10041d2163ad7ca800dcf6fd07972b506bf2566cae3 SHA512 710a9eeee03dc79ca4ffacc4974f09ca769e1e3b8cb143f6f0349240dd8c2af8ee526a1dadb7310a26019363f683fc4149cb4c73d8b94a856a384fab7f84fb5c
DIST botocore-1.22.6.tar.gz 8302901 BLAKE2B 4627c7bfcbd1750a6517c045b7c7c986c6defb9b35e413fae47e03fe24f3404ff4905c714212ad00193eb4dfa2893a0080da97acb538965a8792278915823a3b SHA512 f39eb6f339011709fa764d3783f225fbd4e4100e51466de9c87d6a3a5430823e81be1b024963ded49785b4fd49febdfa66dd3f91c3b9296508c3d71d794d170d
DIST botocore-1.22.7.tar.gz 8306878 BLAKE2B fd427ced3eb3c2ce71a28f7334ee312293fc98c7b2d91991ce6c894f71bd39b356aa3a2f0a0495fd91e394be4d284b21dc8272863e9568167112aadccaed21a6 SHA512 39eaa5d4bc64669bc398797c69d63157a6a4539bed1c4cdc492c4fe94c9a32d58ac9ea8c06fafd75a5c36ab9d3a5c99f88990b03bcef6cccf7e0c4247330780b
+DIST botocore-1.22.8.tar.gz 8316687 BLAKE2B 0ea2bfbf794d156e5843687927980d4dc9e4243c00ec6ee3175dd02cf7d99a10e549b06eb377edb52b73ca64e4e97e6c03c96389773f5ac87f648a6ec6a89398 SHA512 d35748c240ad83155c5d97b044569e1d7093469acdac948d4ce396b1f17563ed5e9bbfa91799a87fabd93df3b63724be096d489be909aa1567d59e6bafe99e03
diff --git a/dev-python/botocore/botocore-1.22.8.ebuild b/dev-python/botocore/botocore-1.22.8.ebuild
new file mode 100644
index 000000000000..638620b2cbc8
--- /dev/null
+++ b/dev-python/botocore/botocore-1.22.8.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="https://github.com/boto/botocore"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/botocore"
+ inherit git-r3
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/jmespath[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/1.8.6-tests-pass-all-env-vars-to-cmd-runner.patch"
+)
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/cliff/cliff-3.9.0.ebuild b/dev-python/cliff/cliff-3.9.0.ebuild
index d783eb62db71..9c52872fd13f 100644
--- a/dev-python/cliff/cliff-3.9.0.ebuild
+++ b/dev-python/cliff/cliff-3.9.0.ebuild
@@ -16,7 +16,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 ~s390 sparc x86"
+KEYWORDS="amd64 ~arm arm64 ~hppa ~ppc64 ~s390 sparc x86"
RDEPEND="
>=dev-python/autopage-0.4.0[${PYTHON_USEDEP}]
diff --git a/dev-python/django/Manifest b/dev-python/django/Manifest
index e5f619107f5d..030d23e2c973 100644
--- a/dev-python/django/Manifest
+++ b/dev-python/django/Manifest
@@ -4,3 +4,5 @@ DIST Django-3.1.13.checksum.txt 2552 BLAKE2B e82052d952f7dfd15e11b413fe2f106af3d
DIST Django-3.1.13.tar.gz 9656683 BLAKE2B bb2dd72ba2dfc13c8f487d6b59cd9302160800dca4f63b92e640eddf4aba2e5b1bd67580e56477bced44a5393b5f65a463a9c0c539ba998a20606bffdfafcf74 SHA512 55b1ceb24b6e0ba542a96319f63b138439532cf4b00971a8432baaab4a8ee219cc9fbb31d457ba7da9e932c919df83da9630866d909df4a5d432866b158098d7
DIST Django-3.2.8.checksum.txt 2552 BLAKE2B e3bbf05bab72cfd71521451620706eb2b66d2f16791cd7897b2606083af91b62af6c6ea1e9f2b2a1437e3ffc1e1688149f9084d134ac6fc233f6285418bdbe5c SHA512 62cef4cc4c9de4be5db763e35957f2e71e9ca9fc5335a35bc51a1e337a91027236f41b84dd1f9eb513cb769174d9375c0a7b52cfc645331a3927c5498849eb56
DIST Django-3.2.8.tar.gz 9820955 BLAKE2B 5b53c1033babda046c3e3ff8421465d5bf31e92c5c65e6ebf7d4a401a5f85017625efbf227c718877d58f80f9153fc205b817aeb030d0f322c26b10394e71287 SHA512 0d1d745fc7ebc20a2c3c1d18e270210ec57d605aafafb2bc2bee4229727469dfea6fbd510073ee6509b389eff2a7bdb75765aecafc4506d4489c2ce37a97bfbe
+DIST Django-3.2.9.checksum.txt 2547 BLAKE2B 7a1c38abe3215ee4533984c7d78c37b369545695fb11d84d6600d64eec290addb9257c4d2850af4e311df2245799572e0866917e09713643376da7859754a2ce SHA512 9aae8da65079e20dcf9071fd72fa5f5c61640264b52c842d96cc2f697ba1d5003cf7b7c6d1f95549eb8ec4449679a00ddd267c022b3d0483ab030cc96c9405b7
+DIST Django-3.2.9.tar.gz 9809157 BLAKE2B 27fc04e874055f69466f06b009c015b46c2d2fa9ddd0005f7b2b7b32a45bd1b8a9f34e693027e040b8d05fa581dfeb9a00aaa1d876477cff5292167f20768b60 SHA512 62fb297694a7f5e48465e102dc97e3d1d04b94499bc6d98d37a00d96b438b8c919b6d08055868a1836d62b89ff65ce4fa7dbc9390789dab2eeca0187269b125f
diff --git a/dev-python/django/django-3.2.9.ebuild b/dev-python/django/django-3.2.9.ebuild
new file mode 100644
index 000000000000..28502c5a9117
--- /dev/null
+++ b/dev-python/django/django-3.2.9.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit bash-completion-r1 distutils-r1 optfeature verify-sig
+
+MY_P=${P^}
+DESCRIPTION="High-level Python web framework"
+HOMEPAGE="https://www.djangoproject.com/ https://pypi.org/project/Django/"
+SRC_URI="
+ https://media.djangoproject.com/releases/$(ver_cut 1-2)/${MY_P}.tar.gz
+ verify-sig? ( https://media.djangoproject.com/pgp/${MY_P}.checksum.txt )"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="doc sqlite test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/asgiref-3.3.4[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ >=dev-python/sqlparse-0.2.2[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ ${RDEPEND}
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/selenium[${PYTHON_USEDEP}]
+ dev-python/tblib[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ !!=app-crypt/openpgp-keys-django-20201201 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.1-bashcomp.patch
+)
+
+distutils_enable_sphinx docs --no-autodoc
+
+VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/django.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "${MY_P}.checksum.txt" sha256 "${MY_P}.tar.gz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+python_prepare_all() {
+ # Fails because of warnings
+ sed -i 's/test_dumpdata_proxy_with_concrete/_&/' tests/fixtures/tests.py
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ # Tests have non-standard assumptions about PYTHONPATH,
+ # and don't work with ${BUILD_DIR}/lib.
+ PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite -v2 ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp extras/django_bash_completion ${PN}-admin
+ bashcomp_alias ${PN}-admin django-admin.py
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature_header "Additional Backend support can be enabled via:"
+ optfeature "MySQL backend support" dev-python/mysqlclient
+ optfeature "PostgreSQL backend support" dev-python/psycopg:2
+ optfeature_header
+ optfeature "GEO Django" "sci-libs/gdal[geos]"
+ optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
+ optfeature "ImageField Support" dev-python/pillow
+ optfeature "Password encryption" dev-python/bcrypt
+ optfeature "High-level abstractions for Django forms" dev-python/django-formtools
+}
diff --git a/dev-python/drf-yasg/metadata.xml b/dev-python/drf-yasg/metadata.xml
index 4855944efa0a..872e1cf1181f 100644
--- a/dev-python/drf-yasg/metadata.xml
+++ b/dev-python/drf-yasg/metadata.xml
@@ -9,5 +9,6 @@
drf-yasg
+ axnsan12/drf-yasg
diff --git a/dev-python/filetype/files/filetype-1.0.7-examples.patch b/dev-python/filetype/files/filetype-1.0.7-examples.patch
deleted file mode 100644
index 04eeb8e1ee68..000000000000
--- a/dev-python/filetype/files/filetype-1.0.7-examples.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 0aa106c03d0bc7dc872edb349b4a88edd170ca05 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?=
-Date: Sun, 9 Aug 2020 14:55:07 +0200
-Subject: [PATCH] setup.py: Exclude 'examples' from being installed as a global
- pkg
-
----
- setup.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/setup.py b/setup.py
-index 45bfd49..8a69c6a 100644
---- a/setup.py
-+++ b/setup.py
-@@ -36,6 +36,7 @@ setup(
- 'Topic :: System :: Filesystems',
- 'Topic :: Utilities'],
- platforms=['any'],
-- packages=find_packages(exclude=['dist', 'build', 'docs', 'tests']),
-+ packages=find_packages(exclude=['dist', 'build', 'docs', 'tests',
-+ 'examples']),
- package_data={'filetype': ['LICENSE', '*.md']},
- zip_safe=True)
---
-2.28.0
-
diff --git a/dev-python/google-auth/Manifest b/dev-python/google-auth/Manifest
index f773376add57..eb4b21baea3b 100644
--- a/dev-python/google-auth/Manifest
+++ b/dev-python/google-auth/Manifest
@@ -1,2 +1,3 @@
DIST google-auth-2.3.0.tar.gz 184993 BLAKE2B ac1392ca61e092e3e53c9e936e2d0bd11aeb8f33cace2458e80055734a96a05294335a9273acfcc3f385f423ed537d544404e41599cb6a75b21a10998fd72562 SHA512 cf0040d238880ea4bbad64f0a47311f2ed3922a7301a0d5287319b39ea8e76dca66dc78fd860cc12386b078bd2147a1cba01de97381420ef94cc44fca0c90ad1
DIST google-auth-2.3.2.tar.gz 186112 BLAKE2B df2321252984ea43def8ec703590d153ecbd144f385a4915ce8f52e4cb71d66e31929f95a1ac783c4c4436a454b81a71d13517d38454892203c8ef19dbd80822 SHA512 1a7c828ecf529e8e64f946a5ee1923bed1544d4828b00449d027b0898af47e99b90be1a490b60e19a133fb59397f8860265306cd3dbaa8600bef823da1e4a215
+DIST google-auth-2.3.3.tar.gz 186600 BLAKE2B 52b1269b88d27fafafcb053219c93c7f180cac11cdf32b140531553dda547d02087b0418d44edc6497eb37793859d86d4beaad1a7a128c86839202785584c9ab SHA512 3ab6d97e71988ef5e338e0a643545f8fa504f5ea04f4176afd9417ecf0e9a3fa45333f0c2c7ea5bf32423df32c48ec59ac9d16ef8bfc35a1aa4c0fcc114fef63
diff --git a/dev-python/google-auth/google-auth-2.3.3.ebuild b/dev-python/google-auth/google-auth-2.3.3.ebuild
new file mode 100644
index 000000000000..01d1b603755a
--- /dev/null
+++ b/dev-python/google-auth/google-auth-2.3.3.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..9} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+DESCRIPTION="Google Authentication Library"
+HOMEPAGE="
+ https://github.com/googleapis/google-auth-library-python/
+ https://pypi.org/project/google-auth/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/cachetools-2.0.0[${PYTHON_USEDEP}]
+ dev-python/namespace-google[${PYTHON_USEDEP}]
+ >=dev-python/pyasn1-0.1.7[${PYTHON_USEDEP}]
+ >=dev-python/pyasn1-modules-0.2.1[${PYTHON_USEDEP}]
+ >=dev-python/rsa-3.1.4[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ "
+BDEPEND="
+ test? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/grpcio[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/moto[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/pyu2f[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # these are compatibility tests with oauth2client
+ # disable them to unblock removal of that package
+ tests/test__oauth2client.py
+)
+
+python_install_all() {
+ distutils-r1_python_install_all
+ find "${ED}" -name '*.pth' -delete || die
+}
diff --git a/dev-python/miniupnpc/miniupnpc-2.2.3.ebuild b/dev-python/miniupnpc/miniupnpc-2.2.3.ebuild
index 1c9a9048f4ad..9775eb42bd47 100644
--- a/dev-python/miniupnpc/miniupnpc-2.2.3.ebuild
+++ b/dev-python/miniupnpc/miniupnpc-2.2.3.ebuild
@@ -14,7 +14,7 @@ SRC_URI="http://miniupnp.free.fr/files/${P}.tar.gz
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ppc ~ppc64 x86"
IUSE=""
RDEPEND=">=net-libs/miniupnpc-${PV}:0="
diff --git a/dev-python/numpy/numpy-1.21.2-r1.ebuild b/dev-python/numpy/numpy-1.21.2-r1.ebuild
index 0802501003f1..43d5088c7985 100644
--- a/dev-python/numpy/numpy-1.21.2-r1.ebuild
+++ b/dev-python/numpy/numpy-1.21.2-r1.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
)"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="doc lapack"
RDEPEND="
diff --git a/dev-python/opt-einsum/metadata.xml b/dev-python/opt-einsum/metadata.xml
index d9e9c889794a..551209959880 100644
--- a/dev-python/opt-einsum/metadata.xml
+++ b/dev-python/opt-einsum/metadata.xml
@@ -10,5 +10,6 @@
opt-einsum
+ dgasmith/opt_einsum
diff --git a/dev-python/opt-einsum/opt-einsum-3.3.0.ebuild b/dev-python/opt-einsum/opt-einsum-3.3.0.ebuild
index cbe9bf30b1bc..0c44a6ee477c 100644
--- a/dev-python/opt-einsum/opt-einsum-3.3.0.ebuild
+++ b/dev-python/opt-einsum/opt-einsum-3.3.0.ebuild
@@ -3,17 +3,18 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit distutils-r1
DESCRIPTION="Optimized Einsum: A tensor contraction order optimizer"
HOMEPAGE="https://pypi.org/project/opt-einsum/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P/-/_}.tar.gz"
+S="${WORKDIR}/${P/-/_}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 x86"
-IUSE=""
-S="${WORKDIR}/${P/-/_}"
-BDEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
+RDEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/owslib/files/owslib-0.20.0-no-privacybreach.patch b/dev-python/owslib/files/owslib-0.20.0-no-privacybreach.patch
deleted file mode 100644
index 45bcb8b38d18..000000000000
--- a/dev-python/owslib/files/owslib-0.20.0-no-privacybreach.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-Description: Fix privacy breaches.
-Author: Johan Van de Wauw
-
---- a/docs/en/index.rst
-+++ b/docs/en/index.rst
-@@ -5,11 +5,7 @@ OWSLib |release| documentation
- .. toctree::
- :maxdepth: 2
-
--.. image:: https://www.openhub.net/p/owslib/widgets/project_partner_badge.gif
-- :width: 193px
-- :height: 33px
-- :alt: OWSLib
-- :target: https://www.openhub.net/p/owslib?ref=WidgetProjectPartnerBadge
-+`OpenHUB `_
-
- :Author: Tom Kralidis
- :Contact: tomkralidis at gmail.com
---- a/docs/_templates/layout.html
-+++ b/docs/_templates/layout.html
-@@ -3,20 +3,6 @@
- {%- block extrahead %}
- {{ super() }}
-
--
--
- {% endblock %}
-
- {% block relbar1 %}
diff --git a/dev-python/pickleshare/pickleshare-0.7.5.ebuild b/dev-python/pickleshare/pickleshare-0.7.5.ebuild
index 564b35aa6ed8..0e651b5ed909 100644
--- a/dev-python/pickleshare/pickleshare-0.7.5.ebuild
+++ b/dev-python/pickleshare/pickleshare-0.7.5.ebuild
@@ -11,7 +11,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/path-py-6.2[${PYTHON_USEDEP}]"
diff --git a/dev-python/prettytable/Manifest b/dev-python/prettytable/Manifest
index 97dff6de9505..e2ff20038126 100644
--- a/dev-python/prettytable/Manifest
+++ b/dev-python/prettytable/Manifest
@@ -1,2 +1,3 @@
DIST prettytable-0.7.2.tar.bz2 21755 BLAKE2B 385d5bd6d4ab75a8c7ae96abc9d9e98a66a196265853113e7fb59073876e9f5e9c6c4fba9a30d80cc726a5184e78fb6451ff9a553909704fcc5022b6a08413f4 SHA512 f3a3fe6fa29f4ef090ff6cac06549ebd9db8b387e7b25fc64c4e37c8444586f50355c5573f38caabc72360aa68054aa189a67aa37f0bd13b872862ecd9151e71
DIST prettytable-2.2.1.tar.gz 45102 BLAKE2B 59fe355603791c8b3a584b1d1f2864559a7e2c7249923d5299c967db74dbd37baef9557d8d5511defe54f64e3f4625ef45635cf2f00a051a599177a3774da1a5 SHA512 5496b1525342b9df4b88cc2cd6079d8c329787b20f7e581465dcdf447b90f78aad764c6505aab8a0e3c4cbb44c943720672373cf754d6f7313b68c28005a707c
+DIST prettytable-2.3.0.tar.gz 49386 BLAKE2B 368dd454da9dde3900009ed52c0d55c30ed69315b36fb53eaebc764af419851b858dc648ac5d8ca62592c2aaa68dac91ac03a1a1bf29d10ee5162981f2937c22 SHA512 feeaeeb0a1897c0aaa2bc0ac7f470244529e8c70debb26976494719607840c8b8a80698b7e463402031b250fe152091e947555be2a6f983764e01bdaa1a71a22
diff --git a/dev-python/prettytable/prettytable-2.3.0.ebuild b/dev-python/prettytable/prettytable-2.3.0.ebuild
new file mode 100644
index 000000000000..0ea97628ed56
--- /dev/null
+++ b/dev-python/prettytable/prettytable-2.3.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Easily displaying tabular data in a visually appealing ASCII table format"
+HOMEPAGE="
+ https://github.com/jazzband/prettytable/
+ https://pypi.org/project/prettytable/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/wcwidth[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/importlib_metadata[${PYTHON_USEDEP}]
+ ' pypy3)
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_impl_dep sqlite)
+ dev-python/pytest-lazy-fixture[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests --install pytest
diff --git a/dev-python/prompt_toolkit/prompt_toolkit-3.0.21.ebuild b/dev-python/prompt_toolkit/prompt_toolkit-3.0.21.ebuild
index 880a84917d1e..8d7e4ed391f0 100644
--- a/dev-python/prompt_toolkit/prompt_toolkit-3.0.21.ebuild
+++ b/dev-python/prompt_toolkit/prompt_toolkit-3.0.21.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE=""
RDEPEND="
diff --git a/dev-python/pynest2d/pynest2d-4.9.1.ebuild b/dev-python/pynest2d/pynest2d-4.9.1.ebuild
index e6226da74083..d7a3591a7c44 100644
--- a/dev-python/pynest2d/pynest2d-4.9.1.ebuild
+++ b/dev-python/pynest2d/pynest2d-4.9.1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake python-single-r1
diff --git a/dev-python/pytest-lazy-fixture/pytest-lazy-fixture-0.6.3.ebuild b/dev-python/pytest-lazy-fixture/pytest-lazy-fixture-0.6.3.ebuild
index 5b7c8f820706..2b9279fc7fb2 100644
--- a/dev-python/pytest-lazy-fixture/pytest-lazy-fixture-0.6.3.ebuild
+++ b/dev-python/pytest-lazy-fixture/pytest-lazy-fixture-0.6.3.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
inherit distutils-r1
DESCRIPTION="It helps to use fixtures in pytest.mark.parametrize"
diff --git a/dev-python/pytest-xdist/files/pytest-xdist-2.2.0-services-conflict.patch b/dev-python/pytest-xdist/files/pytest-xdist-2.2.0-services-conflict.patch
deleted file mode 100644
index 2c911601b070..000000000000
--- a/dev-python/pytest-xdist/files/pytest-xdist-2.2.0-services-conflict.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 082beb2ce0fe1f338311d85e656b962df8a16ce1 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?=
-Date: Tue, 15 Dec 2020 11:38:53 +0100
-Subject: [PATCH] Disable pytest-services plugin in test to avoid worker_id
- conflict
-
-Pass "-p no:pytest-services" in test_worker_id_fixture() to ensure
-that the presence (and implicit loading) of pytest-services will not
-cause the test to fail via overriding worker name.
-
-Fixes #611
----
- testing/acceptance_test.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/testing/acceptance_test.py b/testing/acceptance_test.py
-index c273bfa..3bea8fc 100644
---- a/testing/acceptance_test.py
-+++ b/testing/acceptance_test.py
-@@ -1025,7 +1025,7 @@ def test_worker_id_fixture(testdir, n):
- f.write(worker_id)
- """
- )
-- result = testdir.runpytest(f, "-n%d" % n)
-+ result = testdir.runpytest(f, "-n%d" % n, "-p", "no:pytest-services")
- result.stdout.fnmatch_lines("* 2 passed in *")
- worker_ids = set()
- for fname in glob.glob(str(testdir.tmpdir.join("*.txt"))):
---
-2.29.2
-
diff --git a/dev-python/pytools/Manifest b/dev-python/pytools/Manifest
index 03624812c8fe..186530444eac 100644
--- a/dev-python/pytools/Manifest
+++ b/dev-python/pytools/Manifest
@@ -1 +1,2 @@
DIST pytools-2021.2.8.tar.gz 63381 BLAKE2B 975a611c0ee7b013facf9754926d52e66184d69b9bbbe3ddafd252d0c0bd093c11cb91140879e2660b7e2a4f2291b58f728b2e19add2e205653df59a9f2b7be2 SHA512 9dde96889c3505f5cf4eb06c3174b889ed8ecc964ac95d8cbf36ad500ab23470c5ee46b8f96bc4fa5d2dc710d3603680643a61e10bac4da8305d92b1e3ebd0d8
+DIST pytools-2021.2.9.tar.gz 66254 BLAKE2B 576e10a1ab823827d030466a2f39ec5510c02a856288d840904a5d3b612191d2a108393fc9a73072b8757e7729b4ead84829805e8913e4c54949465594ac8842 SHA512 1afe6feb6e5094171aba9a2749418a5e677cb70286be1ac9b65d1470835e1ae68f72f7c4221149358ab1595cab438688882b51682c5865955edf89ae32ca6d6d
diff --git a/dev-python/pytools/pytools-2021.2.9.ebuild b/dev-python/pytools/pytools-2021.2.9.ebuild
new file mode 100644
index 000000000000..5400173d9dde
--- /dev/null
+++ b/dev-python/pytools/pytools-2021.2.9.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_REQ_USE='sqlite'
+
+inherit distutils-r1
+
+DESCRIPTION="Collection of tools missing from the Python standard library"
+HOMEPAGE="https://mathema.tician.de/software/pytools/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.6.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/rdflib/rdflib-6.0.2.ebuild b/dev-python/rdflib/rdflib-6.0.2.ebuild
index 2895873653e1..6f38b57fde6b 100644
--- a/dev-python/rdflib/rdflib-6.0.2.ebuild
+++ b/dev-python/rdflib/rdflib-6.0.2.ebuild
@@ -14,7 +14,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv x86"
+KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86"
IUSE="examples sqlite"
RDEPEND="
diff --git a/dev-python/regex/Manifest b/dev-python/regex/Manifest
index 49941036d5e6..c6fc7d37bc09 100644
--- a/dev-python/regex/Manifest
+++ b/dev-python/regex/Manifest
@@ -1,4 +1,5 @@
DIST regex-2021.10.23.tar.gz 703746 BLAKE2B e26ec50994375f8b128206743209dff1ceb760b67967ff66d2553c1da27840e0df1611bf1a2746fd26246d3ac8b4a3974c98c8b4d4ede4e6d7954875c17b2405 SHA512 6bc67a066a7f33f6567a672132b1b65d89b21152d5ec3546262e542413ce40999ad57fb55eec92b9f4010489968b6eed1dab27efa63e14b771d883a890ddf9ab
DIST regex-2021.10.8.tar.gz 703541 BLAKE2B da2a35c0f95c208fe2a9951d4c8cf756cd9eecb3ff27c5d729e9b5702256cc12bdde896019abf2aa12d206cbaace0fa693be332ff8d8baa5e6e628866eb64dea SHA512 395fbef61d54fad539bbd1e51c9100cba02bcd3a147e95a32ff8c32cb7fca66df98bade638e24f9a5c6e5d6c7becca033f925c4fa675b4e6689cba8316a8b46d
+DIST regex-2021.11.1.tar.gz 713328 BLAKE2B 165949eed94deb7ad6a12ca8e73f99b2b6aae26032d6545e74a897c25b32101707d67efba4cc936cdcad361a799e5742816178f0157d37e1fe9876c8cd4d60f0 SHA512 98efb00a88548ec63759f82870775d192ad2456d6c7b6362837e66980f029356fc270e991cf40ea049ead4c98d2baf8bb9a19b118ded7fb24a0bd6efcc1f6916
DIST regex-2021.8.28.tar.gz 694689 BLAKE2B 1aeceeb77df3c67e3ac14811000dc0f0cccf2a4994fd349f01f3a4e793f265dc9a73ea685202c6a7af8f507f0db94d6b74b1ae448ce58dd985ca4122c3454cba SHA512 da95f8ce03200f45b6be8730b65d01170847d074202e9b5f311688e22e3d59c32a8ff93768e2ac0105bac02936cbcde49eb114b762e89e6ebf895d8b799b4bf9
DIST regex-2021.9.30.tar.gz 703504 BLAKE2B d958fa97aabb4c25c424591cfc9b6006c72e72d33029902a00e705c0db6786dcca92b006c4d77f98b0dd183405f63e282f33af75361d20d2b61f65d70da40da6 SHA512 3ce87e01a6e90a2519046595548f9ce38fb177db0d5c2359c57df857a2a9f14be1c6d228b7bd724d5bd66f723e33fd6056180fb45c50931bb0ec5e723df2f16a
diff --git a/dev-python/regex/regex-2021.11.1.ebuild b/dev-python/regex/regex-2021.11.1.ebuild
new file mode 100644
index 000000000000..67c833d04b54
--- /dev/null
+++ b/dev-python/regex/regex-2021.11.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Alternative regular expression module to replace re"
+HOMEPAGE="https://bitbucket.org/mrabarnett/mrab-regex"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="doc"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_empty_array.patch"
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_issue_18468.patch"
+)
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest -s "${BUILD_DIR}"/lib
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( docs/Features.html )
+ local DOCS=( README.rst docs/*.rst )
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/sqlalchemy/sqlalchemy-1.4.26.ebuild b/dev-python/sqlalchemy/sqlalchemy-1.4.26.ebuild
index f739ff2527e2..c65335ded350 100644
--- a/dev-python/sqlalchemy/sqlalchemy-1.4.26.ebuild
+++ b/dev-python/sqlalchemy/sqlalchemy-1.4.26.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="examples +sqlite test"
RDEPEND="
diff --git a/dev-python/swagger-spec-validator/Manifest b/dev-python/swagger-spec-validator/Manifest
index 85e2a5ecce40..7064fe48b193 100644
--- a/dev-python/swagger-spec-validator/Manifest
+++ b/dev-python/swagger-spec-validator/Manifest
@@ -1 +1,2 @@
DIST swagger-spec-validator-2.7.3.tar.gz 21364 BLAKE2B 05e4d3281c112895eff88050f1902161ecd661c77179f9421cd1335a04e759a67480a53858977a5b8ad4b2ad749c8940e01a646960954ee1006b3e75481c5103 SHA512 182e67f6b2a83c61a2ad452614557cfdebf72e30178f3882ba27a55bcbc475c34a02db46ed037065e986ae24970ab398ba7992fbe1e07f7b45cfb5ddb0379759
+DIST swagger-spec-validator-2.7.4.gh.tar.gz 47446 BLAKE2B d284bede24477cfc942d094937cec12224535902383779c223899ab7b359ea45427777ebc8d5f264a76696eae6746b619d35824090ae2f87c6acda4ef040b293 SHA512 d65c060f4730413280a188b01cf62d0f2d77fa04461bb60f2711d1806be2e7b8de16c23d952440a838f57acd50294a16114d34eeee988902fb90c099404c7942
diff --git a/dev-python/swagger-spec-validator/metadata.xml b/dev-python/swagger-spec-validator/metadata.xml
index 809a49444e60..e8e3a986eb0d 100644
--- a/dev-python/swagger-spec-validator/metadata.xml
+++ b/dev-python/swagger-spec-validator/metadata.xml
@@ -2,7 +2,9 @@
+
swagger-spec-validator
+ Yelp/swagger_spec_validator
diff --git a/dev-python/swagger-spec-validator/swagger-spec-validator-2.7.4.ebuild b/dev-python/swagger-spec-validator/swagger-spec-validator-2.7.4.ebuild
new file mode 100644
index 000000000000..e78ec11c2bdc
--- /dev/null
+++ b/dev-python/swagger-spec-validator/swagger-spec-validator-2.7.4.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit distutils-r1
+
+DESCRIPTION="validate Swagger specs against Swagger 1.1 or 2.0 specification"
+HOMEPAGE="https://github.com/Yelp/swagger_spec_validator"
+SRC_URI="
+ https://github.com/Yelp/swagger_spec_validator/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${PN//-/_}-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs/source \
+ dev-python/sphinx_rtd_theme
diff --git a/dev-python/uranium/uranium-4.9.1.ebuild b/dev-python/uranium/uranium-4.9.1.ebuild
index 066a9e021074..6743e295a230 100644
--- a/dev-python/uranium/uranium-4.9.1.ebuild
+++ b/dev-python/uranium/uranium-4.9.1.ebuild
@@ -4,7 +4,8 @@
EAPI=7
DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=(python3_{7..9})
+DISTUTILS_USE_SETUPTOOLS=no
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake distutils-r1
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index c2227020de9f..bcd7b66bdb67 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -1,3 +1,4 @@
+DIST virtualenv-20.10.0.tar.gz 9007218 BLAKE2B 1fd37b38679b7375c1eb6e9644418b1653cb6a8dab194c8553fa113cf4a801a7c1d5e6490067767cfb198a0ef2b5ab9cf166783b9c6fac0b2c8b538949c11804 SHA512 df940aa29801a39d39be46d3518a99e93efb2113650abf81d00b4545183ec6806823ce8b754c5a3c951cb64e941944421046c709ed3de6a925489e5ac1988d48
DIST virtualenv-20.4.7.tar.gz 10625204 BLAKE2B 1233ea45f771fb425b99c966904e2c5444e5fcb617b1d7cd34cdac097ee15566b7f4c841d444393723ed369193f33bef90ea7caa5b3c20aaf65fbde2f865abf7 SHA512 a554fb32cc46cb1cef2a2655bdae598efb52a4e71223eb10d9a36b124390546250aa11cf7da991a41ef4697523ec4562a31e35b5ab7ee8aba748ea4ff28e088b
DIST virtualenv-20.7.2.tar.gz 8715517 BLAKE2B 306de1bb6e4aa1c888c28161abb33f7016da47a82bba7181687b99127998e82a67e24961610bcbea8a3cad8e7f218e7c76d62de26a74e2bbdf163ab76021bc41 SHA512 6ae91a0cd5cd4da000d0175762515b1b9af80e273d56293d9d57b3faf63ff72001c8d1b3326c1f9dfcea8a4a157c1f62332a2a02b84e25ac4bd3850b0d39aebc
DIST virtualenv-20.8.1.tar.gz 8708080 BLAKE2B 703e3e8e07105e4a7154d0e91a13ec2c6b7e37be92e73733a6850c7c1a96711c19b4974bc4f6d3816ea78095b2af807183f53cbc579acad9a7ec6815ea547294 SHA512 db373bdb68efce0ce26cefe508e452b62d4336ccf74f08a51aa61272127c8cd43639443342f42cacb62d7bfd1381bc1204211218c486dfcdb165d8486a2e728b
diff --git a/dev-python/virtualenv/virtualenv-20.10.0.ebuild b/dev-python/virtualenv/virtualenv-20.10.0.ebuild
new file mode 100644
index 000000000000..49b7be5d7c71
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-20.10.0.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=manual
+
+inherit distutils-r1
+
+DESCRIPTION="Virtual Python Environment builder"
+HOMEPAGE="
+ https://virtualenv.pypa.io/en/stable/
+ https://pypi.org/project/virtualenv/
+ https://github.com/pypa/virtualenv/
+"
+SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/backports-entry_points_selectable-1.0.4[${PYTHON_USEDEP}]
+ >=dev-python/distlib-0.3.1[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-41[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/importlib_metadata-0.12[${PYTHON_USEDEP}]
+ ' pypy3)"
+# coverage is used somehow magically in virtualenv, maybe it actually
+# tests something useful
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ >=dev-python/pip-20.0.2[${PYTHON_USEDEP}]
+ >=dev-python/pytest-freezegun-0.4.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-timeout-1.3.4[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ )"
+
+# (unpackaged deps)
+#distutils_enable_sphinx docs \
+# dev-python/sphinx-argparse \
+# dev-python/sphinx_rtd_theme \
+# dev-python/towncrier
+distutils_enable_tests pytest
+
+src_configure() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ tests/unit/activation/test_xonsh.py
+ tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data
+ tests/unit/create/test_creator.py::test_cross_major
+ )
+ [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-pypy3-posix-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-pypy3-posix-copies-global]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-pypy3-posix-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-pypy3-posix-copies-global]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-venv-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-venv-copies-global]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-venv-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-venv-copies-global]'
+ 'tests/unit/create/test_creator.py::test_zip_importer_can_import_setuptools'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.9-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.9--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.10-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.10--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.9-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.9--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.10-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.10--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3--bin-]'
+ )
+
+ distutils_install_for_testing
+ epytest
+}
+
+pkg_postinst() {
+ elog "Please note that while virtualenv package no longer supports"
+ elog "Python 2.7, you can still create py2.7 virtualenvs via:"
+ elog " $ virtualenv -p 2.7 ..."
+}
diff --git a/dev-python/xlsxwriter/Manifest b/dev-python/xlsxwriter/Manifest
index 8b1debb09127..60ad01d4ec0f 100644
--- a/dev-python/xlsxwriter/Manifest
+++ b/dev-python/xlsxwriter/Manifest
@@ -1 +1,2 @@
DIST XlsxWriter-RELEASE_3.0.1.tar.gz 34350396 BLAKE2B 441d9969df932ebe636474ca10eb260cea160b71b8bc46a78964ffcb752acdaeccd69703ca80a2af4c5284c5555f49c62cfefeb5fb8cdb9f0c305be44848815d SHA512 425e86acd8e54e89393931e5c698c244721ad16fe4bcb13aa9038ad7ba279803f8cf5c3b35170b274a0386ada03ba94ac385d039b3b8aa97c86f0abff4a20e58
+DIST XlsxWriter-RELEASE_3.0.2.tar.gz 34433041 BLAKE2B 748d710d3f953ae22154022a75f3a67898846914cab67302167ba34ba5e449041a95dbc984883e4ff58c078b940ebd429898109abb7a39f57ea499e5fcff83fa SHA512 790eb7fb93d25987adf5d30bfa28e0fa137f809dc9a293edfe86105e0a948263759df85b5a0f9fb19b89c256a33b5b68179d95a210964b6f82345972ee9e6108
diff --git a/dev-python/xlsxwriter/xlsxwriter-3.0.2.ebuild b/dev-python/xlsxwriter/xlsxwriter-3.0.2.ebuild
new file mode 100644
index 000000000000..c677523642a3
--- /dev/null
+++ b/dev-python/xlsxwriter/xlsxwriter-3.0.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+inherit distutils-r1
+
+TAG=RELEASE_${PV}
+MY_P=XlsxWriter-${TAG}
+DESCRIPTION="Python module for creating Excel XLSX files"
+HOMEPAGE="https://github.com/jmcnamara/XlsxWriter"
+SRC_URI="
+ https://github.com/jmcnamara/XlsxWriter/archive/${TAG}.tar.gz
+ -> ${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+distutils_enable_tests pytest
diff --git a/dev-python/yarl/Manifest b/dev-python/yarl/Manifest
index 1fc540c9808a..ce1b705c1b48 100644
--- a/dev-python/yarl/Manifest
+++ b/dev-python/yarl/Manifest
@@ -1,2 +1,3 @@
DIST yarl-1.6.3.tar.gz 176823 BLAKE2B 58d36c6d18ef661cb08074153081f541fc98968107d71e7b501297f45f38de092804bba2ae89ddcf0da79b5d4fca62292a4c460bc9dff9d723d3958bc64ff84b SHA512 4c76b94198b8e334f4b4e71d92b0fe23f752d35e0c29bc68df99648b3f48fbb6e3dd8d7339138544e5dc8fbf64c15cb61678052670ac47edc5be958df819d42e
DIST yarl-1.7.0.tar.gz 168325 BLAKE2B 25d708935c8b97142ee729827bb70955458d8ea8212d2a6e59dfe899f2cff41a8cfd93581f8e0f80a3ce194707068ad968f1ae8ee0434e11ac8f7909abda246f SHA512 581b786710c334a8f3d2259678f2bb22c40a0c2b125a786c81a9dc9e4e637e3eb80f11194835f58ada17b346b840ae1a539beba37a52e59b648340cc93f65d5c
+DIST yarl-1.7.2.tar.gz 168562 BLAKE2B 7da82193e9fa0d317bd4ba46d63ce04a36c95fc3a389d6800d12e0ddecaacb41c07a665db9e731a9112d98a0f3133861b174dc62523da202d0d06f4cb995c354 SHA512 ac5b630dd592ffa8b095e4d7eee2facaeac8ab578e55fd8856c6a6349f514081020c707cd0b33f250c0e78133e92ed6156835660f14c5ae54d60b4fdf6ea50ea
diff --git a/dev-python/yarl/yarl-1.7.2.ebuild b/dev-python/yarl/yarl-1.7.2.ebuild
new file mode 100644
index 000000000000..c30d1180c9bf
--- /dev/null
+++ b/dev-python/yarl/yarl-1.7.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Yet another URL library"
+HOMEPAGE="https://github.com/aio-libs/yarl/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ >=dev-python/multidict-4.0[${PYTHON_USEDEP}]
+ >=dev-python/idna-2.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-3.7.4[${PYTHON_USEDEP}]
+ ' pypy3)
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/alabaster
+
+python_test() {
+ cd tests || die
+ epytest --override-ini=addopts=
+}
diff --git a/dev-ruby/Manifest.gz b/dev-ruby/Manifest.gz
index 373a95640345..46c82f498cc2 100644
Binary files a/dev-ruby/Manifest.gz and b/dev-ruby/Manifest.gz differ
diff --git a/dev-ruby/cri/Manifest b/dev-ruby/cri/Manifest
index 28a2ce4e67f9..d8c72654d0d7 100644
--- a/dev-ruby/cri/Manifest
+++ b/dev-ruby/cri/Manifest
@@ -1,2 +1 @@
-DIST cri-2.15.10.gem 35328 BLAKE2B fe5618f86300381232f071e552020da6186e1908ded3703e645fc6067080a215cfff8d4f468f522ff801d6608cc7560379db2b18eaefb5509ed0db1eacb9342d SHA512 577ee6ba07f08d46e67420fb2e579647857207a2d88f1782545b28e6f26cd6b93d554c904e00af38d7f87eb0fd476c66552ec6b1469fa268faad1ff5d1ab8f15
DIST cri-2.15.11.gem 35328 BLAKE2B 774ebbd74ccd8f328d15a65515ed6c350d6bd00c9b757912c37a01aa71b745a3443755b8b59e7a8e6ac07c67f21d69dc4f96f972850e011d7b72d639c471d636 SHA512 a16d35a5e83401dda4e50bbb8a52b8a192e2876a708c516445559599f1e7c007d2f943efc662f43226bfd177356272dc7802fc01c8fdca543d4146bc537cae82
diff --git a/dev-ruby/cri/cri-2.15.10.ebuild b/dev-ruby/cri/cri-2.15.11-r1.ebuild
similarity index 89%
rename from dev-ruby/cri/cri-2.15.10.ebuild
rename to dev-ruby/cri/cri-2.15.11-r1.ebuild
index 8790711293b1..b1a8c99b4b68 100644
--- a/dev-ruby/cri/cri-2.15.10.ebuild
+++ b/dev-ruby/cri/cri-2.15.11-r1.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-USE_RUBY="ruby25 ruby26 ruby27"
+EAPI=8
+USE_RUBY="ruby26 ruby27 ruby30"
RUBY_FAKEGEM_EXTRADOC="NEWS.md README.md"
diff --git a/dev-ruby/idn-ruby/Manifest b/dev-ruby/idn-ruby/Manifest
index 0721b833b65c..3229b79997da 100644
--- a/dev-ruby/idn-ruby/Manifest
+++ b/dev-ruby/idn-ruby/Manifest
@@ -1 +1,2 @@
DIST idn-ruby-0.1.2.gem 18432 BLAKE2B 9bd1a280c76195a84bc996cfb68550c759a466fca4f5c88167c1e395652088b746831f3cd92a197af25d649ec18ce19ddf78402714432976c612ae38c6c64289 SHA512 404025918ca8fb49580d726b9972dbbde987bebc7fa1e42b0e7f091cd8fba38871258c18c933e49a6ee3c11a21cdd388342beb72c6ce46d8c034156eb9064ac5
+DIST idn-ruby-0.1.4.gem 18432 BLAKE2B 7c530e0d24ce515337a1810fbbc33c7598d91c9b82ed19de196aedd47a71edb50c3d6481e62d11e893418b579c58d167a24e1cdd5d9eaa99757b48a88f1943aa SHA512 b06ed738a488493aa843acd1122e40e039ebaeeb5873fc9f935edc5ee52a1f86eb0b2cb5460d211bee9d42d05491b0ee6e4a707b0840a07bc3f3174648435124
diff --git a/dev-ruby/idn-ruby/idn-ruby-0.1.4.ebuild b/dev-ruby/idn-ruby/idn-ruby-0.1.4.ebuild
new file mode 100644
index 000000000000..ffafe14cab84
--- /dev/null
+++ b/dev-ruby/idn-ruby/idn-ruby-0.1.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby26 ruby27 ruby30"
+
+RUBY_FAKEGEM_EXTRADOC="CHANGES README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/extconf.rb)
+
+inherit ruby-fakegem
+
+DESCRIPTION="LibIDN Ruby Bindings"
+HOMEPAGE="https://github.com/deepfryed/idn-ruby"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND+=" net-dns/libidn:0"
+DEPEND+=" net-dns/libidn:0"
+
+all_ruby_prepare() {
+ # Avoid UTF-8 tests since we cannot guarantee a UTF-8 environment
+ rm -f test/tc_Stringprep.rb || die
+}
+
+each_ruby_prepare() {
+ mkdir lib || die
+}
+
+each_ruby_test() {
+ ${RUBY} -Ilib:test:. -e 'Dir["test/*.rb"].each{|f| require f}' || die
+}
diff --git a/dev-ruby/net-telnet/net-telnet-0.2.0-r1.ebuild b/dev-ruby/net-telnet/net-telnet-0.2.0-r1.ebuild
new file mode 100644
index 000000000000..24bfd3876fc3
--- /dev/null
+++ b/dev-ruby/net-telnet/net-telnet-0.2.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby26 ruby27 ruby30"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_GEMSPEC="net-telnet.gemspec"
+
+# Don't install the binaries since they don't seem to be intended for
+# general use and they have very generic names leading to collisions,
+# e.g. bug 571186
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides telnet client functionality"
+HOMEPAGE="https://github.com/ruby/net-telnet"
+SRC_URI="https://github.com/ruby/net-telnet/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( Ruby-BSD BSD-2 )"
+SLOT="1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="test"
+
+ruby_add_bdepend "test? ( dev-ruby/minitest )"
+
+all_ruby_prepare() {
+ sed -i -e 's/git ls-files -z/find * -print0/' ${RUBY_FAKEGEM_GEMSPEC} || die
+
+ sed -i -e '/bundler/ s:^:#:' Rakefile || die
+}
diff --git a/dev-ruby/sassc/sassc-2.4.0.ebuild b/dev-ruby/sassc/sassc-2.4.0.ebuild
index 0ab3fe4130e3..b105bc7e71b1 100644
--- a/dev-ruby/sassc/sassc-2.4.0.ebuild
+++ b/dev-ruby/sassc/sassc-2.4.0.ebuild
@@ -15,7 +15,7 @@ DESCRIPTION="Use libsass with Ruby"
HOMEPAGE="https://github.com/sass/sassc-ruby"
LICENSE="MIT"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
SLOT="2"
IUSE=""
diff --git a/dev-ruby/serialport/serialport-1.3.2.ebuild b/dev-ruby/serialport/serialport-1.3.2.ebuild
index 324f14a6f47c..994ac57e0394 100644
--- a/dev-ruby/serialport/serialport-1.3.2.ebuild
+++ b/dev-ruby/serialport/serialport-1.3.2.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="https://github.com/hparra/ruby-serialport/"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~ppc x86"
+KEYWORDS="amd64 ~ppc x86"
IUSE=""
all_ruby_prepare() {
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz
index 749c024d7dd7..89537c8e0efd 100644
Binary files a/dev-util/Manifest.gz and b/dev-util/Manifest.gz differ
diff --git a/dev-util/ccache/ccache-4.4.2.ebuild b/dev-util/ccache/ccache-4.4.2.ebuild
index 71ac812ee6f5..e3d01ec3fcc6 100644
--- a/dev-util/ccache/ccache-4.4.2.ebuild
+++ b/dev-util/ccache/ccache-4.4.2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/ccache/ccache/releases/download/v${PV}/ccache-${PV}.
LICENSE="GPL-3 LGPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
# Enable 'static-c++' by default to make 'gcc' ebuild Just Work: bug #761220
IUSE="doc redis +static-c++ test"
RESTRICT="!test? ( test )"
diff --git a/dev-util/codeblocks/codeblocks-20.03-r4.ebuild b/dev-util/codeblocks/codeblocks-20.03-r4.ebuild
new file mode 100644
index 000000000000..2a412fb830c1
--- /dev/null
+++ b/dev-util/codeblocks/codeblocks-20.03-r4.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+WX_GTK_VER="3.0-gtk3"
+
+inherit autotools wxwidgets xdg
+
+DESCRIPTION="The open source, cross platform, free C, C++ and Fortran IDE"
+HOMEPAGE="https://codeblocks.org/"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz
+https://dev.gentoo.org/~leio/distfiles/${P}-fortran.tar.xz
+https://dev.gentoo.org/~leio/distfiles/${P}-fortran-update-v1.7.tar.xz
+https://dev.gentoo.org/~leio/distfiles/${P}-fortran-update-v1.8.tar.xz
+https://dev.gentoo.org/~leio/distfiles/${P}-codecompletion-symbolbrowser-update.tar.xz
+"
+
+# USE="fortran" enables FortranProject plugin (updated to v1.8 2021-05-29 [r230])
+# that is delivered with Code::Blocks 20.03 source code.
+# https://sourceforge.net/projects/fortranproject
+# https://cbfortran.sourceforge.io
+
+IUSE="contrib debug fortran pch"
+
+BDEPEND="virtual/pkgconfig"
+
+RDEPEND="app-arch/zip
+ >=dev-libs/tinyxml-2.6.2-r3
+ >=dev-util/astyle-3.1-r2:0/3.1
+ x11-libs/wxGTK:${WX_GTK_VER}[X]
+ contrib? (
+ app-admin/gamin
+ app-text/hunspell
+ dev-libs/boost:=
+ )"
+
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-env.patch
+ "${WORKDIR}"/patches/
+ )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ setup-wxwidgets
+
+ # USE="contrib -fortran" setup:
+ use fortran || CONF_WITH_LST=$(use_with contrib contrib-plugins all,-FortranProject)
+ # USE="contrib fortran" setup:
+ use fortran && CONF_WITH_LST=$(use_with contrib contrib-plugins all)
+ # USE="-contrib fortran" setup:
+ use contrib || CONF_WITH_LST=$(use_with fortran contrib-plugins FortranProject)
+
+ econf \
+ --disable-static \
+ $(use_with contrib boost-libdir "${ESYSROOT}/usr/$(get_libdir)") \
+ $(use_enable debug) \
+ $(use_enable pch) \
+ ${CONF_WITH_LST}
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+}
diff --git a/dev-util/ninja/ninja-1.10.2-r1.ebuild b/dev-util/ninja/ninja-1.10.2-r1.ebuild
index a02aa7f2f18f..2fd15adf8f96 100644
--- a/dev-util/ninja/ninja-1.10.2-r1.ebuild
+++ b/dev-util/ninja/ninja-1.10.2-r1.ebuild
@@ -12,7 +12,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/ninja-build/ninja.git"
else
SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="A small build system similar to make"
diff --git a/dev-util/shadowman/Manifest b/dev-util/shadowman/Manifest
index cf6794e59ddb..b5db0d8a3405 100644
--- a/dev-util/shadowman/Manifest
+++ b/dev-util/shadowman/Manifest
@@ -1 +1,2 @@
DIST shadowman-2.tar.gz 3349 BLAKE2B 2881c0487205c00114967be7600ef5483cc64c7ad5ed5cac60fe8bf2ca17e5b06d5df6e39148d90ff68a51d3e918ca616d0c5eedf11366df90c788a07e4c63b0 SHA512 eeb10248c7f76116352bffa671ab7c761b2f79cb943de20dba327b0d7bf1126d15021508c9e9389b9f0c37cf5049ad2c67bad93f6a03340fcfd27e03c4969110
+DIST shadowman-3.tar.gz 3256 BLAKE2B b4e1ac2ee8576feac3d33fafa9540ad150a635d8a3f3d186265039fa62612176a67a7bb6e39d86dafc7d96dc40ed34db66a819af01dc8590288181f17725547b SHA512 2061bb03a23bc8981dd137afa52e0a78535032326ce07ce43f2c51cc115673a4a626e9cf431497fac1d9983cef2a4fd4defe1340ed46140adce0fe7ceabe6448
diff --git a/dev-util/shadowman/shadowman-9999.ebuild b/dev-util/shadowman/shadowman-3.ebuild
similarity index 58%
rename from dev-util/shadowman/shadowman-9999.ebuild
rename to dev-util/shadowman/shadowman-3.ebuild
index 816a0bfd21f7..f7b929689cf0 100644
--- a/dev-util/shadowman/shadowman-9999.ebuild
+++ b/dev-util/shadowman/shadowman-3.ebuild
@@ -1,18 +1,15 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
-
-EGIT_REPO_URI="https://github.com/mgorny/shadowman"
-inherit git-r3
+EAPI=8
DESCRIPTION="Unified compiler shadow link directory updater"
HOMEPAGE="https://github.com/mgorny/shadowman"
-SRC_URI=""
+SRC_URI="https://github.com/mgorny/shadowman/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS=""
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE=""
RDEPEND="app-admin/eselect"
@@ -20,7 +17,7 @@ DEPEND="${RDEPEND}"
src_install() {
# tool modules are split into their respective packages
- emake DESTDIR="${D}" install \
+ emake DESTDIR="${D}" prefix="${EPREFIX}"/usr install \
INSTALL_MODULES_TOOL=""
keepdir /usr/share/shadowman/tools
}
diff --git a/games-action/Manifest.gz b/games-action/Manifest.gz
index d71b21424eb5..15f27e210064 100644
Binary files a/games-action/Manifest.gz and b/games-action/Manifest.gz differ
diff --git a/games-action/supertuxkart/files/supertuxkart-1.1-fix-buildsystem.patch b/games-action/supertuxkart/files/supertuxkart-1.1-fix-buildsystem.patch
deleted file mode 100644
index 394a1963199d..000000000000
--- a/games-action/supertuxkart/files/supertuxkart-1.1-fix-buildsystem.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/lib/irrlicht/CMakeLists.txt b/lib/irrlicht/CMakeLists.txt
-index 92a881c81..1371fdf11 100644
---- a/lib/irrlicht/CMakeLists.txt
-+++ b/lib/irrlicht/CMakeLists.txt
-@@ -94,15 +94,6 @@
- if(WIN32)
- add_definitions(-D_IRR_STATIC_LIB_)
- add_definitions(-D_CRT_SECURE_NO_WARNINGS) # Shut up about unsafe stuff
--else()
-- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fstrict-aliasing")
-- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -pipe -O3 -fstrict-aliasing")
-- if(CMAKE_COMPILER_IS_GNUCC)
-- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fexpensive-optimizations")
-- endif()
-- if(CMAKE_COMPILER_IS_GNUCXX)
-- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexpensive-optimizations")
-- endif()
- endif()
-
- if(USE_GLES2)
diff --git a/games-roguelike/Manifest.gz b/games-roguelike/Manifest.gz
index 02e778d9ea3f..c36ec2161174 100644
Binary files a/games-roguelike/Manifest.gz and b/games-roguelike/Manifest.gz differ
diff --git a/games-roguelike/angband/Manifest b/games-roguelike/angband/Manifest
index 0b221405b678..d751ffb605b4 100644
--- a/games-roguelike/angband/Manifest
+++ b/games-roguelike/angband/Manifest
@@ -1,2 +1,4 @@
DIST angband-4.2.2-man.tar.gz 105892 BLAKE2B 226210bd45f463e2b6bc099f889393832b5ce9bf5f95b5de1bc38fbcef61287515435ceef83a717bd62220fe01d5acf33e3fe240c08e3cf7d04e9d59fee132f1 SHA512 f373ea55c5f2349c615c47207c1dbbcc6a77246fbb0615d00a1fcb2a2a0cdf839bb5d57c2e29a2f2698f2d6b72698fbaec6bb221994566be04046ce03ea6253a
DIST angband-4.2.2.tar.gz 24992436 BLAKE2B 6beab7d0481167538714f540e9825e930d57457c923b77e2a9be71e8a6e382b70f375e85e68f0ebf9a65b61b835d62df0a5958a21198d9049088cdbe32c81efc SHA512 07a9b6a10a47afafde8f5db1e463c70198d386e07737666e044de291eab4b425d76bc8124153b7c371248f0c9aedc01578a90e513d744e3f30d26ab22c940698
+DIST angband-4.2.3-man-r1.tar.gz 112117 BLAKE2B 2d90660cf0784435c4a8fbb04505e5ed47f79ebfcb0215e779b2d8b54ae5b556f820919c27f1d410d92b94476772e23a3a7fe15aaf6c2e56d5c9ceb723359bba SHA512 d85c0b2f0808ba8ee1f979bd9b51ffe2aaff4332471533f93478bf3853aa92eb326b57f195fa2f47d2163486c5005cf4e0865bca2bc3a75fc6005eb93e5d2dec
+DIST angband-4.2.3.tar.gz 25175745 BLAKE2B ee9878bb93fd268c5fdd8535750d6446ebf8e30a4bc794170b60cf6a77fc0470f91261f4963dda8865c95ead1b522210c8536da36866adeb084689fcf2bc7e5c SHA512 f80a16c40d877c50194be370795acb437778ca88a658a8c95bef637625ab8a88ceb98f45d742e698709b6c81e8b5de6f563f88e957cd71eca208673bb4179e88
diff --git a/games-roguelike/angband/angband-4.2.3-r1.ebuild b/games-roguelike/angband/angband-4.2.3-r1.ebuild
new file mode 100644
index 000000000000..a281466f56af
--- /dev/null
+++ b/games-roguelike/angband/angband-4.2.3-r1.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools desktop xdg-utils
+
+DESCRIPTION="A roguelike dungeon exploration game based on the books of J.R.R. Tolkien"
+HOMEPAGE="https://rephial.org/"
+SRC_URI="https://github.com/angband/angband/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~steils/distfiles/${P}-man-r1.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="+ncurses sdl sound +X"
+
+REQUIRED_USE="sound? ( sdl )
+ || ( X ncurses )"
+
+RDEPEND="X? (
+ media-fonts/font-misc-misc
+ x11-libs/libX11
+ )
+ ncurses? ( sys-libs/ncurses:=[unicode(+)] )
+ sdl? (
+ media-libs/libsdl2[video,X]
+ media-libs/sdl2-image[png]
+ media-libs/sdl2-ttf
+ sound? (
+ media-libs/libsdl2[sound]
+ media-libs/sdl2-mixer[mp3]
+ )
+ )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+
+ sed -i -e '/libpath/s#datarootdir#datadir#' configure.ac || die
+ sed -i -e "/^.SILENT/d" mk/buildsys.mk.in || die
+
+ if use !sound ; then
+ sed -i -e 's/sounds//' lib/Makefile || die
+ fi
+
+ # Game constant files are now system config files in Angband, but
+ # users will be hidden from applying updates by default
+ {
+ echo "CONFIG_PROTECT_MASK=\"/etc/${PN}/customize/\""
+ echo "CONFIG_PROTECT_MASK=\"/etc/${PN}/gamedata/\""
+ } > "${T}"/99${PN} || die
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf=(
+ --bindir="${EPREFIX}"/usr/bin
+ --with-private-dirs
+ $(use_enable X x11)
+ $(use_enable ncurses curses)
+ )
+ if use sdl; then
+ myconf+=(
+ --enable-sdl2
+ $(use_enable sound sdl2-mixer)
+ )
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+
+ dodoc changes.txt README.md
+ doman "${WORKDIR}"/${PN}.1
+ doenvd "${T}"/99${PN}
+
+ if use X || use sdl; then
+ use X && make_desktop_entry "angband -mx11" "Angband (X11)" "${PN}"
+ use sdl && make_desktop_entry "angband -msdl2" "Angband (SDL2)" "${PN}"
+
+ local s
+ for s in 16 32 128 256 512; do
+ newicon -s ${s} lib/icons/att-${s}.png "${PN}.png"
+ done
+ newicon -s scalable lib/icons/att.svg "${PN}.svg"
+ fi
+}
+
+pkg_postinst() {
+ if use X || use sdl; then
+ xdg_icon_cache_update
+ fi
+}
+
+pkg_postrm() {
+ if use X || use sdl; then
+ xdg_icon_cache_update
+ fi
+}
diff --git a/kde-plasma/Manifest.gz b/kde-plasma/Manifest.gz
index 8206b174fb24..c21397dee90a 100644
Binary files a/kde-plasma/Manifest.gz and b/kde-plasma/Manifest.gz differ
diff --git a/kde-plasma/plasma-desktop/Manifest b/kde-plasma/plasma-desktop/Manifest
index 5ad21f4ef442..1e47159a4bfb 100644
--- a/kde-plasma/plasma-desktop/Manifest
+++ b/kde-plasma/plasma-desktop/Manifest
@@ -1,4 +1,3 @@
DIST plasma-desktop-5.22.5.tar.xz 15747008 BLAKE2B ea20e4cbad43e0005ef621bf08fb978b5ce566579e9ba947a4750fb35468b642f57a92bde6f2264b0374a890adb948313e40072b230e20478c5393c90931d566 SHA512 9f39e3709e6e774b8846cb14f8e8aec776ba28c2601c9ee8d7b243240961f2a67cd649eb8005324a4ef0c10ed152ca1a1fc5b2a75c78f551aa20b53106b649ac
DIST plasma-desktop-5.23.2.1.tar.xz 15787420 BLAKE2B ca4e55cde0f27f44fb55ecb473c30d4667a9512163d2be61d82bc15fb97aa6aef5459590c2e80e6b6218d1b85e5326a0cb2e5aa5507ea1cfe4eee30561477cf9 SHA512 610b5693e1a56f05c4421c496909960e679035521822c94a180d8ed8656f7995fd9dba5adb92cb18c7c1b4d0c9760b7df5d64fe67e6603538b7ea8a7276ea07d
-DIST plasma-desktop-5.23.2.tar.xz 15783620 BLAKE2B 5d8445c97eb429186866e44f5737b84037e58a91fc81021b1753c12fb1566f3e0047b1074cd1e0e72b677d3610c65cfca36b80991e2b27834e35845f65112030 SHA512 510c6d98b227c40f004388d18b863aaeed2063f9ca9a9c63bcc4eed7ea665c05e23e82092af86953195e9463bdea77e1121f39a8f0b8a6cf05299a12c477da65
DIST plasma-desktop-override-include-dirs-1.tar.xz 7888 BLAKE2B f1e416fa0ed27cfe6e049cafc66d1603bb4f76f0cec16dc47339a238cbb485b202adf08ececbb8933a5e1a54954cbd21653d2c9dfec27baa49fdf583acf0d75f SHA512 aa26b4966a5d00c378128ee8ee56025d637f139fcd315bf0aabefa080caecadf8cd3176dee3df87d4f8bdc48446df535260cf64a65055857fb895fa8988e1a20
diff --git a/kde-plasma/plasma-desktop/plasma-desktop-5.23.2.ebuild b/kde-plasma/plasma-desktop/plasma-desktop-5.23.2.ebuild
deleted file mode 100644
index 1de5918b5983..000000000000
--- a/kde-plasma/plasma-desktop/plasma-desktop-5.23.2.ebuild
+++ /dev/null
@@ -1,186 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_HANDBOOK="forceoptional"
-ECM_TEST="true"
-KFMIN=5.86.0
-PVCUT=$(ver_cut 1-3)
-QTMIN=5.15.2
-VIRTUALX_REQUIRED="test"
-inherit ecm kde.org optfeature
-
-DESCRIPTION="KDE Plasma desktop"
-XORGHDRS="${PN}-override-include-dirs-1"
-SRC_URI+=" https://dev.gentoo.org/~asturm/distfiles/${XORGHDRS}.tar.xz"
-
-LICENSE="GPL-2" # TODO: CHECK
-SLOT="5"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
-IUSE="emoji ibus +kaccounts +policykit scim +semantic-desktop telemetry"
-
-COMMON_DEPEND="
- >=dev-qt/qtconcurrent-${QTMIN}:5
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtnetwork-${QTMIN}:5
- >=dev-qt/qtprintsupport-${QTMIN}:5
- >=dev-qt/qtsql-${QTMIN}:5
- >=dev-qt/qtsvg-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- >=dev-qt/qtx11extras-${QTMIN}:5
- >=dev-qt/qtxml-${QTMIN}:5
- >=kde-frameworks/attica-${KFMIN}:5
- >=kde-frameworks/kactivities-${KFMIN}:5
- >=kde-frameworks/kactivities-stats-${KFMIN}:5
- >=kde-frameworks/karchive-${KFMIN}:5
- >=kde-frameworks/kauth-${KFMIN}:5
- >=kde-frameworks/kbookmarks-${KFMIN}:5
- >=kde-frameworks/kcmutils-${KFMIN}:5
- >=kde-frameworks/kcodecs-${KFMIN}:5
- >=kde-frameworks/kcompletion-${KFMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/kconfigwidgets-${KFMIN}:5
- >=kde-frameworks/kcoreaddons-${KFMIN}:5
- >=kde-frameworks/kcrash-${KFMIN}:5
- >=kde-frameworks/kdbusaddons-${KFMIN}:5
- >=kde-frameworks/kdeclarative-${KFMIN}:5
- >=kde-frameworks/kded-${KFMIN}:5
- >=kde-frameworks/kdelibs4support-${KFMIN}:5
- >=kde-frameworks/kglobalaccel-${KFMIN}:5
- >=kde-frameworks/kguiaddons-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kiconthemes-${KFMIN}:5
- >=kde-frameworks/kio-${KFMIN}:5
- >=kde-frameworks/kitemmodels-${KFMIN}:5
- >=kde-frameworks/kitemviews-${KFMIN}:5
- >=kde-frameworks/kjobwidgets-${KFMIN}:5
- >=kde-frameworks/knewstuff-${KFMIN}:5
- >=kde-frameworks/knotifications-${KFMIN}:5
- >=kde-frameworks/knotifyconfig-${KFMIN}:5
- >=kde-frameworks/kparts-${KFMIN}:5
- >=kde-frameworks/krunner-${KFMIN}:5
- >=kde-frameworks/kservice-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kwindowsystem-${KFMIN}:5
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- >=kde-frameworks/plasma-${KFMIN}:5
- >=kde-frameworks/solid-${KFMIN}:5
- >=kde-frameworks/sonnet-${KFMIN}:5
- >=kde-plasma/kwin-${PVCUT}:5
- >=kde-plasma/libksysguard-${PVCUT}:5
- >=kde-plasma/libkworkspace-${PVCUT}:5
- >=kde-plasma/plasma-workspace-${PVCUT}:5
- >=media-libs/phonon-4.11.0
- virtual/libcrypt:=
- x11-libs/libX11
- x11-libs/libXfixes
- x11-libs/libXi
- x11-libs/libxcb[xkb]
- x11-libs/libxkbfile
- emoji? (
- app-i18n/ibus[emoji]
- dev-libs/glib:2
- media-fonts/noto-emoji
- )
- ibus? (
- app-i18n/ibus
- dev-libs/glib:2
- >=dev-qt/qtx11extras-${QTMIN}:5
- x11-libs/libxcb
- x11-libs/xcb-util-keysyms
- )
- kaccounts? (
- kde-apps/kaccounts-integration:5
- net-libs/accounts-qt
- )
- policykit? ( >=kde-frameworks/kwallet-${KFMIN}:5 )
- scim? ( app-i18n/scim )
- semantic-desktop? ( >=kde-frameworks/baloo-${KFMIN}:5 )
- telemetry? ( dev-libs/kuserfeedback:5 )
-"
-DEPEND="${COMMON_DEPEND}
- dev-libs/boost
- x11-base/xorg-proto
-"
-RDEPEND="${COMMON_DEPEND}
- !kde-plasma/user-manager
- >=dev-qt/qtgraphicaleffects-${QTMIN}:5
- >=dev-qt/qtquickcontrols2-${QTMIN}:5
- >=kde-frameworks/kirigami-${KFMIN}:5
- >=kde-frameworks/qqc2-desktop-style-${KFMIN}:5
- >=kde-plasma/kde-cli-tools-${PVCUT}:5
- >=kde-plasma/oxygen-${PVCUT}:5
- sys-apps/util-linux
- x11-apps/setxkbmap
- x11-misc/xdg-user-dirs
- kaccounts? ( net-libs/signon-oauth2 )
- policykit? ( sys-apps/accountsservice )
-"
-BDEPEND="virtual/pkgconfig"
-
-PATCHES=(
- "${WORKDIR}/${XORGHDRS}/override-include-dirs.patch" # downstream patch
-)
-
-src_prepare() {
- ecm_src_prepare
-
- if ! use policykit; then
- ecm_punt_bogus_dep KF5 Wallet
- cmake_run_in kcms cmake_comment_add_subdirectory users
- fi
-
- if ! use ibus; then
- sed -e "s/Qt5X11Extras_FOUND AND XCB_XCB_FOUND AND XCB_KEYSYMS_FOUND/false/" \
- -i applets/kimpanel/backend/ibus/CMakeLists.txt || die
- fi
-
- use emoji || cmake_run_in applets/kimpanel/backend/ibus \
- cmake_comment_add_subdirectory emojier
-
- # TODO: try to get a build switch upstreamed
- if ! use scim; then
- sed -e "s/^pkg_check_modules.*SCIM/#&/" -i CMakeLists.txt || die
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_DISABLE_FIND_PACKAGE_PackageKitQt5=ON # not packaged
- -DEVDEV_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
- -DXORGLIBINPUT_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
- -DXORGSERVER_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
- -DSYNAPTICS_INCLUDE_DIRS="${WORKDIR}/${XORGHDRS}"/include
- $(cmake_use_find_package kaccounts AccountsQt5)
- $(cmake_use_find_package kaccounts KAccounts)
- $(cmake_use_find_package semantic-desktop KF5Baloo)
- $(cmake_use_find_package telemetry KUserFeedback)
- )
- if ! use emoji && ! use ibus; then
- mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_GLIB2=ON )
- fi
-
- ecm_src_configure
-}
-
-src_test() {
- # parallel tests fail, foldermodeltest,positionertest hang, bug #646890
- # test_kio_fonts needs D-Bus, bug #634166
- # lookandfeel-kcmTest is unreliable for a long time, bug #607918
- local myctestargs=(
- -j1
- -E "(foldermodeltest|positionertest|test_kio_fonts|lookandfeel-kcmTest)"
- )
-
- ecm_src_test
-}
-
-pkg_postinst() {
- if [[ -z "${REPLACING_VERSIONS}" ]]; then
- optfeature "screen reader support" app-accessibility/orca
- fi
- ecm_pkg_postinst
-}
diff --git a/media-gfx/Manifest.gz b/media-gfx/Manifest.gz
index 388ec48b0a4a..9dbaccb54caa 100644
Binary files a/media-gfx/Manifest.gz and b/media-gfx/Manifest.gz differ
diff --git a/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch b/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch
new file mode 100644
index 000000000000..81a8f22d8937
--- /dev/null
+++ b/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch
@@ -0,0 +1,31 @@
+From: Bernd Waibel
+Date: Sat, 16 Oct 2021 17:02:19 +0200
+Subject: [PATCH] Add memory header for std::shared_ptr
+
+Signed-off-by: Bernd Waibel
+---
+ src/App/Metadata.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/App/Metadata.h b/src/App/Metadata.h
+index de8be3ea8e..2c5fd8f417 100644
+--- a/src/App/Metadata.h
++++ b/src/App/Metadata.h
+@@ -30,6 +30,7 @@
+ #include
+ #include
+ #include