diff --git a/Manifest.files.gz b/Manifest.files.gz
index b1e81b4b407a..bb5d595ca1d8 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 5eaa8eb40aa1..69c6c842adc5 100644
Binary files a/app-admin/Manifest.gz and b/app-admin/Manifest.gz differ
diff --git a/app-admin/checksec/Manifest b/app-admin/checksec/Manifest
index 047e3899aeef..2dfcc75509d2 100644
--- a/app-admin/checksec/Manifest
+++ b/app-admin/checksec/Manifest
@@ -4,3 +4,5 @@ DIST checksec-1.8.0.tar.gz 52391 BLAKE2B 3720e4faae5aa82172c673ce7ddc662db1433b8
DIST checksec-1.9.0.tar.gz 196168 BLAKE2B f9095a516f166e9a407c9796e28ed7da4ffd97686923745e46b0ab4110f084690781995b6cc190234b8a26fe1e6eb2c8f32f7f15191f0dbc26b38048c87e9a2d SHA512 8bf68dd0b86a6eceb6f5eb016a15ed1bf7d086777c3ec1c62848ec23e62dceed4579404d76824f17b8e1305e679ba6204f0dc4c224f7a11067651f33c2d96515
DIST checksec-2.0.1.tar.gz 199903 BLAKE2B 726d3f868cc73649f7a3cd42270ab1c6965d6bed772f3c612064c54dad569e748f5a2d24df2b8663328442ba8126fe0edac04b0034ba6a23bf6e32ca93a78e30 SHA512 b2466b621b6ddb3fa01cfc5eb3dc301d6d616b26ddd2017a622ba2a24e9daf8f5e294236d1dda695fd9ab25fa411724b5f7dbdabc944cdc124e4369c176f35b4
DIST checksec-2.1.0.tar.gz 200384 BLAKE2B 6e954f574c632da1aee629aecd7ded6286879ba6156252c3d4b5d11f52e3c457bb1d9223934c70f402aaa1e8a8f8d530b55c7f860c024c86c2c2bbcbe9216646 SHA512 66090777de15c492090da3494127037ffe20a169b426b054b3a8f642e9c980b2a99d5c8f8411715d74b1faed41023fb17770d3f07eec5b9efda0a43b64c07a74
+DIST checksec-2.2.0.tar.gz 2241197 BLAKE2B 33e76d1e74188f0944cbce2fcec3daab5a3bbef28802f36252a5bd8de33c96497cafbce0bbe91ce0bb2ccedf9aae1904224b5f68e31772723523179e76b69070 SHA512 a77e5f798ab651c509e0a75c6ca13e556ba354149acbd2e32d54f7a3318fef5f8a05bdb537374868836d5bf3c4d4e86e8354d6202dd1ba0e45a221e2d8688544
+DIST checksec-2.2.1.tar.gz 2241504 BLAKE2B 65d71e4ad589494d34ae0458f4b3e453f6bfb86ec0ce46b5c18b6e5c49e1820b9721b616da22bafe7614fca59473a736058584a488a84b85e9799dbf59f7b3e4 SHA512 7c6474479b51f70a627515a0d770f4d70df0350253547b3b8c1a5be83e2976b127172167ca9890d5e0848627c582adddde5acb2f7b30ff7d12d4a81370b43b0f
diff --git a/app-admin/checksec/checksec-2.2.0.ebuild b/app-admin/checksec/checksec-2.2.0.ebuild
new file mode 100644
index 000000000000..894f6578719b
--- /dev/null
+++ b/app-admin/checksec/checksec-2.2.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+MY_PN=${PN}.sh
+DESCRIPTION="Tool to check properties of executables (e.g. ASLR/PIE, RELRO, PaX, Canaries)"
+HOMEPAGE="https://github.com/slimm609/checksec.sh"
+SRC_URI="https://github.com/slimm609/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~ppc ~ppc64 ~x86"
+IUSE=""
+
+S="${WORKDIR}"/${MY_PN}-${PV}
+
+DOCS=( ChangeLog README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.7.2-path.patch
+)
+
+src_prepare() {
+ sed 's,^pkg_release=false,pkg_release=true,' -i ${PN} || die
+ default
+}
+
+src_install() {
+ default
+
+ doman extras/man/*
+
+ insinto /usr/share/zsh/site-functions
+ doins extras/zsh/_${PN}
+
+ dobin ${PN}
+}
diff --git a/app-admin/checksec/checksec-2.2.1.ebuild b/app-admin/checksec/checksec-2.2.1.ebuild
new file mode 100644
index 000000000000..894f6578719b
--- /dev/null
+++ b/app-admin/checksec/checksec-2.2.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+MY_PN=${PN}.sh
+DESCRIPTION="Tool to check properties of executables (e.g. ASLR/PIE, RELRO, PaX, Canaries)"
+HOMEPAGE="https://github.com/slimm609/checksec.sh"
+SRC_URI="https://github.com/slimm609/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~mips ~ppc ~ppc64 ~x86"
+IUSE=""
+
+S="${WORKDIR}"/${MY_PN}-${PV}
+
+DOCS=( ChangeLog README.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.7.2-path.patch
+)
+
+src_prepare() {
+ sed 's,^pkg_release=false,pkg_release=true,' -i ${PN} || die
+ default
+}
+
+src_install() {
+ default
+
+ doman extras/man/*
+
+ insinto /usr/share/zsh/site-functions
+ doins extras/zsh/_${PN}
+
+ dobin ${PN}
+}
diff --git a/app-crypt/Manifest.gz b/app-crypt/Manifest.gz
index c8c664f1f3ed..6f7cfe0ecf50 100644
Binary files a/app-crypt/Manifest.gz and b/app-crypt/Manifest.gz differ
diff --git a/app-crypt/gnupg/gnupg-2.2.20.ebuild b/app-crypt/gnupg/gnupg-2.2.20.ebuild
index 1f486666dc29..cd7106ae9204 100644
--- a/app-crypt/gnupg/gnupg-2.2.20.ebuild
+++ b/app-crypt/gnupg/gnupg-2.2.20.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl tofu tools usb user-socket wks-server"
# Existence of executables is checked during configuration.
diff --git a/app-crypt/mit-krb5/Manifest b/app-crypt/mit-krb5/Manifest
index 7563db813b97..b6666567e379 100644
--- a/app-crypt/mit-krb5/Manifest
+++ b/app-crypt/mit-krb5/Manifest
@@ -1,4 +1,5 @@
DIST krb5-1.17.1.tar.gz 8765399 BLAKE2B 46be864e2db9c70d164532d82776195bf57342ce4f1fd7dfcf3cf6bd72a3639a69954f742607a2b8950b4dea8acfac5d633aa379d669de20bafe54b407bab94b SHA512 e0c3dc0a6554ab3105ac32f3f01519f56064500213aa743816235d83250abc1db9a9ca38a2ba93a938d562b4af135a013017ce96346d6742bca0c812b842ceef
DIST krb5-1.17.tar.gz 8761763 BLAKE2B 76f636836c67e9eefca91c9417118efdcf4437c1220691f43f3d246daf3eabd53b40a30956f0e57703c3fde5d7193b1d86b68becf3ae1c0c803d2462e79d3014 SHA512 7462a578b936bd17f155a362dbb5d388e157a80a096549028be6c55400b11361c7f8a28e424fd5674801873651df4e694d536cae66728b7ae5e840e532358c52
DIST krb5-1.18.1.tar.gz 8711772 BLAKE2B 98ea02b686760d1e080e1b038601fedcb85ceb4c61dbbba717c300f54a784e8494ff0fc7c0139e95fffd6b1cbe2a65158c9a3af71ea76c1b86905642c29cd93a SHA512 c96c9ed676c8ccb9b65d17bb1d982c266228c75030a2d8fd5d7952ee8cdf362a22d202e93018d1011a5e7bd9a9fabe69aa1578d1d2e4839a78b9916d8b8019ce
+DIST krb5-1.18.2.tar.gz 8713927 BLAKE2B f0eb34e67adcb86f347c59ec6ef74970a57530cc56336a84909f852cd6135079ea89828e77c906a272f54e0faf6a4a0497f2b648446eb9d048d1c51e4ec513af SHA512 7cbb1b28e677fea3e0794e93951f3caaa2c49bb1175dd187951e72a466cc69d96c3b833d838000fe911c1a437d96a558e550f27c53a8b332fb9dfc7cbb7ec44c
DIST krb5-1.18.tar.gz 8706395 BLAKE2B d2b700c2f869733a7fc9ac735ec27e3973868efcf62c6b130fb5ff33aaaed0571816af519123e9077fc0bc240ee71a6179e87a4f724ae06dba8a70fd1d594b9a SHA512 36a01ea310b4b3d0a3d209b641739575239e1ca5e93b3de99cb1fec83e82f9a70ad0761dd6eb77cda5c18c53044ab80168b00725642a0c2dfde0e492c42af6a9
diff --git a/app-crypt/mit-krb5/mit-krb5-1.18.2.ebuild b/app-crypt/mit-krb5/mit-krb5-1.18.2.ebuild
new file mode 100644
index 000000000000..b47db6eeb0ce
--- /dev/null
+++ b/app-crypt/mit-krb5/mit-krb5-1.18.2.ebuild
@@ -0,0 +1,165 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8} )
+inherit autotools flag-o-matic multilib-minimal python-any-r1 systemd
+
+MY_P="${P/mit-}"
+P_DIR=$(ver_cut 1-2)
+DESCRIPTION="MIT Kerberos V"
+HOMEPAGE="https://web.mit.edu/kerberos/www/"
+SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
+
+LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="cpu_flags_x86_aes doc +keyutils libressl lmdb nls openldap +pkinit selinux +threads test xinetd"
+
+# Test suite requires network access
+RESTRICT="test"
+
+DEPEND="
+ !!app-crypt/heimdal
+ >=sys-libs/e2fsprogs-libs-1.42.9[${MULTILIB_USEDEP}]
+ || (
+ >=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
+ >=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
+ >=dev-libs/libverto-0.2.5[tevent,${MULTILIB_USEDEP}]
+ )
+ keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] )
+ lmdb? ( dev-db/lmdb )
+ nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
+ openldap? ( >=net-nds/openldap-2.4.38-r1[${MULTILIB_USEDEP}] )
+ pkinit? (
+ !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] )
+ libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
+ )
+ xinetd? ( sys-apps/xinetd )
+ "
+BDEPEND="
+ ${PYTHON_DEPS}
+ virtual/yacc
+ cpu_flags_x86_aes? (
+ amd64? ( dev-lang/yasm )
+ x86? ( dev-lang/yasm )
+ )
+ doc? ( virtual/latex-base )
+ test? (
+ ${PYTHON_DEPS}
+ dev-lang/tcl:0
+ dev-util/dejagnu
+ dev-util/cmocka
+ )"
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-kerberos )"
+
+S=${WORKDIR}/${MY_P}/src
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.12_warn_cflags.patch"
+ "${FILESDIR}/${PN}-config_LDFLAGS-r1.patch"
+ "${FILESDIR}/${PN}-1.16.3-libressl-r1.patch"
+ "${FILESDIR}/${PN}_dont_create_run.patch"
+ "${FILESDIR}/${PN}-1.18-libressl.patch"
+)
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/krb5-config
+)
+
+src_prepare() {
+ default
+ # Make sure we always use the system copies.
+ rm -rf util/{et,ss,verto}
+ sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # QA
+ append-flags -fno-strict-aliasing
+ append-flags -fno-strict-overflow
+
+ multilib-minimal_src_configure
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE=${S} \
+ WARN_CFLAGS="set" \
+ econf \
+ $(use_with openldap ldap) \
+ "$(multilib_native_use_with test tcl "${EPREFIX}/usr")" \
+ $(use_enable nls) \
+ $(use_enable pkinit) \
+ $(use_enable threads thread-support) \
+ $(use_with lmdb) \
+ $(use_with keyutils) \
+ --without-hesiod \
+ --enable-shared \
+ --with-system-et \
+ --with-system-ss \
+ --enable-dns-for-realm \
+ --enable-kdc-lookaside-cache \
+ --with-system-verto \
+ --disable-rpath
+}
+
+multilib_src_compile() {
+ emake -j1
+}
+
+multilib_src_test() {
+ multilib_is_native_abi && emake -j1 check
+}
+
+multilib_src_install() {
+ emake \
+ DESTDIR="${D}" \
+ EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
+ install
+}
+
+multilib_src_install_all() {
+ # default database dir
+ keepdir /var/lib/krb5kdc
+
+ cd ..
+ dodoc README
+
+ if use doc; then
+ dodoc -r doc/html
+ docinto pdf
+ dodoc doc/pdf/*.pdf
+ fi
+
+ newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind
+ newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc
+ newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd
+ newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind
+ newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc
+ newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd
+
+ systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service mit-krb5kadmind.service
+ systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service
+ systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service mit-krb5kpropd.service
+ systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service "mit-krb5kpropd@.service"
+ systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket mit-krb5kpropd.socket
+
+ insinto /etc
+ newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
+ insinto /var/lib/krb5kdc
+ newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
+
+ if use openldap ; then
+ insinto /etc/openldap/schema
+ doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
+ fi
+
+ if use xinetd ; then
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}/kpropd.xinetd" kpropd
+ fi
+}
diff --git a/app-crypt/pinentry/pinentry-1.1.0-r3.ebuild b/app-crypt/pinentry/pinentry-1.1.0-r3.ebuild
index a9139e052511..0ff90bda9f48 100644
--- a/app-crypt/pinentry/pinentry-1.1.0-r3.ebuild
+++ b/app-crypt/pinentry/pinentry-1.1.0-r3.ebuild
@@ -11,7 +11,7 @@ SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="caps emacs gnome-keyring fltk gtk ncurses qt5 static"
DEPEND="
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index 8816f50b0569..a4f8f853bd36 100644
Binary files a/app-emulation/Manifest.gz and b/app-emulation/Manifest.gz differ
diff --git a/app-emulation/qemu-guest-agent/Manifest b/app-emulation/qemu-guest-agent/Manifest
index 9730381ff014..51faa0caf06a 100644
--- a/app-emulation/qemu-guest-agent/Manifest
+++ b/app-emulation/qemu-guest-agent/Manifest
@@ -1,3 +1,4 @@
DIST qemu-3.1.0.tar.xz 36070104 BLAKE2B 9ed7d1b3256d84f2b73d61763e20f5e4bc5b47d56e4e0d56cf4c29cd25669457b0f08e90d7255589c9666400bb310df3dba3b9290232cad18057b20f08013a3b SHA512 7e8dae823937cfac2f0c60406bd3bdcb89df40313dab2a4bed327d5198f7fcc68ac8b31e44692caa09299cc71256ee0b8c17e4f49f78ada8043d424f5daf82fe
DIST qemu-4.0.0.tar.xz 55628624 BLAKE2B 8afd1f54aa13d2e61fd36c4f4544b7c4ffb1a7eee5c69d3aa1d40a432ca296ad8abe6cb83d7c66ac4045ca624d2a00e737f51e4e62ed46fef9766ef71f43b98b SHA512 952e94194ce9e64c15388c59035cb31fb9f761d30095c2fb9441012b609c18c9976285727b93bf37b95e15675802d73f8e1c4619ebecd23606675bb503646b13
DIST qemu-4.2.0.tar.xz 62222068 BLAKE2B 27c9fbcd5093af425764674817ab9299224bd03f37b5983786f6f437fff1fab3b7da247c55c4ca8b8c42726b9867005944a2f7f04f2d0d94d753961615f901ef SHA512 2a79973c2b07c53e8c57a808ea8add7b6b2cbca96488ed5d4b669ead8c9318907dec2b6109f180fc8ca8f04c0f73a56e82b3a527b5626b799d7e849f2474ec56
+DIST qemu-5.0.0.tar.xz 62426192 BLAKE2B 785d02ef79c95b5c4f0556186054885f9893d4e8a9f4b4f2d6199a4e1ae9c31d7c79dd900305469217f85d61bbe74134b601d5c6c1b0eee2b74792d010f1fd63 SHA512 21ef0cbe107c468a40f0fa2635db2a40048c8790b629dfffca5cd62bb1b502ea8eb133bfc40df5ecf1489e2bffe87f6829aee041cb8a380ff04a8afa23b39fcf
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-4.2.0-r1.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-4.2.0-r1.ebuild
index ec59e153ca27..46783392cf0b 100644
--- a/app-emulation/qemu-guest-agent/qemu-guest-agent-4.2.0-r1.ebuild
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-4.2.0-r1.ebuild
@@ -3,7 +3,7 @@
EAPI="7"
-PYTHON_COMPAT=( python3_6 )
+PYTHON_COMPAT=( python3_{6,7,8} )
inherit eutils systemd toolchain-funcs udev python-any-r1
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-5.0.0.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-5.0.0.ebuild
new file mode 100644
index 000000000000..513caae41cee
--- /dev/null
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-5.0.0.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit eutils systemd toolchain-funcs udev python-any-r1
+
+MY_PN="qemu"
+MY_P="${MY_PN}-${PV}"
+
+SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+DESCRIPTION="QEMU Guest Agent (qemu-ga) for use when running inside a VM"
+HOMEPAGE="https://wiki.qemu.org/Features/GuestAgent"
+
+LICENSE="GPL-2 BSD-2"
+SLOT="0"
+IUSE=""
+
+RDEPEND="dev-libs/glib"
+
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.2.0-sysmacros.patch #580924
+ "${FILESDIR}"/${PN}-4.2.0-fix-shutdown.patch #681874
+)
+
+src_configure() {
+ tc-export AR LD OBJCOPY RANLIB
+
+ local myconf=(
+ --prefix=/usr
+ --sysconfdir=/etc
+ --libdir="/usr/$(get_libdir)"
+ --localstatedir=/
+ --disable-bsd-user
+ --disable-linux-user
+ --disable-system
+ --disable-strip
+ --disable-tools
+ --disable-werror
+ --enable-guest-agent
+ --python="${PYTHON}"
+ --cc="$(tc-getCC)"
+ --cxx="$(tc-getCXX)"
+ --host-cc="$(tc-getBUILD_CC)"
+ )
+ echo "./configure ${myconf[*]}"
+ ./configure "${myconf[@]}" || die
+}
+
+src_compile() {
+ emake V=1 qemu-ga
+}
+
+src_install() {
+ dobin qemu-ga
+
+ # Normal init stuff
+ newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
+ newconfd "${FILESDIR}/qemu-ga.conf-r1" qemu-guest-agent
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/qemu-ga.logrotate" qemu-guest-agent
+
+ # systemd stuff
+ udev_newrules "${FILESDIR}/qemu-ga-systemd.udev" 99-qemu-guest-agent.rules
+
+ systemd_newunit "${FILESDIR}/qemu-ga-systemd.service" \
+ qemu-guest-agent.service
+}
+
+pkg_postinst() {
+ elog "You should add 'qemu-guest-agent' to the default runlevel."
+ elog "e.g. rc-update add qemu-guest-agent default"
+}
diff --git a/app-i18n/Manifest.gz b/app-i18n/Manifest.gz
index a855b4632a91..eac07c770679 100644
Binary files a/app-i18n/Manifest.gz and b/app-i18n/Manifest.gz differ
diff --git a/app-i18n/fbterm/fbterm-1.7_p20190503.ebuild b/app-i18n/fbterm/fbterm-1.7_p20190503.ebuild
index b8c3d875a618..c6271dc437cd 100644
--- a/app-i18n/fbterm/fbterm-1.7_p20190503.ebuild
+++ b/app-i18n/fbterm/fbterm-1.7_p20190503.ebuild
@@ -16,12 +16,13 @@ SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE="gpm video_cards_vesa"
+BDEPEND="virtual/pkgconfig"
DEPEND="media-libs/fontconfig
media-libs/freetype:2
>=sys-libs/ncurses-6.1
gpm? ( sys-libs/gpm )
video_cards_vesa? ( dev-libs/libx86 )"
-BDEPEND="virtual/pkgconfig"
+RDEPEND="${DEPEND}"
FILECAPS=(
cap_sys_tty_config+ep usr/bin/${PN}
diff --git a/app-i18n/ibus-typing-booster/Manifest b/app-i18n/ibus-typing-booster/Manifest
index b29624f5cd3e..49af86ca62ad 100644
--- a/app-i18n/ibus-typing-booster/Manifest
+++ b/app-i18n/ibus-typing-booster/Manifest
@@ -1,2 +1,2 @@
-DIST ibus-typing-booster-2.8.2.tar.gz 8161995 BLAKE2B 79c7bacb7c5a07139c710ddf063b58ed6bc15d1f58529dfaa0d8f1935cb513fe27ad5e95af0ca7383922f5642d1197cf74183ba2463a3fa81637add5d8376691 SHA512 3dffc21aae59ebc8c7b3ef3df588f958b4a42a2025dc6a82613e9bb1b324f8c999d01b8d98ed48794b3ea8fd5c3221df489a88f8c54c154a69be9908beda85b5
DIST ibus-typing-booster-2.8.3.tar.gz 8184044 BLAKE2B 06b7bc3c39f8c135d5e6d2c90ceaa2df8c38041cb4cc7d583cc335bb3bbdbf4915a6bcb0fff80bbaae797e8bda74bed26077ab4739a8f9584ecfaade833eefbb SHA512 18cee36b5f5c3d6da1cb455e785317c0e2b9826e49e3b2655f4f7a3fce4bdd279ff24614083559996031876702879530799a709e196dc5d68345f0d942972dff
+DIST ibus-typing-booster-2.9.0.tar.gz 8191076 BLAKE2B 4b0e53679b907fce56361c60aed2d50f0ac3bef422f9c56b4b5ca8733734c0341f90dfbcf2a9db747a801d999a49198de2b091badf8efe141d22fddb9b35ec6c SHA512 33e0c53e3f16e312eee7db2395d0a5506150e60a47882a7531c9d082e0ca405aabd922b4774a507399d31f38feed78fb87a09efc5550f08dd3794703f1fab235
diff --git a/app-i18n/ibus-typing-booster/ibus-typing-booster-2.8.2.ebuild b/app-i18n/ibus-typing-booster/ibus-typing-booster-2.9.0.ebuild
similarity index 100%
rename from app-i18n/ibus-typing-booster/ibus-typing-booster-2.8.2.ebuild
rename to app-i18n/ibus-typing-booster/ibus-typing-booster-2.9.0.ebuild
diff --git a/app-metrics/Manifest.gz b/app-metrics/Manifest.gz
index 0a64308cf23a..38a08e060527 100644
Binary files a/app-metrics/Manifest.gz and b/app-metrics/Manifest.gz differ
diff --git a/app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch b/app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch
index d4c0f4eadb0f..a3a6b439713c 100644
--- a/app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch
+++ b/app-metrics/fusioninventory-agent/files/fusioninventory-agent-2.5.2-dirs.patch
@@ -1,5 +1,33 @@
---- a/Makefile.PL 2020-05-27 02:16:42.106531746 +0300
-+++ b/Makefile.PL 2020-05-27 02:17:30.568531767 +0300
+diff -urN a/lib/FusionInventory/Agent/Config.pm b/lib/FusionInventory/Agent/Config.pm
+--- a/lib/FusionInventory/Agent/Config.pm 2020-05-27 11:09:31.969999393 -0000
++++ b/lib/FusionInventory/Agent/Config.pm 2020-05-27 11:09:39.833332729 -0000
+@@ -67,7 +67,7 @@
+ my ($class, %params) = @_;
+
+ my $self = {
+- '_confdir' => undef, # SYSCONFDIR replaced here from Makefile
++ '_confdir' => '/etc/fusioninventory', # SYSCONFDIR replaced here from Makefile
+ };
+ bless $self, $class;
+ $self->_loadDefaults();
+diff -urN a/lib/setup.pm b/lib/setup.pm
+--- a/lib/setup.pm 2020-05-27 11:09:31.989999393 -0000
++++ b/lib/setup.pm 2020-05-27 11:11:02.233332727 -0000
+@@ -11,9 +11,9 @@
+ our @EXPORT = ('%setup');
+
+ our %setup = (
+- datadir => './share',
++ datadir => '/usr/share/fusioninventory',
+ libdir => './lib',
+- vardir => './var',
++ vardir => '/var/lib/fusioninventory',
+ );
+
+ # Compute directly libdir from this setup file as it should be installed
+diff -urN a/Makefile.PL b/Makefile.PL
+--- a/Makefile.PL 2020-05-27 11:09:31.966666059 -0000
++++ b/Makefile.PL 2020-05-27 11:09:39.833332729 -0000
@@ -170,18 +170,15 @@
INSTALLSCRIPT => '$(PREFIX)/bin',
INSTALLSITESCRIPT => '$(PREFIX)/bin',
diff --git a/app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild b/app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild
index 3350194f9c03..50d906752ad4 100644
--- a/app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild
+++ b/app-metrics/fusioninventory-agent/fusioninventory-agent-2.5.2.ebuild
@@ -21,6 +21,7 @@ DEPEND="
dev-perl/Text-Template
dev-perl/UNIVERSAL-require
dev-perl/XML-TreePP
+ dev-perl/XML-XPath
virtual/perl-IO-Compress
dev-perl/HTTP-Daemon
dev-perl/IO-Socket-SSL
@@ -36,7 +37,7 @@ PATCHES=( "${FILESDIR}/${P}-dirs.patch" )
src_install() {
default
systemd_dounit contrib/unix/fusioninventory-agent.service
- doinitd "${FILESDIR}/${PN}.initd"
- doconfd "${FILESDIR}/${PN}.confd"
+ newinitd "${FILESDIR}/${PN}.initd" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd" ${PN}
keepdir /var/lib/fusioninventory
}
diff --git a/app-misc/Manifest.gz b/app-misc/Manifest.gz
index 5058bc304893..c12ecefc32b8 100644
Binary files a/app-misc/Manifest.gz and b/app-misc/Manifest.gz differ
diff --git a/app-misc/media-player-info/Manifest b/app-misc/media-player-info/Manifest
index b6b9a266ac97..ca6e6c609124 100644
--- a/app-misc/media-player-info/Manifest
+++ b/app-misc/media-player-info/Manifest
@@ -1,2 +1 @@
-DIST media-player-info-23.tar.gz 100849 BLAKE2B c64e33cb92c7f7b3fd77dd165fa5d33e433d09fbf171aba8ded2a274a24a544a85b7c874552951be25fe266090a882305416908975409b7c294d9435378c465d SHA512 4555456945f6f8c2fb23c86f80dc61e8e5448f3c402ac685e7eccd2df9f7861cdd41da842b0917349f7d83200ef10c810eb8b75fa6d62829834fdbdb81560f04
DIST media-player-info-24.tar.gz 90017 BLAKE2B 4b8dff7ebc910cdee986756d211f7cec0c08d5089bc5478360bcea3d24613118d3e2557633866345b1970a39a1de5ff10648ea71b7ae6ec7e7ae5635b6d46bc3 SHA512 b762f82280d7ddc3ecc4cf612f6fb3bf887c56a3ece7d9e4a45ebc7e750d71a20ba70dbff63c2b5abaae0f1c3e079545e95d8eff07ae25e27add09e92b2b1544
diff --git a/app-misc/media-player-info/media-player-info-23.ebuild b/app-misc/media-player-info/media-player-info-23.ebuild
deleted file mode 100644
index a55c9acc30b7..000000000000
--- a/app-misc/media-player-info/media-player-info-23.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_6 )
-inherit python-any-r1
-
-DESCRIPTION="A repository of data files describing media player capabilities"
-HOMEPAGE="https://cgit.freedesktop.org/media-player-info/"
-SRC_URI="https://www.freedesktop.org/software/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~sparc x86"
-IUSE=""
-
-# https://cgit.freedesktop.org/media-player-info/commit/?id=d83dd01a0a1df6198ee08954da1c033b88a1004b
-RDEPEND=">=virtual/udev-208"
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}
- virtual/pkgconfig
-"
-
-# This ebuild does not install any binaries
-RESTRICT="binchecks strip"
-
-pkg_postinst() {
- # Run for /lib/udev/hwdb.d/20-usb-media-players.hwdb
- udevadm hwdb --update --root="${ROOT}"
- # https://cgit.freedesktop.org/systemd/systemd/commit/?id=1fab57c209035f7e66198343074e9cee06718bda
- if [[ ${ROOT} != "" ]] && [[ ${ROOT} != "/" ]]; then
- return 0
- fi
- udevadm control --reload
-}
diff --git a/app-misc/pax-utils/pax-utils-1.2.6.ebuild b/app-misc/pax-utils/pax-utils-1.2.6.ebuild
index f68d63944b9c..8934306fee08 100644
--- a/app-misc/pax-utils/pax-utils-1.2.6.ebuild
+++ b/app-misc/pax-utils/pax-utils-1.2.6.ebuild
@@ -14,7 +14,7 @@ SRC_URI="mirror://gentoo/${P}.tar.xz
LICENSE="GPL-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-macos ~sparc-solaris ~sparc64-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 ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="caps debug python seccomp"
RDEPEND="caps? ( >=sys-libs/libcap-2.24 )
diff --git a/app-office/Manifest.gz b/app-office/Manifest.gz
index a1dc0211cde2..2c702f044419 100644
Binary files a/app-office/Manifest.gz and b/app-office/Manifest.gz differ
diff --git a/app-office/kmymoney/kmymoney-5.0.8-r1.ebuild b/app-office/kmymoney/kmymoney-5.0.8-r1.ebuild
index 3ec213f7944d..51b2398057d0 100644
--- a/app-office/kmymoney/kmymoney-5.0.8-r1.ebuild
+++ b/app-office/kmymoney/kmymoney-5.0.8-r1.ebuild
@@ -31,7 +31,7 @@ BDEPEND="virtual/pkgconfig"
COMMON_DEPEND="
>=app-crypt/gpgme-1.7.1-r1[cxx]
>=app-office/libalkimia-7.0.0:=
- dev-libs/gmp:0=
+ dev-libs/gmp:0=[cxx]
dev-libs/kdiagram:5
dev-libs/libgpg-error
>=dev-qt/qtdbus-${QTMIN}:5
diff --git a/app-office/skrooge/Manifest b/app-office/skrooge/Manifest
index dbddd0146f88..0c56ed7c21e7 100644
--- a/app-office/skrooge/Manifest
+++ b/app-office/skrooge/Manifest
@@ -1,2 +1 @@
-DIST skrooge-2.21.1.tar.xz 21487048 BLAKE2B 64eeb2e14a18e57f8fd89985e28e3b2736e4ece2ffc5132478531ba19a6f7ad821a5198570f01fd6bb3ad79410ba69bc7b0cdf8c5a85243bff3a879ad2458a2d SHA512 7d87576b38bd0dea1718babd818115b56cdae9183ca6b7b7631bcf749f2ed2b6a49989275fa5603906e08457bcaaf66404b4a76e31c6b84653f40e5b249d31c5
DIST skrooge-2.22.1.tar.xz 21559588 BLAKE2B 1f08a5357af4b792ba3d3eb4d460604fa23914aa5924ac9405019fbcce50efa96441b84bcd1142469f00eab89daa7c8175c5c33821190b7a09b7c565880f55b4 SHA512 0bbc4e98293f73a3ffe1243246fbd88c5d4d45fec8d67e8daebbe8ed08365c897b734cc5dd2a2104e608a13546f383b618d12c3523425d1a513511301c510f43
diff --git a/app-office/skrooge/skrooge-2.21.1.ebuild b/app-office/skrooge/skrooge-2.21.1.ebuild
deleted file mode 100644
index 49a210b9ac01..000000000000
--- a/app-office/skrooge/skrooge-2.21.1.ebuild
+++ /dev/null
@@ -1,105 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ECM_HANDBOOK="optional"
-ECM_TEST="forceoptional"
-KFMIN=5.60.0
-QTMIN=5.12.3
-VIRTUALX_REQUIRED="test"
-inherit ecm kde.org
-
-DESCRIPTION="Personal finances manager, aiming at being simple and intuitive"
-HOMEPAGE="https://skrooge.org/"
-
-if [[ ${KDE_BUILD_TYPE} = release ]]; then
- SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
- KEYWORDS="amd64 x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="5"
-IUSE="activities designer kde ofx webkit"
-
-REQUIRED_USE="test? ( designer )"
-
-BDEPEND="
- dev-libs/libxslt
- virtual/pkgconfig
-"
-COMMON_DEPEND="
- app-crypt/qca:2[qt5(+)]
- dev-db/sqlcipher
- dev-libs/grantlee:5
- >=dev-qt/qtconcurrent-${QTMIN}:5
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtdeclarative-${QTMIN}:5[widgets]
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtnetwork-${QTMIN}:5
- >=dev-qt/qtprintsupport-${QTMIN}:5
- >=dev-qt/qtscript-${QTMIN}:5
- >=dev-qt/qtsql-${QTMIN}:5=
- >=dev-qt/qtsvg-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- >=dev-qt/qtxml-${QTMIN}:5
- >=kde-frameworks/karchive-${KFMIN}:5
- >=kde-frameworks/kcompletion-${KFMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/kconfigwidgets-${KFMIN}:5
- >=kde-frameworks/kcoreaddons-${KFMIN}:5
- >=kde-frameworks/kdbusaddons-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kiconthemes-${KFMIN}:5
- >=kde-frameworks/kio-${KFMIN}:5
- >=kde-frameworks/kitemviews-${KFMIN}:5
- >=kde-frameworks/knewstuff-${KFMIN}:5
- >=kde-frameworks/knotifications-${KFMIN}:5
- >=kde-frameworks/knotifyconfig-${KFMIN}:5
- >=kde-frameworks/kparts-${KFMIN}:5
- >=kde-frameworks/kservice-${KFMIN}:5
- >=kde-frameworks/ktextwidgets-${KFMIN}:5
- >=kde-frameworks/kwallet-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- activities? ( >=kde-frameworks/kactivities-${KFMIN}:5 )
- kde? ( >=kde-frameworks/krunner-${KFMIN}:5 )
- ofx? ( dev-libs/libofx )
- webkit? ( >=dev-qt/qtwebkit-5.212.0_pre20180120:5 )
- !webkit? ( >=dev-qt/qtwebengine-${QTMIN}:5[widgets] )
-"
-DEPEND="${COMMON_DEPEND}
- >=kde-frameworks/kguiaddons-${KFMIN}:5
- >=kde-frameworks/kjobwidgets-${KFMIN}:5
- >=kde-frameworks/kwindowsystem-${KFMIN}:5
- designer? (
- >=kde-frameworks/kdesignerplugin-${KFMIN}:5
- >=dev-qt/designer-${QTMIN}:5
- )
-"
-RDEPEND="${COMMON_DEPEND}
- >=dev-qt/qtquickcontrols-${QTMIN}:5
-"
-
-# hangs + installs files
-RESTRICT+=" test"
-
-src_configure() {
- local mycmakeargs=(
- -DSKG_BUILD_TEST=$(usex test)
- -DSKG_DESIGNER=$(usex designer)
- $(cmake_use_find_package activities KF5Activities)
- $(cmake_use_find_package kde KF5Runner)
- $(cmake_use_find_package ofx LibOfx)
- -DSKG_WEBENGINE=$(usex !webkit)
- )
-
- ecm_src_configure
-}
-
-src_test() {
- local mycmakeargs=(
- -DSKG_BUILD_TEST=ON
- )
- ecm_src_test
-}
diff --git a/app-portage/Manifest.gz b/app-portage/Manifest.gz
index 1efcec504744..cf140b891d9c 100644
Binary files a/app-portage/Manifest.gz and b/app-portage/Manifest.gz differ
diff --git a/app-portage/gemato/gemato-14.4.ebuild b/app-portage/gemato/gemato-14.4.ebuild
index 37b5909bc6e6..e472f6f72173 100644
--- a/app-portage/gemato/gemato-14.4.ebuild
+++ b/app-portage/gemato/gemato-14.4.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python{3_6,3_7,3_8} pypy3 )
+PYTHON_COMPAT=( python3_{6..9} pypy3 )
PYTHON_REQ_USE='threads(+)'
inherit distutils-r1
diff --git a/app-portage/gemato/gemato-9999.ebuild b/app-portage/gemato/gemato-9999.ebuild
index 9dbc15846eda..5b490f34718e 100644
--- a/app-portage/gemato/gemato-9999.ebuild
+++ b/app-portage/gemato/gemato-9999.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python{3_6,3_7,3_8} pypy3 )
+PYTHON_COMPAT=( python3_{6..9} pypy3 )
PYTHON_REQ_USE='threads(+)'
inherit distutils-r1 git-r3
diff --git a/app-shells/Manifest.gz b/app-shells/Manifest.gz
index 71bf7b4de252..d6285f3e45cf 100644
Binary files a/app-shells/Manifest.gz and b/app-shells/Manifest.gz differ
diff --git a/app-shells/fzf/metadata.xml b/app-shells/fzf/metadata.xml
index aedb67ebbf2d..55c90b89b4ec 100644
--- a/app-shells/fzf/metadata.xml
+++ b/app-shells/fzf/metadata.xml
@@ -5,6 +5,10 @@
rafspiny@gmail.com
Raffaele Spinelli
+
+ consus@ftml.net
+ Olaf Torvaldsson
+
proxy-maint@gentoo.org
Proxy Maintainers
diff --git a/app-text/Manifest.gz b/app-text/Manifest.gz
index a418981ac9be..dfc2eda955b0 100644
Binary files a/app-text/Manifest.gz and b/app-text/Manifest.gz differ
diff --git a/app-text/asciidoc/Manifest b/app-text/asciidoc/Manifest
index 06a17938e0a6..93bda0acf7c7 100644
--- a/app-text/asciidoc/Manifest
+++ b/app-text/asciidoc/Manifest
@@ -1,3 +1,2 @@
DIST asciidoc-8.6.10_p20181016.tar.gz 576694 BLAKE2B 4d255606675346d00ab03398bf48cb30d357f9f9366944e4faf66ae4c96dafce49acdd930fc848f3dbb2d704a004bb5815d17b53416a76c8368a92e4716328b2 SHA512 801f360b0c444e932f1c50897d446de0ec3f0fb2206080b5aa6dda396fede96065f7bb629a84c8a8e40c5d8897f305fdb1877512f04ae757f3b142fd3a7305d0
-DIST asciidoc-9.0.0_rc1.tar.gz 1143528 BLAKE2B 97e2ee77cf7554e2e0d53e792213377e6cb233853717487b0c0ac1c70d233a5d58a08f3aa69ae840c90f98185b595f9feb7396795b2de47ff0cfc0147920bc2a SHA512 965d65df18ff90596e5cd72bec8d0f7daf2f6ad585ec77af2a6ae9637569b613e2384cc7015c1823fcde99be8170107789505a543fe8b6d3273f2c75a6a92960
DIST asciidoc-9.0.0_rc2.tar.gz 1145229 BLAKE2B e820a957a5e03f8b28e94fb0e9514b2beebe5b08a30357b7ab70db326894270972cfee1b44c30d51dc1c4794e91a09e36acbf9e464386d9e932ac7d32e2f8e93 SHA512 61ea1eb74a2e2da76f92e32ef279f8940fa4ea77a82078e15b54c7c6f134e9d177b0425c6eb8a239cfd2dc6a6f85ad5e93883a447a3e0e92850c0898747b5ea3
diff --git a/app-text/asciidoc/asciidoc-9.0.0_rc1.ebuild b/app-text/asciidoc/asciidoc-9.0.0_rc1.ebuild
deleted file mode 100644
index ea4593547f48..000000000000
--- a/app-text/asciidoc/asciidoc-9.0.0_rc1.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7} pypy3 )
-
-inherit autotools eutils python-single-r1 readme.gentoo-r1
-
-DESCRIPTION="A plain text human readable/writable document format"
-HOMEPAGE="http://asciidoc.org/ https://github.com/asciidoc/asciidoc-py3/"
-SRC_URI="https://github.com/${PN}/${PN}-py3/archive/9.0.0rc1.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="examples test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RDEPEND="
- ${PYTHON_DEPS}
- app-text/docbook-xml-dtd:4.5
- >=app-text/docbook-xsl-stylesheets-1.75
- dev-libs/libxslt
- dev-libs/libxml2:2
- "
-DEPEND="
- test? (
- ${PYTHON_DEPS}
- app-text/dvipng
- app-text/dvisvgm
- dev-texlive/texlive-latex
- dev-util/source-highlight
- media-gfx/graphviz
- media-gfx/imagemagick
- media-sound/lilypond
- )"
-
-DOC_CONTENTS="
-If you are going to use a2x, please also look at a2x(1) under
-REQUISITES for a list of runtime dependencies.
-"
-
-DOCS=( BUGS.txt CHANGELOG.txt README.asciidoc
- docbook-xsl/asciidoc-docbook-xsl.txt dblatex/dblatex-readme.txt
- filters/code/code-filter-readme.txt )
-
-S="${WORKDIR}/${PN}-py3-9.0.0rc1"
-
-src_prepare() {
- default
- # Only needed for prefix - harmless (does nothing) otherwise
- sed -i -e "s:^CONF_DIR=.*:CONF_DIR='${EPREFIX}/etc/asciidoc':" \
- "${S}/asciidoc.py" || die
-
- eautoreconf
-}
-
-src_configure() {
- econf --sysconfdir="${EPREFIX}"/usr/share
-}
-
-src_test() {
- local -x ASCIIDOC_PY=asciidoc.py
- "${EPYTHON}" tests/test${PN}.py run || die
-}
-
-src_install() {
- default
- python_fix_shebang "${ED}"/usr/bin/*.py
-
- readme.gentoo_create_doc
-
- # Below results in some files being installed twice in different locations, but they are
- # in the right place, uncompressed, and there won't be any broken links. See bug #483336
- if use examples; then
- # examples/website is full of relative symlinks,
- # deref them for copying, which dodoc doesn't do
- cp -rL examples/website "${ED}"/usr/share/doc/${PF}/examples || die
- docompress -x /usr/share/doc/${PF}/examples
- fi
-}
-
-pkg_postinst() {
- readme.gentoo_print_elog
-
- optfeature "\"music\" filter support" "media-sound/lilypond media-gfx/imagemagick"
- optfeature "\"source\" filter support" dev-util/source-highlight dev-python/pygments app-text/highlight
- optfeature "\"latex\" filter support" "dev-texlive/texlive-latex app-text/dvipng" "dev-texlive/texlive-latex app-text/dvisvgm"
- optfeature "\"graphviz\" filter support" media-gfx/graphviz
-}
diff --git a/app-text/po4a/Manifest b/app-text/po4a/Manifest
index 3626d966ae80..2580a64bd37d 100644
--- a/app-text/po4a/Manifest
+++ b/app-text/po4a/Manifest
@@ -1,3 +1,3 @@
DIST po4a-0.57.tar.gz 3079550 BLAKE2B 54b1d3263aa0ebd90eec61d735c3422efb5f67b2d88f91a87a6893bcdb7f06131aedadeb3577d221cf75ba07f8001f6e23409375756afec8357e26e8f0f0a1c2 SHA512 7ac2e614c126b049feeb8edbafb71a875cee78fb85d8cd74f3bf5b555cc8b2d19d5e4606b732e714e937c34e178729d73edfe559de594c5ffe811b5162b27d81
-DIST po4a-0.59.tar.gz 3607872 BLAKE2B 4c8671507ec544690f9030df4f24dbaef2f7ac6adf85b3478762600bbbb97ab510817b21a9af8ee59cd8ec9bde726f66982442df62575325512f43bda43582d5 SHA512 d0453af140cb94ad28b1641c6437a4ec276eec2d71c63477a81ba866ad4e905ac9badb6ce167f8c00a2433c4f03de3a8ac8e1e7a9b6b0a932f1bfdde9157d4fa
+DIST po4a-v0.59.1.tar.gz 3624434 BLAKE2B 9837a7317eecd3db540bc7c23b3d26a9110f00d9c441b1bf1d61af80bae1fe0952f875425f14d66a939456f3a90e9ea74c189d94da7471c7c9a4d0b15f3875ce SHA512 904cb5817586fef19de55e76f3a33c264f9864b5c720b727a75e78a3b690e1ecd7b10603304a762d07b340320143b83b686c9918b9fe95499ceb55482950a4d4
DIST po4a_0.47.orig.tar.gz 2389750 BLAKE2B 72cd81e10f638a660e201b0c733b08c316aa75dd29b054bbc4c645c265b9e7745ce762305a8296f8cc37d2f182755dfa1394861f6c471cff1c7c398d13ac28cc SHA512 9c459a9795977a39aacc09cfb6ddbdc7dd2174e22896fa7bde90510a43ea833054aef558f7ca798991addc052a2c7f91ee11e5d49658a5c80a9ecb9c135ff97a
diff --git a/app-text/po4a/po4a-0.59.ebuild b/app-text/po4a/po4a-0.59.1.ebuild
similarity index 95%
rename from app-text/po4a/po4a-0.59.ebuild
rename to app-text/po4a/po4a-0.59.1.ebuild
index a32ddb065e15..6d9d46d247b7 100644
--- a/app-text/po4a/po4a-0.59.ebuild
+++ b/app-text/po4a/po4a-0.59.1.ebuild
@@ -6,9 +6,11 @@ PLOCALES="af ar ca cs da de eo es et eu fr hr hu id it ja kn ko nb nl pl pt pt_B
inherit l10n perl-module
+MY_P="${P/-/-v}"
+
DESCRIPTION="Tools to ease the translation of documentation"
HOMEPAGE="https://po4a.org/"
-SRC_URI="https://github.com/mquinson/${PN}/releases/download/v${PV}/${P}.tar.gz"
+SRC_URI="https://github.com/mquinson/${PN}/releases/download/v${PV}/${MY_P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
@@ -34,6 +36,7 @@ DEPEND="${RDEPEND}
dev-perl/Test-Pod
virtual/latex-base
)"
+S="${WORKDIR}/${MY_P}"
PATCHES=( "${FILESDIR}"/${PN}-man.patch )
diff --git a/dev-db/Manifest.gz b/dev-db/Manifest.gz
index ae5e9fa59c05..e6a398810193 100644
Binary files a/dev-db/Manifest.gz and b/dev-db/Manifest.gz differ
diff --git a/dev-db/qdbm/qdbm-1.8.78-r2.ebuild b/dev-db/qdbm/qdbm-1.8.78-r2.ebuild
index 034733d2ae95..40f5281fa882 100644
--- a/dev-db/qdbm/qdbm-1.8.78-r2.ebuild
+++ b/dev-db/qdbm/qdbm-1.8.78-r2.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://fallabs.com/${PN}/${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 s390 sparc x86"
-IUSE="bzip2 cxx debug java lzo perl ruby zlib"
+IUSE="bzip2 cxx debug java lzo perl ruby static-libs zlib"
RDEPEND="bzip2? ( app-arch/bzip2 )
java? ( >=virtual/jre-1.4:* )
@@ -153,6 +153,7 @@ each_ruby_test() {
src_install() {
default
qdbm_foreach_api
+ use static-libs || find "${ED}" -name '*.a' -delete || die
rm -rf "${ED}"/usr/share/${PN}
diff --git a/dev-db/qt5-sqlcipher/Manifest b/dev-db/qt5-sqlcipher/Manifest
index 137e99733c48..55ef4fe798a7 100644
--- a/dev-db/qt5-sqlcipher/Manifest
+++ b/dev-db/qt5-sqlcipher/Manifest
@@ -1,3 +1,2 @@
-DIST qt5-sqlcipher-1.0.1-qt-5.14.0.tar.xz 8248 BLAKE2B 0cc717deecf2ff1d212a5b510be0c57d5cdac6abf9dc5db8f5d69762adb2a0d79298aa0e2f453417a5aa5b242637094e7ebaf6d7fe777539e0f8896f6adc3709 SHA512 a61231756967f0596b3903db1ca40937f1140a3d06ff9b6b6f6a6195650c170e0d4f42a3d51ac3f3cb35f4e173b78986a8fb31ed7a7e01e125ae78c7dd851246
+DIST qt5-sqlcipher-1.0.10-qt-5.15.0.tar.xz 8240 BLAKE2B 93541d04b1ce25e01438e7d9282645b4e9ae613390160e7a76ee106d9b4dcb42cd8b979918952ef151beac17e0bc3a1e52b03607c30c1005ce3d03875532830b SHA512 db506bf37373822c784aee533318a5899bdf46f5d89548b5ff8a6017e5e6f1ba7e5a4b856a28623e464ba34182382b8ada95b4f73dd47ba8e5b651dc6a747e35
DIST qt5-sqlcipher-1.0.10.tar.gz 245054 BLAKE2B edb36a47881e2d5801cf07cc9b6094ea53b9e0e595c0078d3a09b493979222a6ad655b074b015c0a152073e0f39d1e31ecb9e2021f7788dda04a0547cd47eddd SHA512 1a23da7d7c6de020ee0739154abe83f94208a3a6d385fd58eff38d3ea27ce51b37a66994e8ad0ff5102525c3573134f9b9362accf2032b7386ea174b12ea1338
-DIST qt5-sqlcipher-1.0.1_p20191025.tar.gz 200293 BLAKE2B 5a0c6401353bc1c9dc511ac585ebce8556742278c303032b3434116c5a778034df01a5133913f8eaac187863b91ef8432b20184b75882c738ed6d850682ac765 SHA512 9e5294ff4c25dc18ef83ecec6c7ef985fec73744f36b27d21591983eb9976b8a13151ef0a31ce3af9767ee3f6388b8f008404002345d328bf0094d03ca4dd8d0
diff --git a/dev-db/qt5-sqlcipher/qt5-sqlcipher-1.0.10.ebuild b/dev-db/qt5-sqlcipher/qt5-sqlcipher-1.0.10-r1.ebuild
similarity index 83%
rename from dev-db/qt5-sqlcipher/qt5-sqlcipher-1.0.10.ebuild
rename to dev-db/qt5-sqlcipher/qt5-sqlcipher-1.0.10-r1.ebuild
index 2e1c4834cc6c..1a5c9d0bfc5d 100644
--- a/dev-db/qt5-sqlcipher/qt5-sqlcipher-1.0.10.ebuild
+++ b/dev-db/qt5-sqlcipher/qt5-sqlcipher-1.0.10-r1.ebuild
@@ -7,7 +7,8 @@ inherit cmake-utils
DESCRIPTION="Qt SQL driver plugin for SQLCipher"
HOMEPAGE="https://github.com/blizzard4591/qt5-sqlcipher"
-SRC_URI="https://github.com/blizzard4591/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/blizzard4591/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~ulm/distfiles/${PN}-${PV%_*}-qt-5.15.0.tar.xz"
LICENSE="LGPL-2.1" # version 2.1 only
SLOT="0"
@@ -15,12 +16,14 @@ KEYWORDS="~amd64"
RDEPEND=">=dev-db/sqlcipher-3.4.1
>=dev-qt/qtcore-5.12.3:5=
- >=dev-qt/qtsql-5.12.3:5=[sqlite] =dev-qt/qtsql-5.12.3:5=[sqlite] ${P}.tar.gz
- https://dev.gentoo.org/~ulm/distfiles/${PN}-${PV%_*}-qt-5.14.0.tar.xz"
-
-LICENSE="LGPL-2.1" # version 2.1 only
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND=">=dev-db/sqlcipher-3.4.1
- >=dev-qt/qtcore-5.12.3:5=
- >=dev-qt/qtsql-5.12.3:5=[sqlite] quickcheck -> cabal
+
+RDEPEND=">=dev-haskell/mtl-2.1:=[profile?] =dev-haskell/parsec-3.1.13.0:=[profile?] =dev-haskell/text-1.2.3.0:=[profile?] =dev-lang/ghc-7.8.2:=
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=("${FILESDIR}"/${PN}-2.0.0.2-no-bootstrap.patch)
+
+CABAL_CORE_LIB_GHC_PV="PM:8.6.1 PM:8.6.2 PM:8.6.3 PM:8.6.4 PM:8.6.5"
+
+src_configure() {
+ haskell-cabal_src_configure \
+ --flag=-bundled-binary-generic
+}
diff --git a/dev-haskell/parsec/Manifest b/dev-haskell/parsec/Manifest
index 2cf4fa837f2f..d5d3a5b16cac 100644
--- a/dev-haskell/parsec/Manifest
+++ b/dev-haskell/parsec/Manifest
@@ -1,3 +1,4 @@
DIST parsec-3.1.11.tar.gz 32412 BLAKE2B 7e463d37b1da799820079500d96d719e2f34781ba1d443391d5a49b60c3ad935c6c4e766aaa5963c1128ca12a0070f86b17fcbdf6e96224573742e0f9341c7f6 SHA512 f913c172295b184fc118a59ad5fd66c35133885c39aac62239fc3a1aa98b4741465f67d0cffafc1706262ada42259a4694bfbb9175a399997e5b8840da4a809f
+DIST parsec-3.1.13.0.tar.gz 35207 BLAKE2B d5d39122bdc8117aa45b7fc83c15162ac5d366ede01fbf99a94909c0b8ff6a31b6058bbd52ec6aa2366c6e9b1c909acb78c90a697821f8a88b67fa01c7655ff4 SHA512 4efa52bf5f8cdfe81ea97f1ea0bb5522331217976feaf98bb5ebfdf37f4685263f653de091c0ec0ecb0fc26cf6f8525639f9728c9e92afc154e91c6d4239c9b3
DIST parsec-3.1.5.tar.gz 27894 BLAKE2B 4c0daaa10d2307f59770747662b387cd286b46d27c3dff27c581d0e295f7bc652cc7e6e0f141ce69ef15da2af0e9f612f732b9bf09f17c9bab56dba0dc596481 SHA512 58bd5e1ea878349a678c4a8d77caf42962ab65f801411bbbad4fa1e4f387de743f2f64944b5d7ef82042507552f281f70a7f4b40984a0ca4fd37618a0d1ec662
DIST parsec-3.1.9.tar.gz 29668 BLAKE2B 296049551258044915936afa0928b0d73b30ec7cbb217b3ac76972cfc3f9cb49efbe5091c49fe1232f5bb24951efc0c56d89b7818046cc5b8edeb67796de28f6 SHA512 bc5209813ad0742c68c275f0ecd3e284b6249d2651f75daf16ad9a776003591217eb7d47fdaad88530af90455fe7d3e014c3c1d7d0893482721d4997b23a2d16
diff --git a/dev-haskell/parsec/parsec-3.1.13.0-r1.ebuild b/dev-haskell/parsec/parsec-3.1.13.0-r1.ebuild
new file mode 100644
index 000000000000..9999fac242a9
--- /dev/null
+++ b/dev-haskell/parsec/parsec-3.1.13.0-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# ebuild generated by hackport 0.5.5.9999
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
+# break circular dependencies:
+# https://github.com/gentoo-haskell/gentoo-haskell/issues/810
+CABAL_FEATURES+=" nocabaldep"
+inherit haskell-cabal
+
+DESCRIPTION="Monadic parser combinators"
+HOMEPAGE="https://github.com/hvr/parsec"
+SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+#keep in sync with ghc-8.6
+#KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RESTRICT=test # circular dependencies
+
+RDEPEND=">=dev-haskell/fail-4.9:=[profile?] =dev-haskell/mtl-1.1.1:=[profile?] =dev-haskell/semigroups-0.18:=[profile?] =dev-haskell/text-0.11.3:=[profile?] =dev-lang/ghc-7.4.1:=
+"
+DEPEND="${RDEPEND}
+ test? ( >=dev-haskell/test-framework-0.8 =dev-haskell/test-framework-hunit-0.3 =dev-haskell/hunit-1.3.1.2 =dev-haskell/hunit-1.6 = 4.5.1 && < 4.12' 'base >= 4.5.1'
+}
diff --git a/dev-haskell/syb/Manifest b/dev-haskell/syb/Manifest
index 3dd5097c9f85..5d727a4f3ebc 100644
--- a/dev-haskell/syb/Manifest
+++ b/dev-haskell/syb/Manifest
@@ -1,3 +1,4 @@
DIST syb-0.4.3.tar.gz 38860 BLAKE2B a4587047b9fbf9a33b9f9e1c94afd4abe87e4f284d91255c9e02863cd1efed9bf4e59fe8441e433adf0aaf81556cfdba2988746f37b6b672d604749f57669035 SHA512 d351eb020dba7c257904b81504cacc233b33864bcc54aad48267db313755243206a2dc4a89d473062d5ca4eff09dd57f0610e99f944717a8e3bbd724775fd6b3
DIST syb-0.4.4.tar.gz 39215 BLAKE2B 5ef855075b5516ec1c3504ce54a997877873dcb32d6b3050eb7768ded0e10e6b4ef1f652bcb332d3823afb04ffd05724baa9d0e32cdbc271528467e0666d2b93 SHA512 fc916ec2ad4c76c7aa979f2b5040df5088b0a75b1e33e3b2325e2212b59d22db5773fe0803beb1b8b2e0a0a292f5620bcb23201dce8b790b8f4fa2252bd64a33
DIST syb-0.5.1.tar.gz 39469 BLAKE2B d69ba87a733bc81eb8e4cb24c5a2b6ac3f90a67f6da576f7fdb3a9191b7301805af8029847a578b3750fd672ae238697f7c5e91d34ca4ac1f7046684dc5f4184 SHA512 087bf9a51abe0a09edc0b920f9b91733016701d6ed24184d8f82da87d3b1912b96af4845a3b0ddb41868efede48f90b52d1940633cf0d366559e176cc7771257
+DIST syb-0.7.1.tar.gz 39594 BLAKE2B c7304aac08dde400d26bb296b2f9d5c5d148949d8d5469daadd83110d63f1c3865c21fc187494f5fc11f21708717d917f26fee1bca611d2ea4c998dc0fdfa62a SHA512 63a3138f7f824a9bc611b9d025d4e7adc2da8d420d260b66d56190db683a0afac58e4794e94b13d4aa7b423d949e55a1ed0220c99d368973117b5056fd0f4e65
diff --git a/dev-haskell/syb/syb-0.7.1.ebuild b/dev-haskell/syb/syb-0.7.1.ebuild
new file mode 100644
index 000000000000..6a9f610af793
--- /dev/null
+++ b/dev-haskell/syb/syb-0.7.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# ebuild generated by hackport 0.6.1
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
+inherit haskell-cabal
+
+DESCRIPTION="Scrap Your Boilerplate"
+HOMEPAGE="http://www.cs.uu.nl/wiki/GenericProgramming/SYB"
+SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+IUSE=""
+
+RDEPEND=">=dev-lang/ghc-7.4.1:=
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.8
+ test? ( dev-haskell/hunit
+ dev-haskell/mtl )
+"
diff --git a/dev-haskell/text/Manifest b/dev-haskell/text/Manifest
index b2ae874491f0..d3bea500a1e5 100644
--- a/dev-haskell/text/Manifest
+++ b/dev-haskell/text/Manifest
@@ -2,3 +2,4 @@ DIST text-0.11.3.1.tar.gz 126477 BLAKE2B 27c135a5815eeeabd5791e4f0a16cce12def262
DIST text-1.1.1.3.tar.gz 138063 BLAKE2B 150151cd991c2e905d75087dde7b889850a5b51bb1d95838c1969dd851f64af5d8594c333d49e4e1fe269479d8e59bf17bca33ad64e7ff36fcf45f529354bd99 SHA512 bfa5301827c72cbb3346fdb485e10094326a7cac71e01bba700ca0344bd4069c5b16c590dd7c38ee85969be06a2d3fcd760b34ff6f98eef176e7e8c325739490
DIST text-1.2.2.0.tar.gz 148894 BLAKE2B 9a3e2d72f38f10b9e1e021ad7cf5cf182657a32f98fe5889befe1bf9fbd8da5a2a1e405177805774fca911b57279e3db73cd7e0ee22315210cb3c0f728633ad7 SHA512 832b0430581a06cfdfa2a5c83fa2720e3f4825ee0aa9c6b12ff6ccd424a9e3a061c9ae7eeda48fe7a9f077c50e379abe2eee3fb05bdbdec4d38115b5e3695f20
DIST text-1.2.2.1.tar.gz 149888 BLAKE2B 6ef907f42f89f0d1a0b109ef3f277cb3a653fae9564e35a772945f88eca64b3250d7db1d5124d73358046f6c729c0b7f345b4e747383f305af8a66f9f55acae1 SHA512 f0615f7614127d86dbfb3fba5dd1753af3d0774c46e11ee4a99d4510f73b59cf1bd8c73ca0387dba4fbcea3936aaaf0e92561cf6aab1a98d08fcad481d3795e4
+DIST text-1.2.3.1.tar.gz 157382 BLAKE2B 551012a6b7bfc1b1ad838f977d67981a35b9d13f1cd1b568ce0beed3583c50887cf1ceb1033fbeab215806c5a0d0c5ca39ce2f1aa20fd06365440c3324e8a6bc SHA512 643eb3306761c3e29e05dcd7d64abc505789cd00c60f7a4562e5747f63bcc0ae6f0cc54bb5ed92cc85dbf6406942bf40289baf30aca91bf92ac5215af5eddc98
diff --git a/dev-haskell/text/text-1.2.3.1.ebuild b/dev-haskell/text/text-1.2.3.1.ebuild
new file mode 100644
index 000000000000..9bc3d4248bb2
--- /dev/null
+++ b/dev-haskell/text/text-1.2.3.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# ebuild generated by hackport 0.5.6.9999
+#hackport: flags: -bytestring-builder,-developer
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour" # broken test-suite
+# break circular dependencies:
+# https://github.com/gentoo-haskell/gentoo-haskell/issues/810
+CABAL_FEATURES+=" nocabaldep"
+inherit haskell-cabal
+
+DESCRIPTION="An efficient packed Unicode text type"
+HOMEPAGE="https://github.com/haskell/text"
+SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+# keep in sync with ghc-8.6
+#KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+# break cyclic dependencies, test suite requires porting to >=QC-2.11
+RESTRICT=test
+
+RDEPEND=">=dev-lang/ghc-7.8.2:="
+
+DEPEND="${RDEPEND}
+"
+
+CABAL_CORE_LIB_GHC_PV="PM:8.4.4 PM:8.6.1 PM:8.6.2 PM:8.6.3 PM:8.6.4 PM:8.6.5 PM:8.10.1_alpha1 PM:8.10.1_alpha2 PM:9999"
+
+src_configure() {
+ haskell-cabal_src_configure \
+ --flag=-bytestring-builder \
+ --flag=-developer \
+ --flag=-integer-simple
+}
diff --git a/dev-lang/Manifest.gz b/dev-lang/Manifest.gz
index 8a6f21923936..3c4934987ba0 100644
Binary files a/dev-lang/Manifest.gz and b/dev-lang/Manifest.gz differ
diff --git a/dev-lang/mozart/Manifest b/dev-lang/mozart/Manifest
index c3fd4a8a9f33..fd420dc7f17a 100644
--- a/dev-lang/mozart/Manifest
+++ b/dev-lang/mozart/Manifest
@@ -1,3 +1,4 @@
DIST mozart-1.4.0-gentoo-patchset-5.tar.gz 24700 BLAKE2B c3b14bd7d8a762b84a098a9e42dfe09b5b902fdfe6c8e8dcebe7198eaaf0e89cbb101ec3765713db0fbddb6f3b9741ed927af98df48aed496d7864f6bc5f6999 SHA512 99db9bf62682fd306c4b665d99ab3b48a787c26230d5e8db2e3564684eff2e41ac0c6bb6a612afa0446555dcb1e419ae7ef1dbfec4c918d769d51dafeeee8462
+DIST mozart-1.4.0-gentoo-patchset-6.tar.gz 25878 BLAKE2B 831fa3accc587c769ab40ae4289e45ca28171af572095b7c3b93b69e82ff4bcaeb425d68c7a76aa9b2724b610ba21020647b6d1e3aa525ce58edbc9446d88791 SHA512 5a292bcc81c8062ebd5a948b224e8131302fc61b60303b8e3257ed20e751d0a874303611aeba6d1aacddbf92ec611428e49c2c17bc1dff5e182d0198afe655bf
DIST mozart-1.4.0.20080704-doc.tar.gz 4085020 BLAKE2B 33eaf57c91dd62d9aa79651095aa5d095086d76dfa16bd5f520962229338c00556fcf3ac01eca1769c687f990110e95fa887d56391346af780d55166708338a1 SHA512 25f8f4b603ae7f4ef054a79a2baa4e10074f8a95f762b75fd88480526fb073b5b4874c269d116a960017a9e7ef989dd9f41853b0ff76e08b2cad2de2090c2eb4
DIST mozart-1.4.0.20080704-src.tar.gz 11848201 BLAKE2B 0ceeb7dbd3f6858d1a4fee76f2a99eeb3127a07fd31b6760748ac8b8b638c36caaa873154be6481c3dc4b5196ef04cb0c10be421bd87dc3bc4e6b29357622d8d SHA512 f1114662c8c603cc2ac530d4ea1d22a0581f6e1b4d5cb57ccf899b8051ea48dbcf2fa2b62173359a754367a5456a7cb121a208d6a246248207599b0470525229
diff --git a/dev-lang/mozart/mozart-1.4.0-r4.ebuild b/dev-lang/mozart/mozart-1.4.0-r4.ebuild
index ab9ddf42868e..25aff0bfbc8f 100644
--- a/dev-lang/mozart/mozart-1.4.0-r4.ebuild
+++ b/dev-lang/mozart/mozart-1.4.0-r4.ebuild
@@ -1,18 +1,18 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit elisp-common
+inherit elisp-common flag-o-matic
-PATCHSET_VER="5"
+PATCHSET_VER="6"
MY_P="mozart-${PV}.20080704"
DESCRIPTION="Advanced development platform for intelligent, distributed applications"
HOMEPAGE="https://mozart.github.io/ https://github.com/mozart/mozart"
SRC_URI="
mirror://sourceforge/project/mozart-oz/v1/1.4.0-2008-07-02-tar/${MY_P}-src.tar.gz
- mirror://gentoo/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz
+ https://dev.gentoo.org/~keri/distfiles/mozart/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz
doc? ( mirror://sourceforge/project/mozart-oz/v1/1.4.0-2008-07-02-tar/${MY_P}-doc.tar.gz )"
SLOT="0"
@@ -43,9 +43,15 @@ S="${WORKDIR}"/${MY_P}
src_prepare() {
default
eapply "${WORKDIR}"/${PV}
+
+ mkdir -p "${S}"/build/contrib
+ ln -s "${S}"/configure "${S}"/build/configure
}
src_configure() {
+ cd "${S}"/build
+
+ append-flags -fno-tree-vrp
local myconf="\
--without-global-oz \
--enable-opt=none"
@@ -70,6 +76,7 @@ src_configure() {
}
src_compile() {
+ cd "${S}"/build
emake bootstrap
}
@@ -81,24 +88,26 @@ src_test() {
}
src_install() {
+ cd "${S}"/build
+
emake \
PREFIX="${D}"/usr/lib/mozart \
ELISPDIR="${D}${SITELISP}/${PN}" \
install
- dosym /usr/lib/mozart/bin/convertTextPickle /usr/bin/convertTextPickle
- dosym /usr/lib/mozart/bin/oldpickle2text /usr/bin/oldpickle2text
- dosym /usr/lib/mozart/bin/ozc /usr/bin/ozc
- dosym /usr/lib/mozart/bin/ozd /usr/bin/ozd
- dosym /usr/lib/mozart/bin/ozengine /usr/bin/ozengine
- dosym /usr/lib/mozart/bin/ozl /usr/bin/ozl
- dosym /usr/lib/mozart/bin/ozplatform /usr/bin/ozplatform
- dosym /usr/lib/mozart/bin/oztool /usr/bin/oztool
- dosym /usr/lib/mozart/bin/pickle2text /usr/bin/pickle2text
- dosym /usr/lib/mozart/bin/text2pickle /usr/bin/text2pickle
+ dosym ../lib/mozart/bin/convertTextPickle /usr/bin/convertTextPickle
+ dosym ../lib/mozart/bin/oldpickle2text /usr/bin/oldpickle2text
+ dosym ../lib/mozart/bin/ozc /usr/bin/ozc
+ dosym ../lib/mozart/bin/ozd /usr/bin/ozd
+ dosym ../lib/mozart/bin/ozengine /usr/bin/ozengine
+ dosym ../lib/mozart/bin/ozl /usr/bin/ozl
+ dosym ../lib/mozart/bin/ozplatform /usr/bin/ozplatform
+ dosym ../lib/mozart/bin/oztool /usr/bin/oztool
+ dosym ../lib/mozart/bin/pickle2text /usr/bin/pickle2text
+ dosym ../lib/mozart/bin/text2pickle /usr/bin/text2pickle
if use emacs; then
- dosym /usr/lib/mozart/bin/oz /usr/bin/oz
+ dosym ../lib/mozart/bin/oz /usr/bin/oz
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
fi
diff --git a/dev-lang/qu-prolog/Manifest b/dev-lang/qu-prolog/Manifest
index e08b211f2c66..40dbbfce6ebe 100644
--- a/dev-lang/qu-prolog/Manifest
+++ b/dev-lang/qu-prolog/Manifest
@@ -1,2 +1,3 @@
DIST qp10.1.tar.gz 1521610 BLAKE2B a4d6d277a35284accfff1afd70901218df198b2b33f5c95ca5649bf06abcb153890f2f21b0e8d62ed93484b452a230074f93c983ab231c8fc58b51a29119d838 SHA512 8fb30fcbc086384d7e265695a7d24a9599ed306b5da0ea964e60aef4bb01c7b6789fc361449f908736c57d86c204e574d745f277d5b0ec2b725a8eca52f14f1a
DIST qp10.2.tar.gz 1667066 BLAKE2B fe466bc892a0923f463347bfa22618061d8a8baf9e2fc60ea27694c66be6dc8ac9b0bacd3084bccff95ff06ef949660cb9a0637a8e3e3595d04c44eb2b682bc9 SHA512 5cfebab17a812513bb4ddf4c04890af32339bef18d746dd6503cee13d295c43f1ef687a6c7814b2f40473766c695459f8234541ae8a6945a0f2930556985ad96
+DIST qp10.3.tar.gz 1669345 BLAKE2B 9dc14f683555b22e7bb2119dd6d29cad7c934bb162def4358d69da65cd259b586fac593c7770dc1d665ab56da2e1129a696e84b01a271b747a9e3a8598c0d7fa SHA512 e28519fccf58f2b755382f2b8e56c15f2622508822c920975577feb6b837f96346a14eb23a5209ed126e617264ed7846b8a35d5936e99284503d5c435c0a1c18
diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.2-qt5.patch b/dev-lang/qu-prolog/files/qu-prolog-10.2-qt5.patch
deleted file mode 100644
index 4d5ec768be9c..000000000000
--- a/dev-lang/qu-prolog/files/qu-prolog-10.2-qt5.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-diff -ur qp10.2.orig/src/xqp/term.cc qp10.2/src/xqp/term.cc
---- qp10.2.orig/src/xqp/term.cc 2008-07-09 07:32:37.000000000 +0200
-+++ qp10.2/src/xqp/term.cc 2020-03-21 14:08:16.842059351 +0100
-@@ -38,7 +38,7 @@
-
- bool graphic_char(QChar c)
- {
-- switch (c.toAscii())
-+ switch (c.toLatin1())
- {
- case '-':
- case '/':
-diff -ur qp10.2.orig/src/xqp/xqp.cc qp10.2/src/xqp/xqp.cc
---- qp10.2.orig/src/xqp/xqp.cc 2011-07-14 01:08:42.000000000 +0200
-+++ qp10.2/src/xqp/xqp.cc 2020-03-21 14:08:16.842059351 +0100
-@@ -167,7 +167,7 @@
-
- void Xqp::send_cmd_to_qp(QString cmd)
- {
-- write(qp_stdin, cmd.toAscii(), cmd.length());
-+ write(qp_stdin, cmd.toLatin1(), cmd.length());
- }
-
-
-diff -ur qp10.2.orig/src/xqp/xqp.pro qp10.2/src/xqp/xqp.pro
---- qp10.2.orig/src/xqp/xqp.pro 2008-07-09 07:32:37.000000000 +0200
-+++ qp10.2/src/xqp/xqp.pro 2020-03-21 14:08:16.842059351 +0100
-@@ -4,6 +4,7 @@
-
- TEMPLATE = app
- INCLUDEPATH += .
-+QT += widgets
-
- # Input
- HEADERS += interact.h qpconfig.h qthelp.h term.h xqp.h xqpqueries.h
diff --git a/dev-lang/qu-prolog/files/qu-prolog-10.1-qt5.patch b/dev-lang/qu-prolog/files/qu-prolog-10.x-qt5.patch
similarity index 100%
rename from dev-lang/qu-prolog/files/qu-prolog-10.1-qt5.patch
rename to dev-lang/qu-prolog/files/qu-prolog-10.x-qt5.patch
diff --git a/dev-lang/qu-prolog/qu-prolog-10.1.ebuild b/dev-lang/qu-prolog/qu-prolog-10.1.ebuild
index df4cb97f00be..66036b4f69a1 100644
--- a/dev-lang/qu-prolog/qu-prolog-10.1.ebuild
+++ b/dev-lang/qu-prolog/qu-prolog-10.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -32,7 +32,7 @@ DEPEND="${RDEPEND}
S="${WORKDIR}"/${MY_P}
src_prepare() {
- epatch "${FILESDIR}"/${P}-qt5.patch
+ epatch "${FILESDIR}"/${PN}-10.x-qt5.patch
eapply_user
}
diff --git a/dev-lang/qu-prolog/qu-prolog-10.2.ebuild b/dev-lang/qu-prolog/qu-prolog-10.2.ebuild
index 4f85be09a082..d7dbcab7d77c 100644
--- a/dev-lang/qu-prolog/qu-prolog-10.2.ebuild
+++ b/dev-lang/qu-prolog/qu-prolog-10.2.ebuild
@@ -32,7 +32,7 @@ DEPEND="${RDEPEND}
S="${WORKDIR}"/${MY_P}
src_prepare() {
- epatch "${FILESDIR}"/${P}-qt5.patch
+ epatch "${FILESDIR}"/${PN}-10.x-qt5.patch
eapply_user
}
diff --git a/dev-lang/qu-prolog/qu-prolog-10.3.ebuild b/dev-lang/qu-prolog/qu-prolog-10.3.ebuild
new file mode 100644
index 000000000000..c6f3783e7484
--- /dev/null
+++ b/dev-lang/qu-prolog/qu-prolog-10.3.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit eutils multilib qmake-utils
+
+MY_P=qp${PV}
+
+DESCRIPTION="Extended Prolog supporting quantifiers, object-variables and substitutions"
+HOMEPAGE="http://www.itee.uq.edu.au/~pjr/HomePages/QuPrologHome.html"
+SRC_URI="http://www.itee.uq.edu.au/~pjr/HomePages/QPFiles/${MY_P}.tar.gz"
+
+LICENSE="Apache-2.0 GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug doc examples pedro qt5 readline threads"
+
+RDEPEND="
+ !dev-util/mpatch
+ !dev-util/rej
+ !games-rpg/kqlives
+ qt5? (
+ dev-qt/qtwidgets:5
+ dev-qt/qtgui:5
+ )
+ pedro? ( net-misc/pedro )
+ readline? ( app-misc/rlwrap )"
+DEPEND="${RDEPEND}
+ dev-lang/perl"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ eapply "${FILESDIR}"/${PN}-10.x-qt5.patch
+ eapply_user
+}
+
+src_configure() {
+ econf \
+ --libdir=/usr/$(get_libdir) \
+ $(use_enable debug) \
+ $(use_enable threads multiple-threads)
+
+ if use qt5; then
+ cd "${S}"/src/xqp || die
+ eqmake5 xqp.pro
+ fi
+}
+
+src_compile() {
+ emake OPTIMISATION="${CXXFLAGS}"
+
+ if use qt5; then
+ cd "${S}"/src/xqp || die
+ emake
+ fi
+}
+
+src_install() {
+ sed \
+ -e "s|${S}|/usr/$(get_libdir)/qu-prolog|g" \
+ -i bin/qc bin/qc1.qup bin/qecat bin/qg bin/qp || die
+
+ dobin bin/{qc,qecat,qp,kq}
+
+ use qt5 && dobin src/xqp/xqp
+
+ into /usr/$(get_libdir)/${PN}
+ dobin bin/{qa,qc1.qup,qdeal,qem,qg,ql,qppp}
+
+ insinto /usr/$(get_libdir)/${PN}/bin
+ doins bin/rl_commands
+ doins bin/{qc1.qup,qecat,qg,qp}.qx
+
+ insinto /usr/$(get_libdir)/${PN}/library
+ doins prolog/library/*.qo
+
+ insinto /usr/$(get_libdir)/${PN}/compiler
+ doins prolog/compiler/*.qo
+
+ doman doc/man/man1/*.1
+
+ dodoc README
+
+ if use doc ; then
+ docinto reference-manual
+ dodoc doc/manual/*.html
+ docinto user-guide
+ dodoc doc/user/main.pdf
+ fi
+
+ if use examples ; then
+ docinto examples
+ newdoc examples/README README.examples
+ dodoc examples/*.ql
+ fi
+}
diff --git a/dev-lang/swi-prolog/Manifest b/dev-lang/swi-prolog/Manifest
index 1dd3d71ac2cc..ab240ccc1501 100644
--- a/dev-lang/swi-prolog/Manifest
+++ b/dev-lang/swi-prolog/Manifest
@@ -3,3 +3,4 @@ DIST swipl-8.1.29.tar.gz 10902999 BLAKE2B 2163cbe4ce772fc0ba8dc961aabf5d3940e0b7
DIST swipl-8.1.30.tar.gz 10921576 BLAKE2B ce163c7600554e5a2f62a75c4fc17444c115adda96527068f6ee707f390c9383e8e2f7a24cf493903edd895fd5ece186b7645cad50d44805d57617c7182ba120 SHA512 1b8be8d4f987bb4ce4e3ea82ab02c0e89f2fba68818a15bf2b86593ba53724005cf617f69e41a4394009dcd0abda84103cba4d4bb3ae562b29d942d0f55cad9a
DIST swipl-8.1.31.tar.gz 10949562 BLAKE2B 60a4dd1da1cce309f45e557b25d7fa384ac0d75bf819b5e49d8303cae260d6576b01adb9c26bd7496962ae64a3b012c146408f8adaf6a253c526d50f5ed6b74c SHA512 629dd038fac868b0a2bcf71807ff6e795fd9c83a21358ef679b27bde8197b6f0aaf588a033720db9b1dd88c27dfeb0a42a13bc04e938f504524b48fa34891f1d
DIST swipl-8.1.32.tar.gz 10959244 BLAKE2B d67a1f675d70862df4afa103b118d88750ee5937920dd7ecbc02773ddc1c4762a4d7d8afc7e822b5989cbcdd2feb0980d150c59b67dc129873619cbb40721564 SHA512 d0fbfe85b375bdba2a585b609c1a66cbaca50081d0946803a43b10813f4d7b6e138b644632dde7f8ac06f590f2de9aa3dbc927a128f105c1c3547ac6ae9a9c25
+DIST swipl-8.2.0.tar.gz 10955744 BLAKE2B 3f1a534a967c86054596fe8ec5fda41ae2ab09d5617de2082f549211dec39674c2d53a210e697a9399be6061f7cea1f0fb241243c9c6226e64aa4ab22c990c85 SHA512 aa0d5e8e8c35e3ff1b6827c9a1ea53de44fa71698b98c974c9e65f2071545d0b71fba7f897327db38791f3cb706072c5dffdb46b4865cc26b9b25ad97522de4b
diff --git a/dev-lang/swi-prolog/swi-prolog-8.2.0.ebuild b/dev-lang/swi-prolog/swi-prolog-8.2.0.ebuild
new file mode 100644
index 000000000000..f1cf278d9e4e
--- /dev/null
+++ b/dev-lang/swi-prolog/swi-prolog-8.2.0.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-utils eutils flag-o-matic multilib
+
+PATCHSET_VER="0"
+
+DESCRIPTION="versatile implementation of the Prolog programming language"
+HOMEPAGE="http://www.swi-prolog.org/"
+SRC_URI="http://www.swi-prolog.org/download/stable/src/swipl-${PV}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="archive berkdb debug doc +gmp java +libedit libressl minimal odbc pcre qt5 readline ssl test uuid X yaml"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-libs/ncurses:=
+ sys-libs/zlib
+ archive? ( app-arch/libarchive )
+ berkdb? ( >=sys-libs/db-4:= )
+ odbc? ( dev-db/unixODBC )
+ pcre? ( dev-libs/libpcre )
+ readline? ( sys-libs/readline:= )
+ libedit? ( dev-libs/libedit )
+ gmp? ( dev-libs/gmp:0 )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+ )
+ java? ( >=virtual/jdk-1.7:= )
+ uuid? ( dev-libs/ossp-uuid )
+ qt5? (
+ dev-qt/qtwidgets:5
+ dev-qt/qtgui:5
+ )
+ X? (
+ virtual/jpeg:0
+ x11-libs/libX11
+ x11-libs/libXft
+ x11-libs/libXinerama
+ x11-libs/libXpm
+ x11-libs/libXt
+ x11-libs/libICE
+ x11-libs/libSM )
+ yaml? ( dev-libs/libyaml )"
+
+DEPEND="${RDEPEND}
+ X? ( x11-base/xorg-proto )
+ java? ( test? ( =dev-java/junit-3.8* ) )"
+
+S="${WORKDIR}/swipl-${PV}"
+BUILD_DIR="${S}/build"
+CMAKE_USE_DIR="${S}"
+
+src_prepare() {
+ if [[ -d "${WORKDIR}"/${PV} ]] ; then
+ eapply "${WORKDIR}"/${PV}
+ fi
+ eapply_user
+
+ sed -i -e "s|\(SWIPL_INSTALL_PREFIX\) lib/.*)|\1 $(get_libdir)/swipl)|" CMakeLists.txt || die
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing
+ use debug && append-flags -DO_DEBUG
+
+ mycmakeargs=(
+ -DSWIPL_INSTALL_PREFIX=$(get_libdir)/swipl
+ -DUSE_GMP=$(usex gmp)
+ -DINSTALL_DOCUMENTATION=$(use doc && usex archive)
+ -DSWIPL_PACKAGES_BASIC=$(usex !minimal)
+ -DSWIPL_PACKAGES_ARCHIVE=$(usex archive)
+ -DSWIPL_PACKAGES_ODBC=$(usex odbc)
+ -DSWIPL_PACKAGES_BDB=$(usex berkdb)
+ -DSWIPL_PACKAGES_PCRE=$(usex pcre)
+ -DSWIPL_PACKAGES_YAML=$(usex yaml)
+ -DSWIPL_PACKAGES_SSL=$(usex ssl)
+ -DSWIPL_PACKAGES_JAVA=$(usex java)
+ -DSWIPL_PACKAGES_QT=$(usex qt5)
+ -DSWIPL_PACKAGES_X=$(usex X)
+ -DSWIPL_PACKAGES_TERM=$(if use libedit || use readline; then echo yes; else echo no; fi)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ XDG_CONFIG_DIRS="${HOME}" \
+ XDG_DATA_DIRS="${HOME}" \
+ cmake-utils_src_compile
+}
+
+src_test() {
+ USE_PUBLIC_NETWORK_TESTS=false \
+ USE_ODBC_TESTS=false \
+ cmake-utils_src_test -V
+}
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz
index a58e2a125da9..93f9617f80bb 100644
Binary files a/dev-libs/Manifest.gz and b/dev-libs/Manifest.gz differ
diff --git a/dev-libs/check/check-0.14.0-r2.ebuild b/dev-libs/check/check-0.14.0-r2.ebuild
index e104b81ce89c..565a288bac27 100644
--- a/dev-libs/check/check-0.14.0-r2.ebuild
+++ b/dev-libs/check/check-0.14.0-r2.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/lib${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="doc subunit test"
RESTRICT="!test? ( test )"
diff --git a/dev-libs/check/check-0.14.0.ebuild b/dev-libs/check/check-0.14.0.ebuild
deleted file mode 100644
index 40aa0e80af0f..000000000000
--- a/dev-libs/check/check-0.14.0.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools multilib-minimal
-
-DESCRIPTION="A unit test framework for C"
-HOMEPAGE="https://libcheck.github.io/check/"
-SRC_URI="https://github.com/lib${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-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-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc static-libs subunit test"
-
-RESTRICT="!test? ( test )"
-
-RDEPEND="subunit? ( dev-python/subunit[${MULTILIB_USEDEP}] )"
-DEPEND="${RDEPEND}
- sys-apps/texinfo"
-BDEPEND="doc? ( app-doc/doxygen )"
-
-PATCHES=(
- "${FILESDIR}"/check-0.12.0-fp.patch
- "${FILESDIR}"/check-0.14-xfail-tests.patch
-)
-
-src_prepare() {
- default
- eautoreconf
-}
-
-multilib_src_configure() {
- local myeconfargs=(
- $(use_enable doc build-docs)
- $(use_enable subunit)
- $(use_enable test timeout-tests)
- )
- ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
-}
-
-multilib_src_compile() {
- default
-}
-
-src_compile() {
- if use doc; then
- cd doc/ || die "Failed to switch directories."
- doxygen "." || die "Failed to run doxygen to generate docs."
- fi
-}
-
-multilib_src_test() {
- # Note: test-phase takes a long time.
- emake -k check
-}
-
-multilib_src_install_all() {
- use doc && local HTML_DOCS=( doc/html/. )
- default
-
- rm -r "${ED}/usr/share/doc/check/" || die "Failed to remove COPYING* files"
- find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die
-}
diff --git a/dev-libs/newt/newt-0.52.21-r1.ebuild b/dev-libs/newt/newt-0.52.21-r1.ebuild
index a3aadea62ece..0e660b1c0512 100644
--- a/dev-libs/newt/newt-0.52.21-r1.ebuild
+++ b/dev-libs/newt/newt-0.52.21-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
+PYTHON_COMPAT=( python3_{6,7,8,9} )
inherit autotools python-r1 toolchain-funcs
diff --git a/dev-libs/tinyxml2/Manifest b/dev-libs/tinyxml2/Manifest
index 57f0230c11be..98d44932bd89 100644
--- a/dev-libs/tinyxml2/Manifest
+++ b/dev-libs/tinyxml2/Manifest
@@ -1 +1,2 @@
DIST tinyxml2-7.1.0.tar.gz 592717 BLAKE2B 5936356d472b8642bebb9f02579e6beda14446d57749f1e7a869ff941a03a5ad30624c4db4b2eaaaca48d7f339e3100fddfd58f96bbcfc22737a23d9c9198c9a SHA512 09d5f37018f79a593ff35e33d4296c9ec643a22e83c0cee4c37949300f86201eee07e9b7e6ba55044d8abb438d5d21b70d5843a96ae4652389bb164047ec31e1
+DIST tinyxml2-8.0.0.tar.gz 593833 BLAKE2B afc21220e28a1c139b1abd89e67f8e64980d2ba9bc6f60a33d435a4a02cb40ecacc27ac28bd9702ac3a435f66764ebb752b597a1b1e178d0b549e366d5b669dd SHA512 bcbb065c2af34ea681ec556377fd22e720b6f5d4caa73f432b1e34e08603a96f2233763f0ec5ae86b9ee71ddbe3062f58d3794cd3a162ce6903435530de0bba6
diff --git a/dev-libs/tinyxml2/tinyxml2-8.0.0.ebuild b/dev-libs/tinyxml2/tinyxml2-8.0.0.ebuild
new file mode 100644
index 000000000000..7dd8bbfaa182
--- /dev/null
+++ b/dev-libs/tinyxml2/tinyxml2-8.0.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+inherit cmake-multilib
+
+DESCRIPTION="A simple, small, efficient, C++ XML parser"
+HOMEPAGE="http://www.grinninglizard.com/tinyxml2/ https://github.com/leethomason/tinyxml2/"
+SRC_URI="https://github.com/leethomason/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ZLIB"
+SLOT="0/8"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+multilib_src_configure() {
+ local mycmakeargs=( -DBUILD_TESTING=$(usex test) )
+ cmake_src_configure
+}
diff --git a/dev-libs/tomsfastmath/tomsfastmath-0.13.1.ebuild b/dev-libs/tomsfastmath/tomsfastmath-0.13.1.ebuild
index 9518b0945ad2..ad32150329de 100644
--- a/dev-libs/tomsfastmath/tomsfastmath-0.13.1.ebuild
+++ b/dev-libs/tomsfastmath/tomsfastmath-0.13.1.ebuild
@@ -17,7 +17,7 @@ LICENSE="Unlicense"
# https://abi-laboratory.pro/index.php?view=timeline&l=tomsfastmath
SLOT="0/1"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~arm64"
PATCHES=(
"${FILESDIR}/${P}-makefile-fix.patch"
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index c556f71c957b..103bdf24118e 100644
Binary files a/dev-python/Manifest.gz and b/dev-python/Manifest.gz differ
diff --git a/dev-python/automat/Manifest b/dev-python/automat/Manifest
index 1cb5e1e7e877..5ed71454031e 100644
--- a/dev-python/automat/Manifest
+++ b/dev-python/automat/Manifest
@@ -1 +1,2 @@
DIST Automat-0.8.0.tar.gz 59687 BLAKE2B 56e4ec76564d321ca9a709c484077a4003eea2842160e226728aaaa4ec6ebc2486482f79cd919bef7bbec8baeee7a34ca2a11d48665bb36c79c5a45a3c97e992 SHA512 2dbd4e784f65b02a8c93fc5f15236df3649d667a9792f6cac929dbac5d971495bdab4825df0fcd6817b9a9f79b7a5d8cfbdf8e4d18605f0761546b31b3091ad7
+DIST Automat-20.2.0.tar.gz 61679 BLAKE2B 9dfb93a0bf0a348d8f7de0796b3e5715947eb84cc0aa507a453f438d2027ae877280ed6d7896192cee46f31c7d1c0eb6cb3dee36e1f13a315071513920c5b6d0 SHA512 715cb5dc087288492e6465a29e7d8502a84fadf451bc3d29da86335ea1c20f8efd9549f0c1eaac8800559dd8001dd73736c3bfacdc6321c83a35d2288d69632c
diff --git a/dev-python/automat/automat-0.8.0-r1.ebuild b/dev-python/automat/automat-0.8.0-r1.ebuild
index 27f988b68f47..d31a2e5ccc38 100644
--- a/dev-python/automat/automat-0.8.0-r1.ebuild
+++ b/dev-python/automat/automat-0.8.0-r1.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python2_7 python3_{6..9} pypy3 )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
diff --git a/dev-python/automat/automat-20.2.0.ebuild b/dev-python/automat/automat-20.2.0.ebuild
new file mode 100644
index 000000000000..d07dff713074
--- /dev/null
+++ b/dev-python/automat/automat-20.2.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python2_7 python3_{6..9} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+MY_PN="A${PN:1}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Self-service finite-state machines for the programmer on the go"
+HOMEPAGE="https://github.com/glyph/automat https://pypi.org/project/Automat/"
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples"
+
+RDEPEND="
+ >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ dev-python/m2r[${PYTHON_USEDEP}]
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}/automat-0.8.0-no-setup-py-m2r-import.patch"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ if use test ; then
+ # Remove since this is upstream benchmarking tests
+ rm -r benchmark || die "FAILED to remove benchmark tests"
+ fi
+
+ # avoid a setuptools_scm dependency
+ sed -r -i "s:use_scm_version=True:version='${PV}': ;
+ s:[\"']setuptools[_-]scm[\"'](,|)::" setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_install_all() {
+ if use examples; then
+ docinto examples
+ dodoc docs/examples/*.py
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ einfo "For additional visualization functionality install these optional dependencies"
+ einfo " >=dev-python/twisted-16.1.1"
+ einfo " media-gfx/graphviz[python]"
+}
diff --git a/dev-python/betamax/betamax-0.8.1.ebuild b/dev-python/betamax/betamax-0.8.1.ebuild
index 4bdaeeb01282..d4fd29f0af6f 100644
--- a/dev-python/betamax/betamax-0.8.1.ebuild
+++ b/dev-python/betamax/betamax-0.8.1.ebuild
@@ -2,7 +2,8 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python{2_7,3_{6,7,8,9}} pypy3 )
inherit distutils-r1
@@ -16,17 +17,28 @@ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ppc64 ~sparc x86"
IUSE="test"
RDEPEND="dev-python/requests[${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
- dev-python/setuptools[${PYTHON_USEDEP}]
+DEPEND="
test? (
+ ${RDEPEND}
$(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' python2_7 pypy)
)"
-# Tests require Internet access
-RESTRICT=test
-
PATCHES=(
"${FILESDIR}/betamax-0.8.1-tests.patch"
)
distutils_enable_tests pytest
+
+src_prepare() {
+ rm tests/integration/test_hooks.py || die
+ rm tests/integration/test_placeholders.py || die
+ sed -e 's:test_records:_&:' \
+ -e 's:test_replaces:_&:' \
+ -e 's:test_replays:_&:' \
+ -e 's:test_creates:_&:' \
+ -i tests/integration/test_record_modes.py || die
+ rm tests/integration/test_unicode.py || die
+ rm tests/regression/test_gzip_compression.py || die
+ rm tests/regression/test_requests_2_11_body_matcher.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/bleach/Manifest b/dev-python/bleach/Manifest
index 30257503a9c5..d0b4bc13f1cf 100644
--- a/dev-python/bleach/Manifest
+++ b/dev-python/bleach/Manifest
@@ -1 +1,2 @@
DIST bleach-3.1.4.tar.gz 177813 BLAKE2B 446740fcb7f2aa137d7353b0fbbebd57db9d571248b67f4d0a6a47baf3581aa3793431f68cf340bc8a0478d21e84aafca17538d069d74657285fdc4a06869586 SHA512 da233794954aad4e63e334d3c3bab9089e7767e0d784b8c51d12d2862ac6ed73ad5122b4d9cfd291ba7d9fc86a4a3b515429d7e383f241a46e3290acefa2ffc6
+DIST bleach-3.1.5.tar.gz 177972 BLAKE2B 6033871f757247f05ee67f66b3596c7a76a9bc5105113206bc8749f9ed103fb6a7c91630540f5f17ddc17e261b24043cc2edcc2562ea7f4cf54774080854de32 SHA512 20db9ab6924a1e884107f30e1059f774b45fd169d3965a61a4ff028e3de17e30be81474d7da89d9275b2173a005c5504a9d11f0e0ca528bf36a9bf08aeed0607
diff --git a/dev-python/bleach/bleach-3.1.5.ebuild b/dev-python/bleach/bleach-3.1.5.ebuild
new file mode 100644
index 000000000000..db2a844f98ff
--- /dev/null
+++ b/dev-python/bleach/bleach-3.1.5.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python2_7 python3_{6..9} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="an easy whitelist-based HTML-sanitizing tool"
+HOMEPAGE="https://github.com/mozilla/bleach https://pypi.org/project/bleach/"
+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 ~s390 ~sparc ~x86"
+IUSE="test"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/html5lib-1.0.1-r1[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/webencodings[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/${P}-py39.patch
+)
+
+src_prepare() {
+ # unbundle unpatched broken html5lib
+ rm -r bleach/_vendor || die
+ sed -i -e 's:bleach\._vendor\.::' \
+ bleach/html5lib_shim.py tests/test_clean.py || die
+
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/bleach/files/bleach-3.1.5-py39.patch b/dev-python/bleach/files/bleach-3.1.5-py39.patch
new file mode 100644
index 000000000000..ce1296236b6d
--- /dev/null
+++ b/dev-python/bleach/files/bleach-3.1.5-py39.patch
@@ -0,0 +1,36 @@
+diff --git a/tests/test_clean.py b/tests/test_clean.py
+index 133cd82..4dcb9f4 100644
+--- a/tests/test_clean.py
++++ b/tests/test_clean.py
+@@ -597,31 +597,16 @@ def test_attributes_list():
+ {'protocols': ['http']},
+ 'valid'
+ ),
+- (
+- 'valid',
+- {'protocols': ['http']},
+- 'valid'
+- ),
+ (
+ 'valid',
+ {'protocols': ['http']},
+ 'valid'
+ ),
+- (
+- 'valid',
+- {'protocols': ['http']},
+- 'valid'
+- ),
+ (
+ 'valid',
+ {'protocols': ['http']},
+ 'valid'
+ ),
+- (
+- 'valid',
+- {'protocols': ['http']},
+- 'valid'
+- ),
+
+ # Disallow implicit http if disallowed
+ (
diff --git a/dev-python/cli_helpers/Manifest b/dev-python/cli_helpers/Manifest
index ab47dcb5b665..ac6947078589 100644
--- a/dev-python/cli_helpers/Manifest
+++ b/dev-python/cli_helpers/Manifest
@@ -1 +1,2 @@
DIST cli_helpers-1.2.1.tar.gz 31104 BLAKE2B ded2b9b7825ddaeb33acf64b65362251f773a4a0a74aec1c79bdd8ef77f8f6953dd8761fd926f7a2b210c69534bee220f88e816dd63277b27db15b400510c9f3 SHA512 299fa4984b7c76e6be0527f040582242a746938f8725b6193895f9bbb835c82078658bbb8d1ea0000c26f3c8d2dad93139fd600e7c8d7c2d89777de27a5b26cf
+DIST cli_helpers-2.0.0.tar.gz 31320 BLAKE2B dbda2c7128ac7a5f21ce9f12f866cffde1be9a4bb422c1233b32d9f346c54a73df5e5ea7734cb64ca13f3aeec7c11678c8090499cb5aa4b6d385c4fbc394f8e9 SHA512 fadee3d356d5a687d2f618801f31d0cd4b6c9a4ea1fad4d5fed087a95c3343ab90622e6c246d9a3bd878bc8324d3e9b3626ed3f1436c5d68698562ff6abec3a5
diff --git a/dev-python/cli_helpers/cli_helpers-2.0.0.ebuild b/dev-python/cli_helpers/cli_helpers-2.0.0.ebuild
new file mode 100644
index 000000000000..0de3c188e8b8
--- /dev/null
+++ b/dev-python/cli_helpers/cli_helpers-2.0.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+inherit distutils-r1
+
+DESCRIPTION="Python helpers for common CLI tasks"
+HOMEPAGE="https://cli-helpers.rtfd.io/"
+SRC_URI="https://github.com/dbcli/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/configobj-5.0.5[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/tabulate-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/terminaltables-3.0.0[${PYTHON_USEDEP}]
+ dev-python/wcwidth[${PYTHON_USEDEP}]
+"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ ${RDEPEND}
+ >=dev-python/mock-2[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ )"
+
+python_test() {
+ pytest -vv || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/constantly/constantly-15.1.0-r1.ebuild b/dev-python/constantly/constantly-15.1.0-r1.ebuild
index 9815b0863868..b0d5fedc7464 100644
--- a/dev-python/constantly/constantly-15.1.0-r1.ebuild
+++ b/dev-python/constantly/constantly-15.1.0-r1.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
+PYTHON_COMPAT=( python2_7 python3_{6..9} )
DISTUTILS_USE_SETUPTOOLS=bdepend
inherit distutils-r1
diff --git a/dev-python/coverage/Manifest b/dev-python/coverage/Manifest
index 23bb7b0dffe9..38894af7959a 100644
--- a/dev-python/coverage/Manifest
+++ b/dev-python/coverage/Manifest
@@ -1,3 +1,4 @@
DIST coverage-4.5.2.tar.gz 384845 BLAKE2B a7b4f249a68e025449d26ef8ee2194b9ce355c979d1f5192a7863a0ab0089f9deb3a8e63a39bef528ed7c58fbcc7cd4bc193fea3a135f5996a6655268a6b7a93 SHA512 0d98c8118648a319ac6f3b4c4c6f1ff8a92085bbe8276dd5504c8df4638933f920d7382d8e6de8e16bff43b62091310e0eab7b7722c6d28c976baedbfae3d03e
DIST coverage-4.5.4.tar.gz 385185 BLAKE2B 9d040bff13cebd1cb7147f15c3ec03bb08648cf801b5b2bb046a6b5bcadb3d3886be8bf0a624d225f25d10a5ca82fe5fb88f55e44e92a0a3285836b837972970 SHA512 ba534e04fe35cbadc4b16735f25c08f579a49a6677ec106680f222f2dfb3d0f1e011d0962f1c2108c375173ac4588bea1619ecda05ff9ba6fd888daddfd27b0e
DIST coverage-5.0.3.tar.gz 679171 BLAKE2B b87b256ecdae0b63ae08ed1aea9ff1f4177ec5da63c18615d66f207c3b7c71da4730432bfbdb66a8b55fa2056016226b09befdfc5d0fae57ccc56f08b2690b38 SHA512 51c648b4529cc84534865ee804bcd3dd35a6dcb23f20feb3c4702025b924de3a010fd8d08238eea926ae1874c5510ff006bc120e10d01db795ea0af6fb82834c
+DIST coverage-5.1.tar.gz 687427 BLAKE2B f4eee548cd6fb58c4a527b9e0ac5ee4133c984358f42ca0c87301f95eb60253a2748ccf9d4e88358941d7897998e68e3c5e70e6dc7387bf5e60eda950f4a679c SHA512 7bd3ca158fe2eab1946c52161fb877623d4ed0382de193aa6eb267443fdda86089ec7aaae518115d6a3b5487fd1400320eb503b9afe83182fb3c3621ccbfb6d7
diff --git a/dev-python/coverage/coverage-4.5.4.ebuild b/dev-python/coverage/coverage-4.5.4.ebuild
index 63581cb813ec..da84a5f4f6fe 100644
--- a/dev-python/coverage/coverage-4.5.4.ebuild
+++ b/dev-python/coverage/coverage-4.5.4.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} pypy3 )
+PYTHON_COMPAT=( python{2_7,3_{6,7,8,9}} pypy3 )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1
diff --git a/dev-python/coverage/coverage-5.1.ebuild b/dev-python/coverage/coverage-5.1.ebuild
new file mode 100644
index 000000000000..b0e701db5f01
--- /dev/null
+++ b/dev-python/coverage/coverage-5.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+DESCRIPTION="Code coverage measurement for Python"
+HOMEPAGE="https://coverage.readthedocs.io/en/latest/ https://pypi.org/project/coverage/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc"
+#IUSE="test"
+# The tests are impossible to appease. Please run them externally
+# via tox. Or fix the ebuild if you have hours of time to spend
+# on something utterly useless.
+RESTRICT="test"
+
+#BDEPEND="
+# test? (
+# dev-python/PyContracts[${PYTHON_USEDEP}]
+# dev-python/flaky[${PYTHON_USEDEP}]
+# dev-python/mock[${PYTHON_USEDEP}]
+# >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}]
+# )
+#"
+
+src_prepare() {
+ # avoid the dep on xdist, run tests verbosely
+ sed -i -e '/^addopts/s:-n3:-v:' setup.cfg || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ if [[ ${EPYTHON} == python2.7 ]]; then
+ local CFLAGS="${CFLAGS} -fno-strict-aliasing"
+ export CFLAGS
+ fi
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ distutils_install_for_testing
+ local bindir=${TEST_DIR}/scripts
+
+ pushd tests/eggsrc >/dev/null || die
+ distutils_install_for_testing
+ popd >/dev/null || die
+
+ "${EPYTHON}" igor.py zip_mods || die
+ PATH="${bindir}:${PATH}" "${EPYTHON}" igor.py test_with_tracer py || die
+
+ # No C extensions under pypy
+ if [[ ${EPYTHON} != pypy* ]]; then
+ cp -l -- "${TEST_DIR}"/lib/*/coverage/*.so coverage/ || die
+ PATH="${bindir}:${PATH}" "${EPYTHON}" igor.py test_with_tracer c || die
+ fi
+
+ # clean up leftover "egg1" directory
+ rm -rf build/lib/egg1 || die
+}
diff --git a/dev-python/docutils/docutils-0.16.ebuild b/dev-python/docutils/docutils-0.16.ebuild
index 462d023f8a46..2e88fd1d63a1 100644
--- a/dev-python/docutils/docutils-0.16.ebuild
+++ b/dev-python/docutils/docutils-0.16.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} pypy3 )
+PYTHON_COMPAT=( python{2_7,3_{6,7,8,9}} pypy3 )
inherit distutils-r1
diff --git a/dev-python/elementpath/elementpath-1.4.5.ebuild b/dev-python/elementpath/elementpath-1.4.5.ebuild
index dd056a9406a4..514f9ea85824 100644
--- a/dev-python/elementpath/elementpath-1.4.5.ebuild
+++ b/dev-python/elementpath/elementpath-1.4.5.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/entrypoints/entrypoints-0.3-r1.ebuild b/dev-python/entrypoints/entrypoints-0.3-r1.ebuild
index b99df4226a9d..b2cf6654d153 100644
--- a/dev-python/entrypoints/entrypoints-0.3-r1.ebuild
+++ b/dev-python/entrypoints/entrypoints-0.3-r1.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8}} )
+PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8,9}} )
inherit distutils-r1
diff --git a/dev-python/hpack/hpack-3.0.0.ebuild b/dev-python/hpack/hpack-3.0.0.ebuild
index de96e1d0134f..3a62a22097ce 100644
--- a/dev-python/hpack/hpack-3.0.0.ebuild
+++ b/dev-python/hpack/hpack-3.0.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=6
-PYTHON_COMPAT=( python2_7 python3_{6,7,8})
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9})
inherit distutils-r1
diff --git a/dev-python/httplib2/Manifest b/dev-python/httplib2/Manifest
index 1ff320cbd08f..6fba9dc0853a 100644
--- a/dev-python/httplib2/Manifest
+++ b/dev-python/httplib2/Manifest
@@ -1,2 +1,3 @@
DIST httplib2-0.13.0.tar.gz 219494 BLAKE2B 5bb46582b9962266c9b431be7d323720f780075d6c60527e29c45415a001fc671b4bac95912f023e198250013a3b5a2442c02fa3284abba19bb3828bbc96ddb6 SHA512 b447531f18eb7d288cce9b1ab4b59c4302bd8db8eb095a102f9d730cb49644a1dc531ca007bb9c9a7321c9876ec0ce953317561fc94a51b02bcb749d2de1fa83
DIST httplib2-0.17.0.tar.gz 220694 BLAKE2B 9e9a3c0e3fa13dfc2b58331ba1b52f77ebb8642126994125595c344e19c2e0a430ca556a213938f5f9da1aea69f1cc30e1c89ccf2c64c2389641973f89aa8f4e SHA512 8724e5784990e7315762e5f8333197d6f6820aa6cc66aebbeb981ccedb57e35fa998e623d7e0cd8fcb18178895bc73b16bdf015c90d2adf208d6d5320f3551bb
+DIST httplib2-0.18.1.tar.gz 262930 BLAKE2B d8130dfbbee71dae1319a8a65fb2ae96d667bba08cfc586c0a9239d6bf6cb475fbd4548d6b5276b8001a02417eebff4a7565024d43c630b8ed51e467cdd3de71 SHA512 a1bb527279bdc92fb75bffebc317ff549bb6efb678580cbe40d187921b7ace66b1a5bc1d98bdf065ec5667fe69632da086b0eb201ff911497324fd817bfe1b7a
diff --git a/dev-python/httplib2/httplib2-0.18.1.ebuild b/dev-python/httplib2/httplib2-0.18.1.ebuild
new file mode 100644
index 000000000000..a88d198375f7
--- /dev/null
+++ b/dev-python/httplib2/httplib2-0.18.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{6..9} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A comprehensive HTTP client library"
+HOMEPAGE="https://pypi.org/project/httplib2/ https://github.com/jcgregorio/httplib2"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE=""
+
+DEPEND=""
+RDEPEND="app-misc/ca-certificates"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.12.1-use-system-cacerts.patch )
+
+src_prepare() {
+ sed -i -e '/--cov/d' setup.cfg || die
+
+ # broken by using system certificates
+ sed -e 's:test_certs_file_from_builtin:_&:' \
+ -e 's:test_certs_file_from_environment:_&:' \
+ -e 's:test_with_certifi_removed_from_modules:_&:' \
+ -i tests/test_cacerts_from_env.py || die
+ # broken by new PySocks, probably
+ sed -e 's:test_server_not_found_error_is_raised_for_invalid_hostname:_&:' \
+ -e 's:test_socks5_auth:_&:' \
+ -i tests/test_proxy.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # tests in python* are replaced by tests/
+ # upstream fails at cleaning up stuff
+ pytest -vv tests || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/hyper-h2/hyper-h2-3.2.0.ebuild b/dev-python/hyper-h2/hyper-h2-3.2.0.ebuild
index c77d49b5bd36..cb7769975da4 100644
--- a/dev-python/hyper-h2/hyper-h2-3.2.0.ebuild
+++ b/dev-python/hyper-h2/hyper-h2-3.2.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} )
inherit distutils-r1
diff --git a/dev-python/hyperframe/hyperframe-5.2.0.ebuild b/dev-python/hyperframe/hyperframe-5.2.0.ebuild
index 2384de66b83a..737863453dfa 100644
--- a/dev-python/hyperframe/hyperframe-5.2.0.ebuild
+++ b/dev-python/hyperframe/hyperframe-5.2.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} )
inherit distutils-r1
diff --git a/dev-python/hyperlink/hyperlink-19.0.0.ebuild b/dev-python/hyperlink/hyperlink-19.0.0.ebuild
index 63b5855ee120..4457f97f42f9 100644
--- a/dev-python/hyperlink/hyperlink-19.0.0.ebuild
+++ b/dev-python/hyperlink/hyperlink-19.0.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} )
inherit distutils-r1
@@ -16,7 +16,5 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd6
RDEPEND="
dev-python/idna[${PYTHON_USEDEP}]"
-BDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]"
distutils_enable_tests pytest
diff --git a/dev-python/incremental/incremental-17.5.0.ebuild b/dev-python/incremental/incremental-17.5.0.ebuild
index 7b21e8749522..4ef2d97ce5f4 100644
--- a/dev-python/incremental/incremental-17.5.0.ebuild
+++ b/dev-python/incremental/incremental-17.5.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8})
+PYTHON_COMPAT=( python2_7 python3_{6..9} )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
diff --git a/dev-python/jaraco-classes/jaraco-classes-3.1.0.ebuild b/dev-python/jaraco-classes/jaraco-classes-3.1.0.ebuild
index b9b5feb71b9d..360b3c03b645 100644
--- a/dev-python/jaraco-classes/jaraco-classes-3.1.0.ebuild
+++ b/dev-python/jaraco-classes/jaraco-classes-3.1.0.ebuild
@@ -4,7 +4,7 @@
EAPI=7
# Tests fail with pypy
-PYTHON_COMPAT=( pypy3 python3_{6,7,8} )
+PYTHON_COMPAT=( pypy3 python3_{6,7,8,9} )
inherit distutils-r1
diff --git a/dev-python/jaraco-envs/Manifest b/dev-python/jaraco-envs/Manifest
index 5183167997a3..f46669ff8fc1 100644
--- a/dev-python/jaraco-envs/Manifest
+++ b/dev-python/jaraco-envs/Manifest
@@ -1 +1,2 @@
DIST jaraco-envs-1.0.1.tar.gz 8133 BLAKE2B 05ec6b0ea7532dcf6efe32fe7d1d6a1346d60294ed09743a6f7a47599406bb798f1250525b241aa24b971849f485f89440a56e8ca6b94b2f6847c48aab281be8 SHA512 df5aa3fe06be5091745697cb5f9dda6110fa60e1330515dddbb3e8441eb2232ba1036cfaef7ac8f054958c1a890601330b04b81a0887c4ebc6b41f29335df76b
+DIST jaraco.envs-2.0.0.tar.gz 10018 BLAKE2B 8ad47fb7cb8f68081bba0e83368fe3a2f069130153b78be375a7a4543cf85e00ca1e365f9fb5a76d54f771879e87ff4737fe2991a9c520a9f86f21cf5d9aa8ce SHA512 f121c25ecce75beece7ed7218e69616f7cec6e493f9734b8ce040368d0fedc1ca4d7d343ba41c1367451a744f28ed98d9d2f3abc4610bfa8709fc29480c5ccbd
diff --git a/dev-python/jaraco-envs/jaraco-envs-1.0.1.ebuild b/dev-python/jaraco-envs/jaraco-envs-1.0.1.ebuild
index 19150c3ae89d..17dd0999bac8 100644
--- a/dev-python/jaraco-envs/jaraco-envs-1.0.1.ebuild
+++ b/dev-python/jaraco-envs/jaraco-envs-1.0.1.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
inherit distutils-r1
MY_PN="${PN//-/.}"
diff --git a/dev-python/jaraco-envs/jaraco-envs-2.0.0.ebuild b/dev-python/jaraco-envs/jaraco-envs-2.0.0.ebuild
new file mode 100644
index 000000000000..3d3446b9761a
--- /dev/null
+++ b/dev-python/jaraco-envs/jaraco-envs-2.0.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
+inherit distutils-r1
+
+MY_PN="${PN//-/.}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Classes for orchestrating Python (virtual) environments."
+HOMEPAGE="https://github.com/jaraco/jaraco.envs"
+SRC_URI="mirror://pypi/${MY_P::1}/${MY_PN}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~sparc ~x86"
+
+RDEPEND="dev-python/namespace-jaraco[${PYTHON_USEDEP}]
+ dev-python/path-py[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/contextlib2[${PYTHON_USEDEP}]' 'python3_[67]')"
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]"
+
+# there are no actual tests, just flake8 etc
+RESTRICT="test"
+
+python_install() {
+ rm "${BUILD_DIR}"/lib/jaraco/__init__.py || die
+ distutils-r1_python_install --skip-build
+}
diff --git a/dev-python/jaraco-functools/jaraco-functools-3.0.1.ebuild b/dev-python/jaraco-functools/jaraco-functools-3.0.1.ebuild
index d4b3d6ee6cf3..b997d09613d0 100644
--- a/dev-python/jaraco-functools/jaraco-functools-3.0.1.ebuild
+++ b/dev-python/jaraco-functools/jaraco-functools-3.0.1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( pypy3 python3_{6,7,8} )
+PYTHON_COMPAT=( pypy3 python3_{6,7,8,9} )
# [options.entry_points] is present in setup.cfg but it is empty
DISTUTILS_USE_SETUPTOOLS=manual
diff --git a/dev-python/jeepney/jeepney-0.4.3.ebuild b/dev-python/jeepney/jeepney-0.4.3.ebuild
index c3bfa612cbcb..56491b219744 100644
--- a/dev-python/jeepney/jeepney-0.4.3.ebuild
+++ b/dev-python/jeepney/jeepney-0.4.3.ebuild
@@ -3,7 +3,8 @@
EAPI=7
-PYTHON_COMPAT=( pypy3 python3_{6,7,8} )
+DISTUTILS_USE_SETUPTOOLS=no
+PYTHON_COMPAT=( pypy3 python3_{6,7,8,9} )
inherit distutils-r1
@@ -17,7 +18,7 @@ KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="examples"
BDEPEND="
- test? ( dev-python/testpath[${PYTHON_USEDEP}] )
+ test? ( dev-python/testpath[${PYTHON_USEDEP}] )
"
distutils_enable_tests pytest
diff --git a/dev-python/keyring/Manifest b/dev-python/keyring/Manifest
index ddf875dc99e0..3ff4aab4a973 100644
--- a/dev-python/keyring/Manifest
+++ b/dev-python/keyring/Manifest
@@ -1 +1,2 @@
DIST keyring-19.3.0.tar.gz 43587 BLAKE2B a1003aa55ac48f39e84431c50fe3e24e1da76a0db177eed08bd2c2110b78d10cbfcf7188519435732be68452a0318119cca1563168410b16fc529a3a7e98125c SHA512 b1d26f665203b11712ef91057ecd78cce58b35038b259605c42997283f6c41449baf242ecf43510b29598559b8aecf733eb66be6e0c439564256f40eb0f6982c
+DIST keyring-21.2.1.tar.gz 45535 BLAKE2B b276f5b973c418794561e0d0872761847d4cb81531dde61b75439c73039f49ffc8abf679d622a9381bc6663ffc452c8b6aabc0a4c8e4cfe5ad1c63566b78082d SHA512 35869e37b234d15799907f0efd0193ab3eb9c0799a6da2d843fdad24212b4ab983658b32bd8b09b658174dcb1ddb6d70a85d0af95730d34d8c571f2ecc9a7c8b
diff --git a/dev-python/keyring/keyring-19.3.0.ebuild b/dev-python/keyring/keyring-19.3.0.ebuild
index d9dbd7b1f35a..448afd7a7d74 100644
--- a/dev-python/keyring/keyring-19.3.0.ebuild
+++ b/dev-python/keyring/keyring-19.3.0.ebuild
@@ -3,7 +3,8 @@
EAPI=7
-PYTHON_COMPAT=( pypy3 python3_{6,7,8} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( pypy3 python3_{6,7,8,9} )
inherit distutils-r1
@@ -14,19 +15,13 @@ SRC_URI="https://github.com/jaraco/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
SLOT="0"
LICENSE="PSF-2"
KEYWORDS="~alpha amd64 ~arm ~arm64 x86"
-IUSE="doc test"
+IUSE="doc"
RDEPEND="
dev-python/secretstorage[${PYTHON_USEDEP}]
dev-python/entrypoints[${PYTHON_USEDEP}]
$(python_gen_cond_dep 'dev-python/importlib_metadata[${PYTHON_USEDEP}]' pypy3 python3_{5,6,7})
"
-BDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- test? ( ${RDEPEND} )
-"
-
-RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/keyring-19.1.0-tests.patch"
diff --git a/dev-python/keyring/keyring-21.2.1.ebuild b/dev-python/keyring/keyring-21.2.1.ebuild
new file mode 100644
index 000000000000..1e3cfa450ea7
--- /dev/null
+++ b/dev-python/keyring/keyring-21.2.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( pypy3 python3_{6,7,8,9} )
+
+inherit distutils-r1
+
+DESCRIPTION="Provides access to the system keyring service"
+HOMEPAGE="https://github.com/jaraco/keyring"
+SRC_URI="https://github.com/jaraco/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+LICENSE="PSF-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~x86"
+IUSE="doc"
+
+RDEPEND="
+ dev-python/secretstorage[${PYTHON_USEDEP}]
+ dev-python/entrypoints[${PYTHON_USEDEP}]
+ dev-python/jeepney[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/importlib_metadata[${PYTHON_USEDEP}]
+ ' pypy3 python3_{5,6,7})
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+# "${FILESDIR}/keyring-19.1.0-tests.patch"
+ # https://github.com/jaraco/keyring/commit/411204df606bdf02c99f3360ec033e3c235d5f67
+# "${FILESDIR}/keyring-19.3.0-tests.patch"
+)
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/jaraco-packaging \
+ dev-python/rst-linker
+
+python_prepare_all() {
+ sed -i -e 's:--flake8 --black --cov::' pytest.ini || die
+ # relies on cpython's gc behavior
+ sed -i -e 's:test_traceback_not_referenced:_&:' \
+ tests/test_errors.py || die
+
+ rm tests/backends/test_kwallet.py || die
+
+ distutils-r1_python_prepare_all
+
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
diff --git a/dev-python/m2r/m2r-0.2.1.ebuild b/dev-python/m2r/m2r-0.2.1.ebuild
index f0824021a453..524fde1d1afb 100644
--- a/dev-python/m2r/m2r-0.2.1.ebuild
+++ b/dev-python/m2r/m2r-0.2.1.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python2_7 python3_{6..9} pypy3 )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1
diff --git a/dev-python/mistune/mistune-0.8.4.ebuild b/dev-python/mistune/mistune-0.8.4.ebuild
index f667b37ae194..63b21c2482ff 100644
--- a/dev-python/mistune/mistune-0.8.4.ebuild
+++ b/dev-python/mistune/mistune-0.8.4.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} pypy3 )
+PYTHON_COMPAT=( python{2_7,3_{6,7,8,9}} pypy3 )
inherit distutils-r1
@@ -15,9 +15,4 @@ SLOT="0"
LICENSE="BSD"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
-BDEPEND="
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
-"
-
distutils_enable_tests nose
diff --git a/dev-python/munch/munch-2.5.0-r1.ebuild b/dev-python/munch/munch-2.5.0-r1.ebuild
index 5ca61b94eef8..7b59d900eacf 100644
--- a/dev-python/munch/munch-2.5.0-r1.ebuild
+++ b/dev-python/munch/munch-2.5.0-r1.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
inherit distutils-r1
@@ -15,7 +15,6 @@ KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~sparc ~x86"
SLOT="0"
BDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]
test? ( >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}] )
"
diff --git a/dev-python/namespace-jaraco/namespace-jaraco-1.ebuild b/dev-python/namespace-jaraco/namespace-jaraco-1.ebuild
index 0f9fcee48099..ad4e6536633a 100644
--- a/dev-python/namespace-jaraco/namespace-jaraco-1.ebuild
+++ b/dev-python/namespace-jaraco/namespace-jaraco-1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7}} )
+PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8,9}} )
inherit python-r1
DESCRIPTION="Namespace package declaration for jaraco"
diff --git a/dev-python/namespace-jaraco/namespace-jaraco-2.ebuild b/dev-python/namespace-jaraco/namespace-jaraco-2.ebuild
index 5719f0cd5b48..8277cdf3e768 100644
--- a/dev-python/namespace-jaraco/namespace-jaraco-2.ebuild
+++ b/dev-python/namespace-jaraco/namespace-jaraco-2.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8}} )
+PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8,9}} )
inherit python-r1
DESCRIPTION="Namespace package declaration for jaraco"
diff --git a/dev-python/pathlib2/pathlib2-2.3.5.ebuild b/dev-python/pathlib2/pathlib2-2.3.5.ebuild
index e080b52fd1ad..fcfb7cdfd59b 100644
--- a/dev-python/pathlib2/pathlib2-2.3.5.ebuild
+++ b/dev-python/pathlib2/pathlib2-2.3.5.ebuild
@@ -3,7 +3,8 @@
EAPI=7
-PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8}} )
+DISTUTILS_USE_SETUPTOOLS=no
+PYTHON_COMPAT=( pypy3 python{2_7,3_{6,7,8,9}} )
inherit distutils-r1
@@ -18,11 +19,10 @@ IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
- $(python_gen_cond_dep 'dev-python/scandir[${PYTHON_USEDEP}]' -2 )
+ $(python_gen_cond_dep 'dev-python/scandir[${PYTHON_USEDEP}]' -2)
dev-python/six[${PYTHON_USEDEP}]
"
BDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
test? (
${RDEPEND}
$(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' -2)
diff --git a/dev-python/portend/portend-2.6.ebuild b/dev-python/portend/portend-2.6.ebuild
index 4d79fd9e5ec4..3fc08e4c32cd 100644
--- a/dev-python/portend/portend-2.6.ebuild
+++ b/dev-python/portend/portend-2.6.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
inherit distutils-r1
@@ -17,7 +17,6 @@ KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86"
IUSE="test"
RDEPEND=">=dev-python/tempora-1.8[${PYTHON_USEDEP}]"
-BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
distutils_enable_tests pytest
diff --git a/dev-python/priority/priority-1.3.0.ebuild b/dev-python/priority/priority-1.3.0.ebuild
index 5720fc1668f2..5ed8bbaa6c9c 100644
--- a/dev-python/priority/priority-1.3.0.ebuild
+++ b/dev-python/priority/priority-1.3.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=6
-PYTHON_COMPAT=( python2_7 python3_{6,7,8})
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9})
inherit distutils-r1
@@ -17,7 +17,6 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 s390 sparc x86"
DEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
test? ( >=dev-python/hypothesis-3.4.2[${PYTHON_USEDEP}] )
"
diff --git a/dev-python/pydns/pydns-3.2.1.ebuild b/dev-python/pydns/pydns-3.2.1.ebuild
index eb1339ba6054..a3c44a707996 100644
--- a/dev-python/pydns/pydns-3.2.1.ebuild
+++ b/dev-python/pydns/pydns-3.2.1.ebuild
@@ -15,7 +15,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="CNRI"
SLOT="3"
-KEYWORDS="amd64 ~hppa ~ia64 ~ppc sparc x86"
+KEYWORDS="amd64 hppa ~ia64 ~ppc sparc x86"
IUSE="examples"
# Tests require network access
diff --git a/dev-python/pyhamcrest/Manifest b/dev-python/pyhamcrest/Manifest
index d968610eb0d6..935a77e4c4af 100644
--- a/dev-python/pyhamcrest/Manifest
+++ b/dev-python/pyhamcrest/Manifest
@@ -1 +1,3 @@
+DIST PyHamcrest-1.10.1.gh.tar.gz 59019 BLAKE2B 1a090533ea8fe2dff9ad232b2e6dbf82841c38f3699e57750e2309b06a46e70ae5a9c7d087baf06de53e17323a5e36edee1a01d7a4442374d15b76a7723c2031 SHA512 f7e79f7d26c4c6add042052e451898bbf5adf21b05a234cc62bce890d68f5997693b042a9daf136f7026040a8ab7bf28b829288417b947973dcb959bf613a37b
DIST PyHamcrest-1.9.0.gh.tar.gz 57650 BLAKE2B c497688f03ec3b072d8ab076fc096a442d5cbbd94493eae57779879ccb6f281477aeeb7f7a67e539442010e60194f9f04a6deddd1d2267e9743742b45433f124 SHA512 3a878637ed5138365416c170871a63640f089047b723c7ec8db893dd716c0b1cdad16a98584700405693b954af7d4868a8543d1a3fc58ded22b493c8c61661b4
+DIST PyHamcrest-2.0.2.gh.tar.gz 55491 BLAKE2B 749f227b8cb1180a64e24cdbf97b6f610b9871b21215a761642d19fdd43ad8e175718b12cfb0de2cdb5c6ae8c3c5271e04b7c3b489e01ac689769e24202ece56 SHA512 d6e510ca1e6533b425b424d411e23c4ee2a6bad2d635695e4e68f991fbdc57269c3a433361e431cb5dda7891278951d5de7a05f5c1c167714eecdaf74644d1c8
diff --git a/dev-python/pyhamcrest/metadata.xml b/dev-python/pyhamcrest/metadata.xml
index c9e22b107cd4..bb75201b6495 100644
--- a/dev-python/pyhamcrest/metadata.xml
+++ b/dev-python/pyhamcrest/metadata.xml
@@ -1,7 +1,10 @@
-
+
+ python@gentoo.org
+ Python
+
PyHamcrest
hamcrest/PyHamcrest
diff --git a/dev-python/pyhamcrest/pyhamcrest-1.10.1.ebuild b/dev-python/pyhamcrest/pyhamcrest-1.10.1.ebuild
new file mode 100644
index 000000000000..85ed0b0e2a84
--- /dev/null
+++ b/dev-python/pyhamcrest/pyhamcrest-1.10.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{6..9} )
+
+inherit distutils-r1
+
+MY_PN="PyHamcrest"
+
+DESCRIPTION="Hamcrest framework for matcher objects"
+HOMEPAGE="https://github.com/hamcrest/PyHamcrest"
+SRC_URI="https://github.com/hamcrest/PyHamcrest/archive/V${PV}.tar.gz -> ${MY_PN}-${PV}.gh.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=dev-python/six-1.4[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_sphinx doc \
+ dev-python/sphinx_rtd_theme
+distutils_enable_tests pytest
+
+python_install_all() {
+ use examples && dodoc -r examples
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pyhamcrest/pyhamcrest-1.9.0-r1.ebuild b/dev-python/pyhamcrest/pyhamcrest-1.9.0-r1.ebuild
index 46bbf1b22e5f..6c7080cb324b 100644
--- a/dev-python/pyhamcrest/pyhamcrest-1.9.0-r1.ebuild
+++ b/dev-python/pyhamcrest/pyhamcrest-1.9.0-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=6
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
+PYTHON_COMPAT=( python2_7 python3_{6..9} )
inherit distutils-r1
@@ -21,9 +21,9 @@ IUSE="examples test"
RESTRICT="!test? ( test )"
RDEPEND=">=dev-python/six-1.4[${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}
- dev-python/setuptools[${PYTHON_USEDEP}]
+DEPEND="
test? (
+ ${RDEPEND}
>=dev-python/pytest-2.6[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
)"
@@ -50,7 +50,7 @@ python_prepare_all() {
}
python_test() {
- py.test -vv || die "Tests failed under ${EPYTHON}"
+ pytest -vv || die "Tests failed under ${EPYTHON}"
"${EPYTHON}" tests/object_import.py || die "Tests failed under ${EPYTHON}"
}
diff --git a/dev-python/pyhamcrest/pyhamcrest-2.0.2.ebuild b/dev-python/pyhamcrest/pyhamcrest-2.0.2.ebuild
new file mode 100644
index 000000000000..ec73612b5ef1
--- /dev/null
+++ b/dev-python/pyhamcrest/pyhamcrest-2.0.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6..9} )
+
+inherit distutils-r1
+
+MY_PN="PyHamcrest"
+
+DESCRIPTION="Hamcrest framework for matcher objects"
+HOMEPAGE="https://github.com/hamcrest/PyHamcrest"
+SRC_URI="https://github.com/hamcrest/PyHamcrest/archive/V${PV}.tar.gz -> ${MY_PN}-${PV}.gh.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples"
+
+distutils_enable_sphinx doc \
+ dev-python/sphinx_rtd_theme
+distutils_enable_tests pytest
+
+python_install_all() {
+ use examples && dodoc -r examples
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pyproject2setuppy/pyproject2setuppy-5.ebuild b/dev-python/pyproject2setuppy/pyproject2setuppy-5.ebuild
index 563167554f1a..b8ca661b51cc 100644
--- a/dev-python/pyproject2setuppy/pyproject2setuppy-5.ebuild
+++ b/dev-python/pyproject2setuppy/pyproject2setuppy-5.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=manual
-PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
inherit distutils-r1
diff --git a/dev-python/pyserial/pyserial-3.4.ebuild b/dev-python/pyserial/pyserial-3.4.ebuild
index d1032630f810..1e2985aed603 100644
--- a/dev-python/pyserial/pyserial-3.4.ebuild
+++ b/dev-python/pyserial/pyserial-3.4.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
+PYTHON_COMPAT=( python2_7 python3_{6..9} )
inherit distutils-r1
diff --git a/dev-python/pytest-localserver/pytest-localserver-0.5.0-r1.ebuild b/dev-python/pytest-localserver/pytest-localserver-0.5.0-r1.ebuild
index bdee1047cae3..8bf452f00dfa 100644
--- a/dev-python/pytest-localserver/pytest-localserver-0.5.0-r1.ebuild
+++ b/dev-python/pytest-localserver/pytest-localserver-0.5.0-r1.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
inherit distutils-r1
diff --git a/dev-python/pytest-localserver/pytest-localserver-0.5.0.ebuild b/dev-python/pytest-localserver/pytest-localserver-0.5.0.ebuild
index 2397a128ff90..78b1e4c7523d 100644
--- a/dev-python/pytest-localserver/pytest-localserver-0.5.0.ebuild
+++ b/dev-python/pytest-localserver/pytest-localserver-0.5.0.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} pypy3 )
+PYTHON_COMPAT=( python{2_7,3_{6,7,8,9}} pypy3 )
inherit distutils-r1
diff --git a/dev-python/pytest/files/pytest-4.6.10-timeout.patch b/dev-python/pytest/files/pytest-4.6.10-timeout.patch
new file mode 100644
index 000000000000..5bf9bcdbd8f5
--- /dev/null
+++ b/dev-python/pytest/files/pytest-4.6.10-timeout.patch
@@ -0,0 +1,35 @@
+diff --git a/src/_pytest/pytester.py b/src/_pytest/pytester.py
+index f1d739c99..72406b85d 100644
+--- a/src/_pytest/pytester.py
++++ b/src/_pytest/pytester.py
+@@ -1209,7 +1209,7 @@ class Testdir(object):
+ args = self._getpytestargs() + args
+ return self.run(*args, timeout=timeout)
+
+- def spawn_pytest(self, string, expect_timeout=10.0):
++ def spawn_pytest(self, string, expect_timeout=60.0):
+ """Run pytest using pexpect.
+
+ This makes sure to use the right pytest and sets up the temporary
+@@ -1223,7 +1223,7 @@ class Testdir(object):
+ cmd = "%s --basetemp=%s %s" % (invoke, basetemp, string)
+ return self.spawn(cmd, expect_timeout=expect_timeout)
+
+- def spawn(self, cmd, expect_timeout=10.0):
++ def spawn(self, cmd, expect_timeout=60.0):
+ """Run a command using pexpect.
+
+ The pexpect child is returned.
+diff --git a/testing/test_terminal.py b/testing/test_terminal.py
+index 1b2e46c7c..52ba80f46 100644
+--- a/testing/test_terminal.py
++++ b/testing/test_terminal.py
+@@ -138,7 +138,7 @@ class TestTerminal(object):
+ """
+ def test_1():
+ import time
+- time.sleep(20)
++ time.sleep(120)
+ """
+ )
+ child = testdir.spawn_pytest("")
diff --git a/dev-python/pytest/pytest-4.6.10.ebuild b/dev-python/pytest/pytest-4.6.10.ebuild
index 76710136e68b..c8234af1fa7a 100644
--- a/dev-python/pytest/pytest-4.6.10.ebuild
+++ b/dev-python/pytest/pytest-4.6.10.ebuild
@@ -60,6 +60,7 @@ DEPEND="
PATCHES=(
"${FILESDIR}/${PN}-4.5.0-strip-setuptools_scm.patch"
+ "${FILESDIR}/${P}-timeout.patch"
)
python_prepare_all() {
diff --git a/dev-python/pytest/pytest-5.4.2.ebuild b/dev-python/pytest/pytest-5.4.2.ebuild
index b5c05300772f..b33a2dedd9d3 100644
--- a/dev-python/pytest/pytest-5.4.2.ebuild
+++ b/dev-python/pytest/pytest-5.4.2.ebuild
@@ -14,7 +14,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/pyxattr/pyxattr-0.7.1.ebuild b/dev-python/pyxattr/pyxattr-0.7.1.ebuild
index 50c185dfb287..7c3ca1076353 100644
--- a/dev-python/pyxattr/pyxattr-0.7.1.ebuild
+++ b/dev-python/pyxattr/pyxattr-0.7.1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python3_{6..9} pypy3 )
inherit distutils-r1
diff --git a/dev-python/readme_renderer/Manifest b/dev-python/readme_renderer/Manifest
index b46a9b2acc89..54801bda10bf 100644
--- a/dev-python/readme_renderer/Manifest
+++ b/dev-python/readme_renderer/Manifest
@@ -1 +1,2 @@
DIST readme_renderer-25.0.tar.gz 24116 BLAKE2B 978fc6cb9d92e35a618af89996abaeecb4611f0351975af44341198dc26ccdba4c0a4e32c126ce22fdbd77ca1d2dba4e11f70ea814a5084c204f4cd53d95f7d2 SHA512 2decdae26c07824c7148b0d49f58fb585fa4e78f06ea97cd7a1fe2fa4ca17601d255eea4b96dcb384c676bc6b671caa0a1bf51615223cd48081ab18da76944a5
+DIST readme_renderer-26.0.tar.gz 27068 BLAKE2B 7a58d550e792ffcbf6fedbdf0464714ac7c7a0395297d165493167947c733a29ff5cc4dd2a346c4276f52ca0516282b3049f28bdc8eb38717d1ff8d03709084c SHA512 a5e7cfa47257fd3ceaf417cc814226b5aef6aacf72ffb2eeed3e6affa4a09aa1f6c752a8c4311910c258d090d94f03e3f5c2603819f5dceb37440c9bfd9090ea
diff --git a/dev-python/readme_renderer/readme_renderer-25.0.ebuild b/dev-python/readme_renderer/readme_renderer-25.0.ebuild
index 938626a32565..bba087598141 100644
--- a/dev-python/readme_renderer/readme_renderer-25.0.ebuild
+++ b/dev-python/readme_renderer/readme_renderer-25.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} pypy3 )
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
inherit distutils-r1
diff --git a/dev-python/readme_renderer/readme_renderer-26.0.ebuild b/dev-python/readme_renderer/readme_renderer-26.0.ebuild
new file mode 100644
index 000000000000..7f0be18898e0
--- /dev/null
+++ b/dev-python/readme_renderer/readme_renderer-26.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="a library for rendering \"readme\" descriptions for Warehouse"
+HOMEPAGE="https://github.com/pypa/readme_renderer https://pypi.org/project/readme_renderer/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm64 ~hppa ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/bleach-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.13.1[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.5.2[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? ( dev-python/mock[${PYTHON_USEDEP}] )
+"
+
+DOCS=( README.rst )
+
+distutils_enable_tests pytest
diff --git a/dev-python/readthedocs-sphinx-ext/Manifest b/dev-python/readthedocs-sphinx-ext/Manifest
index a8250eca244b..3aef4c5fdc09 100644
--- a/dev-python/readthedocs-sphinx-ext/Manifest
+++ b/dev-python/readthedocs-sphinx-ext/Manifest
@@ -1 +1,2 @@
DIST readthedocs-sphinx-ext-1.0.3.tar.gz 11589 BLAKE2B 9c6ac1bd3baa2a92cbc67d18f5fd6b3f63ce0fe7cc16832ad23940c7b8d85d88f299c8cba6623d0c2b229cbcc43e43ece926aefa01d6a3055ef9c252ddf68dfd SHA512 571336adbb3f6c9077d2530562f5d72092f8df440b282187fca5aaeb2a9c281aa49bc29423e550905696a200f692ebcea5fe6f83e023f64759224697c49e2f03
+DIST readthedocs-sphinx-ext-1.0.4.tar.gz 11686 BLAKE2B 3c188e52682f8c24633f79b9ec0eed7f06c922989f7578f06e0ede0e3844ca019e1905450df8d12150d05f3a82a1103a0786cb2c60dc3551e3e3097849cdc301 SHA512 52f45c26ae934b44a41073a9e77096ea8ed97f2a36ed1ea9b63084be0af58dcff24c6b729cda7a8b631f9fe5f56822ceabdbbd2e11056b44df18212986cb445a
diff --git a/dev-python/readthedocs-sphinx-ext/readthedocs-sphinx-ext-1.0.4.ebuild b/dev-python/readthedocs-sphinx-ext/readthedocs-sphinx-ext-1.0.4.ebuild
new file mode 100644
index 000000000000..e8bb844066b9
--- /dev/null
+++ b/dev-python/readthedocs-sphinx-ext/readthedocs-sphinx-ext-1.0.4.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Code specific for Read the Docs and Sphinx"
+HOMEPAGE="https://github.com/readthedocs/readthedocs-sphinx-ext"
+SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/jinja-2.9[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]"
+PDEPEND="
+ dev-python/sphinx[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? ( ${PDEPEND} )"
+
+# unittest should be sufficient but tests are very verbose, so pytest's
+# output capture is most welcome
+distutils_enable_tests pytest
diff --git a/dev-python/requests-toolbelt/requests-toolbelt-0.9.1.ebuild b/dev-python/requests-toolbelt/requests-toolbelt-0.9.1.ebuild
index f6b8f41d9d89..56521569fd3b 100644
--- a/dev-python/requests-toolbelt/requests-toolbelt-0.9.1.ebuild
+++ b/dev-python/requests-toolbelt/requests-toolbelt-0.9.1.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python{2_7,3_{6,7,8}} pypy3 )
+PYTHON_COMPAT=( python{2_7,3_{6,7,8,9}} pypy3 )
inherit distutils-r1
@@ -17,7 +17,6 @@ IUSE="test"
RDEPEND="
+Date: Mon, 13 Jan 2020 13:54:08 +0100
+Subject: [PATCH 1/2] CramMD5ClientAuthenticator now specifies the digestmod
+ argument to hmac.HMAC constructor explicitly.
+
+---
+ src/twisted/mail/_cred.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/twisted/mail/_cred.py b/src/twisted/mail/_cred.py
+index 9d3646948..43c406f90 100644
+--- a/src/twisted/mail/_cred.py
++++ b/src/twisted/mail/_cred.py
+@@ -8,6 +8,7 @@ Credential managers for L{twisted.mail}.
+ from __future__ import absolute_import, division
+
+ import hmac
++import hashlib
+
+ from zope.interface import implementer
+
+@@ -28,7 +29,7 @@ class CramMD5ClientAuthenticator:
+
+
+ def challengeResponse(self, secret, chal):
+- response = hmac.HMAC(secret, chal).hexdigest().encode('ascii')
++ response = hmac.HMAC(secret, chal, digestmod = hashlib.md5).hexdigest().encode('ascii')
+ return self.user + b' ' + response
+
+
+--
+2.26.2
+
+From 694bc67f3cf7d36a6f512f0b76882e85d0966dd2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Poisson?=
+Date: Sun, 17 Nov 2019 19:48:53 +0100
+Subject: [PATCH 2/2] Fix parsing of namespaced attributes with Python 3.8 in
+ twisted.words.xish.domish.ExpatElementStream
+
+---
+ src/twisted/words/newsfragments/9730.bugfix | 1 +
+ src/twisted/words/test/test_domish.py | 17 +++++++++++++++++
+ src/twisted/words/xish/domish.py | 11 +++++++++--
+ 3 files changed, 27 insertions(+), 2 deletions(-)
+ create mode 100644 src/twisted/words/newsfragments/9730.bugfix
+
+diff --git a/src/twisted/words/newsfragments/9730.bugfix b/src/twisted/words/newsfragments/9730.bugfix
+new file mode 100644
+index 000000000..5c91305c8
+--- /dev/null
++++ b/src/twisted/words/newsfragments/9730.bugfix
+@@ -0,0 +1 @@
++Fixed parsing of streams with Python 3.8 when there are spaces in namespaces or namespaced attributes in twisted.words.xish.domish.ExpatElementStream
+diff --git a/src/twisted/words/test/test_domish.py b/src/twisted/words/test/test_domish.py
+index a8f8fa76b..cd16e3a4d 100644
+--- a/src/twisted/words/test/test_domish.py
++++ b/src/twisted/words/test/test_domish.py
+@@ -350,6 +350,23 @@ class DomishStreamTestsMixin:
+ self.elements[0].attributes, {(" bar baz ", "baz"): "quux"})
+
+
++ def test_attributesWithNamespaces(self):
++ """
++ Attributes with namespace are parsed without Exception.
++ (https://twistedmatrix.com/trac/ticket/9730 regression test)
++ """
++
++ xml = b"""
++ test
++ """
++
++ # with Python 3.8 and without #9730 fix, the following error would
++ # happen at next line:
++ # ``RuntimeError: dictionary keys changed during iteration``
++ self.stream.parse(xml)
++ self.assertEqual(self.elements[0].uri, "http://example.org")
++
++
+ def testChildPrefix(self):
+ xml = b""
+
+diff --git a/src/twisted/words/xish/domish.py b/src/twisted/words/xish/domish.py
+index 2063c410a..fc49285f5 100644
+--- a/src/twisted/words/xish/domish.py
++++ b/src/twisted/words/xish/domish.py
+@@ -807,11 +807,18 @@ class ExpatElementStream:
+ qname = ('', name)
+
+ # Process attributes
++ newAttrs = {}
++ toDelete = []
+ for k, v in attrs.items():
+ if " " in k:
+ aqname = k.rsplit(" ", 1)
+- attrs[(aqname[0], aqname[1])] = v
+- del attrs[k]
++ newAttrs[(aqname[0], aqname[1])] = v
++ toDelete.append(k)
++
++ attrs.update(newAttrs)
++
++ for k in toDelete:
++ del attrs[k]
+
+ # Construct the new element
+ e = Element(qname, self.defaultNsStack[-1], attrs, self.localPrefixes)
+--
+2.26.2
+
diff --git a/dev-python/twisted/files/twisted-19.10.0-py39-b64.patch b/dev-python/twisted/files/twisted-19.10.0-py39-b64.patch
new file mode 100644
index 000000000000..f67d6240558a
--- /dev/null
+++ b/dev-python/twisted/files/twisted-19.10.0-py39-b64.patch
@@ -0,0 +1,165 @@
+From f56133a2e0d7ddf9ee6e43bf9e1d62e970cb0b3a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?=
+Date: Wed, 27 May 2020 13:23:37 +0200
+Subject: [PATCH] Replace base64.*string() functions to fix py3.9 support
+
+Replace base64.decodestring() and .encodestring() functions as they
+were deprecated since Python 3.1 in favor of (equivalent) .decodebytes()
+and .encodebytes(), and were eventually removed in Python 3.9.
+
+While at it, replace most of their uses with base64.b64encode()
+and .b64decode() that are preferable to the former wrt ticket #6446,
+and they do not introduce line breaks that the twisted code usually
+discarded.
+
+Use .decodebytes() and .encodebytes() in DirDBM as it seems to rely
+on the exact presence of newlines, and changing that would break
+backwards compatibility.
+
+Fixes: ticket:6446
+Fixes: ticket:9831
+---
+ src/twisted/conch/scripts/tkconch.py | 2 +-
+ src/twisted/conch/test/test_keys.py | 2 +-
+ src/twisted/mail/pop3.py | 4 ++--
+ src/twisted/mail/test/test_pop3.py | 4 ++--
+ src/twisted/persisted/dirdbm.py | 10 ++++++++--
+ src/twisted/web/http.py | 2 +-
+ src/twisted/web/test/test_http.py | 6 +++---
+ 14 files changed, 18 insertions(+), 12 deletions(-)
+
+diff --git a/src/twisted/conch/scripts/tkconch.py b/src/twisted/conch/scripts/tkconch.py
+index 9c48e8a7f..5e007ebdc 100644
+--- a/src/twisted/conch/scripts/tkconch.py
++++ b/src/twisted/conch/scripts/tkconch.py
+@@ -409,7 +409,7 @@ class SSHClientTransport(transport.SSHClientTransport):
+ "known hosts.\r\n" %
+ (khHost, {b'ssh-dss':'DSA', b'ssh-rsa':'RSA'}[keyType]))
+ with open(os.path.expanduser('~/.ssh/known_hosts'), 'a') as known_hosts:
+- encodedKey = base64.encodestring(pubKey).replace(b'\n', b'')
++ encodedKey = base64.b64encode(pubKey)
+ known_hosts.write('\n%s %s %s' % (khHost, keyType, encodedKey))
+ except:
+ log.deferr()
+diff --git a/src/twisted/conch/test/test_keys.py b/src/twisted/conch/test/test_keys.py
+index 41e49f415..795e7b8d7 100644
+--- a/src/twisted/conch/test/test_keys.py
++++ b/src/twisted/conch/test/test_keys.py
+@@ -352,7 +352,7 @@ SUrCyZXsNh6VXwjs3gKQ
+
+ self.assertRaises(
+ keys.BadKeyError,
+- keys.Key.fromString, data=b'{' + base64.encodestring(sexp) + b'}',
++ keys.Key.fromString, data=b'{' + base64.b64encode(sexp) + b'}',
+ )
+
+
+diff --git a/src/twisted/mail/pop3.py b/src/twisted/mail/pop3.py
+index ffe9714c9..057389e3a 100644
+--- a/src/twisted/mail/pop3.py
++++ b/src/twisted/mail/pop3.py
+@@ -728,7 +728,7 @@ class POP3(basic.LineOnlyReceiver, policies.TimeoutMixin):
+ self._auth = auth()
+ chal = self._auth.getChallenge()
+
+- self.sendLine(b'+ ' + base64.encodestring(chal).rstrip(b'\n'))
++ self.sendLine(b'+ ' + base64.b64encode(chal))
+ self.state = 'AUTH'
+
+
+@@ -747,7 +747,7 @@ class POP3(basic.LineOnlyReceiver, policies.TimeoutMixin):
+ """
+ self.state = "COMMAND"
+ try:
+- parts = base64.decodestring(line).split(None, 1)
++ parts = base64.b64decode(line).split(None, 1)
+ except binascii.Error:
+ self.failResponse(b"Invalid BASE64 encoding")
+ else:
+diff --git a/src/twisted/mail/test/test_pop3.py b/src/twisted/mail/test/test_pop3.py
+index ea513487c..36780d9c9 100644
+--- a/src/twisted/mail/test/test_pop3.py
++++ b/src/twisted/mail/test/test_pop3.py
+@@ -1097,12 +1097,12 @@ class SASLTests(unittest.TestCase):
+
+ p.lineReceived(b"AUTH CRAM-MD5")
+ chal = s.getvalue().splitlines()[-1][2:]
+- chal = base64.decodestring(chal)
++ chal = base64.b64decode(chal)
+ response = hmac.HMAC(b'testpassword', chal,
+ digestmod=md5).hexdigest().encode("ascii")
+
+ p.lineReceived(
+- base64.encodestring(b'testuser ' + response).rstrip(b'\n'))
++ base64.b64encode(b'testuser ' + response))
+ self.assertTrue(p.mbox)
+ self.assertTrue(s.getvalue().splitlines()[-1].find(b"+OK") >= 0)
+ p.connectionLost(failure.Failure(Exception("Test harness disconnect")))
+diff --git a/src/twisted/persisted/dirdbm.py b/src/twisted/persisted/dirdbm.py
+index f97c526d0..d9f29cce2 100644
+--- a/src/twisted/persisted/dirdbm.py
++++ b/src/twisted/persisted/dirdbm.py
+@@ -81,14 +81,20 @@ class DirDBM:
+ Encode a key so it can be used as a filename.
+ """
+ # NOTE: '_' is NOT in the base64 alphabet!
+- return base64.encodestring(k).replace(b'\n', b'_').replace(b"/", b"-")
++ try:
++ return base64.encodebytes(k).replace(b'\n', b'_').replace(b"/", b"-")
++ except AttributeError:
++ return base64.encodestring(k).replace(b'\n', b'_').replace(b"/", b"-")
+
+
+ def _decode(self, k):
+ """
+ Decode a filename to get the key.
+ """
+- return base64.decodestring(k.replace(b'_', b'\n').replace(b"-", b"/"))
++ try:
++ return base64.decodebytes(k.replace(b'_', b'\n').replace(b"-", b"/"))
++ except AttributeError:
++ return base64.decodestring(k.replace(b'_', b'\n').replace(b"-", b"/"))
+
+
+ def _readFile(self, path):
+diff --git a/src/twisted/web/http.py b/src/twisted/web/http.py
+index fe88d3373..602a58f31 100644
+--- a/src/twisted/web/http.py
++++ b/src/twisted/web/http.py
+@@ -1540,7 +1540,7 @@ class Request:
+ bas, upw = authh.split()
+ if bas.lower() != b"basic":
+ raise ValueError()
+- upw = base64.decodestring(upw)
++ upw = base64.b64decode(upw)
+ self.user, self.password = upw.split(b':', 1)
+ except (binascii.Error, ValueError):
+ self.user = self.password = ""
+diff --git a/src/twisted/web/test/test_http.py b/src/twisted/web/test/test_http.py
+index 6001d1e40..70065e232 100644
+--- a/src/twisted/web/test/test_http.py
++++ b/src/twisted/web/test/test_http.py
+@@ -1513,7 +1513,7 @@ class ParsingTests(unittest.TestCase):
+ requests.append(self)
+
+ for u, p in [(b"foo", b"bar"), (b"hello", b"there:z")]:
+- s = base64.encodestring(b":".join((u, p))).strip()
++ s = base64.b64encode(b":".join((u, p)))
+ f = b"GET / HTTP/1.0\nAuthorization: Basic " + s + b"\n\n"
+ self.runRequest(f, Request, 0)
+ req = requests.pop()
+@@ -2139,9 +2139,9 @@ Hello,
+
+ u = b"foo"
+ p = b"bar"
+- s = base64.encodestring(b":".join((u, p))).strip()
++ s = base64.b64encode(b":".join((u, p)))
+ f = b"GET / HTTP/1.0\nAuthorization: Basic " + s + b"\n\n"
+- self.patch(base64, 'decodestring', lambda x: [])
++ self.patch(base64, 'b64decode', lambda x: [])
+ self.runRequest(f, Request, 0)
+ req = requests.pop()
+ self.assertEqual(('', ''), req.credentials)
+--
+2.26.2
+
diff --git a/dev-python/twisted/files/twisted-20.3.0-py39-b64.patch b/dev-python/twisted/files/twisted-20.3.0-py39-b64.patch
new file mode 100644
index 000000000000..f475614df408
--- /dev/null
+++ b/dev-python/twisted/files/twisted-20.3.0-py39-b64.patch
@@ -0,0 +1,158 @@
+From f44c2ff111a8961d295409186cc07aaf414c76bc Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?=
+Date: Wed, 27 May 2020 13:23:37 +0200
+Subject: [PATCH 1/4] Replace base64.*string() functions to fix py3.9 support
+
+Replace base64.decodestring() and .encodestring() functions as they
+were deprecated since Python 3.1 in favor of (equivalent) .decodebytes()
+and .encodebytes(), and were eventually removed in Python 3.9.
+
+While at it, replace most of their uses with base64.b64encode()
+and .b64decode() that are preferable to the former wrt ticket #6446,
+and they do not introduce line breaks that the twisted code usually
+discarded.
+
+Use .decodebytes() and .encodebytes() in DirDBM as it seems to rely
+on the exact presence of newlines, and changing that would break
+backwards compatibility.
+
+Fixes: ticket:6446
+Fixes: ticket:9831
+---
+ src/twisted/conch/scripts/tkconch.py | 2 +-
+ src/twisted/conch/test/test_keys.py | 2 +-
+ src/twisted/mail/pop3.py | 4 ++--
+ src/twisted/mail/test/test_pop3.py | 4 ++--
+ src/twisted/persisted/dirdbm.py | 4 ++--
+ src/twisted/web/http.py | 2 +-
+ src/twisted/web/test/test_http.py | 6 +++---
+ 14 files changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/src/twisted/conch/scripts/tkconch.py b/src/twisted/conch/scripts/tkconch.py
+index a662cabc8..744734343 100644
+--- a/src/twisted/conch/scripts/tkconch.py
++++ b/src/twisted/conch/scripts/tkconch.py
+@@ -412,7 +412,7 @@ class SSHClientTransport(transport.SSHClientTransport):
+ "known hosts.\r\n" %
+ (khHost, {b'ssh-dss':'DSA', b'ssh-rsa':'RSA'}[keyType]))
+ with open(os.path.expanduser('~/.ssh/known_hosts'), 'a') as known_hosts:
+- encodedKey = base64.encodestring(pubKey).replace(b'\n', b'')
++ encodedKey = base64.b64encode(pubKey)
+ known_hosts.write('\n%s %s %s' % (khHost, keyType, encodedKey))
+ except:
+ log.deferr()
+diff --git a/src/twisted/conch/test/test_keys.py b/src/twisted/conch/test/test_keys.py
+index 650a19bfb..f76cbd1b4 100644
+--- a/src/twisted/conch/test/test_keys.py
++++ b/src/twisted/conch/test/test_keys.py
+@@ -404,7 +404,7 @@ SUrCyZXsNh6VXwjs3gKQ
+
+ self.assertRaises(
+ keys.BadKeyError,
+- keys.Key.fromString, data=b'{' + base64.encodestring(sexp) + b'}',
++ keys.Key.fromString, data=b'{' + base64.b64encode(sexp) + b'}',
+ )
+
+
+diff --git a/src/twisted/mail/pop3.py b/src/twisted/mail/pop3.py
+index ffe9714c9..057389e3a 100644
+--- a/src/twisted/mail/pop3.py
++++ b/src/twisted/mail/pop3.py
+@@ -728,7 +728,7 @@ class POP3(basic.LineOnlyReceiver, policies.TimeoutMixin):
+ self._auth = auth()
+ chal = self._auth.getChallenge()
+
+- self.sendLine(b'+ ' + base64.encodestring(chal).rstrip(b'\n'))
++ self.sendLine(b'+ ' + base64.b64encode(chal))
+ self.state = 'AUTH'
+
+
+@@ -747,7 +747,7 @@ class POP3(basic.LineOnlyReceiver, policies.TimeoutMixin):
+ """
+ self.state = "COMMAND"
+ try:
+- parts = base64.decodestring(line).split(None, 1)
++ parts = base64.b64decode(line).split(None, 1)
+ except binascii.Error:
+ self.failResponse(b"Invalid BASE64 encoding")
+ else:
+diff --git a/src/twisted/mail/test/test_pop3.py b/src/twisted/mail/test/test_pop3.py
+index f7fbfaf1e..af335ab2d 100644
+--- a/src/twisted/mail/test/test_pop3.py
++++ b/src/twisted/mail/test/test_pop3.py
+@@ -1096,12 +1096,12 @@ class SASLTests(unittest.TestCase):
+
+ p.lineReceived(b"AUTH CRAM-MD5")
+ chal = s.getvalue().splitlines()[-1][2:]
+- chal = base64.decodestring(chal)
++ chal = base64.b64decode(chal)
+ response = hmac.HMAC(b'testpassword', chal,
+ digestmod=md5).hexdigest().encode("ascii")
+
+ p.lineReceived(
+- base64.encodestring(b'testuser ' + response).rstrip(b'\n'))
++ base64.b64encode(b'testuser ' + response))
+ self.assertTrue(p.mbox)
+ self.assertTrue(s.getvalue().splitlines()[-1].find(b"+OK") >= 0)
+ p.connectionLost(failure.Failure(Exception("Test harness disconnect")))
+diff --git a/src/twisted/persisted/dirdbm.py b/src/twisted/persisted/dirdbm.py
+index 3ba7a59d4..7659ff765 100644
+--- a/src/twisted/persisted/dirdbm.py
++++ b/src/twisted/persisted/dirdbm.py
+@@ -77,14 +77,14 @@ class DirDBM:
+ Encode a key so it can be used as a filename.
+ """
+ # NOTE: '_' is NOT in the base64 alphabet!
+- return base64.encodestring(k).replace(b'\n', b'_').replace(b"/", b"-")
++ return base64.encodebytes(k).replace(b'\n', b'_').replace(b"/", b"-")
+
+
+ def _decode(self, k):
+ """
+ Decode a filename to get the key.
+ """
+- return base64.decodestring(k.replace(b'_', b'\n').replace(b"-", b"/"))
++ return base64.decodebytes(k.replace(b'_', b'\n').replace(b"-", b"/"))
+
+
+ def _readFile(self, path):
+diff --git a/src/twisted/web/http.py b/src/twisted/web/http.py
+index 0e115741e..e9a080d21 100644
+--- a/src/twisted/web/http.py
++++ b/src/twisted/web/http.py
+@@ -1544,7 +1544,7 @@ class Request:
+ bas, upw = authh.split()
+ if bas.lower() != b"basic":
+ raise ValueError()
+- upw = base64.decodestring(upw)
++ upw = base64.b64decode(upw)
+ self.user, self.password = upw.split(b':', 1)
+ except (binascii.Error, ValueError):
+ self.user = self.password = b''
+diff --git a/src/twisted/web/test/test_http.py b/src/twisted/web/test/test_http.py
+index 112e56f46..02a4674a7 100644
+--- a/src/twisted/web/test/test_http.py
++++ b/src/twisted/web/test/test_http.py
+@@ -1604,7 +1604,7 @@ class ParsingTests(unittest.TestCase):
+ requests.append(self)
+
+ for u, p in [(b"foo", b"bar"), (b"hello", b"there:z")]:
+- s = base64.encodestring(b":".join((u, p))).strip()
++ s = base64.b64encode(b":".join((u, p)))
+ f = b"GET / HTTP/1.0\nAuthorization: Basic " + s + b"\n\n"
+ self.runRequest(f, Request, 0)
+ req = requests.pop()
+@@ -2209,9 +2209,9 @@ Hello,
+
+ u = b"foo"
+ p = b"bar"
+- s = base64.encodestring(b":".join((u, p))).strip()
++ s = base64.b64encode(b":".join((u, p)))
+ f = b"GET / HTTP/1.0\nAuthorization: Basic " + s + b"\n\n"
+- self.patch(base64, 'decodestring', lambda x: [])
++ self.patch(base64, 'b64decode', lambda x: [])
+ self.runRequest(f, Request, 0)
+ req = requests.pop()
+ self.assertEqual((b'', b''), req.credentials)
+--
+2.26.2
diff --git a/dev-python/twisted/files/twisted-20.3.0-py39-combined.patch b/dev-python/twisted/files/twisted-20.3.0-py39-combined.patch
new file mode 100644
index 000000000000..0ed1f7b8d9c6
--- /dev/null
+++ b/dev-python/twisted/files/twisted-20.3.0-py39-combined.patch
@@ -0,0 +1,115 @@
+From 2d30860a8b71e90513ead9958f5dd312802b0d36 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?=
+Date: Wed, 27 May 2020 14:40:53 +0200
+Subject: [PATCH 2/4] Fix imap4-utf-7 codec lookup function for Python 3.9
+
+Python 3.9 normalizes the codec name into 'imap4_utf_7' rather than
+'imap4-utf-7', and therefore the lookup function needs to account
+for the former name. Transform the latter locally to preserve support
+for all Python versions.
+
+Fixes: ticket: 9832
+---
+ src/twisted/mail/imap4.py | 2 +-
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/twisted/mail/imap4.py b/src/twisted/mail/imap4.py
+index 736ef111d..3f32982ca 100644
+--- a/src/twisted/mail/imap4.py
++++ b/src/twisted/mail/imap4.py
+@@ -6369,7 +6369,7 @@ _codecInfo = codecs.CodecInfo(encoder, decoder, StreamReader, StreamWriter)
+
+
+ def imap4_utf_7(name):
+- if name == 'imap4-utf-7':
++ if name.replace('-', '_') == 'imap4_utf_7':
+ return _codecInfo
+
+ codecs.register(imap4_utf_7)
+--
+2.26.2
+
+From daf928bf0f0371816dddbd4929948c4213d0cdcb Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?=
+Date: Wed, 27 May 2020 15:12:54 +0200
+Subject: [PATCH 3/4] Fix verifyCryptedPassword() for crypt.crypt() throwing in
+ py3.9
+
+In Python 3.9, the crypt.crypt() function may throw an exception
+if the underlying crypt() function fails. Update
+verifyCryptedPassword() to account for that, and preserve the existing
+behavior of returning False in that case.
+
+Fixes: ticket:9833
+---
+ src/twisted/conch/checkers.py | 5 ++++-
+ src/twisted/plugins/cred_unix.py | 5 ++++-
+ 4 files changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/src/twisted/conch/checkers.py b/src/twisted/conch/checkers.py
+index 917567a39..e4e327b16 100644
+--- a/src/twisted/conch/checkers.py
++++ b/src/twisted/conch/checkers.py
+@@ -53,7 +53,10 @@ def verifyCryptedPassword(crypted, pw):
+
+ @rtype: L{bool}
+ """
+- return crypt.crypt(pw, crypted) == crypted
++ try:
++ return crypt.crypt(pw, crypted) == crypted
++ except OSError:
++ return False
+
+
+
+diff --git a/src/twisted/plugins/cred_unix.py b/src/twisted/plugins/cred_unix.py
+index 211b4ccbc..a662719b6 100644
+--- a/src/twisted/plugins/cred_unix.py
++++ b/src/twisted/plugins/cred_unix.py
+@@ -43,7 +43,10 @@ def verifyCryptedPassword(crypted, pw):
+ pw = pw.decode('utf-8')
+ if not isinstance(crypted, StringType):
+ crypted = crypted.decode('utf-8')
+- return crypt.crypt(pw, crypted) == crypted
++ try:
++ return crypt.crypt(pw, crypted) == crypted
++ except OSError:
++ return False
+
+
+
+--
+2.26.2
+
+From 4fc435df0d1eba3e5d6416a2b86d39d3404f82fe Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?=
+Date: Wed, 27 May 2020 15:37:10 +0200
+Subject: [PATCH 4/4] Use xml.etree.ElementTree instead of deprecated
+ cElementTree
+
+The xml.etree.cElementTree is deprecated, and has been removed in Python
+3.9. At the same time, xml.etree.ElementTree has already been using
+cElementTree implicitly since Python 3.3. Update test_flatten to use
+the latter to provide compatibility with newer Python versions.
+
+Fixes: ticket:9834
+---
+ src/twisted/web/test/test_flatten.py | 2 +-
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/twisted/web/test/test_flatten.py b/src/twisted/web/test/test_flatten.py
+index 677401c55..61d50e20a 100644
+--- a/src/twisted/web/test/test_flatten.py
++++ b/src/twisted/web/test/test_flatten.py
+@@ -9,7 +9,7 @@ L{twisted.web._flatten}.
+ import sys
+ import traceback
+
+-from xml.etree.cElementTree import XML
++from xml.etree.ElementTree import XML
+
+ from collections import OrderedDict
+
+--
+2.26.2
+
diff --git a/dev-python/twisted/twisted-19.10.0.ebuild b/dev-python/twisted/twisted-19.10.0.ebuild
index 53a20c32ca01..720e3b98f647 100644
--- a/dev-python/twisted/twisted-19.10.0.ebuild
+++ b/dev-python/twisted/twisted-19.10.0.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
+PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1 virtualx
@@ -17,6 +17,7 @@ HOMEPAGE="https://www.twistedmatrix.com/trac/"
SRC_URI="https://twistedmatrix.com/Releases/${TWISTED_PN}"
SRC_URI="${SRC_URI}/${TWISTED_RELEASE}/${TWISTED_P}.tar.bz2
https://dev.gentoo.org/~mgorny/dist/twisted-regen-cache.gz"
+S=${WORKDIR}/${TWISTED_P}
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 sparc x86 ~amd64-linux ~x86-linux"
@@ -79,9 +80,15 @@ DEPEND="
)
"
-S=${WORKDIR}/${TWISTED_P}
-
python_prepare_all() {
+ local PATCHES=(
+ "${FILESDIR}"/${P}-py38.patch
+ "${FILESDIR}"/twisted-19.10.0-py38-cgi.patch
+ "${FILESDIR}"/twisted-20.3.0-py38-hmac.patch
+ "${FILESDIR}"/twisted-19.10.0-py39-b64.patch
+ "${FILESDIR}"/twisted-20.3.0-py39-combined.patch
+ )
+
# upstream test for making releases; not very useful and requires
# sphinx (including on py2)
rm src/twisted/python/test/test_release.py || die
diff --git a/dev-python/twisted/twisted-20.3.0.ebuild b/dev-python/twisted/twisted-20.3.0.ebuild
index 47624031dc76..3ee3d08b812a 100644
--- a/dev-python/twisted/twisted-20.3.0.ebuild
+++ b/dev-python/twisted/twisted-20.3.0.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8} )
+PYTHON_COMPAT=( python3_{6,7,8,9} )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1 virtualx
@@ -84,6 +84,8 @@ python_prepare_all() {
local PATCHES=(
"${FILESDIR}"/twisted-20.3.0-py38-cgi.patch
"${FILESDIR}"/twisted-20.3.0-py38-hmac.patch
+ "${FILESDIR}"/twisted-20.3.0-py39-b64.patch
+ "${FILESDIR}"/twisted-20.3.0-py39-combined.patch
)
# upstream test for making releases; not very useful and requires
diff --git a/dev-python/urllib3/urllib3-1.25.9.ebuild b/dev-python/urllib3/urllib3-1.25.9.ebuild
index 3b908729ee89..a3c2ed92451e 100644
--- a/dev-python/urllib3/urllib3-1.25.9.ebuild
+++ b/dev-python/urllib3/urllib3-1.25.9.ebuild
@@ -39,7 +39,7 @@ BDEPEND="
dev-python/pytest[\${PYTHON_USEDEP}]
>=dev-python/trustme-0.5.3[\${PYTHON_USEDEP}]
>=www-servers/tornado-4.2.1[\${PYTHON_USEDEP}]
- " python3_{6,7,8})
+ " python3_{6,7,8,9})
)
"
@@ -69,9 +69,6 @@ python_test() {
ewarn "of circular dependencies for Python 2 removal. Please test"
ewarn "manually in a virtualenv."
;;
- python3.9)
- einfo "Tests not yet ported to py3.9"
- ;;
python3*)
pytest -vv || die "Tests fail with ${EPYTHON}"
;;
diff --git a/dev-python/webtest/Manifest b/dev-python/webtest/Manifest
index b463cc828c88..18b0e17c5bb7 100644
--- a/dev-python/webtest/Manifest
+++ b/dev-python/webtest/Manifest
@@ -1 +1,2 @@
DIST WebTest-2.0.33.tar.gz 76081 BLAKE2B 6c06d7cf6573282342ac190fe2365d041679fd9a75571a525cf0214f22a0631d5f97e94261090d9c2a372f77b005d22be5976f612c27c6b4c832c71469b33ee8 SHA512 9f5c614f8215837dc5cecc9c3e844c5e1678eb8275f9e27a0ec6a68648e9f4f09155aa72f6c731c34028b8671b7776a94235f3e54d7dbf5ff55de94840171ca8
+DIST WebTest-2.0.35.tar.gz 76227 BLAKE2B 2f10520a66a00cf61834d5ebe2b8eea469d4ca32155c9af3c0b78234607ea5443e695730a7db4476f5296f9b848f3950027d7485a4116e7d736fd9c33d8e78ae SHA512 ecad031702a9d2031d4e2230dc8213aaa6b1a3e9e6add296ee796aa2ef77d81c992dc24e481f721bc34711d1e33f3932d56cec4be3d62ee82a71fb405942c339
diff --git a/dev-python/webtest/webtest-2.0.35.ebuild b/dev-python/webtest/webtest-2.0.35.ebuild
new file mode 100644
index 000000000000..2b07d79efb43
--- /dev/null
+++ b/dev-python/webtest/webtest-2.0.35.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python{2_7,3_{6,7,8,9}} pypy3 )
+
+inherit distutils-r1
+
+MY_PN="WebTest"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Helper to test WSGI applications"
+HOMEPAGE="https://pypi.org/project/WebTest/"
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc64 ~s390 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/paste[${PYTHON_USEDEP}]
+ dev-python/pastedeploy[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.2[${PYTHON_USEDEP}]
+ >=dev-python/waitress-0.8.5[${PYTHON_USEDEP}]
+ dev-python/beautifulsoup:4[${PYTHON_USEDEP}]"
+BDEPEND="${RDEPEND}
+ app-arch/unzip
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pastedeploy[${PYTHON_USEDEP}]
+ dev-python/pyquery[${PYTHON_USEDEP}]
+ dev-python/wsgiproxy2[${PYTHON_USEDEP}]
+ )"
+
+PATCHES=(
+ "${FILESDIR}/webtest-2.0.33-no-pylons-theme.patch"
+)
+
+distutils_enable_sphinx docs
+distutils_enable_tests pytest
diff --git a/dev-python/xmlschema/xmlschema-1.1.3.ebuild b/dev-python/xmlschema/xmlschema-1.1.3.ebuild
index 39121bed8bc3..9f4db749364c 100644
--- a/dev-python/xmlschema/xmlschema-1.1.3.ebuild
+++ b/dev-python/xmlschema/xmlschema-1.1.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~sparc ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-qt/Manifest.gz b/dev-qt/Manifest.gz
index 9afe4be54433..1172b305676b 100644
Binary files a/dev-qt/Manifest.gz and b/dev-qt/Manifest.gz differ
diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest
index 54ede5508f39..e74e7044864e 100644
--- a/dev-qt/qtwebengine/Manifest
+++ b/dev-qt/qtwebengine/Manifest
@@ -1,3 +1,4 @@
+DIST qtwebengine-5.15.0-ppc64.tar.xz 48156 BLAKE2B 6901b04ca869e6980e7f624000dd292fad2b514d8b1853d2796a11fa0e1b1c3a80f284cc1e3c242133b6886bb56329430229645af1ad8cac927371e3941b9fab SHA512 c2613a8d889bb9d7184a65ab6127c8329a945386f23cb860219b8e161d0a43683fa66f69d8d1441f5920fa370fda7c4629865fa452be9ab8a8b1515e5f93504b
DIST qtwebengine-everywhere-src-5.14.1.tar.xz 242438244 BLAKE2B d24210b2e04522b27409cc5ccfe722114f711c1c5e9aaff76882c178b0c455b475b90fd2acd5f7ba4f5dfba85c228c4baf2c231d3661eadf83e984d7e7b9e30f SHA512 fafa2fbc789941e837e35945857a6da00e73bd2abe512290674b9957719b998d8b8b95a35c709a171c9d0d111e6f418cec630dfcdbe47ecbae25a3b94e4c99f9
DIST qtwebengine-everywhere-src-5.14.2.tar.xz 242467568 BLAKE2B 2b69af846d9f6b1b1bd6380f56868e7fe86c88baf00e4b596e6a825d636472f837c1fc3b9ed41182dcc20dc0ba03360182aba39aee4adca66f407a8346f90fbf SHA512 bcfd9ece04bdbfded5272ce1b3ab482e88349b1f5c5a071f58f6e66fcb9604d1fc38fe909ae3d9631bdf0bf7c081d7590620c3388f1a577b5236f68b084699bf
DIST qtwebengine-everywhere-src-5.15.0.tar.xz 278257432 BLAKE2B 832b15a0a542297f47ecaa057f29e24eb99dd142b314aa15243d864b715c74ec9dfc2ba23aa9be417581151d684d08dfcba173ea2d9311e19ca7af3d941f590b SHA512 11983470f0da9abfffba072406b2c67b475d8cf65412fdcfd925758e2a9449f509780e5b1001fb6868445c2c9540e5aa0e754954b70f1795b47335bad7c749b2
diff --git a/dev-qt/qtwebengine/metadata.xml b/dev-qt/qtwebengine/metadata.xml
index 180beb2cfc87..ea633503ac72 100644
--- a/dev-qt/qtwebengine/metadata.xml
+++ b/dev-qt/qtwebengine/metadata.xml
@@ -5,6 +5,11 @@
qt@gentoo.org
Gentoo Qt Project
+
+ ppc64 patchset maintainer
+ gyakovlev@gentoo.org
+ Georgy Yakovlev
+