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

Nicer automated snapshot of files from Verus + weekly auto-updates #40

Merged
merged 8 commits into from
Mar 12, 2024

Conversation

jaybosamiya
Copy link
Collaborator

This PR does a few things:

  • Moves away from the older snapshot of vstd (that collapsed all of vstd to a single file using inline-crate) to instead hold each file individually
  • Sets up a script that makes it easy to get the latest vstd from Verus (and also a helper script to format it)
  • Moves syntax.rs to be part of this automatically-get-this-from-Verus setup
  • Updates the snapshot tests to account for this move
  • Sets up a CI job that runs once every night (at UTC 00:00) to see if our snapshot has diverged from Verus's. If it has, then it opens up a PR to call our attention to it

To review this PR, it is likely easiest to look at each commit individually.

NOTE: This PR should not be merged into verusfmt main until verus-lang/verus#1019 and an upcoming PR for syntax.rs have been merged. Thus, I am marking it as a draft, despite otherwise being ready to review.

@jaybosamiya jaybosamiya requested a review from parno March 7, 2024 23:26
Copy link
Contributor

@parno parno left a comment

Choose a reason for hiding this comment

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

Thanks, this looks like a nice way to keep things in sync, which will make it easier to detect possibly "breaking" changes to vstd (or other Verus files).

However, I'd be inclined to set the CI job to run once a week/month. I suspect there'll be enough churn in vstd that getting a PR about it each time will be a bit of a nuisance, and I'd be surprised if most of that churn was of a nature that would cause verusfmt changes to be needed.

@jaybosamiya
Copy link
Collaborator Author

jaybosamiya commented Mar 8, 2024

Sounds reasonable, switched it to weekly, and if we find that even that ends up too much, we can switch it out to monthly

@jaybosamiya jaybosamiya marked this pull request as ready for review March 12, 2024 16:59
@jaybosamiya jaybosamiya changed the title Nicer automated snapshot of files from Verus + nightly auto-updates Nicer automated snapshot of files from Verus + weekly auto-updates Mar 12, 2024
@jaybosamiya
Copy link
Collaborator Author

Now that verus-lang/verus#1019 is merged, we can merge this in. I will then manually trigger the workflow run (outside regular schedule, just to confirm it is working as expected), but after that, the weekly schedule should begin.

@jaybosamiya jaybosamiya merged commit ba5628f into main Mar 12, 2024
8 checks passed
@jaybosamiya jaybosamiya deleted the verus-snapshot branch March 12, 2024 17:03
@jaybosamiya
Copy link
Collaborator Author

Heh, it detects the difference correctly (the part that I had tested before making the PR), but doesn't actually make the PR (the part that I could not test earlier). Turns out that this is because of an organization level permission:

For repositories belonging to an organization, this setting can be managed by admins in organization settings under Actions > General > Workflow permissions.

Will work on getting that set up, so that this starts working

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.

2 participants