Skip to content

Add packages to a package set on upload #156

Closed

Description

@f-f

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

Activity

  1. added
    enhancementSomething that would be good to have but it's not a priority
    on Dec 1, 2021
  2. f-f commented on Dec 1, 2021

    @f-f
    MemberAuthor

    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?

  3. thomashoneyman commented on Sep 1, 2022

    @thomashoneyman
    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.
  4. thomashoneyman commented on Sep 1, 2022

    @thomashoneyman
    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

Metadata

Metadata

Assignees

No one assigned

    Labels

    blockedenhancementSomething that would be good to have but it's not a prioritypackage-sets

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions