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

chore: set up auto for versioning/release management #7972

Closed
wants to merge 5 commits into from

Conversation

hydrosquall
Copy link
Member

@hydrosquall hydrosquall commented Feb 9, 2022

Motivation

  • Unified versioning / release process through the Vega org:
    • less time spent spent to rebuild packages locally/releasing/managing changelogs = more time for new features

Changes

Discussion topics

  • We need to confirm that manually bumping the version via script/bump.sh is not relevant. I didn't want to remove the script until reviewing this with @domoritz . I outline what will happen if we abandon this script on pre-releases, and lean on "auto" to manage version bumps instead.

Pre-merge checklist for a repo admin

@hydrosquall hydrosquall self-assigned this Feb 9, 2022
@hydrosquall hydrosquall added released This PR has been released by auto shipit skip-release Tell auto shipit to not trigger a release for this PR labels Feb 9, 2022
@domoritz
Copy link
Member

domoritz commented Feb 9, 2022

The main tricky thing in Vega-Lite is that we need to update this file whenever we bump the version number. The next tricky thing is to update the website and schema repo as well, which we do in https://github.com/vega/vega-lite/blob/master/.github/workflows/release.yml. We should probably not push schema updates with every pre-release and we should also not update the website until we have a path/minor/major release. I'm happy to answer any questions.

@hydrosquall hydrosquall removed the released This PR has been released by auto shipit label Feb 9, 2022
@hydrosquall
Copy link
Member Author

The main tricky thing in Vega-Lite is that we need to update this file whenever we bump the version number

I think we can get away with only updating this on the next -> stable merges, and not modifying this on every prerelease. I haven't decided yet whether we should be trying to make this part of CI, or if it's OK to keep doing this as a manual commit. If we make it part of CI, it could either be a script in the github actions.

If it turns out to be necessary, I can write a custom lifecycle plugin to write the version to that file whenever "auto" has its auto-version command called.

However, I'd like to avoid it if possible since it may be harder for future maintainers to know about/debug.

I wonder if we could make it an option for this file to be built dynamically as part of the site's build step from the version in the package.json so that the updated version doesn't have to be checked into the repo twice. That might be easier to maintain.

We should probably not push schema updates with every pre-release and we should also not update the website until we have a path/minor/major release.

I figured - I thought about it for a while, and decided to leave the release.yml file mostly intact. We'll have the expected behavior if we only have the contents of that file run when there is a merge from next -> stable.

@domoritz
Copy link
Member

domoritz commented Feb 9, 2022

I'd like to not have to manually update the version file. I like the idea of getting rid of it entirely.

@hydrosquall
Copy link
Member Author

#7972 (comment)

Opened separately as #7983

@hydrosquall hydrosquall force-pushed the cameron.yick/feature/add-auto branch 2 times, most recently from 1b4c321 to e4b5540 Compare February 16, 2022 23:44
@hydrosquall hydrosquall force-pushed the cameron.yick/feature/add-auto branch from e4b5540 to bb24d99 Compare February 16, 2022 23:45
@@ -6,7 +6,7 @@ version=$(scripts/version.sh vega-lite)

pushd ../schema/vega-lite/

git checkout master
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm undoing this branch renaming since it looks like it's a script meant to run in a different repository

https://github.com/vega/schema

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch

@hydrosquall hydrosquall force-pushed the cameron.yick/feature/add-auto branch from 068f3c9 to 506bd9e Compare February 17, 2022 00:30
@@ -37,12 +40,6 @@ jobs:
- uses: actions/setup-node@v2.5.1
with:
registry-url: 'https://registry.npmjs.org'
- name: Publish to NPM registry
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was removed because it's already been released once on the trigger to the push event

@hydrosquall
Copy link
Member Author

hydrosquall commented Feb 17, 2022

I'm no longer able to push commits to this branch due to some kind of Github authentication error. The error message is misleading as I'm not using a PAT to authenticate "git pushes" locally. Closing this PR and reopening as #7984 .

https://a.cl.ly/YEuB0Pnn

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip-release Tell auto shipit to not trigger a release for this PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants