Subject: [bug#34217] [PATCH 11/11] gnu: Add ruby-cucumber and ruby-aruba.

From: Christopher Baines <[email-masked]>
Date: Fri, 08 Feb 2019 17:19:26 +0000

Björn Höfling <[email-masked]> writes:

> On Sun, 27 Jan 2019 11:49:56 +0000
> Christopher Baines <[email-masked]> wrote:
>
>> These packages are mutually dependant, so I've put them in one commit.
>>
>> * gnu/packages/ruby.scm (ruby-aruba, ruby-cucumber): New variables.
>
> You missed to add the "...-without-tests" variables here.

I wasn't quite sure whether to put only public things in the changelog,
or everything. I've included them in the changelog now.

>> +(define-public ruby-aruba
>> +  (package
>> +    (name "ruby-aruba")
>> +    (version "0.14.7")
>
> There is another update since yesterday:
> 0.14.8 - February 02, 2019 (169 KB)

Cool, I've updated to this new version.

>> +;; A version of ruby-aruba without tests run so that circular
>> dependencies can +;; be avoided.
>> +(define ruby-aruba-without-tests
>> +  (package
>> +    (inherit ruby-aruba)
>> +    (arguments '(#:tests? #f))
>> +    (propagated-inputs
>> +     (map (lambda (input)
>> +            (if (string=? (car input) "ruby-cucumber")
>> +                `("ruby-cucumber" ,ruby-cucumber-without-tests)
>> +                input))
>> +          (package-propagated-inputs ruby-aruba)))
>
> This is really nit-picking, I haven't tried it out myself and I haven't
> used it much myself, but I think this could be written more elegant with
> match-lambda [syntax errors might be included]:
>
>  (map (match-lambda
>        (("ruby-cucumber" . pkg)
>           `("ruby-cucumber" ,ruby-cucumber-without-tests))
> 	(input input)
> ...)

I've changed this to use alist-delete which Ricardo suggested as I think
that's the most straight forward.

Thanks for the your comments,

Chris