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

Unpin versions for CI tools #2410

Closed
wants to merge 2 commits into from
Closed

Conversation

avylove
Copy link
Contributor

@avylove avylove commented Nov 17, 2022

In order to avoid stale tools and to catch issues early, CI tools should pull the latest version.

This removes version pinning for dev and CI tools and fixes typing errors raised in newer versions of mypy.

@squirrelsc
Copy link
Member

Let's merge it next Monday.

@LiliDeng
Copy link
Collaborator

@squirrelsc is it right time to merge it? any testing need to do done before merging it?

@squirrelsc
Copy link
Member

@squirrelsc is it right time to merge it? any testing need to do done before merging it?

It's ok to merge it today or next week.

@squirrelsc squirrelsc self-requested a review November 23, 2022 22:36
Copy link
Member

@squirrelsc squirrelsc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can upgrade versions of tool, but not unpin them. The CI pipeline is being broken by flake8 upgrading.

@avylove
Copy link
Contributor Author

avylove commented Nov 24, 2022

We can upgrade versions of tool, but not unpin them. The CI pipeline is being broken by flake8 upgrading.

I don't see how the internal CI pipeline is related, the version used there hasn't changed. It's best to unpin so these things get caught early. Otherwise you have what we currently have with out-of-date validation tools.

@squirrelsc
Copy link
Member

We can upgrade versions of tool, but not unpin them. The CI pipeline is being broken by flake8 upgrading.

I don't see how the internal CI pipeline is related, the version used there hasn't changed. It's best to unpin so these things get caught early. Otherwise you have what we currently have with out-of-date validation tools.

I haven't said it happened on internal CI pipelines. But if we use the same way to unpin upstream packages in internal pipelines, that will happen someday. And we need to comeback to discuss and investigate in holidays again. The flake8 issue is more like a regression, instead of a new feature. It blocks me to merge some PRs. Even flake8 brings a new validation, it applies to existing code as a debt, which should be fixed by maintainers, instead of current PRs' contributors. I have to wait it's fixed. Out-of-date validation tools are cost, which can be accepted, but build breaks are not.

@avylove
Copy link
Contributor Author

avylove commented Dec 5, 2022

We can upgrade versions of tool, but not unpin them. The CI pipeline is being broken by flake8 upgrading.

I don't see how the internal CI pipeline is related, the version used there hasn't changed. It's best to unpin so these things get caught early. Otherwise you have what we currently have with out-of-date validation tools.

I haven't said it happened on internal CI pipelines. But if we use the same way to unpin upstream packages in internal pipelines, that will happen someday. And we need to comeback to discuss and investigate in holidays again. The flake8 issue is more like a regression, instead of a new feature. It blocks me to merge some PRs. Even flake8 brings a new validation, it applies to existing code as a debt, which should be fixed by maintainers, instead of current PRs' contributors. I have to wait it's fixed. Out-of-date validation tools are cost, which can be accepted, but build breaks are not.

It's all one in the same and unpinning has the lowest maintenance cost. What you're describing is signal, which is what we want. If someone submits a PR and gets and error unrelated to their PR, they should be able to identify it. We fix it quickly or pin temporarily. The alternative is we need to come up with a system to automatically generate PRs for the next version. It's too much work to do that way which is why the standard way is to have no upper bound pinning.

@avylove
Copy link
Contributor Author

avylove commented Jan 24, 2023

Closing this since it's now handled by BumpDeps.
Typing changes for newer versions of MyPY merged into #2545

@avylove avylove closed this Jan 24, 2023
@avylove avylove deleted the Unpin-CI-tools branch August 8, 2023 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants