tree 377553b0b3650bb44743da4703be148b36e90bcf
parent 905af697d68e4a87d037a721b385f4d26f8ba848
author Ignas Anikevicius <240938+aignas@users.noreply.github.com> 1723749110 +0300
committer GitHub <noreply@github.com> 1723749110 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJmvlMGCRC1aQ7uu5UhlAAA9RAQAG2/tFUTX08piMd0PjYfDR1X
 lmeH5SWQeyW8++mp1B5uTYGeFNntad3deUh99K072adXg7S0k7Det0/WhHsqVOVa
 GrwkVjRf/RsWxFz0mcG3PvJQtx6g2phbccR/dfofWsFUyHpwP1ie4Xh11f1QlUDX
 xPYtMBuQYB8LaCSus4QTlc4xJFeluwt400T3nOWQPbVQczFDTd2lVGCwJ3I5NLKX
 sBMQ1FPJeWxwhD6DEb4BL+yGpc5O6DRYryEW16ZzV+Yjl3NFZdnFxJygPvGVTOZ+
 DXgXwU0/OikOA/WVloCPd7qfrkTNAw6ZIwnBMl2PXjVszM/VXEBKWvCrbNSR0Ox7
 X9QU3fG6UFGYNTYLf3lJ68Qy45ABUtT0/HP8Ofs/yJC5OqQaa+nSn2LNER9n/L8S
 9nJmCYOh6WVu++Fa2CHV33dflh+TZNC3V/JvuYHGupm8/eMqEy6yhY9tCqKIJqhg
 zYFJWlEtwaG+zgM4gnMsBcss6YyIK6VdGkr5nn5SFpZFLmJsmtVbh4RBYn8NlL08
 SFyvEYf/k2v5DsRLyUnsLJJgjO9urdvq7uumVNiPs8+l5NctH8kASrHxffYno29n
 UmZP9gsZXa4t82Nl0+taUS6c5ZY/npyAl7BPEUBq2v2kQLdp8Q9ktH7+09zWG/Zj
 +1LksR3MvI+kcdhfFYn7
 =3bJ+
 -----END PGP SIGNATURE-----
 

feat(pypi): support env markers in requirements files (#2059)

Before this change the `all_requirements` and related constants will
have
packages that need to be installed only on specific platforms and will
mean
that users relying on those constants (e.g. `gazelle`) will need to do
extra
work to exclude platform-specific packages. The package managers that
that
support outputting such files now include `uv` and `pdm`. This might be
also
useful in cases where we attempt to handle non-requirements lock files.

Note, that the best way to handle this would be to move all of the
requirements
parsing code to Python, but that may cause regressions as it is a much
bigger
change. This is only changing the code so that we are doing extra
processing
for the requirement lines that have env markers. The lines that have no
markers
will not see any change in the code execution paths and the python
interpreter
will not be downloaded.

We also use the `*_ctx.watch` API where available to correctly
re-evaluate the
markers if the `packaging` Python sources for this change.

Extra changes that are included in this PR:
- Extend the `repo_utils` to have a method for `arch` getting from the
`ctx`.
- Change the `local_runtime_repo` to perform the validation not relying
on the
  implementation detail of the `get_platforms_os_name`.
- Add `$(UV)` make variable for the `uv:current_toolchain` so that we
can
  generate the requirements for `sphinx` using `uv`.
- Swap the requirement generation using `genrule` and `uv` for `sphinx`
and co
so that we can test the `requirement` marker code. Note, the
`requirement`
  markers are not working well with the `requirement_cycles`.

Fixes #1105.
Fixes #1868.
Work towards #260, #1975.
Related #1663.

---------

Co-authored-by: Richard Levasseur <rlevasseur@google.com>