diff --git a/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list b/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list index a44d46686b..f2a53d905a 100644 --- a/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list +++ b/sdk_container/src/third_party/portage-stable/.github/workflows/packages-list @@ -93,11 +93,17 @@ app-eselect/eselect-iptables app-portage/portage-utils +app-shells/bash-completion + +app-text/asciidoc + dev-db/sqlite dev-lang/duktape dev-lang/perl dev-lang/python +dev-lang/python-exec +dev-lang/python-exec-conf dev-libs/boost dev-libs/cJSON @@ -108,9 +114,11 @@ dev-libs/glib dev-libs/gmp dev-libs/gobject-introspection dev-libs/gobject-introspection-common +dev-libs/jsoncpp dev-libs/libaio dev-libs/libksba dev-libs/libltdl +dev-libs/libnl dev-libs/libpcre2 dev-libs/libtasn1 dev-libs/libxml2 @@ -125,7 +133,42 @@ dev-perl/Text-Unidecode dev-perl/Unicode-EastAsianWidth dev-perl/libintl-perl +dev-python/appdirs +dev-python/autocommand +dev-python/boto +dev-python/certifi +dev-python/crcmod +dev-python/cython +dev-python/distro +dev-python/docutils dev-python/fasteners +dev-python/flit_core +dev-python/gentoo-common +dev-python/gpep517 +dev-python/inflect +dev-python/installer +dev-python/jaraco-context +dev-python/jaraco-functools +dev-python/jaraco-text +dev-python/jinja +dev-python/lazy-object-proxy +dev-python/lxml +dev-python/markupsafe +dev-python/more-itertools +dev-python/nspektr +dev-python/ordered-set +dev-python/packaging +dev-python/pydantic +dev-python/pydecomp +dev-python/pygments +dev-python/pyparsing +dev-python/setuptools +dev-python/setuptools_scm +dev-python/six +dev-python/snakeoil +dev-python/tomli +dev-python/typing-extensions +dev-python/wheel dev-util/b2 dev-util/bpftool @@ -150,6 +193,7 @@ dev-util/re2c dev-util/strace dev-vcs/git +dev-vcs/repo eclass/acct-group.eclass eclass/acct-user.eclass @@ -162,7 +206,9 @@ eclass/autotools.eclass eclass/cmake-multilib.eclass eclass/cmake.eclass eclass/desktop.eclass +eclass/distutils-r1.eclass eclass/eapi7-ver.eclass +eclass/eapi8-dosym.eclass eclass/edo.eclass eclass/edos2unix.eclass eclass/elisp-common.eclass @@ -185,12 +231,14 @@ eclass/llvm.eclass eclass/ltprune.eclass eclass/meson-multilib.eclass eclass/meson.eclass +eclass/multibuild.eclass eclass/multilib-build.eclass eclass/multilib-minimal.eclass eclass/multilib.eclass eclass/multiprocessing.eclass eclass/ninja-utils.eclass eclass/optfeature.eclass +eclass/out-of-source-utils.eclass eclass/pam.eclass eclass/pax-utils.eclass eclass/perl-functions.eclass @@ -198,7 +246,12 @@ eclass/portability.eclass eclass/plocale.eclass eclass/prefix.eclass eclass/preserve-libs.eclass -eclass/readme.gentoo-r1 +eclass/pypi.eclass +eclass/python-any-r1.eclass +eclass/python-r1.eclass +eclass/python-single-r1.eclass +eclass/python-utils-r1.eclass +eclass/readme.gentoo-r1.eclass eclass/savedconfig.eclass eclass/strip-linguas.eclass eclass/systemd.eclass @@ -215,6 +268,7 @@ eclass/verify-sig.eclass eclass/vim-doc.eclass eclass/vim-plugin.eclass eclass/virtualx.eclass +eclass/waf-utils.eclass eclass/wrapper.eclass eclass/xdg-utils.eclass @@ -257,6 +311,7 @@ sys-apps/attr sys-apps/diffutils sys-apps/dtc sys-apps/file +sys-apps/findutils sys-apps/gawk sys-apps/gentoo-functions sys-apps/help2man diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.11.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.11.ebuild index 36c924cea3..c7bcbfdfe2 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.11.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-2.11.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 BASHCOMP_P=bashcomp-2.0.3 -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{9..10} ) inherit bash-completion-r1 python-any-r1 user-info DESCRIPTION="Programmable Completion for bash" @@ -15,7 +15,7 @@ SRC_URI=" 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 ~sparc-solaris ~sparc64-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris" IUSE="+eselect test" RESTRICT="!test? ( test )" @@ -89,7 +89,10 @@ src_prepare() { src_test() { # portage's HOME override breaks tests - emake check HOME="$(egethome "${UID}")" PYTESTFLAGS="-vv" NETWORK=none + local myhome=$(unset HOME; echo ~) + local -x SANDBOX_PREDICT=${SANDBOX_PREDICT} + addpredict "${myhome}" + emake check HOME="${myhome}" PYTESTFLAGS="-vv" NETWORK=none } src_install() { diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-9999.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-9999.ebuild index 70ce84b4ed..ee41ba30bb 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/bash-completion-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{9..10} ) inherit autotools git-r3 python-any-r1 user-info DESCRIPTION="Programmable Completion for bash" @@ -99,7 +99,10 @@ src_prepare() { src_test() { # portage's HOME override breaks tests - emake check HOME="$(egethome "${UID}")" PYTESTFLAGS="-vv" NETWORK=none + local myhome=$(unset HOME; echo ~) + local -x SANDBOX_PREDICT=${SANDBOX_PREDICT} + addpredict "${myhome}" + emake check HOME="${myhome}" PYTESTFLAGS="-vv" NETWORK=none } src_install() { diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/metadata.xml b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/metadata.xml index b8af55c298..7def7326d5 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash-completion/metadata.xml @@ -11,7 +11,7 @@ - Support blacklisting of completions via 'eselect bash-completion'. + Support blacklisting of completions via 'eselect bashcomp'. This enables custom Gentoo patching of upstream completion loader. diff --git a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/Manifest b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/Manifest index 064d9296ad..ba6c37529b 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/Manifest @@ -1,4 +1,2 @@ -DIST asciidoc-9.0.2.new.tar.gz 1269444 BLAKE2B 0041073c572267628b8bbfd56258d86c35edb0e7f3a222743ce1476b405483b01144faf768ab1492fd3f378960f6cc8e17d92ef61671d84c318fbe7c1ca8cd7c SHA512 c20629001704f1c3acfef0407b82f35f6077f5b32ef754fcbeee03a5a86d4e01e374e89b79cbdb236fc2c7fc76bf47ba81efd691f2f9e1c87dc85a7111f5e030 -DIST asciidoc-9.0.4.new.tar.gz 1233878 BLAKE2B 506a2c82d95ce0d522f45b20eee31f7ce2b114e0ad43c78bb313f34b210a7bdd282a8a3779a3ea29025e865847eb8298bd5a6ddac7ee338e4b878ae79bdf149e SHA512 59be96514d0c4c82e5842ddea412ddd6e06647ebe09e0f1828b7c07e787d890896bab4271e7566ed038eb2da6755a67c725bee07bcfbd7aa31475f39c3abc089 -DIST asciidoc-9.0.5.new.tar.gz 1225334 BLAKE2B c3e428098dc4d71704ed13b54fd5f640b9de81d12939facb5faaf38a3123794e57201ecd9c312a22c220a2ec6b06c88a76ab47f05ffa972fc8751089b3471cfc SHA512 9125631fdee464f96f7e3c76a60fe37331905e9e55a81db27aece4065b246dc05a35db4c157dc7dbb2345eb95c153b474251d6a447d65774bf1b3f57e1883895 +DIST asciidoc-10.2.0.tar.gz 216824 BLAKE2B 500038d655f820fe89048bbff683ae029c7044de839ae4f9ec4666b843585511c99bbc1991ec1764262f33c55b08845661fc1e62eb21bb3250d3168e369928ff SHA512 2f83c7f6d1d0a34948035347833ca59841de1271e8d008b4c4a43a7a8273b230148e6f51ee8f6e2dc702460e27c495037fbe2d6d43195b70bf3447ad86390d28 DIST asciidoc-9.1.0.new.tar.gz 1249958 BLAKE2B 0a98f58f7604f84d704092313c38563634bad5d697d60d02760f3be1d2a78a97ee2488dda3a9918b02e0062710175c6513d600f3fbd850fe700bf3fa917a3980 SHA512 c30854a936228fe5bcf2f9305741fbc4b17ef088b2fa637d5f3b19c7803306085634fb71146f0b089c2fad01f986da71a4fae364139f520c0906525317c0c4a6 diff --git a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-10.2.0.ebuild b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-10.2.0.ebuild new file mode 100644 index 0000000000..670534a039 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-10.2.0.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_SINGLE_IMPL=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) +inherit distutils-r1 optfeature readme.gentoo-r1 + +DESCRIPTION="A plain text human readable/writable document format" +HOMEPAGE="https://asciidoc.org/ https://github.com/asciidoc-py/asciidoc-py/" +# Could use the github tarball but we need autotools then +#SRC_URI="https://github.com/asciidoc-py/asciidoc-py/releases/download/${PV}/${P}.tar.gz" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +RDEPEND="app-text/docbook-xml-dtd:4.5 + >=app-text/docbook-xsl-stylesheets-1.75 + dev-libs/libxslt + dev-libs/libxml2:2" + +DOC_CONTENTS=" +If you are going to use a2x, please also look at a2x(1) under +REQUISITES for a list of runtime dependencies. +" + +src_install() { + distutils-r1_src_install + + # TODO: Consider using Debian patch to allow /usr/share? + insinto /usr/share/asciidoc + doins -r asciidoc/resources/. + + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog + + optfeature "music filter support" "media-sound/lilypond virtual/imagemagick-tools" + 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/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.2-r1.ebuild deleted file mode 100644 index 7772c2bc97..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.2-r1.ebuild +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} pypy3 ) - -inherit autotools optfeature python-single-r1 readme.gentoo-r1 - -DESCRIPTION="A plain text human readable/writable document format" -HOMEPAGE="https://asciidoc.org/ https://github.com/asciidoc-py/asciidoc-py/" -SRC_URI="https://github.com/asciidoc-py/asciidoc-py/releases/download/${PV}/${P}.tar.gz -> ${P}.new.tar.gz" - -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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc test" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RESTRICT="!test? ( test )" - -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 ) - -src_prepare() { - default - # Only needed for prefix - harmless (does nothing) otherwise - sed -i -e "s:^CONF_DIR=.*:CONF_DIR='${EPREFIX}/etc/asciidoc':" \ - asciidoc.py || die - - # enforce usage of the configured version of Python - sed -i -e "s:python3:${EPYTHON}:" Makefile.in || die - - eautoreconf -} - -src_configure() { - econf --sysconfdir="${EPREFIX}"/usr/share -} - -src_install() { - default - - if use doc; then - emake DESTDIR="${D}" docs - fi - - python_fix_shebang "${ED}"/usr/bin/*.py - - readme.gentoo_create_doc -} - -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/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.4-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.4-r1.ebuild deleted file mode 100644 index 7772c2bc97..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.4-r1.ebuild +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} pypy3 ) - -inherit autotools optfeature python-single-r1 readme.gentoo-r1 - -DESCRIPTION="A plain text human readable/writable document format" -HOMEPAGE="https://asciidoc.org/ https://github.com/asciidoc-py/asciidoc-py/" -SRC_URI="https://github.com/asciidoc-py/asciidoc-py/releases/download/${PV}/${P}.tar.gz -> ${P}.new.tar.gz" - -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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc test" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RESTRICT="!test? ( test )" - -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 ) - -src_prepare() { - default - # Only needed for prefix - harmless (does nothing) otherwise - sed -i -e "s:^CONF_DIR=.*:CONF_DIR='${EPREFIX}/etc/asciidoc':" \ - asciidoc.py || die - - # enforce usage of the configured version of Python - sed -i -e "s:python3:${EPYTHON}:" Makefile.in || die - - eautoreconf -} - -src_configure() { - econf --sysconfdir="${EPREFIX}"/usr/share -} - -src_install() { - default - - if use doc; then - emake DESTDIR="${D}" docs - fi - - python_fix_shebang "${ED}"/usr/bin/*.py - - readme.gentoo_create_doc -} - -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/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.5-r1.ebuild b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.5-r1.ebuild deleted file mode 100644 index 7772c2bc97..0000000000 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.0.5-r1.ebuild +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} pypy3 ) - -inherit autotools optfeature python-single-r1 readme.gentoo-r1 - -DESCRIPTION="A plain text human readable/writable document format" -HOMEPAGE="https://asciidoc.org/ https://github.com/asciidoc-py/asciidoc-py/" -SRC_URI="https://github.com/asciidoc-py/asciidoc-py/releases/download/${PV}/${P}.tar.gz -> ${P}.new.tar.gz" - -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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc test" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RESTRICT="!test? ( test )" - -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 ) - -src_prepare() { - default - # Only needed for prefix - harmless (does nothing) otherwise - sed -i -e "s:^CONF_DIR=.*:CONF_DIR='${EPREFIX}/etc/asciidoc':" \ - asciidoc.py || die - - # enforce usage of the configured version of Python - sed -i -e "s:python3:${EPYTHON}:" Makefile.in || die - - eautoreconf -} - -src_configure() { - econf --sysconfdir="${EPREFIX}"/usr/share -} - -src_install() { - default - - if use doc; then - emake DESTDIR="${D}" docs - fi - - python_fix_shebang "${ED}"/usr/bin/*.py - - readme.gentoo_create_doc -} - -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/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.1.0.ebuild b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.1.0.ebuild index f3c86d982e..b7c383f474 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.1.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-9.1.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{8..10} pypy3 ) +PYTHON_COMPAT=( python3_{9..10} pypy3 ) inherit autotools optfeature python-single-r1 readme.gentoo-r1 @@ -13,7 +13,7 @@ SRC_URI="https://github.com/asciidoc-py/asciidoc-py/releases/download/${PV}/${P} 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 ~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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc test" REQUIRED_USE="${PYTHON_REQUIRED_USE}" diff --git a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml index bf7692827c..fe643142c8 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml @@ -1,17 +1,10 @@ - - marcec@gmx.de - Marc Joliet - - - proxy-maint@gentoo.org - Proxy Maintainers - - - asciidoc - asciidoc-py/asciidoc-py - https://github.com/asciidoc-py/asciidoc-py/issues - + + + asciidoc + asciidoc-py/asciidoc-py + https://github.com/asciidoc-py/asciidoc-py/issues + diff --git a/sdk_container/src/third_party/portage-stable/changelog/updates/2023-02-17-python-update.md b/sdk_container/src/third_party/portage-stable/changelog/updates/2023-02-17-python-update.md new file mode 100644 index 0000000000..8b77a56a8f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/changelog/updates/2023-02-17-python-update.md @@ -0,0 +1,2 @@ +- findutils ([4.9.0](https://lists.gnu.org/archive/html/info-gnu/2022-02/msg00003.html)) +- SDK: python ([3.10.9](https://docs.python.org/3.10/whatsnew/changelog.html#python-3-10-9-final) (includes [3.10](https://www.python.org/downloads/release/python-3100/)) diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec-conf/python-exec-conf-2.4.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec-conf/python-exec-conf-2.4.6.ebuild index 24af3f9bf9..4ffdc9faba 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec-conf/python-exec-conf-2.4.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec-conf/python-exec-conf-2.4.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -13,7 +13,7 @@ S=${WORKDIR}/${MY_P} LICENSE="BSD-2" SLOT="2" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" # Internal Python project hack. Do not copy it. Ever. IUSE="${_PYTHON_ALL_IMPLS[@]/#/python_targets_}" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/Manifest index c858cde41c..a0da4c5e16 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/Manifest @@ -1 +1 @@ -DIST python-exec-2.4.8.tar.bz2 82671 BLAKE2B ac85f3dd6da3d1c535ad56a25edbbcb1d0e75b91e3567b80f27fd01d32a199a713909a8552dffaacbe96c43bca491f31c3f0c7f1a618fb9144814365686715cf SHA512 d6dabab217dc2f1817e2f4d159102a9467f51b26b91f4ae7fb7e4930d30334f74bd8a5f37cc60d58c6e1e61e89a3b4d2e1bd17413493ba86f38fa71250cf5ac1 +DIST python-exec-2.4.10.tar.bz2 84412 BLAKE2B 1fe79e0d31a48954959a5556f96c3868fcf762ebc473d17f03e78a95cca83ab40b4933b7e42bc5751b0546e6229f9fdde9171c3fcbdd184f993536f944870491 SHA512 8c7d3c6b1fa362c8c97ec74ee01b5a195dc409d883408033e9709773b6059deb5291f6e63df6d9a4e42a0951aad4a1d513d4baa00ad9ff3dce3e1d2d38b694e1 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/metadata.xml index 95267dce89..c942a12a85 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/metadata.xml @@ -10,8 +10,8 @@ mgorny@gentoo.org Michał Górny - https://github.com/mgorny/python-exec/issues/ - mgorny/python-exec + https://github.com/projg2/python-exec/issues/ + projg2/python-exec diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/python-exec-2.4.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/python-exec-2.4.10.ebuild similarity index 76% rename from sdk_container/src/third_party/portage-stable/dev-lang/python-exec/python-exec-2.4.8.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python-exec/python-exec-2.4.10.ebuild index 39e408c148..6fa6041405 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/python-exec-2.4.8.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python-exec/python-exec-2.4.10.ebuild @@ -1,18 +1,18 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{8..10} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit python-any-r1 DESCRIPTION="Python script wrapper" -HOMEPAGE="https://github.com/mgorny/python-exec/" -SRC_URI="https://github.com/mgorny/python-exec/releases/download/v${PV}/${P}.tar.bz2" +HOMEPAGE="https://github.com/projg2/python-exec/" +SRC_URI="https://github.com/projg2/python-exec/releases/download/v${PV}/${P}.tar.bz2" LICENSE="BSD-2" SLOT="2" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" # Internal Python project hack. Do not copy it. Ever. IUSE="${_PYTHON_ALL_IMPLS[@]/#/python_targets_} +native-symlinks test" RESTRICT="!test? ( test )" @@ -26,7 +26,7 @@ BDEPEND=" )" python_check_deps() { - has_version -b "dev-python/pytest[${PYTHON_USEDEP}]" + python_has_version -b "dev-python/pytest[${PYTHON_USEDEP}]" } pkg_setup() { diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest index 7bb27aeb1a..d61d1c902a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest @@ -1,21 +1,27 @@ DIST Python-2.7.18.tar.xz 12854736 BLAKE2B 060a621c91dd8e3d321aec99d44c17aa67381998256a1a002d316b38288349884d5960de35c49352d03129ed0bae599e641ec2225898158ebce50a7a2fd74d2c SHA512 a7bb62b51f48ff0b6df0b18f5b0312a523e3110f49c3237936bfe56ed0e26838c0274ff5401bda6fc21bf24337477ccac49e8026c5d651e4b4cafb5eb5086f6c DIST Python-2.7.18.tar.xz.asc 833 BLAKE2B 1d98770e46171971fb99994508d238c01d2755281d2f94353314014d9e83e0ec5f0b3e3950ea1fdf5fce9ba6b8f55312355845c2a3fc4291c27ee56fe6215448 SHA512 c2a5f5a52f47dec52460ad3275758d4e5de6e7075c3def4353c988d74d563a39b42cae2d5eb24e2a23a6247cef69100f91620b11a49c2359fbf99b203c9cbda8 +DIST Python-3.10.10.tar.xz 19627028 BLAKE2B 57fc6869fa05586158a170c1892d93a3036823bfafb9484b9d70bca6cdc3e76f75357622eace4bde9a4c0ca62a1bb79665e5751b41655f9f4d7e345547013ad8 SHA512 f0aee65970a68287b34c4eafcf35c6fa09c81ba234ac356db16fbbc6c36417e4ac67071e616d118f5e192d541d7f177dcab5585b9780e842f656c09e01c37ced +DIST Python-3.10.10.tar.xz.asc 833 BLAKE2B fd60e6268f7dd6676ea58bd7e80c513506ac9810c1a62ff060134207b0fd8e7b096d5f11f3cc536a1578144ff54c00bcb076d3c3f5889a69a898660dd280312b SHA512 591746d74c6123bf36c763b6e8e1de1554f02eeff30c855623ef0f12d3864d5573eb5efe96d6e142f24627c77b90738ada3456df4ad59bddcb008658f2ca8af9 DIST Python-3.10.9.tar.xz 19612112 BLAKE2B ef2d063a9fbaf234aa4a47149cb184a0379dc403515df10249104a5092750cdaf22ad47916d34e17dd68fff1c30338c0375f4e4e3cc9bde33e0896c1c3ba655b SHA512 d66ea8adeb6dc4951e612175f8838b3092967ff275b7a3470f2d86f470036aa2221e722c3144d90bcd230b88efd53dde204213f72f703e524e4b833e2ccc68e2 DIST Python-3.10.9.tar.xz.asc 833 BLAKE2B 8895c6cb5031b2463cc6ba3e0dc56bee40c2e99117c062f9c72f2b7adb0d5a49782b968abfc764117e8513bd12816915245677c25b1710e3dae3c9e26937c2b9 SHA512 525e166ede6836086de814c26fc880f41eaf1ed4bff6118f00342e42f7ab1c47148447ced1b565e146d3125fa06b5cd6b394a256bc61096766b26e07f18bbf10 DIST Python-3.11.1.tar.xz 19856648 BLAKE2B 2a8942e7a145cfcc5b6932865ff9a1afd300bf2e6c4c915e88d0e849441196a3a4cacf94f3db87eaa7538872059085cf7eeff91c436f424448f85d4b180a6f24 SHA512 5edd70c881e083c96199c60471f18f9ebc4c97a2d45dc66f89e16d7c3638d8a5d2cbf2e84b1be3d7f1178ce9f7fa4197884385c1ee3618ff66a538f872f318ed DIST Python-3.11.1.tar.xz.asc 833 BLAKE2B 27c6101b2022cb7bea3e6082f1554b31cceb8cabe720e4b19391f550e870588c4defd1552c580a7e063638b80e8b8f415e54a11cf40ae3b0f449500c2e9babc6 SHA512 81ed05c2adf38552bdc5ac761704f2720a646d56681a919a6bfa51f1a4b42cd14edb9c84d58664dbc8e7b561cd78d82ae6b10dda423e1fae543bc7fa4bf3f78e -DIST Python-3.12.0a3.tar.xz 19695444 BLAKE2B c869e68612b7b32a3a9cdb5accd1fec3453abbea68ca6993e7ce6d5f8deead50902ee6026c3bf2a3faf92e5a571b6b71fbcfc85d49fa03b4ac12ab5dba3f486a SHA512 82d88adda53a1e5c16fc7165ac0d55f3828bae9249d361fbf7237d8826bd5acd941befb9b2c74f815a251b216d377f416831fbd233f1bfef31c2cab73b6554d1 -DIST Python-3.12.0a3.tar.xz.asc 963 BLAKE2B ff0a4eb7a3e27281494450dca7f23f4e1816e18d0487e09b6a9f58d441b766f32e8653b7e01753c8353bb34a235b8296cbe975ee7a917ae4a24e5b8875b4ff5f SHA512 e25a42982f3cab6e38ef7a4f5bfd71ad25811f52dffeffbb827ee9f48bf45003edad14ffdd3289bfda113a34b7ef818d04a413d0da7e8ca52d0c47f9b4475dbb +DIST Python-3.11.2.tar.xz 19893284 BLAKE2B 0cfb1fefcdd4c4baf5c34f74ab0600ac7cd40101d266c28f66f9d35bcfbf19d6c3ff2a5b0d357ee1d03061e06005ea3ee7b18adf878d32e197434b3da2b7d918 SHA512 5684ec7eae2dce26facc54d448ccdb6901bbfa1cab03abbe8fd34e4268a2b701daa13df15903349492447035be78380d473389e8703b4e910a65b088d2462e8b +DIST Python-3.11.2.tar.xz.asc 833 BLAKE2B 15795836babd269424f1ff511073e27235827353383d15cac6a85406b967787840ca6c0f119faa1971a50ebb6699e6cdf0de095f428b868b57a91eb8dc6d5baa SHA512 9d9d1c6dd6e56a916c6861cd0e7e623a165b0845bafe0acfcae27b4fe10a6b7015844e6b3f8deded26a763c935e32f565b2e12beb20c43fda16c11eba8d282a1 DIST Python-3.12.0a4.tar.xz 19690792 BLAKE2B f4da53e856afca1acd8ba56dc37d78ef4cfee0007a3a66c9276b7a93dbd4c9e7ddb39aaea344bc55219e33ad09a9b34bf0e8b89273bba8e99643eeafc7e76d42 SHA512 19a98939077004259868cc5e6901d8fbf0ae90ad579700d6993f6b82990b1b4eb92efa5c8b5b7b50cfc46e311cb5c45f83251223a623fe1ade5da45ef2ca5dce DIST Python-3.12.0a4.tar.xz.asc 963 BLAKE2B da2279932786fad5cb3def5e34f9f113b9203233f70edc805ac1f7c3ddb584883655bb3da7fac1651017269a0dd8ce9a88fcca609ab2072bc6285190c487a566 SHA512 b74a1bf0d5e4f402b6e5164cd140457ed0b172b2bfe61be1642fe053b71092b8bae1f5281e03516a6fba24319c78cd2505494cfada2416b766f4c602c1284d2a +DIST Python-3.12.0a5.tar.xz 19743140 BLAKE2B 3613523f8417251127b2a013218518a1f311d80a1534e0dd1eb704fc6bfd9e143848a18328a0c8d3fb00d7c6f580ac1b314d38893ca66d1de7eab198862ab99a SHA512 090d205a3cbfce1ea4c1ca5950d24db64e6f8aceb2f6458f17b996071ce6ddf80e60ed3e293b89f242df705e1dec6069ccc3e46f24f5d4e22819d7d54743a27a +DIST Python-3.12.0a5.tar.xz.asc 963 BLAKE2B f04f9c4b15404887611ff92cf661e65a2465f0a2d20b6c084ef76d0d426e4bfcf3963c45d96d385ce8ce3f739ae37f0834dd7c1837f10d8e4bce438ec8b044e2 SHA512 626ccafcb390e3987494f1c3fecf094047afbb255a65948fd1a1c8568cbd9c58be8e7e50e64b20873645428db7b363166984d075a3674daa9771b4be6fb46439 DIST Python-3.8.16.tar.xz 19046724 BLAKE2B cbdeec7961d39cb9ab4960760b5d4c7ae71675c174156aa9f6fca55ee92a93a937ef39defe86e423237a25e0e24703233ce4b91dc97005b6ffc1f342ddd9e22c SHA512 d206e80806409410c00ef8acd8c3d90e3cc9553f996d0a57faa63802f2415e9d7591542b2e84b5e8e79245f40f6478790b5ba2acf1da98ebbc9495999183f7fd DIST Python-3.8.16.tar.xz.asc 833 BLAKE2B 678dabc558d013b104bf9e65d4319076c4730a67093a66fefc073b429c640d4facb31a0d6b7238deb08b265586a0cfb2c345051fe4df7bf5001d7317e6c06c9b SHA512 e93c394c0c5afcaaab625a3bd540dcc8e0ab946803d212343b8d1d6d5e6b89b09b6a20607bab0d858b30389a03305d57e14548605a65277d053c7817f32f4546 DIST Python-3.9.16.tar.xz 19738796 BLAKE2B 70dedeb70d9d8f27e4f6db5106623e087c61d451c7a04639cf8d3503ad02d4d43f1b36d0cdf1131aefc9bf6e677e561227dd4baef2c2c3d2dbf6d3e7dc36bd94 SHA512 b5fd0afe131c82bbce6ddf887c59eef6945910d6a9a2bc87c0927f4e4a096bf9ca4d25bcb729c40f6ebb8a65fbe8bf7b0b97a7c4a8c9e551240eb4f34b878653 DIST Python-3.9.16.tar.xz.asc 833 BLAKE2B 416b4a4be06e101c5971c12a6f21229c425bcabaea58487e0d1b24d6dea318c58806ee43892fc704df8252670451bd6a4a2610c25672d3983ddb081fed34b92d SHA512 468959c36a3ec6136f57a39475fff4745a25be0cb5d3d58cf3e5faf0b9ce2d2a8b89f1f9fea1479c4c6ad12ac49e97c1cfd4291c978bb3d30df5a582ec315210 DIST python-gentoo-patches-2.7.18_p16.tar.xz 35448 BLAKE2B 0139c0944f62f9cdd236f6a8557e0ed19704c7d72869af1cb7d8bd3e646a746cd4a0201e1b44232a5e78ef49f254db20b0d0271bf744fbfd4fe0f1e99b8f3e6c SHA512 810be590d0e06fab4b2165e6852ca49662f09dcd7e20b47a29f613ad7653252c8dfac3f0eb228d77c8a914efa7c08788b2fbd552a4b47504f5fd0ec17450c48f +DIST python-gentoo-patches-3.10.10_p1.tar.xz 12836 BLAKE2B 2a146138e4c34b35e7a3e79215ca03afb97c61b52fe68fe6b930aad2af748925c46b1faec9b38ec1b6be11c19b2e9ebecfa2acd86486a01babbe695fe305a284 SHA512 4821b0ba9731d5868dce31d6f51b6fa429331f49b1d07f1425d9561fb57b47719ef91ede9af33beb2d96d9824b755ba9d3fec867bbcc3462507c315153db57d2 DIST python-gentoo-patches-3.10.9.tar.xz 12216 BLAKE2B ced4f951089c51ddaab6c62ade9d2c84f69e7e1baf2acf5247559534c7d0fb0e88dca1222f5bd2209b4e61f5aca17279b8054f269535dbc10de0786c2c5779f5 SHA512 2d01f0f3831beeba004517bb82f7d616f25f08e5c755409ecff79cd68e0a619b5bf6802fffd0e5f7f39f1d9d93e65b018b91cdeb337a5e47f1651f36bea0e96e DIST python-gentoo-patches-3.11.1.tar.xz 7076 BLAKE2B 3ec45f7529d34eabc9d9ba7fa7f8dd51d8754d9758a605b61857a9fd80386a0357837c925263ad7b0e207ff916944b94cc0e03c0f59921f839d5e51d92f0e47e SHA512 4253dbfa057a91db584b92550e2d39d87986f33041233bc400dd0254cbd95415b33fc47b0fe997bb84192c755bc16d3d31941bba4c216ee4d65facf0b48c7862 -DIST python-gentoo-patches-3.12.0a3.tar.xz 6152 BLAKE2B 6c8c88100d184440cf27a4b9baf4f192310f62960b2061adca8dd423745836048f3f8489c434c51ab7572320356bc889498d68f3635f174194d6009e1b9277e4 SHA512 7b0dbcbefeafbdb2a822bb06950844ff21336ba1685a2af6bf2bd32b1ecde7c17591d01b2a018105b8c094149a9804d709c3ca17af67378644ad40fd5e02c012 +DIST python-gentoo-patches-3.11.2_p1.tar.xz 7788 BLAKE2B 9652c46cd323958a43e26fd6b0afdd8f214953db59d9acf133366f7576502578c10e0a80ca13a9d768442d79c71dd6d095d73ef2bbbd1f79ef269a9ee20fc4b8 SHA512 7c5794e582d8ea5f99acb9ccf87c7e1f45a6557d0eb95de2b8c0cd7831f22e53eef0f03f32ca37568d1742024be127f0219463351f5b604f258c8a9985f89ea9 DIST python-gentoo-patches-3.12.0a4.tar.xz 8504 BLAKE2B 1257c1fe428fc967ef7d3107f99e4fcef0758a2bfa5b345bf69bb47bc0af1644b449f2b11b61148a8f79ed583a80365432d78ec4bade3d92070f08ad2ff568c2 SHA512 142f5d2ee8c1beeb6084bb6b48a0bbdcde907f48f514ac7743f0e6898a761696bb7788861fcb5c938cc36f212d444ddcfe874880ac8b4d0d54bc8ec04b166ca0 -DIST python-gentoo-patches-3.8.16.tar.xz 28716 BLAKE2B 28ccad9d77a89f80f72dd12eb89d657825e80061eaa069d4c491736bffd87b235f483b9d079b9f383377ea4bc6c19471bb6a4869a37fc0401abe28e2444fd9d2 SHA512 fe94ee2851af5c87c64ea3af5c1a744a53dcb03743f824a7726803daf454f38511894e24fe68be9de4ab59d1798161a3c320748309d04afd1e77906df353a246 -DIST python-gentoo-patches-3.9.16.tar.xz 23348 BLAKE2B 26b66e57530d167776d2aee60fd4620fc8e6c229f371616fdaa74aa2f03fd5a50b61653a5f34e0f2659901ba167af7c2aadbb0d2db773ab08bac8b3125c84b77 SHA512 8260369d96a6328ad8498359ecc56f48cb02015547065cdaec28a6bb2293bef420cb12764fae9fdd13f4a6faa60c4c402e804a22cbed7dca031ac1679032f9f6 +DIST python-gentoo-patches-3.12.0a5.tar.xz 7704 BLAKE2B 7224d3e4318313183a10dc0d4fa73ab589b9de8096945750f31d45371b926f7e2cbeb2c672c254e369f04bb5588a79335ceea2e3ce4968e76f70206bdc3c9672 SHA512 951d6fd25e113bf29fb334a9162bc132d27a8c3186c8b6cbaddfbdea8ccd221fe126d09cf7c6df59942d49dac8561a4e168468daa0e7cd0d0d3a925166b4d835 +DIST python-gentoo-patches-3.8.16_p2.tar.xz 30888 BLAKE2B c1816cd8b043b9aa3629a7753b7a9afa7c9af5d35b81954113af40632c97dabaa2148f0b920d9a37e8f4ebeadc1d76788a904c254ea842ea1062d552d2208e8e SHA512 6383c3f07fc7d6f37bb0cf9af27544323784eb2ded9b6f7913f3f59f5011ccb5615fb1adcc9eb3f9a58a98b7a2c24393bfbeef0b85728d77404621e29cb72656 +DIST python-gentoo-patches-3.9.16_p1.tar.xz 25564 BLAKE2B e6b7f20bb0457011d74f441d58eb0c9c4426a61bf0f8a2146f0180104c7b8b5054a04afc664374a17f3770d3ae94836099c362e841e4c00631a75fc56a2b352d SHA512 43f473dba8f6bd19c6a30f169ec8e8abb9eefe7d26c357884ee27cabf1b5876c079ea0e9454b9e52021d15f070e0a824e3366cfde20d57175f5f89774ee50a5b diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16-r1.ebuild index 3e4ffcf390..46d4968296 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16-r1.ebuild @@ -27,7 +27,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="PSF-2" SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" IUSE=" berkdb bluetooth build examples gdbm hardened +ncurses +readline +sqlite +ssl tk valgrind wininst +xml diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16.ebuild deleted file mode 100644 index 19033636cd..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-2.7.18_p16.ebuild +++ /dev/null @@ -1,316 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" -WANT_LIBTOOL="none" - -inherit autotools flag-o-matic pax-utils toolchain-funcs verify-sig - -MY_P="Python-${PV%_p*}" -PYVER=$(ver_cut 1-2) -PATCHSET="python-gentoo-patches-${PV}" - -DESCRIPTION="An interpreted, interactive, object-oriented programming language" -HOMEPAGE=" - https://www.python.org/ - https://github.com/python/cpython/ - https://gitweb.gentoo.org/fork/cpython.git/ -" -SRC_URI=" - https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz - https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz - verify-sig? ( - https://www.python.org/ftp/python/${PV%_*}/${MY_P}.tar.xz.asc - ) -" -S="${WORKDIR}/${MY_P}" - -LICENSE="PSF-2" -SLOT="${PYVER}" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE=" - berkdb bluetooth build examples gdbm hardened +ncurses +readline - +sqlite +ssl tk valgrind wininst +xml -" -RESTRICT="test" - -# Do not add a dependency on dev-lang/python to this ebuild. -# If you need to apply a patch which requires python for bootstrapping, please -# run the bootstrap code on your dev box and include the results in the -# patchset. See bug 447752. - -RDEPEND=" - app-arch/bzip2:= - dev-libs/libffi:= - >=sys-libs/zlib-1.1.3:= - virtual/libcrypt:= - virtual/libintl - berkdb? ( || ( - sys-libs/db:5.3 - sys-libs/db:4.8 - ) ) - gdbm? ( sys-libs/gdbm:=[berkdb] ) - ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( >=sys-libs/readline-4.1:= ) - sqlite? ( >=dev-db/sqlite-3.3.8:3= ) - ssl? ( dev-libs/openssl:= ) - tk? ( - >=dev-lang/tcl-8.0:= - >=dev-lang/tk-8.0:= - dev-tcltk/blt:= - dev-tcltk/tix - ) - xml? ( >=dev-libs/expat-2.1:= ) -" -# bluetooth requires headers from bluez -DEPEND=" - ${RDEPEND} - bluetooth? ( net-wireless/bluez ) - valgrind? ( dev-util/valgrind ) -" -BDEPEND=" - app-alternatives/awk - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-python ) -" -RDEPEND+=" - !build? ( app-misc/mime-types ) -" - -VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/python.org.asc - -QA_PKGCONFIG_VERSION=${PYVER} - -pkg_setup() { - if use berkdb; then - ewarn "'bsddb' module is out-of-date and no longer maintained inside" - ewarn "dev-lang/python. 'bsddb' and 'dbhash' modules have been additionally" - ewarn "removed in Python 3. A maintained alternative of 'bsddb3' module" - ewarn "is provided by dev-python/bsddb3." - fi -} - -src_unpack() { - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} - fi - default -} - -src_prepare() { - # Ensure that internal copies of expat, libffi and zlib are not used. - rm -r Modules/expat || die - rm -r Modules/_ctypes/libffi* || die - rm -r Modules/zlib || die - - local PATCHES=( - "${WORKDIR}/${PATCHSET}" - ) - - default - - sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \ - Lib/distutils/command/install.py \ - Lib/distutils/sysconfig.py \ - Lib/site.py \ - Lib/sysconfig.py \ - Lib/test/test_site.py \ - Makefile.pre.in \ - Modules/Setup.dist \ - Modules/getpath.c \ - setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@" - - eautoreconf -} - -src_configure() { - # dbm module can be linked against berkdb or gdbm. - # Defaults to gdbm when both are enabled, #204343. - local disable - use berkdb || use gdbm || disable+=" dbm" - use berkdb || disable+=" _bsddb" - # disable automagic bluetooth headers detection - use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no - use gdbm || disable+=" gdbm" - use ncurses || disable+=" _curses _curses_panel" - use readline || disable+=" readline" - use sqlite || disable+=" _sqlite3" - use ssl || export PYTHON_DISABLE_SSL="1" - use tk || disable+=" _tkinter" - use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat. - export PYTHON_DISABLE_MODULES="${disable}" - - if ! use xml; then - ewarn "You have configured Python without XML support." - ewarn "This is NOT a recommended configuration as you" - ewarn "may face problems parsing any XML documents." - fi - - if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then - einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}" - fi - - append-flags -fwrapv - - filter-flags -malign-double - - if tc-is-cross-compiler; then - # Force some tests that try to poke fs paths. - export ac_cv_file__dev_ptc=no - export ac_cv_file__dev_ptmx=yes - fi - - # Export CXX so it ends up in /usr/lib/python2.X/config/Makefile. - tc-export CXX - # The configure script fails to use pkg-config correctly. - # http://bugs.python.org/issue15506 - export ac_cv_path_PKG_CONFIG=$(tc-getPKG_CONFIG) - - local dbmliborder= - if use gdbm; then - dbmliborder+="${dbmliborder:+:}gdbm" - fi - if use berkdb; then - dbmliborder+="${dbmliborder:+:}bdb" - fi - - local myeconfargs=( - # The check is broken on clang, and gives false positive: - # https://bugs.gentoo.org/596798 - # (upstream dropped this flag in 3.2a4 anyway) - ac_cv_opt_olimit_ok=no - # glibc-2.30 removes it; since we can't cleanly force-rebuild - # Python on glibc upgrade, remove it proactively to give - # a chance for users rebuilding python before glibc - ac_cv_header_stropts_h=no - - --with-fpectl - --enable-shared - --enable-ipv6 - --with-threads - --enable-unicode=ucs4 - --infodir='${prefix}/share/info' - --mandir='${prefix}/share/man' - --with-computed-gotos - --with-dbmliborder="${dbmliborder}" - --with-libc= - --enable-loadable-sqlite-extensions - --without-ensurepip - --with-system-expat - --with-system-ffi - - $(use_with valgrind) - ) - - # disable implicit optimization/debugging flags - local -x OPT= - econf "${myeconfargs[@]}" - - if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then - eerror "configure has detected that the sem_open function is broken." - eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." - die "Broken sem_open function (bug 496328)" - fi - - # install epython.py as part of stdlib - echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die -} - -src_compile() { - # Ensure sed works as expected - # https://bugs.gentoo.org/594768 - local -x LC_ALL=C - - # Avoid invoking pgen for cross-compiles. - touch Include/graminit.h Python/graminit.c || die - - emake - - # Work around bug 329499. See also bug 413751 and 457194. - if has_version dev-libs/libffi[pax-kernel]; then - pax-mark E python - else - pax-mark m python - fi -} - -src_test() { - # Tests will not work when cross compiling. - if tc-is-cross-compiler; then - elog "Disabling tests due to crosscompiling." - return - fi - - # Skip failing tests. - local skipped_tests=( distutils gdb ) - - for test in "${skipped_tests[@]}"; do - mv Lib/test/test_${test}.py "${T}"/ || die - done - - # bug 660358 - local -x COLUMNS=80 - - # Daylight saving time problem - # https://bugs.python.org/issue22067 - # https://bugs.gentoo.org/610628 - local -x TZ=UTC - - # Rerun failed tests in verbose mode (regrtest -w). - emake test EXTRATESTOPTS="-w" < /dev/tty - - for test in "${skipped_tests[@]}"; do - mv "${T}/test_${test}.py" Lib/test/ || die - done -} - -src_install() { - local libdir=${ED}/usr/$(get_libdir)/python${PYVER} - - emake DESTDIR="${D}" altinstall - - sed -e "s/\(LDFLAGS=\).*/\1/" -i "${libdir}/config/Makefile" || die - - # Remove static library - rm "${ED}"/usr/$(get_libdir)/libpython*.a || die - - # Fix collisions between different slots of Python. - mv "${ED}/usr/bin/2to3" "${ED}/usr/bin/2to3-${PYVER}" || die - mv "${ED}/usr/bin/pydoc" "${ED}/usr/bin/pydoc${PYVER}" || die - mv "${ED}/usr/bin/idle" "${ED}/usr/bin/idle${PYVER}" || die - rm "${ED}/usr/bin/smtpd.py" || die - - if ! use berkdb; then - rm -r "${libdir}/"{bsddb,dbhash.py*,test/test_bsddb*} || die - fi - if ! use sqlite; then - rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die - fi - if ! use tk; then - rm -r "${ED}/usr/bin/idle${PYVER}" || die - rm -r "${libdir}/"{idlelib,lib-tk} || die - fi - if ! use wininst; then - rm "${libdir}/distutils/command/"wininst-*.exe || die - fi - - dodoc Misc/{ACKS,HISTORY,NEWS} - - if use examples; then - docinto examples - dodoc -r Tools - fi - - newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} - newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} - sed \ - -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ - -e "s:@PYDOC@:pydoc${PYVER}:" \ - -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ - "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" - - # python2* is no longer wrapped, so just symlink it - local pymajor=${PYVER%.*} - dosym "python${PYVER}" "/usr/bin/python${pymajor}" - dosym "python${PYVER}-config" "/usr/bin/python${pymajor}-config" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.10_p1.ebuild similarity index 84% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16-r3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.10_p1.ebuild index 3f281df2bb..76282abcec 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.10.10_p1.ebuild @@ -4,7 +4,7 @@ EAPI="7" WANT_LIBTOOL="none" -inherit autotools flag-o-matic multiprocessing pax-utils +inherit autotools check-reqs flag-o-matic multiprocessing pax-utils inherit prefix python-utils-r1 toolchain-funcs verify-sig MY_PV=${PV/_rc/rc} @@ -30,8 +30,8 @@ LICENSE="PSF-2" SLOT="${PYVER}" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE=" - bluetooth build +ensurepip examples gdbm hardened lto +ncurses pgo - +readline +sqlite +ssl test tk valgrind wininst +xml + bluetooth build +ensurepip examples gdbm hardened libedit lto + +ncurses pgo +readline +sqlite +ssl test tk valgrind +xml " RESTRICT="!test? ( test )" @@ -43,7 +43,9 @@ RESTRICT="!test? ( test )" RDEPEND=" app-arch/bzip2:= app-arch/xz-utils:= + dev-lang/python-exec[python_targets_python3_10(-)] dev-libs/libffi:= + dev-python/gentoo-common sys-apps/util-linux:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= @@ -51,7 +53,10 @@ RDEPEND=" ensurepip? ( dev-python/ensurepip-wheels ) gdbm? ( sys-libs/gdbm:=[berkdb] ) ncurses? ( >=sys-libs/ncurses-5.2:= ) - readline? ( >=sys-libs/readline-4.1:= ) + readline? ( + !libedit? ( >=sys-libs/readline-4.1:= ) + libedit? ( dev-libs/libedit:= ) + ) sqlite? ( >=dev-db/sqlite-3.3.8:3= ) ssl? ( >=dev-libs/openssl-1.1.1:= ) tk? ( @@ -61,13 +66,14 @@ RDEPEND=" dev-tcltk/tix ) xml? ( >=dev-libs/expat-2.1:= ) + !! /dev/null || die + # We disable _ctypes and _crypt for CBUILD because Python's setup.py can't handle locating + # libdir correctly for cross. + PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" \ + ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}" + + # Avoid as many dependencies as possible for the cross build. + cat >> Makefile <<-EOF || die + MODULE_NIS_STATE=disabled + MODULE__DBM_STATE=disabled + MODULE__GDBM_STATE=disabled + MODULE__DBM_STATE=disabled + MODULE__SQLITE3_STATE=disabled + MODULE__HASHLIB_STATE=disabled + MODULE__SSL_STATE=disabled + MODULE__CURSES_STATE=disabled + MODULE__CURSES_PANEL_STATE=disabled + MODULE_READLINE_STATE=disabled + MODULE__TKINTER_STATE=disabled + MODULE_PYEXPAT_STATE=disabled + MODULE_ZLIB_STATE=disabled + EOF + + # Unfortunately, we do have to build this immediately, and + # not in src_compile, because CHOST configure for Python + # will check the existence of the --with-build-python value + # immediately. + PYTHON_DISABLE_MODULES="${PYTHON_DISABLE_MODULES} _ctypes _crypt" emake + popd &> /dev/null || die + fi + + # pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get + # propagated to sysconfig for built extensions + local -x CFLAGS_NODIST=${CFLAGS} + local -x LDFLAGS_NODIST=${LDFLAGS} + local -x CFLAGS= LDFLAGS= + + # Fix implicit declarations on cross and prefix builds. Bug #674070. + if use ncurses; then + append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw + fi + + hprefixify setup.py + econf "${myeconfargs[@]}" + + if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then + eerror "configure has detected that the sem_open function is broken." + eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777." + die "Broken sem_open function (bug 496328)" + fi + + # force-disable modules we don't want built + local disable_modules=( NIS ) + use gdbm || disable_modules+=( _GDBM _DBM ) + use sqlite || disable_modules+=( _SQLITE3 ) + use ssl || disable_modules+=( _HASHLIB _SSL ) + use ncurses || disable_modules+=( _CURSES _CURSES_PANEL ) + use readline || disable_modules+=( READLINE ) + use tk || disable_modules+=( _TKINTER ) + + local mod + for mod in "${disable_modules[@]}"; do + echo "MODULE_${mod}_STATE=disabled" + done >> Makefile || die + + # install epython.py as part of stdlib + echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die +} + +src_compile() { + # Ensure sed works as expected + # https://bugs.gentoo.org/594768 + local -x LC_ALL=C + # Prevent using distutils bundled by setuptools. + # https://bugs.gentoo.org/823728 + export SETUPTOOLS_USE_DISTUTILS=stdlib + export PYTHONSTRICTEXTENSIONBUILD=1 + + # Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't + # end up writing bytecode & violating sandbox. + # bug #831897 + local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE} + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + addpredict "/usr/lib/python${PYVER}/site-packages" + fi + + # also need to clear the flags explicitly here or they end up + # in _sysconfigdata* + emake CPPFLAGS= CFLAGS= LDFLAGS= + + # Restore saved value from above. + local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE} + + # Work around bug 329499. See also bug 413751 and 457194. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E python + else + pax-mark m python + fi +} + +src_test() { + # Tests will not work when cross compiling. + if tc-is-cross-compiler; then + elog "Disabling tests due to crosscompiling." + return + fi + + # this just happens to skip test_support.test_freeze that is broken + # without bundled expat + # TODO: get a proper skip for it upstream + local -x LOGNAME=buildbot + + local test_opts=( + -u-network + -j "$(makeopts_jobs)" + + # fails + -x test_gdb + ) + + if use sparc ; then + # bug #788022 + test_opts+=( + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + ) + fi + + # workaround docutils breaking tests + cat > Lib/docutils.py <<-EOF || die + raise ImportError("Thou shalt not import!") + EOF + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + # workaround https://bugs.gentoo.org/775416 + addwrite "/usr/lib/python${PYVER}/site-packages" + + nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + rm Lib/docutils.py || die + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + # -j1 hack for now for bug #843458 + emake -j1 DESTDIR="${D}" altinstall + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || die + + # Cheap hack to get version with ABIFLAGS + local abiver=$(cd "${ED}/usr/include"; echo python*) + if [[ ${abiver} != python${PYVER} ]]; then + # Replace python3.X with a symlink to python3.Xm + rm "${ED}/usr/bin/python${PYVER}" || die + dosym "${abiver}" "/usr/bin/python${PYVER}" + # Create python3.X-config symlink + dosym "${abiver}-config" "/usr/bin/python${PYVER}-config" + # Create python-3.5m.pc symlink + dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc" + fi + + # python seems to get rebuilt in src_install (bug 569908) + # Work around it for now. + if has_version dev-libs/libffi[pax-kernel]; then + pax-mark E "${ED}/usr/bin/${abiver}" + else + pax-mark m "${ED}/usr/bin/${abiver}" + fi + + rm -r "${libdir}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"sqlite3 || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die + fi + + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + + dodoc Misc/{ACKS,HISTORY,NEWS} + + if use examples; then + docinto examples + find Tools -name __pycache__ -exec rm -fr {} + || die + dodoc -r Tools + fi + insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510 + local libname=$( + printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | + emake --no-print-directory -s -f - 2>/dev/null + ) + newins Tools/gdb/libpython.py "${libname}"-gdb.py + + newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER} + newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER} + sed \ + -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \ + -e "s:@PYDOC@:pydoc${PYVER}:" \ + -i "${ED}/etc/conf.d/pydoc-${PYVER}" \ + "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed" + + # python-exec wrapping support + local pymajor=${PYVER%.*} + local EPYTHON=python${PYVER} + local scriptdir=${D}$(python_get_scriptdir) + mkdir -p "${scriptdir}" || die + # python and pythonX + ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die + ln -s "python${pymajor}" "${scriptdir}/python" || die + # python-config and pythonX-config + # note: we need to create a wrapper rather than symlinking it due + # to some random dirname(argv[0]) magic performed by python-config + cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die + #!/bin/sh + exec "${abiver}-config" "\${@}" + EOF + chmod +x "${scriptdir}/python${pymajor}-config" || die + ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die + # 2to3, pydoc + ln -s "../../../bin/2to3-${PYVER}" "${scriptdir}/2to3" || die + ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die + # idle + if use tk; then + ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die + fi +} + +pkg_postinst() { + local v + for v in ${REPLACING_VERSIONS}; do + if ver_test "${v}" -lt 3.11.0_beta4-r2; then + ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files" + ewarn "installed previously are no longer valid and will be regenerated" + ewarn "(or ignored) on the next import. This may cause sandbox failures" + ewarn "when installing some packages and checksum mismatches when removing" + ewarn "old versions. To actively prevent this, rebuild all packages" + ewarn "installing Python 3.11 modules, e.g. using:" + ewarn + ewarn " emerge -1v /usr/lib/python3.11/site-packages" + fi + done +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha4.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha4-r1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha4.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha4-r1.ebuild index 93317e0a72..c2c9e14920 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha4-r1.ebuild @@ -46,6 +46,7 @@ RDEPEND=" app-crypt/libb2 >=dev-libs/expat-2.1:= dev-libs/libffi:= + dev-python/gentoo-common sys-apps/util-linux:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= @@ -229,6 +230,9 @@ src_configure() { --libdir="${cbuild_libdir:2}" + # Avoid needing to load the right libpython.so. + --disable-shared + # As minimal as possible for the mini CBUILD Python # we build just for cross to satisfy --with-build-python. --without-lto @@ -439,6 +443,8 @@ src_install() { rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die fi + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + dodoc Misc/{ACKS,HISTORY,NEWS} if use examples; then diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha3-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha5.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha3-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha5.ebuild index 860a12f155..c2c9e14920 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_alpha5.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -46,6 +46,7 @@ RDEPEND=" app-crypt/libb2 >=dev-libs/expat-2.1:= dev-libs/libffi:= + dev-python/gentoo-common sys-apps/util-linux:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= @@ -116,7 +117,6 @@ src_prepare() { # Ensure that internal copies of expat and libffi are not used. # TODO: Makefile has annoying deps on expat headers #rm -r Modules/expat || die - rm -r Modules/_ctypes/libffi* || die local PATCHES=( "${WORKDIR}/${PATCHSET}" @@ -200,7 +200,6 @@ src_configure() { --enable-loadable-sqlite-extensions --without-ensurepip --with-system-expat - --with-system-ffi --with-platlibdir=lib --with-pkg-config=yes --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip @@ -231,6 +230,9 @@ src_configure() { --libdir="${cbuild_libdir:2}" + # Avoid needing to load the right libpython.so. + --disable-shared + # As minimal as possible for the mini CBUILD Python # we build just for cross to satisfy --with-build-python. --without-lto @@ -441,6 +443,8 @@ src_install() { rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die fi + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + dodoc Misc/{ACKS,HISTORY,NEWS} if use examples; then diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16_p2.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16-r2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16_p2.ebuild index 57fdc6566d..3032411863 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.8.16_p2.ebuild @@ -111,6 +111,10 @@ src_prepare() { sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die + if ! use wininst; then + rm Lib/distutils/command/wininst*.exe || die + fi + eautoreconf } @@ -199,6 +203,9 @@ src_configure() { --libdir="${cbuild_libdir:2}" + # Avoid needing to load the right libpython.so. + --disable-shared + # As minimal as possible for the mini CBUILD Python # we build just for cross. --without-lto @@ -368,9 +375,6 @@ src_install() { rm -r "${ED}/usr/bin/idle${PYVER}" || die rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die fi - if ! use wininst; then - rm "${libdir}/distutils/command/"wininst-*.exe || die - fi dodoc Misc/{ACKS,HISTORY,NEWS} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.16.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.16_p1.ebuild similarity index 98% rename from sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.16.ebuild rename to sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.16_p1.ebuild index f6dbbd4312..759118f416 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.16.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.9.16_p1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="7" @@ -45,6 +45,7 @@ RDEPEND=" app-arch/xz-utils:= dev-lang/python-exec[python_targets_python3_9(-)] dev-libs/libffi:= + dev-python/gentoo-common sys-apps/util-linux:= >=sys-libs/zlib-1.1.3:= virtual/libcrypt:= @@ -240,6 +241,9 @@ src_configure() { --libdir="${cbuild_libdir:2}" + # Avoid needing to load the right libpython.so. + --disable-shared + # As minimal as possible for the mini CBUILD Python # we build just for cross. --without-lto @@ -426,6 +430,8 @@ src_install() { rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || die fi + ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die + dodoc Misc/{ACKS,HISTORY,NEWS} if use examples; then diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/Manifest index 9f94bcfc7e..32bbef99f8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/Manifest @@ -1,3 +1 @@ -DIST jsoncpp-1.9.3.tar.gz 212922 BLAKE2B 6f89762e899ffe127705a30c1fe86f458d62fa05b8dbde6c465c73b6855d3945f3d739ff0c26e1a6326a211c946277908684ace9363df72ba0f460f66b3e3fd8 SHA512 f1c035d54ed952d8d4e41acab5c3ecf6aa445f348f98aeac2e7c89555ec2f6421d727b3bc4c2f54176afce137c545b20d886562901953ec091f91890e91e8559 -DIST jsoncpp-1.9.4.tar.gz 214057 BLAKE2B 9a8c52e5d0b78f1593c93bc40f48d3789b031ba0da519c99cce17f1f6e104b24e0ffe88138c25da6dfa250586aeb9e98d00fbf74d9fb9309b29a6d4f17762263 SHA512 adfd4afbdf6b79bd37edcf0e248f07864994f1c4bcb7431f3b44102490ce467f72381908066655fa486dec12f467af0a11f42f859bbf719895974c7339db7d22 DIST jsoncpp-1.9.5.tar.gz 216055 BLAKE2B 744275297647be8f1ac7bbf6c818e5106fc122591b3fb68c37cf33f5b3b7d6666e8429bb7ca2ae693202a5a83c274303804e21ebb27f05ba235568bf75a9b375 SHA512 1d06e044759b1e1a4cc4960189dd7e001a0a4389d7239a6d59295af995a553518e4e0337b4b4b817e70da5d9731a4c98655af90791b6287870b5ff8d73ad8873 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.3.ebuild deleted file mode 100644 index 1b704d1888..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.3.ebuild +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit meson python-any-r1 - -DESCRIPTION="C++ JSON reader and writer" -HOMEPAGE="https://github.com/open-source-parsers/jsoncpp" -SRC_URI=" - https://github.com/open-source-parsers/${PN}/archive/${PV}.tar.gz - -> ${P}.tar.gz" - -LICENSE="|| ( public-domain MIT )" -SLOT="0/24" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="doc test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${PYTHON_DEPS} - doc? ( app-doc/doxygen )" -RDEPEND="" - -src_configure() { - local emesonargs=( - # Follow Debian, Ubuntu, Arch convention for headers location - # bug #452234 - --includedir include/jsoncpp - -Dtests=$(usex test true false) - ) - meson_src_configure -} - -src_compile() { - meson_src_compile - - if use doc; then - echo "${PV}" > version || die - "${EPYTHON}" doxybuild.py --doxygen="${EPREFIX}"/usr/bin/doxygen || die - HTML_DOCS=( dist/doxygen/jsoncpp*/. ) - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.4.ebuild deleted file mode 100644 index 5c858b99e5..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.4.ebuild +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit meson python-any-r1 - -DESCRIPTION="C++ JSON reader and writer" -HOMEPAGE="https://github.com/open-source-parsers/jsoncpp" -SRC_URI=" - https://github.com/open-source-parsers/${PN}/archive/${PV}.tar.gz - -> ${P}.tar.gz" - -LICENSE="|| ( public-domain MIT )" -SLOT="0/24" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="doc test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${PYTHON_DEPS} - doc? ( app-doc/doxygen )" -RDEPEND="" - -src_configure() { - local emesonargs=( - # Follow Debian, Ubuntu, Arch convention for headers location - # bug #452234 - --includedir include/jsoncpp - -Dtests=$(usex test true false) - ) - meson_src_configure -} - -src_compile() { - meson_src_compile - - if use doc; then - echo "${PV}" > version || die - "${EPYTHON}" doxybuild.py --doxygen="${EPREFIX}"/usr/bin/doxygen || die - HTML_DOCS=( dist/doxygen/jsoncpp*/. ) - fi -} - -src_test() { - # increase test timeout due to failures on slower hardware - meson_src_test -t 2 -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.5.ebuild index 328727ef83..19e07ba204 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/jsoncpp-1.9.5.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{8..10} ) +PYTHON_COMPAT=( python3_{9..11} ) inherit meson python-any-r1 DESCRIPTION="C++ JSON reader and writer" @@ -14,7 +14,7 @@ SRC_URI=" LICENSE="|| ( public-domain MIT )" SLOT="0/25" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="doc test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/metadata.xml index 1fa93a6cf3..f95a917987 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-libs/jsoncpp/metadata.xml @@ -6,6 +6,7 @@ Michał Górny + cpe:/a:jsoncpp_project:jsoncpp open-source-parsers/jsoncpp jsoncpp diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest index 610575bfa2..da86547360 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/Manifest @@ -1,2 +1 @@ -DIST libnl-1.1.4.tar.gz 1174974 BLAKE2B e6466e15db17fe4725674d77c6cdcefac73e51346f6f4378bc3ea8409c1534519cc28f1123c8201e78f6b95254701a2f9591f907b3cc597ac1210fd3f8b832ea SHA512 25e26ddcc16540346ea34815ab6ac094177e5cee2eb3d843c4f8b30cd9d83390a3e87cb46046dc3bd9ae4d21f77e57bb3827c2cfc588eb18afe049921f2030b4 -DIST libnl-3.5.0.tar.gz 967835 BLAKE2B cf21c1ffa89799b91bf4bddb8833d5af5c62eb1c53a078ee55a2888bd8439e1ae6db8886c9c4f937297962faac6873b4cf5211ee3d1e5354d96b5dc545a6fc2d SHA512 9c94c09bac34297493b3ea482713d7c0865d2839b5042e5c7d1ed008e2402ab63df35a18e272f40b2cce27d0c31dc733fe7e4b2d376e7ca847a2b0d5e90de50c +DIST libnl-3.7.0.tar.gz 1000913 BLAKE2B 22c418ea520416d79ee4552ab6bc5ba99239b29e074c840d31b0ec4171a0403ea9d2c1afcbf1b3428564dd371cadd99bc062ae7540e7496f970c4fb98f967e84 SHA512 80fbbc079299c90afd2a5eda62e4d4f98bf4ef23958c3ce5101f4ed4d81d783af733213bb3bab15f218555d8460bc2394898f909f4ac024fc27281faec86a041 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-flags.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-flags.patch deleted file mode 100644 index dc512c587b..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-flags.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/lib/Makefile -+++ b/lib/Makefile -@@ -48,7 +48,7 @@ - - $(OUT_SLIB): ../Makefile.opts $(OBJ) - @echo " LD $(OUT_SLIB)"; \ -- $(CC) -shared -Wl,-soname,libnl.so.1 -o $(OUT_SLIB) $(OBJ) $(LIBNL_LIB) -lc -+ $(CC) $(CFLAGS) $(LDFLAGS) -shared -Wl,-soname,libnl.so.1 -o $(OUT_SLIB) $(OBJ) $(LIBNL_LIB) -lc - @echo " LN $(OUT_SLIB) $(LN1_SLIB)"; \ - rm -f $(LN1_SLIB) ; $(LN) -s $(OUT_SLIB) $(LN1_SLIB) - @echo " LN $(LN1_SLIB) $(LN_SLIB)"; \ diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-vlan-header.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-vlan-header.patch deleted file mode 100644 index c4c2fc6382..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1-vlan-header.patch +++ /dev/null @@ -1,80 +0,0 @@ -From: Patrick McHardy -Date: Fri, 18 Jan 2008 16:55:48 +0000 (+0100) -Subject: [LIBNL]: Add if_vlan.h -X-Git-Url: http://git.kernel.org/?p=libs%2Fnetlink%2Flibnl.git;a=commitdiff_plain;h=e91bb2ffb090955d443e643a25b250bf3d33534a;hp=7f6b7a8eea0334b34d58dec72c66121a76f08958 - -[LIBNL]: Add if_vlan.h - -vlan support needs VLAN_FLAG_REORDER_HDR, which is not available in -older if_vlan.h versions. Add the current version from the kernel. - -Signed-off-by: Patrick McHardy ---- - -diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h -new file mode 100644 -index 0000000..068cd7b ---- /dev/null -+++ include/linux/if_vlan.h -@@ -0,0 +1,61 @@ -+/* -+ * VLAN An implementation of 802.1Q VLAN tagging. -+ * -+ * Authors: Ben Greear -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License -+ * as published by the Free Software Foundation; either version -+ * 2 of the License, or (at your option) any later version. -+ * -+ */ -+ -+#ifndef _LINUX_IF_VLAN_H_ -+#define _LINUX_IF_VLAN_H_ -+ -+ -+/* VLAN IOCTLs are found in sockios.h */ -+ -+/* Passed in vlan_ioctl_args structure to determine behaviour. */ -+enum vlan_ioctl_cmds { -+ ADD_VLAN_CMD, -+ DEL_VLAN_CMD, -+ SET_VLAN_INGRESS_PRIORITY_CMD, -+ SET_VLAN_EGRESS_PRIORITY_CMD, -+ GET_VLAN_INGRESS_PRIORITY_CMD, -+ GET_VLAN_EGRESS_PRIORITY_CMD, -+ SET_VLAN_NAME_TYPE_CMD, -+ SET_VLAN_FLAG_CMD, -+ GET_VLAN_REALDEV_NAME_CMD, /* If this works, you know it's a VLAN device, btw */ -+ GET_VLAN_VID_CMD /* Get the VID of this VLAN (specified by name) */ -+}; -+ -+enum vlan_flags { -+ VLAN_FLAG_REORDER_HDR = 0x1, -+}; -+ -+enum vlan_name_types { -+ VLAN_NAME_TYPE_PLUS_VID, /* Name will look like: vlan0005 */ -+ VLAN_NAME_TYPE_RAW_PLUS_VID, /* name will look like: eth1.0005 */ -+ VLAN_NAME_TYPE_PLUS_VID_NO_PAD, /* Name will look like: vlan5 */ -+ VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD, /* Name will look like: eth0.5 */ -+ VLAN_NAME_TYPE_HIGHEST -+}; -+ -+struct vlan_ioctl_args { -+ int cmd; /* Should be one of the vlan_ioctl_cmds enum above. */ -+ char device1[24]; -+ -+ union { -+ char device2[24]; -+ int VID; -+ unsigned int skb_priority; -+ unsigned int name_type; -+ unsigned int bind_type; -+ unsigned int flag; /* Matches vlan_dev_info flags */ -+ } u; -+ -+ short vlan_qos; -+}; -+ -+#endif /* !(_LINUX_IF_VLAN_H_) */ diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch deleted file mode 100644 index e370a5e62f..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-1.1.3-offsetof.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/include/netlink-local.h -+++ b/include/netlink-local.h -@@ -343,7 +343,9 @@ - } - - #define ARRAY_SIZE(X) (sizeof(X) / sizeof((X)[0])) -+#ifndef offsetof - #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) -+#endif - - #define __init __attribute__ ((constructor)) - #define __exit __attribute__ ((destructor)) diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-99999999-2to3.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-99999999-2to3.patch deleted file mode 100644 index 66a16406d7..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/files/libnl-99999999-2to3.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- a/python/netlink/route/links/bridge.py -+++ b/python/netlink/route/links/bridge.py -@@ -6,7 +6,7 @@ - - """ - --from __future__ import absolute_import -+ - - from ... import core as netlink - from .. import capi as capi -@@ -19,10 +19,10 @@ - - def bridge_assert_ext_info(self): - if self._has_ext_info == False: -- print """ -+ print(""" - Please update your kernel to be able to call this method. - Your current kernel bridge version is too old to support this extention. -- """ -+ """) - raise RuntimeWarning() - - def port_state2str(self, state): ---- a/doc/resolve-asciidoc-refs.py -+++ b/doc/resolve-asciidoc-refs.py -@@ -22,4 +22,4 @@ - - rc = re.compile('|'.join(map(re.escape, sorted(refs, reverse=True)))) - for line in open(sys.argv[1], 'r'): -- print rc.sub(translate, line), -+ print(rc.sub(translate, line), end=' ') ---- a/doc/doxygen-link.py -+++ b/doc/doxygen-link.py -@@ -1,6 +1,6 @@ - #!/usr/bin/env python - --from __future__ import print_function -+ - import fileinput - import re - import sys diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.4-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.4-r1.ebuild deleted file mode 100644 index 8f3ad2437d..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.4-r1.ebuild +++ /dev/null @@ -1,61 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit toolchain-funcs - -DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" -HOMEPAGE="https://www.infradead.org/~tgr/libnl/" -SRC_URI="http://www.infradead.org/~tgr/libnl/files/${P}.tar.gz" - -LICENSE="LGPL-2.1" -SLOT="1.1" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="doc static-libs" - -DEPEND="doc? ( app-doc/doxygen )" -DOCS=( ChangeLog ) - -PATCHES=( - "${FILESDIR}"/${PN}-1.1-vlan-header.patch - "${FILESDIR}"/${PN}-1.1-flags.patch - "${FILESDIR}"/${PN}-1.1.3-offsetof.patch -) - -src_prepare() { - default - - sed -i \ - -e '/@echo/d' \ - Makefile.rules {lib,src,tests}/Makefile || die - sed -i \ - -e 's|-g ||g' \ - Makefile.opts.in || die - - if ! use static-libs; then - sed -i lib/Makefile -e '/OUT_AR/d' || die - fi - - rm -f lib/libnl.a || die -} - -src_compile() { - emake AR="$(tc-getAR)" - - if use doc ; then - cd "${S}/doc" || die - emake gendoc - fi -} - -src_install() { - default - - if use doc ; then - cd "${S}/doc" || die - - docinto html - dodoc -r html/* - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.9999.ebuild deleted file mode 100644 index 14a4835802..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-1.1.9999.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit git-r3 toolchain-funcs - -DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" -HOMEPAGE="https://www.infradead.org/~tgr/libnl/" -EGIT_REPO_URI="https://github.com/tgraf/libnl-1.1-stable" - -LICENSE="LGPL-2.1" -SLOT="1.1" -IUSE="doc static-libs" - -BDEPEND="doc? ( app-doc/doxygen )" - -DOCS=( ChangeLog ) - -PATCHES=( - "${FILESDIR}"/${PN}-1.1-vlan-header.patch - "${FILESDIR}"/${PN}-1.1-flags.patch - "${FILESDIR}"/${PN}-1.1.3-offsetof.patch -) - -src_prepare() { - default - - sed -i \ - -e '/@echo/d' \ - Makefile.rules {lib,src,tests}/Makefile || die - sed -i \ - -e 's|-g ||g' \ - Makefile.opts.in || die - - if ! use static-libs ; then - sed -i lib/Makefile -e '/OUT_AR/d' || die - fi - - rm -f lib/libnl.a || die -} - -src_compile() { - emake AR="$(tc-getAR)" - - if use doc ; then - cd "${S}/doc" || die - emake gendoc - fi -} - -src_install() { - default - - if use doc ; then - cd "${S}/doc" || die - docinto html - dodoc -r html/* - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.5.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.7.0.ebuild similarity index 58% rename from sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.5.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.7.0.ebuild index bb1b8fad31..335a8c4210 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.5.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-3.7.0.ebuild @@ -1,11 +1,12 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -PYTHON_COMPAT=( python3_{7,8,9} ) DISTUTILS_OPTIONAL=1 -inherit distutils-r1 libtool multilib-minimal +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..10} ) +inherit autotools distutils-r1 multilib-minimal LIBNL_P=${P/_/-} LIBNL_DIR=${PV/_/} @@ -13,28 +14,33 @@ LIBNL_DIR=${LIBNL_DIR//./_} DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" -SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" -S="${WORKDIR}/${LIBNL_P}" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/thom311/libnl" + inherit git-r3 +else + SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" + + S="${WORKDIR}/${LIBNL_P}" +fi LICENSE="LGPL-2.1 utils? ( GPL-2 )" SLOT="3" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="+debug static-libs python test +threads utils" +IUSE="+debug python test utils" RESTRICT="!test? ( test )" RDEPEND="python? ( ${PYTHON_DEPS} )" DEPEND="${RDEPEND}" -BDEPEND=" - ${RDEPEND} - python? ( dev-lang/swig ) - test? ( dev-libs/check ) +BDEPEND="${RDEPEND} sys-devel/bison sys-devel/flex -" + python? ( + ${DISTUTILS_DEPS} + dev-lang/swig + ) + test? ( dev-libs/check )" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -DOCS=( ChangeLog ) - MULTILIB_WRAPPED_HEADERS=( # we do not install CLI stuff for non-native /usr/include/libnl3/netlink/cli/addr.h @@ -43,6 +49,7 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/libnl3/netlink/cli/ct.h /usr/include/libnl3/netlink/cli/exp.h /usr/include/libnl3/netlink/cli/link.h + /usr/include/libnl3/netlink/cli/mdb.h /usr/include/libnl3/netlink/cli/neigh.h /usr/include/libnl3/netlink/cli/qdisc.h /usr/include/libnl3/netlink/cli/route.h @@ -54,47 +61,53 @@ MULTILIB_WRAPPED_HEADERS=( src_prepare() { default - elibtoolize + eautoreconf if use python; then - cd "${S}"/python || die + pushd "${S}"/python > /dev/null || die distutils-r1_src_prepare + popd > /dev/null || die fi - - # out-of-source build broken - # https://github.com/thom311/libnl/pull/58 - multilib_copy_sources } multilib_src_configure() { - econf \ + # bug #884277 + export YACC=yacc.bison + + ECONF_SOURCE="${S}" econf \ $(multilib_native_use_enable utils cli) \ - $(use_enable debug) \ - $(use_enable static-libs static) \ - $(use_enable threads) + $(use_enable debug) } multilib_src_compile() { default - if multilib_is_native_abi && use python; then - cd python || die + if multilib_is_native_abi && use python ; then + pushd python > /dev/null || die distutils-r1_src_compile + popd > /dev/null || die fi } multilib_src_install() { - emake DESTDIR="${D}" install + default - if multilib_is_native_abi && use python; then + if multilib_is_native_abi && use python ; then # Unset DOCS= since distutils-r1.eclass interferes local DOCS=() - cd python || die + + pushd python > /dev/null || die + distutils-r1_src_install + + popd > /dev/null || die fi } multilib_src_install_all() { + DOCS=( ChangeLog ) + einstalldocs + find "${ED}" -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-99999999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild similarity index 64% rename from sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-99999999.ebuild rename to sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild index b2b6af6a8f..001f603d5b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-99999999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/libnl-9999.ebuild @@ -1,35 +1,46 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -PYTHON_COMPAT=( python3_{7,8,9} ) DISTUTILS_OPTIONAL=1 -inherit autotools distutils-r1 git-r3 multilib-minimal +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..10} ) +inherit autotools distutils-r1 multilib-minimal + +LIBNL_P=${P/_/-} +LIBNL_DIR=${PV/_/} +LIBNL_DIR=${LIBNL_DIR//./_} DESCRIPTION="Libraries providing APIs to netlink protocol based Linux kernel interfaces" HOMEPAGE="https://www.infradead.org/~tgr/libnl/ https://github.com/thom311/libnl" -EGIT_REPO_URI="https://github.com/thom311/libnl" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://github.com/thom311/libnl" + inherit git-r3 +else + SRC_URI="https://github.com/thom311/${PN}/releases/download/${PN}${LIBNL_DIR}/${P/_rc/-rc}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + + S="${WORKDIR}/${LIBNL_P}" +fi LICENSE="LGPL-2.1 utils? ( GPL-2 )" SLOT="3" -KEYWORDS="" -IUSE="+debug static-libs python test +threads utils" +IUSE="+debug python test utils" RESTRICT="!test? ( test )" RDEPEND="python? ( ${PYTHON_DEPS} )" DEPEND="${RDEPEND}" -BDEPEND=" - ${RDEPEND} +BDEPEND="${RDEPEND} sys-devel/bison sys-devel/flex - python? ( dev-lang/swig ) - test? ( dev-libs/check ) -" + python? ( + ${DISTUTILS_DEPS} + dev-lang/swig + ) + test? ( dev-libs/check )" REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" -DOCS=( ChangeLog ) - MULTILIB_WRAPPED_HEADERS=( # we do not install CLI stuff for non-native /usr/include/libnl3/netlink/cli/addr.h @@ -38,6 +49,7 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/libnl3/netlink/cli/ct.h /usr/include/libnl3/netlink/cli/exp.h /usr/include/libnl3/netlink/cli/link.h + /usr/include/libnl3/netlink/cli/mdb.h /usr/include/libnl3/netlink/cli/neigh.h /usr/include/libnl3/netlink/cli/qdisc.h /usr/include/libnl3/netlink/cli/route.h @@ -46,10 +58,6 @@ MULTILIB_WRAPPED_HEADERS=( /usr/include/libnl3/netlink/cli/utils.h ) -PATCHES=( - "${FILESDIR}"/${PN}-99999999-2to3.patch -) - src_prepare() { default @@ -60,25 +68,18 @@ src_prepare() { distutils-r1_src_prepare popd > /dev/null || die fi - - # out-of-source build broken - # https://github.com/thom311/libnl/pull/58 - multilib_copy_sources } multilib_src_configure() { - econf \ + ECONF_SOURCE="${S}" econf \ $(multilib_native_use_enable utils cli) \ - $(use_enable debug) \ - $(use_enable static-libs static) \ - $(use_enable threads) \ - --disable-doc + $(use_enable debug) } multilib_src_compile() { default - if multilib_is_native_abi && use python; then + if multilib_is_native_abi && use python ; then pushd python > /dev/null || die distutils-r1_src_compile popd > /dev/null || die @@ -88,7 +89,7 @@ multilib_src_compile() { multilib_src_install() { default - if multilib_is_native_abi && use python; then + if multilib_is_native_abi && use python ; then # Unset DOCS= since distutils-r1.eclass interferes local DOCS=() @@ -96,14 +97,14 @@ multilib_src_install() { distutils-r1_src_install - # For no obvious reason this is not done automatically - python_foreach_impl python_optimize - popd > /dev/null || die fi } multilib_src_install_all() { + DOCS=( ChangeLog ) + einstalldocs + find "${ED}" -name '*.la' -delete || die } diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml index 9a023d2e9d..ff40a5ef75 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libnl/metadata.xml @@ -6,7 +6,6 @@ Gentoo network monitoring and analysis project - Install development documentation Install experimental dev-lang/python bindings Install command line interface utils diff --git a/sdk_container/src/third_party/portage-stable/dev-python/appdirs/appdirs-1.4.4-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/appdirs/appdirs-1.4.4-r2.ebuild index 94cd682f2d..db7fa80b59 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/appdirs/appdirs-1.4.4-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/appdirs/appdirs-1.4.4-r2.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/autocommand/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/autocommand/Manifest new file mode 100644 index 0000000000..df6173d5be --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/autocommand/Manifest @@ -0,0 +1 @@ +DIST autocommand-2.2.2.gh.tar.gz 22188 BLAKE2B 757fd96d0505466e7d3e371e13e931d0dd20d9b02da3e88c2bf85b1b946ef6c67fb14366856fe66c23adab5d635c4bd08d51acc7e55830636cce5aa0a0c265bc SHA512 5ed109db16a0e309ed5107b26db0b70ed8669d73817e82eb5a219650d29f53785aa1f9471b2ac71d21dbffc9f0a13ea0fdf69e63ab534fd84407a1d6741cf5b5 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/autocommand/autocommand-2.2.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/autocommand/autocommand-2.2.2.ebuild new file mode 100644 index 0000000000..b99739ee87 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/autocommand/autocommand-2.2.2.ebuild @@ -0,0 +1,25 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Library to create a command-line program from a function" +HOMEPAGE=" + https://github.com/Lucretiel/autocommand/ + https://pypi.org/project/autocommand/ +" +SRC_URI=" + https://github.com/Lucretiel/autocommand/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + +distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/mako/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/autocommand/metadata.xml similarity index 64% rename from sdk_container/src/third_party/portage-stable/dev-python/mako/metadata.xml rename to sdk_container/src/third_party/portage-stable/dev-python/autocommand/metadata.xml index 0eaa402b2c..4e5fea0f0d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/mako/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/autocommand/metadata.xml @@ -7,8 +7,7 @@ - Mako - sqlalchemy/mako - https://github.com/sqlalchemy/mako/issues + autocommand + Lucretiel/autocommand diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/boto/Manifest new file mode 100644 index 0000000000..880178074c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/Manifest @@ -0,0 +1 @@ +DIST boto-2.49.0.tar.gz 1478498 BLAKE2B 6a897ea162f5f4bd34a2d488a3e3897f7f2f5b8707dd0922c01b6a0b90ea577223bf3e588b6685bda1f2bc0e92af426711fcba67a70377183465a530065c6c84 SHA512 2175cf30cd25bbc05812e83e5ade7668c3e21b1bb09aa1b43f0f0ac7d6967a646394fb52c9be673ebb65618c5b33a52d6f31f6da702f5cd1d6c9a18169476dd4 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/boto-2.49.0-r6.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/boto/boto-2.49.0-r6.ebuild new file mode 100644 index 0000000000..4044a5d7d0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/boto-2.49.0-r6.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +DISTUTILS_USE_PEP517=setuptools + +inherit distutils-r1 + +DESCRIPTION="Amazon Web Services API" +HOMEPAGE="https://github.com/boto/boto https://pypi.org/project/boto/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="amd64 arm arm64 ppc ~ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" + +PATCHES=( + # taken from https://bugs.debian.org/909545 + "${FILESDIR}"/${P}-try-to-add-SNI-support-v3.patch + "${FILESDIR}"/${P}-py38.patch + "${FILESDIR}"/${P}-py3-socket-binary.patch + "${FILESDIR}"/${P}-py3-httplib-strict.patch + "${FILESDIR}"/${P}-py3-server-port.patch + "${FILESDIR}"/${P}-unbundle-six.patch + "${FILESDIR}"/${P}-py310.patch + "${FILESDIR}"/${P}-mock-spec.patch +) + +RDEPEND=" + >=dev-python/six-1.12.0[${PYTHON_USEDEP}] +" + +BDEPEND=" + ${RDEPEND} + test? ( + dev-python/httpretty[${PYTHON_USEDEP}] + dev-python/keyring[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/paramiko[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/rsa[${PYTHON_USEDEP}] + dev-python/selenium[${PYTHON_USEDEP}] + )" + +distutils_enable_tests nose + +src_prepare() { + # remove bundled libs. + rm -f "${S}"/boto/vendored/six.py || die + # broken, not worth fixing + rm tests/unit/cloudfront/test_signed_urls.py || die + # fix tests + mkdir -p "${HOME}"/.ssh || die + touch "${HOME}"/.ssh/known_hosts || die + + distutils-r1_src_prepare +} + +python_test() { + distutils-r1_python_test tests/unit +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-mock-spec.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-mock-spec.patch new file mode 100644 index 0000000000..d8c8db2f1e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-mock-spec.patch @@ -0,0 +1,12 @@ +diff -ur boto-2.49.0.orig/tests/unit/ec2/test_volume.py boto-2.49.0/tests/unit/ec2/test_volume.py +--- boto-2.49.0.orig/tests/unit/ec2/test_volume.py 2022-11-02 22:22:36.173725700 -0000 ++++ boto-2.49.0/tests/unit/ec2/test_volume.py 2022-11-02 22:24:26.502590025 -0000 +@@ -55,7 +55,7 @@ + @mock.patch("boto.resultset.ResultSet") + def test_startElement_with_name_tagSet_calls_ResultSet(self, ResultSet, startElement): + startElement.return_value = None +- result_set = mock.Mock(ResultSet([("item", Tag)])) ++ result_set = ResultSet([("item", Tag)]) + volume = Volume() + volume.tags = result_set + retval = volume.startElement("tagSet", None, None) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-httplib-strict.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-httplib-strict.patch new file mode 100644 index 0000000000..209b01aa74 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-httplib-strict.patch @@ -0,0 +1,35 @@ +https://github.com/boto/boto/commit/4f4dcb31fe852c05ce19b44eb9d5b5d747e36f7c +https://github.com/boto/boto/pull/2718 + +From 4f4dcb31fe852c05ce19b44eb9d5b5d747e36f7c Mon Sep 17 00:00:00 2001 +From: Lee Ball <43632885+catleeball@users.noreply.github.com> +Date: Mon, 10 Jun 2019 16:02:53 -0700 +Subject: [PATCH] Remove `strict=True` from http_client (#6) + +In Python 3.4, the `strict` kwarg was removed[1]. We are removing it +here too. + +Alternatively, we can leave in `strict=True` for 2.x, but I chose to +remove it entirely to maintain consistent behavior across versions. + +[1]: https://docs.python.org/3/library/http.client.html +--- + boto/connection.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/boto/connection.py b/boto/connection.py +index c731173bb4eb..54e26fb2de16 100644 +--- a/boto/connection.py ++++ b/boto/connection.py +@@ -807,7 +807,7 @@ class AWSAuthConnection(object): + sock.sendall(six.ensure_binary("\r\n")) + else: + sock.sendall(six.ensure_binary("\r\n")) +- resp = http_client.HTTPResponse(sock, strict=True, debuglevel=self.debug) ++ resp = http_client.HTTPResponse(sock, debuglevel=self.debug) + resp.begin() + + if resp.status != 200: +-- +2.28.0 + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-server-port.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-server-port.patch new file mode 100644 index 0000000000..62e3319219 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-server-port.patch @@ -0,0 +1,42 @@ +https://github.com/boto/boto/commit/b9f6cb0ab717ea76e2780c7fddd1cd36b3bf7d63 + +From b9f6cb0ab717ea76e2780c7fddd1cd36b3bf7d63 Mon Sep 17 00:00:00 2001 +From: Matt Houglum +Date: Fri, 21 Jun 2019 15:09:11 -0700 +Subject: [PATCH] Make server_name() behave correctly for PY3 + +...because Python-2.6-or-newer doesn't just include Python 2.6 and 2.7. +--- + boto/connection.py | 14 +++++--------- + 1 file changed, 5 insertions(+), 9 deletions(-) + +diff --git a/boto/connection.py b/boto/connection.py +index 54e26fb2de16..bbb25d8fb842 100644 +--- a/boto/connection.py ++++ b/boto/connection.py +@@ -650,17 +650,13 @@ class AWSAuthConnection(object): + if port == 80: + signature_host = self.host + else: +- # This unfortunate little hack can be attributed to +- # a difference in the 2.6 version of http_client. In old +- # versions, it would append ":443" to the hostname sent +- # in the Host header and so we needed to make sure we +- # did the same when calculating the V2 signature. In 2.6 +- # (and higher!) +- # it no longer does that. Hence, this kludge. +- if ((ON_APP_ENGINE and sys.version[:3] == '2.5') or +- sys.version[:3] in ('2.6', '2.7')) and port == 443: ++ ver_int = sys.version_info[0] * 10 + sys.version_info[1] ++ if port == 443 and ver_int >= 26: # Py >= 2.6 + signature_host = self.host + else: ++ # In versions < 2.6, Python's http_client would append ":443" ++ # to the hostname sent in the Host header and so we needed to ++ # make sure we did the same when calculating the V2 signature. + signature_host = '%s:%d' % (self.host, port) + return signature_host + +-- +2.28.0 + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-socket-binary.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-socket-binary.patch new file mode 100644 index 0000000000..1d109a3f49 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py3-socket-binary.patch @@ -0,0 +1,59 @@ +https://github.com/boto/boto/commit/d2cb697b32c297858ecc36701a5a4176818ab36d +https://github.com/boto/boto/pull/2718 +https://github.com/boto/boto/pull/2893 +https://github.com/boto/boto/pull/3699 + +From d2cb697b32c297858ecc36701a5a4176818ab36d Mon Sep 17 00:00:00 2001 +From: Cat Lee Ball +Date: Mon, 10 Jun 2019 13:31:11 -0700 +Subject: [PATCH] Ensure binary strings sent to socket + +When running pre-release tests with proxied connections, it appeared a +few spots in connection.py would fail under Python 3 since the +socket.sendall method expects binary strings rather than unicode. +--- + boto/connection.py | 13 +++++++------ + 1 file changed, 7 insertions(+), 6 deletions(-) + +diff --git a/boto/connection.py b/boto/connection.py +index a0d89a51f49c..d084d1f881fb 100644 +--- a/boto/connection.py ++++ b/boto/connection.py +@@ -796,17 +796,17 @@ class AWSAuthConnection(object): + else: + sock = socket.create_connection((self.proxy, int(self.proxy_port))) + boto.log.debug("Proxy connection: CONNECT %s HTTP/1.0\r\n", host) +- sock.sendall("CONNECT %s HTTP/1.0\r\n" % host) +- sock.sendall("User-Agent: %s\r\n" % UserAgent) ++ sock.sendall(six.ensure_binary("CONNECT %s HTTP/1.0\r\n" % host)) ++ sock.sendall(six.ensure_binary("User-Agent: %s\r\n" % UserAgent)) + if self.proxy_user and self.proxy_pass: + for k, v in self.get_proxy_auth_header().items(): +- sock.sendall("%s: %s\r\n" % (k, v)) ++ sock.sendall(six.ensure_binary("%s: %s\r\n" % (k, v))) + # See discussion about this config option at + # https://groups.google.com/forum/?fromgroups#!topic/boto-dev/teenFvOq2Cc + if config.getbool('Boto', 'send_crlf_after_proxy_auth_headers', False): +- sock.sendall("\r\n") ++ sock.sendall(six.ensure_binary("\r\n")) + else: +- sock.sendall("\r\n") ++ sock.sendall(six.ensure_binary("\r\n")) + resp = http_client.HTTPResponse(sock, strict=True, debuglevel=self.debug) + resp.begin() + +@@ -814,9 +814,10 @@ class AWSAuthConnection(object): + # Fake a socket error, use a code that make it obvious it hasn't + # been generated by the socket library + raise socket.error(-71, ++ six.ensure_binary( + "Error talking to HTTP proxy %s:%s: %s (%s)" % + (self.proxy, self.proxy_port, +- resp.status, resp.reason)) ++ resp.status, resp.reason))) + + # We can safely close the response, it duped the original socket + resp.close() +-- +2.28.0 + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py310.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py310.patch new file mode 100644 index 0000000000..7b427f1f15 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py310.patch @@ -0,0 +1,44 @@ +diff --git a/boto/dynamodb/types.py b/boto/dynamodb/types.py +index d9aaaa4c..3f8d8601 100644 +--- a/boto/dynamodb/types.py ++++ b/boto/dynamodb/types.py +@@ -27,7 +27,7 @@ Python types and vice-versa. + import base64 + from decimal import (Decimal, DecimalException, Context, + Clamped, Overflow, Inexact, Underflow, Rounded) +-from collections import Mapping ++from collections.abc import Mapping + from boto.dynamodb.exceptions import DynamoDBNumberError + from boto.compat import filter, map, six, long_type + +diff --git a/boto/mws/connection.py b/boto/mws/connection.py +index 687fae74..3a1f5f80 100644 +--- a/boto/mws/connection.py ++++ b/boto/mws/connection.py +@@ -21,7 +21,7 @@ + import xml.sax + import hashlib + import string +-import collections ++import collections.abc + from boto.connection import AWSQueryConnection + from boto.exception import BotoServerError + import boto.mws.exception +@@ -109,7 +109,7 @@ def http_body(field): + def destructure_object(value, into, prefix, members=False): + if isinstance(value, boto.mws.response.ResponseElement): + destructure_object(value.__dict__, into, prefix, members=members) +- elif isinstance(value, collections.Mapping): ++ elif isinstance(value, collections.abc.Mapping): + for name in value: + if name.startswith('_'): + continue +@@ -117,7 +117,7 @@ def destructure_object(value, into, prefix, members=False): + members=members) + elif isinstance(value, six.string_types): + into[prefix] = value +- elif isinstance(value, collections.Iterable): ++ elif isinstance(value, collections.abc.Iterable): + for index, element in enumerate(value): + suffix = (members and '.member.' or '.') + str(index + 1) + destructure_object(element, into, prefix + suffix, diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py38.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py38.patch new file mode 100644 index 0000000000..0052c6e32e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-py38.patch @@ -0,0 +1,54 @@ +diff --git a/boto/ecs/item.py b/boto/ecs/item.py +index 79177a31..292b05af 100644 +--- a/boto/ecs/item.py ++++ b/boto/ecs/item.py +@@ -21,7 +21,7 @@ + + + import xml.sax +-import cgi ++import html + from boto.compat import six, StringIO + + class ResponseGroup(xml.sax.ContentHandler): +@@ -67,7 +67,7 @@ class ResponseGroup(xml.sax.ContentHandler): + return None + + def endElement(self, name, value, connection): +- self._xml.write("%s" % (cgi.escape(value).replace("&amp;", "&"), name)) ++ self._xml.write("%s" % (html.escape(value).replace("&amp;", "&"), name)) + if len(self._nodepath) == 0: + return + obj = None +diff --git a/tests/unit/utils/test_utils.py b/tests/unit/utils/test_utils.py +index db15b56d..89d1a524 100644 +--- a/tests/unit/utils/test_utils.py ++++ b/tests/unit/utils/test_utils.py +@@ -85,7 +85,7 @@ class TestPassword(unittest.TestCase): + def hmac_hashfunc(cls, msg): + if not isinstance(msg, bytes): + msg = msg.encode('utf-8') +- return hmac.new(b'mysecretkey', msg) ++ return hmac.new(b'mysecretkey', msg, digestmod='MD5') + + class HMACPassword(Password): + hashfunc = hmac_hashfunc +@@ -95,15 +95,15 @@ class TestPassword(unittest.TestCase): + password.set('foo') + + self.assertEquals(str(password), +- hmac.new(b'mysecretkey', b'foo').hexdigest()) ++ hmac.new(b'mysecretkey', b'foo', digestmod='MD5').hexdigest()) + + def test_constructor(self): +- hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg) ++ hmac_hashfunc = lambda msg: hmac.new(b'mysecretkey', msg, digestmod='MD5') + + password = Password(hashfunc=hmac_hashfunc) + password.set('foo') + self.assertEquals(password.str, +- hmac.new(b'mysecretkey', b'foo').hexdigest()) ++ hmac.new(b'mysecretkey', b'foo', digestmod='MD5').hexdigest()) + + + class TestPythonizeName(unittest.TestCase): diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-try-to-add-SNI-support-v3.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-try-to-add-SNI-support-v3.patch new file mode 100644 index 0000000000..11d346a219 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-try-to-add-SNI-support-v3.patch @@ -0,0 +1,104 @@ +From f5e7f6c98b46ff622f60a4661ffc9ce07216d109 Mon Sep 17 00:00:00 2001 +From: Sebastian Andrzej Siewior +Date: Sat, 29 Sep 2018 21:47:11 +0200 +Subject: [PATCH] boto: try to add SNI support + +Add SNI support. Newer OpenSSL (with TLS1.3) fail to connect if the +hostname is missing. + +Link: https://bugs.debian.org/bug=909545 +Tested-by: Witold Baryluk +Signed-off-by: Sebastian Andrzej Siewior +--- + boto/connection.py | 19 ++++++++++--------- + boto/https_connection.py | 22 +++++++++++----------- + 2 files changed, 21 insertions(+), 20 deletions(-) + +diff --git a/boto/connection.py b/boto/connection.py +index 34b428f101df7..b4867a7657465 100644 +--- a/boto/connection.py ++++ b/boto/connection.py +@@ -778,8 +778,10 @@ + + def proxy_ssl(self, host=None, port=None): + if host and port: ++ cert_host = host + host = '%s:%d' % (host, port) + else: ++ cert_host = self.host + host = '%s:%d' % (self.host, self.port) + # Seems properly to use timeout for connect too + timeout = self.http_connection_kwargs.get("timeout") +@@ -824,23 +824,24 @@ DEFAULT_CA_CERTS_FILE = os.path.join(os.path.dirname(os.path.abspath(boto.cacert + h = http_client.HTTPConnection(host) + + if self.https_validate_certificates and HAVE_HTTPS_CONNECTION: ++ context = ssl.create_default_context() ++ context.verify_mode = ssl.CERT_REQUIRED ++ context.check_hostname = True ++ + msg = "wrapping ssl socket for proxied connection; " + if self.ca_certificates_file: + msg += "CA certificate file=%s" % self.ca_certificates_file ++ context.load_verify_locations(cafile=self.ca_certificates_file) + else: + msg += "using system provided SSL certs" ++ context.load_default_certs() + boto.log.debug(msg) + key_file = self.http_connection_kwargs.get('key_file', None) + cert_file = self.http_connection_kwargs.get('cert_file', None) +- sslSock = ssl.wrap_socket(sock, keyfile=key_file, +- certfile=cert_file, +- cert_reqs=ssl.CERT_REQUIRED, +- ca_certs=self.ca_certificates_file) +- cert = sslSock.getpeercert() +- hostname = self.host.split(':', 0)[0] +- if not https_connection.ValidateCertificateHostname(cert, hostname): +- raise https_connection.InvalidCertificateException( +- hostname, cert, 'hostname mismatch') ++ if key_file: ++ context.load_cert_chain(certfile=cert_file, keyfile=key_file) ++ ++ sslSock = context.wrap_socket(sock, server_hostname=cert_host) + else: + # Fallback for old Python without ssl.wrap_socket + if hasattr(http_client, 'ssl'): +diff --git a/boto/https_connection.py b/boto/https_connection.py +index ddc31a152292e..a5076f6f9b261 100644 +--- a/boto/https_connection.py ++++ b/boto/https_connection.py +@@ -119,20 +119,20 @@ from boto.compat import six, http_client + sock = socket.create_connection((self.host, self.port), self.timeout) + else: + sock = socket.create_connection((self.host, self.port)) ++ ++ context = ssl.create_default_context() ++ context.verify_mode = ssl.CERT_REQUIRED ++ context.check_hostname = True ++ if self.key_file: ++ context.load_cert_chain(certfile=self.cert_file, keyfile=self.key_file) ++ + msg = "wrapping ssl socket; " + if self.ca_certs: + msg += "CA certificate file=%s" % self.ca_certs ++ context.load_verify_locations(cafile=self.ca_certs) + else: + msg += "using system provided SSL certs" ++ context.load_default_certs() + boto.log.debug(msg) +- self.sock = ssl.wrap_socket(sock, keyfile=self.key_file, +- certfile=self.cert_file, +- cert_reqs=ssl.CERT_REQUIRED, +- ca_certs=self.ca_certs) +- cert = self.sock.getpeercert() +- hostname = self.host.split(':', 0)[0] +- if not ValidateCertificateHostname(cert, hostname): +- raise InvalidCertificateException(hostname, +- cert, +- 'remote hostname "%s" does not match ' +- 'certificate' % hostname) ++ ++ self.sock = context.wrap_socket(sock, server_hostname=self.host) +-- +2.19.0 + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-unbundle-six.patch b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-unbundle-six.patch new file mode 100644 index 0000000000..188dae7eb6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/files/boto-2.49.0-unbundle-six.patch @@ -0,0 +1,28 @@ +use the system copy of six + +--- a/boto/compat.py ++++ b/boto/compat.py +@@ -46,16 +46,16 @@ except (AttributeError, ImportError): + # This is probably running on App Engine. + expanduser = (lambda x: x) + +-from boto.vendored import six ++import six + +-from boto.vendored.six import BytesIO, StringIO +-from boto.vendored.six.moves import filter, http_client, map, _thread, \ ++from six import BytesIO, StringIO ++from six.moves import filter, http_client, map, _thread, \ + urllib, zip +-from boto.vendored.six.moves.queue import Queue +-from boto.vendored.six.moves.urllib.parse import parse_qs, quote, unquote, \ ++from six.moves.queue import Queue ++from six.moves.urllib.parse import parse_qs, quote, unquote, \ + urlparse, urlsplit +-from boto.vendored.six.moves.urllib.parse import unquote_plus +-from boto.vendored.six.moves.urllib.request import urlopen ++from six.moves.urllib.parse import unquote_plus ++from six.moves.urllib.request import urlopen + + if six.PY3: + # StandardError was removed, so use the base exception type instead diff --git a/sdk_container/src/third_party/portage-stable/dev-python/boto/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/boto/metadata.xml new file mode 100644 index 0000000000..3ab9e0b0a8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/boto/metadata.xml @@ -0,0 +1,14 @@ + + + + + python@gentoo.org + Python + + + + boto + boto + boto/boto + + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/certifi/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/certifi/Manifest index a8393e15ac..25c84ad821 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/certifi/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/certifi/Manifest @@ -1 +1 @@ -DIST certifi-system-store-3021.3.16.tar.gz 13784 BLAKE2B c0c2322fe298d363c4ef4dada2c0db8837bf7a32d86a7b54a1b45bb3dd3c99d732b2612f25495f4a59d9692f896e2b962e7057fa5fec9998724476db48f90c2a SHA512 44953ed8a3deb5fa4aff3f74afa557219e042acea395e9cdebfd26fd43ce0bdeca07c6b6dfe91977f88852e7674b94337b93c4d78fd2da6f47a6187fa46d6668 +DIST certifi-system-store-3021.3.16.gh.tar.gz 13784 BLAKE2B c0c2322fe298d363c4ef4dada2c0db8837bf7a32d86a7b54a1b45bb3dd3c99d732b2612f25495f4a59d9692f896e2b962e7057fa5fec9998724476db48f90c2a SHA512 44953ed8a3deb5fa4aff3f74afa557219e042acea395e9cdebfd26fd43ce0bdeca07c6b6dfe91977f88852e7674b94337b93c4d78fd2da6f47a6187fa46d6668 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r1.ebuild deleted file mode 100644 index 6019af2a84..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r1.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -DISTUTILS_USE_SETUPTOOLS=rdepend -inherit distutils-r1 - -MY_P=certifi-system-store-${PV} -DESCRIPTION="A certifi hack to use system trust store on Linux/FreeBSD" -HOMEPAGE=" - https://github.com/tiran/certifi-system-store/ - https://pypi.org/project/certifi-system-store/" -SRC_URI=" - https://github.com/tiran/certifi-system-store/archive/v${PV}.tar.gz - -> ${MY_P}.tar.gz" -S=${WORKDIR}/${MY_P} - -LICENSE="MPL-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -RDEPEND="app-misc/ca-certificates" - -PATCHES=( - "${FILESDIR}"/${PN}-3021.3.16-setuptools.patch -) - -EPYTEST_IGNORE=( - # requires Internet - tests/test_requests.py -) - -distutils_enable_tests --install pytest - -src_prepare() { - sed -i -e "s^/etc^${EPREFIX}/etc^" src/certifi/core.py || die - distutils-r1_src_prepare -} - -symlink_info() { - pushd "${1}" >/dev/null || die - local egginfo=( certifi_system_store*.egg-info ) - [[ -d ${egginfo} ]] || die - ln -v -s "${egginfo}" "${egginfo/_system_store}" || die - popd >/dev/null || die -} - -python_test() { - distutils_install_for_testing - symlink_info "${TEST_DIR}"/lib - epytest -} - -python_install() { - distutils-r1_python_install - symlink_info "${D}$(python_get_sitedir)" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r3.ebuild new file mode 100644 index 0000000000..16b427fc6e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r3.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep +EAPI=7 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +MY_P=certifi-system-store-${PV} +DESCRIPTION="A certifi hack to use system trust store on Linux/FreeBSD" +HOMEPAGE=" + https://github.com/tiran/certifi-system-store/ + https://pypi.org/project/certifi-system-store/ +" +SRC_URI=" + https://github.com/tiran/certifi-system-store/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +RDEPEND=" + app-misc/ca-certificates + dev-python/setuptools[${PYTHON_USEDEP}] +" + +PATCHES=( + "${FILESDIR}"/${P}-use-importlib.patch +) + +EPYTEST_IGNORE=( + # requires Internet + tests/test_requests.py +) + +distutils_enable_tests pytest + +src_prepare() { + sed -i -e "s^/etc^${EPREFIX}/etc^" src/certifi/core.py || die + distutils-r1_src_prepare +} + +python_compile() { + distutils-r1_python_compile + cd "${BUILD_DIR}/install$(python_get_sitedir)" || die + local distinfo=( certifi_system_store*.dist-info ) + [[ -d ${distinfo} ]] || die + ln -v -s "${distinfo}" "${distinfo/_system_store}" || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/certifi/files/certifi-3021.3.16-setuptools.patch b/sdk_container/src/third_party/portage-stable/dev-python/certifi/files/certifi-3021.3.16-setuptools.patch deleted file mode 100644 index 57154fd0ee..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/certifi/files/certifi-3021.3.16-setuptools.patch +++ /dev/null @@ -1,21 +0,0 @@ -https://github.com/tiran/certifi-system-store/pull/17 -https://bugs.gentoo.org/822777 - -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= -Date: Tue, 23 Nov 2021 15:56:33 +0100 -Subject: [PATCH] Add missing install_requires on setuptools - -This package is using pkg_resources explicitly, it should therefore -declare an explicit dependency on setuptools. The missing dependency -has lead me to actually miss the runtime dependency which caused issues -for Gentoo users for whom setuptools were cleaned. ---- a/setup.cfg -+++ b/setup.cfg -@@ -40,6 +40,7 @@ zip_safe = True - setup_requires = setuptools - # hack to prevent installation on unsupported platforms Windows and macOS - install_requires = -+ setuptools - certifi-system-store > 4000; sys_platform == "win32" or sys_platform == "darwin" - python_requires = >=3.6 - diff --git a/sdk_container/src/third_party/portage-stable/dev-python/certifi/files/certifi-3021.3.16-use-importlib.patch b/sdk_container/src/third_party/portage-stable/dev-python/certifi/files/certifi-3021.3.16-use-importlib.patch new file mode 100644 index 0000000000..3028bfcb99 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/certifi/files/certifi-3021.3.16-use-importlib.patch @@ -0,0 +1,164 @@ +1. https://github.com/tiran/certifi-system-store/commit/6945f34b7be433dbf22946825cdb225d5d2136d5 +2. https://github.com/tiran/certifi-system-store/pull/21 + +Avoid repeated instances of https://bugs.gentoo.org/878045 when a package +has too-strict requirements and then affects other, unrelated Python +packages on the system. + +From 6945f34b7be433dbf22946825cdb225d5d2136d5 Mon Sep 17 00:00:00 2001 +From: Christian Heimes +Date: Tue, 16 Mar 2021 16:00:08 +0100 +Subject: [PATCH] Relax patch checks (#13) + +- only check that version matches, not files are identical +- compare base directories with samefile. This fixes a problem with + lib64 symlink in virtual envs. + +Signed-off-by: Christian Heimes +--- a/src/certifi/_patch.py ++++ b/src/certifi/_patch.py +@@ -28,7 +28,7 @@ def _patch_dist_info(): + except pkg_resources.DistributionNotFound: + pass + else: +- if os.path.samefile(css_dist.egg_info, certifi_dist.egg_info): ++ if certifi_dist.version == css_dist.version: + return False, css_dist.egg_info, certifi_dist.egg_info + else: + # blow away certifi's dist-info +@@ -55,7 +55,9 @@ def _patch_dist_info(): + certifi_dir = os.path.dirname(os.path.abspath(__file__)) + dist_dir = os.path.abspath(certifi_dist.egg_info) + +- if os.path.dirname(certifi_dir) != os.path.dirname(dist_dir): ++ # compare with samefile instead of string comparison to avoid false ++ # negatives caused by venv lib64 / lib symlinks ++ if not os.path.samefile(os.path.dirname(certifi_dir), os.path.dirname(dist_dir)): + raise RuntimeError( + f"'{certifi_dir} and {dist_dir} have different parent directories." + ) + +From cdec6d20b5d716d9853e72a1519a304070395498 Mon Sep 17 00:00:00 2001 +From: Christian Heimes +Date: Wed, 22 Jun 2022 10:08:18 +0200 +Subject: [PATCH] Use importlib on Python 3.8+ + +--- a/setup.cfg ++++ b/setup.cfg +@@ -38,8 +40,9 @@ packages = certifi + include_package_data = True + zip_safe = True + setup_requires = setuptools +-# hack to prevent installation on unsupported platforms Windows and macOS + install_requires = ++ setuptools; python_version < "3.8" ++ # hack to prevent installation on unsupported platforms Windows and macOS + certifi-system-store > 4000; sys_platform == "win32" or sys_platform == "darwin" + python_requires = >=3.6 + +--- a/src/certifi/_patch.py ++++ b/src/certifi/_patch.py +@@ -1,7 +1,31 @@ + import os + import shutil + import sys +-import pkg_resources ++ ++if sys.version_info >= (3, 8): ++ from importlib import metadata ++ ++ PackageNotFoundError = metadata.PackageNotFoundError ++ ++ def _get_distinfo(name): ++ dist = metadata.distribution(name) ++ egg_info = dist._path ++ return dist.version, egg_info ++ ++ def _invalidate_caches(): ++ pass ++ ++else: ++ import pkg_resources ++ ++ PackageNotFoundError = pkg_resources.DistributionNotFound ++ ++ def _get_distinfo(name): ++ dist = pkg_resources.get_distribution(name) ++ return dist.version, dist.egg_info ++ ++ def _invalidate_caches(): ++ pkg_resources.working_set.__init__() + + + def _relsymlink(target, linkname): +@@ -22,22 +46,22 @@ def _relsymlink(target, linkname): + + def _patch_dist_info(): + # distribution object for the canonical project name +- css_dist = pkg_resources.get_distribution("certifi_system_store") ++ css_version, css_egg_info = _get_distinfo("certifi_system_store") + try: +- certifi_dist = pkg_resources.get_distribution("certifi") +- except pkg_resources.DistributionNotFound: ++ certifi_version, certifi_egg_info = _get_distinfo("certifi") ++ except PackageNotFoundError: + pass + else: +- if certifi_dist.version == css_dist.version: +- return False, css_dist.egg_info, certifi_dist.egg_info ++ if certifi_version == css_version: ++ return False, css_egg_info, certifi_egg_info + else: + # blow away certifi's dist-info +- shutil.rmtree(certifi_dist.egg_info) ++ shutil.rmtree(certifi_egg_info) + # reset current working set, so pkg_resources can pick up our hack +- pkg_resources.working_set.__init__() ++ _invalidate_caches() + + # certifi-system-store's dist-info +- abs_css_distinfodir = os.path.abspath(css_dist.egg_info) ++ abs_css_distinfodir = os.path.abspath(css_egg_info) + css_basedir, css_distinfodir = os.path.split(abs_css_distinfodir) + + # certifi's dist-info in same base directory +@@ -48,12 +72,12 @@ def _patch_dist_info(): + _relsymlink(target=abs_css_distinfodir, linkname=abs_certifi_distinfodir) + + # get dist info from refreshed working set +- css_dist = pkg_resources.get_distribution("certifi_system_store") +- certifi_dist = pkg_resources.get_distribution("certifi") ++ css_version, css_egg_info = _get_distinfo("certifi_system_store") ++ certifi_version, certifi_egg_info = _get_distinfo("certifi") + + # check that certifi dist-info is in same site-packages as certifi package + certifi_dir = os.path.dirname(os.path.abspath(__file__)) +- dist_dir = os.path.abspath(certifi_dist.egg_info) ++ dist_dir = os.path.abspath(certifi_egg_info) + + # compare with samefile instead of string comparison to avoid false + # negatives caused by venv lib64 / lib symlinks +@@ -65,17 +89,17 @@ def _patch_dist_info(): + # double check versions + _verify_dist_info() + +- return True, css_dist.egg_info, certifi_dist.egg_info ++ return True, css_egg_info, certifi_egg_info + + + def _verify_dist_info(): +- css_dist = pkg_resources.get_distribution("certifi_system_store") ++ css_version, css_egg_info = _get_distinfo("certifi_system_store") + try: +- certifi_dist = pkg_resources.get_distribution("certifi") +- except pkg_resources.DistributionNotFound as e: ++ certifi_version, certifi_egg_info = _get_distinfo("certifi") ++ except PackageNotFoundError as e: + raise RuntimeError(e) + else: +- if certifi_dist.version != css_dist.version: ++ if certifi_version != css_version: + raise RuntimeError( + f"'certifi.dist-info' is not an alias to " + f"'certifi_system_store.dist-info'. " + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/crcmod/crcmod-1.7-r4.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/crcmod/crcmod-1.7-r5.ebuild similarity index 64% rename from sdk_container/src/third_party/portage-stable/dev-python/crcmod/crcmod-1.7-r4.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/crcmod/crcmod-1.7-r5.ebuild index 2f430f5810..b2168118a1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/crcmod/crcmod-1.7-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/crcmod/crcmod-1.7-r5.ebuild @@ -1,16 +1,18 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -DISTUTILS_USE_SETUPTOOLS=no -PYTHON_COMPAT=( python3_{8..10} ) +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} ) inherit distutils-r1 DESCRIPTION="Python CRC Generator module" HOMEPAGE="http://crcmod.sourceforge.net/" -SRC_URI="mirror://sourceforge/crcmod/${P}.tar.gz" +SRC_URI=" + https://downloads.sourceforge.net/project/crcmod/crcmod/${P}/${P}.tar.gz +" LICENSE="MIT" SLOT="0" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest index c5415afbc4..5590141cc0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest @@ -1,2 +1,2 @@ -DIST cython-0.29.28.gh.tar.gz 2101301 BLAKE2B 980c04545e935deb4b4b1653f167dcbc94b8e2b24bc8897b5cc996dfca977645f7475c32aa973251ffcbbb31e725e27693af61ceaf66f2332c9525b02653dc76 SHA512 52490d0b5355e13cbe586830f763173d7556cf3d79d79192ca75138b1190e7a4c1f3feeb0568349802ef3b97300c3805f54eef5ffd73a5180d68f023ac2a44cd -DIST cython-74073417c4f7e616af0a139a55f790f1ec7fe728.gh.tar.gz 2106765 BLAKE2B c2686a1d49fd1b522dcdf89f16c52fbb34595aed72e5626c8d3697ecc9318751d108999db443cfefe08334155ab59d230fcbd8e74715e185a161399abad6ae35 SHA512 2454a364fdd33f0090ba052a0bfa0ffb464ef750253a91c20a63c4db0b513f743870e7b9fafd844b0bf1a6b66b9b639f830d3a8c2f64abac6e197e2ff2279a59 +DIST cython-0.29.32.gh.tar.gz 2110417 BLAKE2B 008ffe325c87d165bf45afb2ff92db5286f611bbe425d0e9f18b530202135ca21f5f5ab564a4d0c6251ec2479ea0fd19207274a255fb1faf8863d3b067d17ae9 SHA512 55462792fa70d8edf60aa470627ab494918d7297fd7d282a7a54da76ee5a180233108404a1c8f3d79f6408f19b6e4f46b36e59fd47c38ede24f061f374437b6f +DIST cython-0.29.33.gh.tar.gz 2113910 BLAKE2B 9212edfa36680a3243632d28c4f5616a7336e82ee1f96df7d5e29711056619639c9a8fe9bbf9aea0a86aed39e836dc6eaa112ad35080f530add6309ccd09c53c SHA512 85f5ba7159d8793dbda980140b26086727f356a71d78f8522419657841d07b865d09c2f0a0f77d398669d071c1d261060235321a19eb7808e35d24f8ac71560d diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.28.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.32.ebuild similarity index 90% rename from sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.28.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.32.ebuild index 61afacee4b..d22db93be6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.28.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.32.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..10} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) PYTHON_REQ_USE="threads(+)" inherit distutils-r1 toolchain-funcs elisp-common @@ -59,6 +59,11 @@ python_compile_all() { } python_test() { + if has "${EPYTHON}" pypy3 python3.11; then + einfo "Skipping tests on ${EPYTHON} (xfail)" + return + fi + tc-export CC # https://github.com/cython/cython/issues/1911 local -x CFLAGS="${CFLAGS} -fno-strict-overflow" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.28_p20220503.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.33.ebuild similarity index 85% rename from sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.28_p20220503.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.33.ebuild index c947682134..fa9326ed42 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.28_p20220503.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-0.29.33.ebuild @@ -1,17 +1,14 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) PYTHON_REQ_USE="threads(+)" inherit distutils-r1 toolchain-funcs elisp-common -EGIT_COMMIT="74073417c4f7e616af0a139a55f790f1ec7fe728" -MY_P=${PN}-${EGIT_COMMIT} - DESCRIPTION="A Python to C compiler" HOMEPAGE=" https://cython.org/ @@ -19,10 +16,9 @@ HOMEPAGE=" https://pypi.org/project/Cython/ " SRC_URI=" - https://github.com/cython/cython/archive/${EGIT_COMMIT}.tar.gz - -> ${MY_P}.gh.tar.gz + https://github.com/cython/cython/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz " -S=${WORKDIR}/${MY_P} LICENSE="Apache-2.0" SLOT="0" @@ -63,7 +59,7 @@ python_compile_all() { } python_test() { - if [[ ${EPYTHON} == python3.11 ]]; then + if has "${EPYTHON}" pypy3 python3.11; then einfo "Skipping tests on ${EPYTHON} (xfail)" return fi diff --git a/sdk_container/src/third_party/portage-stable/dev-python/distro/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/distro/Manifest index fbb1ae14b6..1099d615e9 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/distro/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/distro/Manifest @@ -1 +1 @@ -DIST distro-1.7.0.tar.gz 58164 BLAKE2B 22bbd2daf9cac589530eac9a58767db6b9e389b77719516f7386a9377b49ba4c9b696165701acc42366b760b9a632c70a2243a58c12a367fef2a0a770a4aea44 SHA512 14516ecab33ee8c57c35a8279eb515fd699031fabac7d8886092ea98696797d55503179870aeb513a85e1a66c7e69f2f60bb6ea9fc935be975cb5135e1917ecc +DIST distro-1.8.0.tar.gz 59428 BLAKE2B d1b47dd801c4414a6bb21c544c62c306a1cf49b43f70974f7a0b4bcba64620047c7d06b6507ba262eba44d2f192f654646bb69241ed5bf6b761dc9d42e049e18 SHA512 027fe8bc50e263dc49451932774f32cea7900820b6e30cc80afcdc84374777ba733137fdd8d27fec76f66ce9c579bc172721e7ae0f43e72dffbc092126b26af2 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/distro/distro-1.7.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/distro/distro-1.8.0.ebuild similarity index 57% rename from sdk_container/src/third_party/portage-stable/dev-python/distro/distro-1.7.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/distro/distro-1.8.0.ebuild index e851bc91a0..7d704ee72b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/distro/distro-1.7.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/distro/distro-1.8.0.ebuild @@ -1,20 +1,23 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) -PYTHON_COMPAT=( python3_{8..10} pypy3 ) inherit distutils-r1 DESCRIPTION="Reliable machine-readable Linux distribution information for Python" HOMEPAGE=" https://distro.readthedocs.io/en/latest/ + https://github.com/python-distro/distro/ https://pypi.org/project/distro/ - https://github.com/python-distro/distro/" +" SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" SLOT="0" LICENSE="Apache-2.0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/distro/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/distro/metadata.xml new file mode 100644 index 0000000000..b7e186ea59 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/distro/metadata.xml @@ -0,0 +1,21 @@ + + + + + python@gentoo.org + Python + + + distro (for: Linux Distribution) provides information about the + Linux distribution it runs on, such as a reliable machine-readable + ID, or version information. It is a renewed alternative + implementation for Python's original platform.linux_distribution + function, but it also provides much more functionality which isn't + necessarily Python bound like a command-line interface. + + + + distro + python-distro/distro + + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/docutils/Manifest index 9d065584ec..d944a1b12a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/docutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/docutils/Manifest @@ -1,3 +1,2 @@ -DIST docutils-0.16.tar.gz 1962041 BLAKE2B 64d045d43433e944686b5d9077de0b544d49d041adf398f9b66612db432860853df4a84f4c4b44461789b3039f83e3847547062b2f5bc5d2bde3a0f1ffc9ffba SHA512 4e0c6662924cac6b8f28bb77a4f50eafd637c1083990a23dbd905d8a05362a18dae96e63408ed43b595b693ca755c7961d1282129d3215ed3774af0dddcc0466 DIST docutils-0.17.1.tar.gz 2016138 BLAKE2B aa0b6525ba2e3eaebc17010806952ed5f40919876fcb813f50cc05b628dfd22e6073a9a4b2bfe989089ae68d9b7111ae3a97dda2bde5c0536f8fb76c0942fe29 SHA512 5ec2087116bd5356fdffc54f07f6b0355aac5fa9d6caeefa77e8d201fd4706c0d419193c4d9a3964ae493da3091fe2c7dc36b74f81a1e1b9282173658b06e71b -DIST docutils-0.18.1.tar.gz 2043249 BLAKE2B 3959199236baade9601d61c3f6d7b6f840fbefdd46d9ea05869fde2cd2c800356a01faba891f51e220c85e66f3029f49f616f2046b85041b674c64825a4242ec SHA512 44404a6cc9d4c1e79c73a6ffee2898e459c9925ab9661e5d41394e13b3d861334cf0c5efcd18e87eb03041374e326cfd00539a6b2ec5979678889e8a536c9542 +DIST docutils-0.19.tar.gz 2056383 BLAKE2B 9983a905642de4e81ca118578671b503ddfda4bef1afcc0524de40543e1f9617fd8d768ef467da49d2f01076683400bad6a0fe15f6b5a3a1e202c42b2e34ab1b SHA512 fb904a899f2b6f3c07c5079577bd7c52a3182cb85f6a4149391e523498df15bfa317f0c04095b890beeb3f89c2b444875a2a609d880ac4d7fbc3125e46b37ea5 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.16-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.16-r1.ebuild deleted file mode 100644 index 3e297d6f75..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.16-r1.ebuild +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{8..10} pypy3 ) - -inherit distutils-r1 - -DESCRIPTION="Python Documentation Utilities" -HOMEPAGE="https://docutils.sourceforge.io/ https://pypi.org/project/docutils/" -#SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="BSD-2 GPL-3 public-domain" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="" - -BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/pygments[${PYTHON_USEDEP}]" -RDEPEND="${DEPEND}" - -PATCHES=( - "${FILESDIR}"/${P}-tests.patch -) - -python_compile_all() { - # Generate html docs from reStructured text sources. - - # Place html4css1.css in base directory to ensure that the generated reference to it is correct. - cp docutils/writers/html4css1/html4css1.css . || die - - cd tools || die - "${EPYTHON}" buildhtml.py --input-encoding=utf-8 \ - --stylesheet-path=../html4css1.css, --traceback ../docs || die -} - -src_test() { - cd test || die - distutils-r1_src_test -} - -python_test() { - "${EPYTHON}" alltests.py -v || die "Testing failed with ${EPYTHON}" -} - -python_install() { - distutils-r1_python_install - - # Install tools. - python_doscript tools/{buildhtml,quicktest}.py -} - -install_txt_doc() { - local doc="${1}" - local dir="txt/$(dirname ${doc})" - docinto "${dir}" - dodoc "${doc}" -} - -python_install_all() { - local DOCS=( *.txt ) - local HTML_DOCS=( docs tools docutils/writers/html4css1/html4css1.css ) - - distutils-r1_python_install_all - - local doc - while IFS= read -r -d '' doc; do - install_txt_doc "${doc}" - done < <(find docs tools -name '*.txt' -print0) -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.18.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.17.1-r1.ebuild similarity index 77% rename from sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.18.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.17.1-r1.ebuild index ec09fc9ea2..94e3e8ca91 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.18.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.17.1-r1.ebuild @@ -1,24 +1,34 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{8..10} pypy3 ) +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 -DESCRIPTION="Python Documentation Utilities" -HOMEPAGE="https://docutils.sourceforge.io/ https://pypi.org/project/docutils/" -#SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" +DESCRIPTION="Python Documentation Utilities (reference reStructuredText impl.)" +HOMEPAGE=" + https://docutils.sourceforge.io/ + https://pypi.org/project/docutils/ +" SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="BSD-2 GPL-3 public-domain" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="" -RDEPEND="dev-python/pygments[${PYTHON_USEDEP}]" -BDEPEND="${RDEPEND}" +RDEPEND=" + dev-python/pygments[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} +" + +PATCHES=( + "${FILESDIR}/docutils-0.18.1-py311.patch" +) python_compile_all() { # Generate html docs from reStructured text sources. diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.17.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.19.ebuild similarity index 77% rename from sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.17.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.19.ebuild index 4f20978f65..b97ed0c05e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.17.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/docutils/docutils-0.19.ebuild @@ -1,24 +1,34 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -PYTHON_COMPAT=( python3_{7..10} pypy3 ) +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 -DESCRIPTION="Python Documentation Utilities" -HOMEPAGE="https://docutils.sourceforge.io/ https://pypi.org/project/docutils/" -#SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" +DESCRIPTION="Python Documentation Utilities (reference reStructuredText impl.)" +HOMEPAGE=" + https://docutils.sourceforge.io/ + https://pypi.org/project/docutils/ +" SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="BSD-2 GPL-3 public-domain" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="" -RDEPEND="dev-python/pygments[${PYTHON_USEDEP}]" -BDEPEND="${RDEPEND}" +RDEPEND=" + dev-python/pygments[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.19-pygments-2.14.patch +) python_compile_all() { # Generate html docs from reStructured text sources. diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.16-tests.patch b/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.16-tests.patch deleted file mode 100644 index 052578c727..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.16-tests.patch +++ /dev/null @@ -1,66 +0,0 @@ -Index: docutils/test/test_parsers/test_rst/test_directives/test_code.py -=================================================================== ---- docutils/test/test_parsers/test_rst/test_directives/test_code.py (revision 8494) -+++ docutils/test/test_parsers/test_rst/test_directives/test_code.py (working copy) -@@ -107,7 +107,7 @@ - - - \n\ -- -+ - print - - ( -@@ -167,7 +167,7 @@ - - 12 \n\ - \n\ -- -+ - print - - ( -Index: docutils/test/test_parsers/test_rst/test_directives/test_code_long.py -=================================================================== ---- docutils/test/test_parsers/test_rst/test_directives/test_code_long.py (revision 8494) -+++ docutils/test/test_parsers/test_rst/test_directives/test_code_long.py (working copy) -@@ -69,7 +69,7 @@ - - 12 \n\ - \n\ -- -+ - print - - ( -Index: docutils/test/test_parsers/test_rst/test_directives/test_tables.py -=================================================================== ---- docutils/test/test_parsers/test_rst/test_directives/test_tables.py (revision 8494) -+++ docutils/test/test_parsers/test_rst/test_directives/test_tables.py (working copy) -@@ -45,10 +45,11 @@ - # some error messages changed in Python 3.3, CPython has backported to 2.7.4, - # PyPy has not - csv_eod_error_str = 'unexpected end of data' --if sys.version_info < (2,7,4) or platform.python_implementation() == 'PyPy': -+if sys.version_info < (2,7,4) or (platform.python_implementation() == 'PyPy' -+ and sys.version_info < (3,0)): - csv_eod_error_str = 'newline inside string' - # pypy adds a line number --if sys.version_info >= (3, 0) and platform.python_implementation() == 'PyPy': -+if platform.python_implementation() == 'PyPy': - csv_eod_error_str = 'line 1: ' + csv_eod_error_str - csv_unknown_url = "'bogus.csv'" - if sys.version_info < (3, 0): -Index: docutils/test/test_parsers/test_rst/test_interpreted.py -=================================================================== ---- docutils/test/test_parsers/test_rst/test_interpreted.py (revision 8494) -+++ docutils/test/test_parsers/test_rst/test_interpreted.py (working copy) -@@ -283,7 +283,7 @@ - - Python code \n\ - -- -+ - print - - ( diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.18.1-py311.patch b/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.18.1-py311.patch new file mode 100644 index 0000000000..878c6f1961 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.18.1-py311.patch @@ -0,0 +1,135 @@ +Combination of: +http://svn.code.sf.net/p/docutils/code/trunk@8910 +http://svn.code.sf.net/p/docutils/code/trunk@8909 + +diff --git a/test/DocutilsTestSupport.py b/test/DocutilsTestSupport.py +index 592d3f9df..e1f33aa7a 100644 +--- a/test/DocutilsTestSupport.py ++++ b/test/DocutilsTestSupport.py +@@ -819,6 +819,7 @@ def exception_data(func, *args, **kwds): + except Exception as detail: + return (detail, detail.args, + '%s: %s' % (detail.__class__.__name__, detail)) ++ return None, [], "No exception" + + + def _format_str(*args): +diff --git a/test/test_parsers/test_rst/test_directives/test_tables.py b/test/test_parsers/test_rst/test_directives/test_tables.py +index 07be0122f..73724ed7e 100755 +--- a/test/test_parsers/test_rst/test_directives/test_tables.py ++++ b/test/test_parsers/test_rst/test_directives/test_tables.py +@@ -65,6 +65,92 @@ def null_bytes(): + next(reader) + + null_bytes_exception = DocutilsTestSupport.exception_data(null_bytes)[0] ++# Null bytes are valid in Python 3.11+: ++if null_bytes_exception is None: ++ bad_encoding_result = """\ ++ ++ ++ ++ bad encoding ++ <tgroup cols="4"> ++ <colspec colwidth="25"> ++ <colspec colwidth="25"> ++ <colspec colwidth="25"> ++ <colspec colwidth="25"> ++ <tbody> ++ <row> ++ <entry> ++ <paragraph> ++ \xfe\xff"Treat" ++ <entry> ++ <paragraph> ++ "Quantity" ++ <entry> ++ <paragraph> ++ "Description" ++ <entry> ++ <row> ++ <entry> ++ <paragraph> ++ "Albatr\u00b0\u00df" ++ <entry> ++ <paragraph> ++ 2.99 ++ <entry> ++ <paragraph> ++ "\u00a1Ona\x03\xc3\x03\xc4\x03\xb9\x03\xba!" ++ <entry> ++ <row> ++ <entry> ++ <paragraph> ++ "CrunchyFrog" ++ <entry> ++ <paragraph> ++ 1.49 ++ <entry> ++ <paragraph> ++ "Ifwetooktheb\u00f6nesout ++ <entry> ++ <paragraph> ++ itwouldn\x20\x19tbe ++ <row> ++ <entry> ++ <paragraph> ++ crunchy ++ <entry> ++ <paragraph> ++ nowwouldit?" ++ <entry> ++ <entry> ++ <row> ++ <entry> ++ <paragraph> ++ "GannetRipple" ++ <entry> ++ <paragraph> ++ 1.99 ++ <entry> ++ <paragraph> ++ "\xbfOna\x03\xc3\x03\xc4\x03\xb9\x03\xba?" ++ <entry> ++ <paragraph> ++ (7- and 8-bit text encoded as UTF-16 has lots of null/zero bytes.) ++""" ++else: ++ bad_encoding_result = """\ ++<document source="test data"> ++ <system_message level="3" line="1" source="test data" type="ERROR"> ++ <paragraph> ++ Error with CSV data in "csv-table" directive: ++ %s ++ <literal_block xml:space="preserve"> ++ .. csv-table:: bad encoding ++ :file: %s ++ :encoding: latin-1 ++ <paragraph> ++ (7- and 8-bit text encoded as UTF-16 has lots of null/zero bytes.) ++""" % (null_bytes_exception, utf_16_csv) ++ + + totest = {} + +@@ -1031,19 +1117,8 @@ u"""\ + + (7- and 8-bit text encoded as UTF-16 has lots of null/zero bytes.) + """ % utf_16_csv, +-"""\ +-<document source="test data"> +- <system_message level="3" line="1" source="test data" type="ERROR"> +- <paragraph> +- Error with CSV data in "csv-table" directive: +- %s +- <literal_block xml:space="preserve"> +- .. csv-table:: bad encoding +- :file: %s +- :encoding: latin-1 +- <paragraph> +- (7- and 8-bit text encoded as UTF-16 has lots of null/zero bytes.) +-""" % (null_bytes_exception, utf_16_csv)], ++bad_encoding_result ++], + ["""\ + .. csv-table:: good encoding + :file: %s diff --git a/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.19-pygments-2.14.patch b/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.19-pygments-2.14.patch new file mode 100644 index 0000000000..42324aa49c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/docutils/files/docutils-0.19-pygments-2.14.patch @@ -0,0 +1,672 @@ +https://bugs.gentoo.org/892213 +https://sourceforge.net/p/docutils/patches/201/ +--- a/test/test_parsers/test_rst/test_directives/test_code.py ++++ b/test/test_parsers/test_rst/test_directives/test_code.py +@@ -10,14 +10,20 @@ Test the 'code' directive in parsers/rst + + if __name__ == '__main__': + import __init__ # noqa: F401 ++from packaging.version import Version + from test_parsers import DocutilsTestSupport +-from docutils.utils.code_analyzer import with_pygments ++from docutils.utils.code_analyzer import with_pygments, pygments_version + + + def suite(): + s = DocutilsTestSupport.ParserTestSuite() + if not with_pygments: + del(totest['code-parsing']) ++ del(totest['code-parsing-2-14']) ++ elif pygments_version >= Version('2.14.0'): ++ del(totest['code-parsing']) ++ else: ++ del(totest['code-parsing-2-14']) + s.generateTests(totest) + return s + +@@ -170,6 +176,165 @@ totest['code-parsing'] = [ + \n\ + <inline classes="name builtin"> + print ++ <inline classes="punctuation"> ++ ( ++ <inline classes="literal number integer"> ++ 8 ++ <inline classes="operator"> ++ / ++ <inline classes="literal number integer"> ++ 2 ++ <inline classes="punctuation"> ++ ) ++"""], ++["""\ ++.. code:: latex ++ :class: testclass ++ ++ hello \\emph{world} % emphasize ++""", ++"""\ ++<document source="test data"> ++ <literal_block classes="code latex testclass" xml:space="preserve"> ++ hello \n\ ++ <inline classes="keyword"> ++ \\emph ++ <inline classes="name builtin"> ++ { ++ world ++ <inline classes="name builtin"> ++ } ++ \n\ ++ <inline classes="comment"> ++ % emphasize"""], ++["""\ ++.. code:: rst ++ :number-lines: ++ ++ This is a code block with text. ++""", ++"""\ ++<document source="test data"> ++ <literal_block classes="code rst" xml:space="preserve"> ++ <inline classes="ln"> ++ 1 \n\ ++ This is a code block with text. ++"""], ++["""\ ++Code not parsed but warning silenced in ParserTestCase. ++ ++.. code:: s-lang ++ ++ % abc.sl ++ autoload("abc_mode", "abc"); ++""", ++"""\ ++<document source="test data"> ++ <paragraph> ++ Code not parsed but warning silenced in ParserTestCase. ++ <literal_block classes="code s-lang" xml:space="preserve"> ++ % abc.sl ++ autoload("abc_mode", "abc"); ++"""], ++["""\ ++Place the language name in a class argument to avoid the no-lexer warning: ++ ++.. code:: ++ :class: s-lang ++ ++ % abc.sl ++ autoload("abc_mode", "abc"); ++""", ++"""\ ++<document source="test data"> ++ <paragraph> ++ Place the language name in a class argument to avoid the no-lexer warning: ++ <literal_block classes="code s-lang" xml:space="preserve"> ++ % abc.sl ++ autoload("abc_mode", "abc"); ++"""], ++] ++ ++totest['code-parsing-2-14'] = [ ++["""\ ++.. code:: python3 ++ :class: testclass ++ ++ print('hello world') # to stdout ++""", ++"""\ ++<document source="test data"> ++ <literal_block classes="code python3 testclass" xml:space="preserve"> ++ \n\ ++ <inline classes="name builtin"> ++ print ++ <inline classes="punctuation"> ++ ( ++ <inline classes="literal string single"> ++ 'hello world' ++ <inline classes="punctuation"> ++ ) ++ \n\ ++ <inline classes="comment single"> ++ # to stdout ++"""], ++["""\ ++.. code:: python3 ++ :class: testclass ++ :name: my_function ++ :number-lines: 7 ++ ++ def my_function(): ++ '''Test the lexer. ++ ''' ++ ++ # and now for something completely different ++ print(8/2) ++""", ++"""\ ++<document source="test data"> ++ <literal_block classes="code python3 testclass" ids="my-function" names="my_function" xml:space="preserve"> ++ <inline classes="ln"> ++ 7 \n\ ++ <inline classes="keyword"> ++ def ++ \n\ ++ <inline classes="name function"> ++ my_function ++ <inline classes="punctuation"> ++ (): ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 8 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="literal string doc"> ++ \'\'\'Test the lexer. ++ <inline classes="ln"> ++ 9 \n\ ++ <inline classes="literal string doc"> ++ \'\'\' ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 10 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 11 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="comment single"> ++ # and now for something completely different ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 12 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="name builtin"> ++ print + <inline classes="punctuation"> + ( + <inline classes="literal number integer"> +--- a/test/test_parsers/test_rst/test_directives/test_code_long.py ++++ b/test/test_parsers/test_rst/test_directives/test_code_long.py +@@ -10,15 +10,22 @@ Test the 'code' directive in body.py wit + + if __name__ == '__main__': + import __init__ # noqa: F401 ++from packaging.version import Version + from test_parsers import DocutilsTestSupport +-from docutils.utils.code_analyzer import with_pygments ++from docutils.utils.code_analyzer import with_pygments, pygments_version + + + def suite(): + settings = {'syntax_highlight': 'long'} + s = DocutilsTestSupport.ParserTestSuite(suite_settings=settings) + if with_pygments: ++ if pygments_version >= Version('2.14.0'): ++ del(totest['code-parsing-long']) ++ else: ++ del(totest['code-parsing-long-2-14']) ++ + s.generateTests(totest) ++ + return s + + +@@ -73,6 +80,94 @@ totest['code-parsing-long'] = [ + \n\ + <inline classes="name builtin"> + print ++ <inline classes="punctuation"> ++ ( ++ <inline classes="literal number integer"> ++ 8 ++ <inline classes="operator"> ++ / ++ <inline classes="literal number integer"> ++ 2 ++ <inline classes="punctuation"> ++ ) ++"""], ++["""\ ++.. code:: latex ++ ++ hello \\emph{world} % emphasize ++""", ++"""\ ++<document source="test data"> ++ <literal_block classes="code latex" xml:space="preserve"> ++ hello \n\ ++ <inline classes="keyword"> ++ \\emph ++ <inline classes="name builtin"> ++ { ++ world ++ <inline classes="name builtin"> ++ } ++ \n\ ++ <inline classes="comment"> ++ % emphasize"""], ++] ++ ++totest['code-parsing-long-2-14'] = [ ++["""\ ++.. code:: python3 ++ :number-lines: 7 ++ ++ def my_function(): ++ '''Test the lexer. ++ ''' ++ ++ # and now for something completely different ++ print(8/2) ++""", ++"""\ ++<document source="test data"> ++ <literal_block classes="code python3" xml:space="preserve"> ++ <inline classes="ln"> ++ 7 \n\ ++ <inline classes="keyword"> ++ def ++ \n\ ++ <inline classes="name function"> ++ my_function ++ <inline classes="punctuation"> ++ (): ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 8 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="literal string doc"> ++ \'\'\'Test the lexer. ++ <inline classes="ln"> ++ 9 \n\ ++ <inline classes="literal string doc"> ++ \'\'\' ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 10 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 11 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="comment single"> ++ # and now for something completely different ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 12 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="name builtin"> ++ print + <inline classes="punctuation"> + ( + <inline classes="literal number integer"> +--- a/test/test_parsers/test_rst/test_directives/test_include.py ++++ b/test/test_parsers/test_rst/test_directives/test_include.py +@@ -10,9 +10,10 @@ Tests for misc.py "include" directive. + import os.path + if __name__ == '__main__': + import __init__ # noqa: F401 ++from packaging.version import Version + from test_parsers import DocutilsTestSupport + from docutils import parsers +-from docutils.utils.code_analyzer import with_pygments ++from docutils.utils.code_analyzer import with_pygments, pygments_version + + # optional 3rd-party markdown parser + md_parser_name = 'recommonmark' +@@ -27,6 +28,11 @@ def suite(): + # eventually skip optional parts: + if not with_pygments: + del(totest['include-code']) ++ del(totest['include-code-2-14']) ++ elif pygments_version >= Version('2.14.0'): ++ del(totest['include-code']) ++ else: ++ del(totest['include-code-2-14']) + if not md_parser_class: + del(totest['include-markdown']) + s.generateTests(totest) +@@ -1191,6 +1197,313 @@ Including includes/include14.txt + <inline classes="punctuation"> + .. + \n\ ++ <inline classes="operator word"> ++ include ++ <inline classes="punctuation"> ++ :: ++ ../sibling/include7.txt ++""" % reldir(include6)], ++["""\ ++Circular inclusion ++ ++.. include:: %s ++""" % include15, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Circular inclusion ++ <paragraph> ++ File "include15.txt": example of rekursive inclusion. ++ <paragraph> ++ File "include16.txt": example of rekursive inclusion. ++ <system_message level="2" line="3" source="%s" type="WARNING"> ++ <paragraph> ++ circular inclusion in "include" directive: ++ %s ++ > %s ++ > %s ++ > test data ++ <literal_block xml:space="preserve"> ++ .. include:: include15.txt ++ <paragraph> ++ No loop when clipping before the "include" directive: ++ <paragraph> ++ File "include15.txt": example of rekursive inclusion. ++""" % (reldir(include16), reldir(include15), ++ reldir(include16), reldir(include15))], ++["""\ ++Circular inclusion with clipping. ++ ++.. include:: %s ++ :start-line: 2 ++""" % include16, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Circular inclusion with clipping. ++ <paragraph> ++ File "include15.txt": example of rekursive inclusion. ++ <paragraph> ++ File "include16.txt": example of rekursive inclusion. ++ <system_message level="2" line="3" source="%s" type="WARNING"> ++ <paragraph> ++ circular inclusion in "include" directive: ++ %s ++ > %s ++ > %s ++ > %s ++ > test data ++ <literal_block xml:space="preserve"> ++ .. include:: include15.txt ++ <paragraph> ++ No loop when clipping before the "include" directive: ++ <paragraph> ++ File "include15.txt": example of rekursive inclusion. ++ <paragraph> ++ No loop when clipping before the "include" directive: ++ <paragraph> ++ File "include15.txt": example of rekursive inclusion. ++""" % (reldir(include16), reldir(include15), reldir(include16), ++ reldir(include15), reldir(include16))], ++["""\ ++Circular inclusion with specified parser. ++ ++.. include:: %s ++ :parser: rst ++""" % include15, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Circular inclusion with specified parser. ++ <paragraph> ++ File "include15.txt": example of rekursive inclusion. ++ <paragraph> ++ File "include16.txt": example of rekursive inclusion. ++ <system_message level="2" line="3" source="%s" type="WARNING"> ++ <paragraph> ++ circular inclusion in "include" directive: ++ %s ++ > %s ++ > %s ++ > test data ++ <literal_block xml:space="preserve"> ++ .. include:: include15.txt ++ <paragraph> ++ No loop when clipping before the "include" directive: ++ <paragraph> ++ File "include15.txt": example of rekursive inclusion. ++""" % (reldir(include16), reldir(include15), ++ reldir(include16), reldir(include15))], ++["""\ ++No circular inclusion. ++ ++============================= ============================= ++.. include:: data/include.txt .. include:: data/include.txt ++============================= ============================= ++""", ++"""\ ++<document source="test data"> ++ <paragraph> ++ No circular inclusion. ++ <table> ++ <tgroup cols="2"> ++ <colspec colwidth="29"> ++ <colspec colwidth="29"> ++ <tbody> ++ <row> ++ <entry> ++ <paragraph> ++ Some include text. ++ <entry> ++ <paragraph> ++ Some include text."""], ++] ++ ++totest['include-code-2-14'] = [ ++["""\ ++Included code ++ ++.. include:: %s ++ :code: rst ++""" % include1, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Included code ++ <literal_block classes="code rst" source="%s" xml:space="preserve"> ++ <inline classes="generic heading"> ++ Inclusion 1 ++ \n\ ++ <inline classes="generic heading"> ++ ----------- ++ \n\ ++ <inline classes="whitespace"> ++ \n\ ++ This file is used by \n\ ++ <inline classes="literal string"> ++ ``test_include.py`` ++ . ++""" % reldir(include1)], ++["""\ ++Included code ++ ++.. include:: %s ++ :code: rst ++ :number-lines: ++""" % include1, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Included code ++ <literal_block classes="code rst" source="%s" xml:space="preserve"> ++ <inline classes="ln"> ++ 1 \n\ ++ <inline classes="generic heading"> ++ Inclusion 1 ++ \n\ ++ <inline classes="ln"> ++ 2 \n\ ++ <inline classes="generic heading"> ++ ----------- ++ \n\ ++ <inline classes="ln"> ++ 3 \n\ ++ <inline classes="whitespace"> ++ \n\ ++ <inline classes="ln"> ++ 4 \n\ ++ <inline classes="whitespace"> ++ This file is used by \n\ ++ <inline classes="literal string"> ++ ``test_include.py`` ++ . ++""" % reldir(include1)], ++["""\ ++TAB expansion with included code: ++ ++.. include:: %s ++ :code: rst ++""" % include_literal, ++"""\ ++<document source="test data"> ++ <paragraph> ++ TAB expansion with included code: ++ <literal_block classes="code rst" source="%s" xml:space="preserve"> ++ Literal included this should \n\ ++ <inline classes="generic strong"> ++ **not** ++ be \n\ ++ <inline classes="generic emph"> ++ *marked* ++ \n\ ++ <inline classes="name variable"> ++ `up` ++ . ++ <inline classes="whitespace"> ++ \n\ ++ <- leading raw tab. ++ <inline classes="whitespace"> ++ \n\ ++ \n\ ++ Newlines ++ <inline classes="whitespace"> ++ \n\ ++ are ++ <inline classes="whitespace"> ++ \n\ ++ normalized. ++""" % include_literal], ++["""\ ++Custom TAB expansion with included code: ++ ++.. include:: %s ++ :code: rst ++ :tab-width: 2 ++""" % include_literal, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Custom TAB expansion with included code: ++ <literal_block classes="code rst" source="%s" xml:space="preserve"> ++ Literal included this should \n\ ++ <inline classes="generic strong"> ++ **not** ++ be \n\ ++ <inline classes="generic emph"> ++ *marked* ++ \n\ ++ <inline classes="name variable"> ++ `up` ++ . ++ <inline classes="whitespace"> ++ \n\ ++ <- leading raw tab. ++ <inline classes="whitespace"> ++ \n\ ++ \n\ ++ Newlines ++ <inline classes="whitespace"> ++ \n\ ++ are ++ <inline classes="whitespace"> ++ \n\ ++ normalized. ++""" % include_literal], ++["""\ ++Custom TAB expansion with included code: ++ ++.. include:: %s ++ :code: rst ++ :tab-width: -1 ++""" % include_literal, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Custom TAB expansion with included code: ++ <literal_block classes="code rst" source="%s" xml:space="preserve"> ++ Literal included this should \n\ ++ <inline classes="generic strong"> ++ **not** ++ be \n\ ++ <inline classes="generic emph"> ++ *marked* ++ \n\ ++ <inline classes="name variable"> ++ `up` ++ . ++ <inline classes="whitespace"> ++ \n\ ++ \t<- leading raw tab. ++ <inline classes="whitespace"> ++ \n\ ++ \n\ ++ Newlines ++ <inline classes="whitespace"> ++ \n\ ++ are ++ <inline classes="whitespace"> ++ \n\ ++ normalized. ++""" % include_literal], ++["""\ ++Including includes/include14.txt ++ ++.. include:: %s ++""" % include14, ++"""\ ++<document source="test data"> ++ <paragraph> ++ Including includes/include14.txt ++ <paragraph> ++ Including more/include6.txt as rst-code from includes/include14.txt: ++ <literal_block classes="code rst" source="%s" xml:space="preserve"> ++ In includes/more/include6.txt ++ <inline classes="whitespace"> ++ \n\ ++ \n\ ++ <inline classes="punctuation"> ++ .. ++ \n\ + <inline classes="operator word"> + include + <inline classes="punctuation"> +--- a/docutils/utils/code_analyzer.py ++++ b/docutils/utils/code_analyzer.py +@@ -9,11 +9,14 @@ + from docutils import ApplicationError + try: + import pygments ++ from packaging.version import Version + from pygments.lexers import get_lexer_by_name + from pygments.formatters.html import _get_ttype_class + with_pygments = True ++ pygments_version = Version(pygments.__version__) + except ImportError: + with_pygments = False ++ pygments_version = '0' + + # Filter the following token types from the list of class arguments: + unstyled_tokens = ['token', # Token (base token type) + + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/flit_core/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/flit_core/Manifest index 97caded709..836007983c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/flit_core/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/flit_core/Manifest @@ -1 +1 @@ -DIST flit_core-3.7.1.tar.gz 40330 BLAKE2B 67a938ef576a70ce1bfe1f1bf996f1d2e468ea46f76ed2a363b278cebc42602b38fbf44a6bc45294996549d673d3145e2db2293780b8d157fd4f3b3876dc88cd SHA512 8c477bcd2924a93b51e6f3d8bbc3599929663c8d5addf16062e8e1b6c5acd740a4e4905b144092efb6e38e9700479525013831a53e055438f94c1e53ff5c6f8d +DIST flit_core-3.8.0.tar.gz 41224 BLAKE2B 20d0b1e245280938b1edfa83531907775af9da30cc6e1446d578eafc7e14184d3c8fb80f446d265456ea5ea587c51edfdb706793a8894916525b3ebba322b3b0 SHA512 914804e3f2040762381afe039272d9d6fdbcd3f3cf8b9eea854f2f1d95edcb01718fd6685476bc1cdc251dfc46ef80b40f087df881d8b963dcc3f3332fd32a46 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/flit_core/flit_core-3.7.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/flit_core/flit_core-3.8.0.ebuild similarity index 84% rename from sdk_container/src/third_party/portage-stable/dev-python/flit_core/flit_core-3.7.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/flit_core/flit_core-3.8.0.ebuild index a10b841549..1812d084e5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/flit_core/flit_core-3.7.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/flit_core/flit_core-3.8.0.ebuild @@ -1,18 +1,19 @@ -# Copyright 2019-2022 Gentoo Authors +# Copyright 2019-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 DESCRIPTION="Simplified packaging of Python modules (core module)" HOMEPAGE=" - https://pypi.org/project/flit_core/ - https://github.com/pypa/flit/" + https://pypi.org/project/flit-core/ + https://github.com/pypa/flit/ +" SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="BSD" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/flit_core/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/flit_core/metadata.xml index 450099f02c..3f418d3bf4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/flit_core/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/flit_core/metadata.xml @@ -11,7 +11,7 @@ </maintainer> <stabilize-allarches/> <upstream> - <remote-id type="pypi">flit_core</remote-id> + <remote-id type="pypi">flit-core</remote-id> <remote-id type="github">pypa/flit</remote-id> </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/gentoo-common/gentoo-common-1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/gentoo-common/gentoo-common-1.ebuild new file mode 100644 index 0000000000..c09fd9e6d2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/gentoo-common/gentoo-common-1.ebuild @@ -0,0 +1,37 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Common files shared by Python implementations in Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Python" +S=${WORKDIR} + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" + +src_install() { + insinto /usr/lib/python + # https://peps.python.org/pep-0668/ + newins - EXTERNALLY-MANAGED <<-EOF + [externally-managed] + Error= + The system-wide Python installation in Gentoo should be maintained + using the system package manager (e.g. emerge). + + If the package in question is not packaged for Gentoo, please + consider installing it inside a virtual environment, e.g.: + + python -m venv /path/to/venv + . /path/to/venv/bin/activate + pip install mypackage + + To exit the virtual environment, run: + + deactivate + + The virtual environment is not deleted, and can be re-entered by + re-sourcing the activate file. + EOF +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/gentoo-common/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/gentoo-common/metadata.xml new file mode 100644 index 0000000000..7d421671d8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/gentoo-common/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>python@gentoo.org</email> + </maintainer> + <stabilize-allarches/> +</pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/Manifest index 4c2c02a423..6512e80886 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/Manifest @@ -1,3 +1 @@ -DIST gpep517-3.gh.tar.gz 7074 BLAKE2B 99a499ae13b6aac41e86d11735f0e49a5dc921881a1efa94bee19bfd779af6827707d05d6407ed15e4a3a6b518c8c0b3f50901e3b12df41081930f83b288e461 SHA512 90f756f5a1d783e9d402e098162a70b363a0a81e331e810e5c89c3302bb5839032603252bad1c98c176a7828b70adfac967e39ba455dcd3a20097e74923980c8 -DIST gpep517-5.gh.tar.gz 9568 BLAKE2B 7641ae7792a15be7241d9c02622b589a796a96c76894c29f37733e33820532042f6d5b8018ef021b487c299f3a28adf37949e96c38148d88c140ed6926e95f2b SHA512 3618f3d17cc367716c4813d75814ef295896f210ff32c13f1ef8ad8cde2120a30ba69705e14dbb1e5528bf5a348f9f8c5f5de8b416608cd496733e94afbeb2c6 -DIST gpep517-6.gh.tar.gz 9757 BLAKE2B f1b39f30b7d775330bddfd353610de7c26e34c5572cdaedbb078cc61c711e90e1c520b5e6e5532b0879ccc1eb7025a793c6f8d9745d93967eabbdd9edef69c6a SHA512 681108dab418d0d2d5b017f19bf8802479655f22eb6b72e9d78c6bbd2d08583751a465377c2006c507f0ea258d2d46bf9300865896af4458a763b56a86abe329 +DIST gpep517-13.gh.tar.gz 17197 BLAKE2B eb2f1061c0d762ec5cedf042c41a04eb1ddfbb146b5d81727f7e09d55e76323ee4ffb00e8a8c17a8d423b863bd46dc79a03048da1998cf50fee45bc75c64f38e SHA512 23219a3f7369def01e41fe6bbf96400cc85bb6f5efae3924451a5f3dbed0c9a5e7bb69aa1810897597aa248aa64fc6445fb32ed5bf314d0265c5339893ea58e3 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-13.ebuild similarity index 75% rename from sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-3.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-13.ebuild index 768f7fdb31..8933d353b3 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-13.ebuild @@ -1,21 +1,21 @@ -# Copyright 2022 Gentoo Authors +# Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 -DISTUTILS_USE_SETUPTOOLS=manual -PYTHON_COMPAT=( pypy3 python3_{8..10} ) +DISTUTILS_USE_PEP517=no +PYTHON_COMPAT=( pypy3 python3_{9..11} ) inherit distutils-r1 DESCRIPTION="A backend script to aid installing Python packages in Gentoo" HOMEPAGE=" https://pypi.org/project/gpep517/ - https://github.com/mgorny/gpep517/ + https://github.com/projg2/gpep517/ " SRC_URI=" - https://github.com/mgorny/gpep517/archive/v${PV}.tar.gz + https://github.com/projg2/gpep517/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz " @@ -30,9 +30,6 @@ RDEPEND=" distutils_enable_tests pytest -# do not use any build system to avoid circular deps -python_compile() { :; } - python_install() { python_domodule gpep517 python_newscript - gpep517 <<-EOF diff --git a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-5.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-5.ebuild deleted file mode 100644 index 1c06fab5af..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-5.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_SETUPTOOLS=manual -PYTHON_COMPAT=( pypy3 python3_{8..11} ) - -inherit distutils-r1 - -DESCRIPTION="A backend script to aid installing Python packages in Gentoo" -HOMEPAGE=" - https://pypi.org/project/gpep517/ - https://github.com/mgorny/gpep517/ -" -SRC_URI=" - https://github.com/mgorny/gpep517/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -RDEPEND=" - >=dev-python/installer-0.5.0[${PYTHON_USEDEP}] - >=dev-python/tomli-1.2.3[${PYTHON_USEDEP}] -" - -distutils_enable_tests pytest - -# do not use any build system to avoid circular deps -python_compile() { :; } - -python_install() { - python_domodule gpep517 - python_newscript - gpep517 <<-EOF - #!${EPREFIX}/usr/bin/python - import sys - from gpep517.__main__ import main - sys.exit(main()) - EOF -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-6.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-6.ebuild deleted file mode 100644 index 1c06fab5af..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/gpep517-6.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_SETUPTOOLS=manual -PYTHON_COMPAT=( pypy3 python3_{8..11} ) - -inherit distutils-r1 - -DESCRIPTION="A backend script to aid installing Python packages in Gentoo" -HOMEPAGE=" - https://pypi.org/project/gpep517/ - https://github.com/mgorny/gpep517/ -" -SRC_URI=" - https://github.com/mgorny/gpep517/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -RDEPEND=" - >=dev-python/installer-0.5.0[${PYTHON_USEDEP}] - >=dev-python/tomli-1.2.3[${PYTHON_USEDEP}] -" - -distutils_enable_tests pytest - -# do not use any build system to avoid circular deps -python_compile() { :; } - -python_install() { - python_domodule gpep517 - python_newscript - gpep517 <<-EOF - #!${EPREFIX}/usr/bin/python - import sys - from gpep517.__main__ import main - sys.exit(main()) - EOF -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/metadata.xml index 802f821d7a..d4f25a6234 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/gpep517/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/gpep517/metadata.xml @@ -7,7 +7,7 @@ </maintainer> <stabilize-allarches/> <upstream> - <remote-id type="github">mgorny/gpep517</remote-id> + <remote-id type="github">projg2/gpep517</remote-id> <remote-id type="pypi">gpep517</remote-id> </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/Manifest deleted file mode 100644 index 0c22b9e841..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST importlib_metadata-4.11.3.tar.gz 43607 BLAKE2B 661f8ce68869540995dbee39c6be07d7b88e8339267d4d49744691f2347ab2bcc9ac33c4cafd6caed5fa9ce3d4a3640a816e4659eee9a59b5ccc1df2edd2f6aa SHA512 d33efa2abba5f6f770615f133c940a61948ce5091d59526ee2c7e3866aebd74d79ac464f72602404c2b56fe284a93a9cd1b0cac251ceea53666019485bdddf23 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/importlib_metadata-4.11.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/importlib_metadata-4.11.3.ebuild deleted file mode 100644 index 89ca928452..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/importlib_metadata-4.11.3.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=flit -# NB: this package extends beyond built-in importlib stuff in py3.8+ -# new entry_point API not yet included in cpython release -PYTHON_COMPAT=( pypy3 python3_{8..10} ) - -inherit distutils-r1 - -DESCRIPTION="Read metadata from Python packages" -HOMEPAGE="https://github.com/python/importlib_metadata" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -RDEPEND=" - dev-python/zipp[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/pyfakefs[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/importlib_resources[${PYTHON_USEDEP}] - ' 3.8) - ) -" - -distutils_enable_sphinx docs dev-python/jaraco-packaging dev-python/rst-linker -distutils_enable_tests unittest - -src_configure() { - grep -q 'build-backend = "setuptools' pyproject.toml || - die "Upstream changed build-backend, recheck" - # write a custom pyproject.toml to ease setuptools bootstrap - cat > pyproject.toml <<-EOF || die - [build-system] - requires = ["flit_core >=3.2,<4"] - build-backend = "flit_core.buildapi" - - [project] - name = "importlib_metadata" - version = "${PV}" - description = "Read metadata from Python packages" - EOF -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/metadata.xml deleted file mode 100644 index d28bf37c8c..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/importlib_metadata/metadata.xml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="person"> - <email>sbraz@gentoo.org</email> - <name>Louis Sautier</name> - </maintainer> - <maintainer type="project"> - <email>python@gentoo.org</email> - <name>Python</name> - </maintainer> - <stabilize-allarches/> - <upstream> - <remote-id type="pypi">importlib-metadata</remote-id> - <remote-id type="github">python/importlib_metadata</remote-id> - <bugs-to>https://github.com/python/importlib_metadata/issues</bugs-to> - <doc>https://importlib-metadata.readthedocs.io/</doc> - </upstream> -</pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/inflect/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/inflect/Manifest new file mode 100644 index 0000000000..eaa1d45e36 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/inflect/Manifest @@ -0,0 +1 @@ +DIST inflect-6.0.2.tar.gz 70830 BLAKE2B 8faa09c53f836429b6e1a2965da3c4315260e1cb3ae7dc40fe226d7f4595e9bd54498167c044f67fed5f79e2997af5425cc13680b9c2b722ffd702095f60b038 SHA512 ddb0439eeffbd21b3293208eb7e89f97fe556a3ba1e88de7e15d1c6bc5a59cdb25a224d7cfec5a010dd384728b15317c1dc752e3a8d4d95dd6eea8224a4f2877 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/inflect/inflect-6.0.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/inflect/inflect-6.0.2.ebuild new file mode 100644 index 0000000000..1074ffd7ff --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/inflect/inflect-6.0.2.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{9..11} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Correctly inflect words and numbers" +HOMEPAGE=" + https://pypi.org/project/inflect/ + https://github.com/jaraco/inflect/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" + +RDEPEND=" + >=dev-python/pydantic-1.9.1[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools_scm-3.4.1[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/zipp/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/inflect/metadata.xml similarity index 71% rename from sdk_container/src/third_party/portage-stable/dev-python/zipp/metadata.xml rename to sdk_container/src/third_party/portage-stable/dev-python/inflect/metadata.xml index 019bf659f0..73a31b3ac2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/zipp/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/inflect/metadata.xml @@ -11,8 +11,8 @@ </maintainer> <stabilize-allarches/> <upstream> - <remote-id type="pypi">zipp</remote-id> - <remote-id type="github">jaraco/zipp</remote-id> - <bugs-to>https://github.com/jaraco/zipp/issues</bugs-to> + <remote-id type="pypi">inflect</remote-id> + <remote-id type="github">jaraco/inflect</remote-id> + <bugs-to>https://github.com/jaraco/inflect/issues</bugs-to> </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/installer/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/installer/Manifest index 0d491f829a..ef2653b968 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/installer/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/installer/Manifest @@ -1,4 +1,2 @@ -DIST installer-0.5.0-py3-none-any.whl.zip 452177 BLAKE2B 41bb5929c1bc42afa1e09f366356aa441eb92d258da40421d7f46ceb466ee4604ed96fef0969dcd2fe28e8f4b06c741ac3108000f69ea42b6bb194890102ad71 SHA512 470c4fec8888114af6769db8b8cefa09a376bfcdf0d78320f884a7453a4991765cdf0b9122c74d8e147d193e75ab3e12cc24c3b93c0668956c17f52443833c4e -DIST installer-0.5.0.gh.tar.gz 468351 BLAKE2B 6c258bdaae3351e87a88675fb813bb70611d9188ba16a09ba03de4caa3d79fe32544e229f880338304d00343c2b3121b1948bbef2e27c7255d231a3d5665aa5f SHA512 8731bbf8a51b1094dc87f84575eec07a650988bdeddf205d04cf80a5088eac0d8b2927022864f4011a9562fcaae9f511747e5672f94ec3cce1dccdfa833c4fce -DIST installer-0.5.1-py3-none-any.whl.zip 452220 BLAKE2B df2d2b351c3ca1e7d5991cebc77035bd8da980d0cd739b11532dac3e1fca4bcf58ebb746b4a3468978f765515ca22d3f777b279174715aaa2838231d4204028b SHA512 50f4778352393ad4d56ce5ccce2f5691df2114ef133b1a614e1c4ec2802261dd4de162fd359f47a51b4195b9b5594f5448591ee80356fd2ddb3221a2e602c797 -DIST installer-0.5.1.gh.tar.gz 468433 BLAKE2B 5ba76eb2a576209c2bdf80adfcbd8ea22b55394652640085cf8dd39ded06a0a33ab75f3e4ff73d5de2db028b8c4dac652d631c94e2c9401a825ee75e7b143c01 SHA512 0320c1795c98a593b5da46775465e26bdf8736f59835970517cb02f2756030a3744b9385a9342e8062362d0769d585ff6cce504fdf105e99d27d6ba40281842b +DIST installer-0.6.0-py3-none-any.whl.zip 452554 BLAKE2B 58a38d07256ed4fde3ab9495d47c117966155067fb6e903e2c1979272055b252e81f514cc67f5d0cda12e870f0a4f68f4c44bbfd6af38628e64726bdbcb17b50 SHA512 eca4f06e078c920085090a24c6083fceba2d52e433b21e1f2fb4d4e2e457f0dcca0e0307fb3239ab6018a92a3cb2e797499f050264ca2918bd268699357140b7 +DIST installer-0.6.0.gh.tar.gz 469015 BLAKE2B c7e297724a634377d312ef408627e40c8a8aa7f67824331b657d13aa2908df2a59b935d7774437aa56b4b41bc7418f6f2e575c1e0fb6b282a124cf0440f74b89 SHA512 0952bbf245359d6f660f98e59096ed3d57facb5bad0e9715fe525bd52f50cce198b481811d2ba4d204776f7ae9bec9c3431ae044d6ef9a8db8d873c170cf13fb diff --git a/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.5.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.5.0.ebuild deleted file mode 100644 index eaf0e45936..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.5.0.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_SETUPTOOLS=manual -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -inherit distutils-r1 - -DESCRIPTION="A library for installing Python wheels" -HOMEPAGE=" - https://pypi.org/project/installer/ - https://github.com/pradyunsg/installer/ - https://installer.readthedocs.io/en/latest/ -" -SRC_URI=" - https://github.com/pradyunsg/installer/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz - https://files.pythonhosted.org/packages/py3/${PN::1}/${PN}/${P%_p*}-py3-none-any.whl - -> ${P%_p*}-py3-none-any.whl.zip -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -BDEPEND=" - app-arch/unzip -" - -distutils_enable_tests pytest - -# do not use any build system to avoid circular deps -python_compile() { :; } - -python_test() { - local -x PYTHONPATH=src - epytest -} - -python_install() { - python_domodule src/installer "${WORKDIR}"/*.dist-info -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.5.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.5.1.ebuild deleted file mode 100644 index ce5ec797e9..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.5.1.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_SETUPTOOLS=manual -PYTHON_COMPAT=( python3_{8..11} pypy3 ) -inherit distutils-r1 - -DESCRIPTION="A library for installing Python wheels" -HOMEPAGE=" - https://pypi.org/project/installer/ - https://github.com/pypa/installer/ - https://installer.readthedocs.io/en/latest/ -" -SRC_URI=" - https://github.com/pypa/installer/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz - https://files.pythonhosted.org/packages/py3/${PN::1}/${PN}/${P%_p*}-py3-none-any.whl - -> ${P%_p*}-py3-none-any.whl.zip -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -BDEPEND=" - app-arch/unzip -" - -distutils_enable_tests pytest - -# do not use any build system to avoid circular deps -python_compile() { :; } - -python_test() { - local -x PYTHONPATH=src - epytest -} - -python_install() { - python_domodule src/installer "${WORKDIR}"/*.dist-info -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.6.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.6.0.ebuild new file mode 100644 index 0000000000..fcb3784df3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/installer/installer-0.6.0.ebuild @@ -0,0 +1,41 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep +EAPI=7 + +DISTUTILS_USE_PEP517=no +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A library for installing Python wheels" +HOMEPAGE=" + https://pypi.org/project/installer/ + https://github.com/pypa/installer/ + https://installer.readthedocs.io/en/latest/ +" +SRC_URI=" + https://github.com/pypa/installer/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + $(pypi_wheel_url --unpack) +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +BDEPEND=" + app-arch/unzip +" + +distutils_enable_tests pytest + +python_compile() { + python_domodule src/installer "${WORKDIR}"/*.dist-info +} + +python_install() { + distutils-r1_python_install + python_optimize +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest index 2e1a16f878..b104febc02 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/Manifest @@ -1 +1,3 @@ -DIST jaraco.context-4.1.1.tar.gz 7615 BLAKE2B 5734da1c55420c45520aea57398e66a3d880a555c76650bcaf3427911a7814be92f4a879219c8ccf3c808fdf00d3a77b76e68a93ef3fdad4ea50550188118317 SHA512 e01d3bd7b4eb712d00aba3fc40a78a5484141fcacf5bc772287a35ac81eca4c9744963679daadf6a170cf2ec26234243e602c89f71833fe84175ac39fb401453 +DIST jaraco.context-4.2.0.tar.gz 9308 BLAKE2B 047474e325846a5e01407cd5c6c64da4f7185d3a26b3664f06e3ca76bdb5989fd741a62ab32a667d56a80a4280824e8614cc64a27aa45f97f81d93c344f06f31 SHA512 829284682ead392ae7620c1881e89b7091e7ddc7c1d293c05792f7ce4276a5745554598a222a52ed93a7b2b401d20f3d066cfd32de65ad2f0f3c8c5f5cd2c75a +DIST jaraco.context-4.2.1.tar.gz 9526 BLAKE2B f4543528ac24ed0005955cee49b1e4723b6d6240125eda3b6f58307a22180df41ed90069328e8e0efe460040dbadd2948d3728ccf2c01953b7e5d6bfb43e378d SHA512 34b4a051e4a50c24313bee4b80106cc5b3bb71cafc4b2eb4e8cf061b270f5ccf0ff550b58d7b05d7407f2cd7aa8ec4baf113de6dcd064d91e3f2619c5e0ce284 +DIST jaraco.context-4.3.0.tar.gz 9764 BLAKE2B 2905723ec54c6ae63b2088d677cd486dcdc06dfea06bb058eeb512da508b2ae74990894cb62f3751321cb4c813b66ffe9a3084b21eb0cb4236a9515969432dfc SHA512 8882229fa1a68f2733ec4103fbeaf47625b19790f4461ab18df4c1f1a99d4d26d10d7381ab68ba5df48616a1fdb2d5e4a767496a0e40658fd011ed9cd39255de diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.1.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.2.0.ebuild similarity index 87% rename from sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.1.1-r2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.2.0.ebuild index 90f35d3b5b..7fecbb66c1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.1.1-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.2.0.ebuild @@ -1,17 +1,20 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 MY_P=${P/-/.} DESCRIPTION="Context managers by jaraco" -HOMEPAGE="https://github.com/jaraco/jaraco.context" +HOMEPAGE=" + https://github.com/jaraco/jaraco.context/ + https://pypi.org/project/jaraco.context/ +" SRC_URI="mirror://pypi/${PN:0:1}/${PN/-/.}/${MY_P}.tar.gz" S="${WORKDIR}/${MY_P}" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.2.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.2.1.ebuild new file mode 100644 index 0000000000..100882e1be --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.2.1.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep +EAPI=7 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +MY_P=${P/-/.} +DESCRIPTION="Context managers by jaraco" +HOMEPAGE=" + https://github.com/jaraco/jaraco.context/ + https://pypi.org/project/jaraco.context/ +" +SRC_URI="mirror://pypi/${PN:0:1}/${PN/-/.}/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "jaraco.context" + version = "${PV}" + description = "Context managers by jaraco" + EOF +} + +python_install() { + distutils-r1_python_install + # rename to workaround a bug in pkg_resources + # https://bugs.gentoo.org/834522 + mv "${D}$(python_get_sitedir)"/jaraco{_,.}context-${PV}.dist-info || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.3.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.3.0.ebuild new file mode 100644 index 0000000000..d2191050ec --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/jaraco-context-4.3.0.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep +EAPI=7 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Context managers by jaraco" +HOMEPAGE=" + https://github.com/jaraco/jaraco.context/ + https://pypi.org/project/jaraco.context/ +" +SRC_URI="$(pypi_sdist_url --no-normalize "${PN/-/.}")" +S=${WORKDIR}/${P/-/.} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "jaraco.context" + version = "${PV}" + description = "Context managers by jaraco" + EOF +} + +python_install() { + distutils-r1_python_install + # rename to workaround a bug in pkg_resources + # https://bugs.gentoo.org/834522 + mv "${D}$(python_get_sitedir)"/jaraco{_,.}context-${PV}.dist-info || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/metadata.xml index b08af07ab2..a7d0937c67 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-context/metadata.xml @@ -7,6 +7,7 @@ </maintainer> <stabilize-allarches/> <upstream> + <remote-id type="github">jaraco/jaraco.context</remote-id> <remote-id type="pypi">jaraco.context</remote-id> </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/Manifest index 53908829dd..2956ec3287 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/Manifest @@ -1 +1 @@ -DIST jaraco.functools-3.5.0.tar.gz 13254 BLAKE2B 9165f901106278da562c6b59c3cc29e0b1c4689c5db7955f57a76fca3c12e90d30a80a7dde3420a719b093c41b889e54170bfa6f6f18b6f078e3f4291e59736f SHA512 7257f41506f90ca2fda1bd12fed58fa4d4ff5738547f8cdae8ccad1901e0c818afb701dd8e9050fc77ca1271bc2466d5a542990138bc3db2cf9b04d12850844c +DIST jaraco.functools-3.5.2.tar.gz 14650 BLAKE2B 63db54c5f3dea7b0ce939ad51fc4c4f5831a620a37a47d416079d4c9ad30cb3d401567a8da036178122431cafd8dc18e4a9b59241cd1fc0b8bd1c057dfb8a034 SHA512 3f67d151f4f6553b3e560b0e6ab71cf726d6c8f36ef5e9f69b6325605547797e19a3f9eb1331cf332db498538953ccaeb75820528e6599fd7cf125abdc073e69 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-3.5.0-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-3.5.2.ebuild similarity index 78% rename from sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-3.5.0-r2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-3.5.2.ebuild index 4819bf4834..d970cab52f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-3.5.0-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/jaraco-functools-3.5.2.ebuild @@ -1,19 +1,21 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( pypy3 python3_{8..11} ) +PYTHON_COMPAT=( pypy3 python3_{9..11} ) -inherit distutils-r1 +inherit distutils-r1 pypi -MY_P=${P/-/.} DESCRIPTION="Additional functions used by other projects by developer jaraco" -HOMEPAGE="https://github.com/jaraco/jaraco.functools" -SRC_URI="mirror://pypi/${PN:0:1}/${PN/-/.}/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" +HOMEPAGE=" + https://github.com/jaraco/jaraco.functools/ + https://pypi.org/project/jaraco.functools/ +" +SRC_URI="$(pypi_sdist_url --no-normalize "${PN/-/.}")" +S=${WORKDIR}/${P/-/.} LICENSE="MIT" SLOT="0" @@ -28,9 +30,6 @@ BDEPEND=" ) " -distutils_enable_sphinx docs \ - ">=dev-python/jaraco-packaging-3.2" \ - ">=dev-python/rst-linker-1.9" distutils_enable_tests pytest src_configure() { diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/metadata.xml index d329dd905d..360b236304 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-functools/metadata.xml @@ -1,10 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>sbraz@gentoo.org</email> - <name>Louis Sautier</name> - </maintainer> <maintainer type="project"> <email>python@gentoo.org</email> <name>Python</name> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest index 3d1008ab90..22567de667 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/Manifest @@ -1 +1,2 @@ -DIST jaraco.text-3.7.0.tar.gz 12054 BLAKE2B 54528808695e2f1f04165e3de42d1715bb3e3ee1450ee8d8759814d209ba98c181d1746a916816dd50703e5a4e26ad7986f389619324ffbabaa89be90fd3908c SHA512 559dc5ed0f2c0b46dd0cbbc112ab01bbdb68bc12923cff8f745a5e233696ca9f50cef6dbf60116df5121f4761457574deebea142c2a23ca6c4664d7395b5607e +DIST jaraco.text-3.11.0.tar.gz 15883 BLAKE2B f0f3fe33901a68741cb26270384750f070476ef921bf2822f81dddfc1c66e41016757579e310bd20fc8a7f02b188de96f07bf58db41cca51252e46ebbbddcff9 SHA512 ad3ac412df5e21cef86dc56cdc869a93a660a103a676c1d187e5ea762690b89d61c8f68994e6a891e3d98071b440a052fad60a37f71066e4e11a2cfaf45ae009 +DIST jaraco.text-3.11.1.tar.gz 16083 BLAKE2B f7268128209fbdc849a745595339f4dc9a097f3f4f8f0cdcb05ca3106ed5a45460126fbb2b7d9c3b01b63aa3f750175e8cd366034183b7d8804a1650fe493e4b SHA512 b4066589e9d4c9a2a82ae2b0825d34b22b93ee179d29c3666e9b978390121520afcb8fc5ffa6457022d2e8477f4cf2b76485d9896438ee46275326577609f201 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.7.0-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.11.0.ebuild similarity index 70% rename from sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.7.0-r2.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.11.0.ebuild index f6c5910ebc..bda79d6b75 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.7.0-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.11.0.ebuild @@ -1,35 +1,50 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 MY_P=${P/-/.} DESCRIPTION="Text utilities used by other projects by developer jaraco" -HOMEPAGE="https://github.com/jaraco/jaraco.text" +HOMEPAGE=" + https://github.com/jaraco/jaraco.text/ + https://pypi.org/project/jaraco.text/ +" SRC_URI="mirror://pypi/${PN:0:1}/${PN/-/.}/${MY_P}.tar.gz" S=${WORKDIR}/${MY_P} LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" RDEPEND=" >=dev-python/jaraco-context-4.1.1-r1[${PYTHON_USEDEP}] >=dev-python/jaraco-functools-3.5.0-r1[${PYTHON_USEDEP}] $(python_gen_cond_dep ' >=dev-python/importlib_resources-5.4.0-r3[${PYTHON_USEDEP}] - ' python3_8 pypy3) + ' 3.8) +" +# needed only for CLI tool, make it PDEPEND to reduce pain in setuptools +# bootstrap +PDEPEND=" + dev-python/autocommand[${PYTHON_USEDEP}] + dev-python/inflect[${PYTHON_USEDEP}] + dev-python/more-itertools[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + ${PDEPEND} + $(python_gen_cond_dep ' + dev-python/pathlib2[${PYTHON_USEDEP}] + ' 3.8 3.9) + ) " -distutils_enable_sphinx docs \ - ">=dev-python/jaraco-packaging-3.2" \ - ">=dev-python/rst-linker-1.9" distutils_enable_tests pytest src_configure() { diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.11.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.11.1.ebuild new file mode 100644 index 0000000000..86814f81c0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/jaraco-text-3.11.1.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep +EAPI=7 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Text utilities used by other projects by developer jaraco" +HOMEPAGE=" + https://github.com/jaraco/jaraco.text/ + https://pypi.org/project/jaraco.text/ +" +SRC_URI="$(pypi_sdist_url --no-normalize "${PN/-/.}")" +S=${WORKDIR}/${P/-/.} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/jaraco-context-4.1.1-r1[${PYTHON_USEDEP}] + >=dev-python/jaraco-functools-3.5.0-r1[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/importlib_resources-5.4.0-r3[${PYTHON_USEDEP}] + ' 3.8) +" +# needed only for CLI tool, make it PDEPEND to reduce pain in setuptools +# bootstrap +PDEPEND=" + dev-python/autocommand[${PYTHON_USEDEP}] + dev-python/inflect[${PYTHON_USEDEP}] + dev-python/more-itertools[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + ${PDEPEND} + $(python_gen_cond_dep ' + dev-python/pathlib2[${PYTHON_USEDEP}] + ' 3.8 3.9) + ) +" + +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "jaraco.text" + version = "${PV}" + description = "Module for text manipulation" + EOF +} + +python_install() { + distutils-r1_python_install + # rename to workaround a bug in pkg_resources + # https://bugs.gentoo.org/834522 + mv "${D}$(python_get_sitedir)"/jaraco{_,.}text-${PV}.dist-info || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/metadata.xml index 576c56c4a4..53b2aac86a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/jaraco-text/metadata.xml @@ -1,10 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>sbraz@gentoo.org</email> - <name>Louis Sautier</name> - </maintainer> <maintainer type="project"> <email>python@gentoo.org</email> <name>Python</name> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jinja/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/jinja/Manifest index f97e2a8e29..db75823198 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jinja/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/jinja/Manifest @@ -1,3 +1,2 @@ DIST jinja-2.11.3.tar.gz 258057 BLAKE2B 4735464d044718ce1e6b2663ecb1b238b38fbf0f37ed683257775fe9e853186c089b98494209e511be5aa96bf6df8f6d472be132b6184a7d9213e182099c0433 SHA512 f8e2951edf780d7b44ac74d36579c89b0a5c076b4250faf643ae7e3ff6a431fedaabed640e5efb496cda1a79a4057bf312ae652484c8d4631d521689eb0adbc1 -DIST jinja-3.1.1.tar.gz 272001 BLAKE2B 4787ee89d7e10cea24d3bf2810e391d5c17c00ffee8fd2f9244a9e24b219bc126e4111cc6b788107cbc07dd96732a2d1fc51dd87506545dc8beb7fdce5cd89b1 SHA512 285b3a2e09fbf891ce1d18e2692e400a9fe9d8968a36be50229972d9bdbb590bbea099cd26443de0fbe5ed7a2c6419eb211bfdac15c27a61b8db903e88855478 DIST jinja-3.1.2.gh.tar.gz 272546 BLAKE2B dc4bc81900c07e7816ff63259073409650f1f679e00d76b9574aaba301b36a7037aaf77a87cc1c160ea2aa2272ceb67e2fd20fbd74bb9850880fb909babded8e SHA512 50feebc7eed4c8b5bb0c2951784c1c115e3ee1c0e0c91bbf1884551b1312ef8fce24804a2ca1dfd8c543406529afe4817567c39e7cfd15028b54049853623144 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-2.11.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-2.11.3-r1.ebuild index 8bed8a3c23..7f1982612b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-2.11.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-2.11.3-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{8,9} pypy3 ) +PYTHON_COMPAT=( python3_9 pypy3 ) PYTHON_REQ_USE="threads(+)" inherit distutils-r1 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-3.1.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-3.1.1.ebuild deleted file mode 100644 index abae5016c7..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-3.1.1.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 - -DESCRIPTION="A full-featured template engine for Python" -HOMEPAGE="https://jinja.palletsprojects.com/ https://pypi.org/project/Jinja2/" -SRC_URI="https://github.com/pallets/jinja/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris" -IUSE="examples" - -RDEPEND=" - >=dev-python/markupsafe-2.0.0[${PYTHON_USEDEP}] -" - -distutils_enable_sphinx docs \ - dev-python/sphinx-issues \ - dev-python/pallets-sphinx-themes -distutils_enable_tests pytest - -# XXX: handle Babel better? - -src_prepare() { - # avoid unnecessary dep on extra sphinxcontrib modules - sed -i '/sphinxcontrib.log_cabinet/ d' docs/conf.py || die - - distutils-r1_src_prepare -} - -python_install_all() { - if use examples ; then - docinto examples - dodoc -r examples/. - fi - - distutils-r1_python_install_all -} - -pkg_postinst() { - if ! has_version dev-python/Babel; then - elog "For i18n support, please emerge dev-python/Babel." - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-3.1.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-3.1.2.ebuild index ab9b515762..a74e811210 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-3.1.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/jinja/jinja-3.1.2.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) PYTHON_REQ_USE="threads(+)" inherit distutils-r1 @@ -22,7 +22,7 @@ SRC_URI=" LICENSE="BSD" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris" IUSE="examples" RDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/Manifest index f7e16316a6..930f10de15 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/Manifest @@ -1 +1,2 @@ -DIST lazy-object-proxy-1.7.1.tar.gz 41995 BLAKE2B f3945b3ddc8335be184542e23eb823effe83262a80f048e92441d60bee2ace2f0c9b09fc00a7d356e91a66676361979bc10555dc24ac65e2fdbdfa9ba0cf9e02 SHA512 cf80f2e43795cef09c0a6dde32276d54f5d66a2cf017d3e815868ec9925d989f7256bbf3e416c4445d13e0c9241733029d9a99f2556258f59c2c5267b3c35391 +DIST lazy-object-proxy-1.8.0.tar.gz 41884 BLAKE2B a2869137ccedc2971bd341dea954fecf87ab1829c85fadb3128abc296df000d4015e6a210067327a7f5606b9e4c56c6ff3a1110e2a2ae998951f9d141be1c556 SHA512 a682e7d1ef405939f5f75f598618d6c7de482decf8027abcf4c7c2b684b3442ca3b1a666d1913e9c7f63c086753e0d79b8c1b03c0cafe8cbea3d7c70893be57f +DIST lazy-object-proxy-1.9.0.tar.gz 42830 BLAKE2B 565315a3e855bc5335af717d1edc947fef57514c06036280d1f4666ab9642cf7e7b4bb145da87cbca14d9efa9f4869d7ad256031983a773580dc398fb7ce25e0 SHA512 2168254a71cf52ef406e5edf4653b9c8ae05392d4ad3c2e5e8e9f8db56152d968a77d14226acdf7d962f66d460c40add335615442f6f176d697c071f9cb137f5 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.7.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.8.0.ebuild similarity index 76% rename from sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.7.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.8.0.ebuild index a4c35aa127..56a7f4ab0c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.7.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.8.0.ebuild @@ -1,16 +1,17 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{8..10} pypy3 ) +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 DESCRIPTION="A fast and thorough lazy object proxy" HOMEPAGE=" - https://github.com/ionelmc/python-lazy-object-proxy + https://github.com/ionelmc/python-lazy-object-proxy/ https://pypi.org/project/lazy-object-proxy/ - https://python-lazy-object-proxy.readthedocs.org/" + https://python-lazy-object-proxy.readthedocs.io/" SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz" LICENSE="BSD" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.9.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.9.0.ebuild new file mode 100644 index 0000000000..8d971245c5 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/lazy-object-proxy/lazy-object-proxy-1.9.0.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="A fast and thorough lazy object proxy" +HOMEPAGE=" + https://github.com/ionelmc/python-lazy-object-proxy/ + https://pypi.org/project/lazy-object-proxy/ + https://python-lazy-object-proxy.readthedocs.io/ +" +SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" + +BDEPEND=" + dev-python/setuptools_scm[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +python_prepare_all() { + # No need to benchmark + sed \ + -e '/benchmark/s:test_:_&:g' \ + -e '/pytest.mark.benchmark/d' \ + -i tests/test_lazy_object_proxy.py || die + distutils-r1_python_prepare_all +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest index 1bbee16e74..dfb11dbe76 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest @@ -1 +1 @@ -DIST lxml-4.8.0.tar.gz 959376 BLAKE2B a40be5e058153e1dc3f8501b645b0211f4498928ed71b161df54a67501356e9968064401b6d17e17dc8d62223b29e794eaa2bee7ff78ffee203d9f9a22f3e1c2 SHA512 bbcd8ea001cfa2820dcac4e00de6ded81700b2f0bd4a58bcdd4da05a19a107f57cd56280c4838fe19ee7ecd6be105878bf8c2f1c0e5111899c4ad1a2ba03537f +DIST lxml-4.9.2.gh.tar.gz 957365 BLAKE2B 201b3977da90386e413f1b89a4b7ee1e44d6bbea05e622e92feb1d67c637ce46ebf746f0648f034ed3bccd609233ccf7d8a7ee456f13b8d9ca8587ddf1ebd32a SHA512 816b2fe2eef2a97a0df66cbc39850c6dc3d6470e4033cc73edb40c80c0afbbe6c084d042d7c98b29497926e76f648caa42e1ebe5d83060af08af6972316077b0 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.8.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.2.ebuild similarity index 79% rename from sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.8.0-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.2.ebuild index 26e673acd7..ffa5dfcbf7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.8.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.2.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 optfeature toolchain-funcs @@ -12,9 +12,12 @@ DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries" HOMEPAGE=" https://lxml.de/ https://pypi.org/project/lxml/ - https://github.com/lxml/lxml + https://github.com/lxml/lxml/ +" +SRC_URI=" + https://github.com/lxml/lxml/archive/${P}.tar.gz + -> ${P}.gh.tar.gz " -SRC_URI="https://github.com/lxml/lxml/archive/${P}.tar.gz" S=${WORKDIR}/lxml-${P} LICENSE="BSD ElementTree GPL-2 PSF-2" @@ -26,19 +29,20 @@ RESTRICT="!test? ( test )" # Note: lib{xml2,xslt} are used as C libraries, not Python modules. DEPEND=" >=dev-libs/libxml2-2.9.12-r2 - >=dev-libs/libxslt-1.1.28" + >=dev-libs/libxslt-1.1.28 +" RDEPEND=" ${DEPEND} " BDEPEND=" virtual/pkgconfig - dev-python/cython[${PYTHON_USEDEP}] + >=dev-python/cython-0.29.29[${PYTHON_USEDEP}] doc? ( $(python_gen_any_dep ' dev-python/docutils[${PYTHON_USEDEP}] dev-python/pygments[${PYTHON_USEDEP}] dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] ') ) test? ( @@ -52,10 +56,10 @@ PATCHES=( python_check_deps() { use doc || return 0 - has_version "dev-python/docutils[${PYTHON_USEDEP}]" && - has_version "dev-python/pygments[${PYTHON_USEDEP}]" && - has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && - has_version "dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]" + python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" && + python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" } python_prepare_all() { diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/lxml/metadata.xml index 5d72e3dc72..f7dc349c9f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/lxml/metadata.xml @@ -6,6 +6,7 @@ <name>Python</name> </maintainer> <upstream> + <remote-id type="cpe">cpe:/a:lxml:lxml</remote-id> <remote-id type="pypi">lxml</remote-id> <remote-id type="github">lxml/lxml</remote-id> <bugs-to>https://bugs.launchpad.net/lxml</bugs-to> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/mako/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/mako/Manifest deleted file mode 100644 index ecd482abd7..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/mako/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST Mako-1.2.0.tar.gz 488603 BLAKE2B 30ef597e2dd500d52d02118e0ec8a40cfeeff00604eb9fec887df4aff794aed7d6a1d78b2defb6f985947f9429d912a083b9941ee30b1e53ef32890d19e94158 SHA512 ad608016d7785a735a28ea18f697be4882da747e3da32e4a7c7be4bf846d37e4d3374d78e62ef85607ae9f3f73ee35dc78b473347e4110c059a504be2c497c6e diff --git a/sdk_container/src/third_party/portage-stable/dev-python/mako/mako-1.2.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/mako/mako-1.2.0.ebuild deleted file mode 100644 index 16fca49e82..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/mako/mako-1.2.0.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( pypy3 python3_{8..11} ) - -inherit distutils-r1 - -MY_P=${P^} -DESCRIPTION="A Python templating language" -HOMEPAGE=" - https://www.makotemplates.org/ - https://github.com/sqlalchemy/mako/ - https://pypi.org/project/Mako/ -" -SRC_URI="mirror://pypi/${MY_P:0:1}/${PN^}/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos" -IUSE="doc" - -RDEPEND=" - >=dev-python/markupsafe-0.9.2[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/Babel[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_test() { - local EPYTEST_DESELECT=( - # change in pygments - test/test_exceptions.py::ExceptionsTest::test_format_exceptions_pygments - ) - [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=( - test/test_exceptions.py::ExceptionsTest::test_alternating_file_names - ) - [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=( - # py3.11 changed tracebacks - test/test_exceptions.py::ExceptionsTest::test_tback_no_trace_from_py_file - test/test_exceptions.py::ExceptionsTest::test_tback_trace_from_py_file - ) - local EPYTEST_IGNORE=( - # lingua is not packaged in Gentoo and the skip is currently broken - # https://github.com/sqlalchemy/mako/pull/357 - test/ext/test_linguaplugin.py - ) - epytest -} - -python_install_all() { - rm -r doc/build || die - - use doc && local HTML_DOCS=( doc/. ) - distutils-r1_python_install_all -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/Manifest index 4d362dbc1a..a73919e84d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/Manifest @@ -1,2 +1,3 @@ DIST MarkupSafe-1.1.1.tar.gz 19151 BLAKE2B 184ab0bc42f8d254ef4239f700f019c0a380bdf2117dfe1abe2eb4dfa0f037158d181a120d8654a6971e9c8badb078f997e3a8bf231898e0f4bb3e8496d9abd3 SHA512 f3014e6131a3ab866914c5635b5397ef71906bffb1b6f8c5f2ed2acf167429ff7914236d38943e872683a57a9be9669f4c5aace6274f3307ab21ef25373db0b6 DIST MarkupSafe-2.1.1.tar.gz 18668 BLAKE2B c15bddc89bec9a6558b797b825314d9db3ac03978c44aed42d98ab534613e5bffa2eb0ffe500ff675e78491e3f6039981c468711bdf398ff56277b2bd93932c4 SHA512 1d9bf55614b4e0aeca726ebda7bab2829452212f03f2295efdd0340f3dd05eefc9733d6dd0e37f0d06a432ce00ed7d06b28c9e817fc25212675006577f468b3e +DIST MarkupSafe-2.1.2.tar.gz 19080 BLAKE2B 560cc052c105c3d9f2690c3e5a2a597dd36848080e3c7d6f8273dcd03bdb613ed54cfe6e53b9ec8053deb38d0d055123da7204a671c1fff3295596d44a63b317 SHA512 84dbeddaf2df713b3cce94eb64876fea8f80c608e25130c18e4691be2b1dea56df8b772d26c0caca88231ef795125eb9678210c33bf20518c18e3047912ddb4b diff --git a/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-1.1.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-1.1.1-r1.ebuild index 74b14b8eac..731f52bbd4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-1.1.1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-1.1.1-r1.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7..10} pypy3 ) +PYTHON_COMPAT=( python3_{9..10} pypy3 ) inherit distutils-r1 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-2.1.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-2.1.1.ebuild index be418d3cf5..1453ceee52 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-2.1.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-2.1.1.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-2.1.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-2.1.2.ebuild new file mode 100644 index 0000000000..056e05f52d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/markupsafe/markupsafe-2.1.2.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +MY_PN="MarkupSafe" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="Implements a XML/HTML/XHTML Markup safe string for Python" +HOMEPAGE=" + https://palletsprojects.com/p/markupsafe/ + https://github.com/pallets/markupsafe/ + https://pypi.org/project/MarkupSafe/ +" +SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz" +S=${WORKDIR}/${MY_P} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris" + +distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest index 48344304bf..06dca92e0d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/Manifest @@ -1,2 +1 @@ -DIST more-itertools-8.12.0.tar.gz 108698 BLAKE2B 2bc48aea5b8508381ac909a963d0fcbf08a17d2d96f17de1dd582bc8ced080be540322ee3f65c66eab1186d024bb2957e7bbddd62041242a7cc4cfff1ad67bc2 SHA512 73759f05d178bd6fe98cadac401707faf90a4f7b456c4aac3f0b3f6c13a2284600971e0b271f1768cacd3ae9b69848404f85432199ca51b8160fbe67045dfd17 -DIST more-itertools-8.13.0.tar.gz 101264 BLAKE2B 28c212e76f18081301c6d946e06112beb2a6a3fef3b99582d5ea98c2142e1e47b0f5300f441a4d206f5950120466212a9fde40eae53bce0098097063468f56f5 SHA512 2f3473cdd67ddcb2c658f60638b91a25c4ce9d9a92bbda5ca937dd4748857408bfe8dd9d4e699f53bd9f10d7b433db57e499bd28f184b8faa58b2004f2c92004 +DIST more-itertools-9.0.0.tar.gz 104237 BLAKE2B 523fe14889862edc2f05da79156914e12984d62168df46630fbe3169ebbe48ba66e018a65bd17dfad54676e5334335dbcda5c442556970442ccc2a792940bcc4 SHA512 a1e73a7a3e4530d070d639baa01c08d91ca11cdab6fec36131764001c2b78f1649e19ddf78ee3c1295f2f9d9951ea7483a4fd1f7c12d5655c3b696db7de35c1e diff --git a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-8.12.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-8.12.0-r1.ebuild deleted file mode 100644 index cb58e63811..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-8.12.0-r1.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -inherit distutils-r1 - -DESCRIPTION="More routines for operating on iterables, beyond itertools" -HOMEPAGE="https://pypi.org/project/more-itertools/" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -distutils_enable_sphinx docs \ - dev-python/sphinx_rtd_theme -distutils_enable_tests unittest - -src_configure() { - grep -q '\[build-system\]' pyproject.toml && - die "Upstream added [build-system] to pyproject.toml, recheck" - # write a custom pyproject.toml to ease setuptools bootstrap - cat > pyproject.toml <<-EOF || die - [build-system] - requires = ["flit_core >=3.2,<4"] - build-backend = "flit_core.buildapi" - - [project] - name = "more_itertools" - version = "${PV}" - description = "More routines for operating on iterables, beyond itertools" - EOF -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-8.13.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-9.0.0.ebuild similarity index 61% rename from sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-8.13.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-9.0.0.ebuild index 1857cb45c5..397b251263 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-8.13.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/more-itertools/more-itertools-9.0.0.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 @@ -18,8 +18,8 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" distutils_enable_sphinx docs \ - dev-python/sphinx_rtd_theme + dev-python/sphinx-rtd-theme distutils_enable_tests unittest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/nspektr/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/nspektr/Manifest index 0bb0507f2a..c369f932ba 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/nspektr/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/nspektr/Manifest @@ -1 +1 @@ -DIST nspektr-0.3.0.tar.gz 6314 BLAKE2B cb7b9b5b35a455d4e72e78d93db49b4f8e274c7d7a6c8bf7ccca52cce2598a937d31b76f1a30c4aa6d673e4ce52c4645ce7392965df35b0888d1c69226e08f00 SHA512 6fc22ad7858858f3b956ba5918ca92468f13d4b7db0e4861b836e63153f7e4319c6468e4f73969ce3fb7845ca8d97808b9db2eb2705a47fe1a8c4c19b9c2ef33 +DIST nspektr-0.4.0.tar.gz 7734 BLAKE2B 66a52f5080c78accc75e2193dab6d07a6257330f9938ac463c160d7e1f9740294416657193e5831f564354eb0dc3112a9ab41676e1c928ac40769d2a4d218089 SHA512 c8e8dcadd3ccd49bc9b1a38d2ff9f1d8d6f85665d3830cc9d7975ec1c63b1e2f1a7a64e12457701ca658e2e0e30cac7652be6d706a4e47ba6a61ae76d9be8875 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/nspektr/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/nspektr/metadata.xml index 8d6c012216..65c8f4e628 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/nspektr/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/nspektr/metadata.xml @@ -4,6 +4,7 @@ <maintainer type="project"> <email>python@gentoo.org</email> </maintainer> + <stabilize-allarches/> <upstream> <remote-id type="github">jaraco/nspektr</remote-id> <remote-id type="pypi">nspektr</remote-id> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/nspektr/nspektr-0.3.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/nspektr/nspektr-0.4.0.ebuild similarity index 81% rename from sdk_container/src/third_party/portage-stable/dev-python/nspektr/nspektr-0.3.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/nspektr/nspektr-0.4.0.ebuild index e263862fc6..09339ae80c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/nspektr/nspektr-0.3.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/nspektr/nspektr-0.4.0.ebuild @@ -1,23 +1,19 @@ -# Copyright 2022 Gentoo Authors +# Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( pypy3 python3_{8..11} ) +PYTHON_COMPAT=( pypy3 python3_{9..11} ) -inherit distutils-r1 +inherit distutils-r1 pypi DESCRIPTION="Distribution package dependency inspector" HOMEPAGE=" https://github.com/jaraco/nspektr/ https://pypi.org/project/nspektr/ " -SRC_URI=" - https://github.com/jaraco/nspektr/archive/v${PV}.tar.gz - -> ${P}.tar.gz -" LICENSE="MIT" SLOT="0" @@ -35,12 +31,6 @@ RDEPEND=" distutils_enable_tests pytest -src_prepare() { - # avoid unnecessary test dep on pip - sed -i -e 's:pip:pytest:' nspektr/__init__.py || die - distutils-r1_src_prepare -} - src_configure() { grep -q 'build-backend = "setuptools' pyproject.toml || die "Upstream changed build-backend, recheck" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/metadata.xml index d77de55c33..69152c3661 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/metadata.xml @@ -9,7 +9,7 @@ <name>Gentoo Science Project</name> </maintainer> <maintainer type="person" proxied="yes"> - <email>ddenoncin@gmail.com</email> + <email>gentoo@denoncin.fr</email> <name>David Denoncin</name> </maintainer> <maintainer type="project" proxied="proxy"> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/ordered-set-4.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/ordered-set-4.1.0.ebuild index 8952c75071..abf7456269 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/ordered-set-4.1.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/ordered-set/ordered-set-4.1.0.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest index 9cb854a5d2..e61e9b7a2f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest @@ -1 +1,2 @@ DIST packaging-21.3.gh.tar.gz 80471 BLAKE2B a16ba1e74f0c868816131a7cb07b7aa0c14760cf3ad4c3d6737ac30ef99276c33b1f018d29e710f28e8d0cfb0e3e6b91e375d1d17e2b7ec6302164377cd503d0 SHA512 8960deacda26877b73d98a3b632e760e902a16ec7a04707f84044980e4d4fb33e4f584db115c9008066aa876079f28633bafe37fbd5ce9a23830b6b89eb4ae7a +DIST packaging-23.0.gh.tar.gz 84318 BLAKE2B b600fc124e368ce583e16c3f4ee478e5774a830818884ff29c797410675c206b37e3cbac8e9ddd724b40ce53c00b1f0b6a58a9dacc1988e3bf59165b656b134b SHA512 5dd2f4a596e5a1ed01b461a37e063573f5ae08e181df40377a167fe2483205b3d965e10dc403cd173d0f87e0bdcae3cde05bd39024783fbe44541d0f777d94de diff --git a/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-21.3-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-21.3-r2.ebuild index bfffb773d8..9640e2da1e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-21.3-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-21.3-r2.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-23.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-23.0-r1.ebuild new file mode 100644 index 0000000000..f77e47da0e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-23.0-r1.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep +EAPI=7 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Core utilities for Python packages" +HOMEPAGE=" + https://github.com/pypa/packaging/ + https://pypi.org/project/packaging/" +SRC_URI=" + https://github.com/pypa/packaging/archive/${PV}.tar.gz -> ${P}.gh.tar.gz" + +SLOT="0" +LICENSE="|| ( Apache-2.0 BSD-2 )" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +RDEPEND=" + >=dev-python/pyparsing-3.0.7-r1[${PYTHON_USEDEP}] + !<dev-python/setuptools-67 +" +DEPEND=" + test? ( + dev-python/pretend[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + epytest --capture=no +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydantic/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pydantic/Manifest new file mode 100644 index 0000000000..12fdd2c045 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pydantic/Manifest @@ -0,0 +1 @@ +DIST pydantic-1.10.4.gh.tar.gz 898916 BLAKE2B 506a53de6a59f858a7c8fd56cf18f8079d48eb4f6d3ba36d149141a7e2d471819a466bfc1c34c879f5ec90c0de385b2b89d58beb75660da7de282278092e901f SHA512 0566f89518c6f0171c9b49b5fb57e568286ed421d64655dde90a1565d0672bfef6237ed99e4120564ca2562c7e29e08d86db4fcec47e605aaa98d60845688e72 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydantic/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/pydantic/metadata.xml new file mode 100644 index 0000000000..908435493b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pydantic/metadata.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>python@gentoo.org</email> + <name>Python</name> + </maintainer> + <upstream> + <remote-id type="pypi">pydantic</remote-id> + <remote-id type="github">pydantic/pydantic</remote-id> + <bugs-to>https://github.com/pydantic/pydantic/issues</bugs-to> + <doc>https://docs.pydantic.dev/</doc> + </upstream> + <use> + <flag name="native-extensions">Compiles native "C" extensions.</flag> + </use> +</pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydantic/pydantic-1.10.4.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pydantic/pydantic-1.10.4.ebuild new file mode 100644 index 0000000000..3c41a8e860 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pydantic/pydantic-1.10.4.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{9..11} ) + +inherit distutils-r1 + +MY_P=${P/_beta/b} +DESCRIPTION="Data parsing and validation using Python type hints" +HOMEPAGE=" + https://github.com/pydantic/pydantic/ + https://pypi.org/project/pydantic/ +" +SRC_URI=" + https://github.com/pydantic/pydantic/archive/v${PV/_beta/b}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" +IUSE="+native-extensions" + +RDEPEND=" + >=dev-python/typing-extensions-4.1.0[${PYTHON_USEDEP}] +" +BDEPEND=" + native-extensions? ( + dev-python/cython[${PYTHON_USEDEP}] + ) + test? ( + dev-python/hypothesis[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/python-dotenv[${PYTHON_USEDEP}] + >=dev-python/python-email-validator-1.2.1[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + sed -i -e '/CFLAGS/d' setup.py || die + distutils-r1_src_prepare +} + +python_compile() { + if [[ ${EPYTHON} == pypy3 ]] || ! use native-extensions; then + # do not build extensions on PyPy to workaround + # https://github.com/cython/cython/issues/4763 + local -x SKIP_CYTHON=1 + fi + distutils-r1_python_compile +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=pytest_mock + + local EPYTEST_DESELECT=( + # flaky test, known upstream + tests/test_hypothesis_plugin.py::test_can_construct_models_with_all_fields + # mypy linting causes regressions with new mypy versions + tests/mypy + ) + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + tests/test_private_attributes.py::test_private_attribute + tests/test_private_attributes.py::test_private_attribute_annotation + tests/test_private_attributes.py::test_private_attribute_factory + tests/test_private_attributes.py::test_private_attribute_multiple_inheritance + tests/test_private_attributes.py::test_underscore_attrs_are_private + ) + ;; + esac + rm -rf pydantic || die + epytest +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/files/0.3-no-pixz-index.patch b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/files/0.3-no-pixz-index.patch new file mode 100644 index 0000000000..0683cb12ba --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/files/0.3-no-pixz-index.patch @@ -0,0 +1,55 @@ +From 79688adff9d494e6ff412210c813d19744dbb8cd Mon Sep 17 00:00:00 2001 +From: Daniel Cordero <pydecomp@0xdc.io> +Date: Mon, 3 May 2021 12:07:46 +0000 +Subject: [PATCH 1/2] pixz_i: copy definition from pixz + +--- + DeComp/definitions.py | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/DeComp/definitions.py b/DeComp/definitions.py +index 16114b2..14fa226 100644 +--- a/DeComp/definitions.py ++++ b/DeComp/definitions.py +@@ -200,6 +200,14 @@ class functions do. + ], + "PIXZ", ["tar.xz", "tpxz", "xz"], {"tar", "pixz"}, + ], ++ "pixz_i": [ ++ "_common", "tar", ++ [ ++ "other_options", "%(comp_prog)s", "pixz", "-cpf", ++ "%(filename)s", "-C", "%(basedir)s", "%(source)s" ++ ], ++ "PIXZ", ["tar.xz", "tpxz", "xz"], {"tar", "pixz"}, ++ ], + "pixz_x": [ + "_common", "tar", + [ + +From f98d90a522b6d0e5331f7254bb95b057fafe44da Mon Sep 17 00:00:00 2001 +From: Daniel Cordero <pydecomp@0xdc.io> +Date: Mon, 3 May 2021 12:12:51 +0000 +Subject: [PATCH 2/2] pixz: don't add trailing index to tarballs + +If pixz detects the input file is a tarball, it adds a trailing file index to help in seeking the file. +However, this trailing index is causes decompression errors with xz -d and systemd-importd. + +For compatibility with these tools, force pixz to never add this tarball index. +--- + DeComp/definitions.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/DeComp/definitions.py b/DeComp/definitions.py +index 14fa226..0025c07 100644 +--- a/DeComp/definitions.py ++++ b/DeComp/definitions.py +@@ -195,7 +195,7 @@ class functions do. + "pixz": [ + "_common", "tar", + [ +- "other_options", "%(comp_prog)s", "pixz", "-cpf", ++ "other_options", "%(comp_prog)s", "'pixz -t'", "-cpf", + "%(filename)s", "-C", "%(basedir)s", "%(source)s" + ], + "PIXZ", ["tar.xz", "tpxz", "xz"], {"tar", "pixz"}, diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/metadata.xml index 4f1b4fd4b7..6f8798bb20 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/metadata.xml @@ -11,7 +11,9 @@ routines. It can easily be extended with custom compression, decompression, and contents definitions. </longdescription> + <stabilize-allarches/> <upstream> <remote-id type="github">dol-sen/pyDeComp</remote-id> + <bugs-to>https://github.com/dol-sen/pyDeComp/issues</bugs-to> </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-0.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-0.3-r1.ebuild deleted file mode 100644 index d2be8da9d3..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-0.3-r1.ebuild +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python3_{7,8,9} ) -DISTUTILS_USE_SETUPTOOLS=no - -inherit distutils-r1 python-r1 - -if [[ ${PV} == "9999" ]] ; then - EGIT_BRANCH="master" - EGIT_REPO_URI="https://github.com/dol-sen/pyDeComp.git" - inherit git-r3 -else - SRC_URI="https://dev.gentoo.org/~dolsen/releases/${PN}/pyDeComp-${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86" - S="${WORKDIR}/pyDeComp-${PV}" -fi - -DESCRIPTION="A python library of common (de)compression and contents handling" -HOMEPAGE="https://github.com/dol-sen/pyDeComp" - -LICENSE="BSD" -SLOT="0" -IUSE="" - -python_install_all() { - distutils-r1_python_install_all -} - -pkg_postinst() { - einfo - einfo "Please file any enhancement requests, or bugs" - einfo "at https://github.com/dol-sen/pyDeComp/issues" - einfo "I am also on IRC @ #gentoo-ci of the Libera.Chat network" -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-0.3-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-0.3-r3.ebuild new file mode 100644 index 0000000000..83a366d11f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-0.3-r3.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} ) + +inherit distutils-r1 + +if [[ ${PV} == "9999" ]] ; then + EGIT_BRANCH="master" + EGIT_REPO_URI="https://github.com/dol-sen/pyDeComp.git" + inherit git-r3 +else + SRC_URI="https://dev.gentoo.org/~dolsen/releases/${PN}/pyDeComp-${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" + S="${WORKDIR}/pyDeComp-${PV}" +fi + +DESCRIPTION="A python library of common (de)compression and contents handling" +HOMEPAGE="https://github.com/dol-sen/pyDeComp" + +LICENSE="BSD" +SLOT="0" + +PATCHES=( "${FILESDIR}/${PV}-no-pixz-index.patch" ) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-9999.ebuild index 1fbc9bfe62..f503d453bc 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/pydecomp/pydecomp-9999.ebuild @@ -1,12 +1,12 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=8 -PYTHON_COMPAT=( python3_{7,8,9} ) -DISTUTILS_USE_SETUPTOOLS=no +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} ) -inherit distutils-r1 python-r1 +inherit distutils-r1 if [[ ${PV} == "9999" ]] ; then EGIT_BRANCH="master" @@ -14,7 +14,7 @@ if [[ ${PV} == "9999" ]] ; then inherit git-r3 else SRC_URI="https://dev.gentoo.org/~dolsen/releases/${PN}/pyDeComp-${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" S="${WORKDIR}/pyDeComp-${PV}" fi @@ -23,22 +23,3 @@ HOMEPAGE="https://github.com/dol-sen/pyDeComp" LICENSE="BSD" SLOT="0" -IUSE="" - -python_install_all() { - distutils-r1_python_install_all -} - -pkg_postinst() { - einfo - einfo "This is new software." - einfo "The API's it installs should be considered unstable" - einfo "and are subject to change." - einfo - einfo "Please file any enhancement requests, or bugs" - einfo "at https://github.com/dol-sen/pyDeComp/issues" - einfo "I am also on IRC @ #gentoo-ci of the Libera.Chat network" - einfo - ewarn "There may be some python 3 compatibility issues still." - ewarn "Please help debug/fix/report them in github or bugzilla." -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest index b096c4cec6..1234781609 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest @@ -1,2 +1 @@ -DIST Pygments-2.11.2.tar.gz 4206258 BLAKE2B d9b7ac03ab564051df8eebf390586387d824584f5485eb6af2048cec181412fe2812409251c9c042421125a2579d9ac6de4006c1c0de025ed7b010482482b9f9 SHA512 606ff0c35fa47882f4c5c3794827132e1ee6ccbb4895ae858f9c93ea0c92b73163c9f4d630b51a8bb782ba0b4944a66d1059ad5d017d3191a0a5b30c1e5b8f9f -DIST Pygments-2.12.0.tar.gz 4282017 BLAKE2B 9ad241d5bcafe59057e9495edb75468e6fa74d150f2d3266590a5a567a7df8ce2ef4ea18f90a8ab83e2fb84993fcf00dec12b04dd968f4c516b8339c49aecc08 SHA512 70bbfaefeb34f9afb5d74aa924ac3da4a913d1c7f607c0b3f80b6cd25c88a8996e516a689062bf2009c472b29999e309eb044f0f427fa1ea8479bf921b51c524 +DIST Pygments-2.14.0.tar.gz 4434562 BLAKE2B a3050bae96a8ae044f803e7964b5dede7a73b04f04f6af9d4b9e4d24e3ae0185138d0d68801ee5ac81cdaf74e50c7fea303913470c23182adb30ff2c08c332a8 SHA512 51416a8e2a8d0288cbbf6fd81e6870ffe9d999da255c43d0f870eb5cb4d01660416d136d39fad38b76c4bace3c3aa648fb306519e85e340545a87fc657aaeb15 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/files/pygments-2.11.2-fix-docs-relative.patch b/sdk_container/src/third_party/portage-stable/dev-python/pygments/files/pygments-2.11.2-fix-docs-relative.patch deleted file mode 100644 index 199a88d28d..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/pygments/files/pygments-2.11.2-fix-docs-relative.patch +++ /dev/null @@ -1,26 +0,0 @@ -Subject: Fix relative path for doc generation - -Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org> - ---- a/doc/conf.py -+++ b/doc/conf.py -@@ -244,7 +244,7 @@ def pg_context(app, pagename, templatename, ctx, event_arg): - ctx['languages'] = lexer_name_url - - if pagename in ('styles', 'demo'): -- with open('examples/example.py') as f: -+ with open('doc/examples/example.py') as f: - html = f.read() - lexer = pygments.lexers.get_lexer_for_filename('example.py') - min_contrasts = test_contrasts.min_contrasts() -@@ -280,7 +280,7 @@ def pg_context(app, pagename, templatename, ctx, event_arg): - def source_read(app, docname, source): - # linkify issue / PR numbers in changelog - if docname == 'docs/changelog': -- with open('../CHANGES') as f: -+ with open('CHANGES') as f: - changelog = f.read() - - idx = changelog.find('\nVersion 2.4.2\n') --- -2.35.1 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/pygments/metadata.xml index a8185a9df5..9f522cdfbe 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pygments/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/pygments/metadata.xml @@ -8,6 +8,7 @@ <longdescription>Pygments is a syntax highlighting package written in Python. Pygments can output to html, bbcode, latex, rtf and other formats.</longdescription> <stabilize-allarches/> <upstream> + <remote-id type="cpe">cpe:/a:pygments:pygments</remote-id> <remote-id type="pypi">Pygments</remote-id> <remote-id type="github">pygments/pygments</remote-id> </upstream> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.11.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.11.2.ebuild deleted file mode 100644 index 4df58e4405..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.11.2.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -inherit distutils-r1 bash-completion-r1 - -MY_P=${P^} -DESCRIPTION="Pygments is a syntax highlighting package written in Python" -HOMEPAGE=" - https://pygments.org/ - https://github.com/pygments/pygments/ - https://pypi.org/project/Pygments/" -SRC_URI="mirror://pypi/${MY_P:0:1}/${PN^}/${MY_P}.tar.gz" -S=${WORKDIR}/${MY_P} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -BDEPEND=" - test? ( - dev-python/lxml[${PYTHON_USEDEP}] - dev-python/pillow[${PYTHON_USEDEP}] - dev-python/wcag-contrast-ratio[${PYTHON_USEDEP}] - virtual/ttf-fonts - )" - -PATCHES=( - "${FILESDIR}/${PN}-2.11.2-fix-docs-relative.patch" -) - -distutils_enable_sphinx doc \ - dev-python/wcag-contrast-ratio -distutils_enable_tests pytest - -python_install_all() { - distutils-r1_python_install_all - newbashcomp external/pygments.bashcomp pygmentize -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.12.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.12.0.ebuild deleted file mode 100644 index 0054a81979..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.12.0.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -inherit distutils-r1 bash-completion-r1 - -MY_P=${P^} -DESCRIPTION="Pygments is a syntax highlighting package written in Python" -HOMEPAGE=" - https://pygments.org/ - https://github.com/pygments/pygments/ - https://pypi.org/project/Pygments/" -SRC_URI="mirror://pypi/${MY_P:0:1}/${PN^}/${MY_P}.tar.gz" -S=${WORKDIR}/${MY_P} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - -BDEPEND=" - test? ( - dev-python/lxml[${PYTHON_USEDEP}] - dev-python/pillow[${PYTHON_USEDEP}] - dev-python/wcag-contrast-ratio[${PYTHON_USEDEP}] - virtual/ttf-fonts - )" - -PATCHES=( - "${FILESDIR}/${PN}-2.11.2-fix-docs-relative.patch" -) - -distutils_enable_sphinx doc \ - dev-python/wcag-contrast-ratio -distutils_enable_tests pytest - -python_install_all() { - distutils-r1_python_install_all - newbashcomp external/pygments.bashcomp pygmentize -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.12.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.14.0.ebuild similarity index 64% rename from sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.12.0-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.14.0.ebuild index 7d9033ed45..8cb3ab44f8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.12.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.14.0.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 bash-completion-r1 @@ -18,9 +18,9 @@ HOMEPAGE=" SRC_URI="mirror://pypi/${MY_P:0:1}/${PN^}/${MY_P}.tar.gz" S=${WORKDIR}/${MY_P} -LICENSE="BSD" +LICENSE="BSD-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" BDEPEND=" test? ( @@ -31,15 +31,9 @@ BDEPEND=" ) " -PATCHES=( - "${FILESDIR}/${PN}-2.11.2-fix-docs-relative.patch" -) - -distutils_enable_sphinx doc \ - dev-python/wcag-contrast-ratio distutils_enable_tests pytest -python_install_all() { - distutils-r1_python_install_all +src_install() { + distutils-r1_src_install newbashcomp external/pygments.bashcomp pygmentize } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest index 83bac227ea..fef86e5a9f 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest @@ -1,3 +1 @@ -DIST pyparsing_3.0.7.tar.gz 944917 BLAKE2B bcbcd18817c69a69ac6863affb1309a5ca63fe46a45dc056d8407d79a77d1f19e4d1abce08f5d6f1aff7cbdaefb5b699787abcddfcbf64e5514e79e2b0b86ce6 SHA512 d5d5547188ebda6fb7f45928174314d3d4d10302acc8fb476cd6590fb4a75167dee5f6397ab0b63efd4cb55c0765708ffd432bcfecf28d8f808815e62615f447 -DIST pyparsing_3.0.8.tar.gz 948516 BLAKE2B 8df61ce3c5f0b9ef725bf750fa25c26e482a5786b6c3a03befbf7945c76f67981d0f60bfc98badeb353274e5e3c8442e105ae635d0b93681e23090e70716ce0a SHA512 5567824ac6d4c17755c0d47f2994cc2449383d9d3e9dfa374886d92af38651334483034713df420701d1c4560b331f61d763f7f8d1d7a14a7d221c022b9fc8a7 DIST pyparsing_3.0.9.tar.gz 967771 BLAKE2B c13c74661b9e0d53b4886c9949b01951d220991f916362a13ce0c32c0ab05a6b1cab4d5e5a626acb7563c0ec1716348ede205cb67bf22c0710904f07404ad82a SHA512 1158f27e31f8eced540217b7234b09005eac416fad74faf59678fdae93fe2f76e0e3b5f4adfd3ceb42c8aef19150950293e989c9a5189741175073eb7a03cd6d diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.7-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.7-r1.ebuild deleted file mode 100644 index 0ddc113a09..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.7-r1.ebuild +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 2004-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -inherit distutils-r1 - -MY_P=${P/-/_} -DESCRIPTION="Easy-to-use Python module for text parsing" -HOMEPAGE="https://github.com/pyparsing/pyparsing https://pypi.org/project/pyparsing/" -SRC_URI="https://github.com/${PN}/${PN}/archive/${MY_P}.tar.gz" -S="${WORKDIR}/${PN}-${MY_P}" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="examples" - -distutils_enable_tests pytest - -EPYTEST_IGNORE=( - # railroad-diagrams not packaged (and not suitable for packaging yet) - tests/test_diagram.py -) - -EPYTEST_DESELECT=( - # also railroad-diagrams - tests/test_unit.py::Test02_WithoutPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test04_WithPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test06_WithBoundedPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test08_WithUnboundedPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test09_WithLeftRecursionParsing::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test10_WithLeftRecursionParsingBoundedMemo::testEmptyExpressionsAreHandledProperly -) - -src_configure() { - [[ -e pyproject.toml ]] && - die "Upstream added pyproject.toml, recheck" - # write a custom pyproject.toml to ease setuptools bootstrap - cat > pyproject.toml <<-EOF || die - [build-system] - requires = ["flit_core >=3.2,<4"] - build-backend = "flit_core.buildapi" - - [project] - name = "pyparsing" - dynamic = ["version", "description"] - EOF -} - -python_install_all() { - if use examples; then - docompress -x /usr/share/doc/${PF}/examples - dodoc -r examples - fi - distutils-r1_python_install_all -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.8.ebuild deleted file mode 100644 index 5dd04e79a4..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.8.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 2004-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) - -inherit distutils-r1 - -MY_P=${P/-/_} -DESCRIPTION="Easy-to-use Python module for text parsing" -HOMEPAGE="https://github.com/pyparsing/pyparsing https://pypi.org/project/pyparsing/" -SRC_URI="https://github.com/${PN}/${PN}/archive/${MY_P}.tar.gz" -S="${WORKDIR}/${PN}-${MY_P}" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="examples" - -distutils_enable_tests pytest - -EPYTEST_IGNORE=( - # railroad-diagrams not packaged (and not suitable for packaging yet) - tests/test_diagram.py -) - -EPYTEST_DESELECT=( - # also railroad-diagrams - tests/test_unit.py::Test02_WithoutPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test04_WithPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test06_WithBoundedPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test08_WithUnboundedPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test09_WithLeftRecursionParsing::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test10_WithLeftRecursionParsingBoundedMemo::testEmptyExpressionsAreHandledProperly -) - -python_install_all() { - if use examples; then - docompress -x /usr/share/doc/${PF}/examples - dodoc -r examples - fi - distutils-r1_python_install_all -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.9.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.9.ebuild index 5dd04e79a4..7be9a46f4b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.9.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.0.9.ebuild @@ -1,11 +1,11 @@ -# Copyright 2004-2022 Gentoo Authors +# Copyright 2004-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 @@ -17,7 +17,7 @@ S="${WORKDIR}/${PN}-${MY_P}" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="examples" distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest index ca3685b868..387e496ffb 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest @@ -1,5 +1,3 @@ -DIST python-gentoo-patches-3.10.0_p1.tar.xz 10068 BLAKE2B 1c9817b449831559f0a0b722c02a5f55d94b3dfde98e5882c1403fe24a4addf7074ab39c09b91cff6fd7ace2e4b6e8ed899d9a0b9ffd6612ce315c4c192bd309 SHA512 39aa41dbf17b6dc5255491c75031a3dae6962b44125e426dbfdce365a6533c5dae9856b1fff8016a189124b7cff72d2665ce99da344c2f9dff005ba685e8c2c4 -DIST python-gentoo-patches-3.10.4.tar.xz 8592 BLAKE2B 67fba3e1fedb17430e5cd93da995b4acaf714db512031b5a2f775a25f793f007941561663cfa413d645ccddc2e22d65d250a40fa166cafda8805488d877ff57d SHA512 3ed2b8ff8f1eb8febe7dcd4b5d13d6d54468be1d525f8f1118977d3bbc78f690a597b09383939d023b03380a306e4bff1693382e29ff562312d803305b1709b2 -DIST setuptools-60.10.0.tar.gz 2420706 BLAKE2B 66d7f3b648b1e3222736ddf46ff97441bc9ed4dc528e0d4ee32ef18c99b2d3488e7525a1598a18df4f2cbdac409a4096a40539807c343d99707068a15003111d SHA512 e679bd84d31cb68f92899e0b25d5a6bf85cf63d9c8e1dfbfe974d7bf819cb36f451596b8715000be6a93656b972dc6c4d90a8a8534a6c88874a0be8140f2f091 -DIST setuptools-62.1.0.tar.gz 2512885 BLAKE2B a26a6bd5001922885b623bc7f1d42da90c59e6d9e195e9dd292ce2e73cd35a51f07fc714261c12db2fdf4510fa1137f57e7f3f649312f6a75035b9d927936a7c SHA512 41f39b5aa22e908c123e8e04c11e505e23cd3aaaae72793e106015dc14b1a44ff3b17aa15ca3da34f34a4becc887ceea7f41932650e38d409f95d7227707d2e1 -DIST setuptools-62.2.0.tar.gz 2512927 BLAKE2B 34932917fb635aa434b574d2e47d1dd0dd742275dc577e7592fc7ad2b7892d7e0fa5281b687873a8a70ab44cb28ecc7a5b8889c954ffcafc2ce298e10a28f3f0 SHA512 4d5b9a88088ef6cb0a742bd708ab52798ee5202a0be33dd6102fa44975d121496edda1ddd9abd4a97e4c29fe804687a1d298d930004a53ee2935c0a15821917f +DIST setuptools-65.7.0.tar.gz 2618315 BLAKE2B a0989c3fd0ab476d69885d022eccf1a89dc670a17d0b3e73bbe4ffb530e26a838fcd1cfffc4c2720ddd19cb8ba45d42bc31441f1e3bbc32fa71850d208f37cc8 SHA512 0eb2d9de9ef2565cf012db7d68ee18359a1432dd42ecd3fb7d490f73d57b0e7ba2a67e0401f66051127e913f29c2e221e88c0cbf523b0ac9abe7f00b6ab1ded8 +DIST setuptools-67.2.0.tar.gz 2475665 BLAKE2B 1d82e21d5c5f7aea479d468ae5c29c62a86a552e811203794f2246bc715647c18c66ab6d37c9da3092fc2b402cc865c1ab85989092c9beccc440913ad7d51ccd SHA512 2d15719d7a0305535ee853e82b5196af2eaa29cbcf73c59515c2fa8e8c910c25fcf3854aac515789a51a845555b19c95e8d06fef4199cf19ba4a45dda5b7ab66 +DIST setuptools-67.3.1.tar.gz 2478867 BLAKE2B 5f2796b548c43e3e3bec71d81fc37938f97eb15256a93d30d749a3175c0c5278316d7b513de651c85b367e49b3bc3e14003a3c7607cf445e5d6137afa5b2c3f1 SHA512 5b0d71572e4107a673a95dfea56a363492a62a3a04ecc8f3095ca79686dea452299358a52b0571179a738226ba92c35d04a2e37d3504fd6c510053cf71e2680d diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/files/setuptools-62.4.0-py-compile.patch b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/files/setuptools-62.4.0-py-compile.patch new file mode 100644 index 0000000000..09d630b363 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/files/setuptools-62.4.0-py-compile.patch @@ -0,0 +1,86 @@ +From 8911d627245f4389488c5d65cce6d1258f4cce7b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Tue, 14 Jun 2022 05:58:20 +0200 +Subject: [PATCH] make -OO enable both opt-1 and opt-2 + +--- + setuptools/_distutils/command/build_py.py | 10 ++++------ + setuptools/_distutils/command/install_lib.py | 14 ++++++-------- + 2 files changed, 10 insertions(+), 14 deletions(-) + +diff --git a/setuptools/_distutils/command/build_py.py b/setuptools/_distutils/command/build_py.py +index 1b22004e..88565bce 100644 +--- a/setuptools/_distutils/command/build_py.py ++++ b/setuptools/_distutils/command/build_py.py +@@ -325,11 +325,9 @@ class build_py(Command): + outputs.append( + importlib.util.cache_from_source(filename, optimization='') + ) +- if self.optimize > 0: ++ for opt in range(1, self.optimize + 1): + outputs.append( +- importlib.util.cache_from_source( +- filename, optimization=self.optimize +- ) ++ importlib.util.cache_from_source(filename, optimization=opt) + ) + + outputs += [ +@@ -403,10 +401,10 @@ class build_py(Command): + byte_compile( + files, optimize=0, force=self.force, prefix=prefix, dry_run=self.dry_run + ) +- if self.optimize > 0: ++ for opt in range(1, self.optimize + 1): + byte_compile( + files, +- optimize=self.optimize, ++ optimize=opt, + force=self.force, + prefix=prefix, + dry_run=self.dry_run, +diff --git a/setuptools/_distutils/command/install_lib.py b/setuptools/_distutils/command/install_lib.py +index ad3089c8..7f906a29 100644 +--- a/setuptools/_distutils/command/install_lib.py ++++ b/setuptools/_distutils/command/install_lib.py +@@ -25,8 +25,8 @@ class install_lib(Command): + # 2) compile .pyc only (--compile --no-optimize; default) + # 3) compile .pyc and "opt-1" .pyc (--compile --optimize) + # 4) compile "opt-1" .pyc only (--no-compile --optimize) +- # 5) compile .pyc and "opt-2" .pyc (--compile --optimize-more) +- # 6) compile "opt-2" .pyc only (--no-compile --optimize-more) ++ # 5) compile .pyc, "opt-1" and "opt-2" .pyc (--compile --optimize-more) ++ # 6) compile "opt-1" and "opt-2" .pyc (--no-compile --optimize-more) + # + # The UI for this is two options, 'compile' and 'optimize'. + # 'compile' is strictly boolean, and only decides whether to +@@ -142,10 +142,10 @@ class install_lib(Command): + prefix=install_root, + dry_run=self.dry_run, + ) +- if self.optimize > 0: ++ for opt in range(1, self.optimize + 1): + byte_compile( + files, +- optimize=self.optimize, ++ optimize=opt, + force=self.force, + prefix=install_root, + verbose=self.verbose, +@@ -182,11 +182,9 @@ class install_lib(Command): + bytecode_files.append( + importlib.util.cache_from_source(py_file, optimization='') + ) +- if self.optimize > 0: ++ for opt in range(1, self.optimize + 1): + bytecode_files.append( +- importlib.util.cache_from_source( +- py_file, optimization=self.optimize +- ) ++ importlib.util.cache_from_source(py_file, optimization=opt) + ) + + return bytecode_files +-- +2.35.1 + diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-62.2.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-65.7.0.ebuild similarity index 72% rename from sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-62.2.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-65.7.0.ebuild index ac29575cbc..924ec384fd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-62.2.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-65.7.0.ebuild @@ -1,16 +1,18 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 +# please bump dev-python/ensurepip-setuptools along with this package! + DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_TESTED=( python3_{9..11} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) PYTHON_REQ_USE="xml(+)" inherit distutils-r1 multiprocessing -CPY_PATCHSET="python-gentoo-patches-3.10.4" DESCRIPTION="Collection of extensions to Distutils" HOMEPAGE=" https://github.com/pypa/setuptools/ @@ -18,12 +20,11 @@ HOMEPAGE=" " SRC_URI=" mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz - https://dev.gentoo.org/~mgorny/dist/python/${CPY_PATCHSET}.tar.xz " LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" @@ -31,11 +32,13 @@ RDEPEND=" >=dev-python/appdirs-1.4.4-r2[${PYTHON_USEDEP}] >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] - dev-python/nspektr[${PYTHON_USEDEP}] + >=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}] >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}] + <dev-python/packaging-22[${PYTHON_USEDEP}] >=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}] + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] $(python_gen_cond_dep ' - >=dev-python/importlib_metadata-4.10.1-r1[${PYTHON_USEDEP}] + >=dev-python/importlib_metadata-4.11.1[${PYTHON_USEDEP}] ' 3.8 3.9) $(python_gen_cond_dep ' >=dev-python/importlib_resources-5.4.0-r3[${PYTHON_USEDEP}] @@ -51,18 +54,17 @@ BDEPEND=" >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] - dev-python/mock[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/pip-run[${PYTHON_USEDEP}] dev-python/pytest[${PYTHON_USEDEP}] dev-python/pytest-fixture-config[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/pytest-virtualenv[${PYTHON_USEDEP}] dev-python/pytest-xdist[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] >=dev-python/virtualenv-20[${PYTHON_USEDEP}] dev-python/wheel[${PYTHON_USEDEP}] - ' python3_{8..11} pypy3) + ' "${PYTHON_TESTED[@]}") ) " PDEPEND=" @@ -73,6 +75,13 @@ PDEPEND=" DOCS=( {CHANGES,README}.rst ) src_prepare() { + local PATCHES=( + # TODO: remove this when we're 100% PEP517 mode + "${FILESDIR}"/setuptools-62.4.0-py-compile.patch + ) + + distutils-r1_src_prepare + # remove bundled dependencies, setuptools will switch to system deps # automatically rm -r */_vendor || die @@ -83,50 +92,39 @@ src_prepare() { -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ -i {} + || die - # apply distutils patches to the bundled distutils - pushd setuptools/_distutils >/dev/null || die - # TODO: distutils C++ patch? - eapply -p3 "${WORKDIR}/${CPY_PATCHSET}/0006-distutils-make-OO-enable-both-opt-1-and-opt-2-optimi.patch" - popd >/dev/null || die - - distutils-r1_src_prepare - export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} } python_test() { local -x SETUPTOOLS_USE_DISTUTILS=stdlib - # keep in sync with python_gen_cond_dep above! - has "${EPYTHON}" python3.{8..11} pypy3 || return + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi local EPYTEST_DESELECT=( # network # TODO: see if PRE_BUILT_SETUPTOOLS_* helps setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist + setuptools/tests/test_build_meta.py::test_legacy_editable_install setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests setuptools/tests/test_virtualenv.py::test_clean_env_install setuptools/tests/test_virtualenv.py::test_no_missing_dependencies - 'setuptools/tests/test_virtualenv.py::test_pip_upgrade_from_source[None]' setuptools/tests/test_virtualenv.py::test_test_command_install_requirements - # unhappy with pytest-xdist? - setuptools/tests/test_easy_install.py::TestUserInstallTest::test_local_index # TODO setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts setuptools/tests/test_extern.py::test_distribution_picklable - setuptools/tests/test_test.py::test_tests_are_run_once # expects bundled deps in virtualenv setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel setuptools/tests/test_editable_install.py::test_editable_with_pyproject + # fails if python-xlib is installed + setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts ) - # test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg - # It tries to sandbox the test in a tempdir - HOME="${PWD}" epytest \ - -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" setuptools + epytest -n "$(makeopts_jobs)" setuptools } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-62.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-67.2.0-r1.ebuild similarity index 65% rename from sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-62.1.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-67.2.0-r1.ebuild index 933bd7378c..f46eb55ab7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-62.1.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-67.2.0-r1.ebuild @@ -1,45 +1,41 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 +# please bump dev-python/ensurepip-setuptools along with this package! + DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_TESTED=( python3_{9..11} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) PYTHON_REQ_USE="xml(+)" -inherit distutils-r1 multiprocessing +inherit distutils-r1 multiprocessing pypi -CPY_PATCHSET="python-gentoo-patches-3.10.4" DESCRIPTION="Collection of extensions to Distutils" HOMEPAGE=" https://github.com/pypa/setuptools/ https://pypi.org/project/setuptools/ " -SRC_URI=" - mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz - https://dev.gentoo.org/~mgorny/dist/python/${CPY_PATCHSET}.tar.xz -" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~x64-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" RDEPEND=" - >=dev-python/appdirs-1.4.4-r2[${PYTHON_USEDEP}] >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] - dev-python/nspektr[${PYTHON_USEDEP}] + >=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}] >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}] >=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}] + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] $(python_gen_cond_dep ' - >=dev-python/importlib_metadata-4.10.1-r1[${PYTHON_USEDEP}] - ' 3.8 3.9) - $(python_gen_cond_dep ' - >=dev-python/importlib_resources-5.4.0-r3[${PYTHON_USEDEP}] - ' 3.8) + >=dev-python/importlib_metadata-4.11.1[${PYTHON_USEDEP}] + ' 3.9) " BDEPEND=" ${RDEPEND} @@ -51,19 +47,17 @@ BDEPEND=" >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] - dev-python/mock[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/pip-run[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] dev-python/pytest[${PYTHON_USEDEP}] dev-python/pytest-fixture-config[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/pytest-virtualenv[${PYTHON_USEDEP}] dev-python/pytest-xdist[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] >=dev-python/virtualenv-20[${PYTHON_USEDEP}] dev-python/wheel[${PYTHON_USEDEP}] - ' python3_{8..10} pypy3) + ' "${PYTHON_TESTED[@]}") ) " PDEPEND=" @@ -74,6 +68,13 @@ PDEPEND=" DOCS=( {CHANGES,README}.rst ) src_prepare() { + local PATCHES=( + # TODO: remove this when we're 100% PEP517 mode + "${FILESDIR}"/setuptools-62.4.0-py-compile.patch + ) + + distutils-r1_src_prepare + # remove bundled dependencies, setuptools will switch to system deps # automatically rm -r */_vendor || die @@ -83,50 +84,45 @@ src_prepare() { find -name '*.py' -exec sed \ -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ -i {} + || die - - # apply distutils patches to the bundled distutils - pushd setuptools/_distutils >/dev/null || die - # TODO: distutils C++ patch? - eapply -p3 "${WORKDIR}/${CPY_PATCHSET}/0006-distutils-make-OO-enable-both-opt-1-and-opt-2-optimi.patch" - popd >/dev/null || die - - distutils-r1_src_prepare - - export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} } python_test() { local -x SETUPTOOLS_USE_DISTUTILS=stdlib - # keep in sync with python_gen_cond_dep above! - has "${EPYTHON}" python3.{8..10} pypy3 || return + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi local EPYTEST_DESELECT=( # network # TODO: see if PRE_BUILT_SETUPTOOLS_* helps + setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist + setuptools/tests/test_build_meta.py::test_legacy_editable_install setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests setuptools/tests/test_virtualenv.py::test_clean_env_install setuptools/tests/test_virtualenv.py::test_no_missing_dependencies - 'setuptools/tests/test_virtualenv.py::test_pip_upgrade_from_source[None]' setuptools/tests/test_virtualenv.py::test_test_command_install_requirements - setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests - setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg - # unhappy with pytest-xdist? - setuptools/tests/test_easy_install.py::TestUserInstallTest::test_local_index # TODO - setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts - setuptools/tests/test_test.py::test_tests_are_run_once setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + setuptools/tests/test_extern.py::test_distribution_picklable # expects bundled deps in virtualenv - setuptools/tests/test_editable_install.py::test_editable_with_pyproject setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel + setuptools/tests/test_editable_install.py::test_editable_with_pyproject + # fails if python-xlib is installed + setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts ) - # test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg - # It tries to sandbox the test in a tempdir - HOME="${PWD}" epytest \ - -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" setuptools + if has_version "<dev-python/packaging-22"; then + EPYTEST_DESELECT+=( + # old packaging is more lenient + setuptools/tests/config/test_setupcfg.py::TestOptions::test_raises_accidental_env_marker_misconfig + ) + fi + + epytest -n "$(makeopts_jobs)" setuptools } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-60.10.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-67.3.1.ebuild similarity index 52% rename from sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-60.10.0.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-67.3.1.ebuild index 642e67d25a..f46eb55ab7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-60.10.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-67.3.1.ebuild @@ -1,40 +1,41 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 +# please bump dev-python/ensurepip-setuptools along with this package! + DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{8..10} pypy3 ) +PYTHON_TESTED=( python3_{9..11} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) PYTHON_REQ_USE="xml(+)" -inherit distutils-r1 multiprocessing +inherit distutils-r1 multiprocessing pypi -CPY_PATCHSET="python-gentoo-patches-3.10.0_p1" DESCRIPTION="Collection of extensions to Distutils" -HOMEPAGE="https://github.com/pypa/setuptools https://pypi.org/project/setuptools/" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz - https://dev.gentoo.org/~floppym/python/${CPY_PATCHSET}.tar.xz" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" RDEPEND=" - >=dev-python/appdirs-1.4.4-r2[${PYTHON_USEDEP}] >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] - dev-python/nspektr[${PYTHON_USEDEP}] + >=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}] >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}] >=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}] + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] $(python_gen_cond_dep ' - >=dev-python/importlib_metadata-4.10.1-r1[${PYTHON_USEDEP}] - ' python3_{8,9} pypy3) - $(python_gen_cond_dep ' - >=dev-python/importlib_resources-5.4.0-r3[${PYTHON_USEDEP}] - ' python3_8 pypy3) + >=dev-python/importlib_metadata-4.11.1[${PYTHON_USEDEP}] + ' 3.9) " BDEPEND=" ${RDEPEND} @@ -42,30 +43,38 @@ BDEPEND=" test? ( $(python_gen_cond_dep ' dev-python/build[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.9[${PYTHON_USEDEP}] >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] - dev-python/mock[${PYTHON_USEDEP}] dev-python/pip[${PYTHON_USEDEP}] dev-python/pip-run[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] dev-python/pytest[${PYTHON_USEDEP}] dev-python/pytest-fixture-config[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] dev-python/pytest-virtualenv[${PYTHON_USEDEP}] dev-python/pytest-xdist[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] >=dev-python/virtualenv-20[${PYTHON_USEDEP}] dev-python/wheel[${PYTHON_USEDEP}] - ' python3_{8..10} pypy3) + ' "${PYTHON_TESTED[@]}") ) " PDEPEND=" >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}] - dev-python/setuptools_scm[${PYTHON_USEDEP}]" + dev-python/setuptools_scm[${PYTHON_USEDEP}] +" DOCS=( {CHANGES,README}.rst ) src_prepare() { + local PATCHES=( + # TODO: remove this when we're 100% PEP517 mode + "${FILESDIR}"/setuptools-62.4.0-py-compile.patch + ) + + distutils-r1_src_prepare + # remove bundled dependencies, setuptools will switch to system deps # automatically rm -r */_vendor || die @@ -75,41 +84,45 @@ src_prepare() { find -name '*.py' -exec sed \ -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ -i {} + || die - - # apply distutils patches to the bundled distutils - pushd setuptools/_distutils >/dev/null || die - # TODO: distutils C++ patch? - eapply -p3 "${WORKDIR}/${CPY_PATCHSET}/0006-distutils-make-OO-enable-both-opt-1-and-opt-2-optimi.patch" - popd >/dev/null || die - - distutils-r1_src_prepare } python_test() { local -x SETUPTOOLS_USE_DISTUTILS=stdlib - # keep in sync with python_gen_cond_dep above! - has "${EPYTHON}" python3.{8..10} pypy3 || return + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi local EPYTEST_DESELECT=( # network # TODO: see if PRE_BUILT_SETUPTOOLS_* helps + setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist + setuptools/tests/test_build_meta.py::test_legacy_editable_install setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests setuptools/tests/test_virtualenv.py::test_clean_env_install setuptools/tests/test_virtualenv.py::test_no_missing_dependencies - 'setuptools/tests/test_virtualenv.py::test_pip_upgrade_from_source[None]' setuptools/tests/test_virtualenv.py::test_test_command_install_requirements - setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests - # unhappy with pytest-xdist? - setuptools/tests/test_easy_install.py::TestUserInstallTest::test_local_index # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + setuptools/tests/test_extern.py::test_distribution_picklable + # expects bundled deps in virtualenv + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel + setuptools/tests/test_editable_install.py::test_editable_with_pyproject + # fails if python-xlib is installed setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts - setuptools/tests/test_test.py::test_tests_are_run_once ) - # test_easy_install raises a SandboxViolation due to ${HOME}/.pydistutils.cfg - # It tries to sandbox the test in a tempdir - HOME="${PWD}" epytest \ - -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" setuptools + if has_version "<dev-python/packaging-22"; then + EPYTEST_DESELECT+=( + # old packaging is more lenient + setuptools/tests/config/test_setupcfg.py::TestOptions::test_raises_accidental_env_marker_misconfig + ) + fi + + epytest -n "$(makeopts_jobs)" setuptools } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/Manifest index df754e1fb7..1098d86add 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/Manifest @@ -1,2 +1 @@ -DIST setuptools_scm-6.4.1.tar.gz 61255 BLAKE2B 984b60de24e3090bfa7284ef91f40cfb8481cd9008d57012564e6631727dc1e1bb6820265a4fd3576581ce836224599bdd8ddef73446ddc3040e51ddad4b6140 SHA512 b4d16fc9f352d7fccf18853aee2e80c2bd048fe46753fe5c099542253cf30e0d087be6dfec846aed0b8182238494ef333363482dcd75781e285312a9f7547c11 -DIST setuptools_scm-6.4.2.tar.gz 61305 BLAKE2B e1b5191425cf5db8334761a6857b0bc39c547c167901cbdf8401af441c5941cd75744162417ff42dbac792ae867d71c7576c5e9e533fe8039a75954f4c2ba439 SHA512 224dfe543e8658e7d8b7272d18eb657fac1774a206d079d65bb6e22bfa68b35e618a31b3671418d095f8b7b492339ea18491a1711be3a87eeecf50c6703a4096 +DIST setuptools_scm-7.1.0.tar.gz 71904 BLAKE2B be5ae215dadcc290290762b732434258409ecc2d71cdf1332ffe73431effae7cbc33e052a718efd952be79350171ed3e468492fc719bc08750dc23364fb0ee9d SHA512 bd7260672c213db6b8c5842dbb6ac69e69ce040777865c935033971f65d905bd8e6b54e174190a924e452c302e69d4c1de231cbc8f603176ba013a739840dad3 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-6.4.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-6.4.1.ebuild deleted file mode 100644 index f910e738e9..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-6.4.1.ebuild +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..10} pypy3 ) - -inherit distutils-r1 - -DESCRIPTION="Manage versions by scm tags via setuptools" -HOMEPAGE=" - https://github.com/pypa/setuptools_scm/ - https://pypi.org/project/setuptools-scm/" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -RDEPEND=" - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] -" -BDEPEND=" - !!<dev-python/setuptools_scm-2 - test? ( - >dev-python/virtualenv-20[${PYTHON_USEDEP}] - dev-vcs/git - !sparc? ( dev-vcs/mercurial ) - )" - -distutils_enable_tests pytest - -EPYTEST_DESELECT=( - # fetching from the Internet - testing/test_regressions.py::test_pip_download - testing/test_setuptools_support.py -) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-6.4.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-6.4.2.ebuild deleted file mode 100644 index eedb7ab930..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-6.4.2.ebuild +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..11} pypy3 ) - -inherit distutils-r1 - -DESCRIPTION="Manage versions by scm tags via setuptools" -HOMEPAGE=" - https://github.com/pypa/setuptools_scm/ - https://pypi.org/project/setuptools-scm/ -" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -RDEPEND=" - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/setuptools[${PYTHON_USEDEP}] - dev-python/tomli[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-vcs/git - !sparc? ( - dev-vcs/mercurial - ) - ) -" - -distutils_enable_tests pytest - -EPYTEST_DESELECT=( - # fetching from the Internet - testing/test_regressions.py::test_pip_download - testing/test_setuptools_support.py - - # broken by setuptools pyproject.toml validation - testing/test_integration.py::test_pyproject_support -) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-7.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-7.1.0.ebuild new file mode 100644 index 0000000000..b4b66d2a3e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools_scm/setuptools_scm-7.1.0.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 7 -- sys-apps/portage dep +EAPI=7 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Manage versions by scm tags via setuptools" +HOMEPAGE=" + https://github.com/pypa/setuptools_scm/ + https://pypi.org/project/setuptools-scm/ +" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + +RDEPEND=" + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/tomli[${PYTHON_USEDEP}] + ' 3.{8..10}) + dev-python/typing-extensions[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-vcs/git + !sparc? ( + dev-vcs/mercurial + ) + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # the usual nondescript gpg-agent failure + testing/test_git.py::test_git_getdate_signed_commit + + # fetching from the Internet + testing/test_regressions.py::test_pip_download + ) + + if has_version dev-python/nose; then + EPYTEST_DESELECT+=( + # https://bugs.gentoo.org/892639 + testing/test_integration.py::test_pyproject_support + ) + fi + + epytest +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/six/six-1.16.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/six/six-1.16.0-r1.ebuild index 5a7dc9923d..39c83b0ad7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/six/six-1.16.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/six/six-1.16.0-r1.ebuild @@ -1,10 +1,10 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 @@ -17,7 +17,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" distutils_enable_sphinx documentation --no-autodoc distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/six/six-1.16.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/six/six-1.16.0.ebuild deleted file mode 100644 index 601cf02a78..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/six/six-1.16.0.ebuild +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..10} pypy3 ) - -inherit distutils-r1 - -DESCRIPTION="Python 2 and 3 compatibility library" -HOMEPAGE="https://github.com/benjaminp/six https://pypi.org/project/six/" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -distutils_enable_sphinx documentation --no-autodoc -distutils_enable_tests pytest - -python_test() { - local deselect=() - [[ ${EPYTHON} == pypy3 ]] && deselect+=( - 'test_six.py::test_move_items[dbm_ndbm]' - ) - - epytest ${deselect[@]/#/--deselect } -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/Manifest index 09d6616a70..f0bfef02d0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/Manifest @@ -1,4 +1 @@ -DIST snakeoil-0.9.10.tar.gz 264409 BLAKE2B ef4cff92b1110f3b0912a2899732a29de041ea0e1d5338bbee9b84cbd1e9b4231b66be8fbf98bb14e59360294de9652b816b1de904dc948a3ebcd3e429bd03ba SHA512 dfdf3c96a9e65d6353e9251bb4c9c761d9c6084185119f7e653efc27868e5dd41ece0c54307e306d14effd9c2fcfd3ec15407df3f15f2d4ecfe16ae00c6d7e00 -DIST snakeoil-0.9.5.tar.gz 266086 BLAKE2B 635d2d821e47a92a668b2e95364d6587f0f74c21438356e708d6b16ed6c027df39a28f73d261d8ae06eb32de471124cd5ba5df0fc899f59dad5f7d2363391e00 SHA512 0762d90932bdf995160b3410e224660dae2cce327cdc30d5093ca9e3d16d3e910f88e409a87d2d7da211b850f7d0b7d9c70f053462dd9a651e4202b8ca018105 -DIST snakeoil-0.9.7.tar.gz 261551 BLAKE2B 6739541d1e40b3ac5c4908e6bb92b5b40957f49119307d6046fd17327394ae0406c01dc10396cb568ceb3757ba3367b930441d08079e9be635eeb6f14bd02e3a SHA512 c2626d8050bf24b4ce3f6fed5c6b8993fa9a5ebb40dd664c7008caffe4b26237edeecd3de8fe90f3a1c5756de3d770c3b9e1ef2e95cc052a5f8fcf22058925f6 -DIST snakeoil-0.9.9.tar.gz 264344 BLAKE2B 160f45dad3a53371063c0c86c186a8baf6370751cf455d84f6e9b9334e6e6f0aa76962803daff031f050d5d8b05b85ebcb05a2b8b9e957babac6e01f127a722f SHA512 bada12556fd2c63fabc8340444f470e08c68ffe56612ae14f08f155c11bd1d4b9657a885cfdee7454faf758309f5287792adf2cf5bd7ab411c7fd6b4982f229e +DIST snakeoil-0.10.5.tar.gz 183358 BLAKE2B 6154eb0b5ce55aefc67484dc33c8a6e36ee903bce4293045252a8c9a3b4ecfc27690c720bb46842c1bca8c14ef59fbae4d3c1f02ebd46a7c91c1c9fbd1aa1532 SHA512 fafc04aa65423ebb3db66daa9c239bdf0968722b8ac14c1206dd3f26e3960d832fd15001e320463f98ca142ec7e1d6bff73ebc0ab10c3c5d3cde241b8160fdc3 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/metadata.xml index 7778aca7bd..82a7321ef2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/metadata.xml @@ -1,12 +1,13 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="person"> - <email>mgorny@gentoo.org</email> - <name>Michał Górny</name> - </maintainer> - <upstream> - <remote-id type="github">pkgcore/snakeoil</remote-id> - <remote-id type="pypi">snakeoil</remote-id> - </upstream> + <maintainer type="project"> + <email>pkgcore@gentoo.org</email> + <name>Pkgcore</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="github">pkgcore/snakeoil</remote-id> + <remote-id type="pypi">snakeoil</remote-id> + </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.10.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.10.5.ebuild similarity index 63% rename from sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.10.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.10.5.ebuild index 727ebffd5e..a92092e2e3 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.10.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.10.5.ebuild @@ -1,14 +1,16 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{8..10} ) +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) PYTHON_REQ_USE="threads(+)" inherit distutils-r1 if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git" + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/pkgcore/snakeoil.git + https://github.com/pkgcore/snakeoil.git" inherit git-r3 else KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" @@ -22,10 +24,10 @@ LICENSE="BSD BSD-2 MIT" SLOT="0" RDEPEND=" - dev-python/lazy-object-proxy[${PYTHON_USEDEP}]" + dev-python/lazy-object-proxy[${PYTHON_USEDEP}] +" BDEPEND=" - test? ( >=dev-python/pytest-6 )" - -[[ ${PV} == 9999 ]] && BDEPEND+=" dev-python/cython[${PYTHON_USEDEP}]" + >=dev-python/flit_core-3.8[${PYTHON_USEDEP}] +" distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.5.ebuild deleted file mode 100644 index 4c6cfdc00b..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.5.ebuild +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{8..9} ) -PYTHON_REQ_USE="threads(+)" -inherit distutils-r1 - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git" - inherit git-r3 -else - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~x64-macos" - SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" -fi - -DESCRIPTION="misc common functionality and useful optimizations" -HOMEPAGE="https://github.com/pkgcore/snakeoil" - -LICENSE="BSD BSD-2 MIT" -SLOT="0" - -RDEPEND=" - dev-python/lazy-object-proxy[${PYTHON_USEDEP}]" - -[[ ${PV} == 9999 ]] && BDEPEND+=" dev-python/cython[${PYTHON_USEDEP}]" - -distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.7.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.7.ebuild deleted file mode 100644 index 036e753319..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.7.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8..10} ) -PYTHON_REQ_USE="threads(+)" -inherit distutils-r1 - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git" - inherit git-r3 -else - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos" - SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" -fi - -DESCRIPTION="misc common functionality and useful optimizations" -HOMEPAGE="https://github.com/pkgcore/snakeoil" - -LICENSE="BSD BSD-2 MIT" -SLOT="0" - -RDEPEND=" - dev-python/lazy-object-proxy[${PYTHON_USEDEP}]" -BDEPEND=" - test? ( >=dev-python/pytest-6 )" - -[[ ${PV} == 9999 ]] && BDEPEND+=" dev-python/cython[${PYTHON_USEDEP}]" - -distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.9.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.9.ebuild deleted file mode 100644 index 66ebcf0753..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-0.9.9.ebuild +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8..10} ) -PYTHON_REQ_USE="threads(+)" -inherit distutils-r1 - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git" - inherit git-r3 -else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" - SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" -fi - -DESCRIPTION="misc common functionality and useful optimizations" -HOMEPAGE="https://github.com/pkgcore/snakeoil" - -LICENSE="BSD BSD-2 MIT" -SLOT="0" - -RDEPEND=" - dev-python/lazy-object-proxy[${PYTHON_USEDEP}]" -BDEPEND=" - test? ( >=dev-python/pytest-6 )" - -[[ ${PV} == 9999 ]] && BDEPEND+=" dev-python/cython[${PYTHON_USEDEP}]" - -distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-9999.ebuild index 66ebcf0753..88ca572e1a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/snakeoil/snakeoil-9999.ebuild @@ -1,17 +1,19 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{8..10} ) +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) PYTHON_REQ_USE="threads(+)" inherit distutils-r1 if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git" + EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/pkgcore/snakeoil.git + https://github.com/pkgcore/snakeoil.git" inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" fi @@ -22,10 +24,10 @@ LICENSE="BSD BSD-2 MIT" SLOT="0" RDEPEND=" - dev-python/lazy-object-proxy[${PYTHON_USEDEP}]" + dev-python/lazy-object-proxy[${PYTHON_USEDEP}] +" BDEPEND=" - test? ( >=dev-python/pytest-6 )" - -[[ ${PV} == 9999 ]] && BDEPEND+=" dev-python/cython[${PYTHON_USEDEP}]" + >=dev-python/flit_core-3.8[${PYTHON_USEDEP}] +" distutils_enable_tests pytest diff --git a/sdk_container/src/third_party/portage-stable/dev-python/tomli/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/tomli/Manifest index 99d952ed57..b87d6410b6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/tomli/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/tomli/Manifest @@ -1,4 +1,2 @@ -DIST tomli-1.2.3-py3-none-any.whl.zip 12122 BLAKE2B ad0037b3761a13043bffb5875a25c7e18b71ac8cdb4491ca9c7cc60f593acd588ac38d7d9f7c48da217adfcfe5100bed3af215da2bffc06064d4817bf9923ec3 SHA512 7dd3ca4851728ef78cb288f51a446ddf25be5a6454a8dbfb4987f7078fe744ac76021ed7046bdbb630b4989479bc932ce649c5e3af33f43724f9714fb755209f -DIST tomli-1.2.3.gh.tar.gz 123142 BLAKE2B e8af1618aa962d7ff56d319c3a789c7655d9cb95e79f27b90cd9f9c7e978d2e29a49abef3884c4f53788305e54f8e919992d65fcec12679a9346690d86b7dd6a SHA512 270dbfe1df2e7f2692c35be5cc45e0b78e9e045e150fe959f4d6db8e3022126e7c17338636e57ba553fd928cbfd227938cfcd13128e1f05ee8cff29327594c61 DIST tomli-2.0.1-py3-none-any.whl.zip 12757 BLAKE2B 0a33773bc0409831aec6ee803ef0ef9d6b6b441213d549184068e218b73d6178d617bc2b58d11db98f0e6284baaf81663723fbc6eb89f7466608f0d89aeb1982 SHA512 b6164b03d3db360093f92e644e87a37a0ce20d63d7e9e271fcafd727f4fdb73ad6b301aaf32b3d2839f6eedbc8ea499dafba7335b8fdfc4667e30ed50c9805b4 DIST tomli-2.0.1.gh.tar.gz 133685 BLAKE2B 0d3a1f4ee4e74eeab6a7e7c3d5e866ce1baf9017136cdc8ce1f6275f8d6d151239e5a00b97b6409872fac0e8558a49120adf16f0ae21f9d92ae630dfd39cd6ff SHA512 a467f8d48cdbd7213bd9b6f85fd48ba142ab7c9656c40bb30785e1c4b37a9e29eaed420f183458ad20112baee8413ebbec87755332795c8f02235d1018c3aa5c diff --git a/sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-1.2.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-1.2.3.ebuild deleted file mode 100644 index 4c213f9640..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-1.2.3.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2021-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_SETUPTOOLS=manual -PYTHON_COMPAT=( python3_{8..10} pypy3 ) -inherit distutils-r1 - -DESCRIPTION="A lil' TOML parser" -HOMEPAGE=" - https://pypi.org/project/tomli/ - https://github.com/hukkin/tomli/" -SRC_URI=" - https://github.com/hukkin/tomli/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz - https://files.pythonhosted.org/packages/py3/${PN::1}/${PN}/${P}-py3-none-any.whl - -> ${P}-py3-none-any.whl.zip" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos" - -BDEPEND=" - app-arch/unzip - test? ( dev-python/python-dateutil[${PYTHON_USEDEP}] )" - -distutils_enable_tests pytest - -# do not use any build system to avoid circular deps -python_compile() { :; } - -python_install() { - python_domodule tomli "${WORKDIR}"/*.dist-info -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-2.0.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-2.0.1-r1.ebuild similarity index 58% rename from sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-2.0.1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-2.0.1-r1.ebuild index ca6baab56c..0dca726d29 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-2.0.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/tomli/tomli-2.0.1-r1.ebuild @@ -1,13 +1,13 @@ -# Copyright 2021-2022 Gentoo Authors +# Copyright 2021-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 -DISTUTILS_USE_SETUPTOOLS=manual -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +DISTUTILS_USE_PEP517=no +PYTHON_COMPAT=( python3_{9..11} pypy3 ) -inherit distutils-r1 +inherit distutils-r1 pypi DESCRIPTION="A lil' TOML parser" HOMEPAGE=" @@ -17,10 +17,8 @@ HOMEPAGE=" SRC_URI=" https://github.com/hukkin/tomli/archive/${PV}.tar.gz -> ${P}.gh.tar.gz - https://files.pythonhosted.org/packages/py3/${PN::1}/${PN}/${P}-py3-none-any.whl - -> ${P}-py3-none-any.whl.zip + $(pypi_wheel_url --unpack) " -S=${WORKDIR} LICENSE="MIT" SLOT="0" @@ -32,13 +30,11 @@ BDEPEND=" distutils_enable_tests unittest -# do not use any build system to avoid circular deps -python_compile() { :; } - -python_test() { - eunittest -s "${P}" +python_compile() { + python_domodule src/tomli "${WORKDIR}"/*.dist-info } python_install() { - python_domodule tomli *.dist-info + distutils-r1_python_install + python_optimize } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/Manifest new file mode 100644 index 0000000000..5b75048263 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/Manifest @@ -0,0 +1,3 @@ +DIST typing_extensions-4.3.0.gh.tar.gz 47842 BLAKE2B 23a600dcded95a1109da46537bab49a6a478c77334d7c9effe65564bf236371c413a07220df3fa1de1bd0451e90961df908e097e7c7cb6d2534102369ce2590e SHA512 3c4a9073dc89e71b8027d535853d35725163961f7feeaba817e28f93b236bcae805d9b1f6e2be8e9fc3651c283b662935ba0352e5de25ff74df4dc18373e8f7a +DIST typing_extensions-4.4.0.gh.tar.gz 50027 BLAKE2B 4cb757eadcfce85842dc5625e620f01f8fda00fe3712d5895d8b0aa07a9e649cd20f9f820cb2801e3b34c84c1d3b79d5e71fc49cd37014924825b6cdef0152c7 SHA512 1c046e6dab22fb399acf7ab8771d035aa24c88b09cbd023e80a41cd04851c5f8b1d297275012e933658e963e008b073b8d3815f5703042545b57130daa38f143 +DIST typing_extensions-4.5.0.gh.tar.gz 52431 BLAKE2B 3d905e4f1146d23d00b695044daf653722fce9ade8f44730116bab0b8fb15c3e8d2124a6b0d395fad078878e0e4b7888e19660ca2491ccc9ec01dc11ce318fc8 SHA512 29369da83cdca57aba7d8c2089c77ad265eeb614fd34056f678e6dc9374558d1059ff2c514326115734fadbcad27ec98e1e5fcec087022a9d838cc2bfd1fe825 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/files/typing-extensions-4.4.0-pypy-tests.patch b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/files/typing-extensions-4.4.0-pypy-tests.patch new file mode 100644 index 0000000000..479e11a765 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/files/typing-extensions-4.4.0-pypy-tests.patch @@ -0,0 +1,28 @@ +From 3a54ef1ff6cab8c2946a78b066fd5bba6529945a Mon Sep 17 00:00:00 2001 +From: Sebastian Rittau <srittau@rittau.biz> +Date: Fri, 7 Oct 2022 14:47:24 +0200 +Subject: [PATCH] Fix tests when running pypy (#84) + +Also run CI against pypy and update actions. + +Closes: #83 +--- + .github/workflows/ci.yml | 14 +++++++------- + src/test_typing_extensions.py | 4 ++++ + 2 files changed, 11 insertions(+), 7 deletions(-) + +diff --git a/src/test_typing_extensions.py b/src/test_typing_extensions.py +index 15b2147..7110f96 100644 +--- a/src/test_typing_extensions.py ++++ b/src/test_typing_extensions.py +@@ -509,6 +509,10 @@ def blah(): + + blah() + ++ @skipIf( ++ sys.implementation.name == "pypy", ++ "sum() and print() are not compiled in pypy" ++ ) + @patch( + f"{registry_holder.__name__}._overload_registry", + defaultdict(lambda: defaultdict(dict)) diff --git a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/metadata.xml new file mode 100644 index 0000000000..7e18d1440f --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/metadata.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>python@gentoo.org</email> + <name>Python</name> + </maintainer> + <stabilize-allarches/> + <upstream> + <remote-id type="pypi">typing-extensions</remote-id> + <remote-id type="github">python/typing_extensions</remote-id> + </upstream> +</pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.3.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.3.0.ebuild new file mode 100644 index 0000000000..a2e79fe5da --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.3.0.ebuild @@ -0,0 +1,30 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +MY_P=${P/-/_} +DESCRIPTION="Backported and Experimental Type Hints for Python 3.7+" +HOMEPAGE=" + https://pypi.org/project/typing-extensions/ + https://github.com/python/typing_extensions/ +" +SRC_URI=" + https://github.com/python/typing_extensions/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="PSF-2" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" + +python_test() { + cd "${S}"/src || die + "${EPYTHON}" test_typing_extensions.py -v || die "tests failed under ${EPYTHON}" +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.4.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.4.0.ebuild new file mode 100644 index 0000000000..3187222251 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.4.0.ebuild @@ -0,0 +1,36 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +MY_P=${P/-/_} +DESCRIPTION="Backported and Experimental Type Hints for Python 3.7+" +HOMEPAGE=" + https://pypi.org/project/typing-extensions/ + https://github.com/python/typing_extensions/ +" +SRC_URI=" + https://github.com/python/typing_extensions/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="PSF-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" + +distutils_enable_tests unittest + +PATCHES=( + "${FILESDIR}"/${P}-pypy-tests.patch +) + +python_test() { + cd src || die + eunittest +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.5.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.5.0.ebuild new file mode 100644 index 0000000000..b036b91b4a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/typing-extensions/typing-extensions-4.5.0.ebuild @@ -0,0 +1,32 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9..11} pypy3 ) + +inherit distutils-r1 + +MY_P=${P/-/_} +DESCRIPTION="Backported and Experimental Type Hints for Python 3.7+" +HOMEPAGE=" + https://pypi.org/project/typing-extensions/ + https://github.com/python/typing_extensions/ +" +SRC_URI=" + https://github.com/python/typing_extensions/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="PSF-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" + +distutils_enable_tests unittest + +python_test() { + cd src || die + eunittest +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest index bab8a6bcd5..e1612f697e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/wheel/Manifest @@ -1 +1 @@ -DIST wheel-0.37.1.gh.tar.gz 68751 BLAKE2B 55919649f82668565d3b5907d14d0758984bb7d29d8857807ad034288ed8c9e8660957dc16f418f18408e89a97cf0d3c30df874a17f56deb56918388b18246a7 SHA512 9493db2f29e16d17ca06a4d47854b3df5dfd17f21c77efd42befd54470858256fd59f56aa9585cbf0a09830927b657d546324f793e1b1153665bf0b74d0c0457 +DIST wheel-0.38.4.gh.tar.gz 69770 BLAKE2B a6077e38c21626169d68a3256fbe6457de3d4fde5d0a582859fe7b9ec5d73c142538f7fbfe762ddd436473c682e7810407a08730f66ec2a7844084d349e0779f SHA512 2ff7c6175201f8145f2c1f9937c6955a1dd22eeedab1e456f65c4edae9186610d9e7702c35773b49026c56c9cc201672025e7d42fcc7f782153c65c28e6b90d0 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/wheel/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-python/wheel/metadata.xml index 4d35890ff6..2bb9fa8c89 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/wheel/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-python/wheel/metadata.xml @@ -8,5 +8,6 @@ <stabilize-allarches/> <upstream> <remote-id type="pypi">wheel</remote-id> + <remote-id type="github">pypa/wheel</remote-id> </upstream> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.37.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.38.4.ebuild similarity index 82% rename from sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.37.1-r1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.38.4.ebuild index 8b1ef52db3..25f92e0cf7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.37.1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/wheel/wheel-0.38.4.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # please keep this ebuild at EAPI 7 -- sys-apps/portage dep EAPI=7 DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{8..11} pypy3 ) +PYTHON_COMPAT=( python3_{9..11} pypy3 ) inherit distutils-r1 @@ -14,8 +14,10 @@ HOMEPAGE=" https://github.com/pypa/wheel/ https://pypi.org/project/wheel/ " -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" -SRC_URI="https://github.com/pypa/wheel/archive/${PV}.tar.gz -> ${P}.gh.tar.gz" +SRC_URI=" + https://github.com/pypa/wheel/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" LICENSE="MIT" SLOT="0" @@ -33,13 +35,10 @@ BDEPEND=" distutils_enable_tests pytest src_prepare() { - sed \ - -e 's:--cov --cov-config=setup.cfg::g' \ - -i setup.cfg || die - # unbundle packaging rm -r src/wheel/vendored || die sed -i -e 's:\.vendored\.::' src/wheel/*.py || die + sed -i -e 's:wheel\.vendored\.::' tests/*.py || die distutils-r1_src_prepare } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/zipp/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/zipp/Manifest deleted file mode 100644 index d78ebf25ef..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/zipp/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST zipp-3.8.0.tar.gz 13344 BLAKE2B 0da3ca4ff683ac840759030b6ee5125bb1a1b1b8737f0ff0499f3193d13dc3163c6c1fd29c5f1667f347728c991930e3d9e3a325ffb89b6fecb9f6590887bcaa SHA512 d677f941dc92a784b8bd197ca2e1f6f3a570dc236c9eeddcb6108d6f55ad3d35a82462abeeb4bac6ea434442737aea960d941c2a7d0bd416da9abee153c99bb8 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/zipp/zipp-3.8.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/zipp/zipp-3.8.0.ebuild deleted file mode 100644 index 2d971df8ff..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/zipp/zipp-3.8.0.ebuild +++ /dev/null @@ -1,56 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( pypy3 python3_{8..10} ) - -inherit distutils-r1 - -DESCRIPTION="Backport of pathlib-compatible object wrapper for zip files" -HOMEPAGE="https://github.com/jaraco/zipp/" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - -BDEPEND=" - test? ( - dev-python/jaraco-itertools[${PYTHON_USEDEP}] - ) -" - -distutils_enable_sphinx docs \ - ">=dev-python/jaraco-packaging-3.2" \ - ">=dev-python/rst-linker-1.9" -distutils_enable_tests pytest - -EPYTEST_DESELECT=( - # speed tests are flaky by design - test_zipp.py::TestPath::test_implied_dirs_performance -) - -src_prepare() { - # dep of disabled test - sed -i -e '/func_timeout/d' test_zipp.py || die - distutils-r1_src_prepare -} - -src_configure() { - grep -q 'build-backend = "setuptools' pyproject.toml || - die "Upstream changed build-backend, recheck" - # write a custom pyproject.toml to ease setuptools bootstrap - cat > pyproject.toml <<-EOF || die - [build-system] - requires = ["flit_core >=3.2,<4"] - build-backend = "flit_core.buildapi" - - [project] - name = "zipp" - version = "${PV}" - description = "Backport of pathlib-compatible object wrapper for zip files" - EOF -} diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/Manifest b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/Manifest index 5e024334fd..70a20a9848 100644 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/Manifest @@ -1,5 +1,3 @@ -DIST repo-2.14 44203 BLAKE2B 72094daad380b3a03c9dca488e0bfc2a64bcaed5b025490c07fdc627eaae825bd71d0a8aafca5307dd4a0fecf59d530e7a692b030699a2cdc34cbec569076383 SHA512 37bc4e5b63e2cb1567633708f9680817c346b8105ca495538036aad87fe278f3ab5143f0f57fd40d4051de8016cc785648e9f0b65ebf2430677f037030f71343 -DIST repo-2.15 44704 BLAKE2B 6d90cecb4d748f7fb3febec95e16ed1638112a945aa36f7d7cc12232cdf4bcd66d286aa1054fd23de5ae7e896ac52c05465778aaec759e5d0251227deb220d18 SHA512 e6aad90f6058f4e5750ce44f8951ac4df39dd39c1615d7f68670a0b8ac5007f52e3bb6219d6ca0842908ef6c87843c6fd655b3b2a47fcf410e2a74d47a334d34 -DIST repo-2.17 44944 BLAKE2B 8f5db36d6acedd9c79fca1c9fe5a29e4da9b483d4f356d8ad88d6510f13ec7ff8200723c836ff7ac17419e571c2c4970182385a248b8005aaae1cbd4d93d3423 SHA512 b8d459c619f537d8afce00c78594027ef983e31f1bf47341d3388e39da4505270fa07f8c93b1ab5110795c1b6b952f01f48f0e18ce15e8126a484c98fd73e8c8 -DIST repo-511a0e54f5801a3f36c00fac478a596d83867d10-bash-completion.sh.base64 4280 BLAKE2B 6c369d36176d5bd4d3f4ed4df39bbd6542022dd186375bd05a978889c574819e3328d19c7dac2982233614786078f73bfd1f0c80aa7c0c6c79bdfab776ed6e39 SHA512 f484bee79c3724a6daf8a69b3df80feef3c6aaad3bfb49443caabc52735dd7f3b0fcb3ad4b7480bc020c9b4cac2f3b044693ef761df6fc9d34e854289baf1f3d -DIST repo-v2.17-bash-completion.sh.base64 5736 BLAKE2B 59c357d76feb176b7c64791ffb838ab522179c7e05d1a1cca6e121c9c908cdbccc49f177951986470806302b881b39ab44710b66b0a6a8c9643d4a647841eddf SHA512 9bc4f57d58222297f53e6dcbed1b895e8d0a90558be58a423243c886cb5cfad11c32e7c599b2e237e3f53b2857f8441ddb476484189135b71f52ca7250dfaf62 +DIST repo-2.29.tar.gz 248253 BLAKE2B 6b51a0416634eab52f44410fe156c736a6c69234345b4cf5115692a9b56d479c0bce780583fb2ee6b9ca206e5163adbf6ded85ff5d7f2b174a7e7cd6dc37dd57 SHA512 7323b52709164999a80172bc39398ad9989c3eb97bcfda66a675c3f94792cdd742068d47bbcc66dc8fffbe3b661c2fb19332a72a7f889a249f73fa448fcb32d1 +DIST repo-2.30 45769 BLAKE2B 46e8f37b138f1ebfa3109962f2690cc3bc6c38a2dd4333cd5be6fc1168476945cbd73f142486141a00552b8a998d4a765e54fce605d1872a670a3043fb213b05 SHA512 e8ad4e35417992f15bfa081ce282e1e518dcb885c04176f18ff2859ccb1dd397087224980f441020be12083c9847fcce661370119fe08f17be04718eff4a7a96 +DIST repo-2.30.tar.gz 252945 BLAKE2B ebaadc1f624941139c14417e86e1a4960fbba9da7b9053bab8f2cb1647c40a6f1f63951bcbb6d9162803066f9b05d1fb469e82b7d3b2bea31215b97b1bddf84f SHA512 7d184605e8d8e30bc48a4d3f2345c7ee9a8075711729108b5d487242c9311dc1cf22595f9ba09192a28460d6127e8cbe96a70fcdaf7c6baeb1e26a8ac15a7cae diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/metadata.xml index 8041df9275..7517f8d97d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/metadata.xml @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<maintainer type="person"> - <email>vapier@gentoo.org</email> -</maintainer> + <maintainer type="person"> + <name>Mike Frysinger</name> + <email>vapier@gentoo.org</email> + </maintainer> </pkgmetadata> diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.14.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.14.ebuild deleted file mode 100644 index 583e55b6f0..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.14.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# NB: The ${PV} tracks the *repo launcher version*, not the last signed release -# of the repo project. The launcher only gets a new update when changes are -# made in it. - -EAPI="7" - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit bash-completion-r1 python-r1 - -# This file rarely changes, so track it independently. -COMP_VER="511a0e54f5801a3f36c00fac478a596d83867d10" -COMP_NAME="${PN}-${COMP_VER}-bash-completion.sh.base64" - -DESCRIPTION="Google tool for managing git, particularly multiple repos" -HOMEPAGE="https://gerrit.googlesource.com/git-repo" -SRC_URI="https://storage.googleapis.com/git-repo-downloads/${P} - https://gerrit.googlesource.com/git-repo/+/${COMP_VER}/completion.bash?format=TEXT -> ${COMP_NAME}" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RDEPEND="${PYTHON_DEPS} - !app-admin/radmind - !dev-util/repo" - -S=${WORKDIR} - -src_unpack() { - base64 -d <"${DISTDIR}/${COMP_NAME}" >completion.bash || die -} - -src_install() { - python_foreach_impl python_newscript "${DISTDIR}/${P}" ${PN} - newbashcomp completion.bash ${PN} -} diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.15.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.29.ebuild similarity index 55% rename from sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.15.ebuild rename to sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.29.ebuild index 583e55b6f0..1a47a8ee8c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.15.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.29.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # NB: The ${PV} tracks the *repo launcher version*, not the last signed release @@ -7,18 +7,13 @@ EAPI="7" -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{9..10} ) inherit bash-completion-r1 python-r1 -# This file rarely changes, so track it independently. -COMP_VER="511a0e54f5801a3f36c00fac478a596d83867d10" -COMP_NAME="${PN}-${COMP_VER}-bash-completion.sh.base64" - DESCRIPTION="Google tool for managing git, particularly multiple repos" HOMEPAGE="https://gerrit.googlesource.com/git-repo" -SRC_URI="https://storage.googleapis.com/git-repo-downloads/${P} - https://gerrit.googlesource.com/git-repo/+/${COMP_VER}/completion.bash?format=TEXT -> ${COMP_NAME}" +SRC_URI="https://github.com/GerritCodeReview/git-repo/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="Apache-2.0" SLOT="0" @@ -30,13 +25,10 @@ RDEPEND="${PYTHON_DEPS} !app-admin/radmind !dev-util/repo" -S=${WORKDIR} - -src_unpack() { - base64 -d <"${DISTDIR}/${COMP_NAME}" >completion.bash || die -} +S="${WORKDIR}/git-${P}" src_install() { - python_foreach_impl python_newscript "${DISTDIR}/${P}" ${PN} + python_foreach_impl python_doscript ${PN} newbashcomp completion.bash ${PN} + doman man/*.[0-9] } diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.17.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.30.ebuild similarity index 67% rename from sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.17.ebuild rename to sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.30.ebuild index 69044e1775..a758514924 100644 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.17.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/repo/repo-2.30.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # NB: The ${PV} tracks the *repo launcher version*, not the last signed release @@ -7,18 +7,14 @@ EAPI="7" -PYTHON_COMPAT=( python3_{7..9} ) +PYTHON_COMPAT=( python3_{9..11} ) inherit bash-completion-r1 python-r1 -# This file rarely changes, so track it independently. -COMP_VER="v2.17" -COMP_NAME="${PN}-${COMP_VER}-bash-completion.sh.base64" - DESCRIPTION="Google tool for managing git, particularly multiple repos" HOMEPAGE="https://gerrit.googlesource.com/git-repo" SRC_URI="https://storage.googleapis.com/git-repo-downloads/${P} - https://gerrit.googlesource.com/git-repo/+/${COMP_VER}/completion.bash?format=TEXT -> ${COMP_NAME}" + https://github.com/GerritCodeReview/git-repo/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" LICENSE="Apache-2.0" SLOT="0" @@ -30,13 +26,10 @@ RDEPEND="${PYTHON_DEPS} !app-admin/radmind !dev-util/repo" -S=${WORKDIR} - -src_unpack() { - base64 -d <"${DISTDIR}/${COMP_NAME}" >completion.bash || die -} +S="${WORKDIR}/git-${P}" src_install() { python_foreach_impl python_newscript "${DISTDIR}/${P}" ${PN} newbashcomp completion.bash ${PN} + doman man/*.[0-9] } diff --git a/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass index ed368da798..e95047e3a1 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: distutils-r1.eclass @@ -7,7 +7,7 @@ # @AUTHOR: # Author: Michał Górny <mgorny@gentoo.org> # Based on the work of: Krzysztof Pawlik <nelchael@gentoo.org> -# @SUPPORTED_EAPIS: 6 7 8 +# @SUPPORTED_EAPIS: 7 8 # @PROVIDES: python-r1 python-single-r1 # @BLURB: A simple eclass to build Python packages using distutils. # @DESCRIPTION: @@ -44,15 +44,9 @@ # For more information, please see the Python Guide: # https://projects.gentoo.org/python/guide/ -case "${EAPI:-0}" in - [0-5]) - die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" - ;; - [6-8]) - ;; - *) - die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" - ;; +case ${EAPI:-0} in + 7|8) ;; + *) die "EAPI=${EAPI:-0} not supported";; esac # @ECLASS_VARIABLE: DISTUTILS_OPTIONAL @@ -106,6 +100,10 @@ esac # # - maturin - maturin backend # +# - meson-python - meson-python (mesonpy) backend +# +# - no - no PEP517 build system (see below) +# # - pbr - pbr backend # # - pdm - pdm.pep517 backend @@ -117,10 +115,21 @@ esac # - sip - sipbuild backend # # - standalone - standalone build systems without external deps -# (used for bootstrapping). +# (used for bootstrapping). # # The variable needs to be set before the inherit line. The eclass # adds appropriate build-time dependencies and verifies the value. +# +# The special value "no" indicates that the package has no build system. +# This is not equivalent to unset DISTUTILS_USE_PEP517 (legacy mode). +# It causes the eclass not to include any build system dependencies +# and to disable default python_compile() and python_install() +# implementations. Baseline Python deps and phase functions will still +# be set (depending on the value of DISTUTILS_OPTIONAL). Most of +# the other eclass functions will work. Testing venv will be provided +# in ${BUILD_DIR}/install after python_compile(), and if any (other) +# files are found in ${BUILD_DIR}/install after python_install(), they +# will be merged into ${D}. # @ECLASS_VARIABLE: DISTUTILS_USE_SETUPTOOLS # @DEFAULT_UNSET @@ -135,11 +144,8 @@ esac # # - rdepend -- add it to BDEPEND+RDEPEND (e.g. when using pkg_resources) # -# - pyproject.toml -- use pyproject2setuptools to install a project -# using pyproject.toml (flit, poetry...) -# # - manual -- do not add the dependency and suppress the checks -# (assumes you will take care of doing it correctly) +# (assumes you will take care of doing it correctly) # # This variable is effective only if DISTUTILS_OPTIONAL is disabled. # It is available only in non-PEP517 mode. It needs to be set before @@ -165,8 +171,7 @@ esac if [[ ! ${_DISTUTILS_R1} ]]; then -[[ ${EAPI} == 6 ]] && inherit eutils xdg-utils -inherit multibuild multiprocessing toolchain-funcs +inherit multibuild multilib multiprocessing ninja-utils toolchain-funcs if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then inherit python-r1 @@ -190,48 +195,74 @@ _distutils_set_globals() { fi bdep=' - >=dev-python/gpep517-3[${PYTHON_USEDEP}]' + >=dev-python/gpep517-13[${PYTHON_USEDEP}] + ' case ${DISTUTILS_USE_PEP517} in flit) bdep+=' - >=dev-python/flit_core-3.7.1[${PYTHON_USEDEP}]' + >=dev-python/flit_core-3.8.0[${PYTHON_USEDEP}] + ' ;; flit_scm) bdep+=' - dev-python/flit_scm[${PYTHON_USEDEP}]' + >=dev-python/flit_scm-1.7.0[${PYTHON_USEDEP}] + ' ;; hatchling) bdep+=' - >=dev-python/hatchling-0.22.0[${PYTHON_USEDEP}]' + >=dev-python/hatchling-1.12.2[${PYTHON_USEDEP}] + ' ;; jupyter) bdep+=' - >=dev-python/jupyter_packaging-0.11.1[${PYTHON_USEDEP}]' + >=dev-python/jupyter_packaging-0.12.3[${PYTHON_USEDEP}] + ' ;; maturin) bdep+=' - >=dev-util/maturin-0.12.7[${PYTHON_USEDEP}]' + >=dev-util/maturin-0.14.10[${PYTHON_USEDEP}] + ' + ;; + no) + # undo the generic deps added above + bdep= + ;; + meson-python) + bdep+=' + >=dev-python/meson-python-0.12.0[${PYTHON_USEDEP}] + ' ;; pbr) bdep+=' - >=dev-python/pbr-5.8.0-r1[${PYTHON_USEDEP}]' + >=dev-python/pbr-5.11.1[${PYTHON_USEDEP}] + ' ;; pdm) bdep+=' - >=dev-python/pdm-pep517-0.12.3[${PYTHON_USEDEP}]' + >=dev-python/pdm-pep517-1.0.6[${PYTHON_USEDEP}] + ' ;; poetry) bdep+=' - >=dev-python/poetry-core-1.0.8[${PYTHON_USEDEP}]' + >=dev-python/poetry-core-1.4.0[${PYTHON_USEDEP}] + ' ;; setuptools) + # || ( ... ) dep is a workaround for bug #892525 + # It can be removed once >=67.2.0 is stable and replaced with + # a simple >=67.2.0 dep. bdep+=' - >=dev-python/setuptools-60.5.0[${PYTHON_USEDEP}] - dev-python/wheel[${PYTHON_USEDEP}]' + || ( + >=dev-python/setuptools-67.2.0[${PYTHON_USEDEP}] + <dev-python/setuptools-65.7.1[${PYTHON_USEDEP}] + ) + >=dev-python/wheel-0.38.4[${PYTHON_USEDEP}] + ' ;; sip) bdep+=' - >=dev-python/sip-6.5.0-r1[${PYTHON_USEDEP}]' + >=dev-python/sip-6.7.5-r1[${PYTHON_USEDEP}] + ' ;; standalone) ;; @@ -245,7 +276,7 @@ _distutils_set_globals() { eqawarn "is enabled." fi else - local setuptools_dep='>=dev-python/setuptools-42.0.2[${PYTHON_USEDEP}]' + local setuptools_dep='>=dev-python/setuptools-65.7.0[${PYTHON_USEDEP}]' case ${DISTUTILS_USE_SETUPTOOLS:-bdepend} in no|manual) @@ -258,7 +289,7 @@ _distutils_set_globals() { rdep+=" ${setuptools_dep}" ;; pyproject.toml) - bdep+=' >=dev-python/pyproject2setuppy-22[${PYTHON_USEDEP}]' + die "DISTUTILS_USE_SETUPTOOLS=pyproject.toml is no longer supported, use DISTUTILS_USE_PEP517" ;; *) die "Invalid DISTUTILS_USE_SETUPTOOLS=${DISTUTILS_USE_SETUPTOOLS}" @@ -290,11 +321,7 @@ _distutils_set_globals() { if [[ ! ${DISTUTILS_OPTIONAL} ]]; then RDEPEND="${PYTHON_DEPS} ${rdep}" - if [[ ${EAPI} != 6 ]]; then - BDEPEND="${PYTHON_DEPS} ${bdep}" - else - DEPEND="${PYTHON_DEPS} ${bdep}" - fi + BDEPEND="${PYTHON_DEPS} ${bdep}" REQUIRED_USE=${PYTHON_REQUIRED_USE} fi } @@ -450,7 +477,7 @@ distutils_enable_sphinx() { _DISTUTILS_SPHINX_PLUGINS=( "${@}" ) local deps autodoc=1 d - deps=">=dev-python/sphinx-4.4.0[\${PYTHON_USEDEP}]" + deps=">=dev-python/sphinx-5.3.0[\${PYTHON_USEDEP}]" for d; do if [[ ${d} == --no-autodoc ]]; then autodoc= @@ -474,7 +501,7 @@ distutils_enable_sphinx() { use doc || return 0 local p - for p in ">=dev-python/sphinx-4.4.0" \ + for p in ">=dev-python/sphinx-5.3.0" \ "${_DISTUTILS_SPHINX_PLUGINS[@]}" do python_has_version "${p}[${PYTHON_USEDEP}]" || @@ -482,7 +509,7 @@ distutils_enable_sphinx() { done } else - deps=">=dev-python/sphinx-4.4.0" + deps=">=dev-python/sphinx-5.3.0" fi sphinx_compile_all() { @@ -507,11 +534,7 @@ distutils_enable_sphinx() { python_compile_all() { sphinx_compile_all; } IUSE+=" doc" - if [[ ${EAPI} == 6 ]]; then - DEPEND+=" doc? ( ${deps} )" - else - BDEPEND+=" doc? ( ${deps} )" - fi + BDEPEND+=" doc? ( ${deps} )" # we need to ensure successful return in case we're called last, # otherwise Portage may wrongly assume sourcing failed @@ -562,10 +585,10 @@ distutils_enable_tests() { local test_pkg case ${1} in nose) - test_pkg=">=dev-python/nose-1.3.7-r4" + test_pkg=">=dev-python/nose-1.3.7_p20221026" ;; pytest) - test_pkg=">=dev-python/pytest-7.0.1" + test_pkg=">=dev-python/pytest-7.2.1" ;; setup.py) ;; @@ -592,11 +615,7 @@ distutils_enable_tests() { if [[ -n ${test_deps} ]]; then IUSE+=" test" RESTRICT+=" !test? ( test )" - if [[ ${EAPI} == 6 ]]; then - DEPEND+=" test? ( ${test_deps} )" - else - BDEPEND+=" test? ( ${test_deps} )" - fi + BDEPEND+=" test? ( ${test_deps} )" fi # we need to ensure successful return in case we're called last, @@ -611,8 +630,11 @@ distutils_enable_tests() { # (if ${EPYTHON} is set; fallback 'python' otherwise). # # setup.py will be passed the following, in order: +# # 1. ${DISTUTILS_ARGS[@]} +# # 2. ${mydistutilsargs[@]} (deprecated) +# # 3. additional arguments passed to the esetup.py function. # # Please note that setup.py will respect defaults (unless overridden @@ -630,16 +652,20 @@ esetup.py() { fi local setup_py=( setup.py ) - if [[ ${DISTUTILS_USE_SETUPTOOLS} == pyproject.toml ]]; then - setup_py=( -m pyproject2setuppy ) - elif [[ ! -f setup.py ]]; then - if [[ ! -f setup.cfg ]]; then + if [[ ! -f setup.py ]]; then + # The following call can succeed even if the package does not + # feature any setuptools configuration. In non-PEP517 mode this + # could lead to installing an "empty" package. In PEP517 mode, + # we verify the build system when invoking the backend, + # rendering this check redundant (and broken for projects using + # pyproject.toml configuration). + if [[ ! ${DISTUTILS_USE_PEP517} && ! -f setup.cfg ]]; then die "${FUNCNAME}: setup.py nor setup.cfg not found" fi setup_py=( -c "from setuptools import setup; setup()" ) fi - if [[ ${EAPI} != [67] && ${mydistutilsargs[@]} ]]; then + if [[ ${EAPI} != 7 && ${mydistutilsargs[@]} ]]; then die "mydistutilsargs is banned in EAPI ${EAPI} (use DISTUTILS_ARGS)" fi @@ -690,8 +716,8 @@ esetup.py() { # to unmerge the package first. # # This function is not available in PEP517 mode. The eclass provides -# a venv-style install unconditionally therefore, and therefore it -# should no longer be necessary. +# a venv-style install unconditionally and therefore it should no longer +# be necessary. distutils_install_for_testing() { debug-print-function ${FUNCNAME} "${@}" @@ -711,7 +737,7 @@ distutils_install_for_testing() { local install_method=root case ${1} in --via-home) - [[ ${EAPI} == [67] ]] || die "${*} is banned in EAPI ${EAPI}" + [[ ${EAPI} == 7 ]] || die "${*} is banned in EAPI ${EAPI}" install_method=home shift ;; @@ -789,7 +815,7 @@ distutils_install_for_testing() { distutils_write_namespace() { debug-print-function ${FUNCNAME} "${@}" - if [[ ! ${DISTUTILS_USE_PEP517} ]]; then + if [[ ! ${DISTUTILS_USE_PEP517:-no} != no ]]; then die "${FUNCNAME} is available only in PEP517 mode" fi if [[ ${EBUILD_PHASE} != test || ! ${BUILD_DIR} ]]; then @@ -835,7 +861,8 @@ _distutils-r1_disable_ez_setup() { # @FUNCTION: _distutils-r1_handle_pyproject_toml # @INTERNAL # @DESCRIPTION: -# Generate setup.py for pyproject.toml if requested. +# Verify whether DISTUTILS_USE_SETUPTOOLS is set correctly +# for pyproject.toml build systems (in non-PEP517 mode). _distutils-r1_handle_pyproject_toml() { if [[ ${DISTUTILS_USE_PEP517} ]]; then die "${FUNCNAME} is not implemented in PEP517 mode" @@ -844,12 +871,10 @@ _distutils-r1_handle_pyproject_toml() { [[ ${DISTUTILS_USE_SETUPTOOLS} == manual ]] && return if [[ ! -f setup.py && -f pyproject.toml ]]; then - if [[ ${DISTUTILS_USE_SETUPTOOLS} != pyproject.toml ]]; then - eerror "No setup.py found but pyproject.toml is present. In order to enable" - eerror "pyproject.toml support in distutils-r1, set:" - eerror " DISTUTILS_USE_SETUPTOOLS=pyproject.toml" - die "No setup.py found and DISTUTILS_USE_SETUPTOOLS!=pyproject.toml" - fi + eerror "No setup.py found but pyproject.toml is present. Please migrate" + eerror "the package to use DISTUTILS_USE_PEP517. See:" + eerror " https://projects.gentoo.org/python/guide/distutils.html" + die "No setup.py found and PEP517 mode not enabled" fi } @@ -863,7 +888,7 @@ _distutils-r1_check_all_phase_mismatch() { eqawarn "QA Notice: distutils-r1_python_${EBUILD_PHASE}_all called" eqawarn "from python_${EBUILD_PHASE}. Did you mean to use" eqawarn "python_${EBUILD_PHASE}_all()?" - [[ ${EAPI} != [67] ]] && + [[ ${EAPI} != 7 ]] && die "distutils-r1_python_${EBUILD_PHASE}_all called from python_${EBUILD_PHASE}." fi } @@ -897,6 +922,8 @@ _distutils-r1_print_package_versions() { hatchling) packages+=( dev-python/hatchling + dev-python/hatch-fancy-pypi-readme + dev-python/hatch-vcs ) ;; jupyter) @@ -912,6 +939,14 @@ _distutils-r1_print_package_versions() { dev-util/maturin ) ;; + no) + return + ;; + meson-python) + packages+=( + dev-python/meson-python + ) + ;; pbr) packages+=( dev-python/pbr @@ -959,7 +994,7 @@ _distutils-r1_print_package_versions() { local pkg einfo "Build system packages:" for pkg in "${packages[@]}"; do - local installed=$(best_version "${pkg}") + local installed=$(best_version -b "${pkg}") einfo " $(printf '%-30s' "${pkg}"): ${installed#${pkg}-}" done } @@ -1008,7 +1043,6 @@ distutils-r1_python_prepare_all() { fi python_export_utf8_locale - [[ ${EAPI} == 6 ]] && xdg_environment_reset # Bug 577704 _distutils-r1_print_package_versions _DISTUTILS_DEFAULT_CALLED=1 @@ -1114,6 +1148,9 @@ _distutils-r1_backend_to_key() { maturin) echo maturin ;; + mesonpy) + echo meson-python + ;; pbr.build) echo pbr ;; @@ -1143,7 +1180,7 @@ _distutils-r1_backend_to_key() { _distutils-r1_get_backend() { debug-print-function ${FUNCNAME} "${@}" - local build_backend + local build_backend legacy_fallback if [[ -f pyproject.toml ]]; then # if pyproject.toml exists, try getting the backend from it # NB: this could fail if pyproject.toml doesn't list one @@ -1154,6 +1191,7 @@ _distutils-r1_get_backend() { then # use the legacy setuptools backend as a fallback build_backend=setuptools.build_meta:__legacy__ + legacy_fallback=1 fi if [[ -z ${build_backend} ]]; then die "Unable to obtain build-backend from pyproject.toml" @@ -1179,12 +1217,17 @@ _distutils-r1_get_backend() { poetry.masonry.api) new_backend=poetry.core.masonry.api ;; + setuptools.build_meta:__legacy__) + # this backend should only be used as implicit fallback + [[ ! ${legacy_fallback} ]] && + new_backend=setuptools.build_meta + ;; esac if [[ -n ${new_backend} ]]; then if [[ ! -f ${T}/.distutils_deprecated_backend_warned ]]; then eqawarn "${build_backend} backend is deprecated. Please see:" - eqawarn "https://projects.gentoo.org/python/guide/distutils.html#deprecated-pep-517-backends" + eqawarn "https://projects.gentoo.org/python/guide/qawarn.html#deprecated-pep-517-backends" eqawarn "The eclass will be using ${new_backend} instead." > "${T}"/.distutils_deprecated_backend_warned || die fi @@ -1195,6 +1238,47 @@ _distutils-r1_get_backend() { echo "${build_backend}" } +# @FUNCTION: distutils_wheel_install +# @USAGE: <root> <wheel> +# @DESCRIPTION: +# Install the specified wheel into <root>. +# +# This function is intended for expert use only. +distutils_wheel_install() { + debug-print-function ${FUNCNAME} "${@}" + if [[ ${#} -ne 2 ]]; then + die "${FUNCNAME} takes exactly two arguments: <root> <wheel>" + fi + if [[ -z ${PYTHON} ]]; then + die "PYTHON unset, invalid call context" + fi + + local root=${1} + local wheel=${2} + + einfo " Installing ${wheel##*/} to ${root}" + local cmd=( + gpep517 install-wheel + --destdir="${root}" + --interpreter="${PYTHON}" + --prefix="${EPREFIX}/usr" + --optimize=all + "${wheel}" + ) + printf '%s\n' "${cmd[*]}" + "${cmd[@]}" || die "Wheel install failed" + + # remove installed licenses + find "${root}$(python_get_sitedir)" -depth \ + \( -path '*.dist-info/COPYING*' \ + -o -path '*.dist-info/LICENSE*' \ + -o -path '*.dist-info/license_files/*' \ + -o -path '*.dist-info/license_files' \ + -o -path '*.dist-info/licenses/*' \ + -o -path '*.dist-info/licenses' \ + \) -delete || die +} + # @FUNCTION: distutils_pep517_install # @USAGE: <root> # @DESCRIPTION: @@ -1207,6 +1291,10 @@ distutils_pep517_install() { debug-print-function ${FUNCNAME} "${@}" [[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: root" + if [[ ! ${DISTUTILS_USE_PEP517:-no} != no ]]; then + die "${FUNCNAME} is available only in PEP517 mode" + fi + local root=${1} local -x WHEEL_BUILD_DIR=${BUILD_DIR}/wheel mkdir -p "${WHEEL_BUILD_DIR}" || die @@ -1216,9 +1304,29 @@ distutils_pep517_install() { fi local config_settings= - if [[ -n ${DISTUTILS_ARGS[@]} ]]; then - case ${DISTUTILS_USE_PEP517} in - setuptools) + case ${DISTUTILS_USE_PEP517} in + meson-python) + local -x NINJAOPTS=$(get_NINJAOPTS) + config_settings=$( + "${EPYTHON}" - "${DISTUTILS_ARGS[@]}" <<-EOF || die + import json + import os + import shlex + import sys + + ninjaopts = shlex.split(os.environ["NINJAOPTS"]) + print(json.dumps({ + "setup-args": sys.argv[1:], + "compile-args": [ + "-v", + f"--ninja-args={ninjaopts!r}", + ], + })) + EOF + ) + ;; + setuptools) + if [[ -n ${DISTUTILS_ARGS[@]} ]]; then config_settings=$( "${EPYTHON}" - "${DISTUTILS_ARGS[@]}" <<-EOF || die import json @@ -1226,8 +1334,10 @@ distutils_pep517_install() { print(json.dumps({"--global-option": sys.argv[1:]})) EOF ) - ;; - sip) + fi + ;; + sip) + if [[ -n ${DISTUTILS_ARGS[@]} ]]; then # NB: for practical reasons, we support only --foo=bar, # not --foo bar local arg @@ -1250,39 +1360,35 @@ distutils_pep517_install() { print(json.dumps(args)) EOF ) - ;; - *) + fi + ;; + *) + [[ -n ${DISTUTILS_ARGS[@]} ]] && die "DISTUTILS_ARGS are not supported by ${DISTUTILS_USE_PEP517}" - ;; - esac - fi + ;; + esac local build_backend=$(_distutils-r1_get_backend) einfo " Building the wheel for ${PWD#${WORKDIR}/} via ${build_backend}" - local config_args=() - [[ -n ${config_settings} ]] && - config_args+=( --config-json "${config_settings}" ) + local cmd=( + gpep517 build-wheel + --backend "${build_backend}" + --output-fd 3 + --wheel-dir "${WHEEL_BUILD_DIR}" + ) + if [[ -n ${config_settings} ]]; then + cmd+=( --config-json "${config_settings}" ) + fi + if [[ -n ${SYSROOT} ]]; then + cmd+=( --sysroot "${SYSROOT}" ) + fi + printf '%s\n' "${cmd[*]}" local wheel=$( - gpep517 build-wheel --backend "${build_backend}" \ - --output-fd 3 \ - --wheel-dir "${WHEEL_BUILD_DIR}" \ - "${config_args[@]}" 3>&1 >&2 || - die "Wheel build failed" + "${cmd[@]}" 3>&1 >&2 || die "Wheel build failed" ) [[ -n ${wheel} ]] || die "No wheel name returned" - einfo " Installing the wheel to ${root}" - gpep517 install-wheel --destdir="${root}" --interpreter="${PYTHON}" \ - --prefix="${EPREFIX}/usr" "${WHEEL_BUILD_DIR}/${wheel}" || - die "Wheel install failed" - - # remove installed licenses - find "${root}$(python_get_sitedir)" -depth \ - \( -path '*.dist-info/COPYING*' \ - -o -path '*.dist-info/LICENSE*' \ - -o -path '*.dist-info/license_files/*' \ - -o -path '*.dist-info/license_files' \ - \) -delete || die + distutils_wheel_install "${root}" "${WHEEL_BUILD_DIR}/${wheel}" # clean the build tree; otherwise we may end up with PyPy3 # extensions duplicated into CPython dists @@ -1294,12 +1400,19 @@ distutils_pep517_install() { # @FUNCTION: distutils-r1_python_compile # @USAGE: [additional-args...] # @DESCRIPTION: -# The default python_compile(). Runs 'esetup.py build'. Any parameters -# passed to this function will be appended to setup.py invocation, -# i.e. passed as options to the 'build' command. +# The default python_compile(). # -# This phase also sets up initial setup.cfg with build directories -# and copies upstream egg-info files if supplied. +# If DISTUTILS_USE_PEP517 is set to "no", a no-op. +# +# If DISTUTILS_USE_PEP517 is set to any other value, builds a wheel +# using the PEP517 backend and installs it into ${BUILD_DIR}/install. +# May additionally call build_ext prior to that when using setuptools +# and the eclass detects a potential benefit from parallel extension +# builds. +# +# In legacy mode, runs 'esetup.py build'. Any parameters passed to this +# function will be appended to setup.py invocation, i.e. passed +# as options to the 'build' command. distutils-r1_python_compile() { debug-print-function ${FUNCNAME} "${@}" @@ -1331,7 +1444,9 @@ distutils-r1_python_compile() { # # see extension.py for list of suffixes # .pyx is added for Cython - if [[ 1 -ne ${jobs} && 2 -eq $( + # + # esetup.py does not respect SYSROOT, so skip it there + if [[ -z ${SYSROOT} && 1 -ne ${jobs} && 2 -eq $( find '(' -name '*.c' -o -name '*.cc' -o -name '*.cpp' \ -o -name '*.cxx' -o -name '*.c++' -o -name '*.m' \ -o -name '*.mm' -o -name '*.pyx' ')' -printf '\n' | @@ -1344,50 +1459,21 @@ distutils-r1_python_compile() { fi ;; maturin) - # auditwheel may attempt to auto-bundle libraries, bug #831171 - local -x MATURIN_PEP517_ARGS=--skip-auditwheel - - # support cargo.eclass' IUSE=debug if available - in_iuse debug && use debug && - MATURIN_PEP517_ARGS+=" --cargo-extra-args=--profile=dev" + # auditwheel may auto-bundle libraries (bug #831171), + # also support cargo.eclass' IUSE=debug if available + local -x MATURIN_PEP517_ARGS=" + --jobs=$(makeopts_jobs) + --skip-auditwheel + $(in_iuse debug && usex debug --profile=dev '') + " + ;; + no) + return ;; esac if [[ ${DISTUTILS_USE_PEP517} ]]; then - # python likes to compile any module it sees, which triggers sandbox - # failures if some packages haven't compiled their modules yet. - addpredict "${EPREFIX}/usr/lib/${EPYTHON}" - addpredict /usr/lib/pypy3.8 - addpredict /usr/lib/portage/pym - addpredict /usr/local # bug 498232 - - local root=${BUILD_DIR}/install - distutils_pep517_install "${root}" - - # copy executables to python-exec directory - # we do it early so that we can alter bindir recklessly - local bindir=${root}${EPREFIX}/usr/bin - local rscriptdir=${root}$(python_get_scriptdir) - [[ -d ${rscriptdir} ]] && - die "${rscriptdir} should not exist!" - if [[ -d ${bindir} ]]; then - mkdir -p "${rscriptdir}" || die - cp -a --reflink=auto "${bindir}"/. "${rscriptdir}"/ || die - fi - - # enable venv magic inside the install tree - mkdir -p "${bindir}" || die - ln -s "${PYTHON}" "${bindir}/${EPYTHON}" || die - ln -s "${EPYTHON}" "${bindir}/python3" || die - ln -s "${EPYTHON}" "${bindir}/python" || die - cat > "${bindir}"/pyvenv.cfg <<-EOF || die - include-system-site-packages = true - EOF - - # we need to change shebangs to point to the venv-python - find "${bindir}" -type f -exec sed -i \ - -e "1s@^#!\(${EPREFIX}/usr/bin/\(python\|pypy\)\)@#!${root}\1@" \ - {} + || die + distutils_pep517_install "${BUILD_DIR}/install" fi } @@ -1428,7 +1514,7 @@ _distutils-r1_wrap_scripts() { debug-print "${FUNCNAME}: installing wrapper at ${bindir}/${basename}" local dosym=dosym - [[ ${EAPI} == [67] ]] && dosym=dosym8 + [[ ${EAPI} == 7 ]] && dosym=dosym8 "${dosym}" -r /usr/lib/python-exec/python-exec2 \ "${bindir#${EPREFIX}}/${basename}" done @@ -1482,36 +1568,72 @@ distutils-r1_python_test() { esac if [[ ${?} -ne 0 ]]; then - die "Tests failed with ${EPYTHON}" + die -n "Tests failed with ${EPYTHON}" fi } # @FUNCTION: distutils-r1_python_install # @USAGE: [additional-args...] # @DESCRIPTION: -# The default python_install(). Runs 'esetup.py install', doing -# intermediate root install and handling script wrapping afterwards. +# The default python_install(). +# +# In PEP517 mode, merges the files from ${BUILD_DIR}/install +# (if present) to the image directory. +# +# In the legacy mode, calls `esetup.py install` to install the package. # Any parameters passed to this function will be appended # to the setup.py invocation (i.e. as options to the 'install' command). -# -# This phase updates the setup.cfg file with install directories. distutils-r1_python_install() { debug-print-function ${FUNCNAME} "${@}" _python_check_EPYTHON local scriptdir=${EPREFIX}/usr/bin + local merge_root= if [[ ${DISTUTILS_USE_PEP517} ]]; then local root=${BUILD_DIR}/install - # remove the altered bindir, executables from the package - # are already in scriptdir - rm -r "${root}${scriptdir}" || die - if [[ ${DISTUTILS_SINGLE_IMPL} ]]; then - local wrapped_scriptdir=${root}$(python_get_scriptdir) - if [[ -d ${wrapped_scriptdir} ]]; then - mv "${wrapped_scriptdir}" "${root}${scriptdir}" || die + local reg_scriptdir=${root}/${scriptdir} + local wrapped_scriptdir=${root}$(python_get_scriptdir) + + # we are assuming that _distutils-r1_post_python_compile + # has been called and ${root} has not been altered since + # let's explicitly verify these assumptions + + # remove files that we've created explicitly + rm "${reg_scriptdir}"/{"${EPYTHON}",python3,python,pyvenv.cfg} || die + + # Automagically do the QA check to avoid issues when bootstrapping + # prefix. + if type diff &>/dev/null ; then + # verify that scriptdir & wrapped_scriptdir both contain + # the same files + ( + cd "${reg_scriptdir}" && find . -mindepth 1 + ) | sort > "${T}"/.distutils-files-bin + assert "listing ${reg_scriptdir} failed" + ( + if [[ -d ${wrapped_scriptdir} ]]; then + cd "${wrapped_scriptdir}" && find . -mindepth 1 + fi + ) | sort > "${T}"/.distutils-files-wrapped + assert "listing ${wrapped_scriptdir} failed" + if ! diff -U 0 "${T}"/.distutils-files-{bin,wrapped}; then + die "File lists for ${reg_scriptdir} and ${wrapped_scriptdir} differ (see diff above)" fi fi + + # remove the altered bindir, executables from the package + # are already in scriptdir + rm -r "${reg_scriptdir}" || die + if [[ ${DISTUTILS_SINGLE_IMPL} ]]; then + if [[ -d ${wrapped_scriptdir} ]]; then + mv "${wrapped_scriptdir}" "${reg_scriptdir}" || die + fi + fi + # prune empty directories to see if ${root} contains anything + # to merge + find "${BUILD_DIR}"/install -type d -empty -delete || die + [[ -d ${BUILD_DIR}/install ]] && merge_root=1 else local root=${D%/}/_${EPYTHON} [[ ${DISTUTILS_SINGLE_IMPL} ]] && root=${D%/} @@ -1533,11 +1655,12 @@ distutils-r1_python_install() { # python likes to compile any module it sees, which triggers sandbox # failures if some packages haven't compiled their modules yet. addpredict "${EPREFIX}/usr/lib/${EPYTHON}" - addpredict /usr/lib/pypy3.8 - addpredict /usr/lib/portage/pym - addpredict /usr/local # bug 498232 + addpredict "${EPREFIX}/usr/lib/pypy3.9" + addpredict "${EPREFIX}/usr/local" # bug 498232 if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then + merge_root=1 + # user may override --install-scripts # note: this is poor but distutils argv parsing is dumb @@ -1566,36 +1689,8 @@ distutils-r1_python_install() { esetup.py "${args[@]}" fi - local forbidden_package_names=( - examples test tests - .pytest_cache .hypothesis - ) - local p - for p in "${forbidden_package_names[@]}"; do - if [[ -d ${root}$(python_get_sitedir)/${p} ]]; then - die "Package installs '${p}' package which is forbidden and likely a bug in the build system." - fi - done - - local shopt_save=$(shopt -p nullglob) - shopt -s nullglob - local pypy_dirs=( - "${root}${EPREFIX}/usr/$(get_libdir)"/pypy*/share - "${root}${EPREFIX}/usr/lib"/pypy*/share - ) - ${shopt_save} - - if [[ -n ${pypy_dirs} ]]; then - die "Package installs 'share' in PyPy prefix, see bug #465546." - fi - - if [[ ! ${DISTUTILS_SINGLE_IMPL} || ${DISTUTILS_USE_PEP517} ]]; then + if [[ ${merge_root} ]]; then multibuild_merge_root "${root}" "${D%/}" - if [[ ${DISTUTILS_USE_PEP517} ]]; then - # we need to recompile everything here in order to embed - # the correct paths - python_optimize "${D%/}$(python_get_sitedir)" - fi fi if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then _distutils-r1_wrap_scripts "${scriptdir}" @@ -1629,6 +1724,8 @@ distutils-r1_run_phase() { debug-print-function ${FUNCNAME} "${@}" if [[ ${DISTUTILS_IN_SOURCE_BUILD} ]]; then + [[ ${DISTUTILS_USE_PEP517} ]] && + die "DISTUTILS_IN_SOURCE_BUILD is not supported in PEP517 mode" # only force BUILD_DIR if implementation is explicitly enabled # for building; any-r1 API may select one that is not # https://bugs.gentoo.org/701506 @@ -1687,6 +1784,11 @@ distutils-r1_run_phase() { fi cd "${_DISTUTILS_INITIAL_CWD}" || die + if [[ ! ${_DISTUTILS_IN_COMMON_IMPL} ]] && + declare -f "_distutils-r1_post_python_${EBUILD_PHASE}" >/dev/null + then + "_distutils-r1_post_python_${EBUILD_PHASE}" + fi return "${ret}" } @@ -1701,6 +1803,7 @@ distutils-r1_run_phase() { # of sources made for the selected Python interpreter. _distutils-r1_run_common_phase() { local DISTUTILS_ORIG_BUILD_DIR=${BUILD_DIR} + local _DISTUTILS_IN_COMMON_IMPL=1 if [[ ${DISTUTILS_SINGLE_IMPL} ]]; then # reuse the dedicated code branch @@ -1731,6 +1834,7 @@ _distutils-r1_run_foreach_impl() { set -- distutils-r1_run_phase "${@}" if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then + local _DISTUTILS_CALLING_FOREACH_IMPL=1 python_foreach_impl "${@}" else if [[ ! ${EPYTHON} ]]; then @@ -1781,6 +1885,43 @@ distutils-r1_src_configure() { return ${ret} } +# @FUNCTION: _distutils-r1_post_python_compile +# @INTERNAL +# @DESCRIPTION: +# Post-phase function called after python_compile. In PEP517 mode, +# it adjusts the install tree for venv-style usage. +_distutils-r1_post_python_compile() { + debug-print-function ${FUNCNAME} "${@}" + + local root=${BUILD_DIR}/install + if [[ ${DISTUTILS_USE_PEP517} && -d ${root} ]]; then + # copy executables to python-exec directory + # we do it early so that we can alter bindir recklessly + local bindir=${root}${EPREFIX}/usr/bin + local rscriptdir=${root}$(python_get_scriptdir) + [[ -d ${rscriptdir} ]] && + die "${rscriptdir} should not exist!" + if [[ -d ${bindir} ]]; then + mkdir -p "${rscriptdir}" || die + cp -a --reflink=auto "${bindir}"/. "${rscriptdir}"/ || die + fi + + # enable venv magic inside the install tree + mkdir -p "${bindir}" || die + ln -s "${PYTHON}" "${bindir}/${EPYTHON}" || die + ln -s "${EPYTHON}" "${bindir}/python3" || die + ln -s "${EPYTHON}" "${bindir}/python" || die + cat > "${bindir}"/pyvenv.cfg <<-EOF || die + include-system-site-packages = true + EOF + + # we need to change shebangs to point to the venv-python + find "${bindir}" -type f -exec sed -i \ + -e "1s@^#!\(${EPREFIX}/usr/bin/\(python\|pypy\)\)@#!${root}\1@" \ + {} + || die + fi +} + distutils-r1_src_compile() { debug-print-function ${FUNCNAME} "${@}" local ret=0 @@ -1812,15 +1953,24 @@ _distutils-r1_clean_egg_info() { rm -rf "${BUILD_DIR}"/lib/*.egg-info || die } +# @FUNCTION: _distutils-r1_post_python_test +# @INTERNAL +# @DESCRIPTION: +# Post-phase function called after python_test. +_distutils-r1_post_python_test() { + debug-print-function ${FUNCNAME} "${@}" + + if [[ ! ${DISTUTILS_USE_PEP517} ]]; then + _distutils-r1_clean_egg_info + fi +} + distutils-r1_src_test() { debug-print-function ${FUNCNAME} "${@}" local ret=0 if declare -f python_test >/dev/null; then _distutils-r1_run_foreach_impl python_test || ret=${?} - if [[ ! ${DISTUTILS_USE_PEP517} ]]; then - _distutils-r1_run_foreach_impl _distutils-r1_clean_egg_info - fi fi if declare -f python_test_all >/dev/null; then @@ -1830,6 +1980,51 @@ distutils-r1_src_test() { return ${ret} } +# @FUNCTION: _distutils-r1_post_python_install +# @INTERNAL +# @DESCRIPTION: +# Post-phase function called after python_install. Performs QA checks. +# In PEP517 mode, additionally optimizes installed Python modules. +_distutils-r1_post_python_install() { + debug-print-function ${FUNCNAME} "${@}" + + local sitedir=${D%/}$(python_get_sitedir) + if [[ -d ${sitedir} ]]; then + local forbidden_package_names=( + examples test tests + .pytest_cache .hypothesis _trial_temp + ) + local strays=() + local p + mapfile -d $'\0' -t strays < <( + find "${sitedir}" -maxdepth 1 -type f '!' '(' \ + -name '*.egg-info' -o \ + -name '*.pth' -o \ + -name '*.py' -o \ + -name '*.pyi' -o \ + -name "*$(get_modname)" \ + ')' -print0 + ) + for p in "${forbidden_package_names[@]}"; do + [[ -d ${sitedir}/${p} ]] && strays+=( "${sitedir}/${p}" ) + done + + if [[ -n ${strays[@]} ]]; then + eerror "The following unexpected files/directories were found top-level" + eerror "in the site-packages directory:" + eerror + for p in "${strays[@]}"; do + eerror " ${p#${ED}}" + done + eerror + eerror "This is most likely a bug in the build system. More information" + eerror "can be found in the Python Guide:" + eerror "https://projects.gentoo.org/python/guide/qawarn.html#stray-top-level-files-in-site-packages" + die "Failing install because of stray top-level files in site-packages" + fi + fi +} + # @FUNCTION: _distutils-r1_check_namespace_pth # @INTERNAL # @DESCRIPTION: @@ -1843,17 +2038,19 @@ _distutils-r1_check_namespace_pth() { done < <(find "${ED%/}" -name '*-nspkg.pth' -print0) if [[ ${pth[@]} ]]; then - ewarn "The following *-nspkg.pth files were found installed:" - ewarn + eerror "The following *-nspkg.pth files were found installed:" + eerror for f in "${pth[@]}"; do - ewarn " ${f#${ED%/}}" + eerror " ${f#${ED%/}}" done - ewarn - ewarn "The presence of those files may break namespaces in Python 3.5+. Please" - ewarn "read our documentation on reliable handling of namespaces and update" - ewarn "the ebuild accordingly:" - ewarn - ewarn " https://projects.gentoo.org/python/guide/concept.html#namespace-packages" + eerror + eerror "The presence of those files may break namespaces in Python 3.5+. Please" + eerror "read our documentation on reliable handling of namespaces and update" + eerror "the ebuild accordingly:" + eerror + eerror " https://projects.gentoo.org/python/guide/concept.html#namespace-packages" + + die "Installing *-nspkg.pth files is banned" fi } diff --git a/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass b/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass new file mode 100644 index 0000000000..182b0b6b8c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass @@ -0,0 +1,219 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# @ECLASS: pypi.eclass +# @MAINTAINER: +# Michał Górny <mgorny@gentoo.org> +# @AUTHOR: +# Michał Górny <mgorny@gentoo.org> +# @SUPPORTED_EAPIS: 7 8 +# @BLURB: A helper eclass to generate PyPI source URIs +# @DESCRIPTION: +# The pypi.eclass can be used to easily obtain URLs for artifacts +# uploaded to PyPI.org. When inherited, the eclass defaults SRC_URI +# and S to fetch .tar.gz sdist. The project filename is normalized +# by default (unless PYPI_NO_NORMALIZE is set prior to inheriting +# the eclass), and the version is translated using +# pypi_translate_version. +# +# If necessary, SRC_URI and S can be overriden by the ebuild. Two +# helper functions, pypi_sdist_url and pypi_wheel_url are provided +# to generate URLs to artifacts of specified type, with customizable +# URL components. Additionally, pypi_wheel_name can be used to generate +# wheel filename. +# +# pypi_normalize_name can be used to normalize an arbitrary project name +# according to sdist/wheel normalization rules. pypi_translate_version +# can be used to translate a Gentoo version string into its PEP 440 +# equivalent. +# +# @EXAMPLE: +# @CODE@ +# inherit pypi +# +# SRC_URI="$(pypi_sdist_url "${PN^}" "${PV}")" +# S=${WORKDIR}/${P^} +# @CODE@ + +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; +esac + +if [[ ! ${_PYPI_ECLASS} ]]; then +_PYPI_ECLASS=1 + +# @ECLASS_VARIABLE: PYPI_NO_NORMALIZE +# @PRE_INHERIT +# @DEFAULT_UNSET +# @DESCRIPTION: +# When set to a non-empty value, disables project name normalization +# for the default SRC_URI and S values. + +# @FUNCTION: pypi_normalize_name +# @USAGE: <name> +# @DESCRIPTION: +# Normalize the project name according to sdist/wheel normalization +# rules. That is, convert to lowercase and replace runs of [._-] +# with a single underscore. +# +# Based on the spec, as of 2023-02-10: +# https://packaging.python.org/en/latest/specifications/#package-distribution-file-formats +pypi_normalize_name() { + [[ ${#} -ne 1 ]] && die "Usage: ${FUNCNAME} <name>" + + local name=${1} + local shopt_save=$(shopt -p extglob) + shopt -s extglob + name=${name//+([._-])/_} + ${shopt_save} + echo "${name,,}" +} + +# @FUNCTION: pypi_translate_version +# @USAGE: <version> +# @DESCRIPTION: +# Translate the specified Gentoo version into the usual Python +# counterpart. Assumes PEP 440 versions. +# +# Note that we do not have clear counterparts for the epoch segment, +# nor for development release segment. +pypi_translate_version() { + [[ ${#} -ne 1 ]] && die "Usage: ${FUNCNAME} <version>" + + local version=${1} + version=${version/_alpha/a} + version=${version/_beta/b} + version=${version/_rc/rc} + version=${version/_p/.post} + echo "${version}" +} + +# @FUNCTION: pypi_sdist_url +# @USAGE: [--no-normalize] [<project> [<version> [<suffix>]]] +# @DESCRIPTION: +# Output the URL to PyPI sdist for specified project/version tuple. +# +# The `--no-normalize` option disables project name normalization +# for sdist filename. This may be necessary when dealing with distfiles +# generated using build systems that did not follow PEP 625 +# (i.e. the sdist name contains uppercase letters, hyphens or dots). +# +# If <package> is unspecified, it defaults to ${PN}. The package name +# is normalized according to the specification unless `--no-normalize` +# is passed. +# +# If <version> is unspecified, it defaults to ${PV} translated +# via pypi_translate_version. If it is specified, then it is used +# verbatim (the function can be called explicitly to translate custom +# version number). +# +# If <format> is unspecified, it defaults to ".tar.gz". Another valid +# value is ".zip" (please remember to add a BDEPEND on app-arch/unzip). +pypi_sdist_url() { + local normalize=1 + if [[ ${1} == --no-normalize ]]; then + normalize= + shift + fi + + if [[ ${#} -gt 3 ]]; then + die "Usage: ${FUNCNAME} [--no-normalize] <project> [<version> [<suffix>]]" + fi + + local project=${1-"${PN}"} + local version=${2-"$(pypi_translate_version "${PV}")"} + local suffix=${3-.tar.gz} + local fn_project=${project} + [[ ${normalize} ]] && fn_project=$(pypi_normalize_name "${project}") + printf "https://files.pythonhosted.org/packages/source/%s" \ + "${project::1}/${project}/${fn_project}-${version}${suffix}" +} + +# @FUNCTION: pypi_wheel_name +# @USAGE: [<project> [<version> [<python-tag> [<abi-platform-tag>]]]] +# @DESCRIPTION: +# Output the wheel filename for the specified project/version tuple. +# +# If <package> is unspecified, it defaults to ${PN}. The package name +# is normalized according to the wheel specification. +# +# If <version> is unspecified, it defaults to ${PV} translated +# via pypi_translate_version. If it is specified, then it is used +# verbatim (the function can be called explicitly to translate custom +# version number). +# +# If <python-tag> is unspecified, it defaults to "py3". It can also be +# "py2.py3", or a specific version in case of non-pure wheels. +# +# If <abi-platform-tag> is unspecified, it defaults to "none-any". +# You need to specify the correct value for non-pure wheels, +# e.g. "abi3-linux_x86_64". +pypi_wheel_name() { + if [[ ${#} -gt 4 ]]; then + die "Usage: ${FUNCNAME} <project> [<version> [<python-tag> [<abi-platform-tag>]]]" + fi + + local project=$(pypi_normalize_name "${1-"${PN}"}") + local version=${2-"$(pypi_translate_version "${PV}")"} + local pytag=${3-py3} + local abitag=${4-none-any} + echo "${project}-${version}-${pytag}-${abitag}.whl" +} + +# @FUNCTION: pypi_wheel_url +# @USAGE: [--unpack] [<project> [<version> [<python-tag> [<abi-platform-tag>]]]] +# @DESCRIPTION: +# Output the URL to PyPI wheel for specified project/version tuple. +# +# The `--unpack` option causes a SRC_URI with an arrow operator to +# be generated, that adds a .zip suffix to the fetched distfile, +# so that it is unpacked in default src_unpack(). Note that +# the wheel contents will be unpacked straight into ${WORKDIR}. +# You need to add a BDEPEND on app-arch/unzip. +# +# If <package> is unspecified, it defaults to ${PN}. +# +# If <version> is unspecified, it defaults to ${PV} translated +# via pypi_translate_version. If it is specified, then it is used +# verbatim (the function can be called explicitly to translate custom +# version number). +# +# If <python-tag> is unspecified, it defaults to "py3". It can also be +# "py2.py3", or a specific version in case of non-pure wheels. +# +# If <abi-platform-tag> is unspecified, it defaults to "none-any". +# You need to specify the correct value for non-pure wheels, +# e.g. "abi3-linux_x86_64". +pypi_wheel_url() { + local unpack= + if [[ ${1} == --unpack ]]; then + unpack=1 + shift + fi + + if [[ ${#} -gt 4 ]]; then + die "Usage: ${FUNCNAME} [--unpack] <project> [<version> [<python-tag> [<abi-platform-tag>]]]" + fi + + local filename=$(pypi_wheel_name "${@}") + local project=${1-"${PN}"} + local version=${2-"$(pypi_translate_version "${PV}")"} + local pytag=${3-py3} + printf "https://files.pythonhosted.org/packages/%s" \ + "${pytag}/${project::1}/${project}/${filename}" + + if [[ ${unpack} ]]; then + echo " -> ${filename}.zip" + fi +} + +if [[ ${PYPI_NO_NORMALIZE} ]]; then + SRC_URI="$(pypi_sdist_url --no-normalize)" + S="${WORKDIR}/${PN}-$(pypi_translate_version "${PV}")" +else + SRC_URI="$(pypi_sdist_url)" + S="${WORKDIR}/$(pypi_normalize_name "${PN}")-$(pypi_translate_version "${PV}")" +fi + +fi diff --git a/sdk_container/src/third_party/portage-stable/eclass/python-any-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/python-any-r1.eclass index 2051b5e89b..d7d44a87f5 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/python-any-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/python-any-r1.eclass @@ -7,7 +7,7 @@ # @AUTHOR: # Author: Michał Górny <mgorny@gentoo.org> # Based on work of: Krzysztof Pawlik <nelchael@gentoo.org> -# @SUPPORTED_EAPIS: 6 7 8 +# @SUPPORTED_EAPIS: 7 8 # @PROVIDES: python-utils-r1 # @BLURB: An eclass for packages having build-time dependency on Python. # @DESCRIPTION: @@ -38,26 +38,22 @@ # For more information, please see the Python Guide: # https://projects.gentoo.org/python/guide/ -case "${EAPI:-0}" in - [0-5]) die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;; - [6-8]) ;; - *) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;; +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ ! ${_PYTHON_ANY_R1} ]]; then +if [[ ! ${_PYTHON_ANY_R1_ECLASS} ]]; then +_PYTHON_ANY_R1_ECLASS=1 -if [[ ${_PYTHON_R1} ]]; then +if [[ ${_PYTHON_R1_ECLASS} ]]; then die 'python-any-r1.eclass can not be used with python-r1.eclass.' -elif [[ ${_PYTHON_SINGLE_R1} ]]; then +elif [[ ${_PYTHON_SINGLE_R1_ECLASS} ]]; then die 'python-any-r1.eclass can not be used with python-single-r1.eclass.' fi inherit python-utils-r1 -fi - -EXPORT_FUNCTIONS pkg_setup - # @ECLASS_VARIABLE: PYTHON_COMPAT # @REQUIRED # @DESCRIPTION: @@ -139,7 +135,7 @@ EXPORT_FUNCTIONS pkg_setup # Example use: # @CODE # python_check_deps() { -# has_version "dev-python/foo[${PYTHON_USEDEP}]" +# python_has_version "dev-python/foo[${PYTHON_USEDEP}]" # } # @CODE # @@ -161,7 +157,7 @@ EXPORT_FUNCTIONS pkg_setup # Example use: # @CODE # python_check_deps() { -# has_version "dev-python/bar[${PYTHON_SINGLE_USEDEP}]" +# python_has_version "dev-python/bar[${PYTHON_SINGLE_USEDEP}]" # } # @CODE # @@ -174,7 +170,6 @@ _python_any_set_globals() { local usestr deps i PYTHON_PKG_DEP [[ ${PYTHON_REQ_USE} ]] && usestr="[${PYTHON_REQ_USE}]" - _PYTHON_ALLOW_PY27=1 \ _python_set_impls for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do @@ -206,8 +201,6 @@ _python_any_set_globals() { _python_any_set_globals unset -f _python_any_set_globals -if [[ ! ${_PYTHON_ANY_R1} ]]; then - # @FUNCTION: python_gen_any_dep # @USAGE: <dependency-block> # @DESCRIPTION: @@ -228,9 +221,9 @@ if [[ ! ${_PYTHON_ANY_R1} ]]; then # dev-python/baz[${PYTHON_USEDEP}] )')" # # python_check_deps() { -# has_version "dev-python/foo[${PYTHON_SINGLE_USEDEP}]" \ -# && { has_version "dev-python/bar[${PYTHON_USEDEP}]" \ -# || has_version "dev-python/baz[${PYTHON_USEDEP}]"; } +# python_has_version "dev-python/foo[${PYTHON_SINGLE_USEDEP}]" \ +# && { python_has_version "dev-python/bar[${PYTHON_USEDEP}]" \ +# || python_has_version "dev-python/baz[${PYTHON_USEDEP}]"; } # } # @CODE # @@ -317,6 +310,7 @@ python_setup() { # fallback to the best installed impl. # (reverse iteration over _PYTHON_SUPPORTED_IMPLS) + local i for (( i = ${#_PYTHON_SUPPORTED_IMPLS[@]} - 1; i >= 0; i-- )); do local impl=${_PYTHON_SUPPORTED_IMPLS[i]} # avoid checking EPYTHON twice @@ -348,5 +342,6 @@ python-any-r1_pkg_setup() { [[ ${MERGE_TYPE} != binary ]] && python_setup } -_PYTHON_ANY_R1=1 fi + +EXPORT_FUNCTIONS pkg_setup diff --git a/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass index 2f8cfa0316..657922fe64 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/python-r1.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: python-r1.eclass @@ -7,8 +7,8 @@ # @AUTHOR: # Author: Michał Górny <mgorny@gentoo.org> # Based on work of: Krzysztof Pawlik <nelchael@gentoo.org> -# @SUPPORTED_EAPIS: 6 7 8 -# @PROVIDES: multibuild python-utils-r1 +# @SUPPORTED_EAPIS: 7 8 +# @PROVIDES: python-utils-r1 # @BLURB: A common, simple eclass for Python packages. # @DESCRIPTION: # A common eclass providing helper functions to build and install @@ -30,29 +30,22 @@ # For more information, please see the Python Guide: # https://projects.gentoo.org/python/guide/ -case "${EAPI:-0}" in - [0-5]) - die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" - ;; - [6-8]) - ;; - *) - die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" - ;; +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ ! ${_PYTHON_R1} ]]; then +if [[ ! ${_PYTHON_R1_ECLASS} ]]; then +_PYTHON_R1_ECLASS=1 -if [[ ${_PYTHON_SINGLE_R1} ]]; then +if [[ ${_PYTHON_SINGLE_R1_ECLASS} ]]; then die 'python-r1.eclass can not be used with python-single-r1.eclass.' -elif [[ ${_PYTHON_ANY_R1} ]]; then +elif [[ ${_PYTHON_ANY_R1_ECLASS} ]]; then die 'python-r1.eclass can not be used with python-any-r1.eclass.' fi inherit multibuild python-utils-r1 -fi - # @ECLASS_VARIABLE: PYTHON_COMPAT # @REQUIRED # @DESCRIPTION: @@ -243,8 +236,6 @@ _python_set_globals() { _python_set_globals unset -f _python_set_globals -if [[ ! ${_PYTHON_R1} ]]; then - # @FUNCTION: _python_validate_useflags # @INTERNAL # @DESCRIPTION: @@ -625,6 +616,24 @@ _python_multibuild_wrapper() { python_foreach_impl() { debug-print-function ${FUNCNAME} "${@}" + if [[ ${_DISTUTILS_R1} ]]; then + if has "${EBUILD_PHASE}" prepare configure compile test install && + [[ ! ${_DISTUTILS_CALLING_FOREACH_IMPL} && + ! ${_DISTUTILS_FOREACH_IMPL_WARNED} ]] + then + eqawarn "python_foreach_impl has been called directly while using distutils-r1." + eqawarn "Please redefine python_*() phase functions to meet your expectations" + eqawarn "instead." + _DISTUTILS_FOREACH_IMPL_WARNED=1 + + if ! has "${EAPI}" 7 8; then + die "Calling python_foreach_impl from distutils-r1 is banned in EAPI ${EAPI}" + fi + fi + # undo the eclass-set value to catch nested calls + local _DISTUTILS_CALLING_FOREACH_IMPL= + fi + local MULTIBUILD_VARIANTS _python_obtain_impls @@ -710,7 +719,7 @@ python_setup() { fi # (reverse iteration -- newest impl first) - local found + local found i _python_verify_patterns "${@}" for (( i = ${#_PYTHON_SUPPORTED_IMPLS[@]} - 1; i >= 0; i-- )); do local impl=${_PYTHON_SUPPORTED_IMPLS[i]} @@ -786,10 +795,9 @@ python_replicate_script() { local f for f; do local dosym=dosym - [[ ${EAPI} == [67] ]] && dosym=dosym8 + [[ ${EAPI} == 7 ]] && dosym=dosym8 "${dosym}" -r /usr/lib/python-exec/python-exec2 "${f#${ED}}" done } -_PYTHON_R1=1 fi diff --git a/sdk_container/src/third_party/portage-stable/eclass/python-single-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/python-single-r1.eclass index 740c3283d1..4d61f08c06 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/python-single-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/python-single-r1.eclass @@ -7,7 +7,7 @@ # @AUTHOR: # Author: Michał Górny <mgorny@gentoo.org> # Based on work of: Krzysztof Pawlik <nelchael@gentoo.org> -# @SUPPORTED_EAPIS: 6 7 8 +# @SUPPORTED_EAPIS: 7 8 # @PROVIDES: python-utils-r1 # @BLURB: An eclass for Python packages not installed for multiple implementations. # @DESCRIPTION: @@ -37,31 +37,22 @@ # For more information, please see the Python Guide: # https://projects.gentoo.org/python/guide/ -case "${EAPI:-0}" in - [0-5]) - die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" - ;; - [6-8]) - ;; - *) - die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" - ;; +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ ! ${_PYTHON_SINGLE_R1} ]]; then +if [[ ! ${_PYTHON_SINGLE_R1_ECLASS} ]]; then +_PYTHON_SINGLE_R1_ECLASS=1 -if [[ ${_PYTHON_R1} ]]; then +if [[ ${_PYTHON_R1_ECLASS} ]]; then die 'python-single-r1.eclass can not be used with python-r1.eclass.' -elif [[ ${_PYTHON_ANY_R1} ]]; then +elif [[ ${_PYTHON_ANY_R1_ECLASS} ]]; then die 'python-single-r1.eclass can not be used with python-any-r1.eclass.' fi inherit python-utils-r1 -fi - -EXPORT_FUNCTIONS pkg_setup - # @ECLASS_VARIABLE: PYTHON_COMPAT # @REQUIRED # @DESCRIPTION: @@ -257,8 +248,6 @@ _python_single_set_globals() { _python_single_set_globals unset -f _python_single_set_globals -if [[ ! ${_PYTHON_SINGLE_R1} ]]; then - # @FUNCTION: python_gen_useflags # @USAGE: [<pattern>...] # @DESCRIPTION: @@ -463,5 +452,6 @@ python-single-r1_pkg_setup() { [[ ${MERGE_TYPE} != binary ]] && python_setup } -_PYTHON_SINGLE_R1=1 fi + +EXPORT_FUNCTIONS pkg_setup diff --git a/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass index 67dc5bf754..be21834635 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: python-utils-r1.eclass @@ -7,7 +7,7 @@ # @AUTHOR: # Author: Michał Górny <mgorny@gentoo.org> # Based on work of: Krzysztof Pawlik <nelchael@gentoo.org> -# @SUPPORTED_EAPIS: 6 7 8 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: Utility functions for packages with Python parts. # @DESCRIPTION: # A utility eclass providing functions to query Python implementations, @@ -22,19 +22,16 @@ # NOTE: When dropping support for EAPIs here, we need to update # metadata/install-qa-check.d/60python-pyc # See bug #704286, bug #781878 -case "${EAPI:-0}" in - [0-5]) die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;; - [6-8]) ;; - *) die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}" ;; + +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -if [[ ${_PYTHON_ECLASS_INHERITED} ]]; then - die 'python-r1 suite eclasses can not be used with python.eclass.' -fi +if [[ ! ${_PYTHON_UTILS_R1_ECLASS} ]]; then +_PYTHON_UTILS_R1_ECLASS=1 -if [[ ! ${_PYTHON_UTILS_R1} ]]; then - -[[ ${EAPI} == [67] ]] && inherit eapi8-dosym +[[ ${EAPI} == 7 ]] && inherit eapi8-dosym inherit multiprocessing toolchain-funcs # @ECLASS_VARIABLE: _PYTHON_ALL_IMPLS @@ -43,7 +40,7 @@ inherit multiprocessing toolchain-funcs # All supported Python implementations, most preferred last. _PYTHON_ALL_IMPLS=( pypy3 - python3_{8..11} + python3_{9..11} ) readonly _PYTHON_ALL_IMPLS @@ -55,7 +52,7 @@ _PYTHON_HISTORICAL_IMPLS=( jython2_7 pypy pypy1_{8,9} pypy2_0 python2_{5..7} - python3_{1..7} + python3_{1..8} ) readonly _PYTHON_HISTORICAL_IMPLS @@ -132,9 +129,9 @@ _python_set_impls() { # please keep them in sync with _PYTHON_ALL_IMPLS # and _PYTHON_HISTORICAL_IMPLS case ${i} in - pypy3|python2_7|python3_[89]|python3_1[01]) + pypy3|python3_9|python3_1[01]) ;; - jython2_7|pypy|pypy1_[89]|pypy2_0|python2_[5-6]|python3_[1-7]) + jython2_7|pypy|pypy1_[89]|pypy2_0|python2_[5-7]|python3_[1-8]) obsolete+=( "${i}" ) ;; *) @@ -171,13 +168,7 @@ _python_set_impls() { done if [[ ! ${supp[@]} ]]; then - # special-case python2_7 for python-any-r1 - if [[ ${_PYTHON_ALLOW_PY27} ]] && has python2_7 "${PYTHON_COMPAT[@]}" - then - supp+=( python2_7 ) - else - die "No supported implementation in PYTHON_COMPAT." - fi + die "No supported implementation in PYTHON_COMPAT." fi if [[ ${_PYTHON_SUPPORTED_IMPLS[@]} ]]; then @@ -223,7 +214,7 @@ _python_impl_matches() { for pattern; do case ${pattern} in -2|python2*|pypy) - if [[ ${EAPI} != [67] ]]; then + if [[ ${EAPI} != 7 ]]; then eerror eerror "Python 2 is no longer supported in Gentoo, please remove Python 2" eerror "${FUNCNAME[1]} calls." @@ -232,7 +223,7 @@ _python_impl_matches() { ;; -3) # NB: "python3*" is fine, as "not pypy3" - if [[ ${EAPI} != [67] ]]; then + if [[ ${EAPI} != 7 ]]; then eerror eerror "Python 2 is no longer supported in Gentoo, please remove Python 2" eerror "${FUNCNAME[1]} calls." @@ -341,7 +332,7 @@ _python_export() { debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}" ;; PYTHON) - export PYTHON=${EPREFIX}/usr/bin/${impl} + export PYTHON=${BROOT-${EPREFIX}}/usr/bin/${impl} debug-print "${FUNCNAME}: PYTHON = ${PYTHON}" ;; PYTHON_SITEDIR) @@ -411,10 +402,6 @@ _python_export() { local val case "${impl}" in - python2*|python3.6|python3.7*) - # python* up to 3.7 - val=$($(tc-getPKG_CONFIG) --libs ${impl/n/n-}) || die - ;; python*) # python3.8+ val=$($(tc-getPKG_CONFIG) --libs ${impl/n/n-}-embed) || die @@ -453,22 +440,14 @@ _python_export() { PYTHON_PKG_DEP) local d case ${impl} in - python2.7) - PYTHON_PKG_DEP='>=dev-lang/python-2.7.5-r2:2.7';; - python3.8) - PYTHON_PKG_DEP=">=dev-lang/python-3.8.12_p1-r1:3.8";; python3.9) - PYTHON_PKG_DEP=">=dev-lang/python-3.9.9-r1:3.9";; + PYTHON_PKG_DEP=">=dev-lang/python-3.9.16-r1:3.9";; python3.10) - PYTHON_PKG_DEP=">=dev-lang/python-3.10.0_p1-r1:3.10";; + PYTHON_PKG_DEP=">=dev-lang/python-3.10.9-r1:3.10";; python3.11) - PYTHON_PKG_DEP=">=dev-lang/python-3.11.0_beta1-r1:3.11";; - python*) - PYTHON_PKG_DEP="dev-lang/python:${impl#python}";; - pypy) - PYTHON_PKG_DEP='>=dev-python/pypy-7.3.0:0=';; + PYTHON_PKG_DEP=">=dev-lang/python-3.11.1-r1:3.11";; pypy3) - PYTHON_PKG_DEP='>=dev-python/pypy3-7.3.7-r1:0=';; + PYTHON_PKG_DEP='>=dev-python/pypy3-7.3.11-r1:0=';; *) die "Invalid implementation: ${impl}" esac @@ -642,22 +621,22 @@ python_optimize() { einfo "Optimize Python modules for ${instpath}" case "${EPYTHON}" in - python2.7|python3.[34]) - "${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}" - "${PYTHON}" -OO -m compileall -q -f -d "${instpath}" "${d}" - ;; - python3.[5678]|pypy3) + python3.8) # both levels of optimization are separate since 3.5 "${PYTHON}" -m compileall -j "${jobs}" -q -f -d "${instpath}" "${d}" "${PYTHON}" -O -m compileall -j "${jobs}" -q -f -d "${instpath}" "${d}" "${PYTHON}" -OO -m compileall -j "${jobs}" -q -f -d "${instpath}" "${d}" ;; - python*) + python*|pypy3) + # Python 3.9+ "${PYTHON}" -m compileall -j "${jobs}" -o 0 -o 1 -o 2 --hardlink-dupes -q -f -d "${instpath}" "${d}" ;; - *) + pypy|jython2.7) "${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}" ;; + *) + die "${FUNCNAME}: unexpected EPYTHON=${EPYTHON}" + ;; esac done } @@ -696,6 +675,9 @@ python_scriptinto() { python_doexe() { debug-print-function ${FUNCNAME} "${@}" + [[ ${EBUILD_PHASE} != install ]] && + die "${FUNCNAME} can only be used in src_install" + local f for f; do python_newexe "${f}" "${f##*/}" @@ -714,6 +696,8 @@ python_doexe() { python_newexe() { debug-print-function ${FUNCNAME} "${@}" + [[ ${EBUILD_PHASE} != install ]] && + die "${FUNCNAME} can only be used in src_install" [[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).' [[ ${#} -eq 2 ]] || die "Usage: ${FUNCNAME} <path> <new-name>" @@ -734,7 +718,7 @@ python_newexe() { # install the wrapper local dosym=dosym - [[ ${EAPI} == [67] ]] && dosym=dosym8 + [[ ${EAPI} == 7 ]] && dosym=dosym8 "${dosym}" -r /usr/lib/python-exec/python-exec2 "${wrapd}/${newfn}" # don't use this at home, just call python_doscript() instead @@ -762,6 +746,9 @@ python_newexe() { python_doscript() { debug-print-function ${FUNCNAME} "${@}" + [[ ${EBUILD_PHASE} != install ]] && + die "${FUNCNAME} can only be used in src_install" + local _PYTHON_REWRITE_SHEBANG=1 python_doexe "${@}" } @@ -786,6 +773,9 @@ python_doscript() { python_newscript() { debug-print-function ${FUNCNAME} "${@}" + [[ ${EBUILD_PHASE} != install ]] && + die "${FUNCNAME} can only be used in src_install" + local _PYTHON_REWRITE_SHEBANG=1 python_newexe "${@}" } @@ -805,10 +795,10 @@ python_newscript() { # site-packages directory. # # In the relative case, the exact path is determined directly -# by each python_doscript/python_newscript function. Therefore, -# python_moduleinto can be safely called before establishing the Python -# interpreter and/or a single call can be used to set the path correctly -# for multiple implementations, as can be seen in the following example. +# by each python_domodule invocation. Therefore, python_moduleinto +# can be safely called before establishing the Python interpreter and/or +# a single call can be used to set the path correctly for multiple +# implementations, as can be seen in the following example. # # Example: # @CODE @@ -832,6 +822,10 @@ python_moduleinto() { # and packages (directories). All listed files will be installed # for all enabled implementations, and compiled afterwards. # +# The files are installed into ${D} when run in src_install() phase. +# Otherwise, they are installed into ${BUILD_DIR}/install location +# that is suitable for picking up by distutils-r1 in PEP517 mode. +# # Example: # @CODE # src_install() { @@ -854,13 +848,24 @@ python_domodule() { d=${sitedir#${EPREFIX}}/${_PYTHON_MODULEROOT//.//} fi - ( - insopts -m 0644 - insinto "${d}" - doins -r "${@}" || return ${?} - ) - - python_optimize "${ED%/}/${d}" + if [[ ${EBUILD_PHASE} == install ]]; then + ( + insopts -m 0644 + insinto "${d}" + doins -r "${@}" || return ${?} + ) + python_optimize "${ED%/}/${d}" + elif [[ -n ${BUILD_DIR} ]]; then + local dest=${BUILD_DIR}/install${EPREFIX}/${d} + mkdir -p "${dest}" || die + cp -pR "${@}" "${dest}/" || die + ( + cd "${dest}" && + chmod -R a+rX "${@##*/}" + ) || die + else + die "${FUNCNAME} can only be used in src_install or with BUILD_DIR set" + fi } # @FUNCTION: python_doheader @@ -879,6 +884,8 @@ python_domodule() { python_doheader() { debug-print-function ${FUNCNAME} "${@}" + [[ ${EBUILD_PHASE} != install ]] && + die "${FUNCNAME} can only be used in src_install" [[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).' local includedir=$(python_get_includedir) @@ -926,15 +933,6 @@ _python_wrapper_setup() { local EPYTHON PYTHON _python_export "${impl}" EPYTHON PYTHON - local pyver pyother - if [[ ${EPYTHON} != python2* ]]; then - pyver=3 - pyother=2 - else - pyver=2 - pyother=3 - fi - # Python interpreter # note: we don't use symlinks because python likes to do some # symlink reading magic that breaks stuff @@ -943,10 +941,10 @@ _python_wrapper_setup() { #!/bin/sh exec "${PYTHON}" "\${@}" _EOF_ - cp "${workdir}/bin/python" "${workdir}/bin/python${pyver}" || die - chmod +x "${workdir}/bin/python" "${workdir}/bin/python${pyver}" || die + cp "${workdir}/bin/python" "${workdir}/bin/python3" || die + chmod +x "${workdir}/bin/python" "${workdir}/bin/python3" || die - local nonsupp=( "python${pyother}" "python${pyother}-config" ) + local nonsupp=( python2 python2-config ) # CPython-specific if [[ ${EPYTHON} == python* ]]; then @@ -955,24 +953,22 @@ _python_wrapper_setup() { exec "${PYTHON}-config" "\${@}" _EOF_ cp "${workdir}/bin/python-config" \ - "${workdir}/bin/python${pyver}-config" || die + "${workdir}/bin/python3-config" || die chmod +x "${workdir}/bin/python-config" \ - "${workdir}/bin/python${pyver}-config" || die + "${workdir}/bin/python3-config" || die # Python 2.6+. ln -s "${PYTHON/python/2to3-}" "${workdir}"/bin/2to3 || die # Python 2.7+. ln -s "${EPREFIX}"/usr/$(get_libdir)/pkgconfig/${EPYTHON/n/n-}.pc \ - "${workdir}"/pkgconfig/python${pyver}.pc || die + "${workdir}"/pkgconfig/python3.pc || die # Python 3.8+. - if [[ ${EPYTHON} != python[23].[67] ]]; then - ln -s "${EPREFIX}"/usr/$(get_libdir)/pkgconfig/${EPYTHON/n/n-}-embed.pc \ - "${workdir}"/pkgconfig/python${pyver}-embed.pc || die - fi + ln -s "${EPREFIX}"/usr/$(get_libdir)/pkgconfig/${EPYTHON/n/n-}-embed.pc \ + "${workdir}"/pkgconfig/python3-embed.pc || die else - nonsupp+=( 2to3 python-config "python${pyver}-config" ) + nonsupp+=( 2to3 python-config python3-config ) fi local x @@ -1069,11 +1065,10 @@ python_fix_shebang() { "${EPYTHON}") match=1 ;; - python|python[23]) + python|python3) match=1 - [[ ${in_path##*/} == python2 ]] && error=1 ;; - python[23].[0-9]|python3.[1-9][0-9]|pypy|pypy3|jython[23].[0-9]) + python2|python[23].[0-9]|python3.[1-9][0-9]|pypy|pypy3|jython[23].[0-9]) # Explicit mismatch. match=1 error=1 @@ -1302,6 +1297,16 @@ epytest() { # sterilize pytest-markdown as it runs code snippets from all # *.md files found without any warning -p no:markdown + # pytest-sugar undoes everything that's good about pytest output + # and makes it hard to read logs + -p no:sugar + # pytest-xvfb automatically spawns Xvfb for every test suite, + # effectively forcing it even when we'd prefer the tests + # not to have DISPLAY at all, causing crashes sometimes + # and causing us to miss missing virtualx usage + -p no:xvfb + # tavern is intrusive and breaks test suites of various packages + -p no:tavern ) local x for x in "${EPYTEST_DESELECT[@]}"; do @@ -1318,6 +1323,11 @@ epytest() { # remove common temporary directories left over by pytest plugins rm -rf .hypothesis .pytest_cache || die + # pytest plugins create additional .pyc files while testing + # see e.g. https://bugs.gentoo.org/847235 + if [[ -n ${BUILD_DIR} && -d ${BUILD_DIR} ]]; then + find "${BUILD_DIR}" -name '*-pytest-*.pyc' -delete || die + fi return ${ret} } @@ -1352,15 +1362,13 @@ _python_run_check_deps() { debug-print-function ${FUNCNAME} "${@}" local impl=${1} - local hasv_args=( -b ) - [[ ${EAPI} == 6 ]] && hasv_args=( --host-root ) einfo "Checking whether ${impl} is suitable ..." local PYTHON_PKG_DEP _python_export "${impl}" PYTHON_PKG_DEP ebegin " ${PYTHON_PKG_DEP}" - has_version "${hasv_args[@]}" "${PYTHON_PKG_DEP}" + has_version -b "${PYTHON_PKG_DEP}" eend ${?} || return 1 declare -f python_check_deps >/dev/null || return 0 @@ -1377,10 +1385,8 @@ _python_run_check_deps() { # A convenience wrapper for has_version() with verbose output and better # defaults for use in python_check_deps(). # -# The wrapper accepts EAPI 7+-style -b/-d/-r options to indicate -# the root to perform the lookup on. Unlike has_version, the default -# is -b. In EAPI 6, -b and -d are translated to --host-root -# for compatibility. +# The wrapper accepts -b/-d/-r options to indicate the root to perform +# the lookup on. Unlike has_version, the default is -b. # # The wrapper accepts multiple package specifications. For the check # to succeed, *all* specified atoms must match. @@ -1395,14 +1401,6 @@ python_has_version() { ;; esac - if [[ ${EAPI} == 6 ]]; then - if [[ ${root_arg} == -r ]]; then - root_arg=() - else - root_arg=( --host-root ) - fi - fi - local pkg for pkg; do ebegin " ${pkg}" @@ -1413,5 +1411,4 @@ python_has_version() { return 0 } -_PYTHON_UTILS_R1=1 fi diff --git a/sdk_container/src/third_party/portage-stable/eclass/waf-utils.eclass b/sdk_container/src/third_party/portage-stable/eclass/waf-utils.eclass index 411b19fcb7..1be02bbea3 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/waf-utils.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/waf-utils.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: waf-utils.eclass @@ -8,27 +8,35 @@ # Original Author: Gilles Dartiguelongue <eva@gentoo.org> # Various improvements based on cmake-utils.eclass: Tomáš Chvátal <scarabeus@gentoo.org> # Proper prefix support: Jonathan Callen <jcallen@gentoo.org> -# @SUPPORTED_EAPIS: 6 7 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: common ebuild functions for waf-based packages # @DESCRIPTION: # The waf-utils eclass contains functions that make creating ebuild for # waf-based packages much easier. # Its main features are support of common portage default settings. -inherit multilib toolchain-funcs multiprocessing - -case ${EAPI:-0} in - 6|7) EXPORT_FUNCTIONS src_configure src_compile src_install ;; - *) die "EAPI=${EAPI} is not supported" ;; +case ${EAPI} in + 7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -# @ECLASS-VARIABLE: WAF_VERBOSE +if [[ ! ${_WAF_UTILS_ECLASS} ]]; then +_WAF_UTILS_ECLASS=1 + +inherit multilib toolchain-funcs multiprocessing + +# @ECLASS_VARIABLE: WAF_VERBOSE # @USER_VARIABLE # @DESCRIPTION: # Set to OFF to disable verbose messages during compilation # this is _not_ meant to be set in ebuilds : ${WAF_VERBOSE:=ON} +# @ECLASS_VARIABLE: WAF_BINARY +# @DESCRIPTION: +# Eclass can use different waf executable. Usually it is located +# in "${S}/waf". + # @FUNCTION: waf-utils_src_configure # @DESCRIPTION: # General function for configuring with waf. @@ -36,7 +44,7 @@ waf-utils_src_configure() { debug-print-function ${FUNCNAME} "$@" local fail - if [[ ! ${_PYTHON_ANY_R1} && ! ${_PYTHON_SINGLE_R1} && ! ${_PYTHON_R1} ]]; then + if [[ ! ${_PYTHON_ANY_R1_ECLASS} && ! ${_PYTHON_SINGLE_R1_ECLASS} && ! ${_PYTHON_R1_ECLASS} ]]; then eerror "Using waf-utils.eclass without any python-r1 suite eclass is not supported." eerror "Please make sure to configure and inherit appropriate -r1 eclass." eerror "For more information and examples, please see:" @@ -46,9 +54,9 @@ waf-utils_src_configure() { if [[ ! ${EPYTHON} ]]; then eerror "EPYTHON is unset while calling waf-utils. This most likely means that" eerror "the ebuild did not call the appropriate eclass function before calling waf." - if [[ ${_PYTHON_ANY_R1} ]]; then + if [[ ${_PYTHON_ANY_R1_ECLASS} ]]; then eerror "Please ensure that python-any-r1_pkg_setup is called in pkg_setup()." - elif [[ ${_PYTHON_SINGLE_R1} ]]; then + elif [[ ${_PYTHON_SINGLE_R1_ECLASS} ]]; then eerror "Please ensure that python-single-r1_pkg_setup is called in pkg_setup()." else # python-r1 eerror "Please ensure that python_setup is called before waf-utils_src_configure()," @@ -69,9 +77,6 @@ waf-utils_src_configure() { [[ ${fail} ]] && die "Invalid use of waf-utils.eclass" - # @ECLASS-VARIABLE: WAF_BINARY - # @DESCRIPTION: - # Eclass can use different waf executable. Usually it is located in "${S}/waf". : ${WAF_BINARY:="${S}/waf"} local conf_args=() @@ -86,17 +91,23 @@ waf-utils_src_configure() { if [[ ${waf_help} == *--libdir* ]]; then conf_args+=( --libdir="${EPREFIX}/usr/$(get_libdir)" ) fi + if [[ ${waf_help} == *--mandir* ]]; then + conf_args+=( --mandir="${EPREFIX}"/usr/share/man ) + fi tc-export AR CC CPP CXX RANLIB local CMD=( + PYTHONHASHSEED=1 CCFLAGS="${CFLAGS}" LINKFLAGS="${CFLAGS} ${LDFLAGS}" PKGCONFIG="$(tc-getPKG_CONFIG)" "${WAF_BINARY}" + "--jobs=1" "--prefix=${EPREFIX}/usr" "${conf_args[@]}" "${@}" + ${EXTRA_ECONF} configure ) @@ -112,6 +123,8 @@ waf-utils_src_compile() { local _mywafconfig [[ ${WAF_VERBOSE} == ON ]] && _mywafconfig="--verbose" + export PYTHONHASHSEED=1 + local jobs="--jobs=$(makeopts_jobs)" echo "\"${WAF_BINARY}\" build ${_mywafconfig} ${jobs} ${*}" "${WAF_BINARY}" ${_mywafconfig} ${jobs} "${@}" || die "build failed" @@ -123,9 +136,15 @@ waf-utils_src_compile() { waf-utils_src_install() { debug-print-function ${FUNCNAME} "$@" - echo "\"${WAF_BINARY}\" --destdir=\"${D}\" ${*} install" - "${WAF_BINARY}" --destdir="${D}" "${@}" install || die "Make install failed" + export PYTHONHASHSEED=1 + + echo "\"${WAF_BINARY}\" --jobs=1 --destdir=\"${D}\" ${*} install" + "${WAF_BINARY}" --jobs=1 --destdir="${D}" "${@}" install || die "Make install failed" # Manual document installation einstalldocs } + +fi + +EXPORT_FUNCTIONS src_configure src_compile src_install diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/findutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/findutils/Manifest index 4c41ac69db..48148583bc 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/findutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/findutils/Manifest @@ -1 +1,2 @@ -DIST findutils-4.8.0.tar.xz 1983096 BLAKE2B e1f030ef11c252d33e92bf58dca20a6dd681938aad74b1bbd2bf64a0d175d64c8edac1edce71d13379e04a27e47ffa6099e105bb731957cf5247ffe01d856538 SHA512 eaa2da304dbeb2cd659b9210ac37da1bde4cd665c12a818eca98541c5ed5cba1050641fc0c39c0a446a5a7a87a8d654df0e0e6b0cee21752ea485188c9f1071e +DIST findutils-4.9.0.tar.xz 2046252 BLAKE2B 3ada8903fc552ad2e580a7b631a4b9d941935b3f4231029564c6f2b7b10ba6f2244e2de57f6d79268c5e0481a193f64edbbae637e7a51ae6f495e3eefabf52c9 SHA512 ba4844f4403de0148ad14b46a3dbefd5a721f6257c864bf41a6789b11705408524751c627420b15a52af95564d8e5b52f0978474f640a62ab86a41d20cf14be9 +DIST findutils-4.9.0.tar.xz.sig 488 BLAKE2B 7aab47ccb1351f08be03e781332b79d6778ff0d5d7959adf75fa8eab11325ee9971c89972338edfb58daac7f702891a1a5dd8379a703ccfa601e6b99db588197 SHA512 b8e0b5471242912a20b9e468fa27b7f27339af5f7be8918173105262dee0152183bf4cf516844d348b206a694e028490d5d3b190f3aed8c698ba5444941f8dfc diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.8.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.8.0.ebuild deleted file mode 100644 index 9e47fcc652..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.8.0.ebuild +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7..9} ) - -inherit flag-o-matic python-any-r1 - -DESCRIPTION="GNU utilities for finding files" -HOMEPAGE="https://www.gnu.org/software/findutils/" -SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" - -LICENSE="GPL-3+" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="nls selinux static test" -RESTRICT="!test? ( test )" - -RDEPEND="selinux? ( sys-libs/libselinux ) - nls? ( virtual/libintl )" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) -" -BDEPEND=" - nls? ( sys-devel/gettext ) -" - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -src_prepare() { - # Don't build or install locate because it conflicts with mlocate, - # which is a secure version of locate. See bug 18729 - sed \ - -e '/^SUBDIRS/s@locate@@' \ - -e '/^built_programs/s@ frcode locate updatedb@@' \ - -i Makefile.in || die - - default -} - -src_configure() { - if use static; then - append-flags -pthread - append-ldflags -static - fi - - if [[ ${CHOST} == *-darwin* ]] ; then - # https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00050.html - # https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00051.html - append-cppflags '-D__nonnull\(X\)=' - fi - - program_prefix=$(usex userland_GNU '' g) - local myeconfargs=( - --with-packager="Gentoo" - --with-packager-version="${PVR}" - --with-packager-bug-reports="https://bugs.gentoo.org/" - --program-prefix=${program_prefix} - $(use_enable nls) - $(use_with selinux) - --libexecdir='$(libdir)'/find - ) - econf "${myeconfargs[@]}" -} - -src_compile() { - # We don't build locate, but the docs want a file in there. - emake -C locate dblocation.texi - default -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.8.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.9.0-r2.ebuild similarity index 56% rename from sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.8.0-r1.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.9.0-r2.ebuild index 659a7bb983..29285eb548 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.8.0-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/findutils/findutils-4.9.0-r2.ebuild @@ -1,29 +1,35 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="7" +EAPI=8 -PYTHON_COMPAT=( python3_{7..9} ) - -inherit flag-o-matic python-any-r1 +PYTHON_COMPAT=( python3_{9..11} ) +VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/findutils.asc +inherit flag-o-matic python-any-r1 verify-sig DESCRIPTION="GNU utilities for finding files" HOMEPAGE="https://www.gnu.org/software/findutils/" SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" +SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )" LICENSE="GPL-3+" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" IUSE="nls selinux static test" RESTRICT="!test? ( test )" -RDEPEND="selinux? ( sys-libs/libselinux ) - nls? ( virtual/libintl )" -DEPEND="${RDEPEND} - test? ( ${PYTHON_DEPS} ) +RDEPEND=" + selinux? ( sys-libs/libselinux ) + nls? ( virtual/libintl ) " +DEPEND="${RDEPEND}" BDEPEND=" nls? ( sys-devel/gettext ) + test? ( + ${PYTHON_DEPS} + dev-util/dejagnu + ) + verify-sig? ( sec-keys/openpgp-keys-findutils ) " pkg_setup() { @@ -42,35 +48,50 @@ src_prepare() { } src_configure() { - append-lfs-flags #471102 - append-cppflags -D_TIME_BITS=64 - if use static; then append-flags -pthread append-ldflags -static fi + append-lfs-flags + if [[ ${CHOST} == *-darwin* ]] ; then # https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00050.html # https://lists.gnu.org/archive/html/bug-findutils/2021-01/msg00051.html append-cppflags '-D__nonnull\(X\)=' fi - program_prefix=$(usex userland_GNU '' g) local myeconfargs=( --with-packager="Gentoo" --with-packager-version="${PVR}" --with-packager-bug-reports="https://bugs.gentoo.org/" - --program-prefix=${program_prefix} $(use_enable nls) $(use_with selinux) --libexecdir='$(libdir)'/find + # rename to gfind, gxargs for better BSD compatibility + --program-prefix=g ) econf "${myeconfargs[@]}" } +src_test() { + local -x SANDBOX_PREDICT=${SANDBOX_PREDICT} + addpredict / + default +} + src_compile() { # We don't build locate, but the docs want a file in there. emake -C locate dblocation.texi default } + +src_install() { + default + + # symlink to the standard names + dosym gfind /usr/bin/find + dosym gxargs /usr/bin/xargs + dosym gfind.1 /usr/share/man/man1/find.1 + dosym gxargs.1 /usr/share/man/man1/xargs.1 +}