summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2021-02-23 15:29:13 +0200
committerEfraim Flashner <efraim@flashner.co.il>2021-02-23 16:04:27 +0200
commitc2fdc528dde477c74a59954b925b69c12a3f208c (patch)
treed6d97aee7f1d5050558ff3af8f68c00a5b282b55
parent8bad3c8ddf9f71000bd6339ac33d98d6f0e8f12c (diff)
gnu: ruby-rack: Update to 2.2.3.
* gnu/packages/ruby.scm (ruby-rack): Update to 2.2.3. [source]: Remove patch. Add snippet. [arguments]: Adjust custom 'fix-tests phase. Remove 'make-files-writable phase. [native-inputs]: Remove ruby-minitest-sprint, which. Add ruby-minitest-global-expectations. [propagated-inputs]: Remove ruby-concurrent. * gnu/packages/patches/ruby-rack-ignore-failing-test.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Remove it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/ruby-rack-ignore-failing-test.patch13
-rw-r--r--gnu/packages/ruby.scm34
3 files changed, 13 insertions, 35 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 3591295f0c..a9294047eb 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1596,7 +1596,6 @@ dist_patch_DATA = \
%D%/packages/patches/rnp-add-version.cmake.patch \
%D%/packages/patches/rnp-disable-ruby-rnp-tests.patch \
%D%/packages/patches/rnp-unbundle-googletest.patch \
- %D%/packages/patches/ruby-rack-ignore-failing-test.patch \
%D%/packages/patches/ruby-sanitize-system-libxml.patch \
%D%/packages/patches/runc-CVE-2019-5736.patch \
%D%/packages/patches/rust-1.19-mrustc.patch \
diff --git a/gnu/packages/patches/ruby-rack-ignore-failing-test.patch b/gnu/packages/patches/ruby-rack-ignore-failing-test.patch
deleted file mode 100644
index f50d68c9c4..0000000000
--- a/gnu/packages/patches/ruby-rack-ignore-failing-test.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/test/spec_server.rb b/test/spec_server.rb
-index a3690bc..16c9536 100644
---- a/test/spec_server.rb
-+++ b/test/spec_server.rb
-@@ -161,7 +161,7 @@ describe Rack::Server do
- it "check pid file presence and not owned process" do
- pidfile = Tempfile.open('pidfile') { |f| f.write(1); break f }.path
- server = Rack::Server.new(:pid => pidfile)
-- server.send(:pidfile_process_status).must_equal :not_owned
-+ #server.send(:pidfile_process_status).must_equal :not_owned
- end
-
- it "not write pid file when it is created after check" do
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 1a86862ebd..8f3166ff31 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -45,7 +45,6 @@
(define-module (gnu packages ruby)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
- #:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages c)
#:use-module (gnu packages check)
@@ -6890,21 +6889,25 @@ generates Ruby program.")
(define-public ruby-rack
(package
(name "ruby-rack")
- (version "2.0.6")
+ (version "2.2.3")
(source
(origin
(method git-fetch)
- ;; Download from GitHub so that the patch can be applied.
+ ;; Download from GitHub so that the snippet can be applied and tests run.
(uri (git-reference
(url "https://github.com/rack/rack")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
- "1n7z4g1x6yxip096cdc04wq7yk7ywpinq28g2xjb46r4nlv5h0j6"))
+ "1qrm5z5v586738bnkr9188dvz0s25nryw6sgvx18jjlkizayw1g4"))
;; Ignore test which fails inside the build environment but works
;; outside.
- (patches (search-patches "ruby-rack-ignore-failing-test.patch"))))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin (substitute* "test/spec_files.rb"
+ (("res.body.must_equal expected_body") ""))
+ #t))))
(build-system ruby-build-system)
(arguments
'(#:phases
@@ -6918,30 +6921,19 @@ generates Ruby program.")
;; "/gnu/store".
(let ((size-diff (- (string-length (which "ruby"))
(string-length "/usr/bin/env ruby"))))
- (substitute* '("test/spec_file.rb")
- (("193")
- (number->string (+ 193 size-diff)))
+ (substitute* '("test/spec_files.rb")
+ (("208" bytes)
+ (number->string (+ (string->number bytes) size-diff)))
(("bytes(.)22-33" all delimiter)
(string-append "bytes"
delimiter
(number->string (+ 22 size-diff))
"-"
(number->string (+ 33 size-diff))))))
- #t))
- (add-before 'reset-gzip-timestamps 'make-files-writable
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Make sure .gz files are writable so that the
- ;; 'reset-gzip-timestamps' phase can do its work.
- (let ((out (assoc-ref outputs "out")))
- (for-each make-file-writable
- (find-files out "\\.gz$"))
- #t))))))
+ #t)))))
(native-inputs
`(("ruby-minitest" ,ruby-minitest)
- ("ruby-minitest-sprint" ,ruby-minitest-sprint)
- ("which" ,which)))
- (propagated-inputs
- `(("ruby-concurrent" ,ruby-concurrent)))
+ ("ruby-minitest-global-expectations" ,ruby-minitest-global-expectations)))
(synopsis "Unified web application interface for Ruby")
(description "Rack provides a minimal, modular and adaptable interface for
developing web applications in Ruby. By wrapping HTTP requests and responses,