Closed
Description
extern mod cgmath = "github.com/bjz/cgmath-rs";
rustpkg build basis
WARNING: The Rust package manager is experimental and may be unstable
error: Couldn't find package github.com/bjz/cgmath-rs, which is needed by basis-0.1, in any of the workspaces in the RUST_PATH (~[std::path::PosixPath{is_absolute: true, components: ~[~"Users", ~"brendan", ~"dev", ~"rust", ~"basis-rs", ~".rust"]}, std::path::PosixPath{is_absolute: true, components: ~[~"Users", ~"brendan", ~"dev", ~"rust", ~"basis-rs"]}])
task <unnamed> failed at 'Unhandled condition: nonexistent_package: (package_id::PkgId{path: std::path::PosixPath{is_absolute: false, components: ~[~"github.com", ~"bjz", ~"cgmath-rs"]}, short_name: ~"cgmath-rs", version: NoVersion}, ~"Dependency not found")', /Users/brendan/dev/rust/rust/src/libstd/condition.rs:131
task <unnamed> failed at 'receiving on closed channel', /Users/brendan/dev/rust/rust/src/libstd/rt/comm.rs:188
Activity
catamorphism commentedon Sep 25, 2013
@cmr also reported: https://gist.github.com/cmr/7a3d37572e6ea586831e
thewonderidiot commentedon Oct 8, 2013
@catamorphism I just spent a bit of time digging into this after noticing that this problem affected me everywhere except in subdirectories of /tmp.
The problem is the os::rename_file here: https://github.com/mozilla/rust/blob/master/src/librustpkg/package_source.rs#L205
It's calling libc::rename, which is returning -1 and throwing errno 18, cross-device link. So it looks like rustpkg will have to copy and delete instead of rename()ing if using /tmp, or maybe just clone into .rust/src directly. Eridius suggested this in #rust: "perhaps there should be a dir in .rust that it clones in to, e.g.
.src
(to keep it hidden). It can use a lockfile as well, so subsequent invocations of rustpkg can detect stale half-clones, and tell from the lockfile that their owning rustpkg is dead".catamorphism commentedon Oct 15, 2013
I think @thewonderidiot 's hypothesis is likely to be correct, but I have yet to be able to actually reproduce this myself on a Linux machine :-\
Also see: #9871
berleon commentedon Oct 28, 2013
@catamorphism I am currently working on adding support for mercurial to rustpkg. Here. Will also look into this issue.
catamorphism commentedon Nov 9, 2013
Closing as dup of #10253
Auto merge of rust-lang#10142 - EricWu2003:drop_ref-FP, r=llogiq