diff options
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/patches/ruby-puma-ignore-broken-test.patch | 24 | ||||
-rw-r--r-- | gnu/packages/ruby.scm | 14 |
2 files changed, 23 insertions, 15 deletions
diff --git a/gnu/packages/patches/ruby-puma-ignore-broken-test.patch b/gnu/packages/patches/ruby-puma-ignore-broken-test.patch index fb653dc0ee..8961ffa4ca 100644 --- a/gnu/packages/patches/ruby-puma-ignore-broken-test.patch +++ b/gnu/packages/patches/ruby-puma-ignore-broken-test.patch @@ -1,13 +1,13 @@ -diff --git a/test/test_integration.rb b/test/test_integration.rb -index d9b189c..6e21180 100644 ---- a/test/test_integration.rb -+++ b/test/test_integration.rb -@@ -115,7 +115,7 @@ class TestIntegration < Test::Unit::TestCase - assert_kind_of Thread, t.join(1), "server didn't stop" - end +diff --git a/test/test_cli.rb b/test/test_cli.rb +index 9c515c6..6bd439f 100644 +--- a/test/test_cli.rb ++++ b/test/test_cli.rb +@@ -88,7 +88,7 @@ class TestCLI < Test::Unit::TestCase + s << "GET /stats HTTP/1.0\r\n\r\n" + body = s.read -- def test_phased_restart_via_pumactl -+ def no_test_phased_restart_via_pumactl - if Puma.jruby? || Puma.windows? - assert true - return +- assert_match(/\{ "workers": 2, "phase": 0, "booted_workers": 0, "old_workers": 0, "worker_status": \[\{ "pid": \d+, "index": 0, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \},\{ "pid": \d+, "index": 1, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \}\] \}/, body.split("\r\n").last) ++ #assert_match(/\{ "workers": 2, "phase": 0, "booted_workers": 0, "old_workers": 0, "worker_status": \[\{ "pid": \d+, "index": 0, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \},\{ "pid": \d+, "index": 1, "phase": 0, "booted": false, "last_checkin": "[^"]+", "last_status": \{\} \}\] \}/, body.split("\r\n").last) + + # wait until the first status ping has come through + sleep 6 diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 0ff7d5625c..21ca2f2c7c 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -3953,7 +3953,7 @@ part of the Prawn PDF generator.") (define-public ruby-puma (package (name "ruby-puma") - (version "3.4.0") + (version "3.6.0") (source (origin (method url-fetch) @@ -3963,14 +3963,22 @@ part of the Prawn PDF generator.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "10svyj2jk949y1dmkxyzipk1ddzl4iz9limrcws1zhpganpvq3j8")) - ;; Ignore broken test reported upstream. + "08aws79n9slcr50d9lwm011cp1pxvr1409c2jmyjxywvrc0a30v1")) + ;; Ignore broken tests reported upstream. ;; https://github.com/puma/puma/issues/995 + ;; https://github.com/puma/puma/issues/1044 (patches (search-patches "ruby-puma-ignore-broken-test.patch")))) (build-system ruby-build-system) (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'delete-integration-tests + (lambda _ + ;; One broken test in this file cannot be easily removed in + ;; isolation, it probably causes race conditions. So we delete + ;; the entire file. + (delete-file "test/test_integration.rb") + #t)) (add-before 'build 'fix-gemspec (lambda _ (substitute* "puma.gemspec" |