diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2023-06-14 08:17:28 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2023-06-14 08:17:28 +0000 |
| commit | 4876afda8bd2a2ff7739c35d2217e076f969b700 (patch) | |
| tree | 5d3aa7f305cca311eb5135d2e7ffbfa065082d83 /dev-python | |
| parent | 26cb790d5c3144747fa0bf0ee13fc2c41728f304 (diff) | |
| download | baldeagleos-repo-4876afda8bd2a2ff7739c35d2217e076f969b700.tar.gz baldeagleos-repo-4876afda8bd2a2ff7739c35d2217e076f969b700.tar.xz baldeagleos-repo-4876afda8bd2a2ff7739c35d2217e076f969b700.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
28 files changed, 947 insertions, 100 deletions
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index dd0050c01b97..1408e78fe672 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -2,3 +2,4 @@ DIST boto3-1.26.142.gh.tar.gz 655602 BLAKE2B e9d5671308e71bb43a97953407f4aba5b78 DIST boto3-1.26.146.gh.tar.gz 658035 BLAKE2B 29104a4ebd16ca8b2a0631bb747ed8b5af9fd6a5c86927937e6fc3ded14857c5244dc3ae4db1aec880f845b32d505edb1ef652a29f9f4d48f8a935a3ff239dbd SHA512 910c49bfdca0f39e089eab50ca24f9cfa3c75cae8c33d53155f0df2dd4c6ae1729dc235bfb3f5880cd50bdeeb60327490bf2372ca2cc14600d24dc90b51d6120 DIST boto3-1.26.151.gh.tar.gz 661732 BLAKE2B 8adc42757d828414dd4bde9f460bc9fd6781131de5c8a5648fd1b6888ad4ff656db4075aeb2855493823290c5239ea6364aedd531197206c540b126bd466c379 SHA512 51359a351ed023de6b7c84e6d3e2bd5fc28f1ddc39e71af61bc6880002ed9478150e87e4237032d0ff9110792fcfbc09a62ee23f89d7d417730a88abccda0517 DIST boto3-1.26.152.gh.tar.gz 662874 BLAKE2B 31866c0c3244cdb868fadaf985410e5577d8d75f37387ee44f6ce879ae06c282a4e85e262da4bab3e588918b126110c10b5a64bf7764f076baf495a4382cd225 SHA512 3d496da055172bbc840a3a6f8bd7df6f24bbb1f2f5dbacbbc0e337d4bd15d1355b9fd2e5dbb9e611aa1e415d11dc32bd0b61428a0d0ce7e2d55bb143a0cf1491 +DIST boto3-1.26.153.gh.tar.gz 663859 BLAKE2B 6c5a04fcaa6dde09a09552c2687a2ad1a780ce703cc60eda84c2fa6ad9061dd5f0a4aa0c8f7a7d15f73da2abd9f28d12f8f3d4f859a552cc355bde16f9b306aa SHA512 70117de2475d82f4bb94be2033b7ba18447290f767334d3ea11c60807619d76846003868439f1d025b396df12b91e126f4935f7438d649ca2ee7d629f0a499f4 diff --git a/dev-python/boto3/boto3-1.26.153.ebuild b/dev-python/boto3/boto3-1.26.153.ebuild new file mode 100644 index 000000000000..03c610b184f7 --- /dev/null +++ b/dev-python/boto3/boto3-1.26.153.ebuild @@ -0,0 +1,66 @@ +# 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_{7,8,9,10,11} ) + +inherit distutils-r1 multiprocessing + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +LICENSE="Apache-2.0" +SLOT="0" + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/boto/boto3" + inherit git-r3 + BOTOCORE_PV=${PV} +else + SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + " + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + + # botocore is x.(y+3).z + BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 3)).$(ver_cut 3-)" +fi + +RDEPEND=" + >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # do not rely on bundled deps in botocore (sic!) + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_python_prepare_all +} + +python_test() { + epytest tests/{functional,unit} -n "$(makeopts_jobs)" +} diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest index 405f805924ea..378dd84b3ab9 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -2,3 +2,4 @@ DIST botocore-1.29.142.gh.tar.gz 11528069 BLAKE2B 860a5ab68d26424702006b221e62e2 DIST botocore-1.29.146.gh.tar.gz 11553866 BLAKE2B 7b5b060480de459af9045be8724272fb876c8663b39b1a1ea3575cee83d233dc4e04735682f7eac9299ae0219a5995ddd3379d75c6d2e1bece565e2294b3cc23 SHA512 e786137deaac49fa9db7c8c4df1ff8be195dd400432fbb2e6a23608181161234fa5c3a81a293b4ae1133d1a40e0341b3a081f0d845672e8d0c604fdffc2bc1b5 DIST botocore-1.29.151.gh.tar.gz 11618833 BLAKE2B cac8007e6177c029b97e288c244668657da6b20d3ea1b4e5b1b93e65bf7dec1206c5bccdc70094e14b02a3937a10f12868a3ea9b85cf6fbcb6e7a6c71155170a SHA512 960a5a62e467a3057e89f1f7d2700b67a1aff442b85a7b89b7da6a403deb2d706e9d6297392ef74a5569d90cd3123fa0474d40f378f0756012d88665c0214aa4 DIST botocore-1.29.152.gh.tar.gz 11624895 BLAKE2B f6b8596548ab8ff5cbf401d98ebf90cd0425f0363f9be1b71f58649a98dd6c69a859deb80467621bcdc5c15ebe151df7960880ebc013d5834d5310e80a89e948 SHA512 f51f8e00e61ed51d39ec9e51a08cf0f57d29f5e1d4e77460cf28ed296f062cf9df2b5761a30d8a78b6bc4ca8a971032150929cb84147d099e45f8e0112a717e5 +DIST botocore-1.29.153.gh.tar.gz 11665559 BLAKE2B 82a51ba87753e4f241776652f846db39e5d3748997c635af960dfa389786f3abe3b622f2415abba1aaef81d12aee8b7197f1dea9e71a34e6fc18e1712a79eed5 SHA512 84f774eae433b8efecbc4ccf4990435cfa2f9a5fa1a6d29d94bbc57a75b6f3fd4c0b8392672a7d06a00ad7b5f0f4c3fcf66aa893ad655e3a1409083d8731df78 diff --git a/dev-python/botocore/botocore-1.29.153.ebuild b/dev-python/botocore/botocore-1.29.153.ebuild new file mode 100644 index 000000000000..509d06dedf97 --- /dev/null +++ b/dev-python/botocore/botocore-1.29.153.ebuild @@ -0,0 +1,79 @@ +# 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_{7,8,9,10,11} ) + +inherit distutils-r1 multiprocessing + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +LICENSE="Apache-2.0" +SLOT="0" + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/boto/botocore" + inherit git-r3 +else + SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + " + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +RDEPEND=" + dev-python/six[${PYTHON_USEDEP}] + <dev-python/jmespath-2[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + # fails on unrelated warnings + tests/unit/test_client.py::TestAutoGeneratedClient::test_BOTO_DISABLE_COMMONNAME + tests/unit/test_client.py::TestClientErrors::test_BOTO_DISABLE_COMMONNAME + # TODO + tests/functional/test_credentials.py::SSOSessionTest::test_token_chosen_from_provider + # urllib3-2 compatibility, mock relies on implementation details + tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_continue_no_response_from_server + tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_continue_returned + tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_continue_sends_307 + tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_sends_connection_header + tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_handles_expect_100_with_different_reason_phrase + tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_state_reset_on_connection_close + ) + + epytest tests/{functional,unit} -n "$(makeopts_jobs)" +} diff --git a/dev-python/btrfs/Manifest b/dev-python/btrfs/Manifest new file mode 100644 index 000000000000..8c584ff7f6ff --- /dev/null +++ b/dev-python/btrfs/Manifest @@ -0,0 +1 @@ +DIST btrfs-13.gh.tar.gz 93110 BLAKE2B 286e5d1d9aa66ce5072f2fe144b2da6bbcde65dd90eb21efe1eb69b9aaa3230d76e8b8baffcfd269ce5d53e1004b5fc6c5546125bc1a5c26413ba8abc66f068a SHA512 5117b9c6542fe191eccbed56a15bb5d8eadc2d3c0edd986a3e1a33d0b63f58c3db5e7f6d234c43a83d1cc74eea3e106c5882a92926c3087601edc36e6672721f diff --git a/dev-python/btrfs/btrfs-13.ebuild b/dev-python/btrfs/btrfs-13.ebuild new file mode 100644 index 000000000000..fd8fc18aa724 --- /dev/null +++ b/dev-python/btrfs/btrfs-13.ebuild @@ -0,0 +1,39 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{7,8,9,10,11} ) + +inherit distutils-r1 + +DESCRIPTION="Python module to inspect btrfs filesystems" +HOMEPAGE="https://github.com/knorrie/python-btrfs" +SRC_URI="https://github.com/knorrie/python-${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="LGPL-3" +SLOT="0" +KEYWORDS="~amd64" +IUSE="examples" + +S="${WORKDIR}/python-${P}" + +PATCHES=( + "${FILESDIR}"/${PV}-001-docs-do-not-monkey-patch-for-sphinx-4.patch + "${FILESDIR}"/${PV}-002-show_file_csum-fix-vaddr-computation.patch + "${FILESDIR}"/${PV}-003-ioctl-fix-documentation-error-in-FeatureFlags.patch + "${FILESDIR}"/${PV}-004-add-Block-Group-Tree.patch + "${FILESDIR}"/${PV}-005-ctree-FileSystem-add-block_groups-function.patch + "${FILESDIR}"/${PV}-006-btrfs-search-metadata-use-FileSystem-block_groups.patch +) + +python_install_all() { + if use examples; then + # skip symlink meant for development + rm examples/btrfs + dodoc -r examples + fi + + distutils-r1_python_install_all +} diff --git a/dev-python/btrfs/files/13-001-docs-do-not-monkey-patch-for-sphinx-4.patch b/dev-python/btrfs/files/13-001-docs-do-not-monkey-patch-for-sphinx-4.patch new file mode 100644 index 000000000000..f74d1502aa66 --- /dev/null +++ b/dev-python/btrfs/files/13-001-docs-do-not-monkey-patch-for-sphinx-4.patch @@ -0,0 +1,146 @@ + +Patch from: +https://github.com/knorrie/python-btrfs/commit/892bc3d8882d62bf91df5de9a11569b6cffec3cd + +From 892bc3d8882d62bf91df5de9a11569b6cffec3cd Mon Sep 17 00:00:00 2001 +From: Hans van Kranenburg <hans@knorrie.org> +Date: Sun, 8 Aug 2021 16:40:41 +0200 +Subject: [PATCH] docs: don't monkey patch for sphinx >= 4 + +There's a really long existing bug in sphinx that causes it to generate +cross references in places where it really should not: + https://github.com/sphinx-doc/sphinx/issues/2549 + +In docs/source/conf.py there's a monkey patch for this, from line 363 +and further. + +It looks like a fix for this was implemented in v4: + https://github.com/sphinx-doc/sphinx/pull/8638/commits + + -$ git tag --contains 918086b5590763663c1627578085e528f1358384 + v4.0.0 + [...] + +The function that is replaced while applying the workaround has been +changed recently, causing breakage (TypeError: patched_make_field() got +an unexpected keyword argument 'inliner'). + + -$ git tag --contains 4534d2d1a5755c8cbc9ef4327eab7e34a85a7de8 + v4.1.0 + [...] + +So, combining this information, it seems that when the major version +number of the sphinx lib being used is >= 4, the monkey patch part +should be skipped. + +Fixes: https://github.com/knorrie/python-btrfs/issues/31 +--- a/docs/source/conf.py ++++ b/docs/source/conf.py +@@ -359,54 +359,56 @@ def get_version(): + + autodoc_member_order = 'bysource' + +- +-from docutils import nodes +-from sphinx.util.docfields import TypedField +-from sphinx import addnodes +- +- +-def patched_make_field(self, +- types, # type: Dict[unicode, List[nodes.Node]] +- domain, # type: unicode +- items, # type: Tuple +- env=None, # type: BuildEnvironment +- ): +- # type: (...) -> nodes.field +- def handle_item(fieldarg, content): +- # type: (unicode, unicode) -> nodes.paragraph +- par = nodes.paragraph() +- # Adding the next line, and taking out the one after should prevent +- # ivars from getting incorrect cross-references. +- par += addnodes.literal_strong('', fieldarg) +- #par.extend(self.make_xrefs(self.rolename, domain, fieldarg, +- # addnodes.literal_strong, env=env)) +- if fieldarg in types: +- par += nodes.Text(' (') +- # NOTE: using .pop() here to prevent a single type node to be +- # inserted twice into the doctree, which leads to +- # inconsistencies later when references are resolved +- fieldtype = types.pop(fieldarg) +- if len(fieldtype) == 1 and isinstance(fieldtype[0], nodes.Text): +- typename = u''.join(n.astext() for n in fieldtype) +- par.extend(self.make_xrefs(self.typerolename, domain, typename, +- addnodes.literal_emphasis, env=env)) +- else: +- par += fieldtype +- par += nodes.Text(')') +- par += nodes.Text(' -- ') +- par += content +- return par +- +- fieldname = nodes.field_name('', self.label) +- if len(items) == 1 and self.can_collapse: +- fieldarg, content = items[0] +- bodynode = handle_item(fieldarg, content) +- else: +- bodynode = self.list_type() +- for fieldarg, content in items: +- bodynode += nodes.list_item('', handle_item(fieldarg, content)) +- fieldbody = nodes.field_body('', bodynode) +- return nodes.field('', fieldname, fieldbody) +- +- +-TypedField.make_field = patched_make_field ++import sphinx ++ ++if int(sphinx.__version__.split('.')[0]) < 4: ++ from docutils import nodes ++ from sphinx.util.docfields import TypedField ++ from sphinx import addnodes ++ ++ ++ def patched_make_field(self, ++ types, # type: Dict[unicode, List[nodes.Node]] ++ domain, # type: unicode ++ items, # type: Tuple ++ env=None, # type: BuildEnvironment ++ ): ++ # type: (...) -> nodes.field ++ def handle_item(fieldarg, content): ++ # type: (unicode, unicode) -> nodes.paragraph ++ par = nodes.paragraph() ++ # Adding the next line, and taking out the one after should prevent ++ # ivars from getting incorrect cross-references. ++ par += addnodes.literal_strong('', fieldarg) ++ #par.extend(self.make_xrefs(self.rolename, domain, fieldarg, ++ # addnodes.literal_strong, env=env)) ++ if fieldarg in types: ++ par += nodes.Text(' (') ++ # NOTE: using .pop() here to prevent a single type node to be ++ # inserted twice into the doctree, which leads to ++ # inconsistencies later when references are resolved ++ fieldtype = types.pop(fieldarg) ++ if len(fieldtype) == 1 and isinstance(fieldtype[0], nodes.Text): ++ typename = u''.join(n.astext() for n in fieldtype) ++ par.extend(self.make_xrefs(self.typerolename, domain, typename, ++ addnodes.literal_emphasis, env=env)) ++ else: ++ par += fieldtype ++ par += nodes.Text(')') ++ par += nodes.Text(' -- ') ++ par += content ++ return par ++ ++ fieldname = nodes.field_name('', self.label) ++ if len(items) == 1 and self.can_collapse: ++ fieldarg, content = items[0] ++ bodynode = handle_item(fieldarg, content) ++ else: ++ bodynode = self.list_type() ++ for fieldarg, content in items: ++ bodynode += nodes.list_item('', handle_item(fieldarg, content)) ++ fieldbody = nodes.field_body('', bodynode) ++ return nodes.field('', fieldname, fieldbody) ++ ++ ++ TypedField.make_field = patched_make_field diff --git a/dev-python/btrfs/files/13-002-show_file_csum-fix-vaddr-computation.patch b/dev-python/btrfs/files/13-002-show_file_csum-fix-vaddr-computation.patch new file mode 100644 index 000000000000..dcf81c7566de --- /dev/null +++ b/dev-python/btrfs/files/13-002-show_file_csum-fix-vaddr-computation.patch @@ -0,0 +1,27 @@ + +Patch from: +https://github.com/knorrie/python-btrfs/commit/8ebe99f77b5e4da38d8e9322bb5a7c4688c98b4a + +From 8ebe99f77b5e4da38d8e9322bb5a7c4688c98b4a Mon Sep 17 00:00:00 2001 +From: Cebtenzzre <cebtenzzre@gmail.com> +Date: Sun, 28 Nov 2021 14:46:39 -0500 +Subject: [PATCH] examples/show_file_csum: Fix vaddr computation + +extent.logical_offset is relative to the start of the file, whereas +extent.offset is relative to the start of the extent data on disk. +--- a/examples/show_file_csum.py ++++ b/examples/show_file_csum.py +@@ -90,11 +90,11 @@ def first_regular_file_extent(inum, tree): + "inside a data extent at vaddr {}.".format( + extent.logical_offset, extent.num_bytes, extent.offset, extent.disk_bytenr)) + +-vaddr = extent.disk_bytenr + extent.logical_offset ++vaddr = extent.disk_bytenr + extent.offset + + wraprint("Now, we first look up the checksum value for one block ({} bytes) " + "of data at vaddr {} ({} + {}).".format( +- fs.sectorsize, vaddr, extent.disk_bytenr, extent.logical_offset)) ++ fs.sectorsize, vaddr, extent.disk_bytenr, extent.offset)) + wraprint("If we're lucky, the checksum tree has a key at {}. " + "If not, we have to try searching back a bit to find the csum object that " + "holds information about our data block. Searching back is done in a very clumsy " diff --git a/dev-python/btrfs/files/13-003-ioctl-fix-documentation-error-in-FeatureFlags.patch b/dev-python/btrfs/files/13-003-ioctl-fix-documentation-error-in-FeatureFlags.patch new file mode 100644 index 000000000000..24403089bd70 --- /dev/null +++ b/dev-python/btrfs/files/13-003-ioctl-fix-documentation-error-in-FeatureFlags.patch @@ -0,0 +1,21 @@ + +Patch from: +https://github.com/knorrie/python-btrfs/commit/9f1698ce16b6ae15bf7b3f9f414e9f08dd052b79 + +From 9f1698ce16b6ae15bf7b3f9f414e9f08dd052b79 Mon Sep 17 00:00:00 2001 +From: Hans van Kranenburg <hans@knorrie.org> +Date: Sun, 21 May 2023 17:44:15 +0200 +Subject: [PATCH] ioctl: Fix documentation error in FeatureFlags + +The free_space_tree flag is located in compat_ro_flags. +--- a/btrfs/ioctl.py ++++ b/btrfs/ioctl.py +@@ -1410,7 +1410,7 @@ class FeatureFlags(object): + incompat_flags: mixed_backref|default_subvol|compress_lzo|big_metadata|extended_iref + >>> features.incompat_flags & btrfs.ioctl.FEATURE_INCOMPAT_MIXED_GROUPS + 0 +- >>> features.incompat_flags & btrfs.ioctl.FEATURE_COMPAT_RO_FREE_SPACE_TREE ++ >>> features.compat_ro_flags & btrfs.ioctl.FEATURE_COMPAT_RO_FREE_SPACE_TREE + 1 + + .. note:: diff --git a/dev-python/btrfs/files/13-004-add-Block-Group-Tree.patch b/dev-python/btrfs/files/13-004-add-Block-Group-Tree.patch new file mode 100644 index 000000000000..8e21581237bc --- /dev/null +++ b/dev-python/btrfs/files/13-004-add-Block-Group-Tree.patch @@ -0,0 +1,110 @@ + +Patch from: +https://github.com/knorrie/python-btrfs/commit/7d8dca5bf1211843d8fd5c02b118afddaa53bee8 + +From 7d8dca5bf1211843d8fd5c02b118afddaa53bee8 Mon Sep 17 00:00:00 2001 +From: Hans van Kranenburg <hans@knorrie.org> +Date: Sun, 21 May 2023 17:46:06 +0200 +Subject: [PATCH] WIP ctree,ioctl,utils: Add Block Group Tree + +When the block_group_tree feature is enabled on a filesystem, we have to +look up Block Group metadata items in the new Block Group Tree, instead +of the Extent Tree, where they always were located before. + +WIP: We don't want to call the get_features ioctl *every* time we look +up 1 block group object, but we also cannot just cache the result of it, +since some feature flags can change while the fs is mounted. + +So, this needs some extra work in the features department first to make +this more nice. +--- a/btrfs/ctree.py ++++ b/btrfs/ctree.py +@@ -91,6 +91,7 @@ def _struct_format(s): + QUOTA_TREE_OBJECTID = 8 #: Quota tree + UUID_TREE_OBJECTID = 9 #: Subvolume UUID tree + FREE_SPACE_TREE_OBJECTID = 10 #: Free space tree ++BLOCK_GROUP_TREE_OBJECTID = 11 #: Block group tree + + DEV_STATS_OBJECTID = 0 #: Object ID of device statistics in the Device tree. + BALANCE_OBJECTID = ULL(-4) #: Object ID to store balance status. (-4) +@@ -346,6 +347,7 @@ def _qgroup_objectid(level, subvid): + QUOTA_TREE_OBJECTID: 'QUOTA_TREE', + UUID_TREE_OBJECTID: 'UUID_TREE', + FREE_SPACE_TREE_OBJECTID: 'FREE_SPACE_TREE', ++ BLOCK_GROUP_TREE_OBJECTID: 'BLOCK_GROUP_TREE', + BALANCE_OBJECTID: 'BALANCE', + ORPHAN_OBJECTID: 'ORPHAN', + TREE_LOG_OBJECTID: 'TREE_LOG', +@@ -765,6 +767,11 @@ def __init__(self, path): + self.fsid = _fs_info.fsid + self.nodesize = _fs_info.nodesize + self.sectorsize = _fs_info.sectorsize ++ # TEMP cached feature flag for block_group_tree TEMP ++ _features = self.features() ++ self._block_group_tree = self.features().compat_ro_flags & \ ++ btrfs.ioctl.FEATURE_COMPAT_RO_BLOCK_GROUP_TREE != 0 ++ # TEMP cached feature flag for block_group_tree TEMP + + def __enter__(self): + return self +@@ -870,7 +877,10 @@ def block_group(self, vaddr, length=None): + :raises: :class:`ItemNotFoundError` if no Block Group Item can be found + at the address. + """ +- tree = EXTENT_TREE_OBJECTID ++ if not self._block_group_tree: ++ tree = EXTENT_TREE_OBJECTID ++ else: ++ tree = BLOCK_GROUP_TREE_OBJECTID + min_offset = length if length is not None else 0 + max_offset = length if length is not None else ULLONG_MAX + min_key = Key(vaddr, BLOCK_GROUP_ITEM_KEY, min_offset) +@@ -1240,11 +1250,14 @@ class BlockGroupItem(ItemData): + The `Block Group` has a 1 to 1 relationship with a `Chunk` and tracks some + usage information about a range of virtual address space. + +- * Tree: `EXTENT_TREE_OBJECTID` (2) ++ * Tree: `EXTENT_TREE_OBJECTID` (2) or `BLOCK_GROUP_TREE_OBJECTID` (11) + * Key objectid: Virtual address. + * Key type: `BLOCK_GROUP_ITEM_KEY` (192) + * Key offset: Block Group length. + ++ If the block_group_tree feature is enabled on the filesystem, these items ++ can be found inside the Block Group Tree instead of the Extent Tree. ++ + :ivar int vaddr: Virtual address where the Bock Group starts (taken from + the objectid field of the item key). + :ivar int length: Block Group length in bytes (taken from the offset field +--- a/btrfs/ioctl.py ++++ b/btrfs/ioctl.py +@@ -1325,10 +1325,12 @@ def _compat_flags_str(flags): + + FEATURE_COMPAT_RO_FREE_SPACE_TREE = 1 << 0 + FEATURE_COMPAT_RO_FREE_SPACE_TREE_VALID = 1 << 1 ++FEATURE_COMPAT_RO_BLOCK_GROUP_TREE = 1 << 3 + + _feature_compat_ro_str_map = { + FEATURE_COMPAT_RO_FREE_SPACE_TREE: 'free_space_tree', + FEATURE_COMPAT_RO_FREE_SPACE_TREE_VALID: 'free_space_tree_valid', ++ FEATURE_COMPAT_RO_BLOCK_GROUP_TREE : 'block_group_tree', + } + + +@@ -1383,6 +1385,7 @@ class FeatureFlags(object): + + - FEATURE_COMPAT_RO_FREE_SPACE_TREE + - FEATURE_COMPAT_RO_FREE_SPACE_TREE_VALID ++ - FEATURE_COMPAT_RO_BLOCK_GROUP_TREE + + Known incompat_flags (available as attribute of this module) are: + +--- a/btrfs/utils.py ++++ b/btrfs/utils.py +@@ -436,6 +436,7 @@ def embedded_text_for_str(text): + 'quota': btrfs.ctree.QUOTA_TREE_OBJECTID, + 'uuid': btrfs.ctree.UUID_TREE_OBJECTID, + 'free_space': btrfs.ctree.FREE_SPACE_TREE_OBJECTID, ++ 'block_group': btrfs.ctree.BLOCK_GROUP_TREE_OBJECTID, + 'tree_log': btrfs.ctree.TREE_LOG_OBJECTID, + 'tree_log_fixup': btrfs.ctree.TREE_LOG_FIXUP_OBJECTID, + 'tree_reloc': btrfs.ctree.TREE_RELOC_OBJECTID, diff --git a/dev-python/btrfs/files/13-005-ctree-FileSystem-add-block_groups-function.patch b/dev-python/btrfs/files/13-005-ctree-FileSystem-add-block_groups-function.patch new file mode 100644 index 000000000000..a6aae613a59d --- /dev/null +++ b/dev-python/btrfs/files/13-005-ctree-FileSystem-add-block_groups-function.patch @@ -0,0 +1,58 @@ + +Patch from: +https://github.com/knorrie/python-btrfs/commit/be867c10e30b7d8e4d3cfd939a433cc19f362966 + +From be867c10e30b7d8e4d3cfd939a433cc19f362966 Mon Sep 17 00:00:00 2001 +From: Hans van Kranenburg <hans@knorrie.org> +Date: Sun, 21 May 2023 18:40:28 +0200 +Subject: [PATCH] WIP ctree: FileSystem: add block_groups function + +In the past, I did not really want to add this helper function, since +it's not just translating some function parameters to another function +call, but, to get all Block Group objects, we needed to search the Chunk +tree and get all of them individually. So, to make it more explicit to +the user of the library that it was a bit weird inefficient process, I +let the user do that little dance. + +Now, with the new Block Group Tree, we can actually just to a cheap +lookup of a Block Group range! So, well, let's add the convenience +function now, and let it handle both the old and new case. + +Note that the difference in behaviour between error handling for looking +up a range or a single items stays the same. block_groups(...) will +return an iterator which has no objects to produce, and block_group(...) +will throw the ItemNotFoundError. +--- a/btrfs/ctree.py ++++ b/btrfs/ctree.py +@@ -866,6 +866,31 @@ def dev_extents(self, min_devid=1, max_devid=ULLONG_MAX): + for header, data in btrfs.ioctl.search_v2(self.fd, tree, min_key, max_key): + yield DevExtent(header, data) + ++ def block_groups(self, min_vaddr=0, max_vaddr=ULLONG_MAX, nr_items=None): ++ """ ++ :param int min_vaddr: Lowest virtual address to search for. ++ :param int max_vaddr: Highest virtual address to search for. ++ :param int nr_items: Maximum amount of items to return. Defaults to no limit. ++ :returns: Block Group items from the Extent Tree or Block Group Tree ++ :rtype: Iterator[:class:`~btrfs.ctree.BlockGroupItem`] ++ """ ++ if not self._block_group_tree: ++ for chunk in self.chunks(min_vaddr, max_vaddr, nr_items): ++ try: ++ yield self.block_group(chunk.vaddr, chunk.length) ++ except btrfs.ctree.ItemNotFoundError: ++ # This is simply to prevent the program from aborting when a block ++ # group is removed in between doing the chunks lookup and the block ++ # group item lookup. ++ pass ++ else: ++ tree = BLOCK_GROUP_TREE_OBJECTID ++ min_key = Key(min_vaddr, BLOCK_GROUP_ITEM_KEY, 0) ++ max_key = Key(max_vaddr, BLOCK_GROUP_ITEM_KEY, ULLONG_MAX) ++ for header, data in btrfs.ioctl.search_v2(self.fd, tree, min_key, max_key, ++ nr_items=nr_items): ++ yield BlockGroupItem(header, data) ++ + def block_group(self, vaddr, length=None): + """ + :param int vaddr: Starting virtual address of the block group. diff --git a/dev-python/btrfs/files/13-006-btrfs-search-metadata-use-FileSystem-block_groups.patch b/dev-python/btrfs/files/13-006-btrfs-search-metadata-use-FileSystem-block_groups.patch new file mode 100644 index 000000000000..286282f73822 --- /dev/null +++ b/dev-python/btrfs/files/13-006-btrfs-search-metadata-use-FileSystem-block_groups.patch @@ -0,0 +1,30 @@ + +Patch from: +https://github.com/knorrie/python-btrfs/commit/59c8daca3a05f86001b1dc36b2ab2e5961bf7bc0 + +From 59c8daca3a05f86001b1dc36b2ab2e5961bf7bc0 Mon Sep 17 00:00:00 2001 +From: Hans van Kranenburg <hans@knorrie.org> +Date: Sun, 21 May 2023 18:48:55 +0200 +Subject: [PATCH] btrfs-search-metadata: use FileSystem block_groups + +Now that we have a helper for looking up Block Groups, let's use it, so +that it can deal with Block Groups in either Extent or Block Group Tree +automagically. +--- a/bin/btrfs-search-metadata ++++ b/bin/btrfs-search-metadata +@@ -37,14 +37,7 @@ def get_chunks(fs, **kwargs): + + + def get_block_groups(fs, **kwargs): +- for chunk in fs.chunks(): +- try: +- yield fs.block_group(chunk.vaddr, chunk.length) +- except btrfs.ctree.ItemNotFoundError: +- # This is simply to prevent the program from aborting when a block +- # group is removed in between doing the chunks lookup and the block +- # group item lookup. +- pass ++ return fs.block_groups() + + + def get_dev_extents(fs, **kwargs): diff --git a/dev-python/btrfs/metadata.xml b/dev-python/btrfs/metadata.xml new file mode 100644 index 000000000000..68f705d5ef56 --- /dev/null +++ b/dev-python/btrfs/metadata.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>holger@applied-asynchrony.com</email> + <name>Holger Hoffstätte</name> + </maintainer> + <maintainer type="project"> + <email>proxy-maint@gentoo.org</email> + <name>Proxy Maintainers</name> + </maintainer> + + <origin>gentoo-staging</origin> +</pkgmetadata>
\ No newline at end of file diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest index 312fd082616e..c335b47e0ea8 100644 --- a/dev-python/cfn-lint/Manifest +++ b/dev-python/cfn-lint/Manifest @@ -1,3 +1,4 @@ DIST cfn-lint-0.77.5.tar.gz 3513226 BLAKE2B edff62682027d87fc4f0934aba83ca1cbd83773fbf85246eecfe1d1908b8ba0f6df413b2dbc8976770f7eefaec78bde1cd7017ed36ffac849687436364a42f2d SHA512 e80231e8539735d0a114c6de81f9c52714a1886dbeb070b78bba3c9dd2798399bbb6eb41b3917b5c826b4d3d571f2d9996a5eeaebd7a48a9b774135fb0966372 DIST cfn-lint-0.77.6.tar.gz 3554363 BLAKE2B abd496cdb72e1032c92a6489da12a4ffb4f83bba994067f9e2d333e55a13ea22d07db880dd3acca208f9b8328c17fe98540cec2847dac32ad87b2662aa0047e4 SHA512 b36c781dbd3294d6f2cfe43f617832170e47c9c9502845a551e6a9263e28dc6de99c77abd998699a2fcb6f08535daff615b17072c3ad1fe9c10853890a71989f DIST cfn-lint-0.77.7.tar.gz 3554332 BLAKE2B b669b9f97523933eb5549f7b2d67a132aef2236301b24094a0b74e9198d49121d4ec173c99d74b554b77eee2765b4ceb97126f2ccfab121393bc68e34cfb8147 SHA512 124ab4b96963f4971a25535852290ee71b5eed82e85a4101b3aa0469213b1006bfe8ae3d384f1acf236a0fa9915a24999b00f31f0d6ddbedbdaba123bfbb823b +DIST cfn-lint-0.77.8.tar.gz 3578363 BLAKE2B 33fbc0dd76a025425453bf39da0cd1c9ffc15b057735e2add0a54fe387377824839ab34fb37216db4fe0cc05f60878b4ac828aceecd888d510612d9c44d8473f SHA512 7fc71965d33df29557de996e2ba0e911e681b5d220e69346a26448c1e04f3cd40f7e17b933cde695ad5aa6170d46981834efa19103e50d6690b4d476d13f82ba diff --git a/dev-python/cfn-lint/cfn-lint-0.77.8.ebuild b/dev-python/cfn-lint/cfn-lint-0.77.8.ebuild new file mode 100644 index 000000000000..fd044b24f9ef --- /dev/null +++ b/dev-python/cfn-lint/cfn-lint-0.77.8.ebuild @@ -0,0 +1,64 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{7,8,9,10,11} ) + +inherit distutils-r1 pypi + +DESCRIPTION="CloudFormation Linter" +HOMEPAGE=" + https://github.com/aws-cloudformation/cfn-lint/ + https://pypi.org/project/cfn-lint/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/aws-sam-translator-1.68.0[${PYTHON_USEDEP}] + dev-python/jsonpatch[${PYTHON_USEDEP}] + >=dev-python/jschema_to_python-1.2.3[${PYTHON_USEDEP}] + >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}] + dev-python/junit-xml[${PYTHON_USEDEP}] + <dev-python/networkx-4[${PYTHON_USEDEP}] + >dev-python/pyyaml-5.4[${PYTHON_USEDEP}] + >=dev-python/requests-2.15.0[${PYTHON_USEDEP}] + dev-python/regex[${PYTHON_USEDEP}] + >=dev-python/sarif_om-1.0.4[${PYTHON_USEDEP}] + >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +src_prepare() { + # unpin the deps + sed -e 's:~=[0-9.]*::' -i setup.py || die + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # TODO + test/unit/module/test_template.py::TestTemplate::test_build_graph + # requires git repo + test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs + # Internet + test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter + test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3 + # TODO: it looks as if AWS_DEFAULT_REGION didn't work + test/unit/module/core/test_run_cli.py::TestCli::test_bad_config + test/unit/module/core/test_run_cli.py::TestCli::test_override_parameters + test/unit/module/core/test_run_cli.py::TestCli::test_positional_template_parameters + test/unit/module/core/test_run_cli.py::TestCli::test_template_config + ) + + # from tox.ini + local -x AWS_DEFAULT_REGION=us-east-1 + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} diff --git a/dev-python/clang-python/clang-python-16.0.6.9999.ebuild b/dev-python/clang-python/clang-python-16.0.6.9999.ebuild deleted file mode 100644 index f37802f5c2d7..000000000000 --- a/dev-python/clang-python/clang-python-16.0.6.9999.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{7,8,9,10,11} ) -inherit llvm.org python-r1 - -DESCRIPTION="Python bindings for sys-devel/clang" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="0" -KEYWORDS="" -IUSE="test" -RESTRICT="!test? ( test )" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -# The module is opening libclang.so directly, and doing some blasphemy -# on top of it. -DEPEND=" - >=sys-devel/clang-${PV}:* - !sys-devel/llvm:0[clang(-),python(-)] - !sys-devel/clang:0[python(-)] -" -RDEPEND=" - ${DEPEND} - ${PYTHON_DEPS} -" -BDEPEND=" - ${PYTHON_DEPS} - test? ( - sys-devel/clang:${LLVM_MAJOR} - ) -" - -LLVM_COMPONENTS=( clang/bindings/python ) -llvm.org_set_globals - -python_test() { - # tests rely on results from a specific clang version, so override - # the search path - local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir) - local -x CLANG_NO_DEFAULT_CONFIG=1 - "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}" -} - -src_test() { - python_foreach_impl python_test -} - -src_install() { - python_foreach_impl python_domodule clang -} diff --git a/dev-python/contourpy/Manifest b/dev-python/contourpy/Manifest index a2d531ec61a7..c59d847716eb 100644 --- a/dev-python/contourpy/Manifest +++ b/dev-python/contourpy/Manifest @@ -1 +1,2 @@ DIST contourpy-1.0.7.gh.tar.gz 13357940 BLAKE2B 740214d68eb95c2d80dfb4008fbf82ae1bbd7135476a7f1a45863e2fd88331c959e80dd56afde67789e95325fe4613a6404c24d4deafebacfabbdebc0b199dfe SHA512 64edcfc911b3d7af9b422058d1f595c05d64f7fca8511ea199d30fa52854aee53a7c7dd95e2f47964f57e7764ce6b7b05c8ccee5ed0309eb5daa822d488ce0ff +DIST contourpy-1.1.0.gh.tar.gz 13413711 BLAKE2B 020bf7f63dbe304e71b66249cdfa86047598a3f8352657f7c179bc068869bf7659fb7c821749a0be33a8a04ec02dc642ac7a9ed14f5fd73d4a1e9f20c3606ee2 SHA512 aeb60db039aa14aed29a31dcf6091708daf7e65589964dd7682dc28e085d584103abb872e607685408eaefd4947adeba966c9a0d93cb1f827805189e498c67d8 diff --git a/dev-python/contourpy/contourpy-1.1.0.ebuild b/dev-python/contourpy/contourpy-1.1.0.ebuild new file mode 100644 index 000000000000..4000ca8db338 --- /dev/null +++ b/dev-python/contourpy/contourpy-1.1.0.ebuild @@ -0,0 +1,47 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=meson-python +PYTHON_COMPAT=( python3_{7,8,9,10,11} ) + +inherit distutils-r1 + +DESCRIPTION="Python library for calculating contours in 2D quadrilateral grids" +HOMEPAGE=" + https://pypi.org/project/contourpy/ + https://github.com/contourpy/contourpy/ +" +SRC_URI=" + https://github.com/contourpy/contourpy/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + >=dev-python/numpy-1.16[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/pybind11-2.6[${PYTHON_USEDEP}] + test? ( + dev-python/matplotlib[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/wurlitzer[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_IGNORE=( + # linters + tests/test_codebase.py + ) + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} diff --git a/dev-python/google-auth/Manifest b/dev-python/google-auth/Manifest index ece7dc22db47..7d797b35a71a 100644 --- a/dev-python/google-auth/Manifest +++ b/dev-python/google-auth/Manifest @@ -1,2 +1,3 @@ DIST google-auth-2.18.1.tar.gz 224714 BLAKE2B 2fa63ed18d4dfa4940c93e5f3fb099a6892a16148e5161c3e52980cdee80b7b153a60c005bd3d1d856476f85678b88315d3f4b639f693d292abbf8133dee9397 SHA512 34e53a1c0cf42ab600281d815f259bb252987f163925e357dc2e636c945fd4b74c1f4168bf7d90a6e352fe1d7343767b68bf94fdbb1bc90a92c7067b0e2f2f8f DIST google-auth-2.19.1.tar.gz 230290 BLAKE2B c7f76e1bd936d4d76c81e19fbf6bb50dfe700666d8eb234f762253547fd670d1d26a97a7fe4457bdb719712d32e28e3c8f9adc82c475ee6830f5fd2af994bb3a SHA512 8a8106abb1a0966254caa2e568fe9a9c887601b19e5309f4d43e1b07f3e3280ad358cf8999e34719d6f23473b263d128a2d0321f0ff184c4e188b0b5cf88a6ee +DIST google-auth-2.20.0.tar.gz 229669 BLAKE2B 547cb99cb72a4a5b224fdfff2bf156effe1cce5d7b4316b16530b1a3bbe50ab24dc54520fce3206fb2cea3fde1ca0c35f7bf5920e5128a5ed1bed13883fc75e5 SHA512 e13471f4452bd5c69c2ca9d1ff145431b160805e4ab2d3a70c35cad78c6e3e4f4bc789dfe99f55a0e60e5f335f9983529eabbfb0fc50794b62dfa7eeb70882b1 diff --git a/dev-python/google-auth/files/google-auth-2.20.0-urllib3-2.patch b/dev-python/google-auth/files/google-auth-2.20.0-urllib3-2.patch new file mode 100644 index 000000000000..791edeed09cf --- /dev/null +++ b/dev-python/google-auth/files/google-auth-2.20.0-urllib3-2.patch @@ -0,0 +1,68 @@ +From 9ed006d02d7c9de3e6898ee819648c2fd3367c1d Mon Sep 17 00:00:00 2001 +From: Daniel Garcia Moreno <daniel.garcia@suse.com> +Date: Wed, 10 May 2023 09:18:57 +0200 +Subject: [PATCH] Support urllib3 >= 2.0.0 + +The urllib3.request.RequestMethods has been moved to +urllib3._request_methods.RequestMethods. + +This patch changes the usage to continue working with the latest +release, but now it's a "private" class in a "private" module, so maybe +it's worth to start to think about updating this code to use the public +API. + +https://urllib3.readthedocs.io/en/stable/changelog.html#removed +--- + google/auth/transport/urllib3.py | 11 ++++++----- + setup.py | 2 +- + 2 files changed, 7 insertions(+), 6 deletions(-) + +diff --git a/google/auth/transport/urllib3.py b/google/auth/transport/urllib3.py +index 4abc26b52..f1dd35320 100644 +--- a/google/auth/transport/urllib3.py ++++ b/google/auth/transport/urllib3.py +@@ -95,8 +95,8 @@ class Request(transport.Request): + credentials.refresh(request) + + Args: +- http (urllib3.request.RequestMethods): An instance of any urllib3 +- class that implements :class:`~urllib3.request.RequestMethods`, ++ http (urllib3._request_methods.RequestMethods): An instance of any urllib3 ++ class that implements :class:`~urllib3._request_methods.RequestMethods`, + usually :class:`urllib3.PoolManager`. + + .. automethod:: __call__ +@@ -184,7 +184,7 @@ def _make_mutual_tls_http(cert, key): + return http + + +-class AuthorizedHttp(urllib3.request.RequestMethods): ++class AuthorizedHttp(urllib3._request_methods.RequestMethods): + """A urllib3 HTTP class with credentials. + + This class is used to perform requests to API endpoints that require +@@ -197,8 +197,9 @@ class AuthorizedHttp(urllib3.request.RequestMethods): + response = authed_http.request( + 'GET', 'https://www.googleapis.com/storage/v1/b') + +- This class implements :class:`urllib3.request.RequestMethods` and can be +- used just like any other :class:`urllib3.PoolManager`. ++ This class implements ++ :class:`urllib3._request_methods.RequestMethods` and can be used ++ just like any other :class:`urllib3.PoolManager`. + + The underlying :meth:`urlopen` implementation handles adding the + credentials' headers to the request and refreshing credentials as needed. +diff --git a/setup.py b/setup.py +index e45512a02..cfb3b504f 100644 +--- a/setup.py ++++ b/setup.py +@@ -29,7 +29,7 @@ + # install enum34 to support 2.7. enum34 only works up to python version 3.3. + 'enum34>=1.1.10; python_version < "3.4"', + "six>=1.9.0", +- "urllib3<2.0", ++ "urllib3>=2.0", + ) + + extras = { diff --git a/dev-python/google-auth/google-auth-2.20.0.ebuild b/dev-python/google-auth/google-auth-2.20.0.ebuild new file mode 100644 index 000000000000..20b132312687 --- /dev/null +++ b/dev-python/google-auth/google-auth-2.20.0.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{7,8,9,10,11} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Google Authentication Library" +HOMEPAGE=" + https://github.com/googleapis/google-auth-library-python/ + https://pypi.org/project/google-auth/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" + +RDEPEND=" + <dev-python/cachetools-6.0.0[${PYTHON_USEDEP}] + >=dev-python/pyasn1-0.1.7[${PYTHON_USEDEP}] + >=dev-python/pyasn1-modules-0.2.1[${PYTHON_USEDEP}] + >=dev-python/rsa-3.1.4[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] + !dev-python/namespace-google +" +BDEPEND=" + test? ( + dev-python/cryptography[${PYTHON_USEDEP}] + dev-python/flask[${PYTHON_USEDEP}] + dev-python/freezegun[${PYTHON_USEDEP}] + dev-python/grpcio[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/moto[${PYTHON_USEDEP}] + dev-python/pyopenssl[${PYTHON_USEDEP}] + dev-python/pytest-localserver[${PYTHON_USEDEP}] + dev-python/pyu2f[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/responses[${PYTHON_USEDEP}] + >=dev-python/urllib3-2[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +PATCHES=( + # https://github.com/googleapis/google-auth-library-python/pull/1290 + "${FILESDIR}"/google-auth-2.20.0-urllib3-2.patch +) + +EPYTEST_IGNORE=( + # these are compatibility tests with oauth2client + # disable them to unblock removal of that package + tests/test__oauth2client.py +) + +python_compile() { + distutils-r1_python_compile + find "${BUILD_DIR}" -name '*.pth' -delete || die +} diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest index a11d7c268c91..e9da2ac43cac 100644 --- a/dev-python/langdetect/Manifest +++ b/dev-python/langdetect/Manifest @@ -1 +1,3 @@ DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db +EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48 +MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45 diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml index ddb5b0f1787e..020e07f2a3dd 100644 --- a/dev-python/langdetect/metadata.xml +++ b/dev-python/langdetect/metadata.xml @@ -2,9 +2,11 @@ <!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="person"> - <email>cyber+gentoo@sysrq.in</email> - <name>Anna</name> + <email>marcin.deranek@slonko.net</email> + <name>Marcin Deranek</name> </maintainer> - - <origin>gentoo-guru-overlay</origin> + <upstream> + <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to> + </upstream> + <origin>slonko-overlay</origin> </pkgmetadata>
\ No newline at end of file diff --git a/dev-python/lit/lit-16.0.6.9999.ebuild b/dev-python/lit/lit-16.0.6.9999.ebuild deleted file mode 100644 index 0e39fac626c6..000000000000 --- a/dev-python/lit/lit-16.0.6.9999.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# 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_{7,8,9,10,11} ) - -inherit distutils-r1 llvm.org - -DESCRIPTION="A stand-alone install of the LLVM suite testing tool" -HOMEPAGE="https://llvm.org/" - -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" -SLOT="0" -KEYWORDS="" -IUSE="test" -RESTRICT="!test? ( test )" - -# Tests require 'FileCheck' and 'not' utilities (from llvm) -BDEPEND=" - test? ( - dev-python/psutil[${PYTHON_USEDEP}] - sys-devel/llvm - ) -" - -LLVM_COMPONENTS=( llvm/utils/lit ) -llvm.org_set_globals - -# TODO: move the manpage generation here (from sys-devel/llvm) - -src_prepare() { - cd "${WORKDIR}" || die - distutils-r1_src_prepare -} - -python_test() { - local -x LIT_PRESERVES_TMP=1 - local litflags=$(get_lit_flags) - ./lit.py ${litflags//;/ } tests || die -} diff --git a/dev-python/myst-parser/Manifest b/dev-python/myst-parser/Manifest index d84d8effec89..e38139a2230b 100644 --- a/dev-python/myst-parser/Manifest +++ b/dev-python/myst-parser/Manifest @@ -1 +1,2 @@ DIST MyST-Parser-1.0.0.gh.tar.gz 813309 BLAKE2B 03bc080e0a5103b9fb239cfbea991012b1fb5f411a5a6a121b2113ad7172a1130bf8b77d20ce84a8aade4148ffba36788eb95b15ecd28c53ed321226ae8600f2 SHA512 1f0ecffd2c84b0db5d251dbc771457cdf52a8e6e540d3acde563115af24ce30d43e01223f172b3e72b2c81862052bb05ea5d7c6091f933afbda0a859d1b86e83 +DIST MyST-Parser-2.0.0.gh.tar.gz 815453 BLAKE2B 8f5dd823c3c79d843b45a7a4819d5677b51a12f78db2c1ce9700eb6faa8c4f0bc167fb1d8cd947e89ffab85aec947ab527b67dc73ef4db97a393f700a4331738 SHA512 c47bdd773565e93c4714d318a70f9a8adab1be6e2a63c23175667fc4afb5da4d66b84e11176782c8202e9fd68883e74d444911ddfb0b91356c2ba07fa65f7ea4 diff --git a/dev-python/myst-parser/myst-parser-2.0.0.ebuild b/dev-python/myst-parser/myst-parser-2.0.0.ebuild new file mode 100644 index 000000000000..1719b6f174d4 --- /dev/null +++ b/dev-python/myst-parser/myst-parser-2.0.0.ebuild @@ -0,0 +1,60 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 ) + +inherit distutils-r1 + +MY_P=MyST-Parser-${PV} +DESCRIPTION="Extended commonmark compliant parser, with bridges to Sphinx" +HOMEPAGE=" + https://github.com/executablebooks/MyST-Parser/ + https://pypi.org/project/myst-parser/ +" +SRC_URI=" + https://github.com/executablebooks/MyST-Parser/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + <dev-python/docutils-0.21[${PYTHON_USEDEP}] + dev-python/jinja[${PYTHON_USEDEP}] + <dev-python/markdown-it-py-4[${PYTHON_USEDEP}] + >=dev-python/markdown-it-py-3.0[${PYTHON_USEDEP}] + <dev-python/mdit-py-plugins-0.5[${PYTHON_USEDEP}] + >=dev-python/mdit-py-plugins-0.4[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + <dev-python/sphinx-8[${PYTHON_USEDEP}] + >=dev-python/sphinx-6[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/beautifulsoup4[${PYTHON_USEDEP}] + <dev-python/linkify-it-py-3[${PYTHON_USEDEP}] + >=dev-python/linkify-it-py-2.0.0[${PYTHON_USEDEP}] + dev-python/pytest-regressions[${PYTHON_USEDEP}] + dev-python/pytest-param-files[${PYTHON_USEDEP}] + dev-python/sphinx-pytest[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=() + + false && [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=( + # bad test relying on exact exception messages + "tests/test_renderers/test_include_directive.py::test_errors[9-Non-existent path:]" + ) + + epytest +} diff --git a/dev-python/phonenumbers/Manifest b/dev-python/phonenumbers/Manifest index f96324e015f4..456db9e94472 100644 --- a/dev-python/phonenumbers/Manifest +++ b/dev-python/phonenumbers/Manifest @@ -1,2 +1,3 @@ DIST python-phonenumbers-8.13.11.gh.tar.gz 4910723 BLAKE2B 270ded8f0c009feb0ffe70bdcec089f400d1ea18ae24e3837b8f3a659657b82fb5912577eba22cb7c28a297dcbb55d402213c576857c514eb08c241af8bc1e4e SHA512 688b5440538cd6d636b645474dff51e4ba9a080708e4d3a9bdd5560701a9effbb26b9a669c632917101ea2e27a6f2ebe1f468fc0a881625ef33a4e30885ae30b DIST python-phonenumbers-8.13.13.gh.tar.gz 4912623 BLAKE2B 7b030b15861150564dbc640d3ee40f8db360b79427d5ca6ebd33ff350cde2505c592455722463e94a609b4487a6908b9a5359059b83a3a4fe4212483bbf9f2fe SHA512 fe2e2aae730b5df6f1b150d45b6e3cb5225327b653243fece186d22b1f4685d796f91c3dc462d3c2239d976b249d4756590f72c8ff4d007826e46b86f0acc36e +DIST python-phonenumbers-8.13.14.gh.tar.gz 4912846 BLAKE2B 0d4bc37280e863a97a4b235db6c8ab2681bf4aac1ec18a7c6f4505ddf0143fd97685772c554e8270f6243e5a80548b0b0005ef27073f7d16f88a56442c0862aa SHA512 c6e07538f6a5c61f2d8d2bbbf26722af3548eff5aadd0b35898ad7eee62be010bca0386494b77cfcdcff414bafdb382d52944996d2b4a539c0ff3a572bf8d675 diff --git a/dev-python/phonenumbers/phonenumbers-8.13.14.ebuild b/dev-python/phonenumbers/phonenumbers-8.13.14.ebuild new file mode 100644 index 000000000000..4ef52501be16 --- /dev/null +++ b/dev-python/phonenumbers/phonenumbers-8.13.14.ebuild @@ -0,0 +1,39 @@ +# 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_{7,8,9,10,11} ) + +inherit distutils-r1 + +MY_P=python-${P} +DESCRIPTION="Python port of Google's libphonenumber" +HOMEPAGE=" + https://github.com/daviddrysdale/python-phonenumbers/ + https://pypi.org/project/phonenumbers/ +" +SRC_URI=" + https://github.com/daviddrysdale/python-phonenumbers/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P}/python + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( + dev-python/protobuf-python[${PYTHON_USEDEP}] + ) +" + +DOCS=( ../README.md ) + +python_test() { + "${EPYTHON}" testwrapper.py -v || die "Tests failed with ${EPYTHON}" +} |
