Package: guix-patches;
Reported by: gemmaro <gemmaro.dev <at> gmail.com>
Date: Thu, 15 Jun 2023 17:06:02 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Message #11 received at 64083 <at> debbugs.gnu.org (full text, mbox):
From: gemmaro <gemmaro.dev <at> gmail.com> To: 64083 <at> debbugs.gnu.org Cc: gemmaro <gemmaro.dev <at> gmail.com> Subject: [PATCH 2/2] gnu: ruby-nokogiri: Update to 1.15.2. Date: Fri, 16 Jun 2023 02:08:28 +0900
* gnu/packages/ruby.scm (ruby-nokogiri): Update to 1.15.2. [source]<uri>: Use Git repository. <patches>: apply a patch to disable unneeded test setups. [arguments]: Enable check by running plain minitest. [home-page]: Update to current URL. --- gnu/packages/patches/ruby-nokogiri.patch | 29 +++++++++++++ gnu/packages/ruby.scm | 54 ++++++++++++++---------- 2 files changed, 61 insertions(+), 22 deletions(-) create mode 100644 gnu/packages/patches/ruby-nokogiri.patch diff --git a/gnu/packages/patches/ruby-nokogiri.patch b/gnu/packages/patches/ruby-nokogiri.patch new file mode 100644 index 00000000000..b55b4302344 --- /dev/null +++ b/gnu/packages/patches/ruby-nokogiri.patch @@ -0,0 +1,29 @@ +Description: Removed some unnecessary test setup such as SimpleCov and + minitest-reporters. +diff --git a/test/helper.rb b/test/helper.rb +index ed3133c6..4f5d4f1b 100644 +--- a/test/helper.rb ++++ b/test/helper.rb +@@ -13,22 +13,10 @@ + # - NOKOGIRI_GC: read more in test/test_memory_leak.rb + # + +-require "simplecov" +-SimpleCov.start do +- add_filter "/test/" +- enable_coverage :branch +-end +- + $VERBOSE = true + + require "minitest/autorun" + require "minitest/benchmark" +-require "minitest/reporters" +- +-nokogiri_minitest_reporters_options = { color: true, slow_count: 10, detailed_skip: false } +-nokogiri_minitest_reporters_options[:fast_fail] = true if ENV["NOKOGIRI_TEST_FAIL_FAST"] +-puts "Minitest::Reporters options: #{nokogiri_minitest_reporters_options}" +-Minitest::Reporters.use!(Minitest::Reporters::DefaultReporter.new(nokogiri_minitest_reporters_options)) + + require "fileutils" + require "tempfile" diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 9587c29a0ab..ae345bd5bfc 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -6254,38 +6254,48 @@ (define-public ruby-mini-portile-2 (define-public ruby-nokogiri (package (name "ruby-nokogiri") - (version "1.13.10") + (version "1.15.2") (source (origin - (method url-fetch) - (uri (rubygems-uri "nokogiri" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/sparklemotion/nokogiri") + (commit "a6ad20b3edc8f020043ccfe5d9ec6ae9af103720"))) + (file-name (git-file-name name version)) (sha256 (base32 - "0n79k78c5vdcyl0m3y3l5x9kxl6xf5lgriwi2vd665qmdkr01vnk")))) + "1n0vlg6v58jw3qzgyihz1dh5fvp4js1qgdh75j0kn47nvyiw3jxj")) + (patches (search-patches "ruby-nokogiri.patch")))) (build-system ruby-build-system) (arguments - ;; Tests fail because Nokogiri can only test with an installed extension, - ;; and also because many test framework dependencies are missing. - (list - #:tests? #f - #:gem-flags #~(list "--" "--use-system-libraries" - (string-append "--with-xml2-include=" - #$(this-package-input "libxml2") - "/include/libxml2" )) - #:phases - #~(modify-phases %standard-phases - (add-after 'install 'delete-mkmf.log - (lambda _ - ;; Rubygems installs build log files that embed volatile file - ;; names (see: - ;; https://github.com/rubygems/rubygems/issues/6259). - (for-each delete-file (find-files #$output "^mkmf\\.log$"))))))) - (native-inputs (list ruby-hoe)) + (list #:gem-flags #~(list "--" "--use-system-libraries" + (string-append "--with-xml2-include=" + #$(this-package-input "libxml2") + "/include/libxml2")) + #:phases #~(modify-phases %standard-phases + (add-after 'install 'delete-mkmf.log + (lambda _ + ;; Rubygems installs build log files that embed volatile file + ;; names (see: + ;; https://github.com/rubygems/rubygems/issues/6259). + (for-each delete-file + (find-files #$output "^mkmf\\.log$")))) + (delete 'check) + (add-after 'install 'check + (lambda* (#:key tests? #:allow-other-keys) + (setenv "GEM_PATH" (string-append + (getenv "GEM_PATH") ":" + #$output "/lib/ruby/vendor_ruby")) + (when tests? + (for-each (lambda (file) + (invoke "ruby" "-Itest" file)) + (find-files "test" "^test_.*\\.rb")))))))) + (native-inputs (list ruby-hoe ruby-rubyzip)) (inputs (list zlib libxml2 libxslt)) (propagated-inputs (list ruby-mini-portile-2 ruby-pkg-config)) (synopsis "HTML, XML, SAX, and Reader parser for Ruby") (description "Nokogiri (鋸) parses and searches XML/HTML, and features both CSS3 selector and XPath 1.0 support.") - (home-page "https://www.nokogiri.org/") + (home-page "https://nokogiri.org/") (license license:expat))) (define-public ruby-method-source -- 2.40.1
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.