(define-public ruby
(package
(name "ruby")
- (replacement ruby-2.4.1)
- (version "2.4.0")
+ (replacement ruby-2.4.3)
+ (version "2.4.2")
(source
(origin
(method url-fetch)
"/ruby-" version ".tar.xz"))
(sha256
(base32
- "141nnsdk2q83c23p5kl404id8gy1ap261gin48rbjj5sbksgx1rs"))
+ "0dgp4ypk3smrsbh2c249n5pl6nqhpd2igq9484dbsh81sf08k2kl"))
(modules '((guix build utils)))
(snippet `(begin
;; Remove bundled libffi
(home-page "https://ruby-lang.org")
(license license:ruby)))
-(define-public ruby-2.4.1
+(define-public ruby-2.4.3
(package
(inherit ruby)
(name "ruby")
- (version "2.4.1")
+ (version "2.4.3")
(source
(origin
(method url-fetch)
"/ruby-" version ".tar.xz"))
(sha256
(base32
- "0m763zf2v0jhrha3cx21g4dif6vc9gm714invs8h3sg35ncskj2g"))
+ "0l9bv67dgsphk42lmiskhrnh47hbyj6rfg2rcjx22xivpx07srr3"))
(modules '((guix build utils)))
(snippet `(begin
;; Remove bundled libffi
(define-public ruby-2.3
(package
(inherit ruby)
- (version "2.3.4")
+ (version "2.3.6")
(source
(origin
(method url-fetch)
"/ruby-" version ".tar.xz"))
(sha256
(base32
- "132p5kc1sx97svbx04g40pz5pr7p8f6jlmnq5r2prlcz5q1xj71l"))
+ "0mlz0mk7yyxia37k8fdv8m8a72h61nfbns28430h796l4an6kng0"))
(modules '((guix build utils)))
(snippet `(begin
;; Remove bundled libffi
(define-public ruby-2.2
(package (inherit ruby)
- (version "2.2.7")
+ (version "2.2.9")
(source
(origin
(method url-fetch)
"/ruby-" version ".tar.xz"))
(sha256
(base32
- "0lyb7gnbbhs3a3v9grsjgbaixm20wxz6x3h0czyrxnj3cpp8lk13"))))))
+ "0p18xykx8dm5mmlx5n5243z67lj4vbvwr70bnc5x12am22ql8fri"))))))
(define-public ruby-2.1
(package (inherit ruby)
`(#:test-target "test"
#:parallel-tests? #f
#:phases
- (alist-cons-before
- 'configure 'replace-bin-sh
- (lambda _
- (substitute* '("Makefile.in"
- "ext/pty/pty.c"
- "io.c"
- "lib/mkmf.rb"
- "process.c")
- (("/bin/sh") (which "sh"))))
- %standard-phases)))
+ (modify-phases %standard-phases
+ (add-before 'configure 'replace-bin-sh
+ (lambda _
+ (substitute* '("Makefile.in"
+ "ext/pty/pty.c"
+ "io.c"
+ "lib/mkmf.rb"
+ "process.c")
+ (("/bin/sh") (which "sh")))
+ #t)))))
(native-search-paths
(list (search-path-specification
(variable "GEM_PATH")
`(#:test-target "test"
#:parallel-tests? #f
#:phases
- (alist-cons-before
- 'configure 'replace-bin-sh
- (lambda _
- (substitute* '("Makefile.in"
- "ext/pty/pty.c"
- "io.c"
- "lib/mkmf.rb"
- "process.c")
- (("/bin/sh") (which "sh"))))
- %standard-phases)))))
+ (modify-phases %standard-phases
+ (add-before 'configure 'replace-bin-sh
+ (lambda _
+ (substitute* '("Makefile.in"
+ "ext/pty/pty.c"
+ "io.c"
+ "lib/mkmf.rb"
+ "process.c")
+ (("/bin/sh") (which "sh")))
+ #t)))))))
+
+(define (gem-directory ruby-version)
+ "Return the relative gem install directory for RUBY-VERSION."
+ (string-append "/lib/ruby/gems/" (version-major+minor ruby-version)
+ ".0/gems"))
+
+(define-public ruby-highline
+ (package
+ (name "ruby-highline")
+ (version "1.7.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "highline" version))
+ (sha256
+ (base32
+ "1nf5lgdn6ni2lpfdn4gk3gi47fmnca2bdirabbjbz1fk9w4p8lkr"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ;; TODO: NameError: uninitialized constant SPEC
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-code-statistics" ,ruby-code-statistics)))
+ (synopsis
+ "HighLine helps you build command-line interfaces")
+ (description
+ "HighLine provides a high-level IO library that provides validation,
+type conversion, and more for command-line interfaces. HighLine also includes
+a menu system for providing multiple options to the user.")
+ (home-page "https://github.com/JEG2/highline")
+ (license (list license:gpl2 license:ruby))))
(define-public ruby-hoe
(package
(define-public bundler
(package
(name "bundler")
- (version "1.15.3")
+ (version "1.15.4")
(source (origin
(method url-fetch)
(uri (rubygems-uri "bundler" version))
(sha256
(base32
- "125amldnpzzrfw76mmr7mlx002k1k6xdyrqf5bdnzl5hajvn0s5f"))))
+ "0wl4r7wbwdq68xidfv4hhzfb1spb6lmhbspwlzrg4pf1l6ipxlgs"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; avoid dependency cycles
(define-public ruby-rjb
(package
(name "ruby-rjb")
- (version "1.5.3")
+ (version "1.5.5")
(source (origin
(method url-fetch)
(uri (rubygems-uri "rjb" version))
(sha256
(base32
- "0gzs92dagk981s4vrymnqg0vll783b9k564j0cdgp167nc5a2zg4"))))
+ "1ppj8rbicj3w0nhh7f73mflq19yd7pzdzkh2a91hcvphriy5b0ca"))))
(build-system ruby-build-system)
(arguments
`(#:tests? #f ; no rakefile
(home-page "https://github.com/ThoughtWorksStudios/saikuro_treemap")
(license license:expat)))
+(define-public ruby-options
+ (package
+ (name "ruby-options")
+ (version "2.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "options" version))
+ (sha256
+ (base32
+ "1s650nwnabx66w584m1cyw82icyym6hv5kzfsbp38cinkr5klh9j"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:tests? #f ;; TODO: NameError: uninitialized constant Config
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'set-LIB
+ (lambda _
+ ;; This is used in the Rakefile, and setting it avoids an issue
+ ;; with running the tests.
+ (setenv "LIB" "options"))))))
+ (synopsis "Ruby library to parse options from *args cleanly")
+ (description
+ "The @code{options} library helps with parsing keyword options in Ruby
+functions.")
+ (home-page "https://github.com/ahoward/options")
+ (license license:ruby)))
+
(define-public ruby-orderedhash
(package
(name "ruby-orderedhash")
(define-public ruby-libxml
(package
(name "ruby-libxml")
- (version "2.8.0")
+ (version "3.0.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "libxml-ruby" version))
(sha256
(base32
- "1dhjqp4r9vkdp00l6h1cj8qfndzxlhlxk6b9g0w4v55gz857ilhb"))))
+ "0xy8wmjwjcnv36zi042678ncjzpxvy351ccbv7mzkns2n3kxfp54"))))
(build-system ruby-build-system)
(inputs
`(("zlib" ,zlib)
(define-public ruby-thor
(package
(name "ruby-thor")
- (version "0.19.1")
+ (version "0.19.4")
(source (origin
(method url-fetch)
(uri (rubygems-uri "thor" version))
(sha256
(base32
- "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z"))))
+ "01n5dv9kql60m6a00zc0r66jvaxx98qhdny3klyj0p3w34pad2ns"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; no test suite
(define-public ruby-lumberjack
(package
(name "ruby-lumberjack")
- (version "1.0.10")
+ (version "1.0.12")
(source (origin
(method url-fetch)
(uri (rubygems-uri "lumberjack" version))
(sha256
(base32
- "0ily8j83q959w19zb7qm6m7y53sdj9afxj4x6mn2adl4i7vpdsv4"))))
+ "0yz26k9mi0djx1qvlmvdw1xw2yf7a2rkfmnb2j0d28kms33xpibp"))))
(build-system ruby-build-system)
(native-inputs
`(("ruby-rspec" ,ruby-rspec)
(define-public ruby-nenv
(package
(name "ruby-nenv")
- (version "0.2.0")
+ (version "0.3.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "nenv" version))
(sha256
(base32
- "152wxwri0afwgnxdf93gi6wjl9rr5z7vwp8ln0gpa3rddbfc27s6"))))
+ "0r97jzknll9bhd8yyg2bngnnkj8rjhal667n7d32h8h7ny7nvpnr"))))
(build-system ruby-build-system)
(arguments
`(#:tests? #f)) ; no tests included
(home-page "https://github.com/postmodern/rubygems-tasks")
(license license:expat)))
-(define-public ruby-ffi
+(define-public ruby-rubyzip
(package
- (name "ruby-ffi")
- (version "1.9.18")
- (source (origin
- (method url-fetch)
- (uri (rubygems-uri "ffi" version))
- (sha256
- (base32
- "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0"))))
- (build-system ruby-build-system)
- ;; FIXME: Before running tests the build system attempts to build libffi
- ;; from sources.
- (arguments `(#:tests? #f))
- (native-inputs
- `(("ruby-rake-compiler" ,ruby-rake-compiler)
- ("ruby-rspec" ,ruby-rspec)
- ("ruby-rubygems-tasks" ,ruby-rubygems-tasks)))
- (inputs
- `(("libffi" ,libffi)))
- (synopsis "Ruby foreign function interface library")
- (description "Ruby-FFI is a Ruby extension for programmatically loading
-dynamic libraries, binding functions within them, and calling those functions
-from Ruby code. Moreover, a Ruby-FFI extension works without changes on Ruby
-and JRuby.")
- (home-page "http://wiki.github.com/ffi/ffi")
- (license license:bsd-3)))
+ (name "ruby-rubyzip")
+ (version "1.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "rubyzip" version))
+ (sha256
+ (base32
+ "06js4gznzgh8ac2ldvmjcmg9v1vg9llm357yckkpylaj6z456zqz"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'patch-tests
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "test/gentestfiles.rb"
+ (("/usr/bin/zip")
+ (string-append
+ (assoc-ref inputs "zip") "/bin/zip")))
+ (substitute* "test/input_stream_test.rb"
+ (("/usr/bin/env ruby") (which "ruby")))
+ #t)))))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-simplecov" ,ruby-simplecov)
+ ("zip" ,zip)
+ ("unzip" ,unzip)))
+ (synopsis "Ruby module is for reading and writing zip files")
+ (description
+ "The rubyzip module provides ways to read from and create zip files.")
+ (home-page "http://github.com/rubyzip/rubyzip")
+ (license license:bsd-2)))
(define-public ruby-simplecov-html
(package
(name "ruby-simplecov-html")
- (version "0.10.0")
+ (version "0.10.1")
(source (origin
(method url-fetch)
(uri (rubygems-uri "simplecov-html" version))
(sha256
(base32
- "1qni8g0xxglkx25w54qcfbi4wjkpvmb28cb7rj5zk3iqynjcdrqf"))))
+ "0f3psphismgp6jp1fxxz09zbswh7m2xxxr6gqlzdh7sgv415clvm"))))
(build-system ruby-build-system)
(arguments `(#:tests? #f)) ; there are no tests
(native-inputs
(define-public ruby-net-http-persistent
(package
(name "ruby-net-http-persistent")
- (version "2.9.4")
+ (version "3.0.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "net-http-persistent" version))
(sha256
(base32
- "1y9fhaax0d9kkslyiqi1zys6cvpaqx9a0y0cywp24rpygwh4s9r4"))))
+ "156rv95bgxfz6qw5y1r7c7bswr77918hygl8dyl14qzbqc5vyp18"))))
(build-system ruby-build-system)
(native-inputs
`(("ruby-connection-pool" ,ruby-connection-pool)
(define-public ruby-packnga
(package
(name "ruby-packnga")
- (version "1.0.1")
+ (version "1.0.4")
(source (origin
(method url-fetch)
(uri (rubygems-uri "packnga" version))
(sha256
(base32
- "1i71yhvlkvi5fp3m8jl9317cnddkbnrcy0syrmiw4y1lrq0cbncj"))))
+ "1vv2j0i43s4xid2km5hgrrxqlqpwgq8nlm8kaxfg2531c1vwfsd4"))))
(build-system ruby-build-system)
;; ruby-test-unit is required to run tests, but that needs ruby-packnga.
;; To break the dependency cycle we disable tests.
(define-public ruby-test-unit
(package
(name "ruby-test-unit")
- (version "3.2.4")
+ (version "3.2.5")
(source (origin
(method url-fetch)
(uri (rubygems-uri "test-unit" version))
(sha256
(base32
- "09mb34lnffracsqxl4dav4c21p5nr4pj9hm5qy2s83k5hbjya3s7"))))
+ "05bx36fw01iqz0xqhvjfrwjgnj1zx3b2vn6w1fzp19rchd7zqc52"))))
(build-system ruby-build-system)
(propagated-inputs
`(("ruby-power-assert" ,ruby-power-assert)))
(define-public ruby-introspection
(package
(name "ruby-introspection")
- (version "0.0.3")
+ (version "0.0.4")
(source (origin
(method url-fetch)
(uri (rubygems-uri "introspection" version))
(sha256
(base32
- "0g1j71sqfxbqk32wj7d0bkd3dlayfqzprfq3dbr0rq107xbxjcrr"))))
+ "1y2nbijkc0zlfmn9ss6588ilarq2kbn2i7w7pwwsli66dj84zgca"))))
(build-system ruby-build-system)
(arguments
`(#:phases
(define-public ruby-minitest-bacon
(package
(name "ruby-minitest-bacon")
- (version "1.0.2")
+ (version "1.0.3")
(source (origin
(method url-fetch)
(uri (rubygems-uri "minitest-bacon" version))
(sha256
(base32
- "0cm7r68422743i3b6fm4rrm0r6cnnjmglq5gcmmgl1f0rk5hnf6r"))))
+ "0zhdwcl6bgha61qiyfvr7zs7ywaxc33wmj9xhxl8jdmpdvifvfaj"))))
(build-system ruby-build-system)
(native-inputs
`(("ruby-hoe" ,ruby-hoe)))
(define-public ruby-minitest-bonus-assertions
(package
(name "ruby-minitest-bonus-assertions")
- (version "2.0")
+ (version "3.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "minitest-bonus-assertions" version))
(sha256
(base32
- "11nrd32kwy61ndg9csk7l1ifya79ghrrv3vsrxj57k50m7na6jkm"))))
+ "1hbq9jk904xkz868yha1bqcm6azm7kmjsll2k4pn2nrcib508h2a"))))
(build-system ruby-build-system)
(arguments
`(#:phases
(define-public ruby-minitest-hooks
(package
(name "ruby-minitest-hooks")
- (version "1.4.0")
+ (version "1.4.1")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "minitest-hooks" version))
(sha256
(base32
- "092fymh0c09v3a585qw3hc15b0zf159s74rxx1ga87drk5jr958z"))))
+ "05bngfyxwq1cflk568nhddgfrmws5ff6kiqax4skklsjnh71ykbi"))))
(build-system ruby-build-system)
(arguments
'(#:test-target "spec"))
(define-public ruby-git
(package
(name "ruby-git")
- (version "1.2.9.1")
+ (version "1.3.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "git" version))
(sha256
(base32
- "1sqfj8lmhl7c5zamcckkpik4izfph2zkv6krw0i8mzj5pdws5acs"))))
+ "1waikaggw7a1d24nw0sh8fd419gbf7awh000qhsf411valycj6q3"))))
(build-system ruby-build-system)
(arguments
`(#:tests? #f ; no tests
(home-page "https://github.com/nicksieger/multipart-post")
(license license:expat)))
+(define-public ruby-multi-json
+ (package
+ (name "ruby-multi-json")
+ (version "1.12.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "multi_json" version))
+ (sha256
+ (base32
+ "1raim9ddjh672m32psaa9niw67ywzjbxbdb8iijx3wv9k5b0pk2x"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:tests? #f)) ;; No testsuite included in the gem.
+ (synopsis "Common interface to multiple JSON libraries for Ruby")
+ (description
+ "This package provides a common interface to multiple JSON libraries,
+including Oj, Yajl, the JSON gem (with C-extensions), the pure-Ruby JSON gem,
+NSJSONSerialization, gson.rb, JrJackson, and OkJson.")
+ (home-page "http://github.com/intridea/multi_json")
+ (license license:expat)))
+
(define-public ruby-arel
(package
(name "ruby-arel")
(define-public ruby-method-source
(package
(name "ruby-method-source")
- (version "0.8.2")
+ (version "0.9.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "method_source" version))
(sha256
(base32
- "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2"))))
+ "0xqj21j3vfq4ldia6i2akhn2qd84m0iqcnsl49kfpq3xk6x0dzgn"))))
(build-system ruby-build-system)
+ (arguments
+ `(#:test-target "spec"))
(native-inputs
- `(("ruby-bacon" ,ruby-bacon)
+ `(("ruby-rspec" ,ruby-rspec)
("git" ,git)))
(synopsis "Retrieve the source code for Ruby methods")
(description "Method_source retrieves the source code for Ruby methods.
(define-public ruby-coderay
(package
(name "ruby-coderay")
- (version "1.1.1")
+ (version "1.1.2")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "coderay" version))
(sha256
(base32
- "1x6z923iwr1hi04k6kz5a6llrixflz8h5sskl9mhaaxy9jx2x93r"))))
+ "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; missing test files
(home-page "http://coderay.rubychan.de")
(license license:expat)))
+(define-public ruby-progress_bar
+ (package
+ (name "ruby-progress_bar")
+ (version "1.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "progress_bar" version))
+ (sha256
+ (base32
+ "1qc40mr6p1z9a3vlpnsg1zfgk1qswviql2a31y63wpv3vr6b5f48"))))
+ (build-system ruby-build-system)
+ (arguments
+ '(#:test-target "spec"))
+ (propagated-inputs
+ `(("ruby-highline" ,ruby-highline)
+ ("ruby-options" ,ruby-options)))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec)
+ ("ruby-timecop" ,ruby-timecop)))
+ (synopsis
+ "Ruby library for displaying progress bars")
+ (description
+ "ProgressBar is a simple library for displaying progress bars. The
+maximum value is configurable, and additional information can be displayed
+like the percentage completion, estimated time remaining, elapsed time and
+rate.")
+ (home-page "https://github.com/paul/progress_bar")
+ (license license:wtfpl2)))
+
(define-public ruby-pry
(package
(name "ruby-pry")
- (version "0.10.4")
+ (version "0.11.1")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "pry" version))
(sha256
(base32
- "05xbzyin63aj2prrv8fbq2d5df2mid93m81hz5bvf2v4hnzs42ar"))))
+ "0ci461a55sn50rlrmcl97ycf79681glp443a2gzp23rnm7y70fkj"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; no tests
(propagated-inputs
`(("ruby-coderay" ,ruby-coderay)
- ("ruby-method-source" ,ruby-method-source)
- ("ruby-slop" ,ruby-slop-3)))
+ ("ruby-method-source" ,ruby-method-source)))
(synopsis "Ruby REPL")
(description "Pry is an IRB alternative and runtime developer console for
Ruby. It features syntax highlighting, a plugin architecture, runtime
(define-public ruby-tins
(package
(name "ruby-tins")
- (version "1.7.0")
+ (version "1.15.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "tins" version))
(sha256
(base32
- "1060h8dgnjl9az0sv1b74yrni8d4mh3x858wq6yfbfdf5dxrfl0a"))))
+ "09whix5a7ics6787zrkwjmp16kqyh6560p9f317syks785805f7s"))))
(build-system ruby-build-system)
;; This gem needs gem-hadar at development time, but gem-hadar needs tins
;; at runtime. To avoid the dependency on gem-hadar we disable rebuilding
(define-public ruby-listen
(package
(name "ruby-listen")
- (version "3.0.3")
+ (version "3.1.5")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "listen" version))
(sha256
(base32
- "10lhshjklxlrkw7999j0xl6sdxd4x32kiy8rp88jwr68kis5vq2b"))))
+ "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx"))))
(build-system ruby-build-system)
(arguments '(#:tests? #f)) ; no tests
(propagated-inputs
(define-public ruby-activesupport
(package
(name "ruby-activesupport")
- (version "5.1.3")
+ (version "5.1.4")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "activesupport" version))
(sha256
(base32
- "16r18n6b1nlky0xx2lw8c1f15gr2vm34xz5g4byjcxf88m1s07xh"))))
+ "0sgf4rsfr7jcaqsx0wwzx4l4k9xsjlwv0mzl08pxiyp1qzyx8scr"))))
(build-system ruby-build-system)
(arguments
`(#:phases
(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)))
+ (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)))))
+ (native-inputs
+ `(("ruby-rack" ,ruby-rack)))
+ (synopsis
+ "Make HTTP requests with support for HTTPS, Cookies, authentication and more")
+ (description
+ "The @code{httpclient} ruby library provides functionality related to
+HTTP. Compared to the @code{net/http} library, @{httpclient} also provides
+Cookie, multithreading and authentication (digest, NTLM) support.
+
+Also provided is a @command{httpclient} command, which can perform HTTP
+requests either using arguments or with an interactive prompt.")
+ (home-page "https://github.com/nahi/httpclient")
+ (license license:ruby)))
+
(define-public ruby-ansi
(package
(name "ruby-ansi")
(add-before 'validate-runpath 'replace-broken-symlink
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
- (file (string-append out "/lib/ruby/gems/"
- ,(package-version ruby)
- "/gems/ansi-" ,version
- "/lib/ansi.yml")))
+ (file (string-append out
+ ,(gem-directory (package-version ruby))
+ "/ansi-" ,version "/lib/ansi.yml")))
;; XXX: This symlink is broken since ruby 2.4.
;; https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00034.html
(delete-file file)
(add-before 'validate-runpath 'replace-broken-symlink
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
- (file (string-append out "/lib/ruby/gems/"
- ,(package-version ruby)
- "/gems/ae-" ,version
- "/lib/ae.yml")))
+ (file (string-append out
+ ,(gem-directory (package-version ruby))
+ "/ae-" ,version "/lib/ae.yml")))
;; XXX: This symlink is broken since ruby 2.4.
;; https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00034.html
(delete-file file)
(define-public ruby-net-http-digest-auth
(package
(name "ruby-net-http-digest-auth")
- (version "1.4")
+ (version "1.4.1")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "net-http-digest_auth" version))
(sha256
(base32
- "14801gr34g0rmqz9pv4rkfa3crfdbyfk6r48vpg5a5407v0sixqi"))))
+ "1nq859b0gh2vjhvl1qh1zrk09pc7p54r9i6nnn6sb06iv07db2jb"))))
(build-system ruby-build-system)
(native-inputs
`(("ruby-hoe" ,ruby-hoe)))
are doing, you can fiddle with every last bit of your email directly.")
(home-page "https://github.com/mikel/mail")
(license license:expat)))
+
+(define-public ruby-code-statistics
+ (package
+ (name "ruby-code-statistics")
+ (version "0.2.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (rubygems-uri "code_statistics" version))
+ (sha256
+ (base32
+ "07rdpsbwbmh4vp8nxyh308cj7am2pbrfhv9v5xr2d5gq8hnnsm93"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; Not all test code is included in gem.
+ (synopsis "Port of the rails 'rake stats' method")
+ (description
+ "This gem is a port of the rails 'rake stats' method so it can be made
+more robust and work for non rails projects.")
+ (home-page "http://github.com/danmayer/code_statistics")
+ (license license:expat)))