From: Martin Becze <mjbecze@riseup.net>
To: Ivan Petkov <ivanppetkov@gmail.com>
Cc: guix-devel@gnu.org, 38408@debbugs.gnu.org
Subject: Re: [PATCH] WIP patches for the rust importer
Date: Wed, 04 Dec 2019 14:08:01 -0800 [thread overview]
Message-ID: <ac10db4dbb26caedb67b8150ec10f68e@riseup.net> (raw)
In-Reply-To: <A9ACD9FE-C0ED-45E8-9EBB-1F6C27C1392F@gmail.com>
On 2019-12-04 02:40, Ivan Petkov wrote:
> Hi Martin,
>
>> On Dec 2, 2019, at 3:10 PM, Martin Becze <mjbecze@riseup.net> wrote:
>>
>> When you say source import of the transitive dependencies, do you
>> mean
>> that all the rust libs should just be source only or do you mean the
>> top
>> level package should have to declare all the transitive
>> dependencies?
>
> All rust libs should be source only imports, but each package
> definition
> should only declare dependencies on the crates it consumes directly
> and
> guix should figure out the rest (in other words, I’d expect there to
> be a
> one-to-one mapping between a Cargo.toml and a package definition).
>
> For example, if crate foo depends on crate bar which depends on crate
> baz, I’d expect the definitions to look like:
>
> (define-public rust-foo
> (package
> (name “rust-foo")
> (source-input `((“bar” ,bar)))))
>
> (define-public rust-bar
> (package
> (name “rust-bar")
> (source-input `((“baz” ,baz)))))
>
> (define-public rust-baz
> (package
> (name “rust-baz")))
>
> But while building foo (assuming it is some kind of application), guix
> would ensure that bar and baz are available in the build environment.
>
> IMO this direction would be the most maintainable in the long term.
>
> —Ivan
Yes agree and that is what (recusive-import-semver) for produces rust.
-Martin
prev parent reply other threads:[~2019-12-04 22:08 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-26 12:04 [PATCH] WIP patches for the rust importer Efraim Flashner
2019-11-27 20:06 ` mjbecze
2019-11-27 20:58 ` Efraim Flashner
2019-11-28 0:36 ` mjbecze
2019-11-28 12:22 ` Efraim Flashner
2019-11-29 12:59 ` Martin Becze
2019-12-01 8:54 ` Efraim Flashner
2019-12-02 2:32 ` Martin Becze
2019-11-29 15:59 ` Martin Becze
2019-12-01 8:59 ` Efraim Flashner
2019-12-02 3:17 ` Martin Becze
2019-12-02 4:01 ` Ivan Petkov
2019-12-02 23:10 ` Martin Becze
2019-12-04 2:40 ` Ivan Petkov
2019-12-04 2:40 ` [bug#38408] " Ivan Petkov
2019-12-04 22:08 ` Martin Becze [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ac10db4dbb26caedb67b8150ec10f68e@riseup.net \
--to=mjbecze@riseup.net \
--cc=38408@debbugs.gnu.org \
--cc=guix-devel@gnu.org \
--cc=ivanppetkov@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.