-
-
Notifications
You must be signed in to change notification settings - Fork 649
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
Update to rust 1.26 #5803
Update to rust 1.26 #5803
Conversation
6f842d8
to
9a1d43a
Compare
9d5a3cf
to
c17f5fe
Compare
Hmm... it looks like it is an OSX age issue! Will try with 10.11 next. |
5baf6f9
to
fb38f17
Compare
b6bb42d
to
9e2fdb5
Compare
.travis.yml
Outdated
script: | ||
- ./pants --version && ./build-support/bin/release.sh -n | ||
|
||
- os: linux |
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.
Why are some other shards removed?
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.
We're iterating on getting this shard working, because it's currently failing.
22db621
to
3ea3f39
Compare
I'd love to file a bug with the rustlang folks about the |
After a lot of poking, I finally managed to get a stacktrace out - https://travis-ci.org/pantsbuild/pants/builds/379165187 It turns out Gitignore keeps a thread-local cache, as an optimisation, which can't be disabled. It looks like the way thread_local stores thread IDs isn't fork-safe. I don't know why this isn't surfacing on more modern versions of OSX, or indeed on older rusts. I modified Gitignore to bypass the thread_local cache, and it turns out the standard regex crate, which it uses, also uses a thread_local cache, so also triggers the same issue: https://travis-ci.org/pantsbuild/pants/builds/379216270 This was uncomfortably difficult to diagnose. I will put together some changes to make it easier in the future. I don't know what to do about fixing it, though.
|
Thanks a ton for investigating this, and for the debugging infrastructure improvements. One approach that should work would be to ensure that we only apply |
Hm... there is one big issue with this hypothesis though: pantsd is not in use here, and so there is no forking happening. EDIT: And moreover, no threads except the main thread survive forking, so thread local storage should not be an issue there, afaik. |
Linking to rustwasm/wasm-bindgen#186, which sees a related stack. |
…ust-lang/rust#48919. Additionally, apply rustfmt changes.
3ea3f39
to
5fc27e2
Compare
No luck with updating the ignore/regex dep in #5845. |
TODO: Try out |
Resolved in favor of #6035. |
Update to rust 1.26, explicitly use Itertools::flatten to avoid rust-lang/rust#48919, and apply necessary rustfmt changes.
I experimented with a few different OSX versions, but there is a segfault for all versions of OSX (*that are available on travis) below
xcode8
/OSX 10.11
. So, landing this change would raise pants' minimum OSX requirement to10.11
.