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

Beta cargo version needs to change #37969

Closed
alexcrichton opened this issue Nov 23, 2016 · 8 comments
Closed

Beta cargo version needs to change #37969

alexcrichton opened this issue Nov 23, 2016 · 8 comments
Assignees
Labels
P-high High priority regression-from-stable-to-beta Performance or correctness regression from stable to beta.

Comments

@alexcrichton
Copy link
Member

Don't know a better place to file this where we can track it, so filing here.

Right now the Cargo tied to 1.14 beta suffers from rust-lang/cargo#3303, which we need to fix. This regression in required libraries was introduced by rust-lang/cargo#3272 and was later fixed by rust-lang/cargo#3311 and rust-lang/cargo#3315.

Beta's Cargo date is 2016-11-16, corresponding to rust-lang/cargo@a9c23dd and includes rust-lang/cargo#3272. The previous nightly, 2016-11-15, corresponds to rust-lang/cargo@9f1beaf which also includes rust-lang/cargo#3272. The previous successful nightly was 2016-11-09 which corresponds to rust-lang/cargo@5b5684e. Unfortunately that nightly does not contain rust-lang/cargo#3280 which is required for beta to bootstrap with rustbuild.

So we've got a few options:

  • Fast forward the Cargo nightly by a few weeks. We'd have to fixup version numbers with new commits.
  • Start release branches of Cargo now with the support from Continuously publish Cargo builds cargo#3239
  • Prepare a custom branch of Cargo and upload a new nightly for some previous date manually (somehow).

My preference is to go with rust-lang/cargo#3239. @brson what do you think?

@steveklabnik
Copy link
Member

I like that option too.

moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this issue Nov 24, 2016
Update tooltool manifests to repacks of upstream builds of
rustc 1.14.0-beta.2 (e627a2e6e 2016-11-16)
cargo 0.15.0-nightly (a9c23dd 2016-11-15)
for the relevent hosts and target platforms.

We prefer to use stable rust but this bump gets us debuginfo
for the rust standard library on all platforms, which we hope
will improve crash reporting (bug 1268328). That is higher
priority. The rust 1.14 version should be in stable release
before Firefox 53 goes to Aurora, so we'll still stabilize
and ship with stable rust.

This build also contains the fix for the arm code generation
bug blocking update from 1.12 on android, so we can use 1.13
language features in Firefox 53. For more information, see
rust-lang/rust#37815

This doesn't update the native MacOS build because of an
openssl link issue with cargo. This is resolved upstream
for rust 1.15; getting that ported to a later 1.14 beta is
tracked in rust-lang/rust#37969

MozReview-Commit-ID: JbJTd4D7VOu

--HG--
extra : rebase_source : 0690f3d4443f3fc7f224f051f910de92c54b8f60
xeonchen pushed a commit to xeonchen/gecko-cinnabar that referenced this issue Nov 24, 2016
Update tooltool manifests to repacks of upstream builds of
rustc 1.14.0-beta.2 (e627a2e6e 2016-11-16)
cargo 0.15.0-nightly (a9c23dd 2016-11-15)
for the relevent hosts and target platforms.

We prefer to use stable rust but this bump gets us debuginfo
for the rust standard library on all platforms, which we hope
will improve crash reporting (bug 1268328). That is higher
priority. The rust 1.14 version should be in stable release
before Firefox 53 goes to Aurora, so we'll still stabilize
and ship with stable rust.

This build also contains the fix for the arm code generation
bug blocking update from 1.12 on android, so we can use 1.13
language features in Firefox 53. For more information, see
rust-lang/rust#37815

This doesn't update the native MacOS build because of an
openssl link issue with cargo. This is resolved upstream
for rust 1.15; getting that ported to a later 1.14 beta is
tracked in rust-lang/rust#37969

MozReview-Commit-ID: JbJTd4D7VOu
@brson
Copy link
Contributor

brson commented Nov 29, 2016

I don't understand what "Start release branches of Cargo now with the support from rust-lang/cargo#3239" means. What are release branches in this context and how does that solve the problem?

@brson
Copy link
Contributor

brson commented Nov 29, 2016

I think you are saying create a new branch named "stable" (or something), based off some older commit, have it upload to s3, then backport whatever fixes we need. Then update rust-packaging to source cargo from those uploads instead of the nightlies.

That sounds fine to me. I think we do need a release branch for cargo that we can backport to.

@brson
Copy link
Contributor

brson commented Nov 29, 2016

If you do that, can you make Cargo not build with -nightly in the version name on the stable branch?

@alexcrichton
Copy link
Member Author

@brson oh yes sorry I mean creating stable and beta branches of Cargo, and then building binaries from there instead of just on nightly. That'd allow us to easily backport fixes to beta without having to fast-forward beta.

Also yeah I think we could fix the -nightly thing at the same time.

@alexcrichton
Copy link
Member Author

I've opened rust-lang/cargo#3345 to explore release branches on Cargo.

@alexcrichton
Copy link
Member Author

rust-lang/cargo#3353 is the first batch of backports for the Cargo associated with Rust 1.14.0

bors added a commit to rust-lang/cargo that referenced this issue Dec 2, 2016
Backporting fixes to 1.14.0

This is a backport of the following PRs to fix the actual issue, rust-lang/rust#37969.

* #3311 - first attempt to fix OpenSSL linkage on OSX
* #3315 - second attempt to fix linkage
* #3325 - fix a flaky test causing lots of CI problems
* #3332 - actual fix for OpenSSL linkage on OSX
* #3345 - first PR for automation changes
* #3350 - second PR for automation changes
* #3326 - update git2 to support netbsd
* #3331 - update git2 to fix segfaults in tests
* #3342 - update git2 to fix cert paths
@alexcrichton
Copy link
Member Author

Next beta build will have a fixed Cargo, closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P-high High priority regression-from-stable-to-beta Performance or correctness regression from stable to beta.
Projects
None yet
Development

No branches or pull requests

3 participants