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

Cargo does not build on stable (beta) channel #1479

Closed
callahad opened this issue Apr 4, 2015 · 3 comments
Closed

Cargo does not build on stable (beta) channel #1479

callahad opened this issue Apr 4, 2015 · 3 comments

Comments

@callahad
Copy link
Contributor

callahad commented Apr 4, 2015

When I try to build Cargo with rust-1.0.0-beta, I see a bunch of failures, but most of it seems to be fixed upstream. Here's a summary:

Can't derive Copy as trait core::clone::Clone is not implemented on:

  • liblibc: Fixed upstream
    • types::os::common::posix01::{glob_t,timeval,timespec,timezone}
    • types::os::common::bsd43::rusage
    • types::os::common::bsd44::{sockaddr,sockaddr_storage,sockaddr_in,in_addr,sockaddr_in6,in6_addr,ip_mreq,ip6_mreq,addrinfo,sockaddr_un,ifaddrs}
    • types::os::arch::posix01::{stat,utimbuf,pthread_attr_t}
    • types::os::arch::extra::mach_timepase_info
  • term-0.2.4: Fixed in 0.2.6
    • terminfo::parm::{States,FormatState,Flags,FormatOp
    • Attr
  • semver-0.1.17: Fixed in 0.1.18
    • version_req::{ReqParseError,LexState}
  • regex-0.1.24: Fixed in 0.1.25
    • vm::{MatchKind,StepState}
  • glob-0.2.7: Fixed in 0.2.9
    • MatchResult

Use of feature flags

  • threadpool-0.1.2: Fixed in 0.1.3
    • #!feature(unsafe_destructor)
  • pkg-config-0.3.2: Fixed in 0.3.3
    • #!feature(convert)
  • gcc-0.3.3: Fixed in 0.3.4
    • #![feature(convert)]

Other

  • tar-0.2.7: Fixed in 0.2.9
    • Wrong arity when calling Error::new
  • rustc-serialize-0.3.10: Fixed in 0.3.11
    • Uses undeclared trait std::error::FromError
@callahad
Copy link
Contributor Author

callahad commented Apr 4, 2015

...and that rabbit hole went a bit deeper than expected. Iteratively updating a bunch of dependencies landed me at a point where I can almost compile Cargo, but for tar's reliance on #![feature(fs, fs_time, fs_ext)].

Upstream tar bug: alexcrichton/tar-rs#17

callahad added a commit to callahad/cargo that referenced this issue Apr 4, 2015
Work in progress. Everything seems to compile except for the tar crate.

Will close rust-lang#1479 upon completion.
@andersk
Copy link

andersk commented Apr 4, 2015

Cargo also needs git2, which doesn’t build on beta due to #![feature(catch_panic)] (alexcrichton/git2-rs#54).

@alexcrichton
Copy link
Member

Thanks for this! This is a known issue, and we've actually got quite a small set of features to remove before Cargo builds on stable rust (as you've discovered!).

At this time this unfortunately isn't actionable as all these features are crucial to the operation of Cargo and can't be removed. I plan to write an RFC for all the fs-related features quite soon, and git2's feature of catch_panic will likely also be stabilized during this next cycle (it was a late addition in the last one).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants