Skip to content

Remove FetchResources trait (breaking)#269

Merged
foresterre merged 1 commit intomainfrom
refactor/fetch_resources
Apr 1, 2025
Merged

Remove FetchResources trait (breaking)#269
foresterre merged 1 commit intomainfrom
refactor/fetch_resources

Conversation

@foresterre
Copy link
Owner

  • Fetching resources is often dependent on what is being fetched
  • Trying to be generic over this is better left of to those who depend on this crate
  • Especially since they often will only use a subset, or even only one client
  • In addition, letting each client sort this out for themselves allows us to also

This is also the first of many PR's of a larger refactor with the following goals

  • Merging sources: sometimes we want to combine multiple sources to come to a better release index. For example, some sources are updated quicker after a release is published than others, some are easier to fetch, but are also incomplete with respect to data they contain. The merged index should have a more complete view than the individual parts.
    • Consider different merging strategies; we don't always have data with timestamps, and not always is later also more correct.
  • A built in source of truth index for releases in the past, baked statically into a crate (this is mostly useful if you can merge it with newer data)
  • More metadata: currently we only cared about versions, and let dependencies gather additional metadata themselves, sometimes in an unpure way of getting it from the cache collected by this crate
  • More than just stable: so far we only implemented fetching stable releases, but we care also about beta and nightly releases. We will skip the early alpha and other pre-1.0 releases.

@foresterre foresterre force-pushed the refactor/fetch_resources branch from 63a84c0 to 17fc9f0 Compare March 30, 2025 15:12
@foresterre foresterre merged commit 623d78a into main Apr 1, 2025
16 of 17 checks passed
@foresterre foresterre deleted the refactor/fetch_resources branch April 1, 2025 12: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.

1 participant