Skip to content

Automate subtree update #248

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

Merged
merged 3 commits into from
Feb 20, 2025

Conversation

tautschnig
Copy link
Member

@tautschnig tautschnig commented Feb 19, 2025

There should not be a need for manual processes for the first stage of the subtree update, i.e., updating our subtree/library branch.

Merge conflicts (which might require a human to intervene) will only happen once attempting to merge from subtree/library back into main. Automation for this stage has been added, will create a PR separate from the above one, and will likely require manual intervention.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.

@tautschnig tautschnig requested a review from a team as a code owner February 19, 2025 12:00
@tautschnig tautschnig changed the title Automate updates of subtree/library branch Automate subtree update Feb 19, 2025
Copy link

@carolynzech carolynzech left a comment

Choose a reason for hiding this comment

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

Thank you! I'd recommend running this on your fork to check if it works if you haven't already.

@tautschnig tautschnig force-pushed the automate-subtree-update branch 3 times, most recently from 1a916ca to a895b16 Compare February 20, 2025 12:09
@tautschnig
Copy link
Member Author

Thank you! I'd recommend running this on your fork to check if it works if you haven't already.

I have now done so, leading to the observation that git subtree split when performed on GitHub runners is still way too slow to be practical. I have now replaced this by git-filter-repo. Local runs confirm that it yields identical results as far as file contents is concerned (git commit hashes will differ). This takes under 1 minute to run on GitHub runners, and the overall workflow takes under 10 minutes. This yields pull requests like tautschnig#1 (just updating branch subtree/library with new commits) and tautschnig#2 (the changes to our main branch with possible merge conflicts).

There should not be a need for manual processes for the first stage of
the subtree update, i.e., updating our subtree/library branch.

Merge conflicts (which might require a human to intervene) will only
happen once attempting to merge from subtree/library back into main.
Automation for this stage has been added, will create a PR separate from
the above one, and will likely require manual intervention.
@tautschnig tautschnig force-pushed the automate-subtree-update branch from a895b16 to 00ca764 Compare February 20, 2025 12:19
Copy link

@carolynzech carolynzech left a comment

Choose a reason for hiding this comment

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

I made some small changes in my fork: carolynzech@8615a31

to modify the PR bodies to refer to the the first range in the commit as well as the last one (see carolynzech#8 for an example). The idea is that this way we can run git log --oneline between the two hashes to get a snapshot of the original history we're introducing, since the commit hashes in the PR will no longer match. Other than that, this looks good to go.

Thanks for all the work on this, @tautschnig! 🚀

@tautschnig
Copy link
Member Author

I made some small changes in my fork: carolynzech@8615a31

Thank you, cherry-picked into my branch.

Copy link
Member Author

@tautschnig tautschnig left a comment

Choose a reason for hiding this comment

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

Should be ready to be merged.

@tautschnig tautschnig enabled auto-merge February 20, 2025 19:09
@tautschnig tautschnig added this pull request to the merge queue Feb 20, 2025
Merged via the queue into model-checking:main with commit b764eeb Feb 20, 2025
19 checks passed
@tautschnig tautschnig deleted the automate-subtree-update branch February 21, 2025 11:47
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