(define-public ruby
(package
(name "ruby")
- (replacement ruby-2.4.2)
- (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.2
+(define-public ruby-2.4.3
(package
(inherit ruby)
(name "ruby")
- (version "2.4.2")
+ (version "2.4.3")
(source
(origin
(method url-fetch)
"/ruby-" version ".tar.xz"))
(sha256
(base32
- "0dgp4ypk3smrsbh2c249n5pl6nqhpd2igq9484dbsh81sf08k2kl"))
+ "0l9bv67dgsphk42lmiskhrnh47hbyj6rfg2rcjx22xivpx07srr3"))
(modules '((guix build utils)))
(snippet `(begin
;; Remove bundled libffi
(define-public ruby-2.3
(package
(inherit ruby)
- (version "2.3.5")
+ (version "2.3.6")
(source
(origin
(method url-fetch)
"/ruby-" version ".tar.xz"))
(sha256
(base32
- "1npzcnq5kh0f9y88w5gj4v6ln8csr91361k3r43dmhlhn6mpsfkx"))
+ "0mlz0mk7yyxia37k8fdv8m8a72h61nfbns28430h796l4an6kng0"))
(modules '((guix build utils)))
(snippet `(begin
;; Remove bundled libffi
(define-public ruby-2.2
(package (inherit ruby)
- (version "2.2.8")
+ (version "2.2.9")
(source
(origin
(method url-fetch)
"/ruby-" version ".tar.xz"))
(sha256
(base32
- "1c31slidv2bdnnir3qfmdjs193b5s2ycb9pnf1lc55kk0cazrsip"))))))
+ "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
(home-page "http://github.com/rubyzip/rubyzip")
(license license:bsd-2)))
-(define-public ruby-ffi
- (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)))
-
(define-public ruby-simplecov-html
(package
(name "ruby-simplecov-html")
(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-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
(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)