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

DOS Line Endings in install.sh on some rust-std nightlies #62276

Closed
apmorton opened this issue Jul 1, 2019 · 13 comments · Fixed by #62564
Closed

DOS Line Endings in install.sh on some rust-std nightlies #62276

apmorton opened this issue Jul 1, 2019 · 13 comments · Fixed by #62564
Assignees
Labels
C-bug Category: This is a bug. P-high High priority regression-from-stable-to-beta Performance or correctness regression from stable to beta. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.

Comments

@apmorton
Copy link

apmorton commented Jul 1, 2019

Since the change from travis to azure pipelines some of the rust-std archives have DOS line endings in their install.sh script, which results in errors like the following when trying to execute:

# ./install.sh
bash: ./install.sh: /bin/bash^M: bad interpreter: No such file or directory

Running dos2unix install.sh works around the issue for now.

Not all archives have this issue. Specifically http://static.rust-lang.org/dist/rust-std-nightly-i686-pc-windows-gnu.tar.gz does. Possibly others as well, but our install process fails after the first error, so I am not sure.

See compiler-explorer/infra#230 and compiler-explorer/infra@4df231f

@jonas-schievink jonas-schievink added C-bug Category: This is a bug. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. I-nominated regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. labels Jul 1, 2019
@pietroalbini pietroalbini added P-high High priority and removed I-nominated labels Jul 2, 2019
@pietroalbini
Copy link
Member

Thanks for reporting this!

A tentative fix for this landed in #62279, hopefully tomorrow's nightlies will be fixed.

@maroux
Copy link

maroux commented Jul 8, 2019

Still happening on 1.38.0-nightly (6e310f2ab 2019-07-07) :/

@pietroalbini
Copy link
Member

Oh, this is concerning, we'll need to look into it a bit more. Thanks for the update.

@rustbot modify labels: regression-from-stable-to-beta -regression-from-stable-to-nightly

@rustbot rustbot added regression-from-stable-to-beta Performance or correctness regression from stable to beta. and removed regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. labels Jul 8, 2019
@maroux
Copy link

maroux commented Jul 8, 2019

May have been rust-installer actually .. Double checking.

@mati865
Copy link
Contributor

mati865 commented Jul 8, 2019

rust-src-nightly.tar.gz is also affected, does that mean src is now generated from Windows or this is broken even more than it seems?

@pietroalbini
Copy link
Member

This is caused by the Azure migration, as it started happening right after we switched nightlies production to it. The initial hypothesis was that git's core.autocrlf on Windows was the culprit, but that landed days ago so we need to look deeper :/

@pietroalbini
Copy link
Member

rust-src-nightly.tar.gz is also affected, does that mean src is now generated from Windows or this is broken even more than it seems?

The source tarball is generated by all the dist builders and uploaded each time, so the last dist builder to finish will be the one producing the final tarball. I think we see the error there just because our slower builders are all Windows at the moment.

@pietroalbini pietroalbini self-assigned this Jul 8, 2019
@pietroalbini
Copy link
Member

Assigning myself to investigate in the next few days.

bors added a commit that referenced this issue Jul 10, 2019
…bini

Ensure that checkout is with \n line endings

During installation of mingw, at least, the git directories change, so
we need to reset the core.autocrlf config to false.

Once we finish checking out submodules, check that the line endings are
\n and not \r\n.

Artifacts were built via the last try on #62545; I've manually confirmed that `install.sh` appears to no longer have `\r\n` line endings.

Fixes #62276.
@pietroalbini
Copy link
Member

The fix should've landed in today's nightly. Thanks everyone for reporting this!

@EricRahm
Copy link
Contributor

@pietroalbini Just a note, you might want to spin up a beta build as well. rust-src-beta was affected by this as well.

@pietroalbini
Copy link
Member

@EricRahm yes, beta is still not fixed. The fix was nominated for beta backport though, so once the team approves we will backport it to the beta branch.

@pietroalbini
Copy link
Member

We backported the change!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. P-high High priority regression-from-stable-to-beta Performance or correctness regression from stable to beta. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

9 participants