aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
12 daysSnap for 11962822 from d7262ae7000c663dd732ca5c4891ca8c2437a6ac to ↵busytown-mac-infra-releaseAndroid Build Coastguard Worker
busytown-mac-infra-release Change-Id: Ic9030b0fb7230ff251102f8c2c16651919f4789c
2024-06-13Snap for 11962796 from f7f0d9eabf41822fed67febb4fb9780c36a506d4 to sdk-releasesdk-releaseAndroid Build Coastguard Worker
Change-Id: Iad6b6f5418f5bc2c818bce2cdefd9619478b9a59
2024-04-29Empty merge of Android 24Q2 Release (ab/11526283) to aosp-main-futureHEADmastermainXin Li
Bug: 337098550 Merged-In: I7a24a96b2515f339a894c30d357cbc467cd99dbc Change-Id: I67a0de7e0a570eb1e1c0393765ed05140e5433b6
2024-03-07Snap for 11541002 from f71847ac898655b67634bb14e77a7408c4fb5e00 to sdk-releaseplatform-tools-35.0.1Android Build Coastguard Worker
Change-Id: I85b5994f0f092ae5580d55193aab2d8652063bf1
2024-02-01Snap for 11388137 from c9bc661e540215eb603040ddcfabe65555896450 to sdk-releaseAndroid Build Coastguard Worker
Change-Id: I7fc728bd901972246ab1ee14d42de1729b789b57
2024-01-31Merge "Re-Merge tag 'upstream/0.25.0' into main." into main am: c9bc661e54 ↵Yifan Hong
am: f71847ac89 Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2912351 Change-Id: I8c65f1f39c884fe202ab6879dd8f2a8bbae9f588 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-31Merge "Re-Merge tag 'upstream/0.25.0' into main." into main am: c9bc661e54main-kernel-build-2024Yifan Hong
Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2912351 Change-Id: I7a24a96b2515f339a894c30d357cbc467cd99dbc Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-31Merge "Re-Merge tag 'upstream/0.25.0' into main." into mainYifan Hong
2024-01-18Snap for 11325807 from dafaab0edbb48e256c259bafc8d829b73219b1cc to sdk-releaseAndroid Build Coastguard Worker
Change-Id: Iabdc5f4f7313e48e83255590f3899e603974ee89
2024-01-17Merge "Update OWNERS to kleaf team." into main am: dafaab0edb am: 2c9b51ad13Yifan Hong
Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2912150 Change-Id: If8888750d1a56fc369b3e313a85cc148e68c5a76 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-17Merge "Update OWNERS to kleaf team." into main am: dafaab0edbYifan Hong
Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2912150 Change-Id: I1acee36089250246b5bf6f1c51e7f7422482ea16 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-17Merge "Update OWNERS to kleaf team." into mainYifan Hong
2024-01-17Re-Merge tag 'upstream/0.25.0' into main.Yifan Hong
This is not a merge commit due to 6954130f57eb9a56a82d4146aeafb16ef30f907a (Revert "Upgrade bazelbuild-rules_python to 0.28.0"). This change is prepared with the following: - Merge upstream/0.25.0 into 3e21f23d9400ba51f10e9b76016ff6d472829b4e (Merge remote-tracking branch 'aosp/upstream-main' into main am: b14b3520de am: e398bc2bf7 am: a1ccc8dd9e am: f26ff44a64), creating a commit X - Create a change on aosp/main so that the filesystem is left at the same state as X (git reset aosp/main; git commit -a) - Update METADATA manually. Bug: 276493276 Change-Id: I455d91c932a77d86d651e51f2220023a606d9033
2024-01-17Revert "Upgrade bazelbuild-rules_python to 0.28.0" am: 6954130f57 am: 399dd1be6dYifan Hong
Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2914865 Change-Id: Ia947f31da41c751772dcedf45b7b601d3a84b54f Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-17Upgrade bazelbuild-rules_python to 0.28.0 am: 1508c18d9e am: af64a1352bYifan Hong
Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2912149 Change-Id: I5f8c1f39e2a316761e83db05b1c016a6d580d100 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-17Revert "Upgrade bazelbuild-rules_python to 0.28.0" am: 6954130f57Yifan Hong
Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2914865 Change-Id: I34795f4b33950173d466630a4f1998a47612ff38 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-17Upgrade bazelbuild-rules_python to 0.28.0 am: 1508c18d9eYifan Hong
Original change: https://android-review.googlesource.com/c/platform/external/bazelbuild-rules_python/+/2912149 Change-Id: Ie16c4d656dee8bf6eadaeec6d9f09ed3f1a28a49 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-01-17Revert "Upgrade bazelbuild-rules_python to 0.28.0"Yifan Hong
This reverts commit 1508c18d9e27325a8d9c574a90d205e0a1d8a78f. Reason for revert: breaks build, not caught by treehugger Change-Id: Id40b5eefc5f4f0f6e4a0122fbfa53b0c3c265985
2024-01-16Update OWNERS to kleaf team.Yifan Hong
Test: N/A Change-Id: I20d3794e29312afb0aadf03f15833540398979cc
2024-01-16Upgrade bazelbuild-rules_python to 0.28.0Yifan Hong
This project was upgraded with external_updater. Usage: tools/external_updater/updater.sh update bazelbuild-rules_python For more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md Test: TreeHugger Change-Id: Ic0584645f577a4ea1f67458ca5e753f8a906aaa4
2024-01-08docs: update changelog for 0.28.0 release (#1672)upstream/0.28.0Richard Levasseur
This is to prepare for the 0.28.0 release.
2024-01-08feat(py_runtime): Allow `py_runtime` to take an executable target as the ↵Misha Zharov
interpreter (#1621) This PR allows `py_runtime` to accept an executable (e.g. `sh_binary`). This makes it easier to customize the interpreter binary used, as it allows intercepting invocation of the interpreter. For example, it can be used to change how the interpreter searches for dynamic libraries. Related to https://github.com/bazelbuild/rules_python/issues/1612 --------- Co-authored-by: Richard Levasseur <rlevasseur@google.com>
2024-01-07fix(toolchains): register py cc toolchain for workspace builds (#1670)Richard Levasseur
The workspace `python_register_toolchains()` function only registered the plain Python toolchain by its specific name. The py cc toolchain wasn't also being named. This meant things like `//python/cc:current_py_cc_headers` couldn't find their toolchain. Bzlmod doesn't have this problem because it uses the `:all` pattern to register everything. To fix, also register the py cc toolchain where the plain Python toolchain is registered, which makes it available. Fixes https://github.com/bazelbuild/rules_python/issues/1669
2024-01-06chore: Migrate to rules_bazel_integration_test (#1598)Philipp Schrader
This patch deletes the old copy of `bazel_integration_test` that we had vendored into the repo. It's replaced with the maintained `rules_bazel_integration_test`. Summary of changes: * Increases minimum tested bazel version to 6.4.0. rules_bazel_integration_test depends on some features in 6.4 * Moves several CI jobs to be BIT tests. This free ups about 10 CI slots. * Runs these tests under a separate CI job. This is so that feedback from the regular test jobs is faster. Notes about these bazel-in-bazel integration tests: * The tests are very heavy and easily overwhelm a system. Unfortunately, there doesn't appear to be a way to cap their parallelism; only disable it entirely using the `exclusive` tag. Some light testing shows there is some speedup to be gained on CI if we can, in the future, limit them to 2 or 4 concurrent executions. * A special version named "self" is created that re-uses whatever the outer Bazel program is. This is mainly so that Bazel's "at head" testing pipelines (the one that runs tests with Bazel built from head) are able to affect the integration tests. It also comes in handy when locally testing a custom Bazel build. * The globbing of child workspace files can be somewhat prone to following `bazel-*` symlinks, so its important the `.bazelignore` and deleted packages configs are up-to-date. Otherwise the globbing can turn into 30,000+ files and consume a system-freezing level of memory and CPU. Fixes #1209 --------- Co-authored-by: Richard Levasseur <rlevasseur@google.com>
2024-01-05cleanup(dev): remove remnants of old bazel_integration_test code (#1668)Richard Levasseur
The tests have been deleted, so the supporting code is now unused. Moves the update_deleted_packages script to tools, since it isn't specific to the bazel_integration_test code.
2024-01-04build(deps): bump requests from 2.27.1 to 2.31.0 in ↵dependabot[bot]
/tests/integration/pip_repository_entry_points (#1651) Bumps [requests](https://github.com/psf/requests) from 2.27.1 to 2.31.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/psf/requests/releases">requests's releases</a>.</em></p> <blockquote> <h2>v2.31.0</h2> <h2>2.31.0 (2023-05-22)</h2> <p><strong>Security</strong></p> <ul> <li> <p>Versions of Requests between v2.3.0 and v2.30.0 are vulnerable to potential forwarding of <code>Proxy-Authorization</code> headers to destination servers when following HTTPS redirects.</p> <p>When proxies are defined with user info (<a href="https://user:pass@proxy:8080">https://user:pass@proxy:8080</a>), Requests will construct a <code>Proxy-Authorization</code> header that is attached to the request to authenticate with the proxy.</p> <p>In cases where Requests receives a redirect response, it previously reattached the <code>Proxy-Authorization</code> header incorrectly, resulting in the value being sent through the tunneled connection to the destination server. Users who rely on defining their proxy credentials in the URL are <em>strongly</em> encouraged to upgrade to Requests 2.31.0+ to prevent unintentional leakage and rotate their proxy credentials once the change has been fully deployed.</p> <p>Users who do not use a proxy or do not supply their proxy credentials through the user information portion of their proxy URL are not subject to this vulnerability.</p> <p>Full details can be read in our <a href="https://github.com/psf/requests/security/advisories/GHSA-j8r2-6x86-q33q">Github Security Advisory</a> and <a href="https://nvd.nist.gov/vuln/detail/CVE-2023-32681">CVE-2023-32681</a>.</p> </li> </ul> <h2>v2.30.0</h2> <h2>2.30.0 (2023-05-03)</h2> <p><strong>Dependencies</strong></p> <ul> <li> <p>⚠️ Added support for urllib3 2.0. ⚠️</p> <p>This may contain minor breaking changes so we advise careful testing and reviewing <a href="https://urllib3.readthedocs.io/en/latest/v2-migration-guide.html">https://urllib3.readthedocs.io/en/latest/v2-migration-guide.html</a> prior to upgrading.</p> <p>Users who wish to stay on urllib3 1.x can pin to <code>urllib3&lt;2</code>.</p> </li> </ul> <h2>v2.29.0</h2> <h2>2.29.0 (2023-04-26)</h2> <p><strong>Improvements</strong></p> <ul> <li>Requests now defers chunked requests to the urllib3 implementation to improve standardization. (<a href="https://redirect.github.com/psf/requests/issues/6226">#6226</a>)</li> <li>Requests relaxes header component requirements to support bytes/str subclasses. (<a href="https://redirect.github.com/psf/requests/issues/6356">#6356</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/psf/requests/blob/main/HISTORY.md">requests's changelog</a>.</em></p> <blockquote> <h2>2.31.0 (2023-05-22)</h2> <p><strong>Security</strong></p> <ul> <li> <p>Versions of Requests between v2.3.0 and v2.30.0 are vulnerable to potential forwarding of <code>Proxy-Authorization</code> headers to destination servers when following HTTPS redirects.</p> <p>When proxies are defined with user info (<a href="https://user:pass@proxy:8080">https://user:pass@proxy:8080</a>), Requests will construct a <code>Proxy-Authorization</code> header that is attached to the request to authenticate with the proxy.</p> <p>In cases where Requests receives a redirect response, it previously reattached the <code>Proxy-Authorization</code> header incorrectly, resulting in the value being sent through the tunneled connection to the destination server. Users who rely on defining their proxy credentials in the URL are <em>strongly</em> encouraged to upgrade to Requests 2.31.0+ to prevent unintentional leakage and rotate their proxy credentials once the change has been fully deployed.</p> <p>Users who do not use a proxy or do not supply their proxy credentials through the user information portion of their proxy URL are not subject to this vulnerability.</p> <p>Full details can be read in our <a href="https://github.com/psf/requests/security/advisories/GHSA-j8r2-6x86-q33q">Github Security Advisory</a> and <a href="https://nvd.nist.gov/vuln/detail/CVE-2023-32681">CVE-2023-32681</a>.</p> </li> </ul> <h2>2.30.0 (2023-05-03)</h2> <p><strong>Dependencies</strong></p> <ul> <li> <p>⚠️ Added support for urllib3 2.0. ⚠️</p> <p>This may contain minor breaking changes so we advise careful testing and reviewing <a href="https://urllib3.readthedocs.io/en/latest/v2-migration-guide.html">https://urllib3.readthedocs.io/en/latest/v2-migration-guide.html</a> prior to upgrading.</p> <p>Users who wish to stay on urllib3 1.x can pin to <code>urllib3&lt;2</code>.</p> </li> </ul> <h2>2.29.0 (2023-04-26)</h2> <p><strong>Improvements</strong></p> <ul> <li>Requests now defers chunked requests to the urllib3 implementation to improve standardization. (<a href="https://redirect.github.com/psf/requests/issues/6226">#6226</a>)</li> <li>Requests relaxes header component requirements to support bytes/str subclasses. (<a href="https://redirect.github.com/psf/requests/issues/6356">#6356</a>)</li> </ul> <h2>2.28.2 (2023-01-12)</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/psf/requests/commit/147c8511ddbfa5e8f71bbf5c18ede0c4ceb3bba4"><code>147c851</code></a> v2.31.0</li> <li><a href="https://github.com/psf/requests/commit/74ea7cf7a6a27a4eeb2ae24e162bcc942a6706d5"><code>74ea7cf</code></a> Merge pull request from GHSA-j8r2-6x86-q33q</li> <li><a href="https://github.com/psf/requests/commit/302225334678490ec66b3614a9dddb8a02c5f4fe"><code>3022253</code></a> test on pypy 3.8 and pypy 3.9 on windows and macos (<a href="https://redirect.github.com/psf/requests/issues/6424">#6424</a>)</li> <li><a href="https://github.com/psf/requests/commit/b639e66c816514e40604d46f0088fbceec1a5149"><code>b639e66</code></a> test on py3.12 (<a href="https://redirect.github.com/psf/requests/issues/6448">#6448</a>)</li> <li><a href="https://github.com/psf/requests/commit/d3d504436ef0c2ac7ec8af13738b04dcc8c694be"><code>d3d5044</code></a> Fixed a small typo (<a href="https://redirect.github.com/psf/requests/issues/6452">#6452</a>)</li> <li><a href="https://github.com/psf/requests/commit/2ad18e0e10e7d7ecd5384c378f25ec8821a10a29"><code>2ad18e0</code></a> v2.30.0</li> <li><a href="https://github.com/psf/requests/commit/f2629e9e3c7ce3c3c8c025bcd8db551101cbc773"><code>f2629e9</code></a> Remove strict parameter (<a href="https://redirect.github.com/psf/requests/issues/6434">#6434</a>)</li> <li><a href="https://github.com/psf/requests/commit/87d63de8739263bbe17034fba2285c79780da7e8"><code>87d63de</code></a> v2.29.0</li> <li><a href="https://github.com/psf/requests/commit/51716c4ef390136b0d4b800ec7665dd5503e64fc"><code>51716c4</code></a> enable the warnings plugin (<a href="https://redirect.github.com/psf/requests/issues/6416">#6416</a>)</li> <li><a href="https://github.com/psf/requests/commit/a7da1ab3498b10ec3a3582244c94b2845f8a8e71"><code>a7da1ab</code></a> try on ubuntu 22.04 (<a href="https://redirect.github.com/psf/requests/issues/6418">#6418</a>)</li> <li>Additional commits viewable in <a href="https://github.com/psf/requests/compare/v2.27.1...v2.31.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=requests&package-manager=pip&previous-version=2.27.1&new-version=2.31.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/bazelbuild/rules_python/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-04build(deps): bump setuptools from 59.6.0 to 65.5.1 in ↵dependabot[bot]
/tests/integration/pip_repository_entry_points (#1652) Bumps [setuptools](https://github.com/pypa/setuptools) from 59.6.0 to 65.5.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pypa/setuptools/releases">setuptools's releases</a>.</em></p> <blockquote> <h2>v65.5.1</h2> <p>No release notes provided.</p> <h2>v65.5.0</h2> <p>No release notes provided.</p> <h2>v65.4.1</h2> <p>No release notes provided.</p> <h2>v65.4.0</h2> <p>No release notes provided.</p> <h2>v65.3.0</h2> <p>No release notes provided.</p> <h2>v65.2.0</h2> <p>No release notes provided.</p> <h2>v65.1.1</h2> <p>No release notes provided.</p> <h2>v65.1.0</h2> <p>No release notes provided.</p> <h2>v65.0.2</h2> <p>No release notes provided.</p> <h2>v65.0.1</h2> <p>No release notes provided.</p> <h2>v65.0.0</h2> <p>No release notes provided.</p> <h2>v64.0.3</h2> <p>No release notes provided.</p> <h2>v64.0.2</h2> <p>No release notes provided.</p> <h2>v64.0.1</h2> <p>No release notes provided.</p> <h2>v64.0.0</h2> <p>No release notes provided.</p> <h2>v63.4.3</h2> <p>No release notes provided.</p> <h2>v63.4.2</h2> <p>No release notes provided.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pypa/setuptools/blob/main/NEWS.rst">setuptools's changelog</a>.</em></p> <blockquote> <h1>v65.5.1</h1> <h2>Misc</h2> <ul> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3638">#3638</a>: Drop a test dependency on the <code>mock</code> package, always use :external+python:py:mod:<code>unittest.mock</code> -- by :user:<code>hroncok</code></li> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3659">#3659</a>: Fixed REDoS vector in package_index -- by :user:<code>SCH227</code></li> </ul> <h1>v65.5.0</h1> <h2>Changes</h2> <ul> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3624">#3624</a>: Fixed editable install for multi-module/no-package <code>src</code>-layout projects.</li> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3626">#3626</a>: Minor refactorings to support distutils using stdlib logging module.</li> </ul> <h2>Documentation changes</h2> <ul> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3419">#3419</a>: Updated the example version numbers to be compliant with PEP-440 on the &quot;Specifying Your Project’s Version&quot; page of the user guide.</li> </ul> <h2>Misc</h2> <ul> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3569">#3569</a>: Improved information about conflicting entries in the current working directory and editable install (in documentation and as an informational warning).</li> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3576">#3576</a>: Updated version of <code>validate_pyproject</code>.</li> </ul> <h1>v65.4.1</h1> <h2>Misc</h2> <ul> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3613">#3613</a>: Fixed encoding errors in <code>expand.StaticModule</code> when system default encoding doesn't match expectations for source files.</li> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3617">#3617</a>: Merge with pypa/distutils@6852b20 including fix for <a href="https://redirect.github.com/pypa/distutils/issues/181">pypa/distutils#181</a>.</li> </ul> <h1>v65.4.0</h1> <h2>Changes</h2> <ul> <li><a href="https://redirect.github.com/pypa/setuptools/issues/3609">#3609</a>: Merge with pypa/distutils@d82d926 including support for DIST_EXTRA_CONFIG in <a href="https://redirect.github.com/pypa/distutils/issues/177">pypa/distutils#177</a>.</li> </ul> <p>v65.3.0</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pypa/setuptools/commit/a462cb5edb324dcc56f903524b742305e4087014"><code>a462cb5</code></a> Bump version: 65.5.0 → 65.5.1</li> <li><a href="https://github.com/pypa/setuptools/commit/de35d8be997c9f8508b425e33a1b6e52431091fa"><code>de35d8b</code></a> Merge pull request <a href="https://redirect.github.com/pypa/setuptools/issues/3656">#3656</a> from bmorris3/typos</li> <li><a href="https://github.com/pypa/setuptools/commit/58e23de0d4c2ce0f2502d072bb9a2ed1e2ab0ba6"><code>58e23de</code></a> Update changelog. Ref <a href="https://redirect.github.com/pypa/setuptools/issues/3659">#3659</a>.</li> <li><a href="https://github.com/pypa/setuptools/commit/43a9c9bfa6aa626ec2a22540bea28d2ca77964be"><code>43a9c9b</code></a> Limit the amount of whitespace to search/backtrack. Fixes <a href="https://redirect.github.com/pypa/setuptools/issues/3659">#3659</a>.</li> <li><a href="https://github.com/pypa/setuptools/commit/579134321d4d9397c886a5cb50cc26d0e3fa4279"><code>5791343</code></a> Add test capturing failed expectation. Ref <a href="https://redirect.github.com/pypa/setuptools/issues/3659">#3659</a>.</li> <li><a href="https://github.com/pypa/setuptools/commit/1f97905bc40310ca454ff1ea3884f233b7dcc88c"><code>1f97905</code></a> ⚫ Fade to black.</li> <li><a href="https://github.com/pypa/setuptools/commit/6254567c6ae323bb8ce19a6930ae3cc5f7fb25cc"><code>6254567</code></a> Remove workaround for emacs.</li> <li><a href="https://github.com/pypa/setuptools/commit/729b180e926634930c21ccce5558780d42707763"><code>729b180</code></a> ⚫ Fade to black.</li> <li><a href="https://github.com/pypa/setuptools/commit/c068081a7234a0c5c322a9312654e7d0f4aaa8d1"><code>c068081</code></a> Typo corrections</li> <li><a href="https://github.com/pypa/setuptools/commit/f777a40ed9abf529906c2939f80a184a5ed035fa"><code>f777a40</code></a> Suppress deprecation warning in --rsyncdir. Workaround for <a href="https://redirect.github.com/pypa/setuptools/issues/3655">#3655</a>.</li> <li>Additional commits viewable in <a href="https://github.com/pypa/setuptools/compare/v59.6.0...v65.5.1">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=setuptools&package-manager=pip&previous-version=59.6.0&new-version=65.5.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/bazelbuild/rules_python/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-03fix(bzlmod): allow modules to register the same toolchain as rules_python's ↵Richard Levasseur
default (#1642) This fixes a bug where, if a module tries to register a non-default toolchain with the same version as rules_python's default toolchain, an error would occur. This happened because the earlier (non-default) toolchain caused the later (default) toolchain to be entirely skipped, and then no default toolchain would be seen. This most affects intermediary modules that need to register a toolchain, but can't specify a default one. To fix, just skip creating and registering the duplicate toolchain, but still check its default-ness to determine if it's the default toolchain. Fixes https://github.com/bazelbuild/rules_python/issues/1638
2023-12-27feat(runfiles): Added type hints to `@rules_python//python/runfiles` (#1654)UebelAndre
This change adds mypy types directly to the `rules_python.python.runfiles` library as well as regression testing to CI. --------- Co-authored-by: Ignas Anikevicius <240938+aignas@users.noreply.github.com>
2023-12-22refactor(whl_library): reimplement wheel platform parsing in starlark (#1636)Ignas Anikevicius
It seems that the CI did not catch the `macosx_10_9_universal2` wheels edge case, which this new code is handling. I moved the implementation to starlark because #1625 needs this. No changelog is needed because the feature this is fixing/refactoring an unreleased feature. --------- Co-authored-by: Richard Levasseur <richardlev@gmail.com>
2023-12-21fix(coverage): add test attributes in transition module (#1649)Toshifumi Anan
This PR is to fix an issue that coverage report is empty when using transition module. This is due to the absence of the `_lcov_merger` and `_collect_cc_coverage` attributes. Coverage reports will be created adding these attributes. Fixes https://github.com/bazelbuild/rules_python/issues/1600
2023-12-21build(deps): bump pygments from 2.11.2 to 2.15.0 in ↵dependabot[bot]
/tests/integration/pip_repository_entry_points (#1650) Bumps [pygments](https://github.com/pygments/pygments) from 2.11.2 to 2.15.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pygments/pygments/releases">pygments's releases</a>.</em></p> <blockquote> <h2>2.15.0</h2> <ul> <li> <p>Added lexers:</p> <ul> <li>Carbon (<a href="https://redirect.github.com/pygments/pygments/issues/2362">#2362</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2365">#2365</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2366">#2366</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2367">#2367</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2368">#2368</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2369">#2369</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2370">#2370</a>)</li> <li>Dax (<a href="https://redirect.github.com/pygments/pygments/issues/2335">#2335</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2345">#2345</a>)</li> <li>MediaWiki Wikitext (<a href="https://redirect.github.com/pygments/pygments/issues/2373">#2373</a>, <a href="https://redirect.github.com/pygments/pygments/issues/827">#827</a>)</li> <li>PostgreSQL Explain (<a href="https://redirect.github.com/pygments/pygments/issues/2398">#2398</a>)</li> <li>WGSL (WebGPU Shading Language) (<a href="https://redirect.github.com/pygments/pygments/issues/2386">#2386</a>)</li> <li>X++ (<a href="https://redirect.github.com/pygments/pygments/issues/2339">#2339</a>)</li> </ul> </li> <li> <p>Updated lexers:</p> <ul> <li> <p>AMDGPU: Add support for <code>scratch_</code> instructions, the <code>attr*.*</code> argument, as well as the <code>off</code> modifier (<a href="https://redirect.github.com/pygments/pygments/issues/2327">#2327</a>).</p> </li> <li> <p>APDL: Miscellaneous improvements (<a href="https://redirect.github.com/pygments/pygments/issues/2314">#2314</a>)</p> </li> <li> <p>bash/tcsh:</p> <ul> <li>Move <code>break</code> to keywords (<a href="https://redirect.github.com/pygments/pygments/issues/2377">#2377</a>)</li> <li>Improve bash math expansion lexing (<a href="https://redirect.github.com/pygments/pygments/issues/2255">#2255</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2353">#2353</a>)</li> </ul> </li> <li> <p>Chapel: Support attributes (<a href="https://redirect.github.com/pygments/pygments/issues/2376">#2376</a>)</p> </li> <li> <p>CMake: Implement bracket style comments (<a href="https://redirect.github.com/pygments/pygments/issues/2338">#2338</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2354">#2354</a>)</p> </li> <li> <p>CSS: Improve lexing of numbers inside function calls (<a href="https://redirect.github.com/pygments/pygments/issues/2382">#2382</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2383">#2383</a>)</p> </li> <li> <p>diff: Support normal diff syntax, as opposed to unified diff syntax (<a href="https://redirect.github.com/pygments/pygments/issues/2321">#2321</a>)</p> </li> <li> <p>GLSL, HLSL:</p> <ul> <li>Support line continuations in preprocessor code (<a href="https://redirect.github.com/pygments/pygments/issues/2350">#2350</a>)</li> <li>Improve preprocessor directive handling (<a href="https://redirect.github.com/pygments/pygments/issues/2357">#2357</a>)</li> </ul> </li> <li> <p>LilyPond: minor update of builtins</p> </li> <li> <p>PHP: support attributes (<a href="https://redirect.github.com/pygments/pygments/issues/2055">#2055</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2347">#2347</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2360">#2360</a>), fix anonymous classes without parameters (<a href="https://redirect.github.com/pygments/pygments/issues/2359">#2359</a>), improve lexing of variable variable syntax (<a href="https://redirect.github.com/pygments/pygments/issues/2358">#2358</a>)</p> </li> <li> <p>Python:</p> <ul> <li>Add missing builtins (<a href="https://redirect.github.com/pygments/pygments/issues/2334">#2334</a>)</li> <li>Fix inconsistent lexing of <code>None</code> (<a href="https://redirect.github.com/pygments/pygments/issues/2406">#2406</a>)</li> </ul> </li> <li> <p>Rebol/Red: Don't require script headers (<a href="https://redirect.github.com/pygments/pygments/issues/2348">#2348</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2349">#2349</a>)</p> </li> <li> <p>Spice: Update keywords (<a href="https://redirect.github.com/pygments/pygments/issues/2336">#2336</a>)</p> </li> <li> <p>SQL+Jinja (<code>analyse_text</code> method): Fix catastrophic backtracking (<a href="https://redirect.github.com/pygments/pygments/issues/2355">#2355</a>)</p> </li> <li> <p>Terraform: Add <code>hcl</code> alias (<a href="https://redirect.github.com/pygments/pygments/issues/2375">#2375</a>)</p> </li> </ul> </li> <li> <p>Declare support for Python 3.11 and drop support for Python 3.6 (<a href="https://redirect.github.com/pygments/pygments/issues/2324">#2324</a>).</p> </li> <li> <p>Update <code>native</code> style to improve contrast (<a href="https://redirect.github.com/pygments/pygments/issues/2325">#2325</a>).</p> </li> <li> <p>Update `github-dark`` style to match latest Primer style (<a href="https://redirect.github.com/pygments/pygments/issues/2401">#2401</a>)</p> </li> <li> <p>Revert a change that made guessing lexers based on file names slower on Python 3.10 and older (<a href="https://redirect.github.com/pygments/pygments/issues/2328">#2328</a>).</p> </li> <li> <p>Fix some places where a locale-dependent encoding could unintentionally be used instead of UTF-8 (<a href="https://redirect.github.com/pygments/pygments/issues/2326">#2326</a>).</p> </li> <li> <p>Fix Python traceback handling (<a href="https://redirect.github.com/pygments/pygments/issues/2226">#2226</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2329">#2329</a>).</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pygments/pygments/blob/master/CHANGES">pygments's changelog</a>.</em></p> <blockquote> <h2>Version 2.15.0</h2> <p>(released April 10th, 2023)</p> <ul> <li> <p>Added lexers:</p> <ul> <li>Carbon (<a href="https://redirect.github.com/pygments/pygments/issues/2362">#2362</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2365">#2365</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2366">#2366</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2367">#2367</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2368">#2368</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2369">#2369</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2370">#2370</a>)</li> <li>Dax (<a href="https://redirect.github.com/pygments/pygments/issues/2335">#2335</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2345">#2345</a>)</li> <li>MediaWiki Wikitext (<a href="https://redirect.github.com/pygments/pygments/issues/2373">#2373</a>, <a href="https://redirect.github.com/pygments/pygments/issues/827">#827</a>)</li> <li>PostgreSQL Explain (<a href="https://redirect.github.com/pygments/pygments/issues/2398">#2398</a>)</li> <li>WGSL (WebGPU Shading Language) (<a href="https://redirect.github.com/pygments/pygments/issues/2386">#2386</a>)</li> <li>X++ (<a href="https://redirect.github.com/pygments/pygments/issues/2339">#2339</a>)</li> </ul> </li> <li> <p>Updated lexers:</p> <ul> <li> <p>AMDGPU: Add support for <code>scratch_</code> instructions, the <code>attr*.*</code> argument, as well as the <code>off</code> modifier (<a href="https://redirect.github.com/pygments/pygments/issues/2327">#2327</a>).</p> </li> <li> <p>APDL: Miscellaneous improvements (<a href="https://redirect.github.com/pygments/pygments/issues/2314">#2314</a>)</p> </li> <li> <p>bash/tcsh:</p> <ul> <li>Move <code>break</code> to keywords (<a href="https://redirect.github.com/pygments/pygments/issues/2377">#2377</a>)</li> <li>Improve bash math expansion lexing (<a href="https://redirect.github.com/pygments/pygments/issues/2255">#2255</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2353">#2353</a>)</li> </ul> </li> <li> <p>Chapel: Support attributes (<a href="https://redirect.github.com/pygments/pygments/issues/2376">#2376</a>)</p> </li> <li> <p>CMake: Implement bracket style comments (<a href="https://redirect.github.com/pygments/pygments/issues/2338">#2338</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2354">#2354</a>)</p> </li> <li> <p>CSS: Improve lexing of numbers inside function calls (<a href="https://redirect.github.com/pygments/pygments/issues/2382">#2382</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2383">#2383</a>)</p> </li> <li> <p>diff: Support normal diff syntax, as opposed to unified diff syntax (<a href="https://redirect.github.com/pygments/pygments/issues/2321">#2321</a>)</p> </li> <li> <p>GLSL, HLSL:</p> <ul> <li>Support line continuations in preprocessor code (<a href="https://redirect.github.com/pygments/pygments/issues/2350">#2350</a>)</li> <li>Improve preprocessor directive handling (<a href="https://redirect.github.com/pygments/pygments/issues/2357">#2357</a>)</li> </ul> </li> <li> <p>LilyPond: minor update of builtins</p> </li> <li> <p>PHP: support attributes (<a href="https://redirect.github.com/pygments/pygments/issues/2055">#2055</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2347">#2347</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2360">#2360</a>), fix anonymous classes without parameters (<a href="https://redirect.github.com/pygments/pygments/issues/2359">#2359</a>), improve lexing of variable variable syntax (<a href="https://redirect.github.com/pygments/pygments/issues/2358">#2358</a>)</p> </li> <li> <p>Python:</p> <ul> <li>Add missing builtins (<a href="https://redirect.github.com/pygments/pygments/issues/2334">#2334</a>)</li> <li>Fix inconsistent lexing of <code>None</code> (<a href="https://redirect.github.com/pygments/pygments/issues/2406">#2406</a>)</li> </ul> </li> <li> <p>Rebol/Red: Don't require script headers (<a href="https://redirect.github.com/pygments/pygments/issues/2348">#2348</a>, <a href="https://redirect.github.com/pygments/pygments/issues/2349">#2349</a>)</p> </li> <li> <p>Spice: Update keywords (<a href="https://redirect.github.com/pygments/pygments/issues/2336">#2336</a>)</p> </li> <li> <p>SQL+Jinja (<code>analyse_text</code> method): Fix catastrophic backtracking (<a href="https://redirect.github.com/pygments/pygments/issues/2355">#2355</a>)</p> </li> <li> <p>Terraform: Add <code>hcl</code> alias (<a href="https://redirect.github.com/pygments/pygments/issues/2375">#2375</a>)</p> </li> </ul> </li> <li> <p>Declare support for Python 3.11 and drop support for Python 3.6 (<a href="https://redirect.github.com/pygments/pygments/issues/2324">#2324</a>).</p> </li> <li> <p>Update <code>native</code> style to improve contrast (<a href="https://redirect.github.com/pygments/pygments/issues/2325">#2325</a>).</p> </li> <li> <p>Update `github-dark`` style to match latest Primer style (<a href="https://redirect.github.com/pygments/pygments/issues/2401">#2401</a>)</p> </li> <li> <p>Revert a change that made guessing lexers based on file names slower on Python 3.10 and older (<a href="https://redirect.github.com/pygments/pygments/issues/2328">#2328</a>).</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pygments/pygments/commit/6c187ad83267be9ce142af3fd5c9e670339dc7aa"><code>6c187ad</code></a> Prepare 2.15 release.</li> <li><a href="https://github.com/pygments/pygments/commit/00b9cb022cc9c05784c43c11bd7f73e64008b347"><code>00b9cb0</code></a> Prepare for release.</li> <li><a href="https://github.com/pygments/pygments/commit/a0824a45f0bd6c45528fa16132f09dd3570a8234"><code>a0824a4</code></a> Update CHANGES</li> <li><a href="https://github.com/pygments/pygments/commit/26f9f6c852846fe579c37fe936a872b68fa686ba"><code>26f9f6c</code></a> Merge pull request <a href="https://redirect.github.com/pygments/pygments/issues/2406">#2406</a> from rdbende/fix-fromimport-none</li> <li><a href="https://github.com/pygments/pygments/commit/62b1bbbe6e329268eaa4c68f0e3eb8867c450acc"><code>62b1bbb</code></a> Change token of None after from keyword</li> <li><a href="https://github.com/pygments/pygments/commit/acee60e4e8dde9ea99fc494740e20b06188791ac"><code>acee60e</code></a> Update CHANGES</li> <li><a href="https://github.com/pygments/pygments/commit/eaca69091119e0ac5c97e626ba9e3b21b688c5ed"><code>eaca690</code></a> Add lexer for MediaWiki Wikitext (<a href="https://redirect.github.com/pygments/pygments/issues/2373">#2373</a>)</li> <li><a href="https://github.com/pygments/pygments/commit/0e9c87bcf096908956e031f15a4e589e83be1691"><code>0e9c87b</code></a> Update CHANGES</li> <li><a href="https://github.com/pygments/pygments/commit/ef0abbaece522732031d61391567c017d48d87b7"><code>ef0abba</code></a> Add PostgreSQL Explain lexer (<a href="https://redirect.github.com/pygments/pygments/issues/2398">#2398</a>)</li> <li><a href="https://github.com/pygments/pygments/commit/3c6e2af8fbc44bb1ef77389d09118c37faea8746"><code>3c6e2af</code></a> Update CHANGES</li> <li>Additional commits viewable in <a href="https://github.com/pygments/pygments/compare/2.11.2...2.15.0">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pygments&package-manager=pip&previous-version=2.11.2&new-version=2.15.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/bazelbuild/rules_python/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-21chore: enable bzlmod by default (for Bazel 6) (#1632)Richard Levasseur
This enables bzlmod by default so that, by default, builds are using it for both Bazel 6 and Bazel 7. This exposed some gaps in our test coverage, so some new jobs are created to cover minimum bzlmod and workspace versions. Basically, our CI config used mostly workspace builds, while Bazel's downstream testing used bzlmod builds. Changing our config to default to bzlmod means we lost most workspace build coverage. Unfortunately, adding these new jobs goes over the CI job limit, so I consolidated tests a bit: * The py_proto_library example for bzlmod is moved under the bzlmod example. This saves about 6 jobs * Change some tests with both (Bazel 7, workspace) and (Bazel 6, workspace) to have just one of the two. This saves about 4 jobs. Many jobs still test both, so coverage should still be sufficient. Also some various cleanups: * Deletes the last bazel-in-bazel integration test using our old, private, fork of bazel_integration_test. It hasn't been running in a long time and is broken. * Renames the CI jobs to have shorter names.
2023-12-21chore!: remove pip_install macro and cleanup docs (#1570)Ignas Anikevicius
2023-12-21fix: missing dependencies of py_binary (#1630)Zhongpeng Lin
When multiple main modules import the same package, the package is only added to one of the main module's deps, this is because the `allDeps` set returned from `parse` removed the duplicates based on the import's name. This PR have every main module maintains a list of deps it imports to avoid this issue.
2023-12-21fix(whl_library): actually apply patches and warn if RECORD file patch is ↵Ignas Anikevicius
needed (#1637) Before this PR there was a typo, that was actually causing the patching function to not use the provided patches. With this change we are finally correctly doing it. After fixing this bug I noticed that `repository_ctx.patch` results in files with `CRLF` on Windows, which made me make the `RECORD` mismatch to be a warning rather than a hard failure to make the CI happy and allow users on Windows to patch wheels but see a warning if they have a multi-platform bazel setup. The `CRLF` endings on Windows issue is fixed in bazelbuild/bazel@07e0d316a345a3cb2593f98525320590bbc56e30 Related #1631, #1639.
2023-12-21docs: document support policies (#1640)Richard Levasseur
This just writes down our support policies and puts them in a single location in the hosted docs. Summarized: * Bazel version support is as discussed from the maintainers meeting: upcoming, current, and last versions * Reference the Bazel rule compatibility guidelines (always having an incremental path to upgrade) * Described what experimental features mean. * Only support the latest rules_python version; older ones are best effort. * Only support platforms CI can run. Work towards #1361
2023-12-21chore: fix sphinx requirements (#1648)Ignas Anikevicius
Before this PR the requirements files for `osx` and `linux` would be split, but in practise they would be always the same. This means that `linux` users would have to ask an `osx` user to run a command where we could actually just reuse the same files. Summary: - chore: add absl-py to `osx` requirements - chore: remove the `osx` requirements and rename `requirements_linux.txt` to just be `requirements.txt` as both of the files are the same.
2023-12-20fix(gazelle): __init__.py in per-file targets (#1582)Siddhartha Bagaria
As per Python spec, `__init__.py` files are depended upon by every file in the package, so let's make sure that our generated targets also understand this implicit dependency. Note that because Python module dependencies are not a DAG, we can not depend on the Bazel target for `__init__.py` files (to avoid cycles in Bazel), and hence a non-empty `__init__.py` file is added to the `srcs` attribute of every `py_library` target. The language spec also says that each package depends on the parent package, but that is a less commonly used feature, and can make things more complex. From [importlib] docs: > Changed in version 3.3: Parent packages are automatically imported. From [import] language reference: > Importing parent.one will implicitly execute parent/__init__.py and parent/one/__init__.py. [importlib]: https://docs.python.org/3/library/importlib.html#importlib.import_module [import]: https://docs.python.org/3/reference/import.html#regular-packages --------- Co-authored-by: Ignas Anikevicius <240938+aignas@users.noreply.github.com>
2023-12-20doc: Updating doc on py_binary generation (#1635)Zhongpeng Lin
Updating doc on the generation of `py_binary` targets to include the new feature that creates a py_binary target per main module.
2023-12-20docs: use stardoc proto output to generate markdown docs (#1629)Richard Levasseur
The template language Stardoc uses (Velocity) is niche and fairly esoteric, and requires a lot of experimenting to understand how to make it produce the desired output. In particular, it largely assumes whitespace doesn't matter, which makes it a poor fit for generating Markdown, where whitespace often does matter. Instead, a small Python program is used to consume the binary proto output of Stardoc, which converts it to Markdown. This also makes it easier to customize the overall output and re-use code for the different types of objects rendered. The visible changes to the docs are: * Module extensions are now documented * Repository rules follow the style of the other generated docs * Fixed the rendering of pip_repository docs -- it had an h2 section which broke the section grouping of the API objects. * Puts some padding between the border and content for text in params/attrs/fields listings. Other notable changes: * Make RTD builds use bzlmod. This is necessary so that the pip extension can be documented. It loads `@pythons_hub//:interpreters.bzl`, but that repo is only created when bzlmod is enabled) --------- Co-authored-by: Ignas Anikevicius <240938+aignas@users.noreply.github.com>
2023-12-20test(bzlmod): refactor tests to not depend on implementation details (#1628)Ignas Anikevicius
This refactors the `whl_mods` tests to not rely on the layout of the repositories, which I found to be needed whilst prototyping on #1625. Whilst doing this I realized that in general it would be great to support `Path` instances in the `runfiles` library, but that should be done next time.
2023-12-19pycross: Add patching support to py_wheel_library (#1436)Philipp Schrader
This patch adds a few arguments to `py_wheel_library` to simulate how `http_archive` accepts patch-related arguments. I also amended the existing test to validate the behaviour at a very high level. References: #1360
2023-12-18fix(bzlmod pip.parse): allow requirements with duplicate package lines (#1620)Richard Levasseur
Requirements files are permitted to have duplicate lines for the same package. An example of this is having separate lines for a package and its extras. When we parse requirements, the parser discards the "extra" portion of the entry and returns a list of all the packages as-is. When a repository is created for each entry, this means the same name is used for multiple repositories. Under WORKSPACE builds, duplicate repository names aren't an error. It appears that last defined repo takes affect. Under bzlmod, duplicate repo names are an error. To fix, mimic the last-defined-wins behavior in bzlmod by using a map to dedupe the package names. Fixes https://github.com/bazelbuild/rules_python/issues/1615
2023-12-18internal: support setting visibility when rendering aliases (#1626)Ignas Anikevicius
Whilst prototyping for #1625, I realized that this feature would be useful in general when rendering external repositories. This does not include a CHANGELOG because it is not visible to the users. --------- Co-authored-by: Richard Levasseur <richardlev@gmail.com>
2023-12-18refactor: extract auth.bzl out of repositories.bzl (#1627)Ignas Anikevicius
This is a simple change to make it possible to reuse the vendored authentication code for easier reuse within the repository. Split from #1625
2023-12-17doc: switch to pypi.org (#1622)Ignas Anikevicius
Before this PR all of our examples are referring to the default PyPI by its legacy URL. This PR just makes things more consistent by updating URLs to point to the pypi.org as pypi.python.org does not have any guarantees to be up. See https://packaging.python.org/en/latest/guides/migrating-to-pypi-org/
2023-12-17fix: trimming deps in py_binary (#1614)Zhongpeng Lin
The `py_binary` targets for main modules should only depend on the modules that it imports, not blindly inheriting from the py_library.
2023-12-16fix(pip.parse): allow absolute path for python_interpreter; skip hermetic ↵Richard Levasseur
toolchain lookup when used (#1619) The `python_interpreter` arg wasn't being properly handled in the bzlmod code in two ways. 1. Lookup of a hermetic runtime wasn't being skipped when it was set. The net effect was it ignored the specified interpreter and would try to lookup a hermetic interpreter using the python version. To fix, add a check for python_interpreter to the guard of the lookup. 2. Specifying an absolute path for the value wasn't being converted to a `path` object, which meant a plain string eventually made its way to some code expecting a `path` object. To fix, call `repository_ctx.path()` on the path to convert it to a path object. Fixes https://github.com/bazelbuild/rules_python/issues/1618
2023-12-15docs: include changelog and contributing page in generated docs. (#1617)Richard Levasseur
This better unifies where docs can be viewed. Also deletes some mentions of having to generate the docs manually.