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

Consider release date on crates.io for minimumReleaseAge #17764

Closed
TitanNano opened this issue Sep 13, 2022 · 10 comments · Fixed by #31467
Closed

Consider release date on crates.io for minimumReleaseAge #17764

TitanNano opened this issue Sep 13, 2022 · 10 comments · Fixed by #31467
Assignees
Labels
datasource:crate Crate datasource (Rust) priority-4-low Low priority, unlikely to be done unless it becomes important to more people type:feature Feature (new functionality)

Comments

@TitanNano
Copy link

What would you like Renovate to be able to do?

The stabilityDays configuration does currently not work for rust dependencies. This is caused by the fact that no release date is fetched from crates.io.

Renovate bot currently relies on the standard registry schema, which does not contain a release date. The crates.io API exposes a release date for all crate versions, though.

We would like to use the stabilityDays option with rust dependencies.

If you have any ideas on how this should be implemented, please tell us here.

Version info for crate.io can be fetched either for all versions via https://crates.io/api/v1/crates/<crate>/versions or for individual versions via https://crates.io/api/v1/crates/<crate>/<version>.

Is this a feature you are interested in implementing yourself?

No

@TitanNano TitanNano added priority-5-triage status:requirements Full requirements are not yet known, so implementation should not be started type:feature Feature (new functionality) labels Sep 13, 2022
@viceice viceice added the datasource:crate Crate datasource (Rust) label Sep 13, 2022
@rarkins
Copy link
Collaborator

rarkins commented Sep 13, 2022

The crates.io API has some performance issues which leads to them heavily rate limiting certain endpoints. This might include the one you suggest. @Turbo87 can hopefully advise

@Turbo87
Copy link
Contributor

Turbo87 commented Sep 13, 2022

currently on vacation but I can check once I'm back. the former might need pagination depending on our needs, the latter might work but has an N+1 requests issue.

@TitanNano

This comment was marked as resolved.

@ahollmann
Copy link

This seems to be related: rust-lang/crates.io#5302

@rarkins rarkins changed the title Consider release date on crates.io for stabilityDays Consider release date on crates.io for minimumReleaseAge May 31, 2023
@rarkins
Copy link
Collaborator

rarkins commented May 31, 2023

Note: stabilityDays has been renamed to minimumReleaseAge

@nipunn1313
Copy link

nipunn1313 commented Sep 4, 2023

hi - I ran into this issue recently. I found it rather confusing because minimumReleaseAge depends on this field being set by the datasource: "releaseTimestamp": "2023-07-28T14:25:18.635Z". Not all data sources support it (particularly crates.io as noted in this task).

I think at minimum, it should be made very clear when minimumReleaseAge is being ignored because the dep manager lacks support for the feature (perhaps on the dependency dashboard).

And I would love to see it built for cargo!
minimumReleaseAge is one of the killer features of renovate over alternatives for us. Appreciate the work.

@rarkins rarkins added status:ready priority-4-low Low priority, unlikely to be done unless it becomes important to more people and removed priority-5-triage status:requirements Full requirements are not yet known, so implementation should not be started labels Oct 1, 2023
@pwnorbitals

This comment has been minimized.

@0xarvin
Copy link

0xarvin commented Apr 17, 2024

@rarkins @Turbo87 looks like the N+1 issue with crates is resolved with rust-lang/crates.io#8037, is there anything else blocking this?

@HonkingGoose
Copy link
Collaborator

I think at minimum, it should be made very clear when minimumReleaseAge is being ignored because the dep manager lacks support for the feature (perhaps on the dependency dashboard).

See discussion:

@renovate-release
Copy link
Collaborator

🎉 This issue has been resolved in version 38.119.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 11, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
datasource:crate Crate datasource (Rust) priority-4-low Low priority, unlikely to be done unless it becomes important to more people type:feature Feature (new functionality)
Projects
None yet
Development

Successfully merging a pull request may close this issue.