What is this fresh hell (broken Rust build on main...
# development
h
What is this fresh hell (broken Rust build on main):
b
yeah hit it myself.
a1
was never meant to be
a
You are full of interesting mysteries today 😄
b
Either an admin merge without green CI, or a semantic merge conflict (that thing solved by merge-queues)
a
Except the thing it's failing to build is a third-party crate published to
<http://crates.io|crates.io>
, and the thing it's actually failing to compile is a version of
cargo
which was released 8 months ago and has been working fine since
Interestingly, checking out its repo,
cargo build
works fine, but
cargo install
fails
Which... Is a mystery...
b
👻
a
Well TIL that
cargo install
ignores
Cargo.lock
files
Now to find out who broke semver...
p
not sure if this is related... but I see this:
Copy code
18:55:36.99 [WARN] Making attempt 1 to backtrack and retry `Resolving plugins: hdrhistogram, toolchain.pants.plugin==0.20.0`, due to missing digest Digest { hash: Fingerprint<631a455853d2ec32ac9a7e9c10b259d4cc994abdeb6[22/1962]11cc3120a62c>, size_bytes: 92 }.
18:55:36.99 [INFO] Filesystem changed during run: retrying `ResolvedPluginDistributions` in 500ms...
18:55:37.49 [INFO] Starting: Resolving plugins: hdrhistogram, toolchain.pants.plugin==0.20.0
18:55:44.53 [INFO] Completed: Resolving plugins: hdrhistogram, toolchain.pants.plugin==0.20.0
18:55:44.53 [WARN] Making attempt 2 to backtrack and retry `Resolving plugins: hdrhistogram, toolchain.pants.plugin==0.20.0`, due to missing digest Digest { hash: Fingerprint<631a455853d2ec32ac9a7e9c10b259d4cc994abdeb626cb4afe411cc3120a62c>, size_bytes: 92 }.
18:55:44.53 [INFO] Filesystem changed during run: retrying `ResolvedPluginDistributions` in 500ms...
18:55:45.04 [ERROR] 1 Exception encountered:

Engine traceback:
  in select
  in pants.init.plugin_resolver.resolve_plugins
  in pants.backend.python.util_rules.pex.create_venv_pex (pants_plugins.pex)
  in pants.backend.python.util_rules.pex.build_pex (pants_plugins.pex)
  in pants.engine.process.fallible_to_exec_result_or_raise
  in process
Traceback (no traceback):
  <pants native internals>
Exception: Process Process { argv: ["/data/home/asher/.cache/pants/pants_dev_deps/Linux.x86_64.x86_64.py38.venv/bin/python", "./pex", "--tmpdir", ".tmp", "--jobs", "{pants_concurrency}", "--python-path", "/data/home/asher/.pyenv/versions/3.6.10/bin:/data/home/asher/.pyenv/versions/3.7.10/bin:/data/home/asher/.pyenv/versions/3.8.12/bin:/data/home/asher/.pyenv/versions/3.8.2/bin:/data/home/asher/.pyenv/versions/3.8.5/bin:/data/home/asher/.pyenv/versions/3.8.6/bin:/data/home/asher/.pyenv/versions/3.8.9/bin:/data/home/asher/.pyenv/versions/3.9.12/bin:/data/home/asher/.pyenv/versions/3.9.4/bin:/data/home/asher/.cache/pants/pants_dev_deps/Linux.x86_64.x86_64.py38.venv/bin:/data/home/asher/bin:/data/home/asher/bin:/data/home/asher/.pyenv/shims:/data/home/asher/.pyenv/bin:/data/home/asher/.cargo/bin:/data/home/asher/.pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin", "--output-file", "pants_plugins.pex", "--no-emit-warnings", "--manylinux", "manylinux2014", "--venv", "--seed", "verbose", "--no-venv-site-packages-copies", "--python", "/data/home/asher/.cache/pants/pants_dev_deps/Linux.x86_64.x86_64.py38.venv/bin/python", "--sources-directory=source_files", "hdrhistogram", "toolchain.pants.plugin==0.20.0", "--no-pypi", "--index=<https://pypi.org/simple/>", "--resolver-version", "pip-2020-resolver", "--constraints", "__constraints.txt", "--layout", "packed"], env: {"CPPFLAGS": "", "LANG": "C.UTF-8", "LDFLAGS": "", "PATH": "/data/home/asher/.cache/pants/pants_dev_deps/Linux.x86_64.x86_64.py38.venv/bin:/data/home/asher/bin:/data/home/asher/.pyenv/shims:/data/home/asher/.pyenv/bin:/data/home/asher/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin", "PEX_IGNORE_RCFILES": "true", "PEX_ROOT": ".cache/pex_root"}, working_directory: None, input_digests: InputDigests { complete: DirectoryDigest { digest: Digest { hash: Fingerprint<4808509f1dd1bc1bcd9982cdd27cae7e6ec7a2a55aa2e381b6e201d1899e5f00>, size_bytes: 334 }, tree: "Some(..)" }, nailgun: DirectoryDigest { digest: Digest { hash: Fingerprint<e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855>, size_bytes: 0 }, tree: "Some(..)" }, input_files: DirectoryDigest { digest
: Digest { hash: Fingerprint<4808509f1dd1bc1bcd9982cdd27cae7e6ec7a2a55aa2e381b6e201d1899e5f00>, size_bytes: 334 }, tree: "Some(..)" }, immutable_inputs: {}, use_nailgun: {} }, output_files: {}, output_directories: {RelativePath
("pants_plugins.pex")}, timeout: None, execution_slot_variable: None, concurrency_available: 2, description: "Resolving plugins: hdrhistogram, toolchain.pants.plugin==0.20.0", level: Info, append_only_caches: {CacheName("pex_ro
ot"): RelativePath(".cache/pex_root")}, jdk_home: None, platform_constraint: Some(Linux_x86_64), cache_scope: Successful } produced an invalid result on all configured command runners.
Traceback (most recent call last):
  File "/data/home/asher/projects/pants2/src/python/pants/bin/daemon_pants_runner.py", line 130, in single_daemonized_run
    scheduler, options_initializer = self._core.prepare(options_bootstrapper, complete_env)
  File "/data/home/asher/projects/pants2/src/python/pants/pantsd/pants_daemon_core.py", line 129, in prepare
    build_config, options = self._options_initializer.build_config_and_options(
  File "/data/home/asher/projects/pants2/src/python/pants/init/options_initializer.py", line 107, in build_config_and_options
    build_config = _initialize_build_configuration(
  File "/data/home/asher/projects/pants2/src/python/pants/init/options_initializer.py", line 47, in _initialize_build_configuration
    working_set = plugin_resolver.resolve(options_bootstrapper, env)
  File "/data/home/asher/projects/pants2/src/python/pants/init/plugin_resolver.py", line 131, in resolve
    for resolved_plugin_location in self._resolve_plugins(
  File "/data/home/asher/projects/pants2/src/python/pants/init/plugin_resolver.py", line 157, in _resolve_plugins
    session.product_request(ResolvedPluginDistributions, [request])[0],
  File "/data/home/asher/projects/pants2/src/python/pants/engine/internals/scheduler.py", line 576, in product_request
    self._raise_on_error([t for _, t in throws])
  File "/data/home/asher/projects/pants2/src/python/pants/engine/internals/scheduler.py", line 511, in _raise_on_error
    raise ExecutionError(
pants.engine.internals.scheduler.ExecutionError: 1 Exception encountered:

Engine traceback:
  in select
  in pants.init.plugin_resolver.resolve_plugins
  in pants.backend.python.util_rules.pex.create_venv_pex (pants_plugins.pex)
  in pants.backend.python.util_rules.pex.build_pex (pants_plugins.pex)
  in pants.engine.process.fallible_to_exec_result_or_raise
@witty-crayon-22786
a
https://crates.io/crates/cargo-util/0.1.3 getting released caused this problem, I'm not quite sure how/why yet
But yeah, throw in a
--locked
and main should go green
h
Thanks Daniel! On it
b
LMK when thats on
main
I can merge into the 2 PRs I'm caretaking
h
I'm getting "error: could not find
=0.1.7
in registry
crates-io
with version `*`"
a
I think that's actually a warning and doesn't matter
It should then continue to actually build the thing
h
Ah ok
So this should be
"${REPO_ROOT}/cargo" install cargo-ensure-prefix --locked "=0.1.7"
?
a
I think so, yeah
h
The output is:
Copy code
Updating <http://crates.io|crates.io> index
     Ignored package `cargo-ensure-prefix v0.1.7` is already installed, use --force to override
error: could not find `=0.1.7` in registry `crates-io` with version `*`
     Summary Successfully installed cargo-ensure-prefix! Failed to install =0.1.7 (see error(s) above).
error: some crates failed to install
But the exit code is 0
so 🤷‍♂️
a
I think that means things are good, even though, ugh messaging 🙂
h
b
Re-kicking CI on that PR. It was missing label when CI started
That PR worked but I'm still seeing failures 🙈
a
Upstream issue, for the record: https://github.com/rust-lang/cargo/issues/10803
c
Regarding the “some crates failed to install”: I've had that for quite some time, without noticeable issues (months, at least)