-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Build on Github Action with macos-latest missing dependencies #8603
Comments
It works if cache is disabled. |
Without the cache, this will be very difficult to diagnose. The most likely cause that I can think of is that the If you're able to reproduce on CI, please let me know! |
It is reproduciable on CI nearly 100% just by enabling cache. |
So I've been digging into this a little bit, and I've been able to reproduce on GHA. Unfortunately I cannot reproduce it locally. As far as I see, it looks to be an issue with the GitHub cache action. After clearing the cache, and running I tried reproducing locally using the The problem also seems to be very sensitive to the nature of your project. Removing the I would recommend you follow up with GitHub on their issue tracker (https://github.com/actions/cache) to figure out why the cache is corrupting that file. Here's a basic example from one of my tests:
I think this pretty clearly shows the cache is modifying it somehow. I did some other tests where I downloaded the file, and confirmed that the first 8MB of the file has been zeroed out. |
@ehuss This is a really weird one. I put some more details over in actions/cache#403, but the summary is that:
|
If this is Catalina, I think this may be the same bug as Homebrew/brew#6539. (I'm familiar with this because I maintain Git LFS and it broke that Homebrew package.) That bug mentions a workaround, so it may be worth trying to figure out (or ask) what the Homebrew folks did and see if that might work for you. |
I think the workaround they are referencing is calling Another workaround is to use GNU tar as described here: actions/cache#403 (comment) I wonder if there is some strange interaction with APFS sparse files. |
actions/cache#403 tracks this issue. rust-lang/cargo#8603 has the exact issue that we run into.
- actions/cache#403 - rust-lang/cargo#8603 Fun stuff.
- actions/cache#403 - rust-lang/cargo#8603 Fun stuff.
- actions/cache#403 - rust-lang/cargo#8603 Fun stuff.
This will probably not work due to some currently unresolved issues: - rust-lang/cargo#8603 - actions/cache#403
* Unskip test_argparse test_json test_bytes test_bytearray test_long test_unicode test_array test_asyncgen test_list test_complex test_set test_dis test_calendar in macOS CI * Re-enable cache on macOS This will probably not work due to some currently unresolved issues: - rust-lang/cargo#8603 - actions/cache#403 * Use Swatinem's rust-cache action
This is needed to fix the CI on recent OSX systems. For reference, see rust-lang/cargo#8603.
I believe actions/cache#403 is resolved (about 2 years ago) and according to rust-lang/miri#2565 no workaround is required any more. Can this issue be closed now? |
Sounds good. If it still happens, we can reopen or create a new one. |
Just for posterity: GHA changed to GNU tar which doesn't hit this problem as often. However, there is a lot more discussion at https://trac.macports.org/ticket/67336?cversion=0&cnum_hist=15 and the conclusion seems to be that this is a still-unfixed filesystem bug rather than a tar bug (come on Apple...). So it is probably still possible to hit this bug, even if various workarounds may have made it less likely. This is not actionable on Cargo's end so leaving the issue closed makes sense. |
Problem
https://github.com/shadowsocks/shadowsocks-rust/runs/962064929?check_suite_focus=true
Build running on Github Action with macos-latest always reports missing
serde_derive
.serde_derive
should already be included byserde
's featurederive
: https://github.com/serde-rs/serde/blob/53b9871b172c1c29a16e66138f108bf4155444fe/serde/Cargo.toml#L35Cargo.toml
have specified thederive
feature: https://github.com/shadowsocks/shadowsocks-rust/blob/6451f33b2e9471b44feb315778d6f60d81634a86/Cargo.toml#L116The text was updated successfully, but these errors were encountered: