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 release script #636

Merged
merged 13 commits into from
Jan 10, 2025
Merged

Conversation

zachschuermann
Copy link
Collaborator

@zachschuermann zachschuermann commented Jan 10, 2025

add release script to start automating our releases with cargo-release and git-cliff. the main release script is ./release.sh with rather straightforward usage. we use cargo-release to handle some of the Cargo.toml updates and trigger git-cliff, but otherwise the script just manually uses cargo/git to publish the release and tag it

the release flow will be the following:

  1. from an up-to-date main branch, checkout a new release branch (like prepare 0.x.y)
  2. run ./release 0.x.y to do the 'prepare' phase of generating a changelog, updating readme etc.
    a. the tool will validate that you're on a release branch, generate the changelog, and make a commit and (optionally) open a PR (cargo-release is used to update the versions correctly and git-cliff is used as a hook in cargo-release to generate the changelog)
    b. then the only main action is just making minor CHANGELOG changes and updating + merging the PR
  3. merge the 'prepare' PR
  4. from main branch with prepare branch merged, run: ./release.sh
    a. the tool will publish any unpublished version (e.g. if 0.6.0 is latest on crates.io and the prepare PR bumps to 0.6.1 then the tool will do the release for delta_kernel and delta_kernel_derive, add a git tag, and push the tag)
    b. NOTE: this is currently done manually but could leverage cargo-release in the future

Copy link

codecov bot commented Jan 10, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.46%. Comparing base (fafc776) to head (d2c3d23).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #636   +/-   ##
=======================================
  Coverage   83.45%   83.46%           
=======================================
  Files          75       75           
  Lines       16919    16919           
  Branches    16919    16919           
=======================================
+ Hits        14120    14121    +1     
+ Misses       2145     2143    -2     
- Partials      654      655    +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

cliff.toml Outdated Show resolved Hide resolved
cliff.toml Show resolved Hide resolved
Copy link
Collaborator

@nicklan nicklan left a comment

Choose a reason for hiding this comment

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

Do we need to update the PR template to say to include the various feat, fix, doc etc things?

release.sh Outdated Show resolved Hide resolved
release.sh Outdated Show resolved Hide resolved
release.sh Outdated Show resolved Hide resolved
release.sh Outdated Show resolved Hide resolved
@OussamaSaoudi-db OussamaSaoudi-db self-requested a review January 10, 2025 23:07
Comment on lines +18 to +27
| replace(from="0)", to="0])")\
| replace(from="1)", to="1])")\
| replace(from="2)", to="2])")\
| replace(from="3)", to="3])")\
| replace(from="4)", to="4])")\
| replace(from="5)", to="5])")\
| replace(from="6)", to="6])")\
| replace(from="7)", to="7])")\
| replace(from="8)", to="8])")\
| replace(from="9)", to="9])") }}\
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

FYI this is a bit of a gross hack - I think we can fix this in the future with a hook that just does some regex prior to this

@zachschuermann zachschuermann merged commit 0816ceb into delta-io:main Jan 10, 2025
21 checks passed
@zachschuermann zachschuermann deleted the release-script2 branch January 10, 2025 23:44
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.

3 participants