-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[MNT] remove redundant install-only CI jobs #5718
Conversation
FYI @yarnabrina |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As I just commented at #5706 (comment), I think this is risky as it's not going to check anything for PR's created by Dependabo, or any other PR which just modifies pyproject.toml
and nothing else. It's not going to run unit tests either way, but at least documented extra will be a valid specification.
My personal preference will be to not merge this, but if it's significantly more inconvenient for you and other reviewers because of high number of jobs than it'd be hypothetically safer for a potential bad dependency upgrade PR, please ignore this comment.
@yarnabrina, I am getting confused, can you please phrase your statement as
|
I'm unfamiliar with this format, but this is my attempt at it, assuming absence of "old CI".
|
Thanks - could you kindly be explicit: what is the failure condition that is not covered? Is it " |
I don't know what you're asking, I'm very confused. I'm talking about cases like #5442 which updates a dependency specification (in this example upgrade upper bound of pycatch22) which is not supported in all environments (in this example, windows). This situation will not be tested at all in new CI if you merge this PR. If this is not merged, validate-extras workflow will identify the environment where the updated specification is unsupported. |
Very sorry, seems like a terminology, definition, or other commuication issue to me - that is why I was suggesting a clean write-up with defined terms. Maybe if I start: "failure condition" -> a logical condition which a test or set of tests covers. "X is the failure condition for test(s) Y" means, if X fails, the the test Y fails. Also: "Y certifies for X". Can also be used in the sense that "Y certifies for a bugfix of X". Example: My question can be phrased as: what is the exact failure condition that you are talking about, and please explain, why does only |
Given your above explanation, I think #5718 (comment) answers it.
Someone (or dependabot) modifies a dependency specification (one of module-specific-dependency-sets or all_extras_pandas2) and the modification is not supported in all 3 operating system * 5 python combinations (at least one incompatible environment).
If the PR does not modify anything other than So your expectation of indirect installation validation during these workflows won't be fulfilled, which is the basis of this PR as per my understanding. |
I see. Understanding that, I think the run condition should be " |
After discussion in #5706, I understand this is not redundant but triggered only if |
It's that way already when CI is triggered from a PR, referring the link here for future references.
|
This PR removes redundant install-only CI jobs, see discussion #5706 (comment)
Why redundant: as far as I understand, we install the same environments anyway in later jobs that include pytest runs.
So, if the install would fail, we would equally notice, and the later test jobs would simply not proceed beyond the install step.