Skip to content

Commit

Permalink
Merge branch 'main' into kob-ts-dependency-inference
Browse files Browse the repository at this point in the history
  • Loading branch information
kevin-oliveira-zocdoc authored Jan 31, 2025
2 parents a2bcb98 + 71de75e commit a01d8e2
Show file tree
Hide file tree
Showing 13 changed files with 290 additions and 195 deletions.
2 changes: 1 addition & 1 deletion 3rdparty/python/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ freezegun==1.2.1
ijson==3.2.3
libcst==1.4.0
packaging==21.3
pex==2.29.0
pex==2.32.0
psutil==5.9.8
# This should be compatible with pytest.py, although it can be looser so that we don't
# over-constrain pantsbuild.pants.testutil
Expand Down
96 changes: 47 additions & 49 deletions 3rdparty/python/user_reqs.lock
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
// "mypy-typing-asserts==0.1.1",
// "node-semver==0.9.0",
// "packaging==21.3",
// "pex==2.29.0",
// "pex==2.32.0",
// "psutil==5.9.8",
// "pydevd-pycharm==203.5419.8",
// "pytest<7.1.0,>=6.2.4",
Expand Down Expand Up @@ -145,13 +145,13 @@
"artifacts": [
{
"algorithm": "sha256",
"hash": "ac96cd038792094f438ad1f6ff80837353805ac950cd2aa0e0625ef19850c308",
"url": "https://files.pythonhosted.org/packages/89/aa/ab0f7891a01eeb2d2e338ae8fecbe57fcebea1a24dbb64d45801bfab481d/attrs-24.3.0-py3-none-any.whl"
"hash": "c75a69e28a550a7e93789579c22aa26b0f5b83b75dc4e08fe092980051e1090a",
"url": "https://files.pythonhosted.org/packages/fc/30/d4986a882011f9df997a55e6becd864812ccfcd821d64aac8570ee39f719/attrs-25.1.0-py3-none-any.whl"
},
{
"algorithm": "sha256",
"hash": "8f5c07333d543103541ba7be0e2ce16eeee8130cb0b3f9238ab904ce1e85baff",
"url": "https://files.pythonhosted.org/packages/48/c8/6260f8ccc11f0917360fc0da435c5c9c7504e3db174d5a12a1494887b045/attrs-24.3.0.tar.gz"
"hash": "1c97078a80c814273a76b2a298a932eb681c87415c11dee0a6921de7f1b02c3e",
"url": "https://files.pythonhosted.org/packages/49/7c/fdf464bcc51d23881d110abd74b512a42b3d5d376a55a831b44c603ae17f/attrs-25.1.0.tar.gz"
}
],
"project_name": "attrs",
Expand Down Expand Up @@ -198,7 +198,7 @@
"towncrier<24.7; extra == \"docs\""
],
"requires_python": ">=3.8",
"version": "24.3.0"
"version": "25.1.0"
},
{
"artifacts": [
Expand Down Expand Up @@ -575,28 +575,26 @@
"artifacts": [
{
"algorithm": "sha256",
"hash": "353bc4a8ac4bfc96800ddab349d89c25dec1079f65fd53acdcc1e0b975b21320",
"url": "https://files.pythonhosted.org/packages/1d/8f/c7f227eb42cfeaddce3eb0c96c60cbca37797fa7b34f8e1aeadf6c5c0983/Deprecated-1.2.15-py2.py3-none-any.whl"
"hash": "bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec",
"url": "https://files.pythonhosted.org/packages/6e/c6/ac0b6c1e2d138f1002bcf799d330bd6d85084fece321e662a14223794041/Deprecated-1.2.18-py2.py3-none-any.whl"
},
{
"algorithm": "sha256",
"hash": "683e561a90de76239796e6b6feac66b99030d2dd3fcf61ef996330f14bbb9b0d",
"url": "https://files.pythonhosted.org/packages/2e/a3/53e7d78a6850ffdd394d7048a31a6f14e44900adedf190f9a165f6b69439/deprecated-1.2.15.tar.gz"
"hash": "422b6f6d859da6f2ef57857761bfb392480502a64c3028ca9bbe86085d72115d",
"url": "https://files.pythonhosted.org/packages/98/97/06afe62762c9a8a86af0cfb7bfdab22a43ad17138b07af5b1a58442690a2/deprecated-1.2.18.tar.gz"
}
],
"project_name": "deprecated",
"requires_dists": [
"PyTest-Cov; extra == \"dev\"",
"PyTest; extra == \"dev\"",
"bump2version<1; extra == \"dev\"",
"jinja2~=3.0.3; extra == \"dev\"",
"setuptools; python_version >= \"3.12\" and extra == \"dev\"",
"sphinx<2; extra == \"dev\"",
"tox; extra == \"dev\"",
"wrapt<2,>=1.10"
],
"requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7",
"version": "1.2.15"
"version": "1.2.18"
},
{
"artifacts": [
Expand Down Expand Up @@ -705,21 +703,21 @@
"artifacts": [
{
"algorithm": "sha256",
"hash": "2f150d5096448aa4f8ab26268567bbfeef823769893b39c1a2e1409590939c8a",
"url": "https://files.pythonhosted.org/packages/e3/dc/078bd6b304de790618ebb95e2aedaadb78f4527ac43a9ad8815f006636b6/graphql_core-3.2.5-py3-none-any.whl"
"hash": "78b016718c161a6fb20a7d97bbf107f331cd1afe53e45566c59f776ed7f0b45f",
"url": "https://files.pythonhosted.org/packages/ae/4f/7297663840621022bc73c22d7d9d80dbc78b4db6297f764b545cd5dd462d/graphql_core-3.2.6-py3-none-any.whl"
},
{
"algorithm": "sha256",
"hash": "e671b90ed653c808715645e3998b7ab67d382d55467b7e2978549111bbabf8d5",
"url": "https://files.pythonhosted.org/packages/2e/b5/ebc6fe3852e2d2fdaf682dddfc366934f3d2c9ef9b6d1b0e6ca348d936ba/graphql_core-3.2.5.tar.gz"
"hash": "c08eec22f9e40f0bd61d805907e3b3b1b9a320bc606e23dc145eebca07c8fbab",
"url": "https://files.pythonhosted.org/packages/c4/16/7574029da84834349b60ed71614d66ca3afe46e9bf9c7b9562102acb7d4f/graphql_core-3.2.6.tar.gz"
}
],
"project_name": "graphql-core",
"requires_dists": [
"typing-extensions<5,>=4; python_version < \"3.10\""
],
"requires_python": "<4,>=3.6",
"version": "3.2.5"
"version": "3.2.6"
},
{
"artifacts": [
Expand Down Expand Up @@ -1007,13 +1005,13 @@
"artifacts": [
{
"algorithm": "sha256",
"hash": "1f5b92f5ea334de5922185a6b06900a55aa4641201dd0d0312a76106c61d257c",
"url": "https://files.pythonhosted.org/packages/52/e3/cab2d889ff93d04fbb13d6a1593d9f1c3597a0747f48a426c23b8e0a3d21/pex-2.29.0-py2.py3-none-any.whl"
"hash": "83a10fd288a8f1482e831422a6f5e912a4561151a37e1694e187125e757227ee",
"url": "https://files.pythonhosted.org/packages/df/cc/85b7bf41b71dd324bd53b5d921dd81146499ce3ddb93d3fc2551ddd3b253/pex-2.32.0-py2.py3-none-any.whl"
},
{
"algorithm": "sha256",
"hash": "d89790d7318a668ad5ab1fb63b38dd17b9e59f4d2de36cb13f63b47ba0151b1e",
"url": "https://files.pythonhosted.org/packages/32/43/25c1a429a4abb35fd3b4b0298d58974a9a0e2737d750569490ebe4ba8f48/pex-2.29.0.tar.gz"
"hash": "4f8cd1e0c314c26f213a02b4d0f0dcb4d76cf23e8ac6f2a0e9fabccf58e3ad55",
"url": "https://files.pythonhosted.org/packages/98/d3/e9dfe131d50c10eb21b9fdb0aa1039c933fe79291cb193141ecda4631d1f/pex-2.32.0.tar.gz"
}
],
"project_name": "pex",
Expand All @@ -1022,7 +1020,7 @@
"subprocess32>=3.2.7; python_version < \"3\" and extra == \"subprocess\""
],
"requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,<3.14,>=2.7",
"version": "2.29.0"
"version": "2.32.0"
},
{
"artifacts": [
Expand Down Expand Up @@ -2189,64 +2187,64 @@
"artifacts": [
{
"algorithm": "sha256",
"hash": "4d4fc827a20abe6d544a119896f6b78ee13fe81cbfef416f3f2ddf09a03f0e2e",
"url": "https://files.pythonhosted.org/packages/b0/0b/c7e5d11020242984d9d37990310520ed663b942333b83a033c2f20191113/websockets-14.1-py3-none-any.whl"
"hash": "7a6ceec4ea84469f15cf15807a747e9efe57e369c384fa86e022b3bea679b79b",
"url": "https://files.pythonhosted.org/packages/7b/c8/d529f8a32ce40d98309f4470780631e971a5a842b60aec864833b3615786/websockets-14.2-py3-none-any.whl"
},
{
"algorithm": "sha256",
"hash": "a35f704be14768cea9790d921c2c1cc4fc52700410b1c10948511039be824aac",
"url": "https://files.pythonhosted.org/packages/06/91/bf0a44e238660d37a2dda1b4896235d20c29a2d0450f3a46cd688f43b239/websockets-14.1-cp311-cp311-macosx_10_9_x86_64.whl"
"hash": "9f05702e93203a6ff5226e21d9b40c037761b2cfb637187c9802c10f58e40473",
"url": "https://files.pythonhosted.org/packages/00/8b/bec2bdba92af0762d42d4410593c1d7d28e9bfd952c97a3729df603dc6ea/websockets-14.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"
},
{
"algorithm": "sha256",
"hash": "f6cf0ad281c979306a6a34242b371e90e891bce504509fb6bb5246bbbf31e7b6",
"url": "https://files.pythonhosted.org/packages/11/43/e2dbd4401a63e409cebddedc1b63b9834de42f51b3c84db885469e9bdcef/websockets-14.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
"hash": "3bdc8c692c866ce5fefcaf07d2b55c91d6922ac397e031ef9b774e5b9ea42166",
"url": "https://files.pythonhosted.org/packages/15/b6/504695fb9a33df0ca56d157f5985660b5fc5b4bf8c78f121578d2d653392/websockets-14.2-cp311-cp311-macosx_10_9_universal2.whl"
},
{
"algorithm": "sha256",
"hash": "f95ba34d71e2fa0c5d225bde3b3bdb152e957150100e75c86bc7f3964c450d89",
"url": "https://files.pythonhosted.org/packages/49/69/e6f3d953f2fa0f8a723cf18cd011d52733bd7f6e045122b24e0e7f49f9b0/websockets-14.1-cp311-cp311-musllinux_1_2_i686.whl"
"hash": "efd9b868d78b194790e6236d9cbc46d68aba4b75b22497eb4ab64fa640c3af56",
"url": "https://files.pythonhosted.org/packages/60/d5/a6eadba2ed9f7e65d677fec539ab14a9b83de2b484ab5fe15d3d6d208c28/websockets-14.2-cp311-cp311-musllinux_1_2_aarch64.whl"
},
{
"algorithm": "sha256",
"hash": "3c3deac3748ec73ef24fc7be0b68220d14d47d6647d2f85b2771cb35ea847aa1",
"url": "https://files.pythonhosted.org/packages/5a/8a/0849968d83474be89c183d8ae8dcb7f7ada1a3c24f4d2a0d7333c231a2c3/websockets-14.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"hash": "34277a29f5303d54ec6468fb525d99c99938607bc96b8d72d675dee2b9f5bf1d",
"url": "https://files.pythonhosted.org/packages/64/22/e5f7c33db0cb2c1d03b79fd60d189a1da044e2661f5fd01d629451e1db89/websockets-14.2-cp311-cp311-musllinux_1_2_x86_64.whl"
},
{
"algorithm": "sha256",
"hash": "cc1fc87428c1d18b643479caa7b15db7d544652e5bf610513d4a3478dbe823d0",
"url": "https://files.pythonhosted.org/packages/6d/d6/7063e3f5c1b612e9f70faae20ebaeb2e684ffa36cb959eb0862ee2809b32/websockets-14.1-cp311-cp311-musllinux_1_2_aarch64.whl"
"hash": "22441c81a6748a53bfcb98951d58d1af0661ab47a536af08920d129b4d1c3473",
"url": "https://files.pythonhosted.org/packages/6b/a9/37531cb5b994f12a57dec3da2200ef7aadffef82d888a4c29a0d781568e4/websockets-14.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
},
{
"algorithm": "sha256",
"hash": "9481a6de29105d73cf4515f2bef8eb71e17ac184c19d0b9918a3701c6c9c4f23",
"url": "https://files.pythonhosted.org/packages/70/ff/f31fa14561fc1d7b8663b0ed719996cf1f581abee32c8fb2f295a472f268/websockets-14.1-cp311-cp311-musllinux_1_2_x86_64.whl"
"hash": "1a5a20d5843886d34ff8c57424cc65a1deda4375729cbca4cb6b3353f3ce4142",
"url": "https://files.pythonhosted.org/packages/76/57/a338ccb00d1df881c1d1ee1f2a20c9c1b5b29b51e9e0191ee515d254fea6/websockets-14.2-cp311-cp311-musllinux_1_2_i686.whl"
},
{
"algorithm": "sha256",
"hash": "449d77d636f8d9c17952628cc7e3b8faf6e92a17ec581ec0c0256300717e1512",
"url": "https://files.pythonhosted.org/packages/97/ed/c0d03cb607b7fe1f7ff45e2cd4bb5cd0f9e3299ced79c2c303a6fff44524/websockets-14.1-cp311-cp311-macosx_10_9_universal2.whl"
"hash": "c93215fac5dadc63e51bcc6dceca72e72267c11def401d6668622b47675b097f",
"url": "https://files.pythonhosted.org/packages/81/26/ebfb8f6abe963c795122439c6433c4ae1e061aaedfc7eff32d09394afbae/websockets-14.2-cp311-cp311-macosx_10_9_x86_64.whl"
},
{
"algorithm": "sha256",
"hash": "7048eb4415d46368ef29d32133134c513f507fff7d953c18c91104738a68c3b3",
"url": "https://files.pythonhosted.org/packages/bd/4f/ef886e37245ff6b4a736a09b8468dae05d5d5c99de1357f840d54c6f297d/websockets-14.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"
"hash": "5059ed9c54945efb321f097084b4c7e52c246f2c869815876a69d1efc4ad6eb5",
"url": "https://files.pythonhosted.org/packages/94/54/8359678c726243d19fae38ca14a334e740782336c9f19700858c4eb64a1e/websockets-14.2.tar.gz"
},
{
"algorithm": "sha256",
"hash": "398b10c77d471c0aab20a845e7a60076b6390bfdaac7a6d2edb0d2c59d75e8d8",
"url": "https://files.pythonhosted.org/packages/f4/1b/380b883ce05bb5f45a905b61790319a28958a9ab1e4b6b95ff5464b60ca1/websockets-14.1.tar.gz"
"hash": "0a52a6d7cf6938e04e9dceb949d35fbdf58ac14deea26e685ab6368e73744e4c",
"url": "https://files.pythonhosted.org/packages/96/63/900c27cfe8be1a1f2433fc77cd46771cf26ba57e6bdc7cf9e63644a61863/websockets-14.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
},
{
"algorithm": "sha256",
"hash": "b1f3628a0510bd58968c0f60447e7a692933589b791a6b572fcef374053ca280",
"url": "https://files.pythonhosted.org/packages/ff/b8/7185212adad274c2b42b6a24e1ee6b916b7809ed611cbebc33b227e5c215/websockets-14.1-cp311-cp311-macosx_11_0_arm64.whl"
"hash": "1c9b6535c0e2cf8a6bf938064fb754aaceb1e6a4a51a80d884cd5db569886910",
"url": "https://files.pythonhosted.org/packages/a1/c6/1435ad6f6dcbff80bb95e8986704c3174da8866ddb751184046f5c139ef6/websockets-14.2-cp311-cp311-macosx_11_0_arm64.whl"
}
],
"project_name": "websockets",
"requires_dists": [],
"requires_python": ">=3.9",
"version": "14.1"
"version": "14.2"
},
{
"artifacts": [
Expand Down Expand Up @@ -2319,8 +2317,8 @@
"only_wheels": [],
"overridden": [],
"path_mappings": {},
"pex_version": "2.29.0",
"pip_version": "24.3.1",
"pex_version": "2.32.0",
"pip_version": "25.0",
"prefer_older_binary": false,
"requirements": [
"PyGithub==2.4.0",
Expand All @@ -2337,7 +2335,7 @@
"mypy-typing-asserts==0.1.1",
"node-semver==0.9.0",
"packaging==21.3",
"pex==2.29.0",
"pex==2.32.0",
"psutil==5.9.8",
"pydevd-pycharm==203.5419.8",
"pytest<7.1.0,>=6.2.4",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Ubuntu 22 ARM64 AMI.
It may occasionally be necessary to update this AMI, for example to pick up updates to the underlying standard
AMI.

To do so with Packer, see instructions in [build-support/packer/runson/runson.pkr.hcl]()
To do so with Packer, see instructions in `build-support/packer/runson/runson.pkr.hcl`

To do so manually:

Expand Down
2 changes: 1 addition & 1 deletion docs/docs/contributions/releases/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@
- [Release strategy](./release-strategy.mdx)
- [Release process](./release-process.mdx)
- [GitHub Actions macOS runners](./github-actions-macos-arm64-runners.mdx)
- [GitHub Actions aarch64 runners](./github-actions-macos-aarch64-runners.mdx)
- [GitHub Actions Linux aarch64 runners](./github-actions-linux-aarch64-runners.mdx)
7 changes: 6 additions & 1 deletion docs/notes/2.25.x.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ Several improvements to the Python Build Standalone backend (`pants.backend.pyth

Changed references to Python Build Standalone to not refer to the [GitHub organization](https://github.com/astral-sh/python-build-standalone) as described in [Transferring Python Build Standalone Stewardship to Astral](https://gregoryszorc.com/blog/2024/12/03/transferring-python-build-standalone-stewardship-to-astral/).

The default version of the [Pex](https://docs.pex-tool.org/) tool has been updated from 2.20.3 to [2.29.0](https://github.com/pex-tool/pex/releases/tag/v2.29.0). Among many improvements and bug fixes, this unlocks support for pip [24.3.1](https://pip.pypa.io/en/stable/news/#v24-3-1).
The default version of the [Pex](https://docs.pex-tool.org/) tool has been updated from 2.20.3 to [2.32.0](https://github.com/pex-tool/pex/releases/tag/v2.32.0). Among many improvements and bug fixes, this unlocks support for pip [24.3.1](https://pip.pypa.io/en/stable/news/#v24-3-1) and Pip [25.0](https://pip.pypa.io/en/stable/news/#v25).

The `pants.backend.experimental.python.lint.ruff.check` backend [now supports](https://github.com/pantsbuild/pants/pull/21783) including [Ruff's output file as a report](https://www.pantsbuild.org/2.25/docs/python/overview/linters-and-formatters#bandit-flake8-pylint-and-ruff-report-files).

Expand Down Expand Up @@ -145,6 +145,11 @@ install_from_resolve = "your-resolve-name"
# BUILD
python_requirement(name="black", resolve="your-resolve-name", requirements=["black>=23,<24"])
```

#### Terraform

Bugfix: fixed an issue with cache concurrency. This affected initialisation of modules without lockfiles (for example, with the `check` goal) and the generation of lockfiles. ([#21805](https://github.com/pantsbuild/pants/pull/21805))

#### Shell

The previously deprecated `[shell-setup].tailor` option has now been removed. See [`[shell-setup].tailor_sources`](https://www.pantsbuild.org/2.25/reference/subsystems/shell-setup#tailor_sources) and [`[shell-setup].tailor_shunit2_tests`](https://www.pantsbuild.org/2.25/reference/subsystems/shell#tailor_shunit2_tests) to update.
Expand Down
2 changes: 1 addition & 1 deletion src/python/pants/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.25.0.dev4
2.25.0.dev5
6 changes: 3 additions & 3 deletions src/python/pants/backend/python/util_rules/pex_cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ class PexCli(TemplatedExternalTool):
name = "pex"
help = "The PEX (Python EXecutable) tool (https://github.com/pex-tool/pex)."

default_version = "v2.29.0"
default_version = "v2.32.0"
default_url_template = "https://github.com/pex-tool/pex/releases/download/{version}/pex"
version_constraints = ">=2.13.0,<3.0"

Expand All @@ -65,8 +65,8 @@ def default_known_versions(cls):
(
cls.default_version,
plat,
"8307cb6f5ce09f82e4f5e7858428237cb6440fc91fcb723dc1e09cb2d57e2c2f",
"4370181",
"9f692a652ef6af7e48f1ef392145b4e55145bc72d3ddc540eeb5ec01a09da15c",
"4376835",
)
)
for plat in ["macos_arm64", "macos_x86_64", "linux_x86_64", "linux_arm64"]
Expand Down
1 change: 0 additions & 1 deletion src/python/pants/backend/python/util_rules/pex_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,6 @@ def test_pex_execution(
sources=sources,
)

assert "pex" not in pex_data.files
assert "main.py" in pex_data.files
assert "subdir/sub.py" in pex_data.files

Expand Down
13 changes: 11 additions & 2 deletions src/python/pants/backend/terraform/goals/deploy_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
from __future__ import annotations

import json
import shlex

import pytest

Expand All @@ -16,6 +17,14 @@
standard_deployment = standard_deployment


def _extract_terraform_argv_from_script(script_argv) -> tuple[str, ...]:
"""Extract the argv of the invocation of Terraform from its launcher script."""
script = script_argv[2]
tf_invocation = script.split("&&")
argv = shlex.split(tf_invocation[-1])
return tuple(argv)


def test_run_terraform_deploy(rule_runner: RuleRunner, standard_deployment, tmpdir) -> None:
"""Test end-to-end running of a deployment."""
rule_runner.write_files(standard_deployment.files)
Expand Down Expand Up @@ -44,7 +53,7 @@ def test_deploy_terraform_forwards_args(rule_runner: RuleRunner, standard_deploy
deploy_process = rule_runner.request(DeployProcess, [field_set])
assert deploy_process.process

argv = deploy_process.process.process.argv
argv = _extract_terraform_argv_from_script(deploy_process.process.process.argv)

assert "-chdir=src/tf" in argv, "Did not find expected -chdir"
assert "-var-file=stg.tfvars" in argv, "Did not find expected -var-file"
Expand All @@ -70,7 +79,7 @@ def test_deploy_terraform_adheres_to_dry_run_flag(
deploy_process = rule_runner.request(DeployProcess, [field_set])
assert deploy_process.process

argv = deploy_process.process.process.argv
argv = _extract_terraform_argv_from_script(deploy_process.process.process.argv)

assert action in argv, f"Expected {action} in argv"
assert not_action not in argv, f"Did not expect {not_action} in argv"
Expand Down
Loading

0 comments on commit a01d8e2

Please sign in to comment.