Cargobomb report: stable v nightly 2017-02-17


#1

Here’s another nightly cargobomb run from last week that I haven’t gotten around to triaging yet.

https://brson.github.io/cargobomb-reports/stable-v-nightly-2017-02-17/index.html

A lot are probably similar to the previous run: https://brson.github.io/cargobomb-reports/stable-v-nightly-2017-02-03/index.html

I will triage this sometime this week if nobody else gets to it.


#2

Looks like nodrop / arrayvec has finally been broken. I knew it was on shaky ground, but the tools to put it on solid such are still unstable (untagged union).


#3

I looked at these crates so far. Some expected errors, but plenty I can’t explain.

  • arena-tree – feature gate for move cell
  • arraydeque – double-panic only in nightly – https://github.com/rust-lang/rust/issues/40029 I think
  • arrayvec – double-panic only in nightly – https://github.com/rust-lang/rust/issues/40029 I think
  • asio – expected https://github.com/rust-lang/rust/issues/32330
  • astar – "type annotations required: cannot resolve std::collections::VecDeque<(i32, i32)>: std::cmp::PartialEq<_>"
  • bip_handshake – expected https://github.com/rust-lang/rust/issues/32330
  • botocore-parser – expected; quasi_codegen https://github.com/rust-lang/rust/issues/32330
  • derive_more-0.5.0 – cc @jseyfried, any idea about this?
    • "expected item, found ;" – trailing semicolon on struct declaration
    • “an extern crate loading macros must be at the crate root”
  • diesel_codegen_syntex-0.9.0 – lint violation; “error: unused #[macro_use] import”
  • done-0.0.0-reserve – random assertion failure, I’ve no idea
  • futures-threadpool-0.1.0 – lint violation; “unused #[macro_use] import”
  • gst-0.1.3 – “Entered unreachable section, this is a bug!”
  • hashconsing-0.3.0 – doc-test failure
  • hilite-1.0.0 – “the trait bound &&[std::string::String]: std::iter::Iterator is not satisfied”
  • http2hpack-0.1.3 – in lsio: “the trait bound &&[std::string::String]: std::iter::Iterator is not satisfied”
  • ipnetwork-0.12.1 – type annotations required: cannot resolve <_ as std::str::FromStr>::Err == _

#4

cc @arielb1 @canndrew – do you think that the gst-0.1.3 failure (“Entered unreachable section, this is a bug!”) might be because of inhabitedness changes?


#5

Thanks for investigating @bluss and @nikomatsakis!


#6

The derive_more-0.5.0 errors are emitted when running doc-tests, so I suspect https://github.com/rust-lang/rust/pull/37890 (cc @eddyb).


#7

The errors in the derive_more-0.5.0 doc-tests are legitimate, but the erroneous doc-test wasn’t collected and compiled until https://github.com/rust-lang/rust/pull/37890.


#8

Just FYI I’m going over more crates now.


#9

Next installment:

  • ithos-0.0.0 – lmdb-rs regression
  • libimagbookmark-0.2.0 – unused macro_use
  • libimagcounter-0.2.0 – as above
  • libimagentryfilter-0.2.0 – as above
  • libimagentrymarkdown-0.2.0 – as above
  • libimaginteraction-0.2.0 – as above
  • libimagref-0.2.0 – as above
  • libimagtimeui-0.2.0 – as above
  • lmdb-rs-0.7.4 – “lifetime parameters or bounds on method to_mdb_value do not match the trait declaration”, patched
  • lsio-0.1.16 – “the trait bound &&[std::string::String]: std::iter::Iterator is not satisfied”
  • m-0.1.1 – unused #[macro_use] import
  • namedarg_hack-0.1.1474613452 – some kind of change to libsyntax
  • nametable_codegen-0.1.2 – #32330 fix
  • nodrop-0.1.8 – unused import: std
  • notify-4.0.0 – test failure, write_long_file
  • pandoc_ast-0.4.0 – quasi_codegen v0.7.0 now errors because of #32330
  • pgrustxn-sys-0.0.8 – syntex_syntax v0.30.0 no w errors because of #32330
  • plumbum-0.0.8 – impl has strong requirements than trait, #32330
  • protobuf-json-0.1.0 – ICE
    • Cannot create local trans-item for DefId { krate: CrateNum(13), node: DefIndex(2576) => serde_json/746af4a5398efa393af4f0afe31dcb32::value[0]::Value[0]::F64[0] }
  • pty-shell-0.1.4 – #32330
  • pty-shell-0.2.0 – same
  • read-process-memory-0.1.0 – the trait bound &&[&str]: std::iter::Iterator is not satisfied

#10

More:

  • renv-0.2.2 – the trait bound &&[S]: std::iter::Iterator is not satisfied
  • reustmann-0.1.2 – error: couldn’t read “src/main.rs”: No such file or directory (os error 2) ??
  • roboime-next-protocol-0.1.0 – can’t find crate for protobuf_build
  • rotor-stream-0.6.2 – https://github.com/rust-lang/rust/issues/39207 (fc lint, deny by default)
  • rowcol-0.3.3 – Entered unreachable section, this is a bug!
  • rusqlite-0.7.3 – can’t find crate for pkg_config
  • rustc-cfg-0.2.0 – test test::all … FAILED ???
  • scan-rules-0.2.0 – strcursor v0.2.3 / mismatched types / Box<str> vs String
  • schemamama_rusqlite-0.5.0 – can’t find crate for pkg_config
  • small-logger-0.2.1 – type annotations needed
  • sphinxad-0.1.1 – can’t find crate for pkg_config
  • sphinxad-sys-0.1.2 – can’t find crate for pkg_config
  • stack-0.2.0 – Entered unreachable section, this is a bug!
    • lots of MIR warnings, not sure if they are relevant
  • stoppable_thread-0.2.1 – test_guard … FAILED
  • strcursor-0.2.3 – expected struct std::boxed::Box, found struct std::string::String
  • syntex_errors-0.52.0 – unused #[macro_use] import
  • syntex_syntax-0.52.0 – private struct constructors are not usable through reexports in outer modules
  • syntex_syntax-0.58.0 – private struct constructors are not usable through reexports in outer modules
  • tasks-framework-0.1.0 – actor_runner_schedule_with_a_primitive_actor_and_a_threadpool_executes_correctly … FAILED
  • tiberius-0.1.0 – fix for #32330

#11
  • void-1.0.2 – unreachable pattern (warnings, denied)
  • xmas-elf-0.3.0 – couldn’t read “src/main.rs”: No such file or directory (os error 2)
  • xmas-elf-0.4.0 –
  • tailhook.lithos.0c30f6865aa921dfcb62514b10fc38d8046c5b1f – could not find native static library container, perhaps an -L flag is missing?
  • tinco.rust-static_any_map.909025e6146137938d43fd01b2f715a990358662 – thread ‘static_map_multi_set’ panicked at ‘assertion failed: queue.len() == 3’, tests/static_any_map.rs:33
  • yggie.mach.b1c15026e0f31117d0d54ee6eeaeadd3e94a3d92 – [quickcheck] TEST FAILED (runtime error). Arguments: (UnitQuat(Quat { r: 0.6425298, i: -0.312948, j: -0.6288207, k: -0.3062736 }))

#12

Sorting by cause here (work in progress):


#13

I don’t think so. I couldn’t reproduce the failure locally but it looks like it must be coming from one of these two lines in the nodrop crate (which is used by arrayvec which is used by gst). nodrop and arrayvec are also broken but I couldn’t see any suspicious use of empty types in them (though maybe I didn’t look hard enough).


#14

FYI, here’s my blacklist of crates with problems:

- notify-3.0.1 flaky tests
- schedule_recv-0.1.0 timing-based tests
- MortenLohne.rasher - slow tests
- fountaincode-0.0.8 - slow tests
- https://github.com/tinco/rust-static_any_map - flaky tests
- sacn-0.1.1 - flaky tests
- psutil-1.0.0 - flaky tests
- json-0.11.3 - flaky tests
- bson-0.1.5 - flaky tests
- canteen-0.3.5 - broken test
- flame-0.1.10 - flaky tests
- s_app_dir-0.0.0 - flaky tests
- region-0.0.5 - flaky https://github.com/rust-lang/rust/issues/38717

This is not encoded into cargobomb yet, so one just has to remember to ignore these crates.

Also, any crate using rust-skeptic does not work with cargobomb reliably because of a bug. Any logs of crate resolution errors with skeptic in them can be ignored.

Thanks @nikomatsakis for the triage.


#15

Working of this list from niko I’ve filed issues on everything.