Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upbuilding beta with vendor=true fail due to network dependencies #42719
Comments
Mark-Simulacrum
added
A-build
regression-from-stable-to-beta
labels
Jun 18, 2017
This comment has been minimized.
This comment has been minimized.
|
I just ran into this too. :/ FWIW, on rust master |
This comment has been minimized.
This comment has been minimized.
|
Under nightly, I have the same: only cargo error now.
|
This comment has been minimized.
This comment has been minimized.
|
Either we fix alexcrichton/cargo-vendor#30 or we stop depending on git deps somehow. |
This comment has been minimized.
This comment has been minimized.
|
hmm digging a bit more, it seems the git dependency in Cargo.lock is due to rls requiring it in its Cargo.toml. It is being replaced in the src/Cargo.toml of this repo, but apparently Cargo still needs the git repo for some reason. So that may be a Cargo bug? |
This comment has been minimized.
This comment has been minimized.
|
This would be a pretty unfortunate thing to hit stable. Anybody have ideas about how we can automatically test this on CI? |
brson
added
the
P-high
label
Jul 7, 2017
This comment has been minimized.
This comment has been minimized.
We could create a source tarball and download the stage0, remove network by doing |
This comment has been minimized.
This comment has been minimized.
|
A possible emergency mitigation of this issue: we could point beta to a branch/fork of rls that points to cargo as a relative path dependency instead of a git dependency. Alternatively we simply remove rls but not sure how much changes of rustbuild that entails. Long term one can think about either giving cargo-vendor support to git deps or fixing cargo itself to worh with the current situation (not syncing git repos if they get |
This comment has been minimized.
This comment has been minimized.
|
Are there any hacks we can do to automatically mangle the rls deps during vendoring? e.g. |
This comment has been minimized.
This comment has been minimized.
|
There are no hacks I know of to get this to work. If we want this fixed I believe we need to remove the rls from the repository on the beta branch. |
This comment has been minimized.
This comment has been minimized.
|
There's also a 1.19 milestone issue that I'd forgotten about to disable RLS packaging: #42357 |
This comment has been minimized.
This comment has been minimized.
|
cc @rillian seems like this might impact you. |
This comment has been minimized.
This comment has been minimized.
|
If dropping the network doesn't work on travis because e.g. it outputs the log via the network, we might have to use docker, but we already use it for android and stuff, so it should be no big deal. |
This comment has been minimized.
This comment has been minimized.
|
the current error is present even with network access: cargo catch it needs network for git whereas it should also respect But I agree that be able to drop the network would catch more errors. Another possibility is to setup firewall rules to forbid outgoing connection. |
This comment has been minimized.
This comment has been minimized.
|
FWIW, I usually try to do a test build of beta on all Fedora arches by this time in the release cycle, but this bug is blocking me. |
This comment has been minimized.
This comment has been minimized.
|
@cuviper it should be simple to patch out:
Not tried it however. Note that I'm only suggesting this to help you with testing. It would be pretty disastrous if we attempted to release 1.20 with this bug present. |
This comment has been minimized.
This comment has been minimized.
|
Fair enough, I can patch it. There's also rls->rustfmt to deal with, but I think I can just comment out these dependencies for now and leave rls broken. IIRC it's not part of a normal build yet... |
This comment has been minimized.
This comment has been minimized.
|
@cuviper Would you be willing to get a patch up to remove |
This comment has been minimized.
This comment has been minimized.
|
Yeah, I can - if not today then tomorrow. |
This comment has been minimized.
This comment has been minimized.
|
In general we shouldn't depend on git deps at all. Cargo should be replaced by the local version and rustfmt should be a crates.io dependency. It was temporarily pointed at a branch to land a libsyntax change. We just need to update the rls submodule to go back to a crates.io dep (I have a PR doing this, but it also turns on tests and so is having trouble landing). |
cuviper
added a commit
to cuviper/rust
that referenced
this issue
Jul 13, 2017
cuviper
referenced this issue
Jul 13, 2017
Closed
[beta] Remove rls from the workspace and extended builds #43199
This comment has been minimized.
This comment has been minimized.
|
See #43199. |
bors
added a commit
that referenced
this issue
Jul 13, 2017
alexcrichton
added a commit
to alexcrichton/rust
that referenced
this issue
Jul 13, 2017
alexcrichton
added a commit
to brson/rust
that referenced
this issue
Jul 13, 2017
alexcrichton
added a commit
to brson/rust
that referenced
this issue
Jul 13, 2017
This comment has been minimized.
This comment has been minimized.
|
Should be fixed on current beta.4. Can anyone confirm? |
This comment has been minimized.
This comment has been minimized.
|
Seems good so far: https://koji.fedoraproject.org/koji/taskinfo?taskID=20529669 |
This comment has been minimized.
This comment has been minimized.
|
I could confirm 1.19.0-beta.4 is fixed. |
semarie
closed this
Jul 15, 2017
This comment has been minimized.
This comment has been minimized.
|
There is #43218 to track the issue for the 1.20 release. |
This comment has been minimized.
This comment has been minimized.
|
oh, TIL about alexcrichton/cargo-vendor#42 and rust-lang/cargo#3992 . Those are probably the long term fixes for this issue... |
This comment has been minimized.
This comment has been minimized.
|
same the problem again with nightly. should I open a new issue, or should I reopen this one (but tags would be wrong: it is a nightly problem currently) ? |
semarie commentedJun 17, 2017
Trying to build beta using downloaded tarball and
vendor=true(in order to test and prepare distribution for OpenBSD packages), I have the following error:My config.toml is:
The error could be about
rustfmtorcargodependency.It seems that rls have git dependencies defined for them. From
src/tools/rls/Cargo.toml:And even if
src/Cargo.tomlhas a[replace]section, it is only for 0.20.0 (and not git head):So when cargo tries to resolv dependencies, it tries to download them from network, but fail due to
--frozen.Please note that when testing, my
CARGO_HOME(~/.cargo) is empty.