Subject: Re: [bug#32370] [PATCH 2/4] gnu: Add ruby-oj.

From: Björn Höfling <[email-masked]>
Date: Tue, 7 Aug 2018 00:30:07 +0200

On Sun,  5 Aug 2018 15:43:20 +0100
Christopher Baines <[email-masked]> wrote:

> From: Ben Woodcroft <[email-masked]>
> 
> * gnu/packages/ruby.scm (ruby-oj): New variable.
> 
> Signed-off-by: Christopher Baines <[email-masked]>
> ---
>  gnu/packages/ruby.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
> 
> diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
> index a06be3e26..508bbe8c3 100644
> --- a/gnu/packages/ruby.scm
> +++ b/gnu/packages/ruby.scm
> @@ -3161,6 +3161,42 @@ unacceptable HTML and/or CSS from a string.")
>      (home-page "https://github.com/rgrove/sanitize/")
>      (license license:expat)))
>  
> +(define-public ruby-oj
> +  (package
> +    (name "ruby-oj")
> +    (version "3.6.0")

3.6.5 is already available.

> +    (source
> +     (origin
> +       (method url-fetch)
> +       ;; Version on rubygems.org does not contain Rakefile, so
> download from
> +       ;; GitHub instead.
> +       (uri (string-append "https://github.com/ohler55/oj/archive/v"
> +                           version ".tar.gz"))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1vhjkmnyllkiwpwqh6swbam826ch2vhrjqmbys2ki6wh48vzknlb"))))

I forgot: Is this checksum-stable or should we switch to 
git-fetch here?

> +    (build-system ruby-build-system)
> +    (arguments
> +     '(#:test-target "test_all"
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-before 'check 'disable-bundler
> +           (lambda _
> +             (substitute* "Rakefile"
> +               (("Bundler\\.with_clean_env") "1.times")
> +               (("bundle exec ") "")))))))
> +    (native-inputs
> +     `(("bundler" ,bundler)
> +       ("ruby-rspec" ,ruby-rspec)
> +       ("ruby-rake-compiler" ,ruby-rake-compiler)))
> +    (synopsis "JSON parser for Ruby optimized for speed")
> +    (description
> +     "Oj is a JSON parser and generator for Ruby, where the encoding
> and +decoding of JSON is implemented as a C extension to Ruby.")
> +    (home-page "https://www.ohler.com/oj")

I had trouble reaching that site over httpS. http was fine.
Is this permanent or temporary?
rubygems also has http as homepage.

> +    (license license:expat)))

./ext/oj/fast.c: BSD (3 clause)
./ext/oj/hash.c: BSD (3 clause)
./ext/oj/hash.h: BSD (3 clause)
./ext/oj/hash_test.c: BSD (3 clause)
and others

As above, guix build --rounds=2 -K complained, but diffoscope showed no dfference.

Björn