GNU bug report logs - #38408
[PATCH 0/3] (WIP) Semantic version aware recusive importer for crates

Previous Next

Package: guix-patches;

Reported by: Martin Becze <mjbecze <at> riseup.net>

Date: Thu, 28 Nov 2019 00:14:01 UTC

Severity: normal

Tags: patch

Merged with 44560, 44694

Fixed in version 44560

Done: Hartmut Goebel <h.goebel <at> crazy-compilers.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Martin Becze <mjbecze <at> riseup.net>
To: Efraim Flashner <efraim <at> flashner.co.il>
Cc: guix-devel <at> gnu.org, 38408 <at> debbugs.gnu.org
Subject: [bug#38408] [PATCH] WIP patches for the rust importer
Date: Fri, 29 Nov 2019 07:59:35 -0800
[Message part 1 (text/plain, inline)]
On 2019-11-28 12:22, Efraim Flashner wrote:
> On Wed, Nov 27, 2019 at 04:36:20PM -0800, mjbecze <at> riseup.net wrote:
>>
>> > I'd love to see what you have so far if you want to share
>>
>> Okie Dokie, I posted it and cc'd ya.
>>
>> Also I took a look at your patches.
>> 0001-import-crate-Don-t-include-optional-dependencies.patch should work
>> just fine with my patch. But
>> 0003-import-crate-Honor-versioned-dependencies-when-impor.patch will not
>> work.
>>
>> I took a different route here with the naming. If you are interested take
>> a look take a look at my second patch. (recusive-import-semver) only will
>> add the version number to the name if the crate being imported is not the
>> latest version. I thought this was more inline with the canonical names,
>> but if always adding version number the export symbol is desirable it will
>> simplify things.
>>
> 
> I'll take a look at it in a minute. I figured with the versioned
> requirements we would always want to be specific in version numbers for
> crate dependents so I figured it made sense. Also, if we did want to
> provide an unversioned '-latest' version we could declare an extra
> variable '(define-public rust-libc rust-libc-0.2)' and now rust-libc
> points to rust-libc-0.2.
> 
>> Also I added a function (find-packages-by-name*/direct) to packages.scm
>> which will return the export symbol of a package that already exists. I
>> use this in case there are some non-canocal export name already added.
>>

I added the no-optional-dep logic to the recusive-semver patch
(https://issues.guix.gnu.org/issue/38408), but it seems to break
packages. I'm testing on the recursive importer on "hello-cli". Attach
is the patch to add the logic and the  before and after output for "guix
import crate -r hello-cli". Removing all the optional deps breaks clap
here for some reason which I haven't figured out.
[after.scm (text/plain, attachment)]
[before.scm (text/plain, attachment)]
[no-optional-deps.patch (text/x-diff, attachment)]

This bug report was last modified 4 years and 160 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.