summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorBen Woodcroft <donttrustben@gmail.com>2016-11-08 09:39:47 +1000
committerBen Woodcroft <donttrustben@gmail.com>2016-11-11 22:15:37 +1000
commite2bb2e1780ce875cc03cd5cc559f1dbc528d6f8e (patch)
tree7da4ef1a805aa08fedeba9ecc639104fc2562559 /gnu
parent7c45670b328dcccbbd710b02495bf2f2a8cb78fd (diff)
downloadguix-e2bb2e1780ce875cc03cd5cc559f1dbc528d6f8e.tar.gz
gnu: ruby-yard: Update to 0.9.5-1.d816482a.
* gnu/packages/ruby.scm (ruby-yard): Update to 0.9.5-1.d816482a.
[source]: Update source URL.
[arguments]: Remove unneeded substitutions.  Change test target.
* gnu/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch (New
file)
* gnu/local.mk (dist_patch_DATA): Add it.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch17
-rw-r--r--gnu/packages/ruby.scm69
3 files changed, 54 insertions, 34 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index b3a4cd5a88..b8c597ea69 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -7,6 +7,7 @@
 # Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
 # Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
 # Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
+# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 #
 # This file is part of GNU Guix.
 #
@@ -841,6 +842,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/ruby-rack-ignore-failing-test.patch      \
   %D%/packages/patches/ruby-symlinkfix.patch                    \
   %D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\
+  %D%/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch \
   %D%/packages/patches/sed-hurd-path-max.patch			\
   %D%/packages/patches/scheme48-tests.patch			\
   %D%/packages/patches/scotch-test-threading.patch		\
diff --git a/gnu/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch b/gnu/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch
new file mode 100644
index 0000000000..f592f5cd51
--- /dev/null
+++ b/gnu/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch
@@ -0,0 +1,17 @@
+The tests currently fail due to use of 'skip' rather than 'pending' to skip a
+test usually not skipped by upstream.  This patch has been proposed upstream
+at https://github.com/lsegal/yard/pull/1033
+
+diff --git a/spec/templates/helpers/html_helper_spec.rb b/spec/templates/helpers/html_helper_spec.rb
+index 84624c3..9c4fc2b 100644
+--- a/spec/templates/helpers/html_helper_spec.rb
++++ b/spec/templates/helpers/html_helper_spec.rb
+@@ -184,7 +184,7 @@ describe YARD::Templates::Helpers::HtmlHelper do
+     it "creates tables (markdown specific)" do
+       log.enter_level(Logger::FATAL) do
+         unless markup_class(:markdown).to_s == "RedcarpetCompat"
+-          skip "This test depends on a markdown engine that supports tables"
++          pending "This test depends on a markdown engine that supports tables"
+         end
+       end
+ 
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index a770486fd2..dd9984f234 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -3047,43 +3047,44 @@ features such as filtering and fine grained logging.")
     (license license:expat)))
 
 (define-public ruby-yard
-  (package
-    (name "ruby-yard")
-    (version "0.8.7.6")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (rubygems-uri "yard" version))
-       (sha256
-        (base32
-         "1dj6ibc0qqvmb5a5r5kk0vhr04mnrz9b26gnfrs5p8jgp620i89x"))))
-    (build-system ruby-build-system)
-    (arguments
-     `(#:test-target "specs"
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'check 'set-HOME-and-disable-failing-test
-           (lambda _
-             ;; $HOME needs to be set to somewhere writeable for tests to run
-             (setenv "HOME" "/tmp")
-             ;; Disable tests which fails on Ruby 2.3.  See
-             ;; https://github.com/lsegal/yard/issues/927
-             (substitute* "spec/parser/ruby/ruby_parser_spec.rb"
-               (("comment.type.should == :comment") "")
-               (("comment.docstring_hash_flag.should be_true") "")
-               (("comment.docstring.strip.should == .*") ""))
-             #t)))))
-    (native-inputs
-     `(("ruby-rspec" ,ruby-rspec-2)
-       ("ruby-rack" ,ruby-rack)))
-    (synopsis "Documentation generation tool for Ruby")
-    (description
-     "YARD is a documentation generation tool for the Ruby programming
+  ;; Use git reference because gem is >100 commits out of date and the tests
+  ;; do not pass with the released gem.
+  (let ((commit "d816482a0d4850506c3bcccc9434550c536c28c6"))
+    (package
+      (name "ruby-yard")
+      (version (string-append "0.9.5-1." (string-take commit 8)))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/lsegal/yard.git")
+               (commit commit)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "1j16c85x22if7y0fzi3c900p9wzkx2riq1y7vsj92a0zvwsxai4i"))
+         (patches (search-patches "ruby-yard-fix-skip-of-markdown-tests.patch"))))
+      (build-system ruby-build-system)
+      (arguments
+       `(#:test-target "spec"
+         #:phases
+         (modify-phases %standard-phases
+           (add-before 'check 'set-HOME-and-disable-failing-test
+             (lambda _
+               ;; $HOME needs to be set to somewhere writeable for tests to run
+               (setenv "HOME" "/tmp")
+               #t)))))
+      (native-inputs
+       `(("ruby-rspec" ,ruby-rspec-2)
+         ("ruby-rack" ,ruby-rack)))
+      (synopsis "Documentation generation tool for Ruby")
+      (description
+       "YARD is a documentation generation tool for the Ruby programming
 language.  It enables the user to generate consistent, usable documentation
 that can be exported to a number of formats very easily, and also supports
 extending for custom Ruby constructs such as custom class level definitions.")
-    (home-page "http://yardoc.org")
-    (license license:expat)))
+      (home-page "http://yardoc.org")
+      (license license:expat))))
 
 (define-public ruby-clap
   (package