Subject: [bug#32370] [PATCH 1/4] gnu: Add ruby-yajl-ruby.

From: Christopher Baines <[email-masked]>
Date: Tue, 28 Aug 2018 21:47:46 +0100

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

> On Sun,  5 Aug 2018 15:43:19 +0100
> Christopher Baines <[email-masked]> wrote:
>
>> From: Ben Woodcroft <[email-masked]>
>>
>> * gnu/packages/ruby.scm (ruby-yajl-ruby): New variable.
>>
>> Signed-off-by: Christopher Baines <[email-masked]>
>> ---
>>  gnu/packages/ruby.scm | 33 +++++++++++++++++++++++++++++++++
>>  1 file changed, 33 insertions(+)
>>
>> diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
>> index 908dfd575..a06be3e26 100644
>> --- a/gnu/packages/ruby.scm
>> +++ b/gnu/packages/ruby.scm
>> @@ -3626,6 +3626,39 @@ features such as filtering and fine grained
>> logging.") (home-page
>> "https://github.com/pjotrp/bioruby-logger-plugin") (license
>> license:expat)))
>> +(define-public ruby-yajl-ruby
>> +  (package
>> +    (name "ruby-yajl-ruby")
>> +    (version "1.4.0")
>
> 1.4.1 is availabe. Do we have a specific reason for 1.4.0? Either
> update or explain in a comment (Well, that would be at least my comment
> for a 'normal' package. I'm unsure how to handle this one right: It's
> part of the Rails-branch and I noticed there are some outdated
> packages. They could be outdated just because Ben started in 2016 with
> that (and still, there is no Rails in Guix) or there could be a
> specific reason for that (i.e Rails or a sub-dependency needs exactly
> this version). Or we just say: hey, let's just get these patches in as
> they were in 2016 to no longer prolonge this. We can update later).

I've updated the version for this package, but yes, in general, I've not
been looking too closely at versions, and just been trying to improve
the packages in other ways.

> License:
>
> ./ext/yajl/yajl_encode.h: BSD (3 clause)
> ./ext/yajl/yajl_ext.c: MIT/X11 (BSD like)
> ./ext/yajl/yajl_ext.h: MIT/X11 (BSD like)
> ./ext/yajl/yajl_gen.c: BSD (3 clause)
>
> We already have yajl. Is it possible to use that instead of the "ext"
> path? Does that make sense? Should we at least add a TODO-Comment?

I've had a look, but there seems to be some differences between the
two. So I think for the moment we can't, unless we go to the effort of
separating out the differences somehow.

I've tried to improve the license information.

> When I add --check -K --no-grafts, it says it is not deterministic. But:
>
> diffoscope /gnu/store/88dhpv16b5l55xf4dh090a6n93sh2akn-ruby-yajl-ruby-1.4.0  /gnu/store/88dhpv16b5l55xf4dh090a6n93sh2akn-ruby-yajl-ruby-1.4.0-check
> | less
>
> is empty. Is this a general Ruby problem?

I do see some differences with diffoscope, but I'm unsure what the
source is. I think it could be related to these packages having native
extensions.

Thanks again for taking a look Björn :)