Skip to content

refactor: split branches from channels in data model#1177

Open
fricklerhandwerk wants to merge 3 commits into
NixOS:mainfrom
fricklerhandwerk:branch-model
Open

refactor: split branches from channels in data model#1177
fricklerhandwerk wants to merge 3 commits into
NixOS:mainfrom
fricklerhandwerk:branch-model

Conversation

@fricklerhandwerk

Copy link
Copy Markdown
Collaborator

Towards #864
Depends on #1176

Also fetch the tip of each underlying release branch when refreshing
channels.

This in principle allows evaluating just the release branches and,
independently, using package data from already evalauted channels. That way
we will be able to track both what maintainers are working on and what is
shipped to users, without evaluating all involved versions ourselves.

The main change is to parse the metadata more rigorously.
Secondary is a more explicit encapsulation and documentation of the heuristic for deriving release branch names.

Otherwise it's a simplification.
It's not necessary to fetch the channel's commits at this point, since we're already doing that before evaluation.
Also fetch the tip of each underlying release branch when refreshing channels.

This in principle allows evaluating just the release branches and, independently, using package data from already evalauted channels.
That way we will be able to track both what maintainers are working on and what is shipped to users, without evaluating all involved versions ourselves.

Also remove the repository from the channel model.
It's not used for anything and can be recovered from the configuration constants if ever needed.
The atomic update makes it slightly more robust against interruptions.
This is done in a separate commit to keep the previous addition of fetching branch tips readable.
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