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

Regression in roboime-next-protocol-0.1.0, Rust 1.16, can't find protobuf_build #40197

Closed
brson opened this issue Mar 1, 2017 · 4 comments
Closed
Assignees
Labels
P-high High priority regression-from-stable-to-nightly Performance or correctness regression from stable to nightly.

Comments

@brson
Copy link
Contributor

brson commented Mar 1, 2017

101 brian@ip-10-145-43-250:~/dev/roboime-next⟫ git remote -v
origin  https://github.com/roboime/roboime-next/ (fetch)
origin  https://github.com/roboime/roboime-next/ (push)
brian@ip-10-145-43-250:~/dev/roboime-next⟫ git log -1
commit 54a8d0b69c5da3399af61d5742b65c385d638ca3
Merge: 12fbfed 1ca66a1
Author: Jan Segre <jansegre@gmail.com>
Date:   Wed Sep 14 00:44:34 2016 -0300

    Merge pull request #5 from roboime/dev

    First release.

127 brian@ip-10-145-43-250:/mnt2/dev⟫ rustc +nightly -Vv
rustc 1.17.0-nightly (be760566c 2017-02-28)
binary: rustc
commit-hash: be760566cf938d11d34c2f6bd90d8fd0f67c2344
commit-date: 2017-02-28
host: x86_64-unknown-linux-gnu
release: 1.17.0-nightly
LLVM version: 3.9

130 brian@ip-10-145-43-250:~/dev/roboime-next⟫ cargo +nightly test
   Compiling unicode-normalization v0.1.2
   Compiling num-traits v0.1.32
   Compiling byteorder v0.5.3
   Compiling libloading v0.2.2
   Compiling utf8-ranges v0.1.3
   Compiling regex-syntax v0.3.3
   Compiling libc v0.1.12
   Compiling num-integer v0.1.32
   Compiling itertools v0.4.15
warning[E0122]: trait bounds are not (yet) enforced in type definitions
   --> /home/brian/.cargo/registry/src/github.com-1ecc6299db9ec823/itertools-0.4.15/src/lib.rs:117:1
    |
117 | pub type MapFn<I, B> where I: Iterator = iter::Map<I, fn(I::Item) -> B>;
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

   Compiling clock_ticks v0.1.0
   Compiling unicode-width v0.1.3
   Compiling debug-builders v0.1.0
   Compiling log v0.3.6
   Compiling khronos_api v1.0.0
   Compiling lazy_static v0.1.16
   Compiling protobuf v1.0.21
   Compiling bitflags v0.7.0
   Compiling cfg-if v0.1.0
   Compiling strsim v0.4.1
   Compiling x11-dl v2.5.1
   Compiling num-iter v0.1.32
   Compiling xml-rs v0.3.4
   Compiling ansi_term v0.7.2
   Compiling odds v0.2.14
   Compiling winapi-build v0.1.1
   Compiling ws2_32-sys v0.2.1
   Compiling kernel32-sys v0.2.2
   Compiling rustc-serialize v0.3.19
   Compiling roboime-next-protocol v0.1.0 (file:///mnt2/dev/roboime-next/protocol)
error[E0463]: can't find crate for `protobuf_build`
 --> protocol/build.rs:1:1
  |
1 | extern crate protobuf_build;
  | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate

error: aborting due to previous error

error: Could not compile `roboime-next-protocol`.
Build failed, waiting for other jobs to finish...
error: build failed

Note on beta/stable this crate gets a different error:

   Compiling utf8-ranges v0.1.3
   Compiling nodrop v0.1.6
   Compiling arrayvec v0.3.16
   Compiling num-iter v0.1.32
   Compiling smallvec v0.1.7
   Compiling cfg-if v0.1.0
   Compiling gcc v0.3.28
   Compiling unicode-normalization v0.1.2
   Compiling protobuf v1.0.21
   Compiling num-complex v0.1.32
   Compiling linked-hash-map v0.0.9
   Compiling num v0.1.32
   Compiling winapi v0.2.7
   Compiling semver v0.1.20
   Compiling debug-builders v0.1.0
   Compiling winapi-build v0.1.1
   Compiling dbghelp-sys v0.2.0
   Compiling rustc_version v0.1.7
   Compiling ws2_32-sys v0.2.1
   Compiling libc v0.1.12
   Compiling tempfile v2.1.3
   Compiling ndarray v0.3.1
   Compiling bitflags v0.7.0
   Compiling clock_ticks v0.1.0
   Compiling xml-rs v0.3.4
   Compiling unicode-width v0.1.3
   Compiling stb_truetype v0.2.0
error[E0277]: the trait bound `Self: std::marker::Sized` is not satisfied
   --> /home/brian/.cargo/registry/src/github.com-1ecc6299db9ec823/ndarray-0.3.1/src/lib.rs:366:5
    |
366 |     unsafe fn clone_with_ptr(&self, ptr: *mut Self::Elem) -> (Self, *mut Self::Elem);
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::marker::Sized` is not implemented for `Self`
    |
    = help: consider adding a `where Self: std::marker::Sized` bound
    = note: tuple elements must have `Sized` type

error: aborting due to previous error

error: Could not compile `ndarray`.
Build failed, waiting for other jobs to finish...
error: build failed

cc @roboime

@brson brson added regression-from-stable-to-beta Performance or correctness regression from stable to beta. regression-from-stable-to-nightly Performance or correctness regression from stable to nightly. and removed regression-from-stable-to-beta Performance or correctness regression from stable to beta. labels Mar 1, 2017
@alexcrichton
Copy link
Member

@brson this looks like the build.rs inference that cargo now does most likely.

@brson brson added the P-high High priority label Mar 9, 2017
alexcrichton added a commit to alexcrichton/roboime-next that referenced this issue Mar 9, 2017
In rust-lang/rust#40197 it was discovered that this crate no longer builds on
nightly due to a rust-lang/cargo#3664 where Cargo will now infer that `build.rs`
is a build script unless explicitly configured with `build = false`.

Currently we're not intending to revert the Cargo change, but let me know if
this causes trouble though and we can certainly reconsider!
@alexcrichton
Copy link
Member

PR submitted roboime/roboime-next#6

@jansegre
Copy link

Merged. Your efforts are really appreciated.

@alexcrichton
Copy link
Member

THanks @jansegre!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P-high High priority regression-from-stable-to-nightly Performance or correctness regression from stable to nightly.
Projects
None yet
Development

No branches or pull requests

4 participants