guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#28583] [PATCH 1/7] gnu: Add ruby-httpclient.


From: Ben Woodcroft
Subject: [bug#28583] [PATCH 1/7] gnu: Add ruby-httpclient.
Date: Wed, 27 Sep 2017 21:56:04 +1000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0

Hi,

Thanks for the patches.


On 25/09/17 03:17, Christopher Baines wrote:
* gnu/packages/ruby.scm (ruby-httpclient): New variable.
---
  gnu/packages/ruby.scm | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
  1 file changed, 51 insertions(+)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 80d3bffd8..ff6be875f 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -3579,6 +3579,57 @@ It has built-in support for the legacy 
@code{cookies.txt} and
      (home-page "https://github.com/sparklemotion/http-cookie";)
      (license license:expat)))
+(define-public ruby-httpclient
+  (package
+    (name "ruby-httpclient")
+    (version "2.8.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "httpclient" version))
+       (sha256
+        (base32
+         "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99"))))
+    (build-system ruby-build-system)
+    (arguments
+     '(;; TODO: Some tests currently fail
+       ;; ------
+       ;; 211 tests, 729 assertions, 13 failures, 4 errors, 0 pendings,
+       ;; 2 omissions, 0 notifications
+       ;; 91.866% passed
+       ;; ------
+       ;; 6.49 tests/s, 22.41 assertions/s
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (if tests?
+                 (zero?
+                  (system* "ruby"
+                           "-Ilib"
+                           "test/runner.rb"))
+                 #t)))
Since tests? is #f, this is effectively dead code. But it could be useful to someone continuing the tests, I'm not fussed.
+         (add-after 'install 'wrap-bin-httpclient
+           (lambda* (#:key outputs #:allow-other-keys)
+             (wrap-program (string-append (assoc-ref outputs "out")
+                                          "/bin/httpclient")
+               `("GEM_HOME" ":" prefix (,(getenv "GEM_HOME"))))
+             #t)))))
It would be preferable to move this to be part of the ruby-build-system as is done in e.g. python-build-system, but OK.

Otherwise LGTM.
ben





reply via email to

[Prev in Thread] Current Thread [Next in Thread]