Hello fellow Nixers,

I recently failed to compile a Rust program (rustfmt) from a local checkout. 
Compiling with identical sources obtained via fetchFromGitHub succeeded. 
Compiling from a identical local checkout didn't. Very strange. Can anyone help 
me to figure out what is going wrong?

This is what happened:

* I use pkgs.rustPlatform.buildRustPackage from the latest 17.03beta542.

* This code works:

```
pkgs.rustPlatform.buildRustPackage rec {
  name = "my-rustfmt";
  src = pkgs.fetchFromGitHub {
    owner = "rust-lang-nursery";
    repo = "rustfmt";
    rev = "907134c2d10c0f11608dc4820b023f8040ad655a";
    sha256 = "1sn590x6x93wjzkb78akqjim734hxynck3gmp8fx7gcrk5cch9mc";
  };
  depsSha256 = "1djpzgchl93radi52m89sjk2nbl9f4y15pwn4x78lqas0jlc6nlr";
}
```

* When I clone the repo into the local filesystem, the build fails. New code:

```
pkgs.rustPlatform.buildRustPackage rec {
  name = "my-rustfmt";
  src = ./rustfmt;
  depsSha256 = "1djpzgchl93radi52m89sjk2nbl9f4y15pwn4x78lqas0jlc6nlr";
}
```

I tried it with and without a .git directory present. No difference.

The relevant output lines of the failing case are:

| Using cargo deps from 
/nix/store/7v30ck1i3c1l2j2g461ld3jaq3hvfg01-my-rustfmt-fetch
| Using indexHash '-ba82b75dd6681d6f'
| Using rust registry from 
/nix/store/gv06zlhm4rnhi7j9s1sjj4njns3ca788-rustRegistry-2017-02-19-d822c58
| warning: custom registry support via the `registry.index` configuration is 
being removed, this functionality will not work in the future
| error: failed to load source for a dependency on `syntex_syntax`
| 
| Caused by:
|   Unable to update registry file:///dev/null
| 
| Caused by:
|   failed to open: 
/tmp/nix-build-my-rustfmt.drv-0/deps/registry/index/-ba82b75dd6681d6f/.cargo-index-lock

The full logs are attached.

I believe that both attempts should result in identical builds. Did I do 
something wrong? Is this a bug?

TIA

Christian

-- 
Dipl-Inf. Christian Kauhaus <>< · [email protected] · +49 345 219401-0
Flying Circus Internet Operations GmbH · http://flyingcircus.io
Forsterstraße 29 · 06112 Halle (Saale) · Deutschland
HR Stendal 21169 · Geschäftsführer: Christian Theune, Christian Zagrodnick
these derivations will be built:
  /nix/store/krzc387z5kcwzkyhn3g9vq557272y6na-my-rustfmt.drv
building path(s) ‘/nix/store/mm9lx2k2rs3qvq5ymb5kvirrmf4y3l4b-my-rustfmt’
unpacking sources
unpacking source archive /nix/store/nyw5scvvgf688cgk4rihjaxabr7hzdxm-rustfmt
source root is rustfmt
Using cargo deps from /nix/store/7v30ck1i3c1l2j2g461ld3jaq3hvfg01-my-rustfmt-fetch
Using indexHash '-ba82b75dd6681d6f'
Using rust registry from /nix/store/gv06zlhm4rnhi7j9s1sjj4njns3ca788-rustRegistry-2017-02-19-d822c58
warning: custom registry support via the `registry.index` configuration is being removed, this functionality will not work in the future
error: failed to load source for a dependency on `syntex_syntax`

Caused by:
  Unable to update registry file:///dev/null

Caused by:
  failed to open: /tmp/nix-build-my-rustfmt.drv-0/deps/registry/index/-ba82b75dd6681d6f/.cargo-index-lock

To learn more, run the command again with --verbose.
builder for ‘/nix/store/krzc387z5kcwzkyhn3g9vq557272y6na-my-rustfmt.drv’ failed with exit code 101
error: build of ‘/nix/store/krzc387z5kcwzkyhn3g9vq557272y6na-my-rustfmt.drv’ failed
these derivations will be built:
  /nix/store/wfr6d0xivj66zd8d9arvm7wc58a4fc27-my-rustfmt.drv
building path(s) ‘/nix/store/cg6mdr5gz7bh7d3jg83cqab893212awm-my-rustfmt’
unpacking sources
unpacking source archive /nix/store/j0xnxxzkbahpnmvf77i3xk0nhyzynpf0-rustfmt-907134c2d10c0f11608dc4820b023f8040ad655a-src
source root is rustfmt-907134c2d10c0f11608dc4820b023f8040ad655a-src
Using cargo deps from /nix/store/7v30ck1i3c1l2j2g461ld3jaq3hvfg01-my-rustfmt-fetch
Using indexHash '-ba82b75dd6681d6f'
Using rust registry from /nix/store/gv06zlhm4rnhi7j9s1sjj4njns3ca788-rustRegistry-2017-02-19-d822c58
warning: custom registry support via the `registry.index` configuration is being removed, this functionality will not work in the future
warning: custom registry support via the `registry.index` configuration is being removed, this functionality will not work in the future
setting SOURCE_DATE_EPOCH to timestamp 1490109616 of file rustfmt-907134c2d10c0f11608dc4820b023f8040ad655a-src/Cargo.lock
warning: file rustfmt-907134c2d10c0f11608dc4820b023f8040ad655a-src/Cargo.lock may be generated; SOURCE_DATE_EPOCH may be non-deterministic
patching sources
configuring
building
Running cargo build --release
warning: custom registry support via the `registry.index` configuration is being removed, this functionality will not work in the future
   Compiling bitflags v0.7.0 (registry file:///dev/null)
   Compiling regex-syntax v0.3.9 (registry file:///dev/null)
   Compiling winapi v0.2.8 (registry file:///dev/null)
   Compiling log v0.3.6 (registry file:///dev/null)
   Compiling utf8-ranges v0.1.3 (registry file:///dev/null)
   Compiling either v1.0.2 (registry file:///dev/null)
   Compiling winapi-build v0.1.1 (registry file:///dev/null)
   Compiling diff v0.1.9 (registry file:///dev/null)
   Compiling unicode-segmentation v1.0.1 (registry file:///dev/null)
   Compiling libc v0.2.20 (registry file:///dev/null)
   Compiling strings v0.0.1 (registry file:///dev/null)
   Compiling kernel32-sys v0.2.2 (registry file:///dev/null)
   Compiling rustc-serialize v0.3.22 (registry file:///dev/null)
   Compiling unicode-xid v0.0.4 (registry file:///dev/null)
   Compiling itertools v0.5.8 (registry file:///dev/null)
   Compiling getopts v0.2.14 (registry file:///dev/null)
   Compiling term v0.4.4 (registry file:///dev/null)
   Compiling same-file v0.1.2 (registry file:///dev/null)
   Compiling memchr v0.1.11 (registry file:///dev/null)
   Compiling walkdir v1.0.7 (registry file:///dev/null)
   Compiling aho-corasick v0.5.3 (registry file:///dev/null)
   Compiling multimap v0.3.0 (registry file:///dev/null)
   Compiling thread-id v2.0.0 (registry file:///dev/null)
   Compiling thread_local v0.2.7 (registry file:///dev/null)
   Compiling rustfmt v0.7.1 (file:///tmp/nix-build-my-rustfmt.drv-0/rustfmt-907134c2d10c0f11608dc4820b023f8040ad655a-src)
   Compiling regex v0.1.80 (registry file:///dev/null)
   Compiling syntex_pos v0.56.0 (registry file:///dev/null)
   Compiling toml v0.2.1 (registry file:///dev/null)
   Compiling syntex_errors v0.56.0 (registry file:///dev/null)
   Compiling syntex_syntax v0.56.2 (registry file:///dev/null)
   Compiling env_logger v0.3.5 (registry file:///dev/null)
    Finished release [optimized] target(s) in 201.45 secs
running tests
Running cargo test
warning: custom registry support via the `registry.index` configuration is being removed, this functionality will not work in the future
   Compiling winapi v0.2.8 (registry file:///dev/null)
   Compiling rustc-serialize v0.3.22 (registry file:///dev/null)
   Compiling either v1.0.2 (registry file:///dev/null)
   Compiling unicode-xid v0.0.4 (registry file:///dev/null)
   Compiling unicode-segmentation v1.0.1 (registry file:///dev/null)
   Compiling multimap v0.3.0 (registry file:///dev/null)
   Compiling getopts v0.2.14 (registry file:///dev/null)
   Compiling libc v0.2.20 (registry file:///dev/null)
   Compiling bitflags v0.7.0 (registry file:///dev/null)
   Compiling itertools v0.5.8 (registry file:///dev/null)
   Compiling utf8-ranges v0.1.3 (registry file:///dev/null)
   Compiling log v0.3.6 (registry file:///dev/null)
   Compiling diff v0.1.9 (registry file:///dev/null)
   Compiling winapi-build v0.1.1 (registry file:///dev/null)
   Compiling strings v0.0.1 (registry file:///dev/null)
   Compiling memchr v0.1.11 (registry file:///dev/null)
   Compiling same-file v0.1.2 (registry file:///dev/null)
   Compiling regex-syntax v0.3.9 (registry file:///dev/null)
   Compiling kernel32-sys v0.2.2 (registry file:///dev/null)
   Compiling aho-corasick v0.5.3 (registry file:///dev/null)
   Compiling walkdir v1.0.7 (registry file:///dev/null)
   Compiling thread-id v2.0.0 (registry file:///dev/null)
   Compiling term v0.4.4 (registry file:///dev/null)
   Compiling thread_local v0.2.7 (registry file:///dev/null)
   Compiling rustfmt v0.7.1 (file:///tmp/nix-build-my-rustfmt.drv-0/rustfmt-907134c2d10c0f11608dc4820b023f8040ad655a-src)
   Compiling regex v0.1.80 (registry file:///dev/null)
   Compiling syntex_pos v0.56.0 (registry file:///dev/null)
   Compiling toml v0.2.1 (registry file:///dev/null)
   Compiling syntex_errors v0.56.0 (registry file:///dev/null)
   Compiling syntex_syntax v0.56.2 (registry file:///dev/null)
   Compiling env_logger v0.3.5 (registry file:///dev/null)
    Finished debug [unoptimized + debuginfo] target(s) in 73.71 secs
     Running target/debug/deps/cargo_fmt-0ad84b97caab0ac6

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured

     Running target/debug/deps/rustfmt-fbf2efe288b268cc

running 17 tests
test comment::test::char_classes ... ok
test comment::test::comment_code_slices ... ok
test comment::test::comment_code_slices_three ... ok
test comment::test::comment_code_slices_two ... ok
test comment::test::test_find_uncommented ... ok
test comment::test::test_contains_comment ... ok
test comment::test::test_uncommented ... ok
test file_lines::test::test_range_adjacent_to ... ok
test file_lines::test::test_range_contains ... ok
test file_lines::test::test_range_intersects ... ok
test file_lines::test::test_range_merge ... ok
test issues::find_unnumbered_issue ... ok
test utils::bin_search_test ... ok
test issues::find_issue ... ok
test string::test::issue343 ... ok
test comment::test::format_comments ... ok
test issues::issue_type ... ok

test result: ok. 17 passed; 0 failed; 0 ignored; 0 measured

     Running target/debug/deps/rustfmt-570fc760da2d4b13

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured

     Running target/debug/deps/system-86641216ce7b20c2

running 9 tests
test rustfmt_diff_no_diff_test ... ok
test rustfmt_diff_make_diff_tests ... ok
test stdin_formatting_smoke_test ... ok
test format_lines_errors_are_reported ... ok
test coverage_tests ... ok
test checkstyle_test ... ok
test system_tests ... ok
test idempotence_tests ... ok
test self_tests ... ok

test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured

   Doc-tests rustfmt

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured

installing
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/cg6mdr5gz7bh7d3jg83cqab893212awm-my-rustfmt
shrinking /nix/store/cg6mdr5gz7bh7d3jg83cqab893212awm-my-rustfmt/bin/cargo-fmt
shrinking /nix/store/cg6mdr5gz7bh7d3jg83cqab893212awm-my-rustfmt/bin/rustfmt
stripping (with flags -S) in /nix/store/cg6mdr5gz7bh7d3jg83cqab893212awm-my-rustfmt/bin 
patching script interpreter paths in /nix/store/cg6mdr5gz7bh7d3jg83cqab893212awm-my-rustfmt
/nix/store/cg6mdr5gz7bh7d3jg83cqab893212awm-my-rustfmt

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
nix-dev mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-dev

Reply via email to