-
Notifications
You must be signed in to change notification settings - Fork 74
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
autotick-bot opening unexpected PRs for pre-releases, only sometimes #2642
Comments
The bot judges pre-releases using PEP440 syntax, not github's label. The version tags you are making are not pre-release version tags. See this documentation https://packaging.python.org/en/latest/specifications/version-specifiers/#pre-release-separators for how to make a pre-release tag. I totally, understand if you do not want to change how you tag pre-releases. However, the bot won't be able to handle non-PEP440 pre-releases in all cases, since it uses multiple ways to find versions, including just trying new version numbers in the recipe URLs. |
Hey @beckermr thanks for your quick response! Unfortunately, I don't have any ownership over the project, I'm just helping get it on Conda Forge :) That said, I do question this behavior by the autotick bot. Quarto, the project in question, is not a Python project, and I feel leveraging this PEP440-specified definition of pre-release on projects which could be in any language is unintuitive at least. Since we used GitHub, not PyPI, as our release source, I would expect a more language-agnostic behavior here, which is why I assumed pre-releases were identified by the pre-release boolean property of a GitHub Release. Is there openness to changing this behavior when GitHub Releases are used as the source? |
For sure I am open to it, but I don't think we'll be able to produce a solution that catches all cases. Note also that pep440 is adopted by conda which packages a lot more than python. So the bot constraint on pre-release versions is not python-specific but is rather conda-specific. |
Ah, TIL. Thanks :)
Yeah, I see what you mean. Having to account for PEP440 no matter the language of the package is a constraint I hadn't considered! |
So I looked at the .atom feed that we use to get github releases and I do not see any pre-release markers in it: https://github.com/quarto-dev/quarto-cli/releases.atom Thus I don't think we'll be able to address this one at all. :( |
Oof! What about querying the GitHub Releases API to enrich the data we get from the atom feed? That does contain the pre-release property. |
It likely does but those api requests are very expensive. |
Expensive enough to rule out the API approach? Or is some experimentation needed to determine that? I'd be happy to help out. |
We have about 35 separate processes running at any given time fetching the latest versions of packages in conda forge. We'd very quickly exhaust any reasonable API limit. |
👍 Thanks for your time considering. In light of this, I'd like to disable the autotick bot for this feedstock, as it will only produce undesirable noise and work for me and the other maintainers for ~months until the next actual release. I don't see any way to do this in the docs for |
Let me look into this. If we don't have an option already I will add one. |
I've opened PR #2646 and will merge it once the tests pass. To enable it on your feedstock, edit the
It will take a few hours for the feature to go live, so you might get one last PR before then if there is an upstream release already queued up. |
Amazing, thanks so much @beckermr ! Is there anything I can do to help with updating docs, for example? |
Thank you for the offer! The docs are in conda-smithy unfortunately and we have some restructuring to do. So don't worry about it! |
We were receiving PRs for Quarto pre-releases, and this is expected behavior of the bot for now. See: regro/cf-scripts#2642
We were receiving PRs for Quarto pre-releases, and this is expected behavior of the bot for now. See: regro/cf-scripts#2642
We were receiving PRs for Quarto pre-releases, and this is expected behavior of the bot for now. See: regro/cf-scripts#2642
We were receiving PRs for Quarto pre-releases, and this is expected behavior of the bot for now. See: regro/cf-scripts#2642
Hey @beckermr one more question for you! If we have this skip enable turned on, will Thanks again for everything! |
That command will NOT be disabled. It runs through a different code base. However, it has to be user initiated so the solution there is simply to not do that. |
Great, thanks, that's exactly what we needed to know! 🙇 |
@mfisher87 You can filter pre-releases using this bot:
version_updates:
sources: [githubreleases] |
Duplicate of #324 |
Amazing, thank you for this new granularity! Trying it out for the Quarto feedstock. |
I think we can close this issue now; that change addresses the behavior that I was surprised by! |
I don't really understand why this is happening, but the autotick-bot is only sometimes opening PRs for pre-releases on this repo: https://github.com/quarto-dev/quarto-cli/releases
Until we got a PR for 1.5.6 a while back, we had never seen a PR for a pre-release. We were especially confused about this because 1.5.6 was an older pre-release at the time. And just now, we got a PR for 1.5.37, which is actually the latest pre-release. But we didn't get any PRs for any pre-releases in between!
It seems to me to be a bug, but I'm not really sure. Thoughts?
On this feedstock, we don't want any PRs for pre-releases.
The text was updated successfully, but these errors were encountered: