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

Add packages to a package set on upload #156

Closed
f-f opened this issue Mar 30, 2021 · 3 comments
Closed

Add packages to a package set on upload #156

f-f opened this issue Mar 30, 2021 · 3 comments
Labels
blocked enhancement Something that would be good to have but it's not a priority package-sets

Comments

@f-f
Copy link
Member

f-f commented Mar 30, 2021

Similar to #154; packages uploaded to the registry should automatically be added to the latest package set, if possible. If the package can't be added to the package set then the registry should issue a warning (but not fail the package upload). Package sets will still need manual curation (ie. a breaking change at the root of a package set will eventually need manual management to update the root package and all its dependents), but this will help keep package sets up to date over time.

To accomplish this, we'll need to:

  1. Add or update the registry package to the package set that's currently in the default branch of the package sets repository
  2. Compile the entire package set with its compatible compiler version(s) to verify that the package works with the set
  3. If successful, commit the updated package set back to the default branch of the package sets repository
@f-f f-f added the blocked label Mar 30, 2021
@f-f f-f added package-sets enhancement Something that would be good to have but it's not a priority labels Dec 1, 2021
@f-f
Copy link
Member Author

f-f commented Dec 1, 2021

Something that we will need to consider is "group updates": sometimes a new version breaks many packages, and the new set will work only if all of these are updated at the same time. Easily solvable by a human, hard to automate?

@thomashoneyman
Copy link
Member

The spec describes how package sets generation works.

Notably, while we do add a package to the day's set automatically, we ultimately decided not to add the package to the package sets on upload and instead we add the entire day's group at once every day. That's because adding the package to a running set that gets committed once per day brings in some complications:

  1. The package may not work with the package set as-is, but would work if it were added to the package set with the other packages of the day (for example, when Halogen and Halogen Hooks are updated together)
  2. It's a piece of state to persist, and since we're on Actions there isn't a good way to do that without relying on job outputs or on a file in this repository, both of which I'd prefer to avoid.

@thomashoneyman
Copy link
Member

I'm going to close this because this has been implemented, but we can reopen it or open a separate issue if we want to discuss how we could go about adding packages immediately.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked enhancement Something that would be good to have but it's not a priority package-sets
Projects
None yet
Development

No branches or pull requests

2 participants