-
Notifications
You must be signed in to change notification settings - Fork 0
Common CI actions and workflows #1
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
base: master
Are you sure you want to change the base?
Conversation
|
@evren-okcu Thank you for your contribution! Your pull request is now a part of the Race of Sloths! Current status: staleThis pull request was removed from the race, but you can include it again with What is the Race of SlothsRace of Sloths is a friendly competition where you can participate in challenges and compete with other open-source contributors within your normal workflow For contributors:
For maintainers:
Feel free to check our website for additional details! Bot commands
|
|
@SamuelSarle @imunproductive Kindly review this PR |
|
@race-of-sloths score 13 |
.github/workflows/rust-ci.yml
Outdated
| - name: macOS | ||
| target: x86_64-apple-darwin | ||
| os: macos-latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this either be or separately include arm apple?
| path: | | ||
| ~/.cargo/registry | ||
| ~/.cargo/git | ||
| key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lib packages usually don't include lock files while binaries do. Does it matter here? (hashFiles would always return the same, hash of zero files).
Some other project for example does this:
This cache is automatically keyed by:
- ...
- a hash of all Cargo.lock / Cargo.toml files found anywhere in the repository (if present).
Probably it'd make sense to do hashFiles('**/Cargo.toml', '**/Cargo.lock')?
There is the minor issue of cache hit/miss but also leads to:
- Possibly multiple actions incorrectly fighting over the same cache key where they restore from cache, don't see the relevant items and redownload, then overwrite the cache.
- The cache keeps growing whenever dependencies change in a project without
Cargo.lock. The cache key always matches so it's restored, new items are added, and then the bigger cache is saved. Old cache items are never evicted.
❌ PR inactiveThis PR has been inactive for two weeks. It's now marked as stale. Tip If you think it's a mistake, you can restart the bot with |
@race-of-sloths include