Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Silence the scie-pants version warning when NO_SCIE_WARNING=1 (Cherry-pick of #19660) #19702

Merged
merged 1 commit into from
Aug 29, 2023

Conversation

WorkerPants
Copy link
Member

Before this fix, #19654 was causing pants ... commands in the pants repo to explode and not work. This fixes it by silencing them in the pants repo, keying off the existing NO_SCIE_WARNING=1 mechanism.

Running scie-pants in the pants repo goes through a special bootstrap mechanism, that's bootstrapped outside the scie-pants processing on purpose. This in particular means that the scie-pants version check from #19600 / #19654 doesn't work, because it's not invoked via that mechanism. Fortunately, this can just be treated the same as the "am I running in scie-pants at all?" check, looking for the env var set by the pants repo bootstrapper.

The version check has to be strict about the SCIE_PANTS_VERSION environment variable, and it cannot just do nothing when that's not set. The goal with this check is to help people using upgrade to scie-pants 0.9+ before Pants 2.18 is released, because Pants 2.18 has a new distribution mechanism that's only supported by scie-pants 0.9+ (this is why we needed to land #19654 last minute, to be in Pants 2.17). scie-pants only sets the environment variable in version 0.9 too, so a user using scie-pants 0.8.0 will be running Pants 2.17 without setting SCIE_PANTS_VERSION, and so, to help them upgrade, we have to assume "doesn't exist" = "scie-pants is too old". The pants repo custom bootstrap doesn't set this env var, and hence used to fall into that trap.

Before this fix, #19654 was causing `pants ...` commands in the pants
repo to explode and not work. This fixes it by silencing them in the
pants repo, keying off the existing `NO_SCIE_WARNING=1` mechanism.

Running scie-pants in the pants repo goes through a special bootstrap
mechanism, that's bootstrapped outside the scie-pants processing on
purpose. This in particular means that the scie-pants version check from
#19600 / #19654 doesn't work, because it's not invoked via that
mechanism. Fortunately, this can just be treated the same as the "am I
running in scie-pants at all?" check, looking for the env var set by the
pants repo bootstrapper.

The version check has to be strict about the `SCIE_PANTS_VERSION`
environment variable, and it cannot just do nothing when that's not set.
The goal with this check is to help people using upgrade to scie-pants
0.9+ _before_ Pants 2.18 is released, because Pants 2.18 has a new
distribution mechanism that's only supported by scie-pants 0.9+ (this is
why we needed to land #19654 last minute, to be in Pants 2.17).
scie-pants only sets the environment variable in version 0.9 too, so a
user using scie-pants 0.8.0 will be running Pants 2.17 without setting
`SCIE_PANTS_VERSION`, and so, to help them upgrade, we have to assume
"doesn't exist" = "scie-pants is too old". The pants repo custom
bootstrap doesn't set this env var, and hence used to fall into that
trap.
@WorkerPants WorkerPants added this to the 2.18.x milestone Aug 29, 2023
@WorkerPants WorkerPants added the category:internal CI, fixes for not-yet-released features, etc. label Aug 29, 2023
@huonw huonw merged commit 502049e into 2.18.x Aug 29, 2023
24 checks passed
@huonw huonw deleted the cherry-pick-19660-to-2.18.x branch August 29, 2023 23:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:internal CI, fixes for not-yet-released features, etc.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants