On Tue, Feb 19, 2013 at 5:05 PM, Graydon Hoare <[email protected]> wrote:

> Any thoughts? Notes on other failure modes in package managers? Requests
> for ponies? I'd prefer specificity in response, if you can manage it. We
> all know package management is "generally miserable", but if you can
> describe _exactly_ how things go wrong in other systems and what we
> should be trying to avoid, or aiming for, that'd be good.
>

Two failure modes I ran into when using the Go build system, which this is
similar to:

1) Is it still possible to build without using this system?  Once my
project had particular build requirements (I think I needed to shell out to
a built program to generate more source code) I could no longer use the
built-in "go build" command, and it turned out they'd grown dependencies
between that and their unit-testing library -- that is, you couldn't use
the built-in unit test library if you were running the compiler yourself,
as "go build" had some codegen machinery in it required by the library!

I guess this is another way of supporting Dean's point, that you need the
escape hatch to be pretty wide to encompass all potential behaviors.

2) Where does a "configure" step fit into this?  If you're linking against
C headers or whatever you need a place to run extra code.  The reason I
bring it up is that you need the ability to run some steps before the other
builds start, which means you need to express some sort of
build-system-like dependency logic in between your pkg.rs steps.  I guess
that's inevitable though.  This point might as well be the same thing as
the first.  :)
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to