https://pantsbuild.org/ logo
c

curved-television-6568

01/10/2022, 11:48 AM
This may be known/wip, but toying around a bit with
pex3
and I wonder if this is expected/correct behavior: 🧵
Copy code
$ pex3 lock create pantsbuild.pants | jq '.locked_resolves[] | .locked_requirements[] | select(.project_name == "setuptools")'
{
  "artifacts": [
    {
      "algorithm": "sha256",
      "hash": "60d78588f15b048f86e35cdab73003d8b21dd45108ee61a6693881a427f22073",
      "url": "<https://files.pythonhosted.org/packages/4b/b9/71687c5d2034c863db1db2e0704f5e27581ff3cb44d7f293968c5e08ceb3/setuptools-57.5.0-py3-none-any.whl>"
    }
  ],
  "project_name": "setuptools",
  "requirement": "setuptools<58.0,>=56.0.0",
  "version": "57.5",
  "via": [
    "pantsbuild.pants"
  ]
}
{
  "artifacts": [
    {
      "algorithm": "sha256",
      "hash": "68eb94073fc486091447fcb0501efd6560a0e5a1839ba249e5ff3c4c93f05f90",
      "url": "<https://files.pythonhosted.org/packages/eb/53/0dd4c7960579da8be13fa9b2c2591643d37f323e3d79f8bc8b1b6c8e6217/setuptools-60.5.0-py3-none-any.whl>"
    }
  ],
  "project_name": "setuptools",
  "requirement": "setuptools>=40.8.0",
  "version": "60.5",
  "via": []
}
As that, when I run
pex3 lock export
gives me a constraints file with two entries for setuptools in it, which feels… not right. Am I mistaken here?
Copy code
setuptools==57.5 # setuptools<58.0,>=56.0.0 via -> pantsbuild.pants via -> -r 3rdparty/requirements.txt (line 2) \
    --hash:sha256=60d78588f15b048f86e35cdab73003d8b21dd45108ee61a6693881a427f22073 # <https://files.pythonhosted.org/packages/4b/b9/71687c5d2034c863db1db2e0704f5e27581ff3cb44d7f293968c5e08ceb3/setuptools-57.5.0-py3-none-any.whl>
setuptools==60.5 # setuptools>=40.8.0 \
    --hash:sha256=68eb94073fc486091447fcb0501efd6560a0e5a1839ba249e5ff3c4c93f05f90 # <https://files.pythonhosted.org/packages/eb/53/0dd4c7960579da8be13fa9b2c2591643d37f323e3d79f8bc8b1b6c8e6217/setuptools-60.5.0-py3-none-any.whl>
Oh, should’ve perhaps started with trying this on the latest version… as I think I may have an really old one
Copy code
$ pex3 --version
2.1.51
… I’ll update and try again…
ah, no, same behavior on
2.1.61
as well..
h

happy-kitchen-89482

01/10/2022, 2:07 PM
Yeah that seems wrong? @enough-analyst-54434?
e

enough-analyst-54434

01/10/2022, 2:42 PM
Looks like PEP-517 build requirements are getting recorded: https://github.com/pantsbuild/pex/blob/6720d4c64fb033e8418b2e14535512baa01b9a2d/pex/vendor/_vendored/pip/pip/_internal/pyproject.py#L118-L130 From my phone, but I'll file an issue.
To be clear, pex3 is wip (see
pex3 --help
), but I do appreciate bug reports (GH issues ideally).
đź’Ż 1
❤️ 1
c

curved-television-6568

01/10/2022, 3:01 PM
Know it’s wip, wasn’t exactly sure if this was a bug or not.. I can file it, if you’re still on the phone..
e

enough-analyst-54434

01/10/2022, 3:47 PM
Thanks. I don't repro and its much easier to work this out in an issue.
đź‘Ť 1