diff --git a/.bazelignore b/.bazelignore
index 293f292a..755c2e60 100644
--- a/.bazelignore
+++ b/.bazelignore
@@ -1,8 +1,4 @@
-private/examples
-private/tests/override_module_repos/overrider
-private/tests/override_module_repos/overridee
-private/tests/package_aliases
-private/tests/workspace_user
+examples
venv
venv3
.ijwb
diff --git a/.bazelrc b/.bazelrc
index 8739d198..71543fb1 100644
--- a/.bazelrc
+++ b/.bazelrc
@@ -33,6 +33,36 @@ common --noslim_profile --experimental_profile_include_target_label --experiment
common --nolegacy_important_outputs
common --remote_cache_compression
+###############################################################################
+## Lint and type check aspects
+###############################################################################
+
+# Enable black for all targets in the workspace
+build:black --aspects=@rules_venv//python/black:py_black_aspect.bzl%py_black_aspect
+build:black --output_groups=+py_black_checks
+build --@rules_venv//python/black:config=//:pyproject.toml
+
+# Enable isort for all targets in the workspace
+build:isort --aspects=@rules_venv//python/isort:py_isort_aspect.bzl%py_isort_aspect
+build:isort --output_groups=+py_isort_checks
+build --@rules_venv//python/isort:config=//:pyproject.toml
+
+# Enable mypy for all targets in the workspace
+build:mypy --aspects=@rules_venv//python/mypy:py_mypy_aspect.bzl%py_mypy_aspect
+build:mypy --output_groups=+py_mypy_checks
+build --@rules_venv//python/mypy:config=//:pyproject.toml
+
+# Enable pylint for all targets in the workspace
+build:pylint --aspects=@rules_venv//python/pylint:py_pylint_aspect.bzl%py_pylint_aspect
+build:pylint --output_groups=+py_pylint_checks
+build --@rules_venv//python/pylint:config=//:pyproject.toml
+
+# Define a config that enables all linter aspects.
+build:strict --config=black
+build:strict --config=isort
+build:strict --config=mypy
+build:strict --config=pylint
+
# Attempt to import any CI flags
try-import %workspace%/.github/ci.bazelrc
diff --git a/.bcr/presubmit.yml b/.bcr/presubmit.yml
index e134a7e5..3b1cdc80 100644
--- a/.bcr/presubmit.yml
+++ b/.bcr/presubmit.yml
@@ -1,5 +1,5 @@
bcr_test_module:
- module_path: "private/examples/multiplatform_py_test"
+ module_path: "examples/multiplatform_py_test"
matrix:
platform: ["macos_arm64", "ubuntu2004", "windows"]
bazel: [7.x, 8.x, 9.x]
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 873a811c..adc1adb7 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -13,6 +13,9 @@ on:
jobs:
+ # Bazel pins a single interpreter, so this matrix is the only coverage of
+ # `req-compile` running on the other Python versions it claims to support.
+ # Linting, type checking and the Bazel rules are all handled by `bazel-bzlmod`.
build:
strategy:
fail-fast: false
@@ -34,34 +37,9 @@ jobs:
- name: Install dependencies
run: |
pip install -r 3rdparty/requirements.txt --user
- - name: Run mypy
- run: |
- python -m mypy req_compile
- - name: Run pylint
- run: |
- python -m pylint req_compile tests
- name: Test with pytest
run: |
- python -m pytest -v --ignore=private
-
- formatting:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up Python 3.11
- uses: actions/setup-python@v2
- with:
- python-version: "3.11"
- - name: Install dependencies
- run: |
- python -m pip install --upgrade pip
- pip install -r 3rdparty/requirements.txt --user
- - name: Run black
- run: |
- black --check --diff req_compile
- - name: Run isort
- run: |
- isort --check-only req_compile
+ python -m pytest -v tests
bazel-bzlmod:
strategy:
@@ -81,7 +59,7 @@ jobs:
CI_BAZELRC_PATH: .github/ci.bazelrc
- name: Run Tests
run: |
- bazel test //...
+ bazel test --config=strict //...
- name: Perform compilation
run: |
bazel run //3rdparty:requirements_compiler "--" --upgrade
@@ -92,39 +70,37 @@ jobs:
matrix:
platform: ["ubuntu-latest", "macos-14", "windows-latest"]
runs-on: ${{ matrix.platform }}
- name: bazel test multiplatform_py_test --build ${{ matrix.platform }}
+ name: bazel test examples ${{ matrix.platform }}
steps:
- uses: actions/checkout@v2
- - name: Test user repo examples
+ - name: Test example modules
+ shell: bash
run: |
- bazel test //...
- working-directory: private/examples/multiplatform_py_test
- - name: Test module repo overrides
- run: |
- bazel test //...
- working-directory: private/tests/override_module_repos/overrider
+ set -euo pipefail
+ for module in examples/*/MODULE.bazel examples/*/*/MODULE.bazel; do
+ dir="$(dirname "${module}")"
+
+ # Bazel's convenience symlinks point back at a module that was
+ # already visited.
+ if [[ "$(basename "${dir}")" == bazel-* ]]; then
+ continue
+ fi
+
+ # `overridee` deliberately ships an incomplete solution. It only
+ # resolves when `overrider` replaces its repositories, so it is
+ # covered by building that module rather than on its own.
+ if [[ "${dir}" == "examples/override_module_repos/overridee" ]]; then
+ continue
+ fi
+
+ echo "::group::${dir}"
+ (cd "${dir}" && bazel test //...)
+ echo "::endgroup::"
+ done
bazel_lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- - name: Set up Python ${{ matrix.python_version }}
- uses: actions/setup-python@v2
- with:
- python-version: "3.11"
- - name: Install dependencies
- run: |
- python -m pip install --upgrade pip
- pip install -r 3rdparty/requirements.txt --user
- pip install -e .
- - name: Run isort
- run: |
- isort --check-only private
- - name: Run black
- run: |
- black --check --diff private
- - name: Run pylint
- run: |
- python -m pylint private
- name: Run buildifier
run: bazel run //:buildifier.check
diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index aa0f1ed0..6b425ba1 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -37,8 +37,15 @@ jobs:
python-version: 3.11
- name: Build a binary wheel and a source tarball
run: |
- python -m pip install -U setuptools wheel
- python setup.py bdist_wheel sdist
+ bazel build //req_compile:req_compile.whl
+ mkdir -p dist
+ cp "$(bazel cquery --output=files //req_compile:req_compile.whl)" dist/
+
+ # The wheel is built by Bazel but `py_wheel_publisher` only handles
+ # wheels, so the source distribution is still built by setuptools.
+ python -m pip install -U build setuptools twine wheel
+ python -m build --sdist --outdir dist
+
WHEEL_NAME="$(find dist -name '*.whl' -exec basename {} \;)"
echo "WHEEL_NAME=${WHEEL_NAME}" >> $GITHUB_ENV
- name: Detect the current version
@@ -49,7 +56,7 @@ jobs:
echo "release_version=${version}" >> $GITHUB_OUTPUT
- name: Create release artifact
run: |
- tar -czf ${{ github.workspace }}/.github/rules_req_compile.tar.gz --exclude=".git" --exclude=".github" --exclude="scripts" --exclude="dist" --exclude="build" -C ${{ github.workspace }} .
+ tar -czf ${{ github.workspace }}/.github/rules_req_compile.tar.gz --exclude=".git" --exclude=".github" --exclude="scripts" --exclude="dist" --exclude="build" --exclude="bazel-*" -C ${{ github.workspace }} .
sha256="$(shasum --algorithm 256 ${{ github.workspace }}/.github/rules_req_compile.tar.gz | awk '{ print $1 }')"
integrity="sha256-$(echo -n "$sha256" | xxd -r -p | base64)"
echo "ARCHIVE_SHA256=${sha256}" >> $GITHUB_ENV
@@ -87,10 +94,16 @@ jobs:
asset_name: ${{ env.WHEEL_NAME }}
asset_path: ${{ github.workspace }}/dist/${{ env.WHEEL_NAME }}
asset_content_type: application/gzip
- - name: Publish distribution to PyPI
- uses: pypa/gh-action-pypi-publish@master
- with:
- password: ${{ secrets.PYPI_API_TOKEN }}
+ - name: Publish the wheel to PyPI
+ run: bazel run //req_compile:req_compile.publish
+ env:
+ TWINE_USERNAME: __token__
+ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
+ - name: Publish the source distribution to PyPI
+ run: python -m twine upload dist/*.tar.gz
+ env:
+ TWINE_USERNAME: __token__
+ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
bcr-publish:
needs: [release]
diff --git a/.gitignore b/.gitignore
index 9bd16e72..4a9c439c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,7 +14,6 @@ dist
bazel-*
user.bazelrc
/.github/ci.bazelrc
-/private/examples/multiplatform_py_test/bazel-*
# Ignore the module lock for now, since the sdist repo rules incorrectly record the calling
# platform's Python intepreter as the _only_ interprete in the lock.
diff --git a/3rdparty/bazel-requirements.in b/3rdparty/bazel-requirements.in
index 63168d5d..22dfa542 100644
--- a/3rdparty/bazel-requirements.in
+++ b/3rdparty/bazel-requirements.in
@@ -2,3 +2,10 @@
-r ../requirements.in
-r ../test-requirements.in
+
+# The `py_mypy_toolchain` rejects anything older, as pre-2.0 releases re-check
+# every dependency of every target instead of using the cached results.
+mypy >= 2.0
+
+# Required by the `py_wheel_publisher` toolchain used to publish `req-compile`.
+twine
diff --git a/3rdparty/requirements.linux_aarch64.txt b/3rdparty/requirements.linux_aarch64.txt
index e69320a9..da0d0d37 100644
--- a/3rdparty/requirements.linux_aarch64.txt
+++ b/3rdparty/requirements.linux_aarch64.txt
@@ -1,7 +1,7 @@
################################################################################
## AUTOGENERATED: This file is autogenerated by req-compile.
##
-## Python: 3.11.11
+## Python: 3.11.14
## Platform: Linux
##
## To regenerate this file, use the following command:
@@ -16,10 +16,18 @@ appdirs==1.4.4 \
--hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
+ast_serialize==0.11.2 \
+ --hash=sha256:b17869f4ba261a5fa468a753328a548f4dbaf74b4eadae9e28aff66df7f1425b
+ # via mypy (<1.0.0,>=0.6.0)
+ # https://files.pythonhosted.org/packages/d2/1b/8a69ab68f4c1603819f0481d756abdd8caf27cec7f1d77caa71007ebe997/ast_serialize-0.11.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=b17869f4ba261a5fa468a753328a548f4dbaf74b4eadae9e28aff66df7f1425b
astroid==3.3.9 \
--hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
# via pylint (<=3.4.0.dev0,>=3.3.8)
# https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl#sha256=d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
+backports.tarfile==1.2.0 \
+ --hash=sha256:77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
+ # via jaraco.context
+ # https://files.pythonhosted.org/packages/b9/fa/123043af240e49752f1c4bd24da5053b6bd00cad78c2be53c0d1e8b975bc/backports.tarfile-1.2.0-py3-none-any.whl#sha256=77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
black==25.1.0 \
--hash=sha256:95e8176dae143ba9097f351d174fdaf0ccd29efb414b362ae3fd72bf0f710717
# via _main/3rdparty/bazel-requirements.in
@@ -28,6 +36,10 @@ certifi==2025.1.31 \
--hash=sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe
# via requests (>=2017.4.17)
# https://files.pythonhosted.org/packages/38/fc/bce832fd4fd99766c04d1ee0eead6b0ec6486fb100ae5e74c1d91292b982/certifi-2025.1.31-py3-none-any.whl#sha256=ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe
+cffi==2.1.1 \
+ --hash=sha256:3311ed60d36f83378794e1009ac6258bafbf81f7888b4caa7b35a521e3f95813
+ # via cryptography (>=2.0.0)
+ # https://files.pythonhosted.org/packages/ad/66/c19feabb28485b6e0bbaaafa90837a1ef5d302e90f2178bd33f17a49879b/cffi-2.1.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl#sha256=3311ed60d36f83378794e1009ac6258bafbf81f7888b4caa7b35a521e3f95813
charset-normalizer==3.4.1 \
--hash=sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1
# via requests (<4,>=2)
@@ -36,14 +48,30 @@ click==8.1.8 \
--hash=sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2
# via black (>=8.0.0)
# https://files.pythonhosted.org/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl#sha256=63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2
+cryptography==50.0.1 \
+ --hash=sha256:e2ca8fd1b6b4b82a1c4cb02841d0837e3c12336c2e24b520ab8ab3b969733d8f
+ # via SecretStorage (>=2.0)
+ # https://files.pythonhosted.org/packages/39/3b/e96c1ef71edef71057c7e3c3d982ce8fda554e0c52d0cc19c18845cde3eb/cryptography-50.0.1-cp311-abi3-manylinux_2_34_aarch64.whl#sha256=e2ca8fd1b6b4b82a1c4cb02841d0837e3c12336c2e24b520ab8ab3b969733d8f
dill==0.3.9 \
--hash=sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
# via pylint (>=0.3.6)
# https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl#sha256=468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
+docutils==0.23 \
+ --hash=sha256:25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+ # via readme_renderer (>=0.21.2)
+ # https://files.pythonhosted.org/packages/32/91/30151a39f7570f448ed84529390628a651d7f27c87d73c9b887f8189695e/docutils-0.23-py3-none-any.whl#sha256=25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+id==1.6.1 \
+ --hash=sha256:f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
+ # via twine
+ # https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl#sha256=f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
idna==3.10 \
--hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
# via requests (<4,>=2.5)
# https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl#sha256=946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
+importlib_metadata==9.0.1 \
+ --hash=sha256:bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
+ # via keyring (>=4.11.4)
+ # https://files.pythonhosted.org/packages/b3/55/ecca97ae19075f1fac62def77731e7f535e6c1fb8f92ff08160c5e6dade8/importlib_metadata-9.0.1-py3-none-any.whl#sha256=bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
iniconfig==2.1.0 \
--hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760
# via pytest
@@ -54,35 +82,82 @@ isort==6.0.1 \
# _main/3rdparty/bazel-requirements.in
# pylint (!=5.13,<7,>=4.2.5)
# https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl#sha256=2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615
+jaraco.classes==3.4.0 \
+ --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+ # via keyring
+ # https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl#sha256=f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+jaraco.context==6.1.2 \
+ --hash=sha256:bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+ # via keyring
+ # https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl#sha256=bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+jaraco.functools==4.6.0 \
+ --hash=sha256:99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+ # via keyring
+ # https://files.pythonhosted.org/packages/02/36/ecc85bc96c273dc8a11273ed4782272975e6338d4a3e9228621175edf0e3/jaraco_functools-4.6.0-py3-none-any.whl#sha256=99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+jeepney==0.9.0 \
+ --hash=sha256:97e5714520c16fc0a45695e5365a2e11b81ea79bba796e26f9f1d178cb182683
+ # via
+ # keyring (>=0.4.2)
+ # SecretStorage (>=0.6)
+ # https://files.pythonhosted.org/packages/b2/a3/e137168c9c44d18eff0376253da9f1e9234d0239e0ee230d2fee6cea8e55/jeepney-0.9.0-py3-none-any.whl#sha256=97e5714520c16fc0a45695e5365a2e11b81ea79bba796e26f9f1d178cb182683
+keyring==25.7.0 \
+ --hash=sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+ # via twine (>=21.2.0)
+ # https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl#sha256=be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+librt==0.15.0 \
+ --hash=sha256:814ff83a25b5fce8b9c80c4dd803153fb5c5599fc74db9e022466938368957ef
+ # via mypy (>=0.13.0)
+ # https://files.pythonhosted.org/packages/51/87/a162bc5a66a35599dc619ecb215145f4de7d68e886b479b6d12593139f7c/librt-0.15.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl#sha256=814ff83a25b5fce8b9c80c4dd803153fb5c5599fc74db9e022466938368957ef
+markdown-it-py==4.2.0 \
+ --hash=sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
+ # via rich (>=2.2.0)
+ # https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl#sha256=9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
mccabe==0.7.0 \
--hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
# via pylint (<0.8,>=0.6)
# https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
-mypy==1.15.0 \
- --hash=sha256:973500e0774b85d9689715feeffcc980193086551110fd678ebe1f4342fb7c5e
- # via _main/3rdparty/bazel-requirements.in
- # https://files.pythonhosted.org/packages/05/05/a10f9479681e5da09ef2f9426f650d7b550d4bafbef683b69aad1ba87457/mypy-1.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl#sha256=973500e0774b85d9689715feeffcc980193086551110fd678ebe1f4342fb7c5e
+mdurl==0.1.2 \
+ --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+ # via markdown-it-py (~=0.1)
+ # https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl#sha256=84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+more-itertools==11.1.0 \
+ --hash=sha256:4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+ # via
+ # jaraco.classes
+ # jaraco.functools
+ # https://files.pythonhosted.org/packages/e8/3d/1087453384dbde46a8c7f9356eead2c58be8a7bf156bca40243377c85715/more_itertools-11.1.0-py3-none-any.whl#sha256=4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+mypy==2.3.1 \
+ --hash=sha256:f5d716048611e85ca9eefb2e1baa5d73ede389b5820ded260ea27c757d667af8
+ # via _main/3rdparty/bazel-requirements.in (>=2.0)
+ # https://files.pythonhosted.org/packages/53/84/e3cf72f90dce5960871c82551c8fba6da05fc1018f79be41c047bd126bdd/mypy-2.3.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl#sha256=f5d716048611e85ca9eefb2e1baa5d73ede389b5820ded260ea27c757d667af8
mypy-extensions==1.0.0 \
--hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
# via
# black (>=0.4.3)
# mypy (>=1.0.0)
# https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
+nh3==0.3.7 \
+ --hash=sha256:f266d3f1b3647449923a8e406524632220dd5d8b647078dfe45b885d33d10479
+ # via readme_renderer (>=0.2.14)
+ # https://files.pythonhosted.org/packages/07/42/a687e7091928806e514f89fa2666f25ec9bfe0a902fc4402b25e51ce408b/nh3-0.3.7-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=f266d3f1b3647449923a8e406524632220dd5d8b647078dfe45b885d33d10479
overrides==7.7.0 \
--hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
-packaging==24.2 \
- --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
+packaging==26.3 \
+ --hash=sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
# via
# _main/3rdparty/bazel-requirements.in
# black (>=22.0)
# pytest
- # https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl#sha256=09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
-pathspec==0.12.1 \
- --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
- # via black (>=0.9.0)
- # https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
+ # twine (>=26.1)
+ # https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl#sha256=d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
+pathspec==1.1.1 \
+ --hash=sha256:a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
+ # via
+ # black (>=0.9.0)
+ # mypy (>=1.0.0)
+ # https://files.pythonhosted.org/packages/f1/d9/7fb5aa316bc299258e68c73ba3bddbc499654a07f151cba08f6153988714/pathspec-1.1.1-py3-none-any.whl#sha256=a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
platformdirs==4.3.7 \
--hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94
# via
@@ -93,6 +168,16 @@ pluggy==1.5.0 \
--hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
# via pytest (<2,>=1.5)
# https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl#sha256=44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
+pycparser==3.0 \
+ --hash=sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992
+ # via cffi
+ # https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl#sha256=b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992
+Pygments==2.21.0 \
+ --hash=sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
+ # via
+ # readme_renderer (>=2.5.1)
+ # rich (<3.0.0,>=2.13.0)
+ # https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl#sha256=2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
pylint==3.3.6 \
--hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6
# via _main/3rdparty/bazel-requirements.in
@@ -111,16 +196,38 @@ PyYAML==6.0.2 \
--hash=sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c
# via responses
# https://files.pythonhosted.org/packages/ad/0c/c804f5f922a9a6563bab712d8dcc70251e8af811fce4524d57c2c0fd49a4/PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c
+readme_renderer==46.0 \
+ --hash=sha256:d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
+ # via twine (>=35.0)
+ # https://files.pythonhosted.org/packages/4b/72/ac5ca81fe9121fcaa9d828d21017cba00a16a98e4ea5fb60c878f93dda4f/readme_renderer-46.0-py3-none-any.whl#sha256=d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
requests==2.32.3 \
--hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
# via
- # _main/3rdparty/bazel-requirements.in ([security])
+ # _main/3rdparty/bazel-requirements.in
+ # requests-toolbelt (<3.0.0,>=2.0.1)
# responses (<3.0,>=2.30.0)
+ # twine (>=2.20)
# https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl#sha256=70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
+requests-toolbelt==1.0.0 \
+ --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
+ # via twine (!=0.9.0,>=0.8.0)
+ # https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl#sha256=cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
responses==0.25.7 \
--hash=sha256:92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/e4/fc/1d20b64fa90e81e4fa0a34c9b0240a6cfb1326b7e06d18a5432a9917c316/responses-0.25.7-py3-none-any.whl#sha256=92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
+rfc3986==2.0.0 \
+ --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+ # via twine (>=1.4.0)
+ # https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl#sha256=50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+rich==15.0.0 \
+ --hash=sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
+ # via twine (>=14.3.3)
+ # https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl#sha256=33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
+SecretStorage==3.5.0 \
+ --hash=sha256:0ce65888c0725fcb2c5bc0fdb8e5438eece02c523557ea40ce0703c266248137
+ # via keyring (>=3.2)
+ # https://files.pythonhosted.org/packages/b7/46/f5af3402b579fd5e11573ce652019a67074317e18c1935cc0b4ba9b35552/secretstorage-3.5.0-py3-none-any.whl#sha256=0ce65888c0725fcb2c5bc0fdb8e5438eece02c523557ea40ce0703c266248137
setuptools==78.1.0 \
--hash=sha256:3e386e96793c8702ae83d17b853fb93d3e09ef82ec62722e61da5cd22376dcd8
# via
@@ -139,6 +246,10 @@ tomlkit==0.13.2 \
--hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
# via pylint (>=0.10.1)
# https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl#sha256=7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
+twine==7.0.0 \
+ --hash=sha256:b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
+ # via _main/3rdparty/bazel-requirements.in
+ # https://files.pythonhosted.org/packages/96/08/ddcdc06225eaad6de0e48e1002b06d919dbde20582d0662c7af51308e5d6/twine-7.0.0-py3-none-any.whl#sha256=b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
types-appdirs==1.4.3.5 \
--hash=sha256:337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b
# via _main/3rdparty/bazel-requirements.in
@@ -157,18 +268,22 @@ types-toml==0.10.8.20240310 \
# https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d
typing_extensions==4.13.0 \
--hash=sha256:c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
- # via
- # _main/3rdparty/bazel-requirements.in
- # mypy (>=4.6.0)
+ # via mypy (>=4.6.0)
# https://files.pythonhosted.org/packages/e0/86/39b65d676ec5732de17b7e3c476e45bb80ec64eb50737a8dce1a4178aba1/typing_extensions-4.13.0-py3-none-any.whl#sha256=c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
urllib3==2.3.0 \
--hash=sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
# via
+ # id (<3,>=2)
# requests (<3,>=1.21.1)
# responses (<3.0,>=1.25.10)
+ # twine (>=1.26.0)
# types-requests (>=2)
# https://files.pythonhosted.org/packages/c8/19/4ec628951a74043532ca2cf5d97b7b14863931476d117c471e8e2b1eb39f/urllib3-2.3.0-py3-none-any.whl#sha256=1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
wheel==0.45.1 \
--hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl#sha256=708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
+zipp==4.1.0 \
+ --hash=sha256:25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
+ # via importlib_metadata (>=3.20)
+ # https://files.pythonhosted.org/packages/3a/13/547360d81e6d88d58492968ffda9f9542854f11310ee556fef14260cc886/zipp-4.1.0-py3-none-any.whl#sha256=25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
diff --git a/3rdparty/requirements.linux_x86_64.txt b/3rdparty/requirements.linux_x86_64.txt
index d5c85eeb..a0cb427a 100644
--- a/3rdparty/requirements.linux_x86_64.txt
+++ b/3rdparty/requirements.linux_x86_64.txt
@@ -1,7 +1,7 @@
################################################################################
## AUTOGENERATED: This file is autogenerated by req-compile.
##
-## Python: 3.11.11
+## Python: 3.11.14
## Platform: Linux
##
## To regenerate this file, use the following command:
@@ -16,10 +16,18 @@ appdirs==1.4.4 \
--hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
+ast_serialize==0.11.2 \
+ --hash=sha256:a7004ba572f09be34342ccb98dcd4bad5707d3d81adc8cb4c3f685d2a2c51bbc
+ # via mypy (<1.0.0,>=0.6.0)
+ # https://files.pythonhosted.org/packages/04/6f/4c992cd7841ba589fefb14ddc9aff2f6db7f2a615d4074f9ad04115b5ce0/ast_serialize-0.11.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=a7004ba572f09be34342ccb98dcd4bad5707d3d81adc8cb4c3f685d2a2c51bbc
astroid==3.3.9 \
--hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
# via pylint (<=3.4.0.dev0,>=3.3.8)
# https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl#sha256=d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
+backports.tarfile==1.2.0 \
+ --hash=sha256:77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
+ # via jaraco.context
+ # https://files.pythonhosted.org/packages/b9/fa/123043af240e49752f1c4bd24da5053b6bd00cad78c2be53c0d1e8b975bc/backports.tarfile-1.2.0-py3-none-any.whl#sha256=77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
black==25.1.0 \
--hash=sha256:bce2e264d59c91e52d8000d507eb20a9aca4a778731a08cfff7e5ac4a4bb7096
# via _main/3rdparty/bazel-requirements.in
@@ -28,6 +36,10 @@ certifi==2025.1.31 \
--hash=sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe
# via requests (>=2017.4.17)
# https://files.pythonhosted.org/packages/38/fc/bce832fd4fd99766c04d1ee0eead6b0ec6486fb100ae5e74c1d91292b982/certifi-2025.1.31-py3-none-any.whl#sha256=ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe
+cffi==2.1.1 \
+ --hash=sha256:34e261f78cb6ceaaa36f42f2613f4380d94d9c759a9c73c769ee6e0247364632
+ # via cryptography (>=2.0.0)
+ # https://files.pythonhosted.org/packages/f7/a4/4399daaf8f7dfee9d7c3327fdb0426ee041cc63edc358b93911ceb2bfc7a/cffi-2.1.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl#sha256=34e261f78cb6ceaaa36f42f2613f4380d94d9c759a9c73c769ee6e0247364632
charset-normalizer==3.4.1 \
--hash=sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00
# via requests (<4,>=2)
@@ -36,14 +48,30 @@ click==8.1.8 \
--hash=sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2
# via black (>=8.0.0)
# https://files.pythonhosted.org/packages/7e/d4/7ebdbd03970677812aac39c869717059dbb71a4cfc033ca6e5221787892c/click-8.1.8-py3-none-any.whl#sha256=63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2
+cryptography==50.0.1 \
+ --hash=sha256:51afcfceb15597cf2635068e4ac9a56b2abde622edde17f37d85fd7b5306497a
+ # via SecretStorage (>=2.0)
+ # https://files.pythonhosted.org/packages/85/66/6ccca4722987ddedaa7fc9c3f4708af7431f5535666c174350830888c6b7/cryptography-50.0.1-cp311-abi3-manylinux_2_34_x86_64.whl#sha256=51afcfceb15597cf2635068e4ac9a56b2abde622edde17f37d85fd7b5306497a
dill==0.3.9 \
--hash=sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
# via pylint (>=0.3.6)
# https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl#sha256=468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
+docutils==0.23 \
+ --hash=sha256:25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+ # via readme_renderer (>=0.21.2)
+ # https://files.pythonhosted.org/packages/32/91/30151a39f7570f448ed84529390628a651d7f27c87d73c9b887f8189695e/docutils-0.23-py3-none-any.whl#sha256=25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+id==1.6.1 \
+ --hash=sha256:f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
+ # via twine
+ # https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl#sha256=f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
idna==3.10 \
--hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
# via requests (<4,>=2.5)
# https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl#sha256=946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
+importlib_metadata==9.0.1 \
+ --hash=sha256:bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
+ # via keyring (>=4.11.4)
+ # https://files.pythonhosted.org/packages/b3/55/ecca97ae19075f1fac62def77731e7f535e6c1fb8f92ff08160c5e6dade8/importlib_metadata-9.0.1-py3-none-any.whl#sha256=bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
iniconfig==2.1.0 \
--hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760
# via pytest
@@ -54,35 +82,82 @@ isort==6.0.1 \
# _main/3rdparty/bazel-requirements.in
# pylint (!=5.13,<7,>=4.2.5)
# https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl#sha256=2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615
+jaraco.classes==3.4.0 \
+ --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+ # via keyring
+ # https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl#sha256=f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+jaraco.context==6.1.2 \
+ --hash=sha256:bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+ # via keyring
+ # https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl#sha256=bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+jaraco.functools==4.6.0 \
+ --hash=sha256:99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+ # via keyring
+ # https://files.pythonhosted.org/packages/02/36/ecc85bc96c273dc8a11273ed4782272975e6338d4a3e9228621175edf0e3/jaraco_functools-4.6.0-py3-none-any.whl#sha256=99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+jeepney==0.9.0 \
+ --hash=sha256:97e5714520c16fc0a45695e5365a2e11b81ea79bba796e26f9f1d178cb182683
+ # via
+ # keyring (>=0.4.2)
+ # SecretStorage (>=0.6)
+ # https://files.pythonhosted.org/packages/b2/a3/e137168c9c44d18eff0376253da9f1e9234d0239e0ee230d2fee6cea8e55/jeepney-0.9.0-py3-none-any.whl#sha256=97e5714520c16fc0a45695e5365a2e11b81ea79bba796e26f9f1d178cb182683
+keyring==25.7.0 \
+ --hash=sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+ # via twine (>=21.2.0)
+ # https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl#sha256=be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+librt==0.15.0 \
+ --hash=sha256:f779070399f991400fc451719e0ea388eb7de313388bada2c127a35de05f798a
+ # via mypy (>=0.13.0)
+ # https://files.pythonhosted.org/packages/0f/e1/7a65eb5dedb1f00aebd948cdd8e17add48bf066cab3514e9daf84ab45a6c/librt-0.15.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl#sha256=f779070399f991400fc451719e0ea388eb7de313388bada2c127a35de05f798a
+markdown-it-py==4.2.0 \
+ --hash=sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
+ # via rich (>=2.2.0)
+ # https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl#sha256=9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
mccabe==0.7.0 \
--hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
# via pylint (<0.8,>=0.6)
# https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
-mypy==1.15.0 \
- --hash=sha256:5a95fb17c13e29d2d5195869262f8125dfdb5c134dc8d9a9d0aecf7525b10c2c
- # via _main/3rdparty/bazel-requirements.in
- # https://files.pythonhosted.org/packages/e9/9a/1f7d18b30edd57441a6411fcbc0c6869448d1a4bacbaee60656ac0fc29c8/mypy-1.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl#sha256=5a95fb17c13e29d2d5195869262f8125dfdb5c134dc8d9a9d0aecf7525b10c2c
+mdurl==0.1.2 \
+ --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+ # via markdown-it-py (~=0.1)
+ # https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl#sha256=84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+more-itertools==11.1.0 \
+ --hash=sha256:4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+ # via
+ # jaraco.classes
+ # jaraco.functools
+ # https://files.pythonhosted.org/packages/e8/3d/1087453384dbde46a8c7f9356eead2c58be8a7bf156bca40243377c85715/more_itertools-11.1.0-py3-none-any.whl#sha256=4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+mypy==2.3.1 \
+ --hash=sha256:b091a455111214cb5c9d54a57b9618e9a49f9fe2a42e4e1ac86e9d104ed96ce8
+ # via _main/3rdparty/bazel-requirements.in (>=2.0)
+ # https://files.pythonhosted.org/packages/4a/ff/6b97d58aa0f79a5ab9b472db1f6d6df1b11a51d74d0c08ab3760d3a613ba/mypy-2.3.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl#sha256=b091a455111214cb5c9d54a57b9618e9a49f9fe2a42e4e1ac86e9d104ed96ce8
mypy-extensions==1.0.0 \
--hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
# via
# black (>=0.4.3)
# mypy (>=1.0.0)
# https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
+nh3==0.3.7 \
+ --hash=sha256:70f5ac8626e899a4bab0ef74ca2f5bd602f49c7b739e6e5026b4afc6d63dac42
+ # via readme_renderer (>=0.2.14)
+ # https://files.pythonhosted.org/packages/a6/ed/c5510c615dce55b6fcc364aa1838142f938beed64f5e4927490dfcaf4405/nh3-0.3.7-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=70f5ac8626e899a4bab0ef74ca2f5bd602f49c7b739e6e5026b4afc6d63dac42
overrides==7.7.0 \
--hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
-packaging==24.2 \
- --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
+packaging==26.3 \
+ --hash=sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
# via
# _main/3rdparty/bazel-requirements.in
# black (>=22.0)
# pytest
- # https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl#sha256=09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
-pathspec==0.12.1 \
- --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
- # via black (>=0.9.0)
- # https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
+ # twine (>=26.1)
+ # https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl#sha256=d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
+pathspec==1.1.1 \
+ --hash=sha256:a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
+ # via
+ # black (>=0.9.0)
+ # mypy (>=1.0.0)
+ # https://files.pythonhosted.org/packages/f1/d9/7fb5aa316bc299258e68c73ba3bddbc499654a07f151cba08f6153988714/pathspec-1.1.1-py3-none-any.whl#sha256=a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
platformdirs==4.3.7 \
--hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94
# via
@@ -93,6 +168,16 @@ pluggy==1.5.0 \
--hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
# via pytest (<2,>=1.5)
# https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl#sha256=44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
+pycparser==3.0 \
+ --hash=sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992
+ # via cffi
+ # https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl#sha256=b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992
+Pygments==2.21.0 \
+ --hash=sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
+ # via
+ # readme_renderer (>=2.5.1)
+ # rich (<3.0.0,>=2.13.0)
+ # https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl#sha256=2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
pylint==3.3.6 \
--hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6
# via _main/3rdparty/bazel-requirements.in
@@ -111,16 +196,38 @@ PyYAML==6.0.2 \
--hash=sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85
# via responses
# https://files.pythonhosted.org/packages/75/e4/2c27590dfc9992f73aabbeb9241ae20220bd9452df27483b6e56d3975cc5/PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85
+readme_renderer==46.0 \
+ --hash=sha256:d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
+ # via twine (>=35.0)
+ # https://files.pythonhosted.org/packages/4b/72/ac5ca81fe9121fcaa9d828d21017cba00a16a98e4ea5fb60c878f93dda4f/readme_renderer-46.0-py3-none-any.whl#sha256=d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
requests==2.32.3 \
--hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
# via
- # _main/3rdparty/bazel-requirements.in ([security])
+ # _main/3rdparty/bazel-requirements.in
+ # requests-toolbelt (<3.0.0,>=2.0.1)
# responses (<3.0,>=2.30.0)
+ # twine (>=2.20)
# https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl#sha256=70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
+requests-toolbelt==1.0.0 \
+ --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
+ # via twine (!=0.9.0,>=0.8.0)
+ # https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl#sha256=cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
responses==0.25.7 \
--hash=sha256:92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/e4/fc/1d20b64fa90e81e4fa0a34c9b0240a6cfb1326b7e06d18a5432a9917c316/responses-0.25.7-py3-none-any.whl#sha256=92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
+rfc3986==2.0.0 \
+ --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+ # via twine (>=1.4.0)
+ # https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl#sha256=50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+rich==15.0.0 \
+ --hash=sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
+ # via twine (>=14.3.3)
+ # https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl#sha256=33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
+SecretStorage==3.5.0 \
+ --hash=sha256:0ce65888c0725fcb2c5bc0fdb8e5438eece02c523557ea40ce0703c266248137
+ # via keyring (>=3.2)
+ # https://files.pythonhosted.org/packages/b7/46/f5af3402b579fd5e11573ce652019a67074317e18c1935cc0b4ba9b35552/secretstorage-3.5.0-py3-none-any.whl#sha256=0ce65888c0725fcb2c5bc0fdb8e5438eece02c523557ea40ce0703c266248137
setuptools==78.1.0 \
--hash=sha256:3e386e96793c8702ae83d17b853fb93d3e09ef82ec62722e61da5cd22376dcd8
# via
@@ -139,6 +246,10 @@ tomlkit==0.13.2 \
--hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
# via pylint (>=0.10.1)
# https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl#sha256=7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
+twine==7.0.0 \
+ --hash=sha256:b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
+ # via _main/3rdparty/bazel-requirements.in
+ # https://files.pythonhosted.org/packages/96/08/ddcdc06225eaad6de0e48e1002b06d919dbde20582d0662c7af51308e5d6/twine-7.0.0-py3-none-any.whl#sha256=b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
types-appdirs==1.4.3.5 \
--hash=sha256:337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b
# via _main/3rdparty/bazel-requirements.in
@@ -157,18 +268,22 @@ types-toml==0.10.8.20240310 \
# https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d
typing_extensions==4.13.0 \
--hash=sha256:c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
- # via
- # _main/3rdparty/bazel-requirements.in
- # mypy (>=4.6.0)
+ # via mypy (>=4.6.0)
# https://files.pythonhosted.org/packages/e0/86/39b65d676ec5732de17b7e3c476e45bb80ec64eb50737a8dce1a4178aba1/typing_extensions-4.13.0-py3-none-any.whl#sha256=c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
urllib3==2.3.0 \
--hash=sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
# via
+ # id (<3,>=2)
# requests (<3,>=1.21.1)
# responses (<3.0,>=1.25.10)
+ # twine (>=1.26.0)
# types-requests (>=2)
# https://files.pythonhosted.org/packages/c8/19/4ec628951a74043532ca2cf5d97b7b14863931476d117c471e8e2b1eb39f/urllib3-2.3.0-py3-none-any.whl#sha256=1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
wheel==0.45.1 \
--hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl#sha256=708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
+zipp==4.1.0 \
+ --hash=sha256:25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
+ # via importlib_metadata (>=3.20)
+ # https://files.pythonhosted.org/packages/3a/13/547360d81e6d88d58492968ffda9f9542854f11310ee556fef14260cc886/zipp-4.1.0-py3-none-any.whl#sha256=25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
diff --git a/3rdparty/requirements.macos_aarch64.txt b/3rdparty/requirements.macos_aarch64.txt
index 24ba0b76..ecabaa41 100644
--- a/3rdparty/requirements.macos_aarch64.txt
+++ b/3rdparty/requirements.macos_aarch64.txt
@@ -1,7 +1,7 @@
################################################################################
## AUTOGENERATED: This file is autogenerated by req-compile.
##
-## Python: 3.11.11
+## Python: 3.11.14
## Platform: Darwin
##
## To regenerate this file, use the following command:
@@ -16,10 +16,18 @@ appdirs==1.4.4 \
--hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
+ast_serialize==0.11.2 \
+ --hash=sha256:1844ed9a487fb3de7325c52ddb33f2918b66b65cd54d3f8d83d23785ffe99fa4
+ # via mypy (<1.0.0,>=0.6.0)
+ # https://files.pythonhosted.org/packages/9a/7e/8f2ab68bddbe58a66fbbaad87beeae3e7d7edddb17263d1fc423936cf34d/ast_serialize-0.11.2-cp39-abi3-macosx_11_0_arm64.whl#sha256=1844ed9a487fb3de7325c52ddb33f2918b66b65cd54d3f8d83d23785ffe99fa4
astroid==3.3.9 \
--hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
# via pylint (<=3.4.0.dev0,>=3.3.8)
# https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl#sha256=d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
+backports.tarfile==1.2.0 \
+ --hash=sha256:77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
+ # via jaraco.context
+ # https://files.pythonhosted.org/packages/b9/fa/123043af240e49752f1c4bd24da5053b6bd00cad78c2be53c0d1e8b975bc/backports.tarfile-1.2.0-py3-none-any.whl#sha256=77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
black==25.1.0 \
--hash=sha256:96c1c7cd856bba8e20094e36e0f948718dc688dba4a9d78c3adde52b9e6c2299
# via _main/3rdparty/bazel-requirements.in
@@ -40,10 +48,22 @@ dill==0.3.9 \
--hash=sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
# via pylint (>=0.3.6)
# https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl#sha256=468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
+docutils==0.23 \
+ --hash=sha256:25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+ # via readme_renderer (>=0.21.2)
+ # https://files.pythonhosted.org/packages/32/91/30151a39f7570f448ed84529390628a651d7f27c87d73c9b887f8189695e/docutils-0.23-py3-none-any.whl#sha256=25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+id==1.6.1 \
+ --hash=sha256:f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
+ # via twine
+ # https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl#sha256=f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
idna==3.10 \
--hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
# via requests (<4,>=2.5)
# https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl#sha256=946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
+importlib_metadata==9.0.1 \
+ --hash=sha256:bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
+ # via keyring (>=4.11.4)
+ # https://files.pythonhosted.org/packages/b3/55/ecca97ae19075f1fac62def77731e7f535e6c1fb8f92ff08160c5e6dade8/importlib_metadata-9.0.1-py3-none-any.whl#sha256=bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
iniconfig==2.1.0 \
--hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760
# via pytest
@@ -54,35 +74,76 @@ isort==6.0.1 \
# _main/3rdparty/bazel-requirements.in
# pylint (!=5.13,<7,>=4.2.5)
# https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl#sha256=2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615
+jaraco.classes==3.4.0 \
+ --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+ # via keyring
+ # https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl#sha256=f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+jaraco.context==6.1.2 \
+ --hash=sha256:bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+ # via keyring
+ # https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl#sha256=bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+jaraco.functools==4.6.0 \
+ --hash=sha256:99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+ # via keyring
+ # https://files.pythonhosted.org/packages/02/36/ecc85bc96c273dc8a11273ed4782272975e6338d4a3e9228621175edf0e3/jaraco_functools-4.6.0-py3-none-any.whl#sha256=99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+keyring==25.7.0 \
+ --hash=sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+ # via twine (>=21.2.0)
+ # https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl#sha256=be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+librt==0.15.0 \
+ --hash=sha256:c70bc1b602cf59917e8f0c7a2cbc8bcc6fbc14d5486136b00707a79619121d63
+ # via mypy (>=0.13.0)
+ # https://files.pythonhosted.org/packages/e7/1d/8e150b7fc449a1f33c8a760965cc1f43b14fc1577d9d0b50ab2701420e74/librt-0.15.0-cp311-cp311-macosx_11_0_arm64.whl#sha256=c70bc1b602cf59917e8f0c7a2cbc8bcc6fbc14d5486136b00707a79619121d63
+markdown-it-py==4.2.0 \
+ --hash=sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
+ # via rich (>=2.2.0)
+ # https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl#sha256=9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
mccabe==0.7.0 \
--hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
# via pylint (<0.8,>=0.6)
# https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
-mypy==1.15.0 \
- --hash=sha256:2ee2d57e01a7c35de00f4634ba1bbf015185b219e4dc5909e281016df43f5ee5
- # via _main/3rdparty/bazel-requirements.in
- # https://files.pythonhosted.org/packages/e2/90/8dcf506ca1a09b0d17555cc00cd69aee402c203911410136cd716559efe7/mypy-1.15.0-cp311-cp311-macosx_11_0_arm64.whl#sha256=2ee2d57e01a7c35de00f4634ba1bbf015185b219e4dc5909e281016df43f5ee5
+mdurl==0.1.2 \
+ --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+ # via markdown-it-py (~=0.1)
+ # https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl#sha256=84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+more-itertools==11.1.0 \
+ --hash=sha256:4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+ # via
+ # jaraco.classes
+ # jaraco.functools
+ # https://files.pythonhosted.org/packages/e8/3d/1087453384dbde46a8c7f9356eead2c58be8a7bf156bca40243377c85715/more_itertools-11.1.0-py3-none-any.whl#sha256=4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+mypy==2.3.1 \
+ --hash=sha256:94f04929f1c44c35fb0061e912087edaf504acede963a4a7d00680bd089d8531
+ # via _main/3rdparty/bazel-requirements.in (>=2.0)
+ # https://files.pythonhosted.org/packages/a4/be/c624d4241484f37dc62839e177ab607a9b8b3e96f0866544ca99e8e41d51/mypy-2.3.1-cp311-cp311-macosx_11_0_arm64.whl#sha256=94f04929f1c44c35fb0061e912087edaf504acede963a4a7d00680bd089d8531
mypy-extensions==1.0.0 \
--hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
# via
# black (>=0.4.3)
# mypy (>=1.0.0)
# https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
+nh3==0.3.7 \
+ --hash=sha256:6c3aa50eb26e9228238271db9f983cbc3b006dfbfeca2d4dc34c33ddc6ac5ea5
+ # via readme_renderer (>=0.2.14)
+ # https://files.pythonhosted.org/packages/94/0d/c257754bf57f829f307aa226bbe136d3a1356b5a0d08324c7b6bd2a8aacd/nh3-0.3.7-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl#sha256=6c3aa50eb26e9228238271db9f983cbc3b006dfbfeca2d4dc34c33ddc6ac5ea5
overrides==7.7.0 \
--hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
-packaging==24.2 \
- --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
+packaging==26.3 \
+ --hash=sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
# via
# _main/3rdparty/bazel-requirements.in
# black (>=22.0)
# pytest
- # https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl#sha256=09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
-pathspec==0.12.1 \
- --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
- # via black (>=0.9.0)
- # https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
+ # twine (>=26.1)
+ # https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl#sha256=d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
+pathspec==1.1.1 \
+ --hash=sha256:a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
+ # via
+ # black (>=0.9.0)
+ # mypy (>=1.0.0)
+ # https://files.pythonhosted.org/packages/f1/d9/7fb5aa316bc299258e68c73ba3bddbc499654a07f151cba08f6153988714/pathspec-1.1.1-py3-none-any.whl#sha256=a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
platformdirs==4.3.7 \
--hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94
# via
@@ -93,6 +154,12 @@ pluggy==1.5.0 \
--hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
# via pytest (<2,>=1.5)
# https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl#sha256=44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
+Pygments==2.21.0 \
+ --hash=sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
+ # via
+ # readme_renderer (>=2.5.1)
+ # rich (<3.0.0,>=2.13.0)
+ # https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl#sha256=2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
pylint==3.3.6 \
--hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6
# via _main/3rdparty/bazel-requirements.in
@@ -111,16 +178,34 @@ PyYAML==6.0.2 \
--hash=sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee
# via responses
# https://files.pythonhosted.org/packages/8b/62/b9faa998fd185f65c1371643678e4d58254add437edb764a08c5a98fb986/PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl#sha256=1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee
+readme_renderer==46.0 \
+ --hash=sha256:d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
+ # via twine (>=35.0)
+ # https://files.pythonhosted.org/packages/4b/72/ac5ca81fe9121fcaa9d828d21017cba00a16a98e4ea5fb60c878f93dda4f/readme_renderer-46.0-py3-none-any.whl#sha256=d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
requests==2.32.3 \
--hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
# via
- # _main/3rdparty/bazel-requirements.in ([security])
+ # _main/3rdparty/bazel-requirements.in
+ # requests-toolbelt (<3.0.0,>=2.0.1)
# responses (<3.0,>=2.30.0)
+ # twine (>=2.20)
# https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl#sha256=70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
+requests-toolbelt==1.0.0 \
+ --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
+ # via twine (!=0.9.0,>=0.8.0)
+ # https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl#sha256=cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
responses==0.25.7 \
--hash=sha256:92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/e4/fc/1d20b64fa90e81e4fa0a34c9b0240a6cfb1326b7e06d18a5432a9917c316/responses-0.25.7-py3-none-any.whl#sha256=92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
+rfc3986==2.0.0 \
+ --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+ # via twine (>=1.4.0)
+ # https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl#sha256=50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+rich==15.0.0 \
+ --hash=sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
+ # via twine (>=14.3.3)
+ # https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl#sha256=33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
setuptools==78.1.0 \
--hash=sha256:3e386e96793c8702ae83d17b853fb93d3e09ef82ec62722e61da5cd22376dcd8
# via
@@ -139,6 +224,10 @@ tomlkit==0.13.2 \
--hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
# via pylint (>=0.10.1)
# https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl#sha256=7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
+twine==7.0.0 \
+ --hash=sha256:b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
+ # via _main/3rdparty/bazel-requirements.in
+ # https://files.pythonhosted.org/packages/96/08/ddcdc06225eaad6de0e48e1002b06d919dbde20582d0662c7af51308e5d6/twine-7.0.0-py3-none-any.whl#sha256=b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
types-appdirs==1.4.3.5 \
--hash=sha256:337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b
# via _main/3rdparty/bazel-requirements.in
@@ -157,18 +246,22 @@ types-toml==0.10.8.20240310 \
# https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d
typing_extensions==4.13.0 \
--hash=sha256:c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
- # via
- # _main/3rdparty/bazel-requirements.in
- # mypy (>=4.6.0)
+ # via mypy (>=4.6.0)
# https://files.pythonhosted.org/packages/e0/86/39b65d676ec5732de17b7e3c476e45bb80ec64eb50737a8dce1a4178aba1/typing_extensions-4.13.0-py3-none-any.whl#sha256=c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
urllib3==2.3.0 \
--hash=sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
# via
+ # id (<3,>=2)
# requests (<3,>=1.21.1)
# responses (<3.0,>=1.25.10)
+ # twine (>=1.26.0)
# types-requests (>=2)
# https://files.pythonhosted.org/packages/c8/19/4ec628951a74043532ca2cf5d97b7b14863931476d117c471e8e2b1eb39f/urllib3-2.3.0-py3-none-any.whl#sha256=1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
wheel==0.45.1 \
--hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl#sha256=708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
+zipp==4.1.0 \
+ --hash=sha256:25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
+ # via importlib_metadata (>=3.20)
+ # https://files.pythonhosted.org/packages/3a/13/547360d81e6d88d58492968ffda9f9542854f11310ee556fef14260cc886/zipp-4.1.0-py3-none-any.whl#sha256=25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
diff --git a/3rdparty/requirements.macos_x86_64.txt b/3rdparty/requirements.macos_x86_64.txt
index d5ad9ca3..6814e89d 100644
--- a/3rdparty/requirements.macos_x86_64.txt
+++ b/3rdparty/requirements.macos_x86_64.txt
@@ -1,7 +1,7 @@
################################################################################
## AUTOGENERATED: This file is autogenerated by req-compile.
##
-## Python: 3.11.11
+## Python: 3.11.14
## Platform: Darwin
##
## To regenerate this file, use the following command:
@@ -16,10 +16,18 @@ appdirs==1.4.4 \
--hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
+ast_serialize==0.11.2 \
+ --hash=sha256:daadf1c3e0224621607ffe16f1379e4bd372271ed2e1db8a67878f0bab3ef7e4
+ # via mypy (<1.0.0,>=0.6.0)
+ # https://files.pythonhosted.org/packages/b1/54/f67120006fc73a55b6d057d4662d061fbb4eceafce3047c76ca8b382eb11/ast_serialize-0.11.2-cp39-abi3-macosx_10_12_x86_64.whl#sha256=daadf1c3e0224621607ffe16f1379e4bd372271ed2e1db8a67878f0bab3ef7e4
astroid==3.3.9 \
--hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
# via pylint (<=3.4.0.dev0,>=3.3.8)
# https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl#sha256=d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
+backports.tarfile==1.2.0 \
+ --hash=sha256:77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
+ # via jaraco.context
+ # https://files.pythonhosted.org/packages/b9/fa/123043af240e49752f1c4bd24da5053b6bd00cad78c2be53c0d1e8b975bc/backports.tarfile-1.2.0-py3-none-any.whl#sha256=77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
black==25.1.0 \
--hash=sha256:a39337598244de4bae26475f77dda852ea00a93bd4c728e09eacd827ec929df0
# via _main/3rdparty/bazel-requirements.in
@@ -40,10 +48,22 @@ dill==0.3.9 \
--hash=sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
# via pylint (>=0.3.6)
# https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl#sha256=468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
+docutils==0.23 \
+ --hash=sha256:25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+ # via readme_renderer (>=0.21.2)
+ # https://files.pythonhosted.org/packages/32/91/30151a39f7570f448ed84529390628a651d7f27c87d73c9b887f8189695e/docutils-0.23-py3-none-any.whl#sha256=25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+id==1.6.1 \
+ --hash=sha256:f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
+ # via twine
+ # https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl#sha256=f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
idna==3.10 \
--hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
# via requests (<4,>=2.5)
# https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl#sha256=946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
+importlib_metadata==9.0.1 \
+ --hash=sha256:bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
+ # via keyring (>=4.11.4)
+ # https://files.pythonhosted.org/packages/b3/55/ecca97ae19075f1fac62def77731e7f535e6c1fb8f92ff08160c5e6dade8/importlib_metadata-9.0.1-py3-none-any.whl#sha256=bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
iniconfig==2.1.0 \
--hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760
# via pytest
@@ -54,35 +74,76 @@ isort==6.0.1 \
# _main/3rdparty/bazel-requirements.in
# pylint (!=5.13,<7,>=4.2.5)
# https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl#sha256=2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615
+jaraco.classes==3.4.0 \
+ --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+ # via keyring
+ # https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl#sha256=f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+jaraco.context==6.1.2 \
+ --hash=sha256:bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+ # via keyring
+ # https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl#sha256=bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+jaraco.functools==4.6.0 \
+ --hash=sha256:99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+ # via keyring
+ # https://files.pythonhosted.org/packages/02/36/ecc85bc96c273dc8a11273ed4782272975e6338d4a3e9228621175edf0e3/jaraco_functools-4.6.0-py3-none-any.whl#sha256=99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+keyring==25.7.0 \
+ --hash=sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+ # via twine (>=21.2.0)
+ # https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl#sha256=be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+librt==0.15.0 \
+ --hash=sha256:823b92cf3c18ecd08afc70c42473888b41b6e8ef5046f3b82c05c154a2fa3d22
+ # via mypy (>=0.13.0)
+ # https://files.pythonhosted.org/packages/59/52/06790ced2ac7117f890c21bda43c39c958ec82aa665c0718e821d33ff939/librt-0.15.0-cp311-cp311-macosx_10_9_x86_64.whl#sha256=823b92cf3c18ecd08afc70c42473888b41b6e8ef5046f3b82c05c154a2fa3d22
+markdown-it-py==4.2.0 \
+ --hash=sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
+ # via rich (>=2.2.0)
+ # https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl#sha256=9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
mccabe==0.7.0 \
--hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
# via pylint (<0.8,>=0.6)
# https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
-mypy==1.15.0 \
- --hash=sha256:2922d42e16d6de288022e5ca321cd0618b238cfc5570e0263e5ba0a77dbef56f
- # via _main/3rdparty/bazel-requirements.in
- # https://files.pythonhosted.org/packages/03/bc/f6339726c627bd7ca1ce0fa56c9ae2d0144604a319e0e339bdadafbbb599/mypy-1.15.0-cp311-cp311-macosx_10_9_x86_64.whl#sha256=2922d42e16d6de288022e5ca321cd0618b238cfc5570e0263e5ba0a77dbef56f
+mdurl==0.1.2 \
+ --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+ # via markdown-it-py (~=0.1)
+ # https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl#sha256=84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+more-itertools==11.1.0 \
+ --hash=sha256:4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+ # via
+ # jaraco.classes
+ # jaraco.functools
+ # https://files.pythonhosted.org/packages/e8/3d/1087453384dbde46a8c7f9356eead2c58be8a7bf156bca40243377c85715/more_itertools-11.1.0-py3-none-any.whl#sha256=4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+mypy==2.3.1 \
+ --hash=sha256:6ed5c7e3419083268e5c9258bd1c1ef91af44a9e89374dbcaf37b775716e72eb
+ # via _main/3rdparty/bazel-requirements.in (>=2.0)
+ # https://files.pythonhosted.org/packages/8e/41/9675c7a1e78edecfba0b79e587a52594c56e189368261dc7b3a7fffb9527/mypy-2.3.1-py3-none-any.whl#sha256=6ed5c7e3419083268e5c9258bd1c1ef91af44a9e89374dbcaf37b775716e72eb
mypy-extensions==1.0.0 \
--hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
# via
# black (>=0.4.3)
# mypy (>=1.0.0)
# https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
+nh3==0.3.7 \
+ --hash=sha256:6c3aa50eb26e9228238271db9f983cbc3b006dfbfeca2d4dc34c33ddc6ac5ea5
+ # via readme_renderer (>=0.2.14)
+ # https://files.pythonhosted.org/packages/94/0d/c257754bf57f829f307aa226bbe136d3a1356b5a0d08324c7b6bd2a8aacd/nh3-0.3.7-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl#sha256=6c3aa50eb26e9228238271db9f983cbc3b006dfbfeca2d4dc34c33ddc6ac5ea5
overrides==7.7.0 \
--hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
-packaging==24.2 \
- --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
+packaging==26.3 \
+ --hash=sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
# via
# _main/3rdparty/bazel-requirements.in
# black (>=22.0)
# pytest
- # https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl#sha256=09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
-pathspec==0.12.1 \
- --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
- # via black (>=0.9.0)
- # https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
+ # twine (>=26.1)
+ # https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl#sha256=d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
+pathspec==1.1.1 \
+ --hash=sha256:a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
+ # via
+ # black (>=0.9.0)
+ # mypy (>=1.0.0)
+ # https://files.pythonhosted.org/packages/f1/d9/7fb5aa316bc299258e68c73ba3bddbc499654a07f151cba08f6153988714/pathspec-1.1.1-py3-none-any.whl#sha256=a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
platformdirs==4.3.7 \
--hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94
# via
@@ -93,6 +154,12 @@ pluggy==1.5.0 \
--hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
# via pytest (<2,>=1.5)
# https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl#sha256=44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
+Pygments==2.21.0 \
+ --hash=sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
+ # via
+ # readme_renderer (>=2.5.1)
+ # rich (<3.0.0,>=2.13.0)
+ # https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl#sha256=2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
pylint==3.3.6 \
--hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6
# via _main/3rdparty/bazel-requirements.in
@@ -111,16 +178,34 @@ PyYAML==6.0.2 \
--hash=sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774
# via responses
# https://files.pythonhosted.org/packages/f8/aa/7af4e81f7acba21a4c6be026da38fd2b872ca46226673c89a758ebdc4fd2/PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl#sha256=cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774
+readme_renderer==46.0 \
+ --hash=sha256:d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
+ # via twine (>=35.0)
+ # https://files.pythonhosted.org/packages/4b/72/ac5ca81fe9121fcaa9d828d21017cba00a16a98e4ea5fb60c878f93dda4f/readme_renderer-46.0-py3-none-any.whl#sha256=d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
requests==2.32.3 \
--hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
# via
- # _main/3rdparty/bazel-requirements.in ([security])
+ # _main/3rdparty/bazel-requirements.in
+ # requests-toolbelt (<3.0.0,>=2.0.1)
# responses (<3.0,>=2.30.0)
+ # twine (>=2.20)
# https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl#sha256=70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
+requests-toolbelt==1.0.0 \
+ --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
+ # via twine (!=0.9.0,>=0.8.0)
+ # https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl#sha256=cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
responses==0.25.7 \
--hash=sha256:92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/e4/fc/1d20b64fa90e81e4fa0a34c9b0240a6cfb1326b7e06d18a5432a9917c316/responses-0.25.7-py3-none-any.whl#sha256=92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
+rfc3986==2.0.0 \
+ --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+ # via twine (>=1.4.0)
+ # https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl#sha256=50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+rich==15.0.0 \
+ --hash=sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
+ # via twine (>=14.3.3)
+ # https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl#sha256=33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
setuptools==78.1.0 \
--hash=sha256:3e386e96793c8702ae83d17b853fb93d3e09ef82ec62722e61da5cd22376dcd8
# via
@@ -139,6 +224,10 @@ tomlkit==0.13.2 \
--hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
# via pylint (>=0.10.1)
# https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl#sha256=7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
+twine==7.0.0 \
+ --hash=sha256:b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
+ # via _main/3rdparty/bazel-requirements.in
+ # https://files.pythonhosted.org/packages/96/08/ddcdc06225eaad6de0e48e1002b06d919dbde20582d0662c7af51308e5d6/twine-7.0.0-py3-none-any.whl#sha256=b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
types-appdirs==1.4.3.5 \
--hash=sha256:337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b
# via _main/3rdparty/bazel-requirements.in
@@ -157,18 +246,22 @@ types-toml==0.10.8.20240310 \
# https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d
typing_extensions==4.13.0 \
--hash=sha256:c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
- # via
- # _main/3rdparty/bazel-requirements.in
- # mypy (>=4.6.0)
+ # via mypy (>=4.6.0)
# https://files.pythonhosted.org/packages/e0/86/39b65d676ec5732de17b7e3c476e45bb80ec64eb50737a8dce1a4178aba1/typing_extensions-4.13.0-py3-none-any.whl#sha256=c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
urllib3==2.3.0 \
--hash=sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
# via
+ # id (<3,>=2)
# requests (<3,>=1.21.1)
# responses (<3.0,>=1.25.10)
+ # twine (>=1.26.0)
# types-requests (>=2)
# https://files.pythonhosted.org/packages/c8/19/4ec628951a74043532ca2cf5d97b7b14863931476d117c471e8e2b1eb39f/urllib3-2.3.0-py3-none-any.whl#sha256=1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
wheel==0.45.1 \
--hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl#sha256=708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
+zipp==4.1.0 \
+ --hash=sha256:25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
+ # via importlib_metadata (>=3.20)
+ # https://files.pythonhosted.org/packages/3a/13/547360d81e6d88d58492968ffda9f9542854f11310ee556fef14260cc886/zipp-4.1.0-py3-none-any.whl#sha256=25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
diff --git a/3rdparty/requirements.windows_x86_64.txt b/3rdparty/requirements.windows_x86_64.txt
index 9b9e35d6..abc2ceae 100644
--- a/3rdparty/requirements.windows_x86_64.txt
+++ b/3rdparty/requirements.windows_x86_64.txt
@@ -1,7 +1,7 @@
################################################################################
## AUTOGENERATED: This file is autogenerated by req-compile.
##
-## Python: 3.11.11
+## Python: 3.11.14
## Platform: Windows
##
## To regenerate this file, use the following command:
@@ -16,10 +16,18 @@ appdirs==1.4.4 \
--hash=sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128
+ast_serialize==0.11.2 \
+ --hash=sha256:b9065dd23131a23b41f5bab3bf4e9b3c350a3fe8e36e8200eded9b729fcea484
+ # via mypy (<1.0.0,>=0.6.0)
+ # https://files.pythonhosted.org/packages/23/bf/b419c3205ce1143ba7c69baef4f0ba43c14d8712113bf34f9e0d27d609be/ast_serialize-0.11.2-cp39-abi3-win_amd64.whl#sha256=b9065dd23131a23b41f5bab3bf4e9b3c350a3fe8e36e8200eded9b729fcea484
astroid==3.3.9 \
--hash=sha256:d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
# via pylint (<=3.4.0.dev0,>=3.3.8)
# https://files.pythonhosted.org/packages/de/80/c749efbd8eef5ea77c7d6f1956e8fbfb51963b7f93ef79647afd4d9886e3/astroid-3.3.9-py3-none-any.whl#sha256=d05bfd0acba96a7bd43e222828b7d9bc1e138aaeb0649707908d3702a9831248
+backports.tarfile==1.2.0 \
+ --hash=sha256:77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
+ # via jaraco.context
+ # https://files.pythonhosted.org/packages/b9/fa/123043af240e49752f1c4bd24da5053b6bd00cad78c2be53c0d1e8b975bc/backports.tarfile-1.2.0-py3-none-any.whl#sha256=77e284d754527b01fb1e6fa8a1afe577858ebe4e9dad8919e34c862cb399bc34
black==25.1.0 \
--hash=sha256:172b1dbff09f86ce6f4eb8edf9dede08b1fce58ba194c87d7a4f1a5aa2f5b3c2
# via _main/3rdparty/bazel-requirements.in
@@ -47,10 +55,22 @@ dill==0.3.9 \
--hash=sha256:468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
# via pylint (>=0.3.6)
# https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl#sha256=468dff3b89520b474c0397703366b7b95eebe6303f108adf9b19da1f702be87a
+docutils==0.23 \
+ --hash=sha256:25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+ # via readme_renderer (>=0.21.2)
+ # https://files.pythonhosted.org/packages/32/91/30151a39f7570f448ed84529390628a651d7f27c87d73c9b887f8189695e/docutils-0.23-py3-none-any.whl#sha256=25d013af9bf23bc1c7b2b093dff4208166c53a94786c9e447808335ef1185fea
+id==1.6.1 \
+ --hash=sha256:f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
+ # via twine
+ # https://files.pythonhosted.org/packages/42/77/de194443bf38daed9452139e960c632b0ef9f9a5dd9ce605fdf18ca9f1b1/id-1.6.1-py3-none-any.whl#sha256=f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca
idna==3.10 \
--hash=sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
# via requests (<4,>=2.5)
# https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl#sha256=946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3
+importlib_metadata==9.0.1 \
+ --hash=sha256:bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
+ # via keyring (>=4.11.4)
+ # https://files.pythonhosted.org/packages/b3/55/ecca97ae19075f1fac62def77731e7f535e6c1fb8f92ff08160c5e6dade8/importlib_metadata-9.0.1-py3-none-any.whl#sha256=bba5600596a7e21f3eef53281cf28d6a5195634d2f2b78ff9501a3272c6eaab0
iniconfig==2.1.0 \
--hash=sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760
# via pytest
@@ -61,35 +81,76 @@ isort==6.0.1 \
# _main/3rdparty/bazel-requirements.in
# pylint (!=5.13,<7,>=4.2.5)
# https://files.pythonhosted.org/packages/c1/11/114d0a5f4dabbdcedc1125dee0888514c3c3b16d3e9facad87ed96fad97c/isort-6.0.1-py3-none-any.whl#sha256=2dc5d7f65c9678d94c88dfc29161a320eec67328bc97aad576874cb4be1e9615
+jaraco.classes==3.4.0 \
+ --hash=sha256:f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+ # via keyring
+ # https://files.pythonhosted.org/packages/7f/66/b15ce62552d84bbfcec9a4873ab79d993a1dd4edb922cbfccae192bd5b5f/jaraco.classes-3.4.0-py3-none-any.whl#sha256=f662826b6bed8cace05e7ff873ce0f9283b5c924470fe664fff1c2f00f581790
+jaraco.context==6.1.2 \
+ --hash=sha256:bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+ # via keyring
+ # https://files.pythonhosted.org/packages/f2/58/bc8954bda5fcda97bd7c19be11b85f91973d67a706ed4a3aec33e7de22db/jaraco_context-6.1.2-py3-none-any.whl#sha256=bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535
+jaraco.functools==4.6.0 \
+ --hash=sha256:99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+ # via keyring
+ # https://files.pythonhosted.org/packages/02/36/ecc85bc96c273dc8a11273ed4782272975e6338d4a3e9228621175edf0e3/jaraco_functools-4.6.0-py3-none-any.whl#sha256=99e3dc0060c5cbe8fcd1cdb36258e2a65ca40f1566b2033b12abb1bb44dd3c30
+keyring==25.7.0 \
+ --hash=sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+ # via twine (>=21.2.0)
+ # https://files.pythonhosted.org/packages/81/db/e655086b7f3a705df045bf0933bdd9c2f79bb3c97bfef1384598bb79a217/keyring-25.7.0-py3-none-any.whl#sha256=be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f
+librt==0.15.0 \
+ --hash=sha256:f75720477ee05d509a310e856cacc8d909adc182f7b91193c207bcc26d7ee6db
+ # via mypy (>=0.13.0)
+ # https://files.pythonhosted.org/packages/96/28/7e2313a3ffbf0b4de7ba3da58a09e488507b4bd1ea2b5e69378354a23415/librt-0.15.0-cp311-cp311-win_amd64.whl#sha256=f75720477ee05d509a310e856cacc8d909adc182f7b91193c207bcc26d7ee6db
+markdown-it-py==4.2.0 \
+ --hash=sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
+ # via rich (>=2.2.0)
+ # https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl#sha256=9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a
mccabe==0.7.0 \
--hash=sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
# via pylint (<0.8,>=0.6)
# https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e
-mypy==1.15.0 \
- --hash=sha256:c9817fa23833ff189db061e6d2eff49b2f3b6ed9856b4a0a73046e41932d744f
- # via _main/3rdparty/bazel-requirements.in
- # https://files.pythonhosted.org/packages/96/39/11b57431a1f686c1aed54bf794870efe0f6aeca11aca281a0bd87a5ad42c/mypy-1.15.0-cp311-cp311-win_amd64.whl#sha256=c9817fa23833ff189db061e6d2eff49b2f3b6ed9856b4a0a73046e41932d744f
+mdurl==0.1.2 \
+ --hash=sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+ # via markdown-it-py (~=0.1)
+ # https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl#sha256=84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8
+more-itertools==11.1.0 \
+ --hash=sha256:4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+ # via
+ # jaraco.classes
+ # jaraco.functools
+ # https://files.pythonhosted.org/packages/e8/3d/1087453384dbde46a8c7f9356eead2c58be8a7bf156bca40243377c85715/more_itertools-11.1.0-py3-none-any.whl#sha256=4b65538ae22f6fed0ce4874efd317463a7489796a0939fa66824dd542125a192
+mypy==2.3.1 \
+ --hash=sha256:52eaf3a155f35cf80b40220288c861eb45f14a2340c1f6cbfbdb0feff32879d1
+ # via _main/3rdparty/bazel-requirements.in (>=2.0)
+ # https://files.pythonhosted.org/packages/5f/10/91dcdc6f8d43fc08e6a06ab1f9732f3abaaf835ac1b2e67b9dff56910855/mypy-2.3.1-cp311-cp311-win_amd64.whl#sha256=52eaf3a155f35cf80b40220288c861eb45f14a2340c1f6cbfbdb0feff32879d1
mypy-extensions==1.0.0 \
--hash=sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
# via
# black (>=0.4.3)
# mypy (>=1.0.0)
# https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d
+nh3==0.3.7 \
+ --hash=sha256:618e3059caf41ccdf5dcccb3fa9df4cf6e4efe23d1382a8bbfca272a8a4f8bfc
+ # via readme_renderer (>=0.2.14)
+ # https://files.pythonhosted.org/packages/b4/b9/34433ccb1f0fe6968dabbb7d4bf5721c6221878ef07832748c06655a6a80/nh3-0.3.7-cp38-abi3-win_amd64.whl#sha256=618e3059caf41ccdf5dcccb3fa9df4cf6e4efe23d1382a8bbfca272a8a4f8bfc
overrides==7.7.0 \
--hash=sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49
-packaging==24.2 \
- --hash=sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
+packaging==26.3 \
+ --hash=sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
# via
# _main/3rdparty/bazel-requirements.in
# black (>=22.0)
# pytest
- # https://files.pythonhosted.org/packages/88/ef/eb23f262cca3c0c4eb7ab1933c3b1f03d021f2c48f54763065b6f0e321be/packaging-24.2-py3-none-any.whl#sha256=09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759
-pathspec==0.12.1 \
- --hash=sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
- # via black (>=0.9.0)
- # https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08
+ # twine (>=26.1)
+ # https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl#sha256=d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c
+pathspec==1.1.1 \
+ --hash=sha256:a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
+ # via
+ # black (>=0.9.0)
+ # mypy (>=1.0.0)
+ # https://files.pythonhosted.org/packages/f1/d9/7fb5aa316bc299258e68c73ba3bddbc499654a07f151cba08f6153988714/pathspec-1.1.1-py3-none-any.whl#sha256=a00ce642f577bf7f473932318056212bc4f8bfdf53128c78bbd5af0b9b20b189
platformdirs==4.3.7 \
--hash=sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94
# via
@@ -100,6 +161,12 @@ pluggy==1.5.0 \
--hash=sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
# via pytest (<2,>=1.5)
# https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl#sha256=44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669
+Pygments==2.21.0 \
+ --hash=sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
+ # via
+ # readme_renderer (>=2.5.1)
+ # rich (<3.0.0,>=2.13.0)
+ # https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl#sha256=2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9
pylint==3.3.6 \
--hash=sha256:8b7c2d3e86ae3f94fb27703d521dd0b9b6b378775991f504d7c3a6275aa0a6a6
# via _main/3rdparty/bazel-requirements.in
@@ -114,20 +181,42 @@ pytest-mock==3.14.0 \
--hash=sha256:0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/f2/3b/b26f90f74e2986a82df6e7ac7e319b8ea7ccece1caec9f8ab6104dc70603/pytest_mock-3.14.0-py3-none-any.whl#sha256=0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f
+pywin32-ctypes==0.2.3 \
+ --hash=sha256:8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8
+ # via keyring (>=0.2.0)
+ # https://files.pythonhosted.org/packages/de/3d/8161f7711c017e01ac9f008dfddd9410dff3674334c233bde66e7ba65bbf/pywin32_ctypes-0.2.3-py3-none-any.whl#sha256=8a1513379d709975552d202d942d9837758905c8d01eb82b8bcc30918929e7b8
PyYAML==6.0.2 \
--hash=sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44
# via responses
# https://files.pythonhosted.org/packages/ed/23/8da0bbe2ab9dcdd11f4f4557ccaf95c10b9811b13ecced089d43ce59c3c8/PyYAML-6.0.2-cp311-cp311-win_amd64.whl#sha256=e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44
+readme_renderer==46.0 \
+ --hash=sha256:d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
+ # via twine (>=35.0)
+ # https://files.pythonhosted.org/packages/4b/72/ac5ca81fe9121fcaa9d828d21017cba00a16a98e4ea5fb60c878f93dda4f/readme_renderer-46.0-py3-none-any.whl#sha256=d0dae1f74bb273b534770cb4cccb6bb78735540afdb03c2146f4e19dcd412560
requests==2.32.3 \
--hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
# via
- # _main/3rdparty/bazel-requirements.in ([security])
+ # _main/3rdparty/bazel-requirements.in
+ # requests-toolbelt (<3.0.0,>=2.0.1)
# responses (<3.0,>=2.30.0)
+ # twine (>=2.20)
# https://files.pythonhosted.org/packages/f9/9b/335f9764261e915ed497fcdeb11df5dfd6f7bf257d4a6a2a686d80da4d54/requests-2.32.3-py3-none-any.whl#sha256=70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6
+requests-toolbelt==1.0.0 \
+ --hash=sha256:cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
+ # via twine (!=0.9.0,>=0.8.0)
+ # https://files.pythonhosted.org/packages/3f/51/d4db610ef29373b879047326cbf6fa98b6c1969d6f6dc423279de2b1be2c/requests_toolbelt-1.0.0-py2.py3-none-any.whl#sha256=cccfdd665f0a24fcf4726e690f65639d272bb0637b9b92dfd91a5568ccf6bd06
responses==0.25.7 \
--hash=sha256:92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/e4/fc/1d20b64fa90e81e4fa0a34c9b0240a6cfb1326b7e06d18a5432a9917c316/responses-0.25.7-py3-none-any.whl#sha256=92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c
+rfc3986==2.0.0 \
+ --hash=sha256:50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+ # via twine (>=1.4.0)
+ # https://files.pythonhosted.org/packages/ff/9a/9afaade874b2fa6c752c36f1548f718b5b83af81ed9b76628329dab81c1b/rfc3986-2.0.0-py2.py3-none-any.whl#sha256=50b1502b60e289cb37883f3dfd34532b8873c7de9f49bb546641ce9cbd256ebd
+rich==15.0.0 \
+ --hash=sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
+ # via twine (>=14.3.3)
+ # https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl#sha256=33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb
setuptools==78.1.0 \
--hash=sha256:3e386e96793c8702ae83d17b853fb93d3e09ef82ec62722e61da5cd22376dcd8
# via
@@ -146,6 +235,10 @@ tomlkit==0.13.2 \
--hash=sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
# via pylint (>=0.10.1)
# https://files.pythonhosted.org/packages/f9/b6/a447b5e4ec71e13871be01ba81f5dfc9d0af7e473da256ff46bc0e24026f/tomlkit-0.13.2-py3-none-any.whl#sha256=7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde
+twine==7.0.0 \
+ --hash=sha256:b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
+ # via _main/3rdparty/bazel-requirements.in
+ # https://files.pythonhosted.org/packages/96/08/ddcdc06225eaad6de0e48e1002b06d919dbde20582d0662c7af51308e5d6/twine-7.0.0-py3-none-any.whl#sha256=b854164df26db268af05f49aa5c0344b10e27a494343ff05b1e0bad3b135f5a7
types-appdirs==1.4.3.5 \
--hash=sha256:337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b
# via _main/3rdparty/bazel-requirements.in
@@ -164,18 +257,22 @@ types-toml==0.10.8.20240310 \
# https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d
typing_extensions==4.13.0 \
--hash=sha256:c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
- # via
- # _main/3rdparty/bazel-requirements.in
- # mypy (>=4.6.0)
+ # via mypy (>=4.6.0)
# https://files.pythonhosted.org/packages/e0/86/39b65d676ec5732de17b7e3c476e45bb80ec64eb50737a8dce1a4178aba1/typing_extensions-4.13.0-py3-none-any.whl#sha256=c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5
urllib3==2.3.0 \
--hash=sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
# via
+ # id (<3,>=2)
# requests (<3,>=1.21.1)
# responses (<3.0,>=1.25.10)
+ # twine (>=1.26.0)
# types-requests (>=2)
# https://files.pythonhosted.org/packages/c8/19/4ec628951a74043532ca2cf5d97b7b14863931476d117c471e8e2b1eb39f/urllib3-2.3.0-py3-none-any.whl#sha256=1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df
wheel==0.45.1 \
--hash=sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
# via _main/3rdparty/bazel-requirements.in
# https://files.pythonhosted.org/packages/0b/2c/87f3254fd8ffd29e4c02732eee68a83a1d3c346ae39bc6822dcbcb697f2b/wheel-0.45.1-py3-none-any.whl#sha256=708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248
+zipp==4.1.0 \
+ --hash=sha256:25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
+ # via importlib_metadata (>=3.20)
+ # https://files.pythonhosted.org/packages/3a/13/547360d81e6d88d58492968ffda9f9542854f11310ee556fef14260cc886/zipp-4.1.0-py3-none-any.whl#sha256=25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f
diff --git a/BUILD.bazel b/BUILD.bazel
index ac56eeb2..1c1bef67 100644
--- a/BUILD.bazel
+++ b/BUILD.bazel
@@ -1,8 +1,13 @@
load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
exports_files([
+ "CHANGELOG.rst",
+ "LICENSE.txt",
"MODULE.bazel",
+ "README.rst",
+ "pyproject.toml",
"requirements.in",
+ "setup.py",
"test-requirements.in",
"version.bzl",
"defs.bzl",
@@ -29,9 +34,9 @@ bzl_library(
srcs = ["defs.bzl"],
visibility = ["//visibility:public"],
deps = [
- "//private:annotation",
- "//private:reqs_repo",
- "//private:whl_repo",
+ "//req_compile/private:annotation",
+ "//req_compile/private:reqs_repo",
+ "//req_compile/private:whl_repo",
],
)
diff --git a/MANIFEST.in b/MANIFEST.in
index 8e8c9713..c61aaa48 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -1,5 +1,10 @@
include *.py
-prune tests private .idea requirements.txt
+prune tests
+prune examples
+prune rule_tests
+prune req_compile/private
+prune .idea
+exclude requirements.txt
include CHANGELOG.rst
include LICENSE.txt
include pyproject.toml
diff --git a/MODULE.bazel b/MODULE.bazel
index f29ce9d0..1e0ca8c6 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -7,10 +7,10 @@ module(
bazel_dep(name = "bazel_skylib", version = "1.8.2")
bazel_dep(name = "platforms", version = "1.0.0")
-bazel_dep(name = "rules_cc", version = "0.2.14")
-bazel_dep(name = "rules_python", version = "1.7.0")
-bazel_dep(name = "rules_venv", version = "0.17.0")
+bazel_dep(name = "rules_cc", version = "0.2.4")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_python", version = "1.7.0", dev_dependency = True)
bazel_dep(name = "buildozer", version = "8.2.1", dev_dependency = True)
bazel_dep(name = "buildifier_prebuilt", version = "8.2.1.2", dev_dependency = True)
@@ -46,7 +46,7 @@ requirements.parse(
)
use_repo(requirements, "req_compile_deps")
-sdist_deps = use_extension("//private:sdist.bzl", "sdist_deps")
+sdist_deps = use_extension("//req_compile/private:sdist.bzl", "sdist_deps")
use_repo(
sdist_deps,
"req_compile_sdist_compiler__pip",
@@ -54,168 +54,17 @@ use_repo(
"req_compile_sdist_compiler__wheel",
)
-dev_requirements = use_extension("//extensions:python.bzl", "requirements", dev_dependency = True)
-dev_requirements.parse(
- name = "req_compile_test_sdist",
- # Required to compile sdists
- interpreter_linux_aarch64 = "@python_3_11_x86_64-unknown-linux-gnu//:python",
- interpreter_linux_x86_64 = "@python_3_11_x86_64-unknown-linux-gnu//:python",
- interpreter_macos_aarch64 = "@python_3_11_aarch64-apple-darwin//:python",
- interpreter_macos_x86_64 = "@python_3_11_x86_64-apple-darwin//:python",
- interpreter_windows = "@python_3_11_x86_64-pc-windows-msvc//:python",
- requirements_lock = "//private/tests/sdist:requirements.txt",
-)
-use_repo(dev_requirements, "req_compile_test_sdist", "req_compile_test_sdist__pyspark")
-
-dev_requirements.parse(
- name = "req_compile_test_simple",
- requirements_lock = "//private/tests/simple:requirements.txt",
-)
-use_repo(dev_requirements, "req_compile_test_simple")
-
-dev_requirements.parse(
- name = "req_compile_test_platlib",
- requirements_locks = {
- "//private/tests/platlib:requirements.linux.txt": "@platforms//os:linux",
- "//private/tests/platlib:requirements.macos.txt": "@platforms//os:macos",
- "//private/tests/platlib:requirements.windows.txt": "@platforms//os:windows",
- },
-)
-use_repo(dev_requirements, "req_compile_test_platlib")
-
-dev_requirements.parse(
- name = "req_compile_test_transitive_ins",
- requirements_lock = "//private/tests/transitive_ins:requirements.txt",
-)
-use_repo(dev_requirements, "req_compile_test_transitive_ins")
-
-dev_requirements.parse(
- name = "req_compile_test_pip_parse_compat_single_plat",
- requirements_lock = "//private/tests/pip_parse_compat:requirements.txt",
-)
-use_repo(dev_requirements, "req_compile_test_pip_parse_compat_single_plat")
-
-dev_requirements.parse(
- name = "req_compile_test_pip_parse_compat_multi_plat",
- requirements_locks = {
- "//private/tests/pip_parse_compat:requirements.linux.txt": "@platforms//os:linux",
- "//private/tests/pip_parse_compat:requirements.macos.txt": "@platforms//os:macos",
- "//private/tests/pip_parse_compat:requirements.windows.txt": "@platforms//os:windows",
- },
-)
-use_repo(dev_requirements, "req_compile_test_pip_parse_compat_multi_plat")
-
-dev_requirements.parse(
- name = "req_compile_test_annotations",
- requirements_locks = {
- "//private/tests/annotations:requirements.linux.txt": "@platforms//os:linux",
- "//private/tests/annotations:requirements.macos.txt": "@platforms//os:macos",
- "//private/tests/annotations:requirements.windows.txt": "@platforms//os:windows",
- },
-)
-use_repo(
- dev_requirements,
- "req_compile_test_annotations",
- "req_compile_test_annotations_linux__numpy",
- "req_compile_test_annotations_macos__numpy",
- "req_compile_test_annotations_windows__numpy",
-)
-
-dev_requirements.package_annotation(
- additive_build_file_content = """\
-load("@rules_cc//cc:defs.bzl", "cc_library")
-load("@rules_req_compile//:defs.bzl", "py_package_annotation_target")
-
-_INCLUDE_DIR = "site-packages/numpy/core/include"
-
-cc_library(
- name = "headers",
- hdrs = glob(["{}/**/*.h".format(_INCLUDE_DIR)]),
- includes = [_INCLUDE_DIR],
-)
-
-py_package_annotation_target(
- name = "pkg.headers",
- target = ":headers",
-)
-""",
- copy_executables = {
- "site-packages/numpy/testing/setup.py": "site-packages/numpy/testing/setup.copy.py",
- },
- copy_files = {
- "site-packages/numpy-1.26.4.dist-info/entry_points.txt": "site-packages/numpy-1.26.4.dist-info/entry_points.copy.txt",
- },
- copy_srcs = {
- "site-packages/numpy/conftest.py": "site-packages/numpy/conftest.copy.py",
- },
- data = [":pkg.headers"],
- package = "numpy",
- patches = [
- "//private/tests/annotations:numpy.patch",
- ],
- deps = [
- # Show that label dependencies can be added.
- "@rules_python//python/runfiles",
- ],
-)
-
-# Sphinx is known to have a circular dependency. The annotations here solve for that.
-dev_requirements.package_annotation(
- package = "sphinxcontrib-htmlhelp",
- deps = ["-sphinx"],
-)
-dev_requirements.package_annotation(
- package = "sphinxcontrib-applehelp",
- deps = ["-sphinx"],
-)
-dev_requirements.package_annotation(
- package = "sphinxcontrib-devhelp",
- deps = ["-sphinx"],
-)
-dev_requirements.package_annotation(
- package = "sphinxcontrib-jsmath",
- deps = ["-sphinx"],
-)
-dev_requirements.package_annotation(
- package = "sphinxcontrib-qthelp",
- deps = ["-sphinx"],
-)
-dev_requirements.package_annotation(
- deps_excludes = ["sphinx"],
- package = "sphinxcontrib-serializinghtml",
-)
-
-find_links_test_repository = use_repo_rule("//private/tests/find_links:find_links_test_repo.bzl", "find_links_test_repository")
-
-find_links_test_repository(
- name = "req_compile_find_links_test",
- build_file = "//private/tests/find_links:BUILD.find_links.bazel",
+# Toolchains backing the `rules_venv` lint, type check, test and wheel rules.
+# These are only ever used when building this repository itself.
+register_toolchains(
+ "//tools/toolchains:py_black_toolchain",
+ "//tools/toolchains:py_isort_toolchain",
+ "//tools/toolchains:py_mypy_toolchain",
+ "//tools/toolchains:py_pylint_toolchain",
+ "//tools/toolchains:py_pytest_toolchain",
+ "//tools/toolchains:py_wheel_toolchain",
dev_dependency = True,
- pyspark_wheel_data = "@req_compile_test_sdist__pyspark//:whl.json",
- requirements_in = "//private/tests/find_links:requirements.in",
- requirements_txt = "//private/tests/find_links:requirements.txt",
- # Needs to match `--find-links` in `//private/tests/find_links:requirements.in`
- wheeldir = "wheeldir",
-)
-
-# Use a separate extension since the @req_compile_find_links_test is generated by an extension
-# that also depend upon //extensions:python.bzl
-find_links_requirements = use_extension("//private/tests/find_links:extension.bzl", "requirements", dev_dependency = True)
-find_links_requirements.parse(
- name = "req_compile_test_find_links",
- requirements_lock = "@req_compile_find_links_test//:requirements.txt",
-)
-use_repo(find_links_requirements, "req_compile_test_find_links")
-
-dev_requirements.parse(
- name = "req_compile_test_cross_platform",
- requirements_locks = {
- "//private/tests/cross_platform:requirements.linux.txt": "@platforms//os:linux",
- "//private/tests/cross_platform:requirements.macos.txt": "@platforms//os:macos",
- "//private/tests/cross_platform:requirements.windows.txt": "@platforms//os:windows",
- },
)
-use_repo(dev_requirements, "req_compile_test_cross_platform")
bazel_dep(name = "rules_go", version = "0.59.0", dev_dependency = True)
diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock
index 5b0a7118..00308814 100644
--- a/MODULE.bazel.lock
+++ b/MODULE.bazel.lock
@@ -136,7 +136,6 @@
"https://bcr.bazel.build/modules/rules_cc/0.1.5/MODULE.bazel": "88dfc9361e8b5ae1008ac38f7cdfd45ad738e4fa676a3ad67d19204f045a1fd8",
"https://bcr.bazel.build/modules/rules_cc/0.2.0/MODULE.bazel": "b5c17f90458caae90d2ccd114c81970062946f49f355610ed89bebf954f5783c",
"https://bcr.bazel.build/modules/rules_cc/0.2.13/MODULE.bazel": "eecdd666eda6be16a8d9dc15e44b5c75133405e820f620a234acc4b1fdc5aa37",
- "https://bcr.bazel.build/modules/rules_cc/0.2.14/MODULE.bazel": "353c99ed148887ee89c54a17d4100ae7e7e436593d104b668476019023b58df8",
"https://bcr.bazel.build/modules/rules_cc/0.2.17/MODULE.bazel": "1849602c86cb60da8613d2de887f9566a6d354a6df6d7009f9d04a14402f9a84",
"https://bcr.bazel.build/modules/rules_cc/0.2.17/source.json": "3832f45d145354049137c0090df04629d9c2b5493dc5c2bf46f1834040133a07",
"https://bcr.bazel.build/modules/rules_cc/0.2.4/MODULE.bazel": "1ff1223dfd24f3ecf8f028446d4a27608aa43c3f41e346d22838a4223980b8cc",
@@ -209,8 +208,8 @@
"https://bcr.bazel.build/modules/rules_swift/2.4.0/MODULE.bazel": "1639617eb1ede28d774d967a738b4a68b0accb40650beadb57c21846beab5efd",
"https://bcr.bazel.build/modules/rules_swift/3.1.2/MODULE.bazel": "72c8f5cf9d26427cee6c76c8e3853eb46ce6b0412a081b2b6db6e8ad56267400",
"https://bcr.bazel.build/modules/rules_swift/3.1.2/source.json": "e85761f3098a6faf40b8187695e3de6d97944e98abd0d8ce579cb2daf6319a66",
- "https://bcr.bazel.build/modules/rules_venv/0.17.0/MODULE.bazel": "140e11b1536e7418def5a098bfd31ee72ec17191310be0c71255efc4dc310691",
- "https://bcr.bazel.build/modules/rules_venv/0.17.0/source.json": "9cf38be015465360c827e8a65e049a64bceea032f3538a2e0c718c52ba1c4a17",
+ "https://bcr.bazel.build/modules/rules_venv/0.26.0/MODULE.bazel": "33bbd15fb3bb60ee6acb2a2574d9d0fbd024b6ff4095b3ee992ea7ab789394f8",
+ "https://bcr.bazel.build/modules/rules_venv/0.26.0/source.json": "f4ecd73e536cf0d6208a1fa85b5df87b372480da8b34fae9c44c3777354d3bd8",
"https://bcr.bazel.build/modules/stardoc/0.5.1/MODULE.bazel": "1a05d92974d0c122f5ccf09291442580317cdd859f07a8655f1db9a60374f9f8",
"https://bcr.bazel.build/modules/stardoc/0.5.3/MODULE.bazel": "c7f6948dae6999bf0db32c1858ae345f112cacf98f174c7a8bb707e41b974f1c",
"https://bcr.bazel.build/modules/stardoc/0.7.0/MODULE.bazel": "05e3d6d30c099b6770e97da986c53bd31844d7f13d41412480ea265ac9e8079c",
diff --git a/WORKSPACE.bazel b/WORKSPACE.bazel
deleted file mode 100644
index e69de29b..00000000
diff --git a/WORKSPACE.bzlmod b/WORKSPACE.bzlmod
deleted file mode 100644
index e69de29b..00000000
diff --git a/defs.bzl b/defs.bzl
index e9df187b..4b4897c4 100644
--- a/defs.bzl
+++ b/defs.bzl
@@ -14,27 +14,36 @@
---
"""
+# buildifier: disable=bzl-visibility
load(
- "//private:annotation.bzl",
+ "//req_compile/private:annotation.bzl",
_py_package_annotation = "py_package_annotation",
_py_package_annotation_consumer = "py_package_annotation_consumer",
_py_package_annotation_target = "py_package_annotation_target",
)
+
+# buildifier: disable=bzl-visibility
load(
- "//private:compiler.bzl",
+ "//req_compile/private:compiler.bzl",
_py_reqs_compiler = "py_reqs_compiler",
_py_reqs_solution_test = "py_reqs_solution_test",
)
+
+# buildifier: disable=bzl-visibility
load(
- "//private:remote_compiler.bzl",
+ "//req_compile/private:remote_compiler.bzl",
_py_reqs_remote_compiler = "py_reqs_remote_compiler",
)
+
+# buildifier: disable=bzl-visibility
load(
- "//private:reqs_repo.bzl",
+ "//req_compile/private:reqs_repo.bzl",
_py_requirements_repository = "py_requirements_repository",
)
+
+# buildifier: disable=bzl-visibility
load(
- "//private:whl_repo.bzl",
+ "//req_compile/private:whl_repo.bzl",
_whl_repository = "whl_repository",
)
diff --git a/docs/BUILD.bazel b/docs/BUILD.bazel
index 2090fc61..b9e0fda8 100644
--- a/docs/BUILD.bazel
+++ b/docs/BUILD.bazel
@@ -7,9 +7,8 @@ stardoc(
tags = ["manual"],
deps = [
"//:defs",
- "//private:compiler",
- "//private:remote_compiler",
- "@protobuf//bazel:cc_proto_library_bzl",
+ "//req_compile/private:compiler",
+ "//req_compile/private:remote_compiler",
"@rules_cc//cc:bzl_srcs",
"@rules_cc//cc/common",
"@rules_cc//cc/toolchains:toolchain_rules",
diff --git a/docs/docs.md b/docs/docs.md
index b2f43bbc..89173f14 100755
--- a/docs/docs.md
+++ b/docs/docs.md
@@ -243,8 +243,9 @@ compiler to the remote system and perform compilation.
load("@rules_req_compile//:defs.bzl", "py_requirements_repository")
-py_requirements_repository(name, annotations, hub_name, interpreter, repo_mapping,
- requirements_lock, requirements_locks)
+py_requirements_repository(name, annotations, defs_id_map, hub_name, interpreter,
+ legacy_root_pkg_aliases, package_aliases, requirements_lock,
+ requirements_locks)
A rule for importing `requirements.txt` dependencies into Bazel.
@@ -326,9 +327,11 @@ cross-platform behavior when using `requirements_locks`.
| :------------- | :------------- | :------------- | :------------- | :------------- |
| name | A unique name for this repository. | Name | required | |
| annotations | Optional annotations to apply to packages. For details see [@rules_python//python:pip.bzl%package_annotation](https://github.com/bazelbuild/rules_python/blob/main/docs/pip_repository.md#package_annotation) | Dictionary: String -> String | optional | `{}` |
+| defs_id_map | Optional mapping of derived lockfile IDs to defs IDs to use when naming spoke repositories. This is primarily used by the module extension to align overridden hubs with the root module's spoke naming. | Dictionary: String -> String | optional | `{}` |
| hub_name | Name of the hub repository to generate. Do not use directly. | String | optional | `""` |
| interpreter | The label of a python interpreter to use for compiling source distributions (sdists). If this is not provided then the provided lock file must represent binary-only dependencies. Note that should this interpreter be needed (a sdist was found in `requirements_lock` or `requirements_locks`), the dependencies generated may not be byte-for-byte reproducible and users may experience unexpected cache invalidation or unexpected cross-platform behavior. | Label | optional | `None` |
-| repo_mapping | In `WORKSPACE` context only: a dictionary from local repository name to global repository name. This allows controls over workspace dependency resolution for dependencies of this repository.
For example, an entry `"@foo": "@bar"` declares that, for any time this repository depends on `@foo` (such as a dependency on `@foo//some:target`, it should actually resolve that dependency within globally-declared `@bar` (`@bar//some:target`).
This attribute is _not_ supported in `MODULE.bazel` context (when invoking a repository rule inside a module extension's implementation function). | Dictionary: String -> String | optional | |
+| legacy_root_pkg_aliases | If True, creates aliases in the root BUILD.bazel file pointing to the package targets in their subpackages. This provides backward compatibility for code that references packages at the root (e.g., `@repo//:package_name`). | Boolean | optional | `False` |
+| package_aliases | Packages to override with a local `py_library`. | Dictionary: Label -> String | optional | `{}` |
| requirements_lock | A fully resolved 'requirements.txt' pip requirement file containing the transitive set of your dependencies. This file _must_ be produced by [req-compile](https://pypi.org/project/req-compile/) and include hashes and urls in the solution. This attribute is mutually exclusive with `requirements_locks`. | Label | optional | `None` |
| requirements_locks | A map of fully resolved 'requirements.txt' pip requirement file containing the transitive set of your dependencies to labels of Bazel [platforms](https://bazel.build/extending/platforms). These requirements files __must__ be produced by [req-compile](https://pypi.org/project/req-compile/) and include hashes and urls in the solution. Each lock file provided will create a dependency tree matching `{name}_{id}__{package}` where `id` is the name of the lock file with `[".", "-"]` characters are replaced by `"_"` and the name `requirements` will be stripped. This means each `requirements_locks` entry will need to be somewhat uniquely named. This attribute is mutually exclusive with `requirements_lock`. | Dictionary: Label -> String | optional | `{}` |
@@ -340,8 +343,8 @@ cross-platform behavior when using `requirements_locks`.
load("@rules_req_compile//:defs.bzl", "whl_repository")
-whl_repository(name, deps, annotations, constraint, interpreter, package, patches, repo_mapping,
- sdist_deps_repos, sha256, spoke_prefix, urls, version, whl)
+whl_repository(name, deps, annotations, constraint, hub_name, interpreter, package, patches,
+ sdist_deps_repos, sha256, urls, version, whl)
A repository rule for extracting a python [wheel](https://peps.python.org/pep-0491/) and defining a `py_library`.
@@ -357,13 +360,12 @@ This repository is expected to be generated by [py_requirements_repository](#py_
| deps | A list of python package names that the current package depends on. | List of strings | required | |
| annotations | See [py_requirements_repository.annotation](#py_requirements_repository.annotation) | String | optional | `"{}"` |
| constraint | An optional constraint to assign to `target_compatible_with` where all other configurations will be invalid. | String | optional | `""` |
+| hub_name | The name of the [py_requirements_repository](#py_requirements_repository). | String | required | |
| interpreter | Optional Python interpreter binary to use for building sdists. | Label | optional | `None` |
| package | The name of the python package the wheel represents. | String | required | |
| patches | Patches to apply to the installed wheel. | List of labels | optional | `[]` |
-| repo_mapping | In `WORKSPACE` context only: a dictionary from local repository name to global repository name. This allows controls over workspace dependency resolution for dependencies of this repository.
For example, an entry `"@foo": "@bar"` declares that, for any time this repository depends on `@foo` (such as a dependency on `@foo//some:target`, it should actually resolve that dependency within globally-declared `@bar` (`@bar//some:target`).
This attribute is _not_ supported in `MODULE.bazel` context (when invoking a repository rule inside a module extension's implementation function). | Dictionary: String -> String | optional | |
| sdist_deps_repos | INTERNAL: DO NOT USE. Default dependencies for building source distributions. | List of labels | optional | `["@req_compile_sdist_compiler__pip//:pkg", "@req_compile_sdist_compiler__setuptools//:pkg", "@req_compile_sdist_compiler__wheel//:pkg"]` |
| sha256 | The expected SHA-256 of the file downloaded. | String | optional | `""` |
-| spoke_prefix | The name of the [py_requirements_repository](#py_requirements_repository) plus a friendly platform suffix. | String | required | |
| urls | A list of URLs to the python wheel. | List of strings | optional | `[]` |
| version | The version of the python package. | String | required | |
| whl | The label to a wheel. | Label | optional | `None` |
diff --git a/private/tests/annotations/BUILD.bazel b/examples/annotations/BUILD.bazel
similarity index 72%
rename from private/tests/annotations/BUILD.bazel
rename to examples/annotations/BUILD.bazel
index d5c025e9..16f5dad0 100644
--- a/private/tests/annotations/BUILD.bazel
+++ b/examples/annotations/BUILD.bazel
@@ -1,8 +1,7 @@
-load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
-load("@req_compile_test_annotations//:defs.bzl", "requirement", "requirements")
+load("@pip_deps//:defs.bzl", "requirement", "requirements")
load("@rules_cc//cc:defs.bzl", "cc_test")
-load("@rules_python//python:defs.bzl", "py_test")
-load("//:defs.bzl", "py_package_annotation_consumer", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_req_compile//:defs.bzl", "py_package_annotation_consumer", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_test")
py_reqs_compiler(
name = "requirements.linux.update",
@@ -44,7 +43,7 @@ py_test(
name = "annotations",
srcs = ["annotations.py"],
deps = [
- "@rules_python//python/runfiles",
+ "@rules_venv//python/runfiles",
] + requirements([
"numpy",
"sphinx",
@@ -63,13 +62,3 @@ cc_test(
srcs = ["numpy_consumer_test.cc"],
deps = [":numpy_headers"],
)
-
-bzl_library(
- name = "annotations_test_deps",
- srcs = ["annotations_test_deps.bzl"],
- visibility = ["//:__subpackages__"],
- deps = [
- "//:defs",
- "@bazel_tools//tools/build_defs/repo:utils.bzl",
- ],
-)
diff --git a/examples/annotations/MODULE.bazel b/examples/annotations/MODULE.bazel
new file mode 100644
index 00000000..49668e19
--- /dev/null
+++ b/examples/annotations/MODULE.bazel
@@ -0,0 +1,96 @@
+"""An example of applying package annotations to downloaded wheels."""
+
+module(
+ name = "req_compile_example_annotations",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_cc", version = "0.2.4")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+requirements.parse(
+ name = "pip_deps",
+ requirements_locks = {
+ ":requirements.linux.txt": "@platforms//os:linux",
+ ":requirements.macos.txt": "@platforms//os:macos",
+ ":requirements.windows.txt": "@platforms//os:windows",
+ },
+)
+use_repo(
+ requirements,
+ "pip_deps",
+ "pip_deps_linux__numpy",
+ "pip_deps_macos__numpy",
+ "pip_deps_windows__numpy",
+)
+
+requirements.package_annotation(
+ additive_build_file_content = """\
+load("@rules_cc//cc:defs.bzl", "cc_library")
+load("@rules_req_compile//:defs.bzl", "py_package_annotation_target")
+
+_INCLUDE_DIR = "site-packages/numpy/core/include"
+
+cc_library(
+ name = "headers",
+ hdrs = glob(["{}/**/*.h".format(_INCLUDE_DIR)]),
+ includes = [_INCLUDE_DIR],
+)
+
+py_package_annotation_target(
+ name = "pkg.headers",
+ target = ":headers",
+)
+""",
+ copy_executables = {
+ "site-packages/numpy/testing/setup.py": "site-packages/numpy/testing/setup.copy.py",
+ },
+ copy_files = {
+ "site-packages/numpy-1.26.4.dist-info/entry_points.txt": "site-packages/numpy-1.26.4.dist-info/entry_points.copy.txt",
+ },
+ copy_srcs = {
+ "site-packages/numpy/conftest.py": "site-packages/numpy/conftest.copy.py",
+ },
+ data = [":pkg.headers"],
+ package = "numpy",
+ patches = [
+ ":numpy.patch",
+ ],
+ deps = [
+ # Show that label dependencies can be added.
+ "@rules_venv//python/runfiles",
+ ],
+)
+
+# Sphinx is known to have a circular dependency. The annotations here solve for that.
+requirements.package_annotation(
+ package = "sphinxcontrib-htmlhelp",
+ deps = ["-sphinx"],
+)
+requirements.package_annotation(
+ package = "sphinxcontrib-applehelp",
+ deps = ["-sphinx"],
+)
+requirements.package_annotation(
+ package = "sphinxcontrib-devhelp",
+ deps = ["-sphinx"],
+)
+requirements.package_annotation(
+ package = "sphinxcontrib-jsmath",
+ deps = ["-sphinx"],
+)
+requirements.package_annotation(
+ package = "sphinxcontrib-qthelp",
+ deps = ["-sphinx"],
+)
+requirements.package_annotation(
+ deps_excludes = ["sphinx"],
+ package = "sphinxcontrib-serializinghtml",
+)
diff --git a/private/tests/annotations/annotations.py b/examples/annotations/annotations.py
similarity index 82%
rename from private/tests/annotations/annotations.py
rename to examples/annotations/annotations.py
index 60188247..e8524482 100644
--- a/private/tests/annotations/annotations.py
+++ b/examples/annotations/annotations.py
@@ -25,9 +25,9 @@ def test_copy_annotations(self) -> None:
assert runfiles, "Failed to locate runfiles"
expected = [
- "req_compile_test_annotations_{}__numpy/site-packages/numpy/conftest.copy.py",
- "req_compile_test_annotations_{}__numpy/site-packages/numpy-1.26.4.dist-info/entry_points.copy.txt",
- "req_compile_test_annotations_{}__numpy/site-packages/numpy/testing/setup.copy.py",
+ "pip_deps_{}__numpy/site-packages/numpy/conftest.copy.py",
+ "pip_deps_{}__numpy/site-packages/numpy-1.26.4.dist-info/entry_points.copy.txt",
+ "pip_deps_{}__numpy/site-packages/numpy/testing/setup.copy.py",
]
platforms = {
diff --git a/private/tests/annotations/numpy.patch b/examples/annotations/numpy.patch
similarity index 100%
rename from private/tests/annotations/numpy.patch
rename to examples/annotations/numpy.patch
diff --git a/private/tests/annotations/numpy_consumer_test.cc b/examples/annotations/numpy_consumer_test.cc
similarity index 100%
rename from private/tests/annotations/numpy_consumer_test.cc
rename to examples/annotations/numpy_consumer_test.cc
diff --git a/private/tests/annotations/requirements.in b/examples/annotations/requirements.in
similarity index 100%
rename from private/tests/annotations/requirements.in
rename to examples/annotations/requirements.in
diff --git a/private/tests/annotations/requirements.linux.txt b/examples/annotations/requirements.linux.txt
similarity index 100%
rename from private/tests/annotations/requirements.linux.txt
rename to examples/annotations/requirements.linux.txt
diff --git a/private/tests/annotations/requirements.macos.txt b/examples/annotations/requirements.macos.txt
similarity index 100%
rename from private/tests/annotations/requirements.macos.txt
rename to examples/annotations/requirements.macos.txt
diff --git a/private/tests/annotations/requirements.windows.txt b/examples/annotations/requirements.windows.txt
similarity index 100%
rename from private/tests/annotations/requirements.windows.txt
rename to examples/annotations/requirements.windows.txt
diff --git a/private/tests/cross_platform/BUILD.bazel b/examples/cross_platform/BUILD.bazel
similarity index 82%
rename from private/tests/cross_platform/BUILD.bazel
rename to examples/cross_platform/BUILD.bazel
index ccf28ea0..d803bb8f 100644
--- a/private/tests/cross_platform/BUILD.bazel
+++ b/examples/cross_platform/BUILD.bazel
@@ -1,8 +1,8 @@
-load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
load("@rules_cc//cc:defs.bzl", "cc_toolchain")
-load("@rules_python//python:defs.bzl", "py_binary", "py_test")
-load("//:defs.bzl", "py_reqs_compiler", "py_reqs_remote_compiler", "py_reqs_solution_test")
-load(":cross_platform_test_utils.bzl", "fake_cc_config", "platform_transitioned_output_group")
+load("@rules_req_compile//:defs.bzl", "py_reqs_compiler", "py_reqs_remote_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_binary", "py_test")
+load("@rules_venv//python/venv:defs.bzl", "py_venv_zipapp")
+load(":cross_platform_test_utils.bzl", "fake_cc_config", "platform_transitioned_file")
py_reqs_compiler(
name = "requirements.linux.update",
@@ -123,32 +123,34 @@ py_binary(
name = "cross_platform",
srcs = ["cross_platform.py"],
deps = [
- "@req_compile_test_cross_platform//black",
+ "@pip_deps//black",
],
)
-platform_transitioned_output_group(
+py_venv_zipapp(
+ name = "cross_platform_pyz",
+ binary = ":cross_platform",
+)
+
+platform_transitioned_file(
name = "cross_platform_linux",
extra_toolchains = [":fake_cc_toolchain"],
- output_group = "python_zip_file",
platform = ":linux",
- target = ":cross_platform",
+ target = ":cross_platform_pyz",
)
-platform_transitioned_output_group(
+platform_transitioned_file(
name = "cross_platform_macos",
extra_toolchains = [":fake_cc_toolchain"],
- output_group = "python_zip_file",
platform = ":macos",
- target = ":cross_platform",
+ target = ":cross_platform_pyz",
)
-platform_transitioned_output_group(
+platform_transitioned_file(
name = "cross_platform_windows",
extra_toolchains = [":fake_cc_toolchain"],
- output_group = "python_zip_file",
platform = ":windows",
- target = ":cross_platform",
+ target = ":cross_platform_pyz",
)
py_test(
@@ -164,12 +166,5 @@ py_test(
"PYTHON_ZIP_FILE_MACOS": "$(rlocationpath :cross_platform_macos)",
"PYTHON_ZIP_FILE_WINDOWS": "$(rlocationpath :cross_platform_windows)",
},
- deps = ["@rules_python//python/runfiles"],
-)
-
-bzl_library(
- name = "cross_platform_test_utils",
- srcs = ["cross_platform_test_utils.bzl"],
- visibility = ["//:__subpackages__"],
- deps = ["@rules_cc//cc/common"],
+ deps = ["@rules_venv//python/runfiles"],
)
diff --git a/examples/cross_platform/MODULE.bazel b/examples/cross_platform/MODULE.bazel
new file mode 100644
index 00000000..5fdb9bc9
--- /dev/null
+++ b/examples/cross_platform/MODULE.bazel
@@ -0,0 +1,38 @@
+"""An example of building Python zipapps for platforms other than the host."""
+
+module(
+ name = "req_compile_example_cross_platform",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "bazel_skylib", version = "1.8.2")
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_cc", version = "0.2.4")
+bazel_dep(name = "rules_python", version = "1.7.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+requirements.parse(
+ name = "pip_deps",
+ requirements_locks = {
+ ":requirements.linux.txt": "@platforms//os:linux",
+ ":requirements.macos.txt": "@platforms//os:macos",
+ ":requirements.windows.txt": "@platforms//os:windows",
+ },
+)
+use_repo(requirements, "pip_deps")
+
+# Cross-platform builds require hermetic interpreters for each target platform.
+python = use_extension("@rules_python//python/extensions:python.bzl", "python")
+python.toolchain(
+ # Working around a rules_python issue with docker
+ # https://github.com/bazelbuild/rules_python/pull/713
+ ignore_root_user_error = True,
+ is_default = True,
+ python_version = "3.11",
+)
diff --git a/private/tests/cross_platform/cross_platform.py b/examples/cross_platform/cross_platform.py
similarity index 100%
rename from private/tests/cross_platform/cross_platform.py
rename to examples/cross_platform/cross_platform.py
diff --git a/private/tests/cross_platform/cross_platform_test.py b/examples/cross_platform/cross_platform_test.py
similarity index 81%
rename from private/tests/cross_platform/cross_platform_test.py
rename to examples/cross_platform/cross_platform_test.py
index c4171ba5..a809f8db 100644
--- a/private/tests/cross_platform/cross_platform_test.py
+++ b/examples/cross_platform/cross_platform_test.py
@@ -66,13 +66,13 @@ def test_linux(self) -> None:
self.python_zip_file_tester(
rlocationpath=os.environ["PYTHON_ZIP_FILE_LINUX"],
expected=[
- "runfiles/.*_linux__black/site-packages/black/__init__.py",
+ ".*_linux__black/site-packages/black/__init__.py",
],
illegal_prefixes=(
- "runfiles/.*_platform_macos__",
- "runfiles/.*_windows__",
+ ".*_platform_macos__",
+ ".*_windows__",
# This is a windows only dependency.
- "runfiles/.*_linux__colorama",
+ ".*_linux__colorama",
),
)
@@ -80,13 +80,13 @@ def test_macos(self) -> None:
self.python_zip_file_tester(
rlocationpath=os.environ["PYTHON_ZIP_FILE_MACOS"],
expected=[
- "runfiles/.*_macos__black/site-packages/black/__init__.py",
+ ".*_macos__black/site-packages/black/__init__.py",
],
illegal_prefixes=(
- "runfiles/.*_linux__",
- "runfiles/.*_windows__",
+ ".*_linux__",
+ ".*_windows__",
# This is a windows only dependency.
- "runfiles/.*_macos__colorama",
+ ".*_macos__colorama",
),
)
@@ -94,12 +94,12 @@ def test_windows(self) -> None:
self.python_zip_file_tester(
rlocationpath=os.environ["PYTHON_ZIP_FILE_WINDOWS"],
expected=[
- "runfiles/.*_windows__black/site-packages/black/__init__.py",
- "runfiles/.*_windows__colorama/site-packages/colorama/__init__.py",
+ ".*_windows__black/site-packages/black/__init__.py",
+ ".*_windows__colorama/site-packages/colorama/__init__.py",
],
illegal_prefixes=(
- "runfiles/.*_linux__",
- "runfiles/.*_macos__",
+ ".*_linux__",
+ ".*_macos__",
),
)
diff --git a/private/tests/cross_platform/cross_platform_test_utils.bzl b/examples/cross_platform/cross_platform_test_utils.bzl
similarity index 75%
rename from private/tests/cross_platform/cross_platform_test_utils.bzl
rename to examples/cross_platform/cross_platform_test_utils.bzl
index d0a98563..873fe1cf 100644
--- a/private/tests/cross_platform/cross_platform_test_utils.bzl
+++ b/examples/cross_platform/cross_platform_test_utils.bzl
@@ -20,27 +20,27 @@ _platform_transition = transition(
],
)
-def _platform_transitioned_output_group_impl(ctx):
+def _platform_transitioned_file_impl(ctx):
target = ctx.attr.target
- outputs = getattr(target[OutputGroupInfo], ctx.attr.output_group)
- if not outputs:
- fail("Could not find output group '{}' in '{}'".format(ctx.attr.output_group, target.label))
+ files = target[DefaultInfo].files.to_list()
+ if len(files) != 1:
+ fail("Expected exactly 1 file in DefaultInfo of '{}', got {}".format(target.label, len(files)))
- zip_file = outputs.to_list()[0]
+ src_file = files[0]
- link = ctx.actions.declare_file("{}.{}".format(ctx.label.name, zip_file.extension).rstrip("."))
+ link = ctx.actions.declare_file("{}.{}".format(ctx.label.name, src_file.extension).rstrip("."))
ctx.actions.symlink(
output = link,
- target_file = zip_file,
+ target_file = src_file,
)
return [DefaultInfo(
files = depset([link]),
)]
-platform_transitioned_output_group = rule(
- doc = "A rule for accessing files in a target's `OutputGroupInfo` through a transition.",
- implementation = _platform_transitioned_output_group_impl,
+platform_transitioned_file = rule(
+ doc = "A rule for accessing the single file produced by a target through a platform transition.",
+ implementation = _platform_transitioned_file_impl,
cfg = _platform_transition,
attrs = {
"extra_toolchains": attr.label_list(
@@ -49,10 +49,6 @@ platform_transitioned_output_group = rule(
"apply in the transition."
),
),
- "output_group": attr.string(
- doc = "The `OutputGroupInfo` field to access.",
- mandatory = True,
- ),
"platform": attr.label(
doc = "The label to a [Bazel platform](https://bazel.build/extending/platforms)",
),
diff --git a/private/tests/cross_platform/requirements.in b/examples/cross_platform/requirements.in
similarity index 100%
rename from private/tests/cross_platform/requirements.in
rename to examples/cross_platform/requirements.in
diff --git a/private/tests/cross_platform/requirements.linux.txt b/examples/cross_platform/requirements.linux.txt
similarity index 100%
rename from private/tests/cross_platform/requirements.linux.txt
rename to examples/cross_platform/requirements.linux.txt
diff --git a/private/tests/cross_platform/requirements.macos.txt b/examples/cross_platform/requirements.macos.txt
similarity index 100%
rename from private/tests/cross_platform/requirements.macos.txt
rename to examples/cross_platform/requirements.macos.txt
diff --git a/private/tests/cross_platform/requirements.windows.txt b/examples/cross_platform/requirements.windows.txt
similarity index 100%
rename from private/tests/cross_platform/requirements.windows.txt
rename to examples/cross_platform/requirements.windows.txt
diff --git a/examples/find_links/BUILD.bazel b/examples/find_links/BUILD.bazel
new file mode 100644
index 00000000..9e9e3149
--- /dev/null
+++ b/examples/find_links/BUILD.bazel
@@ -0,0 +1,45 @@
+load("@rules_req_compile//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_binary", "py_test")
+
+exports_files(["find_links.py"])
+
+filegroup(
+ name = "requirements",
+ srcs = ["requirements.in"],
+ data = ["wheeldir/.gitkeep"] + glob(
+ include = ["wheeldir/*.whl"],
+ allow_empty = True,
+ ),
+)
+
+py_binary(
+ name = "compiler_wrapper",
+ srcs = ["compiler_wrapper.py"],
+)
+
+py_reqs_compiler(
+ name = "requirements.update",
+ custom_compile_command = "bazel run //:compiler_wrapper",
+ requirements_in = ":requirements",
+ requirements_txt = "requirements.txt",
+)
+
+py_reqs_solution_test(
+ name = "requirements_test",
+ compiler = ":requirements.update",
+)
+
+py_reqs_compiler(
+ name = "sdist_requirements.update",
+ allow_sdists = True,
+ requirements_in = "sdist_requirements.in",
+ requirements_txt = "sdist_requirements.txt",
+)
+
+py_test(
+ name = "find_links",
+ srcs = ["find_links.py"],
+ deps = [
+ "@pip_deps//pyspark",
+ ],
+)
diff --git a/private/tests/find_links/BUILD.find_links.bazel b/examples/find_links/BUILD.find_links.bazel
similarity index 100%
rename from private/tests/find_links/BUILD.find_links.bazel
rename to examples/find_links/BUILD.find_links.bazel
diff --git a/examples/find_links/MODULE.bazel b/examples/find_links/MODULE.bazel
new file mode 100644
index 00000000..d9d5bb07
--- /dev/null
+++ b/examples/find_links/MODULE.bazel
@@ -0,0 +1,72 @@
+"""An example of resolving requirements from a local `--find-links` directory."""
+
+module(
+ name = "req_compile_example_find_links",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "bazel_skylib", version = "1.8.2")
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_python", version = "1.7.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+python = use_extension("@rules_python//python/extensions:python.bzl", "python")
+python.toolchain(
+ # Working around a rules_python issue with docker
+ # https://github.com/bazelbuild/rules_python/pull/713
+ ignore_root_user_error = True,
+ is_default = True,
+ python_version = "3.11",
+)
+use_repo(
+ python,
+ "python_3_11_aarch64-apple-darwin",
+ "python_3_11_aarch64-unknown-linux-gnu",
+ "python_3_11_x86_64-apple-darwin",
+ "python_3_11_x86_64-pc-windows-msvc",
+ "python_3_11_x86_64-unknown-linux-gnu",
+)
+
+# A source distribution is built so the test has a locally produced wheel
+# to resolve out of a `--find-links` directory.
+sdist_requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+sdist_requirements.parse(
+ name = "sdist_deps",
+ interpreter_linux_aarch64 = "@python_3_11_aarch64-unknown-linux-gnu//:python",
+ interpreter_linux_x86_64 = "@python_3_11_x86_64-unknown-linux-gnu//:python",
+ interpreter_macos_aarch64 = "@python_3_11_aarch64-apple-darwin//:python",
+ interpreter_macos_x86_64 = "@python_3_11_x86_64-apple-darwin//:python",
+ interpreter_windows = "@python_3_11_x86_64-pc-windows-msvc//:python",
+ requirements_lock = ":sdist_requirements.txt",
+)
+use_repo(
+ sdist_requirements,
+ "sdist_deps",
+ "sdist_deps__pyspark",
+)
+
+find_links_test_repository = use_repo_rule("//:find_links_test_repo.bzl", "find_links_test_repository")
+
+find_links_test_repository(
+ name = "find_links_test",
+ build_file = ":BUILD.find_links.bazel",
+ pyspark_wheel_data = "@sdist_deps__pyspark//:whl.json",
+ requirements_in = ":requirements.in",
+ requirements_txt = ":requirements.txt",
+ # Needs to match `--find-links` in `//:requirements.in`
+ wheeldir = "wheeldir",
+)
+
+# Use a separate extension since @find_links_test is generated by an extension
+# that also depends upon `@rules_req_compile//extensions:python.bzl`.
+find_links_requirements = use_extension("//:extension.bzl", "requirements")
+find_links_requirements.parse(
+ name = "pip_deps",
+ requirements_lock = "@find_links_test//:requirements.txt",
+)
+use_repo(find_links_requirements, "pip_deps")
diff --git a/private/tests/find_links/compiler_wrapper.py b/examples/find_links/compiler_wrapper.py
similarity index 86%
rename from private/tests/find_links/compiler_wrapper.py
rename to examples/find_links/compiler_wrapper.py
index c19f4a9f..fa696909 100644
--- a/private/tests/find_links/compiler_wrapper.py
+++ b/examples/find_links/compiler_wrapper.py
@@ -36,9 +36,9 @@ def main() -> None:
"--disable-pip-version-check",
"--no-deps",
"--wheel-dir",
- workspace_dir / "private/tests/find_links/wheeldir",
+ workspace_dir / "wheeldir",
"-r",
- workspace_dir / "private/tests/find_links/requirements.in",
+ workspace_dir / "requirements.in",
],
cwd=workspace_dir,
check=True,
@@ -49,7 +49,7 @@ def main() -> None:
[
"bazel",
"run",
- "//private/tests/find_links:requirements.update",
+ "//:requirements.update",
"--",
]
+ sys.argv[1:],
diff --git a/private/tests/find_links/extension.bzl b/examples/find_links/extension.bzl
similarity index 63%
rename from private/tests/find_links/extension.bzl
rename to examples/find_links/extension.bzl
index c9e22142..f297f75c 100644
--- a/private/tests/find_links/extension.bzl
+++ b/examples/find_links/extension.bzl
@@ -1,6 +1,6 @@
"""Re-export the parse extension under a different name so we don't
create a cirular dep tree during test."""
-load("//extensions:python.bzl", _requirements = "requirements")
+load("@rules_req_compile//extensions:python.bzl", _requirements = "requirements")
requirements = _requirements
diff --git a/private/tests/find_links/find_links.py b/examples/find_links/find_links.py
similarity index 100%
rename from private/tests/find_links/find_links.py
rename to examples/find_links/find_links.py
diff --git a/private/tests/find_links/find_links_test_repo.bzl b/examples/find_links/find_links_test_repo.bzl
similarity index 95%
rename from private/tests/find_links/find_links_test_repo.bzl
rename to examples/find_links/find_links_test_repo.bzl
index 112355fa..abf67b04 100644
--- a/private/tests/find_links/find_links_test_repo.bzl
+++ b/examples/find_links/find_links_test_repo.bzl
@@ -1,6 +1,7 @@
"""A repository rule for the req-compile find_links integration test."""
-load("//private:whl_repo.bzl", "load_sdist_data")
+# buildifier: disable=bzl-visibility
+load("@rules_req_compile//req_compile/private:whl_repo.bzl", "load_sdist_data")
def _find_links_test_repository_impl(repository_ctx):
repository_ctx.file("WORKSPACE.bazel", """workspace(name = "{}")""".format(
diff --git a/private/tests/find_links/requirements.in b/examples/find_links/requirements.in
similarity index 100%
rename from private/tests/find_links/requirements.in
rename to examples/find_links/requirements.in
diff --git a/private/tests/find_links/requirements.txt b/examples/find_links/requirements.txt
similarity index 100%
rename from private/tests/find_links/requirements.txt
rename to examples/find_links/requirements.txt
diff --git a/private/tests/sdist/requirements.in b/examples/find_links/sdist_requirements.in
similarity index 100%
rename from private/tests/sdist/requirements.in
rename to examples/find_links/sdist_requirements.in
diff --git a/examples/find_links/sdist_requirements.txt b/examples/find_links/sdist_requirements.txt
new file mode 100644
index 00000000..29afe337
--- /dev/null
+++ b/examples/find_links/sdist_requirements.txt
@@ -0,0 +1,21 @@
+################################################################################
+## AUTOGENERATED: This file is autogenerated by req-compile.
+##
+## Python: 3.11.7
+## Platform: Darwin
+##
+## To regenerate this file, use the following command:
+##
+## bazel run //:sdist_requirements.update
+##
+################################################################################
+
+py4j==0.10.9.7 \
+ --hash=sha256:85defdfd2b2376eb3abf5ca6474b51ab7e0de341c75a02f46dc9b5976f5a5c1b
+ # via pyspark (==0.10.9.7)
+ # https://files.pythonhosted.org/packages/10/30/a58b32568f1623aaad7db22aa9eafc4c6c194b429ff35bdc55ca2726da47/py4j-0.10.9.7-py2.py3-none-any.whl#sha256=85defdfd2b2376eb3abf5ca6474b51ab7e0de341c75a02f46dc9b5976f5a5c1b
+pyspark==3.5.1 \
+ --hash=sha256:dd6569e547365eadc4f887bf57f153e4d582a68c4b490de475d55b9981664910
+ # via sdist_requirements.in
+ # https://files.pythonhosted.org/packages/73/e5/c9eb78cc982dafb7b5834bc5c368fe596216c8b9f7c4b4ffa104c4d2ab8f/pyspark-3.5.1.tar.gz#sha256=dd6569e547365eadc4f887bf57f153e4d582a68c4b490de475d55b9981664910
+
diff --git a/private/tests/find_links/wheeldir/.gitkeep b/examples/find_links/wheeldir/.gitkeep
similarity index 100%
rename from private/tests/find_links/wheeldir/.gitkeep
rename to examples/find_links/wheeldir/.gitkeep
diff --git a/private/examples/multiplatform_py_test/.bazelrc b/examples/multiplatform_py_test/.bazelrc
similarity index 100%
rename from private/examples/multiplatform_py_test/.bazelrc
rename to examples/multiplatform_py_test/.bazelrc
diff --git a/private/examples/multiplatform_py_test/.bazelversion b/examples/multiplatform_py_test/.bazelversion
similarity index 100%
rename from private/examples/multiplatform_py_test/.bazelversion
rename to examples/multiplatform_py_test/.bazelversion
diff --git a/private/examples/multiplatform_py_test/BUILD.bazel b/examples/multiplatform_py_test/BUILD.bazel
similarity index 94%
rename from private/examples/multiplatform_py_test/BUILD.bazel
rename to examples/multiplatform_py_test/BUILD.bazel
index bf132179..71cf28ba 100644
--- a/private/examples/multiplatform_py_test/BUILD.bazel
+++ b/examples/multiplatform_py_test/BUILD.bazel
@@ -1,5 +1,5 @@
-load("@rules_python//python:defs.bzl", "py_test")
load("@rules_req_compile//:defs.bzl", "py_reqs_compiler")
+load("@rules_venv//python:defs.bzl", "py_test")
py_test(
name = "hello_test",
diff --git a/private/examples/multiplatform_py_test/MODULE.bazel b/examples/multiplatform_py_test/MODULE.bazel
similarity index 82%
rename from private/examples/multiplatform_py_test/MODULE.bazel
rename to examples/multiplatform_py_test/MODULE.bazel
index c0a672fe..09b5b7e0 100644
--- a/private/examples/multiplatform_py_test/MODULE.bazel
+++ b/examples/multiplatform_py_test/MODULE.bazel
@@ -3,12 +3,12 @@ module(
version = "1.0",
)
-bazel_dep(name = "rules_python", version = "1.3.0")
-bazel_dep(name = "platforms", version = "0.0.11")
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
bazel_dep(name = "rules_req_compile", version = "0.0.0")
local_path_override(
module_name = "rules_req_compile",
- path = "../../..",
+ path = "../..",
)
requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
diff --git a/private/examples/multiplatform_py_test/hello_test.py b/examples/multiplatform_py_test/hello_test.py
similarity index 100%
rename from private/examples/multiplatform_py_test/hello_test.py
rename to examples/multiplatform_py_test/hello_test.py
diff --git a/private/examples/multiplatform_py_test/requirements.in b/examples/multiplatform_py_test/requirements.in
similarity index 100%
rename from private/examples/multiplatform_py_test/requirements.in
rename to examples/multiplatform_py_test/requirements.in
diff --git a/private/examples/multiplatform_py_test/requirements.linux.txt b/examples/multiplatform_py_test/requirements.linux.txt
similarity index 100%
rename from private/examples/multiplatform_py_test/requirements.linux.txt
rename to examples/multiplatform_py_test/requirements.linux.txt
diff --git a/private/examples/multiplatform_py_test/requirements.macos.txt b/examples/multiplatform_py_test/requirements.macos.txt
similarity index 100%
rename from private/examples/multiplatform_py_test/requirements.macos.txt
rename to examples/multiplatform_py_test/requirements.macos.txt
diff --git a/private/examples/multiplatform_py_test/requirements.windows.txt b/examples/multiplatform_py_test/requirements.windows.txt
similarity index 100%
rename from private/examples/multiplatform_py_test/requirements.windows.txt
rename to examples/multiplatform_py_test/requirements.windows.txt
diff --git a/private/tests/override_module_repos/overridee/BUILD.bazel b/examples/override_module_repos/overridee/BUILD.bazel
similarity index 68%
rename from private/tests/override_module_repos/overridee/BUILD.bazel
rename to examples/override_module_repos/overridee/BUILD.bazel
index 70392218..550966d3 100644
--- a/private/tests/override_module_repos/overridee/BUILD.bazel
+++ b/examples/override_module_repos/overridee/BUILD.bazel
@@ -1,4 +1,4 @@
-load("@rules_python//python:defs.bzl", "py_library")
+load("@rules_venv//python:defs.bzl", "py_library")
py_library(
name = "test",
diff --git a/private/tests/override_module_repos/overridee/MODULE.bazel b/examples/override_module_repos/overridee/MODULE.bazel
similarity index 82%
rename from private/tests/override_module_repos/overridee/MODULE.bazel
rename to examples/override_module_repos/overridee/MODULE.bazel
index 88595c16..813a9f6d 100644
--- a/private/tests/override_module_repos/overridee/MODULE.bazel
+++ b/examples/override_module_repos/overridee/MODULE.bazel
@@ -3,11 +3,11 @@ module(
version = "1.0",
)
-bazel_dep(name = "rules_python", version = "0.34.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
bazel_dep(name = "rules_req_compile")
local_path_override(
module_name = "rules_req_compile",
- path = "../../../..",
+ path = "../../..",
)
requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
diff --git a/private/tests/override_module_repos/overridee/requirements.in b/examples/override_module_repos/overridee/requirements.in
similarity index 100%
rename from private/tests/override_module_repos/overridee/requirements.in
rename to examples/override_module_repos/overridee/requirements.in
diff --git a/private/tests/override_module_repos/overridee/requirements.txt b/examples/override_module_repos/overridee/requirements.txt
similarity index 100%
rename from private/tests/override_module_repos/overridee/requirements.txt
rename to examples/override_module_repos/overridee/requirements.txt
diff --git a/private/tests/override_module_repos/overrider/BUILD.bazel b/examples/override_module_repos/overrider/BUILD.bazel
similarity index 67%
rename from private/tests/override_module_repos/overrider/BUILD.bazel
rename to examples/override_module_repos/overrider/BUILD.bazel
index 84f03e5a..b5fc6fec 100644
--- a/private/tests/override_module_repos/overrider/BUILD.bazel
+++ b/examples/override_module_repos/overrider/BUILD.bazel
@@ -1,4 +1,4 @@
-load("@rules_python//python:defs.bzl", "py_test")
+load("@rules_venv//python:defs.bzl", "py_test")
py_test(
name = "test",
diff --git a/private/tests/override_module_repos/overrider/MODULE.bazel b/examples/override_module_repos/overrider/MODULE.bazel
similarity index 88%
rename from private/tests/override_module_repos/overrider/MODULE.bazel
rename to examples/override_module_repos/overrider/MODULE.bazel
index f300b8ff..317a7f61 100644
--- a/private/tests/override_module_repos/overrider/MODULE.bazel
+++ b/examples/override_module_repos/overrider/MODULE.bazel
@@ -3,11 +3,11 @@ module(
version = "1.0",
)
-bazel_dep(name = "rules_python", version = "1.7.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
bazel_dep(name = "rules_req_compile")
local_path_override(
module_name = "rules_req_compile",
- path = "../../../..",
+ path = "../../..",
)
bazel_dep(name = "overridee")
diff --git a/private/tests/override_module_repos/overrider/README.md b/examples/override_module_repos/overrider/README.md
similarity index 100%
rename from private/tests/override_module_repos/overrider/README.md
rename to examples/override_module_repos/overrider/README.md
diff --git a/private/tests/override_module_repos/overrider/requirements.in b/examples/override_module_repos/overrider/requirements.in
similarity index 100%
rename from private/tests/override_module_repos/overrider/requirements.in
rename to examples/override_module_repos/overrider/requirements.in
diff --git a/private/tests/override_module_repos/overrider/requirements.txt b/examples/override_module_repos/overrider/requirements.txt
similarity index 100%
rename from private/tests/override_module_repos/overrider/requirements.txt
rename to examples/override_module_repos/overrider/requirements.txt
diff --git a/private/tests/override_module_repos/overrider/test.py b/examples/override_module_repos/overrider/test.py
similarity index 100%
rename from private/tests/override_module_repos/overrider/test.py
rename to examples/override_module_repos/overrider/test.py
diff --git a/private/tests/package_aliases/BUILD.bazel b/examples/package_aliases/BUILD.bazel
similarity index 81%
rename from private/tests/package_aliases/BUILD.bazel
rename to examples/package_aliases/BUILD.bazel
index 552e30da..299f6cec 100644
--- a/private/tests/package_aliases/BUILD.bazel
+++ b/examples/package_aliases/BUILD.bazel
@@ -1,5 +1,5 @@
-load("@rules_python//python:py_library.bzl", "py_library")
-load("@rules_python//python:py_test.bzl", "py_test")
+load("@rules_venv//python:py_library.bzl", "py_library")
+load("@rules_venv//python:py_test.bzl", "py_test")
py_library(
name = "improved_setuptools",
diff --git a/private/tests/package_aliases/MODULE.bazel b/examples/package_aliases/MODULE.bazel
similarity index 87%
rename from private/tests/package_aliases/MODULE.bazel
rename to examples/package_aliases/MODULE.bazel
index d39a90d5..50bb908d 100644
--- a/private/tests/package_aliases/MODULE.bazel
+++ b/examples/package_aliases/MODULE.bazel
@@ -3,11 +3,11 @@ module(
version = "1.0",
)
-bazel_dep(name = "rules_python", version = "1.7.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
bazel_dep(name = "rules_req_compile")
local_path_override(
module_name = "rules_req_compile",
- path = "../../..",
+ path = "../..",
)
requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
diff --git a/private/tests/package_aliases/dep_checker.py b/examples/package_aliases/dep_checker.py
similarity index 100%
rename from private/tests/package_aliases/dep_checker.py
rename to examples/package_aliases/dep_checker.py
diff --git a/private/tests/package_aliases/requirements.in b/examples/package_aliases/requirements.in
similarity index 100%
rename from private/tests/package_aliases/requirements.in
rename to examples/package_aliases/requirements.in
diff --git a/private/tests/package_aliases/requirements.txt b/examples/package_aliases/requirements.txt
similarity index 100%
rename from private/tests/package_aliases/requirements.txt
rename to examples/package_aliases/requirements.txt
diff --git a/private/tests/package_aliases/setuptools.py b/examples/package_aliases/setuptools.py
similarity index 100%
rename from private/tests/package_aliases/setuptools.py
rename to examples/package_aliases/setuptools.py
diff --git a/private/tests/pip_parse_compat/BUILD.bazel b/examples/pip_parse_compat/BUILD.bazel
similarity index 77%
rename from private/tests/pip_parse_compat/BUILD.bazel
rename to examples/pip_parse_compat/BUILD.bazel
index bcd708fe..95d2bcdc 100644
--- a/private/tests/pip_parse_compat/BUILD.bazel
+++ b/examples/pip_parse_compat/BUILD.bazel
@@ -1,8 +1,8 @@
load("@bazel_skylib//rules:diff_test.bzl", "diff_test")
-load("@req_compile_test_pip_parse_compat_multi_plat//:requirements.bzl", multi_plat_requirement = "requirement")
-load("@req_compile_test_pip_parse_compat_single_plat//:requirements.bzl", single_plat_requirement = "requirement")
-load("@rules_python//python:defs.bzl", "py_binary", "py_test")
-load("//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@multi_plat_pip_deps//:requirements.bzl", multi_plat_requirement = "requirement")
+load("@rules_req_compile//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_binary", "py_test")
+load("@single_plat_pip_deps//:requirements.bzl", single_plat_requirement = "requirement")
# gazelle:ignore
@@ -13,7 +13,7 @@ py_binary(
py_reqs_compiler(
name = "requirements.update",
- custom_compile_command = "bazel run \"@//private/tests/pip_parse_compat:compiler_wrapper\"",
+ custom_compile_command = "bazel run \"@//:compiler_wrapper\"",
requirements_in = "requirements.in",
requirements_txt = "requirements.txt",
)
diff --git a/examples/pip_parse_compat/MODULE.bazel b/examples/pip_parse_compat/MODULE.bazel
new file mode 100644
index 00000000..2b9123ef
--- /dev/null
+++ b/examples/pip_parse_compat/MODULE.bazel
@@ -0,0 +1,34 @@
+"""An example of using the `rules_python` `pip_parse` compatibility interface."""
+
+module(
+ name = "req_compile_example_pip_parse_compat",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "bazel_skylib", version = "1.8.2")
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+requirements.parse(
+ name = "single_plat_pip_deps",
+ requirements_lock = ":requirements.txt",
+)
+requirements.parse(
+ name = "multi_plat_pip_deps",
+ requirements_locks = {
+ ":requirements.linux.txt": "@platforms//os:linux",
+ ":requirements.macos.txt": "@platforms//os:macos",
+ ":requirements.windows.txt": "@platforms//os:windows",
+ },
+)
+use_repo(
+ requirements,
+ "multi_plat_pip_deps",
+ "single_plat_pip_deps",
+)
diff --git a/private/tests/pip_parse_compat/compiler_wrapper.py b/examples/pip_parse_compat/compiler_wrapper.py
similarity index 88%
rename from private/tests/pip_parse_compat/compiler_wrapper.py
rename to examples/pip_parse_compat/compiler_wrapper.py
index 97a85ca9..54e3c81f 100644
--- a/private/tests/pip_parse_compat/compiler_wrapper.py
+++ b/examples/pip_parse_compat/compiler_wrapper.py
@@ -32,7 +32,7 @@ def main() -> None:
[
"bazel",
"run",
- "//private/tests/pip_parse_compat:requirements.update",
+ "//:requirements.update",
"--",
]
+ sys.argv[1:],
@@ -41,7 +41,7 @@ def main() -> None:
env=environ,
)
- output = workspace_dir / "private/tests/pip_parse_compat/requirements.txt"
+ output = workspace_dir / "requirements.txt"
for plat in ("windows", "linux", "macos"):
shutil.copy(output, output.parent / f"requirements.{plat}.txt")
diff --git a/private/tests/pip_parse_compat/pip_parse_compat.py b/examples/pip_parse_compat/pip_parse_compat.py
similarity index 100%
rename from private/tests/pip_parse_compat/pip_parse_compat.py
rename to examples/pip_parse_compat/pip_parse_compat.py
diff --git a/private/tests/pip_parse_compat/requirements.in b/examples/pip_parse_compat/requirements.in
similarity index 100%
rename from private/tests/pip_parse_compat/requirements.in
rename to examples/pip_parse_compat/requirements.in
diff --git a/private/tests/pip_parse_compat/requirements.linux.txt b/examples/pip_parse_compat/requirements.linux.txt
similarity index 100%
rename from private/tests/pip_parse_compat/requirements.linux.txt
rename to examples/pip_parse_compat/requirements.linux.txt
diff --git a/private/tests/pip_parse_compat/requirements.macos.txt b/examples/pip_parse_compat/requirements.macos.txt
similarity index 100%
rename from private/tests/pip_parse_compat/requirements.macos.txt
rename to examples/pip_parse_compat/requirements.macos.txt
diff --git a/private/tests/pip_parse_compat/requirements.txt b/examples/pip_parse_compat/requirements.txt
similarity index 100%
rename from private/tests/pip_parse_compat/requirements.txt
rename to examples/pip_parse_compat/requirements.txt
diff --git a/private/tests/pip_parse_compat/requirements.windows.txt b/examples/pip_parse_compat/requirements.windows.txt
similarity index 100%
rename from private/tests/pip_parse_compat/requirements.windows.txt
rename to examples/pip_parse_compat/requirements.windows.txt
diff --git a/private/tests/platlib/BUILD.bazel b/examples/platlib/BUILD.bazel
similarity index 86%
rename from private/tests/platlib/BUILD.bazel
rename to examples/platlib/BUILD.bazel
index e2ab1555..c68de52d 100644
--- a/private/tests/platlib/BUILD.bazel
+++ b/examples/platlib/BUILD.bazel
@@ -1,5 +1,5 @@
-load("@rules_python//python:defs.bzl", "py_test")
-load("//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_req_compile//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_test")
py_reqs_compiler(
name = "requirements.linux.update",
@@ -41,6 +41,6 @@ py_test(
name = "platlib",
srcs = ["platlib.py"],
deps = [
- "@req_compile_test_platlib//libclang",
+ "@pip_deps//libclang",
],
)
diff --git a/examples/platlib/MODULE.bazel b/examples/platlib/MODULE.bazel
new file mode 100644
index 00000000..0b75df80
--- /dev/null
+++ b/examples/platlib/MODULE.bazel
@@ -0,0 +1,25 @@
+"""An example of consuming platform specific wheels."""
+
+module(
+ name = "req_compile_example_platlib",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+requirements.parse(
+ name = "pip_deps",
+ requirements_locks = {
+ ":requirements.linux.txt": "@platforms//os:linux",
+ ":requirements.macos.txt": "@platforms//os:macos",
+ ":requirements.windows.txt": "@platforms//os:windows",
+ },
+)
+use_repo(requirements, "pip_deps")
diff --git a/private/tests/platlib/platlib.py b/examples/platlib/platlib.py
similarity index 100%
rename from private/tests/platlib/platlib.py
rename to examples/platlib/platlib.py
diff --git a/private/tests/platlib/requirements.in b/examples/platlib/requirements.in
similarity index 100%
rename from private/tests/platlib/requirements.in
rename to examples/platlib/requirements.in
diff --git a/private/tests/platlib/requirements.linux.txt b/examples/platlib/requirements.linux.txt
similarity index 100%
rename from private/tests/platlib/requirements.linux.txt
rename to examples/platlib/requirements.linux.txt
diff --git a/private/tests/platlib/requirements.macos.txt b/examples/platlib/requirements.macos.txt
similarity index 100%
rename from private/tests/platlib/requirements.macos.txt
rename to examples/platlib/requirements.macos.txt
diff --git a/private/tests/platlib/requirements.windows.txt b/examples/platlib/requirements.windows.txt
similarity index 100%
rename from private/tests/platlib/requirements.windows.txt
rename to examples/platlib/requirements.windows.txt
diff --git a/private/tests/sdist/BUILD.bazel b/examples/sdist/BUILD.bazel
similarity index 67%
rename from private/tests/sdist/BUILD.bazel
rename to examples/sdist/BUILD.bazel
index 40bdd282..adb05974 100644
--- a/private/tests/sdist/BUILD.bazel
+++ b/examples/sdist/BUILD.bazel
@@ -1,5 +1,5 @@
-load("@rules_python//python:defs.bzl", "py_test")
-load("//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_req_compile//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_test")
py_reqs_compiler(
name = "requirements.update",
@@ -17,6 +17,6 @@ py_test(
name = "sdist",
srcs = ["sdist.py"],
deps = [
- "@req_compile_test_sdist//pyspark",
+ "@pip_deps//pyspark",
],
)
diff --git a/examples/sdist/MODULE.bazel b/examples/sdist/MODULE.bazel
new file mode 100644
index 00000000..3d3c6537
--- /dev/null
+++ b/examples/sdist/MODULE.bazel
@@ -0,0 +1,45 @@
+"""An example of building a source distribution into a wheel."""
+
+module(
+ name = "req_compile_example_sdist",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_python", version = "1.7.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+python = use_extension("@rules_python//python/extensions:python.bzl", "python")
+python.toolchain(
+ # Working around a rules_python issue with docker
+ # https://github.com/bazelbuild/rules_python/pull/713
+ ignore_root_user_error = True,
+ is_default = True,
+ python_version = "3.11",
+)
+use_repo(
+ python,
+ "python_3_11_aarch64-apple-darwin",
+ "python_3_11_aarch64-unknown-linux-gnu",
+ "python_3_11_x86_64-apple-darwin",
+ "python_3_11_x86_64-pc-windows-msvc",
+ "python_3_11_x86_64-unknown-linux-gnu",
+)
+
+requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+requirements.parse(
+ name = "pip_deps",
+ # Building source distributions requires an interpreter.
+ interpreter_linux_aarch64 = "@python_3_11_aarch64-unknown-linux-gnu//:python",
+ interpreter_linux_x86_64 = "@python_3_11_x86_64-unknown-linux-gnu//:python",
+ interpreter_macos_aarch64 = "@python_3_11_aarch64-apple-darwin//:python",
+ interpreter_macos_x86_64 = "@python_3_11_x86_64-apple-darwin//:python",
+ interpreter_windows = "@python_3_11_x86_64-pc-windows-msvc//:python",
+ requirements_lock = ":requirements.txt",
+)
+use_repo(requirements, "pip_deps")
diff --git a/examples/sdist/requirements.in b/examples/sdist/requirements.in
new file mode 100644
index 00000000..e214769a
--- /dev/null
+++ b/examples/sdist/requirements.in
@@ -0,0 +1 @@
+pyspark
diff --git a/private/tests/sdist/requirements.txt b/examples/sdist/requirements.txt
similarity index 100%
rename from private/tests/sdist/requirements.txt
rename to examples/sdist/requirements.txt
diff --git a/private/tests/sdist/sdist.py b/examples/sdist/sdist.py
similarity index 100%
rename from private/tests/sdist/sdist.py
rename to examples/sdist/sdist.py
diff --git a/private/tests/simple/BUILD.bazel b/examples/simple/BUILD.bazel
similarity index 66%
rename from private/tests/simple/BUILD.bazel
rename to examples/simple/BUILD.bazel
index 425e1fb8..305f5228 100644
--- a/private/tests/simple/BUILD.bazel
+++ b/examples/simple/BUILD.bazel
@@ -1,5 +1,5 @@
-load("@rules_python//python:defs.bzl", "py_test")
-load("//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_req_compile//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_test")
py_reqs_compiler(
name = "requirements.update",
@@ -16,6 +16,6 @@ py_test(
name = "simple",
srcs = ["simple.py"],
deps = [
- "@req_compile_test_simple//wheel",
+ "@pip_deps//wheel",
],
)
diff --git a/examples/simple/MODULE.bazel b/examples/simple/MODULE.bazel
new file mode 100644
index 00000000..879e013a
--- /dev/null
+++ b/examples/simple/MODULE.bazel
@@ -0,0 +1,21 @@
+"""An example of consuming a single platform requirements lock file."""
+
+module(
+ name = "req_compile_example_simple",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+requirements.parse(
+ name = "pip_deps",
+ requirements_lock = ":requirements.txt",
+)
+use_repo(requirements, "pip_deps")
diff --git a/private/tests/simple/requirements.in b/examples/simple/requirements.in
similarity index 100%
rename from private/tests/simple/requirements.in
rename to examples/simple/requirements.in
diff --git a/private/tests/simple/requirements.txt b/examples/simple/requirements.txt
similarity index 100%
rename from private/tests/simple/requirements.txt
rename to examples/simple/requirements.txt
diff --git a/private/tests/simple/simple.py b/examples/simple/simple.py
similarity index 100%
rename from private/tests/simple/simple.py
rename to examples/simple/simple.py
diff --git a/private/tests/transitive_ins/BUILD.bazel b/examples/transitive_ins/BUILD.bazel
similarity index 64%
rename from private/tests/transitive_ins/BUILD.bazel
rename to examples/transitive_ins/BUILD.bazel
index 18eb2d6f..c5ff3ad4 100644
--- a/private/tests/transitive_ins/BUILD.bazel
+++ b/examples/transitive_ins/BUILD.bazel
@@ -1,5 +1,5 @@
-load("@rules_python//python:defs.bzl", "py_test")
-load("//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_req_compile//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
+load("@rules_venv//python:defs.bzl", "py_test")
filegroup(
name = "requirements",
@@ -25,8 +25,8 @@ py_test(
name = "transitive_ins",
srcs = ["transitive_ins.py"],
deps = [
- "@req_compile_test_transitive_ins//pyyaml",
- "@req_compile_test_transitive_ins//toml",
- "@req_compile_test_transitive_ins//tomli",
+ "@pip_deps//pyyaml",
+ "@pip_deps//toml",
+ "@pip_deps//tomli",
],
)
diff --git a/examples/transitive_ins/MODULE.bazel b/examples/transitive_ins/MODULE.bazel
new file mode 100644
index 00000000..d4bfee0a
--- /dev/null
+++ b/examples/transitive_ins/MODULE.bazel
@@ -0,0 +1,21 @@
+"""An example of a requirements file which references other requirements files."""
+
+module(
+ name = "req_compile_example_transitive_ins",
+ version = "0.0.0",
+)
+
+bazel_dep(name = "platforms", version = "1.0.0")
+bazel_dep(name = "rules_venv", version = "0.26.0")
+bazel_dep(name = "rules_req_compile", version = "0.0.0")
+local_path_override(
+ module_name = "rules_req_compile",
+ path = "../..",
+)
+
+requirements = use_extension("@rules_req_compile//extensions:python.bzl", "requirements")
+requirements.parse(
+ name = "pip_deps",
+ requirements_lock = ":requirements.txt",
+)
+use_repo(requirements, "pip_deps")
diff --git a/private/tests/transitive_ins/dep_1/requirements_1.in b/examples/transitive_ins/dep_1/requirements_1.in
similarity index 100%
rename from private/tests/transitive_ins/dep_1/requirements_1.in
rename to examples/transitive_ins/dep_1/requirements_1.in
diff --git a/private/tests/transitive_ins/dep_2/requirements_2.in b/examples/transitive_ins/dep_2/requirements_2.in
similarity index 100%
rename from private/tests/transitive_ins/dep_2/requirements_2.in
rename to examples/transitive_ins/dep_2/requirements_2.in
diff --git a/private/tests/transitive_ins/requirements.in b/examples/transitive_ins/requirements.in
similarity index 100%
rename from private/tests/transitive_ins/requirements.in
rename to examples/transitive_ins/requirements.in
diff --git a/private/tests/transitive_ins/requirements.txt b/examples/transitive_ins/requirements.txt
similarity index 100%
rename from private/tests/transitive_ins/requirements.txt
rename to examples/transitive_ins/requirements.txt
diff --git a/private/tests/transitive_ins/transitive_ins.py b/examples/transitive_ins/transitive_ins.py
similarity index 100%
rename from private/tests/transitive_ins/transitive_ins.py
rename to examples/transitive_ins/transitive_ins.py
diff --git a/extensions/BUILD.bazel b/extensions/BUILD.bazel
index 0ffa3fc6..9d881923 100644
--- a/extensions/BUILD.bazel
+++ b/extensions/BUILD.bazel
@@ -6,6 +6,6 @@ bzl_library(
visibility = ["//visibility:public"],
deps = [
"//:defs",
- "//private:reqs_repo",
+ "//req_compile/private:reqs_repo",
],
)
diff --git a/extensions/python.bzl b/extensions/python.bzl
index 95800a02..f767cc79 100644
--- a/extensions/python.bzl
+++ b/extensions/python.bzl
@@ -4,8 +4,10 @@ load(
"//:defs.bzl",
package_annotation = "py_package_annotation",
)
+
+# buildifier: disable=bzl-visibility
load(
- "//private:reqs_repo.bzl",
+ "//req_compile/private:reqs_repo.bzl",
"create_spoke_repos",
"parse_requirements_locks",
"py_requirements_repository",
diff --git a/private/examples/BUILD.bazel b/private/examples/BUILD.bazel
deleted file mode 100644
index e69de29b..00000000
diff --git a/private/examples/multiplatform_py_test/MODULE.bazel.lock b/private/examples/multiplatform_py_test/MODULE.bazel.lock
deleted file mode 100644
index e9e76208..00000000
--- a/private/examples/multiplatform_py_test/MODULE.bazel.lock
+++ /dev/null
@@ -1,291 +0,0 @@
-{
- "lockFileVersion": 11,
- "registryFileHashes": {
- "https://bcr.bazel.build/bazel_registry.json": "8a28e4aff06ee60aed2a8c281907fb8bcbf3b753c91fb5a5c57da3215d5b3497",
- "https://bcr.bazel.build/modules/abseil-cpp/20210324.2/MODULE.bazel": "7cd0312e064fde87c8d1cd79ba06c876bd23630c83466e9500321be55c96ace2",
- "https://bcr.bazel.build/modules/abseil-cpp/20211102.0/MODULE.bazel": "70390338f7a5106231d20620712f7cccb659cd0e9d073d1991c038eb9fc57589",
- "https://bcr.bazel.build/modules/abseil-cpp/20230125.1/MODULE.bazel": "89047429cb0207707b2dface14ba7f8df85273d484c2572755be4bab7ce9c3a0",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.0.bcr.1/MODULE.bazel": "1c8cec495288dccd14fdae6e3f95f772c1c91857047a098fad772034264cc8cb",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.0/MODULE.bazel": "d253ae36a8bd9ee3c5955384096ccb6baf16a1b1e93e858370da0a3b94f77c16",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.1/MODULE.bazel": "fa92e2eb41a04df73cdabeec37107316f7e5272650f81d6cc096418fe647b915",
- "https://bcr.bazel.build/modules/abseil-cpp/20240116.1/MODULE.bazel": "37bcdb4440fbb61df6a1c296ae01b327f19e9bb521f9b8e26ec854b6f97309ed",
- "https://bcr.bazel.build/modules/abseil-cpp/20240116.1/source.json": "9be551b8d4e3ef76875c0d744b5d6a504a27e3ae67bc6b28f46415fd2d2957da",
- "https://bcr.bazel.build/modules/apple_support/1.5.0/MODULE.bazel": "50341a62efbc483e8a2a6aec30994a58749bd7b885e18dd96aa8c33031e558ef",
- "https://bcr.bazel.build/modules/apple_support/1.5.0/source.json": "eb98a7627c0bc486b57f598ad8da50f6625d974c8f723e9ea71bd39f709c9862",
- "https://bcr.bazel.build/modules/bazel_features/1.1.1/MODULE.bazel": "27b8c79ef57efe08efccbd9dd6ef70d61b4798320b8d3c134fd571f78963dbcd",
- "https://bcr.bazel.build/modules/bazel_features/1.11.0/MODULE.bazel": "f9382337dd5a474c3b7d334c2f83e50b6eaedc284253334cf823044a26de03e8",
- "https://bcr.bazel.build/modules/bazel_features/1.15.0/MODULE.bazel": "d38ff6e517149dc509406aca0db3ad1efdd890a85e049585b7234d04238e2a4d",
- "https://bcr.bazel.build/modules/bazel_features/1.17.0/MODULE.bazel": "039de32d21b816b47bd42c778e0454217e9c9caac4a3cf8e15c7231ee3ddee4d",
- "https://bcr.bazel.build/modules/bazel_features/1.18.0/MODULE.bazel": "1be0ae2557ab3a72a57aeb31b29be347bcdc5d2b1eb1e70f39e3851a7e97041a",
- "https://bcr.bazel.build/modules/bazel_features/1.19.0/MODULE.bazel": "59adcdf28230d220f0067b1f435b8537dd033bfff8db21335ef9217919c7fb58",
- "https://bcr.bazel.build/modules/bazel_features/1.21.0/MODULE.bazel": "675642261665d8eea09989aa3b8afb5c37627f1be178382c320d1b46afba5e3b",
- "https://bcr.bazel.build/modules/bazel_features/1.21.0/source.json": "3e8379efaaef53ce35b7b8ba419df829315a880cb0a030e5bb45c96d6d5ecb5f",
- "https://bcr.bazel.build/modules/bazel_features/1.4.1/MODULE.bazel": "e45b6bb2350aff3e442ae1111c555e27eac1d915e77775f6fdc4b351b758b5d7",
- "https://bcr.bazel.build/modules/bazel_skylib/1.0.3/MODULE.bazel": "bcb0fd896384802d1ad283b4e4eb4d718eebd8cb820b0a2c3a347fb971afd9d8",
- "https://bcr.bazel.build/modules/bazel_skylib/1.1.1/MODULE.bazel": "1add3e7d93ff2e6998f9e118022c84d163917d912f5afafb3058e3d2f1545b5e",
- "https://bcr.bazel.build/modules/bazel_skylib/1.2.0/MODULE.bazel": "44fe84260e454ed94ad326352a698422dbe372b21a1ac9f3eab76eb531223686",
- "https://bcr.bazel.build/modules/bazel_skylib/1.2.1/MODULE.bazel": "f35baf9da0efe45fa3da1696ae906eea3d615ad41e2e3def4aeb4e8bc0ef9a7a",
- "https://bcr.bazel.build/modules/bazel_skylib/1.3.0/MODULE.bazel": "20228b92868bf5cfc41bda7afc8a8ba2a543201851de39d990ec957b513579c5",
- "https://bcr.bazel.build/modules/bazel_skylib/1.4.1/MODULE.bazel": "a0dcb779424be33100dcae821e9e27e4f2901d9dfd5333efe5ac6a8d7ab75e1d",
- "https://bcr.bazel.build/modules/bazel_skylib/1.4.2/MODULE.bazel": "3bd40978e7a1fac911d5989e6b09d8f64921865a45822d8b09e815eaa726a651",
- "https://bcr.bazel.build/modules/bazel_skylib/1.5.0/MODULE.bazel": "32880f5e2945ce6a03d1fbd588e9198c0a959bb42297b2cfaf1685b7bc32e138",
- "https://bcr.bazel.build/modules/bazel_skylib/1.6.1/MODULE.bazel": "8fdee2dbaace6c252131c00e1de4b165dc65af02ea278476187765e1a617b917",
- "https://bcr.bazel.build/modules/bazel_skylib/1.7.0/MODULE.bazel": "0db596f4563de7938de764cc8deeabec291f55e8ec15299718b93c4423e9796d",
- "https://bcr.bazel.build/modules/bazel_skylib/1.7.1/MODULE.bazel": "3120d80c5861aa616222ec015332e5f8d3171e062e3e804a2a0253e1be26e59b",
- "https://bcr.bazel.build/modules/bazel_skylib/1.7.1/source.json": "f121b43eeefc7c29efbd51b83d08631e2347297c95aac9764a701f2a6a2bb953",
- "https://bcr.bazel.build/modules/buildozer/7.1.2/MODULE.bazel": "2e8dd40ede9c454042645fd8d8d0cd1527966aa5c919de86661e62953cd73d84",
- "https://bcr.bazel.build/modules/buildozer/7.1.2/source.json": "c9028a501d2db85793a6996205c8de120944f50a0d570438fcae0457a5f9d1f8",
- "https://bcr.bazel.build/modules/google_benchmark/1.8.2/MODULE.bazel": "a70cf1bba851000ba93b58ae2f6d76490a9feb74192e57ab8e8ff13c34ec50cb",
- "https://bcr.bazel.build/modules/googletest/1.11.0/MODULE.bazel": "3a83f095183f66345ca86aa13c58b59f9f94a2f81999c093d4eeaa2d262d12f4",
- "https://bcr.bazel.build/modules/googletest/1.14.0.bcr.1/MODULE.bazel": "22c31a561553727960057361aa33bf20fb2e98584bc4fec007906e27053f80c6",
- "https://bcr.bazel.build/modules/googletest/1.14.0.bcr.1/source.json": "41e9e129f80d8c8bf103a7acc337b76e54fad1214ac0a7084bf24f4cd924b8b4",
- "https://bcr.bazel.build/modules/googletest/1.14.0/MODULE.bazel": "cfbcbf3e6eac06ef9d85900f64424708cc08687d1b527f0ef65aa7517af8118f",
- "https://bcr.bazel.build/modules/jsoncpp/1.9.5/MODULE.bazel": "31271aedc59e815656f5736f282bb7509a97c7ecb43e927ac1a37966e0578075",
- "https://bcr.bazel.build/modules/jsoncpp/1.9.5/source.json": "4108ee5085dd2885a341c7fab149429db457b3169b86eb081fa245eadf69169d",
- "https://bcr.bazel.build/modules/libpfm/4.11.0/MODULE.bazel": "45061ff025b301940f1e30d2c16bea596c25b176c8b6b3087e92615adbd52902",
- "https://bcr.bazel.build/modules/platforms/0.0.10/MODULE.bazel": "8cb8efaf200bdeb2150d93e162c40f388529a25852b332cec879373771e48ed5",
- "https://bcr.bazel.build/modules/platforms/0.0.11/MODULE.bazel": "0daefc49732e227caa8bfa834d65dc52e8cc18a2faf80df25e8caea151a9413f",
- "https://bcr.bazel.build/modules/platforms/0.0.11/source.json": "f7e188b79ebedebfe75e9e1d098b8845226c7992b307e28e1496f23112e8fc29",
- "https://bcr.bazel.build/modules/platforms/0.0.4/MODULE.bazel": "9b328e31ee156f53f3c416a64f8491f7eb731742655a47c9eec4703a71644aee",
- "https://bcr.bazel.build/modules/platforms/0.0.5/MODULE.bazel": "5733b54ea419d5eaf7997054bb55f6a1d0b5ff8aedf0176fef9eea44f3acda37",
- "https://bcr.bazel.build/modules/platforms/0.0.6/MODULE.bazel": "ad6eeef431dc52aefd2d77ed20a4b353f8ebf0f4ecdd26a807d2da5aa8cd0615",
- "https://bcr.bazel.build/modules/platforms/0.0.7/MODULE.bazel": "72fd4a0ede9ee5c021f6a8dd92b503e089f46c227ba2813ff183b71616034814",
- "https://bcr.bazel.build/modules/platforms/0.0.8/MODULE.bazel": "9f142c03e348f6d263719f5074b21ef3adf0b139ee4c5133e2aa35664da9eb2d",
- "https://bcr.bazel.build/modules/platforms/0.0.9/MODULE.bazel": "4a87a60c927b56ddd67db50c89acaa62f4ce2a1d2149ccb63ffd871d5ce29ebc",
- "https://bcr.bazel.build/modules/protobuf/21.7/MODULE.bazel": "a5a29bb89544f9b97edce05642fac225a808b5b7be74038ea3640fae2f8e66a7",
- "https://bcr.bazel.build/modules/protobuf/27.0/MODULE.bazel": "7873b60be88844a0a1d8f80b9d5d20cfbd8495a689b8763e76c6372998d3f64c",
- "https://bcr.bazel.build/modules/protobuf/29.0-rc2/MODULE.bazel": "6241d35983510143049943fc0d57937937122baf1b287862f9dc8590fc4c37df",
- "https://bcr.bazel.build/modules/protobuf/29.0-rc3/MODULE.bazel": "33c2dfa286578573afc55a7acaea3cada4122b9631007c594bf0729f41c8de92",
- "https://bcr.bazel.build/modules/protobuf/29.0-rc3/source.json": "c16a6488fb279ef578da7098e605082d72ed85fc8d843eaae81e7d27d0f4625d",
- "https://bcr.bazel.build/modules/protobuf/3.19.0/MODULE.bazel": "6b5fbb433f760a99a22b18b6850ed5784ef0e9928a72668b66e4d7ccd47db9b0",
- "https://bcr.bazel.build/modules/protobuf/3.19.6/MODULE.bazel": "9233edc5e1f2ee276a60de3eaa47ac4132302ef9643238f23128fea53ea12858",
- "https://bcr.bazel.build/modules/pybind11_bazel/2.11.1/MODULE.bazel": "88af1c246226d87e65be78ed49ecd1e6f5e98648558c14ce99176da041dc378e",
- "https://bcr.bazel.build/modules/pybind11_bazel/2.11.1/source.json": "be4789e951dd5301282729fe3d4938995dc4c1a81c2ff150afc9f1b0504c6022",
- "https://bcr.bazel.build/modules/re2/2023-09-01/MODULE.bazel": "cb3d511531b16cfc78a225a9e2136007a48cf8a677e4264baeab57fe78a80206",
- "https://bcr.bazel.build/modules/re2/2023-09-01/source.json": "e044ce89c2883cd957a2969a43e79f7752f9656f6b20050b62f90ede21ec6eb4",
- "https://bcr.bazel.build/modules/rules_android/0.1.1/MODULE.bazel": "48809ab0091b07ad0182defb787c4c5328bd3a278938415c00a7b69b50c4d3a8",
- "https://bcr.bazel.build/modules/rules_android/0.1.1/source.json": "e6986b41626ee10bdc864937ffb6d6bf275bb5b9c65120e6137d56e6331f089e",
- "https://bcr.bazel.build/modules/rules_cc/0.0.1/MODULE.bazel": "cb2aa0747f84c6c3a78dad4e2049c154f08ab9d166b1273835a8174940365647",
- "https://bcr.bazel.build/modules/rules_cc/0.0.10/MODULE.bazel": "ec1705118f7eaedd6e118508d3d26deba2a4e76476ada7e0e3965211be012002",
- "https://bcr.bazel.build/modules/rules_cc/0.0.13/MODULE.bazel": "0e8529ed7b323dad0775ff924d2ae5af7640b23553dfcd4d34344c7e7a867191",
- "https://bcr.bazel.build/modules/rules_cc/0.0.15/MODULE.bazel": "6704c35f7b4a72502ee81f61bf88706b54f06b3cbe5558ac17e2e14666cd5dcc",
- "https://bcr.bazel.build/modules/rules_cc/0.0.16/MODULE.bazel": "7661303b8fc1b4d7f532e54e9d6565771fea666fbdf839e0a86affcd02defe87",
- "https://bcr.bazel.build/modules/rules_cc/0.0.2/MODULE.bazel": "6915987c90970493ab97393024c156ea8fb9f3bea953b2f3ec05c34f19b5695c",
- "https://bcr.bazel.build/modules/rules_cc/0.0.6/MODULE.bazel": "abf360251023dfe3efcef65ab9d56beefa8394d4176dd29529750e1c57eaa33f",
- "https://bcr.bazel.build/modules/rules_cc/0.0.8/MODULE.bazel": "964c85c82cfeb6f3855e6a07054fdb159aced38e99a5eecf7bce9d53990afa3e",
- "https://bcr.bazel.build/modules/rules_cc/0.0.9/MODULE.bazel": "836e76439f354b89afe6a911a7adf59a6b2518fafb174483ad78a2a2fde7b1c5",
- "https://bcr.bazel.build/modules/rules_cc/0.1.1/MODULE.bazel": "2f0222a6f229f0bf44cd711dc13c858dad98c62d52bd51d8fc3a764a83125513",
- "https://bcr.bazel.build/modules/rules_cc/0.1.1/source.json": "d61627377bd7dd1da4652063e368d9366fc9a73920bfa396798ad92172cf645c",
- "https://bcr.bazel.build/modules/rules_foreign_cc/0.9.0/MODULE.bazel": "c9e8c682bf75b0e7c704166d79b599f93b72cfca5ad7477df596947891feeef6",
- "https://bcr.bazel.build/modules/rules_fuzzing/0.5.2/MODULE.bazel": "40c97d1144356f52905566c55811f13b299453a14ac7769dfba2ac38192337a8",
- "https://bcr.bazel.build/modules/rules_fuzzing/0.5.2/source.json": "c8b1e2c717646f1702290959a3302a178fb639d987ab61d548105019f11e527e",
- "https://bcr.bazel.build/modules/rules_java/4.0.0/MODULE.bazel": "5a78a7ae82cd1a33cef56dc578c7d2a46ed0dca12643ee45edbb8417899e6f74",
- "https://bcr.bazel.build/modules/rules_java/5.3.5/MODULE.bazel": "a4ec4f2db570171e3e5eb753276ee4b389bae16b96207e9d3230895c99644b86",
- "https://bcr.bazel.build/modules/rules_java/6.5.2/MODULE.bazel": "1d440d262d0e08453fa0c4d8f699ba81609ed0e9a9a0f02cd10b3e7942e61e31",
- "https://bcr.bazel.build/modules/rules_java/7.10.0/MODULE.bazel": "530c3beb3067e870561739f1144329a21c851ff771cd752a49e06e3dc9c2e71a",
- "https://bcr.bazel.build/modules/rules_java/7.12.2/MODULE.bazel": "579c505165ee757a4280ef83cda0150eea193eed3bef50b1004ba88b99da6de6",
- "https://bcr.bazel.build/modules/rules_java/7.2.0/MODULE.bazel": "06c0334c9be61e6cef2c8c84a7800cef502063269a5af25ceb100b192453d4ab",
- "https://bcr.bazel.build/modules/rules_java/7.6.1/MODULE.bazel": "2f14b7e8a1aa2f67ae92bc69d1ec0fa8d9f827c4e17ff5e5f02e91caa3b2d0fe",
- "https://bcr.bazel.build/modules/rules_java/7.6.5/MODULE.bazel": "481164be5e02e4cab6e77a36927683263be56b7e36fef918b458d7a8a1ebadb1",
- "https://bcr.bazel.build/modules/rules_java/8.3.2/MODULE.bazel": "7336d5511ad5af0b8615fdc7477535a2e4e723a357b6713af439fe8cf0195017",
- "https://bcr.bazel.build/modules/rules_java/8.5.1/MODULE.bazel": "d8a9e38cc5228881f7055a6079f6f7821a073df3744d441978e7a43e20226939",
- "https://bcr.bazel.build/modules/rules_java/8.5.1/source.json": "db1a77d81b059e0f84985db67a22f3f579a529a86b7997605be3d214a0abe38e",
- "https://bcr.bazel.build/modules/rules_jvm_external/4.4.2/MODULE.bazel": "a56b85e418c83eb1839819f0b515c431010160383306d13ec21959ac412d2fe7",
- "https://bcr.bazel.build/modules/rules_jvm_external/5.1/MODULE.bazel": "33f6f999e03183f7d088c9be518a63467dfd0be94a11d0055fe2d210f89aa909",
- "https://bcr.bazel.build/modules/rules_jvm_external/5.2/MODULE.bazel": "d9351ba35217ad0de03816ef3ed63f89d411349353077348a45348b096615036",
- "https://bcr.bazel.build/modules/rules_jvm_external/6.3/MODULE.bazel": "c998e060b85f71e00de5ec552019347c8bca255062c990ac02d051bb80a38df0",
- "https://bcr.bazel.build/modules/rules_jvm_external/6.3/source.json": "6f5f5a5a4419ae4e37c35a5bb0a6ae657ed40b7abc5a5189111b47fcebe43197",
- "https://bcr.bazel.build/modules/rules_kotlin/1.9.6/MODULE.bazel": "d269a01a18ee74d0335450b10f62c9ed81f2321d7958a2934e44272fe82dcef3",
- "https://bcr.bazel.build/modules/rules_kotlin/1.9.6/source.json": "2faa4794364282db7c06600b7e5e34867a564ae91bda7cae7c29c64e9466b7d5",
- "https://bcr.bazel.build/modules/rules_license/0.0.3/MODULE.bazel": "627e9ab0247f7d1e05736b59dbb1b6871373de5ad31c3011880b4133cafd4bd0",
- "https://bcr.bazel.build/modules/rules_license/0.0.7/MODULE.bazel": "088fbeb0b6a419005b89cf93fe62d9517c0a2b8bb56af3244af65ecfe37e7d5d",
- "https://bcr.bazel.build/modules/rules_license/1.0.0/MODULE.bazel": "a7fda60eefdf3d8c827262ba499957e4df06f659330bbe6cdbdb975b768bb65c",
- "https://bcr.bazel.build/modules/rules_license/1.0.0/source.json": "a52c89e54cc311196e478f8382df91c15f7a2bfdf4c6cd0e2675cc2ff0b56efb",
- "https://bcr.bazel.build/modules/rules_pkg/0.7.0/MODULE.bazel": "df99f03fc7934a4737122518bb87e667e62d780b610910f0447665a7e2be62dc",
- "https://bcr.bazel.build/modules/rules_pkg/1.0.1/MODULE.bazel": "5b1df97dbc29623bccdf2b0dcd0f5cb08e2f2c9050aab1092fd39a41e82686ff",
- "https://bcr.bazel.build/modules/rules_pkg/1.0.1/source.json": "bd82e5d7b9ce2d31e380dd9f50c111d678c3bdaca190cb76b0e1c71b05e1ba8a",
- "https://bcr.bazel.build/modules/rules_proto/4.0.0/MODULE.bazel": "a7a7b6ce9bee418c1a760b3d84f83a299ad6952f9903c67f19e4edd964894e06",
- "https://bcr.bazel.build/modules/rules_proto/5.3.0-21.7/MODULE.bazel": "e8dff86b0971688790ae75528fe1813f71809b5afd57facb44dad9e8eca631b7",
- "https://bcr.bazel.build/modules/rules_proto/6.0.2/MODULE.bazel": "ce916b775a62b90b61888052a416ccdda405212b6aaeb39522f7dc53431a5e73",
- "https://bcr.bazel.build/modules/rules_proto/6.0.2/source.json": "17a2e195f56cb28d6bbf763e49973d13890487c6945311ed141e196fb660426d",
- "https://bcr.bazel.build/modules/rules_python/0.10.2/MODULE.bazel": "cc82bc96f2997baa545ab3ce73f196d040ffb8756fd2d66125a530031cd90e5f",
- "https://bcr.bazel.build/modules/rules_python/0.22.1/MODULE.bazel": "26114f0c0b5e93018c0c066d6673f1a2c3737c7e90af95eff30cfee38d0bbac7",
- "https://bcr.bazel.build/modules/rules_python/0.23.1/MODULE.bazel": "49ffccf0511cb8414de28321f5fcf2a31312b47c40cc21577144b7447f2bf300",
- "https://bcr.bazel.build/modules/rules_python/0.25.0/MODULE.bazel": "72f1506841c920a1afec76975b35312410eea3aa7b63267436bfb1dd91d2d382",
- "https://bcr.bazel.build/modules/rules_python/0.28.0/MODULE.bazel": "cba2573d870babc976664a912539b320cbaa7114cd3e8f053c720171cde331ed",
- "https://bcr.bazel.build/modules/rules_python/0.31.0/MODULE.bazel": "93a43dc47ee570e6ec9f5779b2e64c1476a6ce921c48cc9a1678a91dd5f8fd58",
- "https://bcr.bazel.build/modules/rules_python/0.4.0/MODULE.bazel": "9208ee05fd48bf09ac60ed269791cf17fb343db56c8226a720fbb1cdf467166c",
- "https://bcr.bazel.build/modules/rules_python/1.3.0/MODULE.bazel": "8361d57eafb67c09b75bf4bbe6be360e1b8f4f18118ab48037f2bd50aa2ccb13",
- "https://bcr.bazel.build/modules/rules_python/1.3.0/source.json": "25932f917cd279c7baefa6cb1d3fa8750a7a29de522024449b19af6eab51f4a0",
- "https://bcr.bazel.build/modules/rules_shell/0.2.0/MODULE.bazel": "fda8a652ab3c7d8fee214de05e7a9916d8b28082234e8d2c0094505c5268ed3c",
- "https://bcr.bazel.build/modules/rules_shell/0.4.0/MODULE.bazel": "0f8f11bb3cd11755f0b48c1de0bbcf62b4b34421023aa41a2fc74ef68d9584f0",
- "https://bcr.bazel.build/modules/rules_shell/0.4.0/source.json": "1d7fa7f941cd41dc2704ba5b4edc2e2230eea1cc600d80bd2b65838204c50b95",
- "https://bcr.bazel.build/modules/rules_venv/0.3.1/MODULE.bazel": "5bd2b5ecc94e9dce5bd4bc924198d22011c07205b022306c3fc988814fef350f",
- "https://bcr.bazel.build/modules/rules_venv/0.3.1/source.json": "96e111d7c66220baeb1e6a36de22f1028b76d4b6de501449cbe3c24e2fc62563",
- "https://bcr.bazel.build/modules/stardoc/0.5.1/MODULE.bazel": "1a05d92974d0c122f5ccf09291442580317cdd859f07a8655f1db9a60374f9f8",
- "https://bcr.bazel.build/modules/stardoc/0.5.3/MODULE.bazel": "c7f6948dae6999bf0db32c1858ae345f112cacf98f174c7a8bb707e41b974f1c",
- "https://bcr.bazel.build/modules/stardoc/0.7.0/MODULE.bazel": "05e3d6d30c099b6770e97da986c53bd31844d7f13d41412480ea265ac9e8079c",
- "https://bcr.bazel.build/modules/stardoc/0.7.2/MODULE.bazel": "fc152419aa2ea0f51c29583fab1e8c99ddefd5b3778421845606ee628629e0e5",
- "https://bcr.bazel.build/modules/stardoc/0.7.2/source.json": "58b029e5e901d6802967754adf0a9056747e8176f017cfe3607c0851f4d42216",
- "https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43",
- "https://bcr.bazel.build/modules/zlib/1.2.11/MODULE.bazel": "07b389abc85fdbca459b69e2ec656ae5622873af3f845e1c9d80fe179f3effa0",
- "https://bcr.bazel.build/modules/zlib/1.2.12/MODULE.bazel": "3b1a8834ada2a883674be8cbd36ede1b6ec481477ada359cd2d3ddc562340b27",
- "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/MODULE.bazel": "af322bc08976524477c79d1e45e241b6efbeb918c497e8840b8ab116802dda79",
- "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/source.json": "2be409ac3c7601245958cd4fcdff4288be79ed23bd690b4b951f500d54ee6e7d",
- "https://bcr.bazel.build/modules/zlib/1.3.1/MODULE.bazel": "751c9940dcfe869f5f7274e1295422a34623555916eb98c174c1e945594bf198"
- },
- "selectedYankedVersions": {},
- "moduleExtensions": {
- "@@apple_support~//crosstool:setup.bzl%apple_cc_configure_extension": {
- "general": {
- "bzlTransitiveDigest": "PjIds3feoYE8SGbbIq2SFTZy3zmxeO2tQevJZNDo7iY=",
- "usagesDigest": "+hz7IHWN6A1oVJJWNDB6yZRG+RYhF76wAYItpAeIUIg=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "local_config_apple_cc_toolchains": {
- "bzlFile": "@@apple_support~//crosstool:setup.bzl",
- "ruleClassName": "_apple_cc_autoconf_toolchains",
- "attributes": {}
- },
- "local_config_apple_cc": {
- "bzlFile": "@@apple_support~//crosstool:setup.bzl",
- "ruleClassName": "_apple_cc_autoconf",
- "attributes": {}
- }
- },
- "recordedRepoMappingEntries": [
- [
- "apple_support~",
- "bazel_tools",
- "bazel_tools"
- ]
- ]
- }
- },
- "@@rules_java~//java:rules_java_deps.bzl%compatibility_proxy": {
- "general": {
- "bzlTransitiveDigest": "KIX40nDfygEWbU+rq3nYpt3tVgTK/iO8PKh5VMBlN7M=",
- "usagesDigest": "pwHZ+26iLgQdwvdZeA5wnAjKnNI3y6XO2VbhOTeo5h8=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "compatibility_proxy": {
- "bzlFile": "@@rules_java~//java:rules_java_deps.bzl",
- "ruleClassName": "_compatibility_proxy_repo_rule",
- "attributes": {}
- }
- },
- "recordedRepoMappingEntries": [
- [
- "rules_java~",
- "bazel_tools",
- "bazel_tools"
- ]
- ]
- }
- },
- "@@rules_kotlin~//src/main/starlark/core/repositories:bzlmod_setup.bzl%rules_kotlin_extensions": {
- "general": {
- "bzlTransitiveDigest": "fus14IFJ/1LGWWGKPH/U18VnJCoMjfDt1ckahqCnM0A=",
- "usagesDigest": "aJF6fLy82rR95Ff5CZPAqxNoFgOMLMN5ImfBS0nhnkg=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "com_github_jetbrains_kotlin_git": {
- "bzlFile": "@@rules_kotlin~//src/main/starlark/core/repositories:compiler.bzl",
- "ruleClassName": "kotlin_compiler_git_repository",
- "attributes": {
- "urls": [
- "https://github.com/JetBrains/kotlin/releases/download/v1.9.23/kotlin-compiler-1.9.23.zip"
- ],
- "sha256": "93137d3aab9afa9b27cb06a824c2324195c6b6f6179d8a8653f440f5bd58be88"
- }
- },
- "com_github_jetbrains_kotlin": {
- "bzlFile": "@@rules_kotlin~//src/main/starlark/core/repositories:compiler.bzl",
- "ruleClassName": "kotlin_capabilities_repository",
- "attributes": {
- "git_repository_name": "com_github_jetbrains_kotlin_git",
- "compiler_version": "1.9.23"
- }
- },
- "com_github_google_ksp": {
- "bzlFile": "@@rules_kotlin~//src/main/starlark/core/repositories:ksp.bzl",
- "ruleClassName": "ksp_compiler_plugin_repository",
- "attributes": {
- "urls": [
- "https://github.com/google/ksp/releases/download/1.9.23-1.0.20/artifacts.zip"
- ],
- "sha256": "ee0618755913ef7fd6511288a232e8fad24838b9af6ea73972a76e81053c8c2d",
- "strip_version": "1.9.23-1.0.20"
- }
- },
- "com_github_pinterest_ktlint": {
- "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
- "ruleClassName": "http_file",
- "attributes": {
- "sha256": "01b2e0ef893383a50dbeb13970fe7fa3be36ca3e83259e01649945b09d736985",
- "urls": [
- "https://github.com/pinterest/ktlint/releases/download/1.3.0/ktlint"
- ],
- "executable": true
- }
- },
- "rules_android": {
- "bzlFile": "@@bazel_tools//tools/build_defs/repo:http.bzl",
- "ruleClassName": "http_archive",
- "attributes": {
- "sha256": "cd06d15dd8bb59926e4d65f9003bfc20f9da4b2519985c27e190cddc8b7a7806",
- "strip_prefix": "rules_android-0.1.1",
- "urls": [
- "https://github.com/bazelbuild/rules_android/archive/v0.1.1.zip"
- ]
- }
- }
- },
- "recordedRepoMappingEntries": [
- [
- "rules_kotlin~",
- "bazel_tools",
- "bazel_tools"
- ]
- ]
- }
- },
- "@@rules_python~//python/uv:uv.bzl%uv": {
- "general": {
- "bzlTransitiveDigest": "Xpqjnjzy6zZ90Es9Wa888ZLHhn7IsNGbph/e6qoxzw8=",
- "usagesDigest": "qI5PVlIum/YAnGJg5oXGHzDkMFWt2aNSUZY4G8PBbic=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "uv": {
- "bzlFile": "@@rules_python~//python/uv/private:uv_toolchains_repo.bzl",
- "ruleClassName": "uv_toolchains_repo",
- "attributes": {
- "toolchain_type": "'@@rules_python~//python/uv:uv_toolchain_type'",
- "toolchain_names": [
- "none"
- ],
- "toolchain_implementations": {
- "none": "'@@rules_python~//python:none'"
- },
- "toolchain_compatible_with": {
- "none": [
- "@platforms//:incompatible"
- ]
- },
- "toolchain_target_settings": {}
- }
- }
- },
- "recordedRepoMappingEntries": []
- }
- }
- }
-}
diff --git a/private/examples/multiplatform_py_test/WORKSPACE.bazel b/private/examples/multiplatform_py_test/WORKSPACE.bazel
deleted file mode 100644
index e69de29b..00000000
diff --git a/private/examples/multiplatform_py_test/WORKSPACE.bzlmod b/private/examples/multiplatform_py_test/WORKSPACE.bzlmod
deleted file mode 100644
index ad7d9ac9..00000000
--- a/private/examples/multiplatform_py_test/WORKSPACE.bzlmod
+++ /dev/null
@@ -1,16 +0,0 @@
-load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
-
-http_archive(
- name = "io_buildbuddy_buildbuddy_toolchain",
- sha256 = "baa9af1b9fcc96d18ac90a4dd68ebd2046c8beb76ed89aea9aabca30959ad30c",
- strip_prefix = "buildbuddy-toolchain-287d6042ad151be92de03c83ef48747ba832c4e2",
- urls = ["https://github.com/buildbuddy-io/buildbuddy-toolchain/archive/287d6042ad151be92de03c83ef48747ba832c4e2.tar.gz"],
-)
-
-load("@io_buildbuddy_buildbuddy_toolchain//:deps.bzl", "buildbuddy_deps")
-
-buildbuddy_deps()
-
-load("@io_buildbuddy_buildbuddy_toolchain//:rules.bzl", "buildbuddy")
-
-buildbuddy(name = "buildbuddy_toolchain")
diff --git a/private/tests/BUILD.bazel b/private/tests/BUILD.bazel
deleted file mode 100644
index e69de29b..00000000
diff --git a/private/tests/annotations/annotations_test_deps.bzl b/private/tests/annotations/annotations_test_deps.bzl
deleted file mode 100644
index ba08126d..00000000
--- a/private/tests/annotations/annotations_test_deps.bzl
+++ /dev/null
@@ -1,78 +0,0 @@
-"""Test dependencies for the annotations integration test"""
-
-load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe")
-load(
- "//:defs.bzl",
- "py_requirements_repository",
- package_annotation = "py_package_annotation",
-)
-
-_NUMPY_LIBRARY_TARGET = """\
-load("@rules_cc//cc:defs.bzl", "cc_library")
-load("@rules_req_compile//:defs.bzl", "py_package_annotation_target")
-
-_INCLUDE_DIR = "site-packages/numpy/core/include"
-
-cc_library(
- name = "headers",
- hdrs = glob(["{}/**/*.h".format(_INCLUDE_DIR)]),
- includes = [_INCLUDE_DIR],
-)
-
-py_package_annotation_target(
- name = "pkg.headers",
- target = ":headers",
-)
-"""
-
-def req_compile_test_annotations_deps():
- maybe(
- py_requirements_repository,
- name = "req_compile_test_annotations",
- requirements_locks = {
- Label("//private/tests/annotations:requirements.linux.txt"): "@platforms//os:linux",
- Label("//private/tests/annotations:requirements.macos.txt"): "@platforms//os:macos",
- Label("//private/tests/annotations:requirements.windows.txt"): "@platforms//os:windows",
- },
- annotations = {
- "numpy": package_annotation(
- additive_build_file_content = _NUMPY_LIBRARY_TARGET,
- data = [":pkg.headers"],
- copy_srcs = {
- "site-packages/numpy/conftest.py": "site-packages/numpy/conftest.copy.py",
- },
- copy_files = {
- "site-packages/numpy-1.26.4.dist-info/entry_points.txt": "site-packages/numpy-1.26.4.dist-info/entry_points.copy.txt",
- },
- copy_executables = {
- "site-packages/numpy/testing/setup.py": "site-packages/numpy/testing/setup.copy.py",
- },
- patches = [
- Label("//private/tests/annotations:numpy.patch"),
- ],
- deps = [
- # Show that label dependencies can be added.
- Label("@rules_python//python/runfiles"),
- ],
- ),
- # Sphinx is known to have a circular dependency. The annotations here solve for that.
- "sphinxcontrib-applehelp": package_annotation(
- deps = ["-sphinx"],
- ),
- "sphinxcontrib-devhelp": package_annotation(
- deps = ["-sphinx"],
- ),
- "sphinxcontrib-htmlhelp": package_annotation(
- deps = ["-sphinx"],
- ),
- "sphinxcontrib-jsmath": package_annotation(
- deps_excludes = ["sphinx"],
- ),
- "sphinxcontrib-qthelp": package_annotation(
- deps_excludes = ["sphinx"],
- ),
- "sphinxcontrib-serializinghtml": package_annotation(
- deps_excludes = ["sphinx"],
- ),
- },
- )
diff --git a/private/tests/find_links/BUILD.bazel b/private/tests/find_links/BUILD.bazel
deleted file mode 100644
index 92cf708f..00000000
--- a/private/tests/find_links/BUILD.bazel
+++ /dev/null
@@ -1,54 +0,0 @@
-load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
-load("@rules_python//python:defs.bzl", "py_binary", "py_test")
-load("//:defs.bzl", "py_reqs_compiler", "py_reqs_solution_test")
-
-exports_files(["find_links.py"])
-
-filegroup(
- name = "requirements",
- srcs = ["requirements.in"],
- data = ["wheeldir/.gitkeep"] + glob(
- include = ["wheeldir/*.whl"],
- allow_empty = True,
- ),
-)
-
-py_binary(
- name = "compiler_wrapper",
- srcs = ["compiler_wrapper.py"],
-)
-
-py_reqs_compiler(
- name = "requirements.update",
- custom_compile_command = "bazel run //private/tests/find_links:compiler_wrapper",
- requirements_in = ":requirements",
- requirements_txt = "requirements.txt",
-)
-
-py_reqs_solution_test(
- name = "requirements_test",
- compiler = ":requirements.update",
-)
-
-py_test(
- name = "find_links",
- srcs = ["//private/tests/find_links:find_links.py"],
- main = "//private/tests/find_links:find_links.py",
- deps = [
- "@req_compile_test_find_links//pyspark",
- ],
-)
-
-bzl_library(
- name = "extension",
- srcs = ["extension.bzl"],
- visibility = ["//:__subpackages__"],
- deps = ["//extensions:python"],
-)
-
-bzl_library(
- name = "find_links_test_repo",
- srcs = ["find_links_test_repo.bzl"],
- visibility = ["//:__subpackages__"],
- deps = ["//private:whl_repo"],
-)
diff --git a/private/tests/internal_deps/BUILD.bazel b/private/tests/internal_deps/BUILD.bazel
deleted file mode 100644
index b5b22121..00000000
--- a/private/tests/internal_deps/BUILD.bazel
+++ /dev/null
@@ -1,8 +0,0 @@
-load("//private:compiler.bzl", "py_reqs_solution_test")
-
-py_reqs_solution_test(
- name = "sdist_requirements_test",
- custom_compile_command = "python3 -m req_compile --multiline --hashes --urls --solution $(rootpath //private:sdist_requirements.txt) $(rootpath //private:sdist_requirements.in)",
- requirements_in = "//private:sdist_requirements.in",
- requirements_txt = "//private:sdist_requirements.txt",
-)
diff --git a/private/tests/override_module_repos/overridee/MODULE.bazel.lock b/private/tests/override_module_repos/overridee/MODULE.bazel.lock
deleted file mode 100644
index f14ffde8..00000000
--- a/private/tests/override_module_repos/overridee/MODULE.bazel.lock
+++ /dev/null
@@ -1,3817 +0,0 @@
-{
- "lockFileVersion": 11,
- "registryFileHashes": {
- "https://bcr.bazel.build/bazel_registry.json": "8a28e4aff06ee60aed2a8c281907fb8bcbf3b753c91fb5a5c57da3215d5b3497",
- "https://bcr.bazel.build/modules/abseil-cpp/20210324.2/MODULE.bazel": "7cd0312e064fde87c8d1cd79ba06c876bd23630c83466e9500321be55c96ace2",
- "https://bcr.bazel.build/modules/abseil-cpp/20211102.0/MODULE.bazel": "70390338f7a5106231d20620712f7cccb659cd0e9d073d1991c038eb9fc57589",
- "https://bcr.bazel.build/modules/abseil-cpp/20230125.1/MODULE.bazel": "89047429cb0207707b2dface14ba7f8df85273d484c2572755be4bab7ce9c3a0",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.0.bcr.1/MODULE.bazel": "1c8cec495288dccd14fdae6e3f95f772c1c91857047a098fad772034264cc8cb",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.0.bcr.1/source.json": "14892cc698e02ffedf4967546e6bedb7245015906888d3465fcf27c90a26da10",
- "https://bcr.bazel.build/modules/apple_support/1.5.0/MODULE.bazel": "50341a62efbc483e8a2a6aec30994a58749bd7b885e18dd96aa8c33031e558ef",
- "https://bcr.bazel.build/modules/apple_support/1.5.0/source.json": "eb98a7627c0bc486b57f598ad8da50f6625d974c8f723e9ea71bd39f709c9862",
- "https://bcr.bazel.build/modules/bazel_features/1.11.0/MODULE.bazel": "f9382337dd5a474c3b7d334c2f83e50b6eaedc284253334cf823044a26de03e8",
- "https://bcr.bazel.build/modules/bazel_features/1.11.0/source.json": "c9320aa53cd1c441d24bd6b716da087ad7e4ff0d9742a9884587596edfe53015",
- "https://bcr.bazel.build/modules/bazel_features/1.9.1/MODULE.bazel": "8f679097876a9b609ad1f60249c49d68bfab783dd9be012faf9d82547b14815a",
- "https://bcr.bazel.build/modules/bazel_skylib/1.0.3/MODULE.bazel": "bcb0fd896384802d1ad283b4e4eb4d718eebd8cb820b0a2c3a347fb971afd9d8",
- "https://bcr.bazel.build/modules/bazel_skylib/1.2.0/MODULE.bazel": "44fe84260e454ed94ad326352a698422dbe372b21a1ac9f3eab76eb531223686",
- "https://bcr.bazel.build/modules/bazel_skylib/1.2.1/MODULE.bazel": "f35baf9da0efe45fa3da1696ae906eea3d615ad41e2e3def4aeb4e8bc0ef9a7a",
- "https://bcr.bazel.build/modules/bazel_skylib/1.3.0/MODULE.bazel": "20228b92868bf5cfc41bda7afc8a8ba2a543201851de39d990ec957b513579c5",
- "https://bcr.bazel.build/modules/bazel_skylib/1.4.1/MODULE.bazel": "a0dcb779424be33100dcae821e9e27e4f2901d9dfd5333efe5ac6a8d7ab75e1d",
- "https://bcr.bazel.build/modules/bazel_skylib/1.5.0/MODULE.bazel": "32880f5e2945ce6a03d1fbd588e9198c0a959bb42297b2cfaf1685b7bc32e138",
- "https://bcr.bazel.build/modules/bazel_skylib/1.6.1/MODULE.bazel": "8fdee2dbaace6c252131c00e1de4b165dc65af02ea278476187765e1a617b917",
- "https://bcr.bazel.build/modules/bazel_skylib/1.6.1/source.json": "082ed5f9837901fada8c68c2f3ddc958bb22b6d654f71dd73f3df30d45d4b749",
- "https://bcr.bazel.build/modules/buildozer/7.1.2/MODULE.bazel": "2e8dd40ede9c454042645fd8d8d0cd1527966aa5c919de86661e62953cd73d84",
- "https://bcr.bazel.build/modules/buildozer/7.1.2/source.json": "c9028a501d2db85793a6996205c8de120944f50a0d570438fcae0457a5f9d1f8",
- "https://bcr.bazel.build/modules/googletest/1.11.0/MODULE.bazel": "3a83f095183f66345ca86aa13c58b59f9f94a2f81999c093d4eeaa2d262d12f4",
- "https://bcr.bazel.build/modules/googletest/1.14.0/MODULE.bazel": "cfbcbf3e6eac06ef9d85900f64424708cc08687d1b527f0ef65aa7517af8118f",
- "https://bcr.bazel.build/modules/googletest/1.14.0/source.json": "2478949479000fdd7de9a3d0107ba2c85bb5f961c3ecb1aa448f52549ce310b5",
- "https://bcr.bazel.build/modules/platforms/0.0.4/MODULE.bazel": "9b328e31ee156f53f3c416a64f8491f7eb731742655a47c9eec4703a71644aee",
- "https://bcr.bazel.build/modules/platforms/0.0.5/MODULE.bazel": "5733b54ea419d5eaf7997054bb55f6a1d0b5ff8aedf0176fef9eea44f3acda37",
- "https://bcr.bazel.build/modules/platforms/0.0.6/MODULE.bazel": "ad6eeef431dc52aefd2d77ed20a4b353f8ebf0f4ecdd26a807d2da5aa8cd0615",
- "https://bcr.bazel.build/modules/platforms/0.0.7/MODULE.bazel": "72fd4a0ede9ee5c021f6a8dd92b503e089f46c227ba2813ff183b71616034814",
- "https://bcr.bazel.build/modules/platforms/0.0.8/MODULE.bazel": "9f142c03e348f6d263719f5074b21ef3adf0b139ee4c5133e2aa35664da9eb2d",
- "https://bcr.bazel.build/modules/platforms/0.0.9/MODULE.bazel": "4a87a60c927b56ddd67db50c89acaa62f4ce2a1d2149ccb63ffd871d5ce29ebc",
- "https://bcr.bazel.build/modules/platforms/0.0.9/source.json": "cd74d854bf16a9e002fb2ca7b1a421f4403cda29f824a765acd3a8c56f8d43e6",
- "https://bcr.bazel.build/modules/protobuf/21.7/MODULE.bazel": "a5a29bb89544f9b97edce05642fac225a808b5b7be74038ea3640fae2f8e66a7",
- "https://bcr.bazel.build/modules/protobuf/23.1/MODULE.bazel": "88b393b3eb4101d18129e5db51847cd40a5517a53e81216144a8c32dfeeca52a",
- "https://bcr.bazel.build/modules/protobuf/24.4/MODULE.bazel": "7bc7ce5f2abf36b3b7b7c8218d3acdebb9426aeb35c2257c96445756f970eb12",
- "https://bcr.bazel.build/modules/protobuf/24.4/source.json": "ace4b8c65d4cfe64efe544f09fc5e5df77faf3a67fbb29c5341e0d755d9b15d6",
- "https://bcr.bazel.build/modules/protobuf/3.19.0/MODULE.bazel": "6b5fbb433f760a99a22b18b6850ed5784ef0e9928a72668b66e4d7ccd47db9b0",
- "https://bcr.bazel.build/modules/protobuf/3.19.6/MODULE.bazel": "9233edc5e1f2ee276a60de3eaa47ac4132302ef9643238f23128fea53ea12858",
- "https://bcr.bazel.build/modules/rules_cc/0.0.1/MODULE.bazel": "cb2aa0747f84c6c3a78dad4e2049c154f08ab9d166b1273835a8174940365647",
- "https://bcr.bazel.build/modules/rules_cc/0.0.2/MODULE.bazel": "6915987c90970493ab97393024c156ea8fb9f3bea953b2f3ec05c34f19b5695c",
- "https://bcr.bazel.build/modules/rules_cc/0.0.6/MODULE.bazel": "abf360251023dfe3efcef65ab9d56beefa8394d4176dd29529750e1c57eaa33f",
- "https://bcr.bazel.build/modules/rules_cc/0.0.8/MODULE.bazel": "964c85c82cfeb6f3855e6a07054fdb159aced38e99a5eecf7bce9d53990afa3e",
- "https://bcr.bazel.build/modules/rules_cc/0.0.9/MODULE.bazel": "836e76439f354b89afe6a911a7adf59a6b2518fafb174483ad78a2a2fde7b1c5",
- "https://bcr.bazel.build/modules/rules_cc/0.0.9/source.json": "1f1ba6fea244b616de4a554a0f4983c91a9301640c8fe0dd1d410254115c8430",
- "https://bcr.bazel.build/modules/rules_java/4.0.0/MODULE.bazel": "5a78a7ae82cd1a33cef56dc578c7d2a46ed0dca12643ee45edbb8417899e6f74",
- "https://bcr.bazel.build/modules/rules_java/7.1.0/MODULE.bazel": "30d9135a2b6561c761bd67bd4990da591e6bdc128790ce3e7afd6a3558b2fb64",
- "https://bcr.bazel.build/modules/rules_java/7.6.5/MODULE.bazel": "481164be5e02e4cab6e77a36927683263be56b7e36fef918b458d7a8a1ebadb1",
- "https://bcr.bazel.build/modules/rules_java/7.6.5/source.json": "a805b889531d1690e3c72a7a7e47a870d00323186a9904b36af83aa3d053ee8d",
- "https://bcr.bazel.build/modules/rules_jvm_external/4.4.2/MODULE.bazel": "a56b85e418c83eb1839819f0b515c431010160383306d13ec21959ac412d2fe7",
- "https://bcr.bazel.build/modules/rules_jvm_external/5.1/MODULE.bazel": "33f6f999e03183f7d088c9be518a63467dfd0be94a11d0055fe2d210f89aa909",
- "https://bcr.bazel.build/modules/rules_jvm_external/5.1/source.json": "5abb45cc9beb27b77aec6a65a11855ef2b55d95dfdc358e9f312b78ae0ba32d5",
- "https://bcr.bazel.build/modules/rules_license/0.0.3/MODULE.bazel": "627e9ab0247f7d1e05736b59dbb1b6871373de5ad31c3011880b4133cafd4bd0",
- "https://bcr.bazel.build/modules/rules_license/0.0.7/MODULE.bazel": "088fbeb0b6a419005b89cf93fe62d9517c0a2b8bb56af3244af65ecfe37e7d5d",
- "https://bcr.bazel.build/modules/rules_license/0.0.7/source.json": "355cc5737a0f294e560d52b1b7a6492d4fff2caf0bef1a315df5a298fca2d34a",
- "https://bcr.bazel.build/modules/rules_pkg/0.7.0/MODULE.bazel": "df99f03fc7934a4737122518bb87e667e62d780b610910f0447665a7e2be62dc",
- "https://bcr.bazel.build/modules/rules_pkg/0.7.0/source.json": "c2557066e0c0342223ba592510ad3d812d4963b9024831f7f66fd0584dd8c66c",
- "https://bcr.bazel.build/modules/rules_proto/4.0.0/MODULE.bazel": "a7a7b6ce9bee418c1a760b3d84f83a299ad6952f9903c67f19e4edd964894e06",
- "https://bcr.bazel.build/modules/rules_proto/5.3.0-21.7/MODULE.bazel": "e8dff86b0971688790ae75528fe1813f71809b5afd57facb44dad9e8eca631b7",
- "https://bcr.bazel.build/modules/rules_proto/6.0.0-rc1/MODULE.bazel": "1e5b502e2e1a9e825eef74476a5a1ee524a92297085015a052510b09a1a09483",
- "https://bcr.bazel.build/modules/rules_proto/6.0.0-rc1/source.json": "8d8448e71706df7450ced227ca6b3812407ff5e2ccad74a43a9fbe79c84e34e0",
- "https://bcr.bazel.build/modules/rules_python/0.10.2/MODULE.bazel": "cc82bc96f2997baa545ab3ce73f196d040ffb8756fd2d66125a530031cd90e5f",
- "https://bcr.bazel.build/modules/rules_python/0.22.1/MODULE.bazel": "26114f0c0b5e93018c0c066d6673f1a2c3737c7e90af95eff30cfee38d0bbac7",
- "https://bcr.bazel.build/modules/rules_python/0.34.0/MODULE.bazel": "1d623d026e075b78c9fde483a889cda7996f5da4f36dffb24c246ab30f06513a",
- "https://bcr.bazel.build/modules/rules_python/0.34.0/source.json": "113116e287eec64a7d005a9db44865d810499fdc4f621e352aff58214f5ea2d8",
- "https://bcr.bazel.build/modules/rules_python/0.4.0/MODULE.bazel": "9208ee05fd48bf09ac60ed269791cf17fb343db56c8226a720fbb1cdf467166c",
- "https://bcr.bazel.build/modules/stardoc/0.5.1/MODULE.bazel": "1a05d92974d0c122f5ccf09291442580317cdd859f07a8655f1db9a60374f9f8",
- "https://bcr.bazel.build/modules/stardoc/0.5.3/MODULE.bazel": "c7f6948dae6999bf0db32c1858ae345f112cacf98f174c7a8bb707e41b974f1c",
- "https://bcr.bazel.build/modules/stardoc/0.5.3/source.json": "cd53fe968dc8cd98197c052db3db6d82562960c87b61e7a90ee96f8e4e0dda97",
- "https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43",
- "https://bcr.bazel.build/modules/upb/0.0.0-20230516-61a97ef/MODULE.bazel": "c0df5e35ad55e264160417fd0875932ee3c9dda63d9fccace35ac62f45e1b6f9",
- "https://bcr.bazel.build/modules/upb/0.0.0-20230516-61a97ef/source.json": "b2150404947339e8b947c6b16baa39fa75657f4ddec5e37272c7b11c7ab533bc",
- "https://bcr.bazel.build/modules/zlib/1.2.11/MODULE.bazel": "07b389abc85fdbca459b69e2ec656ae5622873af3f845e1c9d80fe179f3effa0",
- "https://bcr.bazel.build/modules/zlib/1.2.12/MODULE.bazel": "3b1a8834ada2a883674be8cbd36ede1b6ec481477ada359cd2d3ddc562340b27",
- "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/MODULE.bazel": "af322bc08976524477c79d1e45e241b6efbeb918c497e8840b8ab116802dda79",
- "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/source.json": "2be409ac3c7601245958cd4fcdff4288be79ed23bd690b4b951f500d54ee6e7d"
- },
- "selectedYankedVersions": {},
- "moduleExtensions": {
- "@@apple_support~//crosstool:setup.bzl%apple_cc_configure_extension": {
- "general": {
- "bzlTransitiveDigest": "PjIds3feoYE8SGbbIq2SFTZy3zmxeO2tQevJZNDo7iY=",
- "usagesDigest": "aLmqbvowmHkkBPve05yyDNGN7oh7QE9kBADr3QIZTZs=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "local_config_apple_cc": {
- "bzlFile": "@@apple_support~//crosstool:setup.bzl",
- "ruleClassName": "_apple_cc_autoconf",
- "attributes": {}
- },
- "local_config_apple_cc_toolchains": {
- "bzlFile": "@@apple_support~//crosstool:setup.bzl",
- "ruleClassName": "_apple_cc_autoconf_toolchains",
- "attributes": {}
- }
- },
- "recordedRepoMappingEntries": [
- [
- "apple_support~",
- "bazel_tools",
- "bazel_tools"
- ]
- ]
- }
- },
- "@@platforms//host:extension.bzl%host_platform": {
- "general": {
- "bzlTransitiveDigest": "xelQcPZH8+tmuOHVjL9vDxMnnQNMlwj0SlvgoqBkm4U=",
- "usagesDigest": "meSzxn3DUCcYEhq4HQwExWkWtU4EjriRBQLsZN+Q0SU=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "host_platform": {
- "bzlFile": "@@platforms//host:extension.bzl",
- "ruleClassName": "host_platform_repo",
- "attributes": {}
- }
- },
- "recordedRepoMappingEntries": []
- }
- },
- "@@rules_req_compile~//extensions:python.bzl%requirements": {
- "general": {
- "bzlTransitiveDigest": "x6LvKaikdURYrL4bUqCpEMLOol6YrjGgk+hhTbiVJXc=",
- "usagesDigest": "py3Aj2uh7Npj1721ppKnXOY4y2wEQOANlAQSlB63p0o=",
- "recordedFileInputs": {
- "@@rules_req_compile~//3rdparty/requirements.macos.311.txt": "d3304956639cf483bf525b8b724c1aac95b72917463f04f64439e4a6a6abe776",
- "@@rules_req_compile~//3rdparty/requirements.linux.311.txt": "f4dda9ac9b4cea873d263fdd858c80562331eda192b431d9a43f63ceea596491",
- "@@//requirements.txt": "9ac6d44ffd7bf193e3c5bfddc6bff37e8221c873222094a35852b37c1bf42463",
- "@@rules_req_compile~//3rdparty/requirements.windows.311.txt": "4735c4a0fa4447fa168001785f858fbf2689ed72da59036fb707ea119c1002d1"
- },
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "req_compile_deps_windows_311__types_appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "types_appdirs",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b",
- "urls": [
- "https://files.pythonhosted.org/packages/cf/07/41f5b9b11f11855eb67760ed680330e0ce9136a44b51c24dd52edb1c4eb1/types_appdirs-1.4.3.5-py3-none-any.whl#sha256=337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b"
- ],
- "version": "1.4.3.5"
- }
- },
- "req_compile_deps_linux_311__wheel": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "wheel",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81",
- "urls": [
- "https://files.pythonhosted.org/packages/7d/cd/d7460c9a869b16c3dd4e1e403cce337df165368c71d6af229a74699622ce/wheel-0.43.0-py3-none-any.whl#sha256=55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81"
- ],
- "version": "0.43.0"
- }
- },
- "requirements_overrider_macos_311__mypy_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "mypy_extensions",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d",
- "urls": [
- "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"
- ],
- "version": "1.0.0"
- }
- },
- "requirements_overrider_linux_311__dill": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "dill",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7",
- "urls": [
- "https://files.pythonhosted.org/packages/c9/7a/cef76fd8438a42f96db64ddaa85280485a9c395e7df3db8158cfec1eee34/dill-0.3.8-py3-none-any.whl#sha256=c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"
- ],
- "version": "0.3.8"
- }
- },
- "requirements_overrider_macos_311__tomlkit": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "tomlkit",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b",
- "urls": [
- "https://files.pythonhosted.org/packages/07/fa/c96545d741f2fd47f565e4e06bfef0962add790cb9c2289d900102b55eca/tomlkit-0.12.4-py3-none-any.whl#sha256=5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"
- ],
- "version": "0.12.4"
- }
- },
- "req_compile_deps_linux_311__appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "appdirs",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128",
- "urls": [
- "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"
- ],
- "version": "1.4.4"
- }
- },
- "req_compile_deps_linux_311__pytest_mock": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "pytest"
- ],
- "package": "pytest_mock",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f",
- "urls": [
- "https://files.pythonhosted.org/packages/f2/3b/b26f90f74e2986a82df6e7ac7e319b8ea7ccece1caec9f8ab6104dc70603/pytest_mock-3.14.0-py3-none-any.whl#sha256=0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"
- ],
- "version": "3.14.0"
- }
- },
- "req_compile_deps_macos_311__types_requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "urllib3"
- ],
- "package": "types_requests",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d",
- "urls": [
- "https://files.pythonhosted.org/packages/05/22/21c7918c9bb842faa92fd26108e9f669c3dee9b6b239e8f45dd5f673e6cf/types_requests-2.31.0.20240311-py3-none-any.whl#sha256=47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d"
- ],
- "version": "2.31.0.20240311"
- }
- },
- "requirements_overrider_windows_311__pluggy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "pluggy",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981",
- "urls": [
- "https://files.pythonhosted.org/packages/a5/5b/0cc789b59e8cc1bf288b38111d002d8c5917123194d45b29dcdac64723cc/pluggy-1.4.0-py3-none-any.whl#sha256=7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"
- ],
- "version": "1.4.0"
- }
- },
- "req_compile_deps_linux_311__pathspec": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "pathspec",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08",
- "urls": [
- "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"
- ],
- "version": "0.12.1"
- }
- },
- "requirements_overrider_windows_311__pytest_mock": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "pytest"
- ],
- "package": "pytest_mock",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f",
- "urls": [
- "https://files.pythonhosted.org/packages/f2/3b/b26f90f74e2986a82df6e7ac7e319b8ea7ccece1caec9f8ab6104dc70603/pytest_mock-3.14.0-py3-none-any.whl#sha256=0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"
- ],
- "version": "3.14.0"
- }
- },
- "req_compile_deps_windows_311__mypy_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "mypy_extensions",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d",
- "urls": [
- "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"
- ],
- "version": "1.0.0"
- }
- },
- "requirements_overrider_macos_311__pylint": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "astroid",
- "dill",
- "isort",
- "mccabe",
- "platformdirs",
- "tomlkit"
- ],
- "package": "pylint",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/2b/dfcf298607c73c3af47d5a699c3bd84ba580f1b8642a53ba2a53eead7c49/pylint-3.1.0-py3-none-any.whl#sha256=507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_windows_311__wheel": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "wheel",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81",
- "urls": [
- "https://files.pythonhosted.org/packages/7d/cd/d7460c9a869b16c3dd4e1e403cce337df165368c71d6af229a74699622ce/wheel-0.43.0-py3-none-any.whl#sha256=55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81"
- ],
- "version": "0.43.0"
- }
- },
- "req_compile_deps_linux_311__mypy_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "mypy_extensions",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d",
- "urls": [
- "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"
- ],
- "version": "1.0.0"
- }
- },
- "req_compile_deps_macos_311__overrides": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "overrides",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49",
- "urls": [
- "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"
- ],
- "version": "7.7.0"
- }
- },
- "req_compile_deps_linux_311__certifi": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "certifi",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1",
- "urls": [
- "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl#sha256=dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
- ],
- "version": "2024.2.2"
- }
- },
- "req_compile_deps_linux_311__urllib3": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "urllib3",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d",
- "urls": [
- "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl#sha256=450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
- ],
- "version": "2.2.1"
- }
- },
- "requirements_overrider_linux_311__pluggy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "pluggy",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981",
- "urls": [
- "https://files.pythonhosted.org/packages/a5/5b/0cc789b59e8cc1bf288b38111d002d8c5917123194d45b29dcdac64723cc/pluggy-1.4.0-py3-none-any.whl#sha256=7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"
- ],
- "version": "1.4.0"
- }
- },
- "req_compile_deps_macos_311__responses": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "pyyaml",
- "requests",
- "urllib3"
- ],
- "package": "responses",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a",
- "urls": [
- "https://files.pythonhosted.org/packages/30/0b/bff1e6a5b646e6ff770deb6a292a96bd844ea13fb523ccbd9209fc4b90b8/responses-0.25.0-py3-none-any.whl#sha256=2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a"
- ],
- "version": "0.25.0"
- }
- },
- "req_compile_deps_linux_311__idna": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "idna",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f",
- "urls": [
- "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl#sha256=c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
- ],
- "version": "3.6"
- }
- },
- "req_compile_deps_windows_311__overrides": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "overrides",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49",
- "urls": [
- "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"
- ],
- "version": "7.7.0"
- }
- },
- "requirements_overrider_linux_311__mypy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "mypy_extensions",
- "typing_extensions"
- ],
- "package": "mypy",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "2418488264eb41f69cc64a69a745fad4a8f86649af4b1041a4c64ee61fc61129",
- "urls": [
- "https://files.pythonhosted.org/packages/a1/81/97e8539d6cdcfb3a8ae7eb1438c6983a9fc434ef9664572bfa7fd285cab9/mypy-1.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=2418488264eb41f69cc64a69a745fad4a8f86649af4b1041a4c64ee61fc61129"
- ],
- "version": "1.9.0"
- }
- },
- "req_compile_deps_windows_311__black": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "click",
- "mypy_extensions",
- "packaging",
- "pathspec",
- "platformdirs"
- ],
- "package": "black",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "bf21b7b230718a5f08bd32d5e4f1db7fc8788345c8aea1d155fc17852b3410f5",
- "urls": [
- "https://files.pythonhosted.org/packages/8f/b0/4bef40c808cc615187db983b75bacdca1c110a229d41ba9887549fac529c/black-24.3.0-cp311-cp311-win_amd64.whl#sha256=bf21b7b230718a5f08bd32d5e4f1db7fc8788345c8aea1d155fc17852b3410f5"
- ],
- "version": "24.3.0"
- }
- },
- "requirements_overrider_linux_311__six": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "six",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254",
- "urls": [
- "https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl#sha256=8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
- ],
- "version": "1.16.0"
- }
- },
- "req_compile_deps_windows_311__toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "toml",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
- "urls": [
- "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl#sha256=806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"
- ],
- "version": "0.10.2"
- }
- },
- "requirements_overrider_windows_311__toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "toml",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
- "urls": [
- "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl#sha256=806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"
- ],
- "version": "0.10.2"
- }
- },
- "req_compile_deps_windows_311__colorama": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "colorama",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl#sha256=4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"
- ],
- "version": "0.4.6"
- }
- },
- "req_compile_deps_linux_311__black": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "click",
- "mypy_extensions",
- "packaging",
- "pathspec",
- "platformdirs"
- ],
- "package": "black",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "65c02e4ea2ae09d16314d30912a58ada9a5c4fdfedf9512d23326128ac08ac3d",
- "urls": [
- "https://files.pythonhosted.org/packages/6b/59/498885b279e890f656ea4300a2671c964acb6d97994ea626479c2e5501b4/black-24.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=65c02e4ea2ae09d16314d30912a58ada9a5c4fdfedf9512d23326128ac08ac3d"
- ],
- "version": "24.3.0"
- }
- },
- "req_compile_deps_windows_311__pylint": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "astroid",
- "colorama",
- "dill",
- "isort",
- "mccabe",
- "platformdirs",
- "tomlkit"
- ],
- "package": "pylint",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/2b/dfcf298607c73c3af47d5a699c3bd84ba580f1b8642a53ba2a53eead7c49/pylint-3.1.0-py3-none-any.whl#sha256=507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74"
- ],
- "version": "3.1.0"
- }
- },
- "requirements_overrider_windows_311__click": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "colorama"
- ],
- "package": "click",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28",
- "urls": [
- "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl#sha256=ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"
- ],
- "version": "8.1.7"
- }
- },
- "req_compile_deps_linux_311__pytest": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "iniconfig",
- "packaging",
- "pluggy"
- ],
- "package": "pytest",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/7e/c79cecfdb6aa85c6c2e3cf63afc56d0f165f24f5c66c03c695c4d9b84756/pytest-8.1.1-py3-none-any.whl#sha256=2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"
- ],
- "version": "8.1.1"
- }
- },
- "req_compile_deps_linux_311__mccabe": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "mccabe",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e",
- "urls": [
- "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"
- ],
- "version": "0.7.0"
- }
- },
- "requirements_overrider_macos_311__astroid": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "astroid",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819",
- "urls": [
- "https://files.pythonhosted.org/packages/ed/1c/ee18acf9070f77253954b7d71b4c0cf8f5969fb23067d8f1a8793573ba00/astroid-3.1.0-py3-none-any.whl#sha256=951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_macos_311__pytest": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "iniconfig",
- "packaging",
- "pluggy"
- ],
- "package": "pytest",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/7e/c79cecfdb6aa85c6c2e3cf63afc56d0f165f24f5c66c03c695c4d9b84756/pytest-8.1.1-py3-none-any.whl#sha256=2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"
- ],
- "version": "8.1.1"
- }
- },
- "requirements_overrider_windows_311__pylint": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "astroid",
- "colorama",
- "dill",
- "isort",
- "mccabe",
- "platformdirs",
- "tomlkit"
- ],
- "package": "pylint",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/2b/dfcf298607c73c3af47d5a699c3bd84ba580f1b8642a53ba2a53eead7c49/pylint-3.1.0-py3-none-any.whl#sha256=507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_windows_311__pytest_mock": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "pytest"
- ],
- "package": "pytest_mock",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f",
- "urls": [
- "https://files.pythonhosted.org/packages/f2/3b/b26f90f74e2986a82df6e7ac7e319b8ea7ccece1caec9f8ab6104dc70603/pytest_mock-3.14.0-py3-none-any.whl#sha256=0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"
- ],
- "version": "3.14.0"
- }
- },
- "req_compile_deps_macos_311__mccabe": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "mccabe",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e",
- "urls": [
- "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"
- ],
- "version": "0.7.0"
- }
- },
- "req_compile_deps_linux_311__packaging": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "packaging",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5",
- "urls": [
- "https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl#sha256=2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"
- ],
- "version": "24.0"
- }
- },
- "requirements_overrider_linux_311__platformdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "platformdirs",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068",
- "urls": [
- "https://files.pythonhosted.org/packages/55/72/4898c44ee9ea6f43396fbc23d9bfaf3d06e01b83698bdf2e4c919deceb7c/platformdirs-4.2.0-py3-none-any.whl#sha256=0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"
- ],
- "version": "4.2.0"
- }
- },
- "req_compile_deps_linux_311__pluggy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "pluggy",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981",
- "urls": [
- "https://files.pythonhosted.org/packages/a5/5b/0cc789b59e8cc1bf288b38111d002d8c5917123194d45b29dcdac64723cc/pluggy-1.4.0-py3-none-any.whl#sha256=7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"
- ],
- "version": "1.4.0"
- }
- },
- "req_compile_deps_linux_311__types_appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "types_appdirs",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b",
- "urls": [
- "https://files.pythonhosted.org/packages/cf/07/41f5b9b11f11855eb67760ed680330e0ce9136a44b51c24dd52edb1c4eb1/types_appdirs-1.4.3.5-py3-none-any.whl#sha256=337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b"
- ],
- "version": "1.4.3.5"
- }
- },
- "req_compile_deps_macos_311__pyyaml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "pyyaml",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab",
- "urls": [
- "https://files.pythonhosted.org/packages/28/09/55f715ddbf95a054b764b547f617e22f1d5e45d83905660e9a088078fe67/PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl#sha256=f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"
- ],
- "version": "6.0.1"
- }
- },
- "requirements_overrider_windows_311__types_setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "types_setuptools",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531",
- "urls": [
- "https://files.pythonhosted.org/packages/1f/22/904934a3344fa5f332ecab887003f3f033c1272432a4af877007b75b0bd3/types_setuptools-69.2.0.20240317-py3-none-any.whl#sha256=cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531"
- ],
- "version": "69.2.0.20240317"
- }
- },
- "requirements_overrider_linux_311__pathspec": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "pathspec",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08",
- "urls": [
- "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"
- ],
- "version": "0.12.1"
- }
- },
- "requirements_overrider_linux_311__pylint": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "astroid",
- "dill",
- "isort",
- "mccabe",
- "platformdirs",
- "tomlkit"
- ],
- "package": "pylint",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/2b/dfcf298607c73c3af47d5a699c3bd84ba580f1b8642a53ba2a53eead7c49/pylint-3.1.0-py3-none-any.whl#sha256=507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_macos_311__pluggy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "pluggy",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981",
- "urls": [
- "https://files.pythonhosted.org/packages/a5/5b/0cc789b59e8cc1bf288b38111d002d8c5917123194d45b29dcdac64723cc/pluggy-1.4.0-py3-none-any.whl#sha256=7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"
- ],
- "version": "1.4.0"
- }
- },
- "requirements_overrider_macos_311__overrides": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "overrides",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49",
- "urls": [
- "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"
- ],
- "version": "7.7.0"
- }
- },
- "requirements_overrider_linux_311__types_requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "urllib3"
- ],
- "package": "types_requests",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d",
- "urls": [
- "https://files.pythonhosted.org/packages/05/22/21c7918c9bb842faa92fd26108e9f669c3dee9b6b239e8f45dd5f673e6cf/types_requests-2.31.0.20240311-py3-none-any.whl#sha256=47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d"
- ],
- "version": "2.31.0.20240311"
- }
- },
- "requirements_overrider_linux_311__wheel": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "wheel",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81",
- "urls": [
- "https://files.pythonhosted.org/packages/7d/cd/d7460c9a869b16c3dd4e1e403cce337df165368c71d6af229a74699622ce/wheel-0.43.0-py3-none-any.whl#sha256=55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81"
- ],
- "version": "0.43.0"
- }
- },
- "req_compile_deps_windows_311__urllib3": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "urllib3",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d",
- "urls": [
- "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl#sha256=450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
- ],
- "version": "2.2.1"
- }
- },
- "req_compile_deps_windows_311__certifi": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "certifi",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1",
- "urls": [
- "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl#sha256=dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
- ],
- "version": "2024.2.2"
- }
- },
- "requirements_overrider_linux_311__tomlkit": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "tomlkit",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b",
- "urls": [
- "https://files.pythonhosted.org/packages/07/fa/c96545d741f2fd47f565e4e06bfef0962add790cb9c2289d900102b55eca/tomlkit-0.12.4-py3-none-any.whl#sha256=5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"
- ],
- "version": "0.12.4"
- }
- },
- "requirements_overrider_windows_311__mccabe": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "mccabe",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e",
- "urls": [
- "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"
- ],
- "version": "0.7.0"
- }
- },
- "req_compile_deps_macos_311__toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "toml",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
- "urls": [
- "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl#sha256=806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"
- ],
- "version": "0.10.2"
- }
- },
- "requirements_overrider_macos_311__responses": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "pyyaml",
- "requests",
- "urllib3"
- ],
- "package": "responses",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a",
- "urls": [
- "https://files.pythonhosted.org/packages/30/0b/bff1e6a5b646e6ff770deb6a292a96bd844ea13fb523ccbd9209fc4b90b8/responses-0.25.0-py3-none-any.whl#sha256=2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a"
- ],
- "version": "0.25.0"
- }
- },
- "requirements_overrider_macos_311__six": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "six",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254",
- "urls": [
- "https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl#sha256=8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
- ],
- "version": "1.16.0"
- }
- },
- "req_compile_deps_linux_311__pyyaml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "pyyaml",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673",
- "urls": [
- "https://files.pythonhosted.org/packages/7b/5e/efd033ab7199a0b2044dab3b9f7a4f6670e6a52c089de572e928d2873b06/PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"
- ],
- "version": "6.0.1"
- }
- },
- "requirements_overrider_macos_311__idna": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "idna",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f",
- "urls": [
- "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl#sha256=c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
- ],
- "version": "3.6"
- }
- },
- "requirements_overrider_windows_311__typing_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "typing_extensions",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475",
- "urls": [
- "https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl#sha256=69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"
- ],
- "version": "4.10.0"
- }
- },
- "requirements_overrider_macos_311__pytest": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "iniconfig",
- "packaging",
- "pluggy"
- ],
- "package": "pytest",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/7e/c79cecfdb6aa85c6c2e3cf63afc56d0f165f24f5c66c03c695c4d9b84756/pytest-8.1.1-py3-none-any.whl#sha256=2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"
- ],
- "version": "8.1.1"
- }
- },
- "req_compile_deps_macos_311__six": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "six",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254",
- "urls": [
- "https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl#sha256=8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
- ],
- "version": "1.16.0"
- }
- },
- "requirements_overrider_linux_311__toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "toml",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
- "urls": [
- "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl#sha256=806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"
- ],
- "version": "0.10.2"
- }
- },
- "requirements_overrider_macos_311__types_requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "urllib3"
- ],
- "package": "types_requests",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d",
- "urls": [
- "https://files.pythonhosted.org/packages/05/22/21c7918c9bb842faa92fd26108e9f669c3dee9b6b239e8f45dd5f673e6cf/types_requests-2.31.0.20240311-py3-none-any.whl#sha256=47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d"
- ],
- "version": "2.31.0.20240311"
- }
- },
- "requirements_overrider_macos_311__types_setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "types_setuptools",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531",
- "urls": [
- "https://files.pythonhosted.org/packages/1f/22/904934a3344fa5f332ecab887003f3f033c1272432a4af877007b75b0bd3/types_setuptools-69.2.0.20240317-py3-none-any.whl#sha256=cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531"
- ],
- "version": "69.2.0.20240317"
- }
- },
- "requirements_overrider_linux_311__overrides": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "overrides",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49",
- "urls": [
- "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"
- ],
- "version": "7.7.0"
- }
- },
- "req_compile_deps": {
- "bzlFile": "@@rules_req_compile~//private:reqs_repo.bzl",
- "ruleClassName": "py_requirements_repository",
- "attributes": {
- "hub_name": "req_compile_deps",
- "requirements_locks": {
- "@@rules_req_compile~//3rdparty:requirements.linux.311.txt": "@platforms//os:linux",
- "@@rules_req_compile~//3rdparty:requirements.macos.311.txt": "@platforms//os:macos",
- "@@rules_req_compile~//3rdparty:requirements.windows.311.txt": "@platforms//os:windows"
- }
- }
- },
- "requirements_overrider_windows_311__platformdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "platformdirs",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068",
- "urls": [
- "https://files.pythonhosted.org/packages/55/72/4898c44ee9ea6f43396fbc23d9bfaf3d06e01b83698bdf2e4c919deceb7c/platformdirs-4.2.0-py3-none-any.whl#sha256=0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"
- ],
- "version": "4.2.0"
- }
- },
- "req_compile_deps_windows_311__requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "certifi",
- "charset_normalizer",
- "idna",
- "urllib3"
- ],
- "package": "requests",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
- "urls": [
- "https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl#sha256=58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"
- ],
- "version": "2.31.0"
- }
- },
- "req_compile_deps_linux_311__dill": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "dill",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7",
- "urls": [
- "https://files.pythonhosted.org/packages/c9/7a/cef76fd8438a42f96db64ddaa85280485a9c395e7df3db8158cfec1eee34/dill-0.3.8-py3-none-any.whl#sha256=c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"
- ],
- "version": "0.3.8"
- }
- },
- "requirements_overrider_macos_311__charset_normalizer": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "charset_normalizer",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e",
- "urls": [
- "https://files.pythonhosted.org/packages/dd/51/68b61b90b24ca35495956b718f35a9756ef7d3dd4b3c1508056fa98d1a1b/charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl#sha256=549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"
- ],
- "version": "3.3.2"
- }
- },
- "pip_deps": {
- "bzlFile": "@@rules_req_compile~//private:reqs_repo.bzl",
- "ruleClassName": "py_requirements_repository",
- "attributes": {
- "hub_name": "pip_deps",
- "requirements_lock": "@@//:requirements.txt",
- "requirements_locks": {}
- }
- },
- "req_compile_deps_macos_311__setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "setuptools",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c",
- "urls": [
- "https://files.pythonhosted.org/packages/92/e1/1c8bb3420105e70bdf357d57dd5567202b4ef8d27f810e98bb962d950834/setuptools-69.2.0-py3-none-any.whl#sha256=c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"
- ],
- "version": "69.2.0"
- }
- },
- "req_compile_deps_windows_311__dill": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "dill",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7",
- "urls": [
- "https://files.pythonhosted.org/packages/c9/7a/cef76fd8438a42f96db64ddaa85280485a9c395e7df3db8158cfec1eee34/dill-0.3.8-py3-none-any.whl#sha256=c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"
- ],
- "version": "0.3.8"
- }
- },
- "requirements_overrider_linux_311__pyyaml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "pyyaml",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673",
- "urls": [
- "https://files.pythonhosted.org/packages/7b/5e/efd033ab7199a0b2044dab3b9f7a4f6670e6a52c089de572e928d2873b06/PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"
- ],
- "version": "6.0.1"
- }
- },
- "req_compile_deps_linux_311__mypy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "mypy_extensions",
- "typing_extensions"
- ],
- "package": "mypy",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "2418488264eb41f69cc64a69a745fad4a8f86649af4b1041a4c64ee61fc61129",
- "urls": [
- "https://files.pythonhosted.org/packages/a1/81/97e8539d6cdcfb3a8ae7eb1438c6983a9fc434ef9664572bfa7fd285cab9/mypy-1.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=2418488264eb41f69cc64a69a745fad4a8f86649af4b1041a4c64ee61fc61129"
- ],
- "version": "1.9.0"
- }
- },
- "req_compile_deps_macos_311__astroid": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "astroid",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819",
- "urls": [
- "https://files.pythonhosted.org/packages/ed/1c/ee18acf9070f77253954b7d71b4c0cf8f5969fb23067d8f1a8793573ba00/astroid-3.1.0-py3-none-any.whl#sha256=951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819"
- ],
- "version": "3.1.0"
- }
- },
- "requirements_overrider_windows_311__urllib3": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "urllib3",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d",
- "urls": [
- "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl#sha256=450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
- ],
- "version": "2.2.1"
- }
- },
- "requirements_overrider_windows_311__mypy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "mypy_extensions",
- "typing_extensions"
- ],
- "package": "mypy",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "85ca5fcc24f0b4aeedc1d02f93707bccc04733f21d41c88334c5482219b1ccb3",
- "urls": [
- "https://files.pythonhosted.org/packages/59/56/a33d610a9cf692669690a89b54a6a920fd7c7ebcca00da2c36c9d975de8e/mypy-1.9.0-cp311-cp311-win_amd64.whl#sha256=85ca5fcc24f0b4aeedc1d02f93707bccc04733f21d41c88334c5482219b1ccb3"
- ],
- "version": "1.9.0"
- }
- },
- "req_compile_deps_windows_311__click": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "colorama"
- ],
- "package": "click",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28",
- "urls": [
- "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl#sha256=ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"
- ],
- "version": "8.1.7"
- }
- },
- "requirements_overrider_linux_311__mypy_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "mypy_extensions",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d",
- "urls": [
- "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"
- ],
- "version": "1.0.0"
- }
- },
- "requirements_overrider_windows_311__pyyaml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "pyyaml",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34",
- "urls": [
- "https://files.pythonhosted.org/packages/b3/34/65bb4b2d7908044963ebf614fe0fdb080773fc7030d7e39c8d3eddcd4257/PyYAML-6.0.1-cp311-cp311-win_amd64.whl#sha256=bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"
- ],
- "version": "6.0.1"
- }
- },
- "req_compile_deps_windows_311__charset_normalizer": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "charset_normalizer",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77",
- "urls": [
- "https://files.pythonhosted.org/packages/57/ec/80c8d48ac8b1741d5b963797b7c0c869335619e13d4744ca2f67fc11c6fc/charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl#sha256=663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"
- ],
- "version": "3.3.2"
- }
- },
- "requirements_overrider_windows_311__dill": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "dill",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7",
- "urls": [
- "https://files.pythonhosted.org/packages/c9/7a/cef76fd8438a42f96db64ddaa85280485a9c395e7df3db8158cfec1eee34/dill-0.3.8-py3-none-any.whl#sha256=c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"
- ],
- "version": "0.3.8"
- }
- },
- "req_compile_deps_macos_311__types_appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "types_appdirs",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b",
- "urls": [
- "https://files.pythonhosted.org/packages/cf/07/41f5b9b11f11855eb67760ed680330e0ce9136a44b51c24dd52edb1c4eb1/types_appdirs-1.4.3.5-py3-none-any.whl#sha256=337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b"
- ],
- "version": "1.4.3.5"
- }
- },
- "requirements_overrider_windows_311__pytest": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "colorama",
- "iniconfig",
- "packaging",
- "pluggy"
- ],
- "package": "pytest",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/7e/c79cecfdb6aa85c6c2e3cf63afc56d0f165f24f5c66c03c695c4d9b84756/pytest-8.1.1-py3-none-any.whl#sha256=2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"
- ],
- "version": "8.1.1"
- }
- },
- "requirements_overrider_windows_311__overrides": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "overrides",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49",
- "urls": [
- "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"
- ],
- "version": "7.7.0"
- }
- },
- "requirements_overrider_windows_311__certifi": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "certifi",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1",
- "urls": [
- "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl#sha256=dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
- ],
- "version": "2024.2.2"
- }
- },
- "req_compile_deps_macos_311__black": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "click",
- "mypy_extensions",
- "packaging",
- "pathspec",
- "platformdirs"
- ],
- "package": "black",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "aadf7a02d947936ee418777e0247ea114f78aff0d0959461057cae8a04f20597",
- "urls": [
- "https://files.pythonhosted.org/packages/46/5f/30398c5056cb72f883b32b6520ad00042a9d0454b693f70509867db03a80/black-24.3.0-cp311-cp311-macosx_11_0_arm64.whl#sha256=aadf7a02d947936ee418777e0247ea114f78aff0d0959461057cae8a04f20597"
- ],
- "version": "24.3.0"
- }
- },
- "req_compile_deps_macos_311__certifi": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "certifi",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1",
- "urls": [
- "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl#sha256=dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
- ],
- "version": "2024.2.2"
- }
- },
- "requirements_overrider_windows_311__appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "appdirs",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128",
- "urls": [
- "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"
- ],
- "version": "1.4.4"
- }
- },
- "req_compile_deps_linux_311__iniconfig": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "iniconfig",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374",
- "urls": [
- "https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl#sha256=b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"
- ],
- "version": "2.0.0"
- }
- },
- "req_compile_deps_macos_311__pylint": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "astroid",
- "dill",
- "isort",
- "mccabe",
- "platformdirs",
- "tomlkit"
- ],
- "package": "pylint",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/2b/dfcf298607c73c3af47d5a699c3bd84ba580f1b8642a53ba2a53eead7c49/pylint-3.1.0-py3-none-any.whl#sha256=507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74"
- ],
- "version": "3.1.0"
- }
- },
- "requirements_overrider_windows_311__responses": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "pyyaml",
- "requests",
- "urllib3"
- ],
- "package": "responses",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a",
- "urls": [
- "https://files.pythonhosted.org/packages/30/0b/bff1e6a5b646e6ff770deb6a292a96bd844ea13fb523ccbd9209fc4b90b8/responses-0.25.0-py3-none-any.whl#sha256=2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a"
- ],
- "version": "0.25.0"
- }
- },
- "requirements_overrider_macos_311__requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "certifi",
- "charset_normalizer",
- "idna",
- "urllib3"
- ],
- "package": "requests",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
- "urls": [
- "https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl#sha256=58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"
- ],
- "version": "2.31.0"
- }
- },
- "req_compile_deps_macos_311__appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "appdirs",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128",
- "urls": [
- "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"
- ],
- "version": "1.4.4"
- }
- },
- "requirements_overrider_linux_311__types_toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "types_toml",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d",
- "urls": [
- "https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d"
- ],
- "version": "0.10.8.20240310"
- }
- },
- "req_compile_deps_linux_311__pylint": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "astroid",
- "dill",
- "isort",
- "mccabe",
- "platformdirs",
- "tomlkit"
- ],
- "package": "pylint",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/2b/dfcf298607c73c3af47d5a699c3bd84ba580f1b8642a53ba2a53eead7c49/pylint-3.1.0-py3-none-any.whl#sha256=507a5b60953874766d8a366e8e8c7af63e058b26345cfcb5f91f89d987fd6b74"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_macos_311__iniconfig": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "iniconfig",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374",
- "urls": [
- "https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl#sha256=b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"
- ],
- "version": "2.0.0"
- }
- },
- "req_compile_deps_macos_311__urllib3": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "urllib3",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d",
- "urls": [
- "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl#sha256=450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
- ],
- "version": "2.2.1"
- }
- },
- "req_compile_deps_macos_311__isort": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "isort",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl#sha256=8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"
- ],
- "version": "5.13.2"
- }
- },
- "requirements_overrider_linux_311__types_appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "types_appdirs",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b",
- "urls": [
- "https://files.pythonhosted.org/packages/cf/07/41f5b9b11f11855eb67760ed680330e0ce9136a44b51c24dd52edb1c4eb1/types_appdirs-1.4.3.5-py3-none-any.whl#sha256=337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b"
- ],
- "version": "1.4.3.5"
- }
- },
- "requirements_overrider_macos_311__pluggy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "pluggy",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981",
- "urls": [
- "https://files.pythonhosted.org/packages/a5/5b/0cc789b59e8cc1bf288b38111d002d8c5917123194d45b29dcdac64723cc/pluggy-1.4.0-py3-none-any.whl#sha256=7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"
- ],
- "version": "1.4.0"
- }
- },
- "req_compile_deps_windows_311__mypy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "mypy_extensions",
- "typing_extensions"
- ],
- "package": "mypy",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "85ca5fcc24f0b4aeedc1d02f93707bccc04733f21d41c88334c5482219b1ccb3",
- "urls": [
- "https://files.pythonhosted.org/packages/59/56/a33d610a9cf692669690a89b54a6a920fd7c7ebcca00da2c36c9d975de8e/mypy-1.9.0-cp311-cp311-win_amd64.whl#sha256=85ca5fcc24f0b4aeedc1d02f93707bccc04733f21d41c88334c5482219b1ccb3"
- ],
- "version": "1.9.0"
- }
- },
- "requirements_overrider_windows_311__pathspec": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "pathspec",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08",
- "urls": [
- "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"
- ],
- "version": "0.12.1"
- }
- },
- "requirements_overrider_linux_311__pytest": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "iniconfig",
- "packaging",
- "pluggy"
- ],
- "package": "pytest",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/7e/c79cecfdb6aa85c6c2e3cf63afc56d0f165f24f5c66c03c695c4d9b84756/pytest-8.1.1-py3-none-any.whl#sha256=2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"
- ],
- "version": "8.1.1"
- }
- },
- "requirements_overrider_linux_311__black": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "click",
- "mypy_extensions",
- "packaging",
- "pathspec",
- "platformdirs"
- ],
- "package": "black",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "65c02e4ea2ae09d16314d30912a58ada9a5c4fdfedf9512d23326128ac08ac3d",
- "urls": [
- "https://files.pythonhosted.org/packages/6b/59/498885b279e890f656ea4300a2671c964acb6d97994ea626479c2e5501b4/black-24.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=65c02e4ea2ae09d16314d30912a58ada9a5c4fdfedf9512d23326128ac08ac3d"
- ],
- "version": "24.3.0"
- }
- },
- "requirements_overrider_linux_311__isort": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "isort",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl#sha256=8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"
- ],
- "version": "5.13.2"
- }
- },
- "requirements_overrider_linux_311__typing_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "typing_extensions",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475",
- "urls": [
- "https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl#sha256=69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"
- ],
- "version": "4.10.0"
- }
- },
- "requirements_overrider_macos_311__types_appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "types_appdirs",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b",
- "urls": [
- "https://files.pythonhosted.org/packages/cf/07/41f5b9b11f11855eb67760ed680330e0ce9136a44b51c24dd52edb1c4eb1/types_appdirs-1.4.3.5-py3-none-any.whl#sha256=337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b"
- ],
- "version": "1.4.3.5"
- }
- },
- "requirements_overrider_macos_311__pyyaml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "pyyaml",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab",
- "urls": [
- "https://files.pythonhosted.org/packages/28/09/55f715ddbf95a054b764b547f617e22f1d5e45d83905660e9a088078fe67/PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl#sha256=f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"
- ],
- "version": "6.0.1"
- }
- },
- "requirements_overrider_linux_311__setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "setuptools",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c",
- "urls": [
- "https://files.pythonhosted.org/packages/92/e1/1c8bb3420105e70bdf357d57dd5567202b4ef8d27f810e98bb962d950834/setuptools-69.2.0-py3-none-any.whl#sha256=c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"
- ],
- "version": "69.2.0"
- }
- },
- "req_compile_deps_linux_311__typing_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "typing_extensions",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475",
- "urls": [
- "https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl#sha256=69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"
- ],
- "version": "4.10.0"
- }
- },
- "requirements_overrider_windows_311__wheel": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "wheel",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81",
- "urls": [
- "https://files.pythonhosted.org/packages/7d/cd/d7460c9a869b16c3dd4e1e403cce337df165368c71d6af229a74699622ce/wheel-0.43.0-py3-none-any.whl#sha256=55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81"
- ],
- "version": "0.43.0"
- }
- },
- "req_compile_deps_windows_311__iniconfig": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "iniconfig",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374",
- "urls": [
- "https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl#sha256=b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"
- ],
- "version": "2.0.0"
- }
- },
- "requirements_overrider": {
- "bzlFile": "@@rules_req_compile~//private:reqs_repo.bzl",
- "ruleClassName": "py_requirements_repository",
- "attributes": {
- "hub_name": "requirements_overrider",
- "requirements_locks": {
- "@@rules_req_compile~//3rdparty:requirements.linux.311.txt": "@platforms//os:linux",
- "@@rules_req_compile~//3rdparty:requirements.macos.311.txt": "@platforms//os:macos",
- "@@rules_req_compile~//3rdparty:requirements.windows.311.txt": "@platforms//os:windows"
- }
- }
- },
- "requirements_overrider_macos_311__setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "setuptools",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c",
- "urls": [
- "https://files.pythonhosted.org/packages/92/e1/1c8bb3420105e70bdf357d57dd5567202b4ef8d27f810e98bb962d950834/setuptools-69.2.0-py3-none-any.whl#sha256=c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"
- ],
- "version": "69.2.0"
- }
- },
- "requirements_overrider_macos_311__mypy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "mypy_extensions",
- "typing_extensions"
- ],
- "package": "mypy",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "3a3c007ff3ee90f69cf0a15cbcdf0995749569b86b6d2f327af01fd1b8aee9dc",
- "urls": [
- "https://files.pythonhosted.org/packages/da/e2/1864612774cf8a445f6d42ce73ce0f1492a37ed2af1c908e989f1ec7d349/mypy-1.9.0-cp311-cp311-macosx_11_0_arm64.whl#sha256=3a3c007ff3ee90f69cf0a15cbcdf0995749569b86b6d2f327af01fd1b8aee9dc"
- ],
- "version": "1.9.0"
- }
- },
- "req_compile_deps_windows_311__isort": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "isort",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl#sha256=8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"
- ],
- "version": "5.13.2"
- }
- },
- "requirements_overrider_macos_311__urllib3": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "urllib3",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d",
- "urls": [
- "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl#sha256=450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
- ],
- "version": "2.2.1"
- }
- },
- "requirements_overrider_windows_311__requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "certifi",
- "charset_normalizer",
- "idna",
- "urllib3"
- ],
- "package": "requests",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
- "urls": [
- "https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl#sha256=58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"
- ],
- "version": "2.31.0"
- }
- },
- "req_compile_deps_windows_311__platformdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "platformdirs",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068",
- "urls": [
- "https://files.pythonhosted.org/packages/55/72/4898c44ee9ea6f43396fbc23d9bfaf3d06e01b83698bdf2e4c919deceb7c/platformdirs-4.2.0-py3-none-any.whl#sha256=0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"
- ],
- "version": "4.2.0"
- }
- },
- "req_compile_deps_linux_311__charset_normalizer": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "charset_normalizer",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8",
- "urls": [
- "https://files.pythonhosted.org/packages/40/26/f35951c45070edc957ba40a5b1db3cf60a9dbb1b350c2d5bef03e01e61de/charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"
- ],
- "version": "3.3.2"
- }
- },
- "req_compile_deps_macos_311__idna": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "idna",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f",
- "urls": [
- "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl#sha256=c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
- ],
- "version": "3.6"
- }
- },
- "req_compile_deps_windows_311__types_toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "types_toml",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d",
- "urls": [
- "https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d"
- ],
- "version": "0.10.8.20240310"
- }
- },
- "req_compile_deps_macos_311__platformdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "platformdirs",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068",
- "urls": [
- "https://files.pythonhosted.org/packages/55/72/4898c44ee9ea6f43396fbc23d9bfaf3d06e01b83698bdf2e4c919deceb7c/platformdirs-4.2.0-py3-none-any.whl#sha256=0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"
- ],
- "version": "4.2.0"
- }
- },
- "req_compile_deps_macos_311__packaging": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "packaging",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5",
- "urls": [
- "https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl#sha256=2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"
- ],
- "version": "24.0"
- }
- },
- "req_compile_deps_linux_311__isort": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "isort",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl#sha256=8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"
- ],
- "version": "5.13.2"
- }
- },
- "req_compile_deps_macos_311__typing_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "typing_extensions",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475",
- "urls": [
- "https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl#sha256=69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"
- ],
- "version": "4.10.0"
- }
- },
- "requirements_overrider_windows_311__astroid": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "astroid",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819",
- "urls": [
- "https://files.pythonhosted.org/packages/ed/1c/ee18acf9070f77253954b7d71b4c0cf8f5969fb23067d8f1a8793573ba00/astroid-3.1.0-py3-none-any.whl#sha256=951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_linux_311__tomlkit": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "tomlkit",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b",
- "urls": [
- "https://files.pythonhosted.org/packages/07/fa/c96545d741f2fd47f565e4e06bfef0962add790cb9c2289d900102b55eca/tomlkit-0.12.4-py3-none-any.whl#sha256=5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"
- ],
- "version": "0.12.4"
- }
- },
- "requirements_overrider_linux_311__appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "appdirs",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128",
- "urls": [
- "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"
- ],
- "version": "1.4.4"
- }
- },
- "requirements_overrider_macos_311__types_toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "types_toml",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d",
- "urls": [
- "https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d"
- ],
- "version": "0.10.8.20240310"
- }
- },
- "req_compile_deps_linux_311__types_requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "urllib3"
- ],
- "package": "types_requests",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d",
- "urls": [
- "https://files.pythonhosted.org/packages/05/22/21c7918c9bb842faa92fd26108e9f669c3dee9b6b239e8f45dd5f673e6cf/types_requests-2.31.0.20240311-py3-none-any.whl#sha256=47872893d65a38e282ee9f277a4ee50d1b28bd592040df7d1fdaffdf3779937d"
- ],
- "version": "2.31.0.20240311"
- }
- },
- "requirements_overrider_linux_311__requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "certifi",
- "charset_normalizer",
- "idna",
- "urllib3"
- ],
- "package": "requests",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
- "urls": [
- "https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl#sha256=58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"
- ],
- "version": "2.31.0"
- }
- },
- "requirements_overrider_macos_311__dill": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "dill",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7",
- "urls": [
- "https://files.pythonhosted.org/packages/c9/7a/cef76fd8438a42f96db64ddaa85280485a9c395e7df3db8158cfec1eee34/dill-0.3.8-py3-none-any.whl#sha256=c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"
- ],
- "version": "0.3.8"
- }
- },
- "req_compile_deps_linux_311__astroid": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "astroid",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819",
- "urls": [
- "https://files.pythonhosted.org/packages/ed/1c/ee18acf9070f77253954b7d71b4c0cf8f5969fb23067d8f1a8793573ba00/astroid-3.1.0-py3-none-any.whl#sha256=951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_windows_311__mccabe": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "mccabe",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e",
- "urls": [
- "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"
- ],
- "version": "0.7.0"
- }
- },
- "req_compile_deps_windows_311__pathspec": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "pathspec",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08",
- "urls": [
- "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"
- ],
- "version": "0.12.1"
- }
- },
- "req_compile_deps_windows_311__idna": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "idna",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f",
- "urls": [
- "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl#sha256=c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
- ],
- "version": "3.6"
- }
- },
- "req_compile_deps_windows_311__types_requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "urllib3"
- ],
- "package": "types_requests",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "06abf6a68f5c4f2a62f6bb006672dfb26ed50ccbfddb281e1ee6f09a65707d5d",
- "urls": [
- "https://files.pythonhosted.org/packages/6d/05/f9ccc1e7c1760367686834637ca41f2c13cb865c5c3e0505d18c9110cd9b/types_requests-2.31.0.20240403-py3-none-any.whl#sha256=06abf6a68f5c4f2a62f6bb006672dfb26ed50ccbfddb281e1ee6f09a65707d5d"
- ],
- "version": "2.31.0.20240403"
- }
- },
- "requirements_overrider_macos_311__platformdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "platformdirs",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068",
- "urls": [
- "https://files.pythonhosted.org/packages/55/72/4898c44ee9ea6f43396fbc23d9bfaf3d06e01b83698bdf2e4c919deceb7c/platformdirs-4.2.0-py3-none-any.whl#sha256=0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"
- ],
- "version": "4.2.0"
- }
- },
- "requirements_overrider_macos_311__typing_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "typing_extensions",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475",
- "urls": [
- "https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl#sha256=69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"
- ],
- "version": "4.10.0"
- }
- },
- "requirements_overrider_linux_311__click": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "click",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28",
- "urls": [
- "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl#sha256=ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"
- ],
- "version": "8.1.7"
- }
- },
- "requirements_overrider_macos_311__iniconfig": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "iniconfig",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374",
- "urls": [
- "https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl#sha256=b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"
- ],
- "version": "2.0.0"
- }
- },
- "requirements_overrider_linux_311__types_setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "types_setuptools",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531",
- "urls": [
- "https://files.pythonhosted.org/packages/1f/22/904934a3344fa5f332ecab887003f3f033c1272432a4af877007b75b0bd3/types_setuptools-69.2.0.20240317-py3-none-any.whl#sha256=cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531"
- ],
- "version": "69.2.0.20240317"
- }
- },
- "requirements_overrider_macos_311__click": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "click",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28",
- "urls": [
- "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl#sha256=ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"
- ],
- "version": "8.1.7"
- }
- },
- "req_compile_deps_windows_311__six": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "six",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254",
- "urls": [
- "https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl#sha256=8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
- ],
- "version": "1.16.0"
- }
- },
- "requirements_overrider_linux_311__responses": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "pyyaml",
- "requests",
- "urllib3"
- ],
- "package": "responses",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a",
- "urls": [
- "https://files.pythonhosted.org/packages/30/0b/bff1e6a5b646e6ff770deb6a292a96bd844ea13fb523ccbd9209fc4b90b8/responses-0.25.0-py3-none-any.whl#sha256=2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a"
- ],
- "version": "0.25.0"
- }
- },
- "requirements_overrider_windows_311__six": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "six",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254",
- "urls": [
- "https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl#sha256=8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
- ],
- "version": "1.16.0"
- }
- },
- "req_compile_deps_macos_311__click": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "click",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28",
- "urls": [
- "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl#sha256=ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"
- ],
- "version": "8.1.7"
- }
- },
- "requirements_overrider_linux_311__charset_normalizer": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "charset_normalizer",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8",
- "urls": [
- "https://files.pythonhosted.org/packages/40/26/f35951c45070edc957ba40a5b1db3cf60a9dbb1b350c2d5bef03e01e61de/charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl#sha256=753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"
- ],
- "version": "3.3.2"
- }
- },
- "requirements_overrider_macos_311__appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "appdirs",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128",
- "urls": [
- "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"
- ],
- "version": "1.4.4"
- }
- },
- "requirements_overrider_windows_311__setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "setuptools",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c",
- "urls": [
- "https://files.pythonhosted.org/packages/92/e1/1c8bb3420105e70bdf357d57dd5567202b4ef8d27f810e98bb962d950834/setuptools-69.2.0-py3-none-any.whl#sha256=c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"
- ],
- "version": "69.2.0"
- }
- },
- "requirements_overrider_linux_311__certifi": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "certifi",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1",
- "urls": [
- "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl#sha256=dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
- ],
- "version": "2024.2.2"
- }
- },
- "requirements_overrider_linux_311__urllib3": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "urllib3",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d",
- "urls": [
- "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl#sha256=450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
- ],
- "version": "2.2.1"
- }
- },
- "req_compile_deps_windows_311__typing_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "typing_extensions",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475",
- "urls": [
- "https://files.pythonhosted.org/packages/f9/de/dc04a3ea60b22624b51c703a84bbe0184abcd1d0b9bc8074b5d6b7ab90bb/typing_extensions-4.10.0-py3-none-any.whl#sha256=69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"
- ],
- "version": "4.10.0"
- }
- },
- "req_compile_deps_macos_311__types_toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "types_toml",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d",
- "urls": [
- "https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d"
- ],
- "version": "0.10.8.20240310"
- }
- },
- "req_compile_deps_linux_311__types_toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "types_toml",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d",
- "urls": [
- "https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d"
- ],
- "version": "0.10.8.20240310"
- }
- },
- "req_compile_deps_macos_311__pathspec": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "pathspec",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08",
- "urls": [
- "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"
- ],
- "version": "0.12.1"
- }
- },
- "requirements_overrider_macos_311__mccabe": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "mccabe",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e",
- "urls": [
- "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"
- ],
- "version": "0.7.0"
- }
- },
- "req_compile_deps_macos_311__mypy_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "mypy_extensions",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d",
- "urls": [
- "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"
- ],
- "version": "1.0.0"
- }
- },
- "req_compile_deps_linux_311__six": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "six",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254",
- "urls": [
- "https://files.pythonhosted.org/packages/d9/5a/e7c31adbe875f2abbb91bd84cf2dc52d792b5a01506781dbcf25c91daf11/six-1.16.0-py2.py3-none-any.whl#sha256=8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"
- ],
- "version": "1.16.0"
- }
- },
- "req_compile_deps_macos_311__pytest_mock": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "pytest"
- ],
- "package": "pytest_mock",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f",
- "urls": [
- "https://files.pythonhosted.org/packages/f2/3b/b26f90f74e2986a82df6e7ac7e319b8ea7ccece1caec9f8ab6104dc70603/pytest_mock-3.14.0-py3-none-any.whl#sha256=0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"
- ],
- "version": "3.14.0"
- }
- },
- "req_compile_deps_linux_311__requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "certifi",
- "charset_normalizer",
- "idna",
- "urllib3"
- ],
- "package": "requests",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
- "urls": [
- "https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl#sha256=58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"
- ],
- "version": "2.31.0"
- }
- },
- "req_compile_deps_macos_311__types_setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "types_setuptools",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531",
- "urls": [
- "https://files.pythonhosted.org/packages/1f/22/904934a3344fa5f332ecab887003f3f033c1272432a4af877007b75b0bd3/types_setuptools-69.2.0.20240317-py3-none-any.whl#sha256=cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531"
- ],
- "version": "69.2.0.20240317"
- }
- },
- "req_compile_deps_linux_311__setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "setuptools",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c",
- "urls": [
- "https://files.pythonhosted.org/packages/92/e1/1c8bb3420105e70bdf357d57dd5567202b4ef8d27f810e98bb962d950834/setuptools-69.2.0-py3-none-any.whl#sha256=c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"
- ],
- "version": "69.2.0"
- }
- },
- "req_compile_deps_windows_311__responses": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "pyyaml",
- "requests",
- "urllib3"
- ],
- "package": "responses",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a",
- "urls": [
- "https://files.pythonhosted.org/packages/30/0b/bff1e6a5b646e6ff770deb6a292a96bd844ea13fb523ccbd9209fc4b90b8/responses-0.25.0-py3-none-any.whl#sha256=2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a"
- ],
- "version": "0.25.0"
- }
- },
- "req_compile_deps_macos_311__wheel": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "wheel",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81",
- "urls": [
- "https://files.pythonhosted.org/packages/7d/cd/d7460c9a869b16c3dd4e1e403cce337df165368c71d6af229a74699622ce/wheel-0.43.0-py3-none-any.whl#sha256=55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81"
- ],
- "version": "0.43.0"
- }
- },
- "req_compile_deps_windows_311__tomlkit": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "tomlkit",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b",
- "urls": [
- "https://files.pythonhosted.org/packages/07/fa/c96545d741f2fd47f565e4e06bfef0962add790cb9c2289d900102b55eca/tomlkit-0.12.4-py3-none-any.whl#sha256=5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"
- ],
- "version": "0.12.4"
- }
- },
- "req_compile_deps_linux_311__overrides": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "overrides",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49",
- "urls": [
- "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl#sha256=c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"
- ],
- "version": "7.7.0"
- }
- },
- "requirements_overrider_windows_311__types_appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "types_appdirs",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b",
- "urls": [
- "https://files.pythonhosted.org/packages/cf/07/41f5b9b11f11855eb67760ed680330e0ce9136a44b51c24dd52edb1c4eb1/types_appdirs-1.4.3.5-py3-none-any.whl#sha256=337c750e423c40911d389359b4edabe5bbc2cdd5cd0bd0518b71d2839646273b"
- ],
- "version": "1.4.3.5"
- }
- },
- "requirements_overrider_windows_311__mypy_extensions": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "mypy_extensions",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d",
- "urls": [
- "https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl#sha256=4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"
- ],
- "version": "1.0.0"
- }
- },
- "requirements_overrider_macos_311__toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "toml",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
- "urls": [
- "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl#sha256=806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"
- ],
- "version": "0.10.2"
- }
- },
- "pip_deps__platformdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "",
- "deps": [],
- "package": "platformdirs",
- "spoke_prefix": "pip_deps",
- "sha256": "2d7a1657e36a80ea911db832a8a6ece5ee53d8de21edd5cc5879af6530b1bfee",
- "urls": [
- "https://files.pythonhosted.org/packages/68/13/2aa1f0e1364feb2c9ef45302f387ac0bd81484e9c9a4c5688a322fbdfd08/platformdirs-4.2.2-py3-none-any.whl#sha256=2d7a1657e36a80ea911db832a8a6ece5ee53d8de21edd5cc5879af6530b1bfee"
- ],
- "version": "4.2.2"
- }
- },
- "req_compile_deps_macos_311__dill": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "dill",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7",
- "urls": [
- "https://files.pythonhosted.org/packages/c9/7a/cef76fd8438a42f96db64ddaa85280485a9c395e7df3db8158cfec1eee34/dill-0.3.8-py3-none-any.whl#sha256=c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"
- ],
- "version": "0.3.8"
- }
- },
- "req_compile_deps_macos_311__requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "certifi",
- "charset_normalizer",
- "idna",
- "urllib3"
- ],
- "package": "requests",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
- "urls": [
- "https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl#sha256=58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"
- ],
- "version": "2.31.0"
- }
- },
- "req_compile_deps_windows_311__pluggy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "pluggy",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981",
- "urls": [
- "https://files.pythonhosted.org/packages/a5/5b/0cc789b59e8cc1bf288b38111d002d8c5917123194d45b29dcdac64723cc/pluggy-1.4.0-py3-none-any.whl#sha256=7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"
- ],
- "version": "1.4.0"
- }
- },
- "requirements_overrider_macos_311__wheel": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "wheel",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81",
- "urls": [
- "https://files.pythonhosted.org/packages/7d/cd/d7460c9a869b16c3dd4e1e403cce337df165368c71d6af229a74699622ce/wheel-0.43.0-py3-none-any.whl#sha256=55c570405f142630c6b9f72fe09d9b67cf1477fcf543ae5b8dcb1f5b7377da81"
- ],
- "version": "0.43.0"
- }
- },
- "req_compile_deps_linux_311__platformdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "platformdirs",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068",
- "urls": [
- "https://files.pythonhosted.org/packages/55/72/4898c44ee9ea6f43396fbc23d9bfaf3d06e01b83698bdf2e4c919deceb7c/platformdirs-4.2.0-py3-none-any.whl#sha256=0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"
- ],
- "version": "4.2.0"
- }
- },
- "req_compile_deps_macos_311__mypy": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "mypy_extensions",
- "typing_extensions"
- ],
- "package": "mypy",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "3a3c007ff3ee90f69cf0a15cbcdf0995749569b86b6d2f327af01fd1b8aee9dc",
- "urls": [
- "https://files.pythonhosted.org/packages/da/e2/1864612774cf8a445f6d42ce73ce0f1492a37ed2af1c908e989f1ec7d349/mypy-1.9.0-cp311-cp311-macosx_11_0_arm64.whl#sha256=3a3c007ff3ee90f69cf0a15cbcdf0995749569b86b6d2f327af01fd1b8aee9dc"
- ],
- "version": "1.9.0"
- }
- },
- "requirements_overrider_windows_311__packaging": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "packaging",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5",
- "urls": [
- "https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl#sha256=2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"
- ],
- "version": "24.0"
- }
- },
- "req_compile_deps_windows_311__appdirs": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "appdirs",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128",
- "urls": [
- "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl#sha256=a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128"
- ],
- "version": "1.4.4"
- }
- },
- "req_compile_deps_windows_311__packaging": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "packaging",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5",
- "urls": [
- "https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl#sha256=2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"
- ],
- "version": "24.0"
- }
- },
- "requirements_overrider_linux_311__iniconfig": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "iniconfig",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374",
- "urls": [
- "https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl#sha256=b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"
- ],
- "version": "2.0.0"
- }
- },
- "req_compile_deps_linux_311__types_setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "types_setuptools",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531",
- "urls": [
- "https://files.pythonhosted.org/packages/1f/22/904934a3344fa5f332ecab887003f3f033c1272432a4af877007b75b0bd3/types_setuptools-69.2.0.20240317-py3-none-any.whl#sha256=cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531"
- ],
- "version": "69.2.0.20240317"
- }
- },
- "requirements_overrider_windows_311__tomlkit": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "tomlkit",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b",
- "urls": [
- "https://files.pythonhosted.org/packages/07/fa/c96545d741f2fd47f565e4e06bfef0962add790cb9c2289d900102b55eca/tomlkit-0.12.4-py3-none-any.whl#sha256=5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"
- ],
- "version": "0.12.4"
- }
- },
- "requirements_overrider_linux_311__mccabe": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "mccabe",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e",
- "urls": [
- "https://files.pythonhosted.org/packages/27/1a/1f68f9ba0c207934b35b86a8ca3aad8395a3d6dd7921c0686e23853ff5a9/mccabe-0.7.0-py2.py3-none-any.whl#sha256=6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"
- ],
- "version": "0.7.0"
- }
- },
- "requirements_overrider_macos_311__isort": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "isort",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl#sha256=8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"
- ],
- "version": "5.13.2"
- }
- },
- "requirements_overrider_macos_311__pathspec": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "pathspec",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08",
- "urls": [
- "https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl#sha256=a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"
- ],
- "version": "0.12.1"
- }
- },
- "requirements_overrider_windows_311__types_requests": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "urllib3"
- ],
- "package": "types_requests",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "06abf6a68f5c4f2a62f6bb006672dfb26ed50ccbfddb281e1ee6f09a65707d5d",
- "urls": [
- "https://files.pythonhosted.org/packages/6d/05/f9ccc1e7c1760367686834637ca41f2c13cb865c5c3e0505d18c9110cd9b/types_requests-2.31.0.20240403-py3-none-any.whl#sha256=06abf6a68f5c4f2a62f6bb006672dfb26ed50ccbfddb281e1ee6f09a65707d5d"
- ],
- "version": "2.31.0.20240403"
- }
- },
- "requirements_overrider_windows_311__colorama": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "colorama",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl#sha256=4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"
- ],
- "version": "0.4.6"
- }
- },
- "req_compile_deps_windows_311__setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "setuptools",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c",
- "urls": [
- "https://files.pythonhosted.org/packages/92/e1/1c8bb3420105e70bdf357d57dd5567202b4ef8d27f810e98bb962d950834/setuptools-69.2.0-py3-none-any.whl#sha256=c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"
- ],
- "version": "69.2.0"
- }
- },
- "requirements_overrider_linux_311__idna": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "idna",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f",
- "urls": [
- "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl#sha256=c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
- ],
- "version": "3.6"
- }
- },
- "requirements_overrider_windows_311__charset_normalizer": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "charset_normalizer",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77",
- "urls": [
- "https://files.pythonhosted.org/packages/57/ec/80c8d48ac8b1741d5b963797b7c0c869335619e13d4744ca2f67fc11c6fc/charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl#sha256=663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"
- ],
- "version": "3.3.2"
- }
- },
- "requirements_overrider_linux_311__packaging": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "packaging",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5",
- "urls": [
- "https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl#sha256=2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"
- ],
- "version": "24.0"
- }
- },
- "req_compile_deps_linux_311__responses": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "pyyaml",
- "requests",
- "urllib3"
- ],
- "package": "responses",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a",
- "urls": [
- "https://files.pythonhosted.org/packages/30/0b/bff1e6a5b646e6ff770deb6a292a96bd844ea13fb523ccbd9209fc4b90b8/responses-0.25.0-py3-none-any.whl#sha256=2f0b9c2b6437db4b528619a77e5d565e4ec2a9532162ac1a131a83529db7be1a"
- ],
- "version": "0.25.0"
- }
- },
- "requirements_overrider_linux_311__pytest_mock": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [
- "pytest"
- ],
- "package": "pytest_mock",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f",
- "urls": [
- "https://files.pythonhosted.org/packages/f2/3b/b26f90f74e2986a82df6e7ac7e319b8ea7ccece1caec9f8ab6104dc70603/pytest_mock-3.14.0-py3-none-any.whl#sha256=0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"
- ],
- "version": "3.14.0"
- }
- },
- "requirements_overrider_macos_311__black": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "click",
- "mypy_extensions",
- "packaging",
- "pathspec",
- "platformdirs"
- ],
- "package": "black",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "aadf7a02d947936ee418777e0247ea114f78aff0d0959461057cae8a04f20597",
- "urls": [
- "https://files.pythonhosted.org/packages/46/5f/30398c5056cb72f883b32b6520ad00042a9d0454b693f70509867db03a80/black-24.3.0-cp311-cp311-macosx_11_0_arm64.whl#sha256=aadf7a02d947936ee418777e0247ea114f78aff0d0959461057cae8a04f20597"
- ],
- "version": "24.3.0"
- }
- },
- "requirements_overrider_windows_311__iniconfig": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "iniconfig",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374",
- "urls": [
- "https://files.pythonhosted.org/packages/ef/a6/62565a6e1cf69e10f5727360368e451d4b7f58beeac6173dc9db836a5b46/iniconfig-2.0.0-py3-none-any.whl#sha256=b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"
- ],
- "version": "2.0.0"
- }
- },
- "requirements_overrider_windows_311__black": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "click",
- "mypy_extensions",
- "packaging",
- "pathspec",
- "platformdirs"
- ],
- "package": "black",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "bf21b7b230718a5f08bd32d5e4f1db7fc8788345c8aea1d155fc17852b3410f5",
- "urls": [
- "https://files.pythonhosted.org/packages/8f/b0/4bef40c808cc615187db983b75bacdca1c110a229d41ba9887549fac529c/black-24.3.0-cp311-cp311-win_amd64.whl#sha256=bf21b7b230718a5f08bd32d5e4f1db7fc8788345c8aea1d155fc17852b3410f5"
- ],
- "version": "24.3.0"
- }
- },
- "req_compile_deps_windows_311__astroid": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "astroid",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819",
- "urls": [
- "https://files.pythonhosted.org/packages/ed/1c/ee18acf9070f77253954b7d71b4c0cf8f5969fb23067d8f1a8793573ba00/astroid-3.1.0-py3-none-any.whl#sha256=951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819"
- ],
- "version": "3.1.0"
- }
- },
- "req_compile_deps_macos_311__charset_normalizer": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "charset_normalizer",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e",
- "urls": [
- "https://files.pythonhosted.org/packages/dd/51/68b61b90b24ca35495956b718f35a9756ef7d3dd4b3c1508056fa98d1a1b/charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl#sha256=549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"
- ],
- "version": "3.3.2"
- }
- },
- "requirements_overrider_macos_311__packaging": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "packaging",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5",
- "urls": [
- "https://files.pythonhosted.org/packages/49/df/1fceb2f8900f8639e278b056416d49134fb8d84c5942ffaa01ad34782422/packaging-24.0-py3-none-any.whl#sha256=2ddfb553fdf02fb784c234c7ba6ccc288296ceabec964ad2eae3777778130bc5"
- ],
- "version": "24.0"
- }
- },
- "requirements_overrider_macos_311__pytest_mock": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [
- "pytest"
- ],
- "package": "pytest_mock",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f",
- "urls": [
- "https://files.pythonhosted.org/packages/f2/3b/b26f90f74e2986a82df6e7ac7e319b8ea7ccece1caec9f8ab6104dc70603/pytest_mock-3.14.0-py3-none-any.whl#sha256=0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"
- ],
- "version": "3.14.0"
- }
- },
- "req_compile_deps_linux_311__click": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "click",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28",
- "urls": [
- "https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl#sha256=ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"
- ],
- "version": "8.1.7"
- }
- },
- "req_compile_deps_macos_311__tomlkit": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "tomlkit",
- "spoke_prefix": "req_compile_deps_macos_311",
- "sha256": "5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b",
- "urls": [
- "https://files.pythonhosted.org/packages/07/fa/c96545d741f2fd47f565e4e06bfef0962add790cb9c2289d900102b55eca/tomlkit-0.12.4-py3-none-any.whl#sha256=5cd82d48a3dd89dee1f9d64420aa20ae65cfbd00668d6f094d7578a78efbb77b"
- ],
- "version": "0.12.4"
- }
- },
- "req_compile_deps_windows_311__pyyaml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "pyyaml",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34",
- "urls": [
- "https://files.pythonhosted.org/packages/b3/34/65bb4b2d7908044963ebf614fe0fdb080773fc7030d7e39c8d3eddcd4257/PyYAML-6.0.1-cp311-cp311-win_amd64.whl#sha256=bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"
- ],
- "version": "6.0.1"
- }
- },
- "req_compile_deps_linux_311__toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "toml",
- "spoke_prefix": "req_compile_deps_linux_311",
- "sha256": "806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b",
- "urls": [
- "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl#sha256=806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"
- ],
- "version": "0.10.2"
- }
- },
- "requirements_overrider_macos_311__certifi": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:macos'",
- "deps": [],
- "package": "certifi",
- "spoke_prefix": "requirements_overrider_macos_311",
- "sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1",
- "urls": [
- "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl#sha256=dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
- ],
- "version": "2024.2.2"
- }
- },
- "requirements_overrider_windows_311__isort": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "isort",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6",
- "urls": [
- "https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl#sha256=8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"
- ],
- "version": "5.13.2"
- }
- },
- "req_compile_deps_windows_311__pytest": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [
- "colorama",
- "iniconfig",
- "packaging",
- "pluggy"
- ],
- "package": "pytest",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7",
- "urls": [
- "https://files.pythonhosted.org/packages/4d/7e/c79cecfdb6aa85c6c2e3cf63afc56d0f165f24f5c66c03c695c4d9b84756/pytest-8.1.1-py3-none-any.whl#sha256=2a8386cfc11fa9d2c50ee7b2a57e7d898ef90470a7a34c4b949ff59662bb78b7"
- ],
- "version": "8.1.1"
- }
- },
- "requirements_overrider_linux_311__astroid": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:linux'",
- "deps": [],
- "package": "astroid",
- "spoke_prefix": "requirements_overrider_linux_311",
- "sha256": "951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819",
- "urls": [
- "https://files.pythonhosted.org/packages/ed/1c/ee18acf9070f77253954b7d71b4c0cf8f5969fb23067d8f1a8793573ba00/astroid-3.1.0-py3-none-any.whl#sha256=951798f922990137ac090c53af473db7ab4e70c770e6d7fae0cec59f74411819"
- ],
- "version": "3.1.0"
- }
- },
- "requirements_overrider_windows_311__types_toml": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "types_toml",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d",
- "urls": [
- "https://files.pythonhosted.org/packages/da/a2/d32ab58c0b216912638b140ab2170ee4b8644067c293b170e19fba340ccc/types_toml-0.10.8.20240310-py3-none-any.whl#sha256=627b47775d25fa29977d9c70dc0cbab3f314f32c8d8d0c012f2ef5de7aaec05d"
- ],
- "version": "0.10.8.20240310"
- }
- },
- "req_compile_deps_windows_311__types_setuptools": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "types_setuptools",
- "spoke_prefix": "req_compile_deps_windows_311",
- "sha256": "cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531",
- "urls": [
- "https://files.pythonhosted.org/packages/1f/22/904934a3344fa5f332ecab887003f3f033c1272432a4af877007b75b0bd3/types_setuptools-69.2.0.20240317-py3-none-any.whl#sha256=cf91ff7c87ab7bf0625c3f0d4d90427c9da68561f3b0feab77977aaf0bbf7531"
- ],
- "version": "69.2.0.20240317"
- }
- },
- "requirements_overrider_windows_311__idna": {
- "bzlFile": "@@rules_req_compile~//private:whl_repo.bzl",
- "ruleClassName": "whl_repository",
- "attributes": {
- "annotations": "{}",
- "constraint": "'@@platforms//os:windows'",
- "deps": [],
- "package": "idna",
- "spoke_prefix": "requirements_overrider_windows_311",
- "sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f",
- "urls": [
- "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl#sha256=c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
- ],
- "version": "3.6"
- }
- }
- },
- "recordedRepoMappingEntries": [
- [
- "rules_cc~",
- "bazel_tools",
- "bazel_tools"
- ],
- [
- "rules_req_compile~",
- "bazel_tools",
- "bazel_tools"
- ],
- [
- "rules_req_compile~",
- "platforms",
- "platforms"
- ],
- [
- "rules_req_compile~",
- "req_compile_sdist_compiler",
- "req_compile_sdist_compiler"
- ],
- [
- "rules_req_compile~",
- "rules_cc",
- "rules_cc~"
- ]
- ]
- }
- }
- }
-}
diff --git a/private/tests/override_module_repos/overrider/MODULE.bazel.lock b/private/tests/override_module_repos/overrider/MODULE.bazel.lock
deleted file mode 100644
index e8d66f59..00000000
--- a/private/tests/override_module_repos/overrider/MODULE.bazel.lock
+++ /dev/null
@@ -1,246 +0,0 @@
-{
- "lockFileVersion": 16,
- "registryFileHashes": {
- "https://bcr.bazel.build/bazel_registry.json": "8a28e4aff06ee60aed2a8c281907fb8bcbf3b753c91fb5a5c57da3215d5b3497",
- "https://bcr.bazel.build/modules/abseil-cpp/20210324.2/MODULE.bazel": "7cd0312e064fde87c8d1cd79ba06c876bd23630c83466e9500321be55c96ace2",
- "https://bcr.bazel.build/modules/abseil-cpp/20211102.0/MODULE.bazel": "70390338f7a5106231d20620712f7cccb659cd0e9d073d1991c038eb9fc57589",
- "https://bcr.bazel.build/modules/abseil-cpp/20230125.1/MODULE.bazel": "89047429cb0207707b2dface14ba7f8df85273d484c2572755be4bab7ce9c3a0",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.0.bcr.1/MODULE.bazel": "1c8cec495288dccd14fdae6e3f95f772c1c91857047a098fad772034264cc8cb",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.0/MODULE.bazel": "d253ae36a8bd9ee3c5955384096ccb6baf16a1b1e93e858370da0a3b94f77c16",
- "https://bcr.bazel.build/modules/abseil-cpp/20230802.1/MODULE.bazel": "fa92e2eb41a04df73cdabeec37107316f7e5272650f81d6cc096418fe647b915",
- "https://bcr.bazel.build/modules/abseil-cpp/20240116.1/MODULE.bazel": "37bcdb4440fbb61df6a1c296ae01b327f19e9bb521f9b8e26ec854b6f97309ed",
- "https://bcr.bazel.build/modules/abseil-cpp/20240116.1/source.json": "9be551b8d4e3ef76875c0d744b5d6a504a27e3ae67bc6b28f46415fd2d2957da",
- "https://bcr.bazel.build/modules/bazel_features/1.1.1/MODULE.bazel": "27b8c79ef57efe08efccbd9dd6ef70d61b4798320b8d3c134fd571f78963dbcd",
- "https://bcr.bazel.build/modules/bazel_features/1.11.0/MODULE.bazel": "f9382337dd5a474c3b7d334c2f83e50b6eaedc284253334cf823044a26de03e8",
- "https://bcr.bazel.build/modules/bazel_features/1.15.0/MODULE.bazel": "d38ff6e517149dc509406aca0db3ad1efdd890a85e049585b7234d04238e2a4d",
- "https://bcr.bazel.build/modules/bazel_features/1.17.0/MODULE.bazel": "039de32d21b816b47bd42c778e0454217e9c9caac4a3cf8e15c7231ee3ddee4d",
- "https://bcr.bazel.build/modules/bazel_features/1.18.0/MODULE.bazel": "1be0ae2557ab3a72a57aeb31b29be347bcdc5d2b1eb1e70f39e3851a7e97041a",
- "https://bcr.bazel.build/modules/bazel_features/1.19.0/MODULE.bazel": "59adcdf28230d220f0067b1f435b8537dd033bfff8db21335ef9217919c7fb58",
- "https://bcr.bazel.build/modules/bazel_features/1.21.0/MODULE.bazel": "675642261665d8eea09989aa3b8afb5c37627f1be178382c320d1b46afba5e3b",
- "https://bcr.bazel.build/modules/bazel_features/1.21.0/source.json": "3e8379efaaef53ce35b7b8ba419df829315a880cb0a030e5bb45c96d6d5ecb5f",
- "https://bcr.bazel.build/modules/bazel_features/1.4.1/MODULE.bazel": "e45b6bb2350aff3e442ae1111c555e27eac1d915e77775f6fdc4b351b758b5d7",
- "https://bcr.bazel.build/modules/bazel_features/1.9.1/MODULE.bazel": "8f679097876a9b609ad1f60249c49d68bfab783dd9be012faf9d82547b14815a",
- "https://bcr.bazel.build/modules/bazel_skylib/1.0.3/MODULE.bazel": "bcb0fd896384802d1ad283b4e4eb4d718eebd8cb820b0a2c3a347fb971afd9d8",
- "https://bcr.bazel.build/modules/bazel_skylib/1.1.1/MODULE.bazel": "1add3e7d93ff2e6998f9e118022c84d163917d912f5afafb3058e3d2f1545b5e",
- "https://bcr.bazel.build/modules/bazel_skylib/1.2.0/MODULE.bazel": "44fe84260e454ed94ad326352a698422dbe372b21a1ac9f3eab76eb531223686",
- "https://bcr.bazel.build/modules/bazel_skylib/1.2.1/MODULE.bazel": "f35baf9da0efe45fa3da1696ae906eea3d615ad41e2e3def4aeb4e8bc0ef9a7a",
- "https://bcr.bazel.build/modules/bazel_skylib/1.3.0/MODULE.bazel": "20228b92868bf5cfc41bda7afc8a8ba2a543201851de39d990ec957b513579c5",
- "https://bcr.bazel.build/modules/bazel_skylib/1.4.1/MODULE.bazel": "a0dcb779424be33100dcae821e9e27e4f2901d9dfd5333efe5ac6a8d7ab75e1d",
- "https://bcr.bazel.build/modules/bazel_skylib/1.4.2/MODULE.bazel": "3bd40978e7a1fac911d5989e6b09d8f64921865a45822d8b09e815eaa726a651",
- "https://bcr.bazel.build/modules/bazel_skylib/1.5.0/MODULE.bazel": "32880f5e2945ce6a03d1fbd588e9198c0a959bb42297b2cfaf1685b7bc32e138",
- "https://bcr.bazel.build/modules/bazel_skylib/1.6.1/MODULE.bazel": "8fdee2dbaace6c252131c00e1de4b165dc65af02ea278476187765e1a617b917",
- "https://bcr.bazel.build/modules/bazel_skylib/1.7.0/MODULE.bazel": "0db596f4563de7938de764cc8deeabec291f55e8ec15299718b93c4423e9796d",
- "https://bcr.bazel.build/modules/bazel_skylib/1.7.1/MODULE.bazel": "3120d80c5861aa616222ec015332e5f8d3171e062e3e804a2a0253e1be26e59b",
- "https://bcr.bazel.build/modules/bazel_skylib/1.7.1/source.json": "f121b43eeefc7c29efbd51b83d08631e2347297c95aac9764a701f2a6a2bb953",
- "https://bcr.bazel.build/modules/buildozer/7.1.2/MODULE.bazel": "2e8dd40ede9c454042645fd8d8d0cd1527966aa5c919de86661e62953cd73d84",
- "https://bcr.bazel.build/modules/buildozer/7.1.2/source.json": "c9028a501d2db85793a6996205c8de120944f50a0d570438fcae0457a5f9d1f8",
- "https://bcr.bazel.build/modules/google_benchmark/1.8.2/MODULE.bazel": "a70cf1bba851000ba93b58ae2f6d76490a9feb74192e57ab8e8ff13c34ec50cb",
- "https://bcr.bazel.build/modules/googletest/1.11.0/MODULE.bazel": "3a83f095183f66345ca86aa13c58b59f9f94a2f81999c093d4eeaa2d262d12f4",
- "https://bcr.bazel.build/modules/googletest/1.14.0.bcr.1/MODULE.bazel": "22c31a561553727960057361aa33bf20fb2e98584bc4fec007906e27053f80c6",
- "https://bcr.bazel.build/modules/googletest/1.14.0.bcr.1/source.json": "41e9e129f80d8c8bf103a7acc337b76e54fad1214ac0a7084bf24f4cd924b8b4",
- "https://bcr.bazel.build/modules/googletest/1.14.0/MODULE.bazel": "cfbcbf3e6eac06ef9d85900f64424708cc08687d1b527f0ef65aa7517af8118f",
- "https://bcr.bazel.build/modules/jsoncpp/1.9.5/MODULE.bazel": "31271aedc59e815656f5736f282bb7509a97c7ecb43e927ac1a37966e0578075",
- "https://bcr.bazel.build/modules/jsoncpp/1.9.5/source.json": "4108ee5085dd2885a341c7fab149429db457b3169b86eb081fa245eadf69169d",
- "https://bcr.bazel.build/modules/libpfm/4.11.0/MODULE.bazel": "45061ff025b301940f1e30d2c16bea596c25b176c8b6b3087e92615adbd52902",
- "https://bcr.bazel.build/modules/platforms/0.0.10/MODULE.bazel": "8cb8efaf200bdeb2150d93e162c40f388529a25852b332cec879373771e48ed5",
- "https://bcr.bazel.build/modules/platforms/0.0.10/source.json": "f22828ff4cf021a6b577f1bf6341cb9dcd7965092a439f64fc1bb3b7a5ae4bd5",
- "https://bcr.bazel.build/modules/platforms/0.0.4/MODULE.bazel": "9b328e31ee156f53f3c416a64f8491f7eb731742655a47c9eec4703a71644aee",
- "https://bcr.bazel.build/modules/platforms/0.0.5/MODULE.bazel": "5733b54ea419d5eaf7997054bb55f6a1d0b5ff8aedf0176fef9eea44f3acda37",
- "https://bcr.bazel.build/modules/platforms/0.0.6/MODULE.bazel": "ad6eeef431dc52aefd2d77ed20a4b353f8ebf0f4ecdd26a807d2da5aa8cd0615",
- "https://bcr.bazel.build/modules/platforms/0.0.7/MODULE.bazel": "72fd4a0ede9ee5c021f6a8dd92b503e089f46c227ba2813ff183b71616034814",
- "https://bcr.bazel.build/modules/platforms/0.0.8/MODULE.bazel": "9f142c03e348f6d263719f5074b21ef3adf0b139ee4c5133e2aa35664da9eb2d",
- "https://bcr.bazel.build/modules/protobuf/21.7/MODULE.bazel": "a5a29bb89544f9b97edce05642fac225a808b5b7be74038ea3640fae2f8e66a7",
- "https://bcr.bazel.build/modules/protobuf/23.1/MODULE.bazel": "88b393b3eb4101d18129e5db51847cd40a5517a53e81216144a8c32dfeeca52a",
- "https://bcr.bazel.build/modules/protobuf/24.4/MODULE.bazel": "7bc7ce5f2abf36b3b7b7c8218d3acdebb9426aeb35c2257c96445756f970eb12",
- "https://bcr.bazel.build/modules/protobuf/27.0/MODULE.bazel": "7873b60be88844a0a1d8f80b9d5d20cfbd8495a689b8763e76c6372998d3f64c",
- "https://bcr.bazel.build/modules/protobuf/27.1/MODULE.bazel": "703a7b614728bb06647f965264967a8ef1c39e09e8f167b3ca0bb1fd80449c0d",
- "https://bcr.bazel.build/modules/protobuf/29.0-rc2/MODULE.bazel": "6241d35983510143049943fc0d57937937122baf1b287862f9dc8590fc4c37df",
- "https://bcr.bazel.build/modules/protobuf/29.0/MODULE.bazel": "319dc8bf4c679ff87e71b1ccfb5a6e90a6dbc4693501d471f48662ac46d04e4e",
- "https://bcr.bazel.build/modules/protobuf/29.0/source.json": "b857f93c796750eef95f0d61ee378f3420d00ee1dd38627b27193aa482f4f981",
- "https://bcr.bazel.build/modules/protobuf/3.19.0/MODULE.bazel": "6b5fbb433f760a99a22b18b6850ed5784ef0e9928a72668b66e4d7ccd47db9b0",
- "https://bcr.bazel.build/modules/pybind11_bazel/2.11.1/MODULE.bazel": "88af1c246226d87e65be78ed49ecd1e6f5e98648558c14ce99176da041dc378e",
- "https://bcr.bazel.build/modules/pybind11_bazel/2.11.1/source.json": "be4789e951dd5301282729fe3d4938995dc4c1a81c2ff150afc9f1b0504c6022",
- "https://bcr.bazel.build/modules/re2/2023-09-01/MODULE.bazel": "cb3d511531b16cfc78a225a9e2136007a48cf8a677e4264baeab57fe78a80206",
- "https://bcr.bazel.build/modules/re2/2023-09-01/source.json": "e044ce89c2883cd957a2969a43e79f7752f9656f6b20050b62f90ede21ec6eb4",
- "https://bcr.bazel.build/modules/rules_android/0.1.1/MODULE.bazel": "48809ab0091b07ad0182defb787c4c5328bd3a278938415c00a7b69b50c4d3a8",
- "https://bcr.bazel.build/modules/rules_android/0.1.1/source.json": "e6986b41626ee10bdc864937ffb6d6bf275bb5b9c65120e6137d56e6331f089e",
- "https://bcr.bazel.build/modules/rules_cc/0.0.1/MODULE.bazel": "cb2aa0747f84c6c3a78dad4e2049c154f08ab9d166b1273835a8174940365647",
- "https://bcr.bazel.build/modules/rules_cc/0.0.10/MODULE.bazel": "ec1705118f7eaedd6e118508d3d26deba2a4e76476ada7e0e3965211be012002",
- "https://bcr.bazel.build/modules/rules_cc/0.0.13/MODULE.bazel": "0e8529ed7b323dad0775ff924d2ae5af7640b23553dfcd4d34344c7e7a867191",
- "https://bcr.bazel.build/modules/rules_cc/0.0.14/MODULE.bazel": "5e343a3aac88b8d7af3b1b6d2093b55c347b8eefc2e7d1442f7a02dc8fea48ac",
- "https://bcr.bazel.build/modules/rules_cc/0.0.15/MODULE.bazel": "6704c35f7b4a72502ee81f61bf88706b54f06b3cbe5558ac17e2e14666cd5dcc",
- "https://bcr.bazel.build/modules/rules_cc/0.0.16/MODULE.bazel": "7661303b8fc1b4d7f532e54e9d6565771fea666fbdf839e0a86affcd02defe87",
- "https://bcr.bazel.build/modules/rules_cc/0.0.16/source.json": "227e83737046aa4f50015da48e98e0d8ab42fd0ec74d8d653b6cc9f9a357f200",
- "https://bcr.bazel.build/modules/rules_cc/0.0.2/MODULE.bazel": "6915987c90970493ab97393024c156ea8fb9f3bea953b2f3ec05c34f19b5695c",
- "https://bcr.bazel.build/modules/rules_cc/0.0.6/MODULE.bazel": "abf360251023dfe3efcef65ab9d56beefa8394d4176dd29529750e1c57eaa33f",
- "https://bcr.bazel.build/modules/rules_cc/0.0.8/MODULE.bazel": "964c85c82cfeb6f3855e6a07054fdb159aced38e99a5eecf7bce9d53990afa3e",
- "https://bcr.bazel.build/modules/rules_cc/0.0.9/MODULE.bazel": "836e76439f354b89afe6a911a7adf59a6b2518fafb174483ad78a2a2fde7b1c5",
- "https://bcr.bazel.build/modules/rules_foreign_cc/0.9.0/MODULE.bazel": "c9e8c682bf75b0e7c704166d79b599f93b72cfca5ad7477df596947891feeef6",
- "https://bcr.bazel.build/modules/rules_fuzzing/0.5.2/MODULE.bazel": "40c97d1144356f52905566c55811f13b299453a14ac7769dfba2ac38192337a8",
- "https://bcr.bazel.build/modules/rules_fuzzing/0.5.2/source.json": "c8b1e2c717646f1702290959a3302a178fb639d987ab61d548105019f11e527e",
- "https://bcr.bazel.build/modules/rules_java/4.0.0/MODULE.bazel": "5a78a7ae82cd1a33cef56dc578c7d2a46ed0dca12643ee45edbb8417899e6f74",
- "https://bcr.bazel.build/modules/rules_java/5.3.5/MODULE.bazel": "a4ec4f2db570171e3e5eb753276ee4b389bae16b96207e9d3230895c99644b86",
- "https://bcr.bazel.build/modules/rules_java/6.0.0/MODULE.bazel": "8a43b7df601a7ec1af61d79345c17b31ea1fedc6711fd4abfd013ea612978e39",
- "https://bcr.bazel.build/modules/rules_java/6.4.0/MODULE.bazel": "e986a9fe25aeaa84ac17ca093ef13a4637f6107375f64667a15999f77db6c8f6",
- "https://bcr.bazel.build/modules/rules_java/6.5.2/MODULE.bazel": "1d440d262d0e08453fa0c4d8f699ba81609ed0e9a9a0f02cd10b3e7942e61e31",
- "https://bcr.bazel.build/modules/rules_java/7.1.0/MODULE.bazel": "30d9135a2b6561c761bd67bd4990da591e6bdc128790ce3e7afd6a3558b2fb64",
- "https://bcr.bazel.build/modules/rules_java/7.10.0/MODULE.bazel": "530c3beb3067e870561739f1144329a21c851ff771cd752a49e06e3dc9c2e71a",
- "https://bcr.bazel.build/modules/rules_java/7.12.2/MODULE.bazel": "579c505165ee757a4280ef83cda0150eea193eed3bef50b1004ba88b99da6de6",
- "https://bcr.bazel.build/modules/rules_java/7.2.0/MODULE.bazel": "06c0334c9be61e6cef2c8c84a7800cef502063269a5af25ceb100b192453d4ab",
- "https://bcr.bazel.build/modules/rules_java/7.3.2/MODULE.bazel": "50dece891cfdf1741ea230d001aa9c14398062f2b7c066470accace78e412bc2",
- "https://bcr.bazel.build/modules/rules_java/7.6.1/MODULE.bazel": "2f14b7e8a1aa2f67ae92bc69d1ec0fa8d9f827c4e17ff5e5f02e91caa3b2d0fe",
- "https://bcr.bazel.build/modules/rules_java/8.6.1/MODULE.bazel": "f4808e2ab5b0197f094cabce9f4b006a27766beb6a9975931da07099560ca9c2",
- "https://bcr.bazel.build/modules/rules_java/8.6.1/source.json": "f18d9ad3c4c54945bf422ad584fa6c5ca5b3116ff55a5b1bc77e5c1210be5960",
- "https://bcr.bazel.build/modules/rules_jvm_external/4.4.2/MODULE.bazel": "a56b85e418c83eb1839819f0b515c431010160383306d13ec21959ac412d2fe7",
- "https://bcr.bazel.build/modules/rules_jvm_external/5.1/MODULE.bazel": "33f6f999e03183f7d088c9be518a63467dfd0be94a11d0055fe2d210f89aa909",
- "https://bcr.bazel.build/modules/rules_jvm_external/5.2/MODULE.bazel": "d9351ba35217ad0de03816ef3ed63f89d411349353077348a45348b096615036",
- "https://bcr.bazel.build/modules/rules_jvm_external/5.3/MODULE.bazel": "bf93870767689637164657731849fb887ad086739bd5d360d90007a581d5527d",
- "https://bcr.bazel.build/modules/rules_jvm_external/6.1/MODULE.bazel": "75b5fec090dbd46cf9b7d8ea08cf84a0472d92ba3585b476f44c326eda8059c4",
- "https://bcr.bazel.build/modules/rules_jvm_external/6.3/MODULE.bazel": "c998e060b85f71e00de5ec552019347c8bca255062c990ac02d051bb80a38df0",
- "https://bcr.bazel.build/modules/rules_jvm_external/6.3/source.json": "6f5f5a5a4419ae4e37c35a5bb0a6ae657ed40b7abc5a5189111b47fcebe43197",
- "https://bcr.bazel.build/modules/rules_kotlin/1.9.0/MODULE.bazel": "ef85697305025e5a61f395d4eaede272a5393cee479ace6686dba707de804d59",
- "https://bcr.bazel.build/modules/rules_kotlin/1.9.6/MODULE.bazel": "d269a01a18ee74d0335450b10f62c9ed81f2321d7958a2934e44272fe82dcef3",
- "https://bcr.bazel.build/modules/rules_kotlin/1.9.6/source.json": "2faa4794364282db7c06600b7e5e34867a564ae91bda7cae7c29c64e9466b7d5",
- "https://bcr.bazel.build/modules/rules_license/0.0.3/MODULE.bazel": "627e9ab0247f7d1e05736b59dbb1b6871373de5ad31c3011880b4133cafd4bd0",
- "https://bcr.bazel.build/modules/rules_license/0.0.7/MODULE.bazel": "088fbeb0b6a419005b89cf93fe62d9517c0a2b8bb56af3244af65ecfe37e7d5d",
- "https://bcr.bazel.build/modules/rules_license/1.0.0/MODULE.bazel": "a7fda60eefdf3d8c827262ba499957e4df06f659330bbe6cdbdb975b768bb65c",
- "https://bcr.bazel.build/modules/rules_license/1.0.0/source.json": "a52c89e54cc311196e478f8382df91c15f7a2bfdf4c6cd0e2675cc2ff0b56efb",
- "https://bcr.bazel.build/modules/rules_pkg/0.7.0/MODULE.bazel": "df99f03fc7934a4737122518bb87e667e62d780b610910f0447665a7e2be62dc",
- "https://bcr.bazel.build/modules/rules_pkg/1.0.1/MODULE.bazel": "5b1df97dbc29623bccdf2b0dcd0f5cb08e2f2c9050aab1092fd39a41e82686ff",
- "https://bcr.bazel.build/modules/rules_pkg/1.0.1/source.json": "bd82e5d7b9ce2d31e380dd9f50c111d678c3bdaca190cb76b0e1c71b05e1ba8a",
- "https://bcr.bazel.build/modules/rules_proto/4.0.0/MODULE.bazel": "a7a7b6ce9bee418c1a760b3d84f83a299ad6952f9903c67f19e4edd964894e06",
- "https://bcr.bazel.build/modules/rules_proto/5.3.0-21.7/MODULE.bazel": "e8dff86b0971688790ae75528fe1813f71809b5afd57facb44dad9e8eca631b7",
- "https://bcr.bazel.build/modules/rules_proto/6.0.0-rc1/MODULE.bazel": "1e5b502e2e1a9e825eef74476a5a1ee524a92297085015a052510b09a1a09483",
- "https://bcr.bazel.build/modules/rules_proto/6.0.2/MODULE.bazel": "ce916b775a62b90b61888052a416ccdda405212b6aaeb39522f7dc53431a5e73",
- "https://bcr.bazel.build/modules/rules_proto/7.0.2/MODULE.bazel": "bf81793bd6d2ad89a37a40693e56c61b0ee30f7a7fdbaf3eabbf5f39de47dea2",
- "https://bcr.bazel.build/modules/rules_proto/7.0.2/source.json": "1e5e7260ae32ef4f2b52fd1d0de8d03b606a44c91b694d2f1afb1d3b28a48ce1",
- "https://bcr.bazel.build/modules/rules_python/0.10.2/MODULE.bazel": "cc82bc96f2997baa545ab3ce73f196d040ffb8756fd2d66125a530031cd90e5f",
- "https://bcr.bazel.build/modules/rules_python/0.23.1/MODULE.bazel": "49ffccf0511cb8414de28321f5fcf2a31312b47c40cc21577144b7447f2bf300",
- "https://bcr.bazel.build/modules/rules_python/0.25.0/MODULE.bazel": "72f1506841c920a1afec76975b35312410eea3aa7b63267436bfb1dd91d2d382",
- "https://bcr.bazel.build/modules/rules_python/0.28.0/MODULE.bazel": "cba2573d870babc976664a912539b320cbaa7114cd3e8f053c720171cde331ed",
- "https://bcr.bazel.build/modules/rules_python/0.31.0/MODULE.bazel": "93a43dc47ee570e6ec9f5779b2e64c1476a6ce921c48cc9a1678a91dd5f8fd58",
- "https://bcr.bazel.build/modules/rules_python/0.34.0/MODULE.bazel": "1d623d026e075b78c9fde483a889cda7996f5da4f36dffb24c246ab30f06513a",
- "https://bcr.bazel.build/modules/rules_python/0.4.0/MODULE.bazel": "9208ee05fd48bf09ac60ed269791cf17fb343db56c8226a720fbb1cdf467166c",
- "https://bcr.bazel.build/modules/rules_python/0.40.0/MODULE.bazel": "9d1a3cd88ed7d8e39583d9ffe56ae8a244f67783ae89b60caafc9f5cf318ada7",
- "https://bcr.bazel.build/modules/rules_python/0.40.0/source.json": "939d4bd2e3110f27bfb360292986bb79fd8dcefb874358ccd6cdaa7bda029320",
- "https://bcr.bazel.build/modules/rules_shell/0.2.0/MODULE.bazel": "fda8a652ab3c7d8fee214de05e7a9916d8b28082234e8d2c0094505c5268ed3c",
- "https://bcr.bazel.build/modules/rules_shell/0.2.0/source.json": "7f27af3c28037d9701487c4744b5448d26537cc66cdef0d8df7ae85411f8de95",
- "https://bcr.bazel.build/modules/stardoc/0.5.1/MODULE.bazel": "1a05d92974d0c122f5ccf09291442580317cdd859f07a8655f1db9a60374f9f8",
- "https://bcr.bazel.build/modules/stardoc/0.5.3/MODULE.bazel": "c7f6948dae6999bf0db32c1858ae345f112cacf98f174c7a8bb707e41b974f1c",
- "https://bcr.bazel.build/modules/stardoc/0.5.6/MODULE.bazel": "c43dabc564990eeab55e25ed61c07a1aadafe9ece96a4efabb3f8bf9063b71ef",
- "https://bcr.bazel.build/modules/stardoc/0.7.0/MODULE.bazel": "05e3d6d30c099b6770e97da986c53bd31844d7f13d41412480ea265ac9e8079c",
- "https://bcr.bazel.build/modules/stardoc/0.7.1/MODULE.bazel": "3548faea4ee5dda5580f9af150e79d0f6aea934fc60c1cc50f4efdd9420759e7",
- "https://bcr.bazel.build/modules/stardoc/0.7.1/source.json": "b6500ffcd7b48cd72c29bb67bcac781e12701cc0d6d55d266a652583cfcdab01",
- "https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43",
- "https://bcr.bazel.build/modules/upb/0.0.0-20230516-61a97ef/MODULE.bazel": "c0df5e35ad55e264160417fd0875932ee3c9dda63d9fccace35ac62f45e1b6f9",
- "https://bcr.bazel.build/modules/zlib/1.2.11/MODULE.bazel": "07b389abc85fdbca459b69e2ec656ae5622873af3f845e1c9d80fe179f3effa0",
- "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/MODULE.bazel": "af322bc08976524477c79d1e45e241b6efbeb918c497e8840b8ab116802dda79",
- "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/source.json": "2be409ac3c7601245958cd4fcdff4288be79ed23bd690b4b951f500d54ee6e7d",
- "https://bcr.bazel.build/modules/zlib/1.3.1/MODULE.bazel": "751c9940dcfe869f5f7274e1295422a34623555916eb98c174c1e945594bf198"
- },
- "selectedYankedVersions": {},
- "moduleExtensions": {
- "@@platforms//host:extension.bzl%host_platform": {
- "general": {
- "bzlTransitiveDigest": "xelQcPZH8+tmuOHVjL9vDxMnnQNMlwj0SlvgoqBkm4U=",
- "usagesDigest": "SeQiIN/f8/Qt9vYQk7qcXp4I4wJeEC0RnQDiaaJ4tb8=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "host_platform": {
- "repoRuleId": "@@platforms//host:extension.bzl%host_platform_repo",
- "attributes": {}
- }
- },
- "recordedRepoMappingEntries": []
- }
- },
- "@@rules_java+//java:rules_java_deps.bzl%compatibility_proxy": {
- "general": {
- "bzlTransitiveDigest": "84xJEZ1jnXXwo8BXMprvBm++rRt4jsTu9liBxz0ivps=",
- "usagesDigest": "jTQDdLDxsS43zuRmg1faAjIEPWdLAbDAowI1pInQSoo=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "compatibility_proxy": {
- "repoRuleId": "@@rules_java+//java:rules_java_deps.bzl%_compatibility_proxy_repo_rule",
- "attributes": {}
- }
- },
- "recordedRepoMappingEntries": [
- [
- "rules_java+",
- "bazel_tools",
- "bazel_tools"
- ]
- ]
- }
- },
- "@@rules_kotlin+//src/main/starlark/core/repositories:bzlmod_setup.bzl%rules_kotlin_extensions": {
- "general": {
- "bzlTransitiveDigest": "sFhcgPbDQehmbD1EOXzX4H1q/CD5df8zwG4kp4jbvr8=",
- "usagesDigest": "QI2z8ZUR+mqtbwsf2fLqYdJAkPOHdOV+tF2yVAUgRzw=",
- "recordedFileInputs": {},
- "recordedDirentsInputs": {},
- "envVariables": {},
- "generatedRepoSpecs": {
- "com_github_jetbrains_kotlin_git": {
- "repoRuleId": "@@rules_kotlin+//src/main/starlark/core/repositories:compiler.bzl%kotlin_compiler_git_repository",
- "attributes": {
- "urls": [
- "https://github.com/JetBrains/kotlin/releases/download/v1.9.23/kotlin-compiler-1.9.23.zip"
- ],
- "sha256": "93137d3aab9afa9b27cb06a824c2324195c6b6f6179d8a8653f440f5bd58be88"
- }
- },
- "com_github_jetbrains_kotlin": {
- "repoRuleId": "@@rules_kotlin+//src/main/starlark/core/repositories:compiler.bzl%kotlin_capabilities_repository",
- "attributes": {
- "git_repository_name": "com_github_jetbrains_kotlin_git",
- "compiler_version": "1.9.23"
- }
- },
- "com_github_google_ksp": {
- "repoRuleId": "@@rules_kotlin+//src/main/starlark/core/repositories:ksp.bzl%ksp_compiler_plugin_repository",
- "attributes": {
- "urls": [
- "https://github.com/google/ksp/releases/download/1.9.23-1.0.20/artifacts.zip"
- ],
- "sha256": "ee0618755913ef7fd6511288a232e8fad24838b9af6ea73972a76e81053c8c2d",
- "strip_version": "1.9.23-1.0.20"
- }
- },
- "com_github_pinterest_ktlint": {
- "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_file",
- "attributes": {
- "sha256": "01b2e0ef893383a50dbeb13970fe7fa3be36ca3e83259e01649945b09d736985",
- "urls": [
- "https://github.com/pinterest/ktlint/releases/download/1.3.0/ktlint"
- ],
- "executable": true
- }
- },
- "rules_android": {
- "repoRuleId": "@@bazel_tools//tools/build_defs/repo:http.bzl%http_archive",
- "attributes": {
- "sha256": "cd06d15dd8bb59926e4d65f9003bfc20f9da4b2519985c27e190cddc8b7a7806",
- "strip_prefix": "rules_android-0.1.1",
- "urls": [
- "https://github.com/bazelbuild/rules_android/archive/v0.1.1.zip"
- ]
- }
- }
- },
- "recordedRepoMappingEntries": [
- [
- "rules_kotlin+",
- "bazel_tools",
- "bazel_tools"
- ]
- ]
- }
- }
- }
-}
diff --git a/private/tests/pip_parse_compat/pip_parse_compat_test_deps.bzl b/private/tests/pip_parse_compat/pip_parse_compat_test_deps.bzl
deleted file mode 100644
index 8b7e5e81..00000000
--- a/private/tests/pip_parse_compat/pip_parse_compat_test_deps.bzl
+++ /dev/null
@@ -1,21 +0,0 @@
-"""Test dependencies for `pip_parse` compatibility tests"""
-
-load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe")
-load("//:defs.bzl", "py_requirements_repository")
-
-def pip_parse_compat_test_deps():
- maybe(
- py_requirements_repository,
- name = "req_compile_test_pip_parse_compat_single_plat",
- requirements_lock = Label("//private/tests/pip_parse_compat:requirements.txt"),
- )
-
- maybe(
- py_requirements_repository,
- name = "req_compile_test_pip_parse_compat_multi_plat",
- requirements_locks = {
- Label("//private/tests/pip_parse_compat:requirements.linux.txt"): "@platforms//os:linux",
- Label("//private/tests/pip_parse_compat:requirements.macos.txt"): "@platforms//os:macos",
- Label("//private/tests/pip_parse_compat:requirements.windows.txt"): "@platforms//os:windows",
- },
- )
diff --git a/private/tests/pip_parse_compat/pip_parse_compat_test_deps_install.bzl b/private/tests/pip_parse_compat/pip_parse_compat_test_deps_install.bzl
deleted file mode 100644
index 36b00820..00000000
--- a/private/tests/pip_parse_compat/pip_parse_compat_test_deps_install.bzl
+++ /dev/null
@@ -1,14 +0,0 @@
-"""Test dependencies for `pip_parse` compatibility tests"""
-
-load(
- "@req_compile_test_pip_parse_compat_multi_plat//:requirements.bzl",
- pip_parse_compat_multi_plat_repositories = "install_deps",
-)
-load(
- "@req_compile_test_pip_parse_compat_single_plat//:requirements.bzl",
- pip_parse_compat_single_plat_repositories = "install_deps",
-)
-
-def pip_parse_compat_test_deps_install():
- pip_parse_compat_multi_plat_repositories()
- pip_parse_compat_single_plat_repositories()
diff --git a/pyproject.toml b/pyproject.toml
index 394f96c5..ebf8fa7f 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -2,8 +2,13 @@
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
+[tool.isort]
+profile = "black"
+
[tool.mypy]
-namespace_packages = false
+# `req_compile.private` deliberately has no `__init__.py` so that `setup.py`'s
+# `find_packages` leaves the Bazel rule helpers out of the distribution.
+namespace_packages = true
[tool.pylint.main]
max-line-length = 120
@@ -21,6 +26,3 @@ disable = [
"consider-using-f-string",
"useless-import-alias", # Conflict with ruff check.
]
-
-[tool.isort]
-profile = "black"
diff --git a/req_compile/BUILD.bazel b/req_compile/BUILD.bazel
index 99f61748..6cd77470 100644
--- a/req_compile/BUILD.bazel
+++ b/req_compile/BUILD.bazel
@@ -1,13 +1,63 @@
-load("@rules_python//python:defs.bzl", "py_binary")
+load("@bazel_skylib//rules:run_binary.bzl", "run_binary")
+load("@rules_venv//python/venv:defs.bzl", "py_venv_binary")
+load("@rules_venv//python/wheel:defs.bzl", "py_wheel_library")
+load("//:version.bzl", "VERSION")
-py_binary(
+run_binary(
+ name = "long_description",
+ srcs = [
+ "//:CHANGELOG.rst",
+ "//:README.rst",
+ ],
+ outs = ["long_description.rst"],
+ args = [
+ "--output",
+ "$(execpath long_description.rst)",
+ "--input",
+ "$(execpath //:CHANGELOG.rst)",
+ "--input",
+ "$(execpath //:README.rst)",
+ ],
+ tool = "//tools/concat",
+)
+
+py_wheel_library(
name = "req_compile",
srcs = glob(["**/*.py"]),
- data = [
- "py.typed",
+ author = "Spencer Putt",
+ author_email = "sputt@alumni.iu.edu",
+ classifiers = [
+ "Programming Language :: Python",
+ "Programming Language :: Python :: 3.9",
+ "Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
+ "Programming Language :: Python :: 3.13",
+ "Programming Language :: Python :: 3.14",
+ "Operating System :: OS Independent",
+ "Environment :: Console",
+ "Topic :: Software Development",
+ "Intended Audience :: Developers",
+ "License :: OSI Approved :: MIT License",
],
- imports = [".."],
- main = "__main__.py",
+ constraints_file = "//:requirements.in",
+ data = ["py.typed"],
+ description_content_type = "text/x-rst",
+ description_file = ":long_description",
+ distribution = "req-compile",
+ # `py_wheel_library` has no `entry_points` parameter so the console scripts
+ # are provided directly as a `.dist-info` file. The license is shipped the
+ # same way, matching what `setup.cfg` had setuptools do.
+ extra_distinfo_files = {
+ "//:LICENSE.txt": "LICENSE.txt",
+ ":entry_points.txt": "entry_points.txt",
+ },
+ homepage = "https://github.com/periareon/req-compile",
+ license = "MIT License",
+ python_requires = ">=3.9",
+ repository_url = "https://upload.pypi.org/legacy/",
+ summary = "Python requirements compiler",
+ version = VERSION,
visibility = ["//visibility:public"],
deps = [
"@req_compile_deps//appdirs",
@@ -19,3 +69,11 @@ py_binary(
"@req_compile_deps//wheel",
],
)
+
+py_venv_binary(
+ name = "req_compile_bin",
+ srcs = ["__main__.py"],
+ main = "__main__.py",
+ visibility = ["//visibility:public"],
+ deps = [":req_compile"],
+)
diff --git a/req_compile/entry_points.txt b/req_compile/entry_points.txt
new file mode 100644
index 00000000..68723d3a
--- /dev/null
+++ b/req_compile/entry_points.txt
@@ -0,0 +1,3 @@
+[console_scripts]
+req-compile = req_compile.cmdline:compile_main
+req-candidates = req_compile.candidates:candidates_main
diff --git a/private/BUILD.bazel b/req_compile/private/BUILD.bazel
similarity index 86%
rename from private/BUILD.bazel
rename to req_compile/private/BUILD.bazel
index d47502c6..b940bfe7 100644
--- a/private/BUILD.bazel
+++ b/req_compile/private/BUILD.bazel
@@ -1,5 +1,5 @@
load("@bazel_skylib//:bzl_library.bzl", "bzl_library")
-load("@rules_python//python:defs.bzl", "py_binary")
+load("@rules_venv//python:defs.bzl", "py_binary", "py_library")
exports_files(
[
@@ -15,13 +15,13 @@ py_binary(
name = "remote_compiler_bin",
srcs = ["remote_compiler.py"],
main = "remote_compiler.py",
- deps = ["@rules_python//python/runfiles"],
+ deps = ["@rules_venv//python/runfiles"],
)
py_binary(
name = "remote_orchestrator",
srcs = ["remote_orchestrator.py"],
- deps = ["@rules_python//python/runfiles"],
+ deps = ["@rules_venv//python/runfiles"],
)
py_binary(
@@ -30,15 +30,21 @@ py_binary(
visibility = ["//visibility:public"],
)
+py_library(
+ name = "compiler_lib",
+ srcs = ["compiler.py"],
+ deps = [
+ "//req_compile",
+ "@rules_venv//python/runfiles",
+ ],
+)
+
py_binary(
name = "compiler_bin",
srcs = ["compiler.py"],
main = "compiler.py",
visibility = ["//visibility:public"],
- deps = [
- "//req_compile",
- "@rules_python//python/runfiles",
- ],
+ deps = [":compiler_lib"],
)
py_binary(
@@ -46,8 +52,8 @@ py_binary(
srcs = ["solution_tester.py"],
visibility = ["//visibility:public"],
deps = [
- ":compiler_bin",
- "@rules_python//python/runfiles",
+ ":compiler_lib",
+ "@rules_venv//python/runfiles",
],
)
@@ -87,26 +93,26 @@ bzl_library(
)
bzl_library(
- name = "annotation_utils",
- srcs = ["annotation_utils.bzl"],
+ name = "remote_compiler",
+ srcs = ["remote_compiler.bzl"],
visibility = ["//:__subpackages__"],
+ deps = [
+ ":compiler",
+ ":transition",
+ "@rules_venv//python/venv:bzl_lib",
+ ],
)
bzl_library(
- name = "compiler",
- srcs = ["compiler.bzl"],
+ name = "annotation_utils",
+ srcs = ["annotation_utils.bzl"],
visibility = ["//:__subpackages__"],
)
bzl_library(
- name = "remote_compiler",
- srcs = ["remote_compiler.bzl"],
+ name = "compiler",
+ srcs = ["compiler.bzl"],
visibility = ["//:__subpackages__"],
- deps = [
- ":compiler",
- ":transition",
- "@rules_venv//python/venv:bzl_lib",
- ],
)
bzl_library(
diff --git a/private/annotation.bzl b/req_compile/private/annotation.bzl
similarity index 100%
rename from private/annotation.bzl
rename to req_compile/private/annotation.bzl
diff --git a/private/annotation_utils.bzl b/req_compile/private/annotation_utils.bzl
similarity index 100%
rename from private/annotation_utils.bzl
rename to req_compile/private/annotation_utils.bzl
diff --git a/private/compiler.bzl b/req_compile/private/compiler.bzl
similarity index 90%
rename from private/compiler.bzl
rename to req_compile/private/compiler.bzl
index c12d9af1..aea819a7 100644
--- a/private/compiler.bzl
+++ b/req_compile/private/compiler.bzl
@@ -48,7 +48,9 @@ def _symlink_py_executable(ctx, target):
Tuple[File, Runfiles]: The executable output and associated runfiles.
"""
executable = target[DefaultInfo].files_to_run.executable
- is_windows = executable.basename.endswith(".exe")
+
+ # `rules_venv` entrypoints are `.bat` scripts on Windows and `.sh` scripts elsewhere.
+ is_windows = executable.basename.endswith(".bat")
link = ctx.actions.declare_file("{}.{}".format(ctx.label.name, executable.basename))
# Unfortunately on Windows, the use of `ctx.actions.symlink` leads to build failures
@@ -76,32 +78,6 @@ def _symlink_py_executable(ctx, target):
runfiles = ctx.runfiles()
runfiles = runfiles.merge(target[DefaultInfo].default_runfiles)
- # Windows will require the zipapp provided by py_binary targets
- if is_windows and hasattr(target[OutputGroupInfo], "python_zip_file"):
- _, _, zipapp_name = link.path.rpartition("/")
- zipapp = ctx.actions.declare_file(zipapp_name.replace(".exe", ".zip"), sibling = link)
-
- # This output group is expected to only contain 1 file
- python_zip_file = target[OutputGroupInfo].python_zip_file.to_list()[0]
- if is_windows:
- args = ctx.actions.args()
- args.add(python_zip_file)
- args.add(zipapp)
- ctx.actions.run(
- executable = ctx.executable._copier,
- mnemonic = "CopyFile",
- arguments = [args],
- inputs = [python_zip_file],
- outputs = [zipapp],
- )
- else:
- ctx.actions.symlink(
- output = zipapp,
- target_file = python_zip_file,
- is_executable = True,
- )
- runfiles = runfiles.merge(ctx.runfiles(files = [zipapp]))
-
return link, runfiles
def _py_reqs_compiler_impl(ctx):
@@ -227,12 +203,12 @@ bazel run //:requirements.update -- --upgrade
"_compiler": attr.label(
cfg = _compilation_mode_opt_transition,
executable = True,
- default = Label("//private:compiler_bin"),
+ default = Label("//req_compile/private:compiler_bin"),
),
"_copier": attr.label(
cfg = "exec",
executable = True,
- default = Label("//private:copier"),
+ default = Label("//req_compile/private:copier"),
),
},
executable = True,
@@ -379,12 +355,12 @@ py_reqs_solution_test(
"_copier": attr.label(
cfg = "exec",
executable = True,
- default = Label("//private:copier"),
+ default = Label("//req_compile/private:copier"),
),
"_tester": attr.label(
cfg = "target",
executable = True,
- default = Label("//private:solution_tester"),
+ default = Label("//req_compile/private:solution_tester"),
),
},
test = True,
diff --git a/private/compiler.py b/req_compile/private/compiler.py
similarity index 100%
rename from private/compiler.py
rename to req_compile/private/compiler.py
diff --git a/private/copier.py b/req_compile/private/copier.py
similarity index 100%
rename from private/copier.py
rename to req_compile/private/copier.py
diff --git a/private/remote_compiler.bzl b/req_compile/private/remote_compiler.bzl
similarity index 90%
rename from private/remote_compiler.bzl
rename to req_compile/private/remote_compiler.bzl
index 084d5f22..1eb4faa5 100644
--- a/private/remote_compiler.bzl
+++ b/req_compile/private/remote_compiler.bzl
@@ -1,7 +1,7 @@
"""Utilities for compiling requirements on a remote machine"""
load("@rules_venv//python/venv:defs.bzl", "py_venv_binary", "py_venv_zipapp")
-load("//private:compiler.bzl", "PyReqsCompilerInfo")
+load("//req_compile/private:compiler.bzl", "PyReqsCompilerInfo")
load(":transition.bzl", "platform_transitioned_file")
def _req_compile_output_file_impl(ctx):
@@ -75,8 +75,8 @@ def py_reqs_remote_compiler(name, compiler, platform = None, **kwargs):
py_venv_binary(
name = name + "_bin",
- srcs = [Label("//private:remote_compiler.py")],
- main = Label("//private:remote_compiler.py"),
+ srcs = [Label("//req_compile/private:remote_compiler.py")],
+ main = Label("//req_compile/private:remote_compiler.py"),
data = [
compiler,
name + "_args_file",
@@ -87,7 +87,7 @@ def py_reqs_remote_compiler(name, compiler, platform = None, **kwargs):
"PY_REQ_COMPILER_ARGS_FILE": "$(rlocationpath {})".format(name + "_args_file"),
"PY_REQ_COMPILER_SOLUTION_FILE": "$(rlocationpath {})".format(name + "_solution_file"),
},
- deps = ["@rules_python//python/runfiles"],
+ deps = ["@rules_venv//python/runfiles"],
)
# Create a zipapp for the desired platform.
@@ -111,8 +111,8 @@ def py_reqs_remote_compiler(name, compiler, platform = None, **kwargs):
# Define a binary that will run the tool.
py_venv_binary(
name = name,
- srcs = [Label("//private:remote_orchestrator.py")],
- main = Label("//private:remote_orchestrator.py"),
+ srcs = [Label("//req_compile/private:remote_orchestrator.py")],
+ main = Label("//req_compile/private:remote_orchestrator.py"),
deps = [Label("@rules_venv//python/runfiles")],
tags = tags,
data = [zipapp],
diff --git a/private/remote_compiler.py b/req_compile/private/remote_compiler.py
similarity index 100%
rename from private/remote_compiler.py
rename to req_compile/private/remote_compiler.py
diff --git a/private/remote_orchestrator.py b/req_compile/private/remote_orchestrator.py
similarity index 100%
rename from private/remote_orchestrator.py
rename to req_compile/private/remote_orchestrator.py
diff --git a/private/reqs_repo.bzl b/req_compile/private/reqs_repo.bzl
similarity index 98%
rename from private/reqs_repo.bzl
rename to req_compile/private/reqs_repo.bzl
index 218b5546..120d1aa8 100644
--- a/private/reqs_repo.bzl
+++ b/req_compile/private/reqs_repo.bzl
@@ -7,8 +7,8 @@ load(":whl_repo.bzl", "whl_repository")
_DEFS_BZL_TEMPLATE = """\
\"\"\"Python constraints.\"\"\"
-load("@rules_req_compile//private:utils.bzl", "sanitize_package_name")
-load("@rules_req_compile//private:reqs_repo.bzl", "create_spoke_repos")
+load("@rules_req_compile//req_compile/private:utils.bzl", "sanitize_package_name")
+load("@rules_req_compile//req_compile/private:reqs_repo.bzl", "create_spoke_repos")
def whl_repo_name(package):
return "{spoke_prefix}__" + sanitize_package_name(package)
@@ -105,7 +105,7 @@ def create_spoke_repos(hub_name, spoke_prefix, constraints, interpreter):
_RULES_PYTHON_COMPAT = """\
\"\"\"A compatibility file with rules_python\"\"\"
-load("@rules_req_compile//private:utils.bzl", "sanitize_package_name")
+load("@rules_req_compile//req_compile/private:utils.bzl", "sanitize_package_name")
load(
":defs.bzl",
"repositories",
@@ -412,7 +412,7 @@ load(
_INTERFACE_BZL_TEMPLATE = """\
\"\"\"Python constraints\"\"\"
-load("@rules_req_compile//private:utils.bzl", "sanitize_package_name")
+load("@rules_req_compile//req_compile/private:utils.bzl", "sanitize_package_name")
{loads}
def whl_repo_name(package):
diff --git a/private/sdist.bzl b/req_compile/private/sdist.bzl
similarity index 92%
rename from private/sdist.bzl
rename to req_compile/private/sdist.bzl
index e1c3a1a4..e0149cce 100644
--- a/private/sdist.bzl
+++ b/req_compile/private/sdist.bzl
@@ -4,7 +4,7 @@ load(":reqs_repo.bzl", "create_spoke_repos", "parse_requirements_locks")
def _sdist_deps_module_impl(module_ctx):
attrs = struct(
- requirements_lock = Label("//private:sdist_requirements.txt"),
+ requirements_lock = Label("//req_compile/private:sdist_requirements.txt"),
requirements_locks = None,
)
platform_packages = parse_requirements_locks(
diff --git a/private/sdist_compiler.py b/req_compile/private/sdist_compiler.py
similarity index 100%
rename from private/sdist_compiler.py
rename to req_compile/private/sdist_compiler.py
diff --git a/private/sdist_requirements.in b/req_compile/private/sdist_requirements.in
similarity index 100%
rename from private/sdist_requirements.in
rename to req_compile/private/sdist_requirements.in
diff --git a/private/sdist_requirements.txt b/req_compile/private/sdist_requirements.txt
similarity index 100%
rename from private/sdist_requirements.txt
rename to req_compile/private/sdist_requirements.txt
diff --git a/private/solution_tester.py b/req_compile/private/solution_tester.py
similarity index 92%
rename from private/solution_tester.py
rename to req_compile/private/solution_tester.py
index df336ea8..c349f1cf 100644
--- a/private/solution_tester.py
+++ b/req_compile/private/solution_tester.py
@@ -7,7 +7,12 @@
from python.runfiles import Runfiles
# pylint: disable-next=import-error
-from private.compiler import compile_main, init_logging, parse_args, rlocation
+from req_compile.private.compiler import (
+ compile_main,
+ init_logging,
+ parse_args,
+ rlocation,
+)
_WARNING = """\
diff --git a/private/transition.bzl b/req_compile/private/transition.bzl
similarity index 100%
rename from private/transition.bzl
rename to req_compile/private/transition.bzl
diff --git a/private/utils.bzl b/req_compile/private/utils.bzl
similarity index 100%
rename from private/utils.bzl
rename to req_compile/private/utils.bzl
diff --git a/private/whl_repo.bzl b/req_compile/private/whl_repo.bzl
similarity index 98%
rename from private/whl_repo.bzl
rename to req_compile/private/whl_repo.bzl
index b34a0f96..d203be75 100644
--- a/private/whl_repo.bzl
+++ b/req_compile/private/whl_repo.bzl
@@ -15,7 +15,7 @@ SDIST_ATTRS = {
),
"_compiler": attr.label(
allow_files = True,
- default = Label("//private:sdist_compiler.py"),
+ default = Label("//req_compile/private:sdist_compiler.py"),
),
}
@@ -115,8 +115,8 @@ if __name__ == "__main__":
_BUILD_TEMPLATE = """\
load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
-load("@rules_req_compile//private:utils.bzl", "whl_repo_name")
-load("@rules_python//python:defs.bzl", "py_library", "py_binary")
+load("@rules_req_compile//req_compile/private:utils.bzl", "whl_repo_name")
+load("@rules_venv//python:defs.bzl", "py_library", "py_binary")
package(default_visibility = ["//visibility:public"])
diff --git a/rule_tests/internal_deps/BUILD.bazel b/rule_tests/internal_deps/BUILD.bazel
new file mode 100644
index 00000000..305d9895
--- /dev/null
+++ b/rule_tests/internal_deps/BUILD.bazel
@@ -0,0 +1,9 @@
+# buildifier: disable=bzl-visibility
+load("//req_compile/private:compiler.bzl", "py_reqs_solution_test")
+
+py_reqs_solution_test(
+ name = "sdist_requirements_test",
+ custom_compile_command = "python3 -m req_compile --multiline --hashes --urls --solution $(rootpath //req_compile/private:sdist_requirements.txt) $(rootpath //req_compile/private:sdist_requirements.in)",
+ requirements_in = "//req_compile/private:sdist_requirements.in",
+ requirements_txt = "//req_compile/private:sdist_requirements.txt",
+)
diff --git a/private/tests/unit/BUILD.bazel b/rule_tests/unit/BUILD.bazel
similarity index 100%
rename from private/tests/unit/BUILD.bazel
rename to rule_tests/unit/BUILD.bazel
diff --git a/private/tests/unit/parse_lockfile_test_suite.bzl b/rule_tests/unit/parse_lockfile_test_suite.bzl
similarity index 99%
rename from private/tests/unit/parse_lockfile_test_suite.bzl
rename to rule_tests/unit/parse_lockfile_test_suite.bzl
index 5486e72a..83a33573 100644
--- a/private/tests/unit/parse_lockfile_test_suite.bzl
+++ b/rule_tests/unit/parse_lockfile_test_suite.bzl
@@ -1,7 +1,9 @@
"""Starlark unit tests for `parse_lockfile`."""
load("@bazel_skylib//lib:unittest.bzl", "asserts", "unittest")
-load("//private:reqs_repo.bzl", "parse_lockfile")
+
+# buildifier: disable=bzl-visibility
+load("//req_compile/private:reqs_repo.bzl", "parse_lockfile")
def _parse_lockfile_test_impl(ctx):
env = unittest.begin(ctx)
diff --git a/private/tests/version_test/BUILD.bazel b/rule_tests/version_test/BUILD.bazel
similarity index 64%
rename from private/tests/version_test/BUILD.bazel
rename to rule_tests/version_test/BUILD.bazel
index 60e831e6..efbea182 100644
--- a/private/tests/version_test/BUILD.bazel
+++ b/rule_tests/version_test/BUILD.bazel
@@ -1,4 +1,4 @@
-load("@rules_python//python:defs.bzl", "py_test")
+load("@rules_venv//python:defs.bzl", "py_test")
py_test(
name = "version_test",
@@ -8,6 +8,6 @@ py_test(
"//:version.bzl",
],
deps = [
- "@rules_python//python/runfiles",
+ "@rules_venv//python/runfiles",
],
)
diff --git a/private/tests/version_test/version_test.py b/rule_tests/version_test/version_test.py
similarity index 100%
rename from private/tests/version_test/version_test.py
rename to rule_tests/version_test/version_test.py
diff --git a/tests/BUILD.bazel b/tests/BUILD.bazel
index e69de29b..3067e713 100644
--- a/tests/BUILD.bazel
+++ b/tests/BUILD.bazel
@@ -0,0 +1,43 @@
+load("@rules_venv//python/pytest:defs.bzl", "py_pytest_test_suite")
+
+py_pytest_test_suite(
+ name = "tests",
+ size = "small",
+ srcs = [
+ "__init__.py",
+ "conftest.py",
+ ],
+ data = glob(
+ include = ["**/*"],
+ exclude = [
+ "*.py",
+ "BUILD.bazel",
+ ],
+ ) + [
+ # `test_self_source` extracts metadata from this project's own source
+ # tree, which it locates relative to this directory.
+ "//:CHANGELOG.rst",
+ "//:README.rst",
+ "//:requirements.in",
+ "//:setup.py",
+ "//:version.bzl",
+ ],
+ # The test sources have never been type checked and mypy cannot resolve
+ # `pytest` through the cache the aspect builds for it, so every decorator
+ # reports `Module has no attribute "fixture"`. Linting is unaffected.
+ tags = ["no-mypy"],
+ tests = glob(
+ include = ["test_*.py"],
+ # `test_integration.py` shells out to `req-compile` from the source
+ # tree and reaches out to a package index. Neither works under Bazel
+ # so it remains covered by the pip based test matrix in CI.
+ exclude = ["test_integration.py"],
+ ),
+ deps = [
+ "//req_compile",
+ "@req_compile_deps//pytest",
+ "@req_compile_deps//pytest_mock",
+ # Imported by the `extern-importer-1.0` source package fixture.
+ "@req_compile_deps//six",
+ ],
+)
diff --git a/tests/conftest.py b/tests/conftest.py
index ee725289..c5736ce5 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -89,7 +89,9 @@ def load_scenario(self, scenario: str, limit_reqs=None) -> None:
if limit_reqs is None or req in limit_reqs:
self.index_map[entry.split("-")[0].lower()].append(req)
- def _build_candidate(self, req: Optional[packaging.requirements.Requirement]) -> Candidate:
+ def _build_candidate(
+ self, req: Optional[packaging.requirements.Requirement]
+ ) -> Candidate:
path = _to_path(self.scenario, req)
full_name = (
path
@@ -102,9 +104,7 @@ def _build_candidate(self, req: Optional[packaging.requirements.Requirement]) ->
handle.read()
)
- return Candidate(
- req.name, path, metadata.version, None, None, "any", None
- )
+ return Candidate(req.name, path, metadata.version, None, None, "any", None)
def get_candidates(
self, req: Optional[packaging.requirements.Requirement]
@@ -155,7 +155,10 @@ def build_targz(directory):
archive_name = os.path.basename(directory) + ".tar.gz"
tar_archive = os.path.join(build_dir, archive_name)
- with tarfile.open(tar_archive, "w:gz") as tarf:
+ # `dereference` is required because the test sources may be presented
+ # as a tree of symlinks (e.g. a Bazel runfiles directory) and the
+ # archive is expected to contain the file contents, not dangling links.
+ with tarfile.open(tar_archive, "w:gz", dereference=True) as tarf:
tarf.add(directory, arcname=os.path.basename(directory))
files_to_delete.append(tar_archive)
diff --git a/tests/test_cmdline.py b/tests/test_cmdline.py
index 0bf8b60f..a9d19e04 100644
--- a/tests/test_cmdline.py
+++ b/tests/test_cmdline.py
@@ -131,6 +131,4 @@ def test_stdin_reqs(mock_stdin):
result = _create_input_reqs("-", extra_sources)
assert not extra_sources
- assert set(result.reqs) == set(
- parse_requirements(["pytest", "pytest-mock"])
- )
+ assert set(result.reqs) == set(parse_requirements(["pytest", "pytest-mock"]))
diff --git a/tests/test_compile.py b/tests/test_compile.py
index 125b3dc5..fe989626 100644
--- a/tests/test_compile.py
+++ b/tests/test_compile.py
@@ -225,11 +225,7 @@ def test_compile_source_user1(local_tree):
def test_compile_source_user2(local_tree):
results = req_compile.compile.perform_compile(
- [
- DistInfo(
- "test", None, [Requirement("user-2")], meta=True
- )
- ],
+ [DistInfo("test", None, [Requirement("user-2")], meta=True)],
local_tree,
)
assert _real_outputs(results) == {
@@ -243,11 +239,7 @@ def test_compile_source_user2_recursive_root():
base_dir = os.path.join(os.path.dirname(__file__), "local-tree")
repo = SourceRepository(base_dir)
results = req_compile.compile.perform_compile(
- [
- DistInfo(
- "test", None, [Requirement("user-2")], meta=True
- )
- ],
+ [DistInfo("test", None, [Requirement("user-2")], meta=True)],
repo,
)
assert _real_outputs(results) == {
diff --git a/tests/test_dists.py b/tests/test_dists.py
index 720444bf..868c62c2 100644
--- a/tests/test_dists.py
+++ b/tests/test_dists.py
@@ -31,7 +31,9 @@ def test_one_source():
"""Verifies one reverse dependency contributes its single version constraint."""
dists = DistributionCollection()
dists.add_dist(
- DistInfo("aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))),
+ DistInfo(
+ "aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))
+ ),
None,
Requirement("aaa"),
)
@@ -43,43 +45,49 @@ def test_two_sources():
"""Verifies constraints from two sources are merged on the shared dependency."""
dists = DistributionCollection()
dists.add_dist(
- DistInfo("aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))),
+ DistInfo(
+ "aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))
+ ),
None,
Requirement("aaa"),
)
dists.add_dist(
- DistInfo("ccc", "1.0.0", list(req_compile.utils.parse_requirements(["bbb>0.5"]))),
+ DistInfo(
+ "ccc", "1.0.0", list(req_compile.utils.parse_requirements(["bbb>0.5"]))
+ ),
None,
Requirement("ccc"),
)
- assert dists["bbb"].build_constraints() == Requirement(
- "bbb>0.5,<1.0"
- )
+ assert dists["bbb"].build_constraints() == Requirement("bbb>0.5,<1.0")
def test_two_sources_same():
"""Verifies duplicate constraints from multiple sources are de-duplicated."""
dists = DistributionCollection()
dists.add_dist(
- DistInfo("aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))),
+ DistInfo(
+ "aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))
+ ),
None,
Requirement("aaa"),
)
dists.add_dist(
- DistInfo("ccc", "1.0.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))),
+ DistInfo(
+ "ccc", "1.0.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))
+ ),
None,
Requirement("ccc"),
)
- assert dists["bbb"].build_constraints() == Requirement(
- "bbb<1.0"
- )
+ assert dists["bbb"].build_constraints() == Requirement("bbb<1.0")
def test_add_remove_dist():
"""Verifies removing a node also removes its orphaned transitive dependency."""
dists = DistributionCollection()
node = dists.add_dist(
- DistInfo("aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))),
+ DistInfo(
+ "aaa", "1.2.0", list(req_compile.utils.parse_requirements(["bbb<1.0"]))
+ ),
None,
Requirement("aaa"),
)
@@ -133,7 +141,9 @@ def test_metadata_violated() -> None:
def test_metadata_violated_removes_transitive():
"""Verifies metadata invalidation removes transitive nodes with no remaining parents."""
dists = DistributionCollection()
- metadata_a = DistInfo("a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["b"])))
+ metadata_a = DistInfo(
+ "a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["b"]))
+ )
dists.add_dist(metadata_a, None, None)
dists.add_dist(metadata_a, None, Requirement("a>1.0"))
@@ -160,21 +170,22 @@ def test_repo_with_extra():
"""Verifies explanations include extra-triggered and regular dependency reasons."""
dists = DistributionCollection()
root = DistInfo(
- "root", "1.0", list(req_compile.utils.parse_requirements(["a[test]"])), meta=True
+ "root",
+ "1.0",
+ list(req_compile.utils.parse_requirements(["a[test]"])),
+ meta=True,
)
metadata_a = DistInfo(
- "a", "1.0.0", list(req_compile.utils.parse_requirements(['b ; extra=="test"', "c"]))
+ "a",
+ "1.0.0",
+ list(req_compile.utils.parse_requirements(['b ; extra=="test"', "c"])),
)
metadata_b = DistInfo("b", "2.0.0", [])
metadata_c = DistInfo("c", "2.0.0", [])
root = dists.add_dist(root, None, None)
- root_a = dists.add_dist(
- metadata_a, None, Requirement("a[test]")
- )
- dists.add_dist(
- metadata_b, root_a, Requirement('b ; extra=="test"')
- )
+ root_a = dists.add_dist(metadata_a, None, Requirement("a[test]"))
+ dists.add_dist(metadata_b, root_a, Requirement('b ; extra=="test"'))
dists.add_dist(metadata_c, root_a, Requirement("a"))
results = [
@@ -192,10 +203,15 @@ def test_regular_and_extra_constraints():
"""Verifies regular and extra constraints are both applied to the same dependency."""
dists = DistributionCollection()
root = DistInfo(
- "root", "1.0", list(req_compile.utils.parse_requirements(["a[test]"])), meta=True
+ "root",
+ "1.0",
+ list(req_compile.utils.parse_requirements(["a[test]"])),
+ meta=True,
)
metadata_a = DistInfo(
- "a", "1.0.0", list(req_compile.utils.parse_requirements(['b>3 ; extra=="test"', "b>2"]))
+ "a",
+ "1.0.0",
+ list(req_compile.utils.parse_requirements(['b>3 ; extra=="test"', "b>2"])),
)
dists.add_dist(root, None, None)
@@ -210,7 +226,9 @@ def test_regular_and_extra_constraints():
def test_circular_self_dep() -> None:
"""Verifies a self-dependency is treated as a valid solved cycle."""
dists = DistributionCollection()
- metadata_a = DistInfo("a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["a"])))
+ metadata_a = DistInfo(
+ "a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["a"]))
+ )
dists.add_dist(metadata_a, None, None)
@@ -221,7 +239,9 @@ def test_circular_self_dep() -> None:
def test_circular_self_invalidate() -> None:
"""Verifies a self-cycle is invalidated when a conflicting requirement is added."""
dists = DistributionCollection()
- metadata_a = DistInfo("a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["a"])))
+ metadata_a = DistInfo(
+ "a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["a"]))
+ )
dists.add_dist(metadata_a, None, None)
dists.add_dist(metadata_a, None, Requirement("a>1.0"))
@@ -235,11 +255,17 @@ def test_circular_self_invalidate() -> None:
def test_big_circular_invalidate() -> None:
"""Verifies a two-node cycle invalidates and can be restored after constraints change."""
dists = DistributionCollection()
- metadata_a = DistInfo("a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["b"])))
- metadata_b = DistInfo("b", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["a"])))
+ metadata_a = DistInfo(
+ "a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["b"]))
+ )
+ metadata_b = DistInfo(
+ "b", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["a"]))
+ )
meta = dists.add_dist(
- DistInfo("-", None, list(req_compile.utils.parse_requirements(["a", "b"])), meta=True),
+ DistInfo(
+ "-", None, list(req_compile.utils.parse_requirements(["a", "b"])), meta=True
+ ),
None,
None,
)
@@ -270,7 +296,9 @@ def test_base_plugin_circular_completed() -> None:
reqs=list(req_compile.utils.parse_requirements(["root-c", "root-a", "root-b"])),
)
metadata_root_a = DistInfo(
- "root-a", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["root", "dep-a"]))
+ "root-a",
+ "1.0.0",
+ reqs=list(req_compile.utils.parse_requirements(["root", "dep-a"])),
)
metadata_dep_a = DistInfo("dep-a", "1.0.0", reqs=[])
metadata_root_b = DistInfo(
@@ -284,7 +312,9 @@ def test_base_plugin_circular_completed() -> None:
)
metadata_dep_c = DistInfo("dep-c", "1.0.0", reqs=[])
metadata_common = DistInfo(
- "common", "1.0.0", reqs=list(req_compile.utils.parse_requirements(["root", "dep-a"]))
+ "common",
+ "1.0.0",
+ reqs=list(req_compile.utils.parse_requirements(["root", "dep-a"])),
)
root_node = dists.add_dist(metadata_root, None, Requirement("root"))
@@ -318,6 +348,7 @@ def test_base_plugin_circular_completed() -> None:
@pytest.fixture
def result_graph() -> Any:
"""Builds a small helper for constructing dependency graphs incrementally in tests."""
+
class _ResultGraph:
results = DistributionCollection()
previous = None
@@ -350,6 +381,7 @@ def complete(self):
return _ResultGraph()
+
# pylint: disable=redefined-outer-name
def test_simple_cycle(result_graph):
"""Verifies cycle detection and completeness for a two-node mutual dependency."""
@@ -431,7 +463,9 @@ def test_root_not_cycle(result_graph) -> None:
def test_get_cycle_deep_acyclic_graph_no_recursion_error() -> None:
"""Verifies cycle detection handles deep acyclic chains without recursion issues."""
- nodes = [DependencyNode(f"n{i}", DistInfo(f"n{i}", "1.0.0", [])) for i in range(2000)]
+ nodes = [
+ DependencyNode(f"n{i}", DistInfo(f"n{i}", "1.0.0", [])) for i in range(2000)
+ ]
for idx in range(len(nodes) - 1):
nodes[idx].add_reason(nodes[idx + 1], None)
diff --git a/tests/test_extractor.py b/tests/test_extractor.py
index a6c12f5d..dc8b883b 100644
--- a/tests/test_extractor.py
+++ b/tests/test_extractor.py
@@ -117,6 +117,7 @@ def test_pathlib_open_with_encoding(monkeypatch, mock_targz, tmp_path):
with contextlib.closing(archive):
with temp_cwd(root):
monkeypatch.setattr(io, "open", archive.open)
+
# Python 3.10 does not use io.open under the hood.
def _path_open(self, *args, **kwargs):
return archive.open(self, *args, **kwargs)
diff --git a/tests/test_merge_requirements.py b/tests/test_merge_requirements.py
index 4c5b48a2..954ce27c 100644
--- a/tests/test_merge_requirements.py
+++ b/tests/test_merge_requirements.py
@@ -42,9 +42,7 @@ def test_combine_extra_with_extra():
req1 = Requirement("fuzzywuzzy[slowdown]")
req2 = Requirement("fuzzywuzzy[speedup]")
- assert merge_requirements(req1, req2) == Requirement(
- "fuzzywuzzy[slowdown,speedup]"
- )
+ assert merge_requirements(req1, req2) == Requirement("fuzzywuzzy[slowdown,speedup]")
def test_combine_extras_sorted():
diff --git a/tests/test_metadata.py b/tests/test_metadata.py
index d4101e57..c905a858 100644
--- a/tests/test_metadata.py
+++ b/tests/test_metadata.py
@@ -7,14 +7,13 @@
import pytest
from packaging.version import Version
-from req_compile.utils import parse_requirement, parse_requirements
-
import req_compile.filename
import req_compile.metadata
import req_compile.metadata.dist_info
import req_compile.metadata.extractor
import req_compile.metadata.metadata
import req_compile.metadata.source
+from req_compile.utils import parse_requirement, parse_requirements
def test_a_with_no_extra(metadata_provider):
@@ -57,7 +56,7 @@ def test_parse_flat_metadata_bizarre_extra():
def test_parse_flat_metadata_complex_marker(
- mock_py_version: Callable[[str], None]
+ mock_py_version: Callable[[str], None],
) -> None:
mock_py_version("3.7.12")
@@ -74,9 +73,7 @@ def test_a_with_extra(metadata_provider):
info = metadata_provider("normal/a-1.0.0.METADATA")
assert info.name == "a"
assert info.version == Version("0.1.0")
- assert list(info.requires("x1")) == [
- parse_requirement("b (>1); extra == 'x1'")
- ]
+ assert list(info.requires("x1")) == [parse_requirement("b (>1); extra == 'x1'")]
def test_a_with_wrong_extra(metadata_provider):
@@ -164,7 +161,10 @@ def test_compound(mock_targz):
["file-input-1.0", "file-input", "1.0", None],
["capital-s-1.0", "capital-s", "1.0", []],
["dirsep-1.0", "dirsep", "1.0", []],
- ["version-writer-1.2", "version-writer", "1.2", []],
+ # `setup.py` here cannot be parsed statically, so the name comes from the
+ # egg-info fallback. Modern setuptools reports the declared name verbatim
+ # rather than replacing underscores with dashes.
+ ["version-writer-1.2", "version_writer", "1.2", []],
["tinyrpc-1.0.4", "tinyrpc", "1.0.4", ["six"]],
["spec-loading-1.0", "spec-loading", "1.0", ["et_xmlfile", "jdcal"]],
]
diff --git a/tests/test_repositories.py b/tests/test_repositories.py
index 6e096e0b..fd362534 100644
--- a/tests/test_repositories.py
+++ b/tests/test_repositories.py
@@ -2,7 +2,6 @@
import sys
import pytest
-from req_compile.utils import parse_version
from req_compile.repos.repository import (
Candidate,
@@ -12,6 +11,7 @@
_wheel_filename_to_candidate,
sort_candidates,
)
+from req_compile.utils import parse_version
@pytest.mark.parametrize(
@@ -69,9 +69,7 @@ def test_sort_non_semver():
candidates = []
for ver in candidate_vers:
candidates.append(
- Candidate(
- "pytz", None, parse_version(ver), None, None, "any", None
- )
+ Candidate("pytz", None, parse_version(ver), None, None, "any", None)
)
reference = list(candidates)
diff --git a/tests/test_versions.py b/tests/test_versions.py
index 0636144d..e669d32b 100644
--- a/tests/test_versions.py
+++ b/tests/test_versions.py
@@ -5,7 +5,6 @@
from req_compile.versions import _offset_minor_version, is_possible
-
@pytest.mark.parametrize(
"version, offset, result",
[
diff --git a/tools/concat/BUILD.bazel b/tools/concat/BUILD.bazel
new file mode 100644
index 00000000..8723ebe5
--- /dev/null
+++ b/tools/concat/BUILD.bazel
@@ -0,0 +1,8 @@
+load("@rules_venv//python/venv:defs.bzl", "py_venv_binary")
+
+py_venv_binary(
+ name = "concat",
+ srcs = ["concat.py"],
+ main = "concat.py",
+ visibility = ["//visibility:public"],
+)
diff --git a/tools/concat/concat.py b/tools/concat/concat.py
new file mode 100644
index 00000000..5bd4dec9
--- /dev/null
+++ b/tools/concat/concat.py
@@ -0,0 +1,47 @@
+"""Concatenate text files into a single output file.
+
+Used to assemble the long description of the `req-compile` wheel from the
+changelog and readme without relying on platform specific shell commands.
+"""
+
+import argparse
+from pathlib import Path
+
+
+def parse_args() -> argparse.Namespace:
+ """Parse command line arguments."""
+ parser = argparse.ArgumentParser(description=__doc__)
+ parser.add_argument(
+ "--input",
+ dest="inputs",
+ action="append",
+ required=True,
+ type=Path,
+ help="A file to append to the output. May be passed multiple times.",
+ )
+ parser.add_argument(
+ "--output",
+ required=True,
+ type=Path,
+ help="The path of the concatenated output file.",
+ )
+ parser.add_argument(
+ "--separator",
+ default="\n",
+ help="Text to insert between each input file.",
+ )
+ return parser.parse_args()
+
+
+def main() -> None:
+ """The main entrypoint."""
+ args = parse_args()
+
+ contents = [path.read_text(encoding="utf-8") for path in args.inputs]
+
+ args.output.parent.mkdir(parents=True, exist_ok=True)
+ args.output.write_text(args.separator.join(contents), encoding="utf-8")
+
+
+if __name__ == "__main__":
+ main()
diff --git a/tools/toolchains/BUILD.bazel b/tools/toolchains/BUILD.bazel
new file mode 100644
index 00000000..91d5834c
--- /dev/null
+++ b/tools/toolchains/BUILD.bazel
@@ -0,0 +1,93 @@
+load("@rules_venv//python:defs.bzl", "py_library")
+load("@rules_venv//python/black:defs.bzl", "py_black_toolchain")
+load("@rules_venv//python/isort:defs.bzl", "py_isort_toolchain")
+load("@rules_venv//python/mypy:defs.bzl", "py_mypy_toolchain")
+load("@rules_venv//python/pylint:defs.bzl", "py_pylint_toolchain")
+load("@rules_venv//python/pytest:defs.bzl", "py_pytest_toolchain")
+load("@rules_venv//python/wheel:defs.bzl", "py_wheel_toolchain")
+
+py_black_toolchain(
+ name = "py_black_toolchain_impl",
+ black = "@req_compile_deps//black",
+)
+
+toolchain(
+ name = "py_black_toolchain",
+ toolchain = ":py_black_toolchain_impl",
+ toolchain_type = "@rules_venv//python/black:toolchain_type",
+ visibility = ["//visibility:public"],
+)
+
+py_isort_toolchain(
+ name = "py_isort_toolchain_impl",
+ isort = "@req_compile_deps//isort",
+)
+
+toolchain(
+ name = "py_isort_toolchain",
+ toolchain = ":py_isort_toolchain_impl",
+ toolchain_type = "@rules_venv//python/isort:toolchain_type",
+ visibility = ["//visibility:public"],
+)
+
+# The type stubs are bundled with mypy itself rather than added to the deps of
+# the targets that need them. They are not runtime dependencies, so listing
+# them on `//req_compile` would put them in the wheel's `Requires-Dist`.
+py_library(
+ name = "mypy_with_stubs",
+ deps = [
+ "@req_compile_deps//mypy",
+ "@req_compile_deps//types_appdirs",
+ "@req_compile_deps//types_requests",
+ "@req_compile_deps//types_setuptools",
+ "@req_compile_deps//types_toml",
+ ],
+)
+
+py_mypy_toolchain(
+ name = "py_mypy_toolchain_impl",
+ mypy = ":mypy_with_stubs",
+)
+
+toolchain(
+ name = "py_mypy_toolchain",
+ toolchain = ":py_mypy_toolchain_impl",
+ toolchain_type = "@rules_venv//python/mypy:toolchain_type",
+ visibility = ["//visibility:public"],
+)
+
+py_pylint_toolchain(
+ name = "py_pylint_toolchain_impl",
+ pylint = "@req_compile_deps//pylint",
+)
+
+toolchain(
+ name = "py_pylint_toolchain",
+ toolchain = ":py_pylint_toolchain_impl",
+ toolchain_type = "@rules_venv//python/pylint:toolchain_type",
+ visibility = ["//visibility:public"],
+)
+
+py_pytest_toolchain(
+ name = "py_pytest_toolchain_impl",
+ pytest = "@req_compile_deps//pytest",
+)
+
+toolchain(
+ name = "py_pytest_toolchain",
+ toolchain = ":py_pytest_toolchain_impl",
+ toolchain_type = "@rules_venv//python/pytest:toolchain_type",
+ visibility = ["//visibility:public"],
+)
+
+py_wheel_toolchain(
+ name = "py_wheel_toolchain_impl",
+ twine = "@req_compile_deps//twine",
+)
+
+toolchain(
+ name = "py_wheel_toolchain",
+ toolchain = ":py_wheel_toolchain_impl",
+ toolchain_type = "@rules_venv//python/wheel:toolchain_type",
+ visibility = ["//visibility:public"],
+)