summary refs log tree commit diff
path: root/gnu/packages/ruby.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-09-22 16:38:48 -0400
committerMark H Weaver <mhw@netris.org>2015-09-22 16:38:48 -0400
commitbd90127ad43d08c39e5bd592d03f7c0a4c683afe (patch)
treec840851273e349cb0aee31cb5958acdf093c819a /gnu/packages/ruby.scm
parent5f20553dee3fbc924b0cafb54ac215b0d3bf344c (diff)
parent430505eba33b7bb59fa2d22e0f21ff317cbc320d (diff)
downloadguix-bd90127ad43d08c39e5bd592d03f7c0a4c683afe.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages/ruby.scm')
-rw-r--r--gnu/packages/ruby.scm291
1 files changed, 291 insertions, 0 deletions
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index ee0acc8639..c906361971 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -421,6 +421,30 @@ Java Native Interface.")
     (home-page "http://www.artonx.org/collabo/backyard/?RubyJavaBridge")
     (license license:lgpl2.1+)))
 
+(define-public ruby-log4r
+  (package
+    (name "ruby-log4r")
+    (version "1.1.10")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (rubygems-uri "log4r" version))
+        (sha256
+          (base32
+            "0ri90q0frfmigkirqv5ihyrj59xm8pq5zcmf156cbdv4r4l2jicv"))))
+    (build-system ruby-build-system)
+    (arguments
+     '(#:tests? #f)) ; no Rakefile in gem
+    (synopsis "Flexible logging library for Ruby")
+    (description "Comprehensive and flexible logging library written
+in Ruby for use in Ruby programs.  It features a hierarchical logging
+system of any number of levels, custom level names, logger
+inheritance, multiple output destinations per log event, execution
+tracing, custom formatting, thread safteyness, XML and YAML
+configuration, and more.")
+     (home-page "http://log4r.rubyforge.org/")
+     (license license:bsd-3)))
+
 (define-public ruby-atoulme-antwrap
   (package
     (name "ruby-atoulme-antwrap")
@@ -465,6 +489,34 @@ extensions.")
     (home-page "http://codeforpeople.com/lib/ruby/orderedhash/")
     (license license:public-domain)))
 
+(define-public ruby-libxml
+  (package
+    (name "ruby-libxml")
+    (version "2.8.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "libxml-ruby" version))
+       (sha256
+        (base32
+         "1dhjqp4r9vkdp00l6h1cj8qfndzxlhlxk6b9g0w4v55gz857ilhb"))))
+    (build-system ruby-build-system)
+    (inputs
+     `(("zlib" ,zlib)
+       ("libxml2" ,libxml2)))
+    (arguments
+     '(#:tests? #f ; test suite hangs for unknown reason
+       #:gem-flags
+       (list "--"
+             (string-append "--with-xml2-include="
+                            (assoc-ref %build-inputs "libxml2")
+                            "/include/libxml2" ))))
+    (synopsis "Ruby bindings for GNOME Libxml2")
+    (description "The Libxml-Ruby project provides Ruby language bindings for
+the GNOME Libxml2 XML toolkit.")
+    (home-page "http://xml4r.github.com/libxml-ruby")
+    (license license:expat)))
+
 (define-public ruby-xml-simple
   (package
     (name "ruby-xml-simple")
@@ -505,6 +557,152 @@ interfaces.")
     (home-page "http://whatisthor.com/")
     (license license:expat)))
 
+(define-public ruby-lumberjack
+  (package
+    (name "ruby-lumberjack")
+    (version "1.0.9")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "lumberjack" version))
+              (sha256
+               (base32
+                "162frm2bwy58pj8ccsdqa4a6i0csrhb9h5l3inhkl1ivgfc8814l"))))
+    (build-system ruby-build-system)
+    (native-inputs
+     `(("ruby-rspec" ,ruby-rspec)))
+    (synopsis "Logging utility library for Ruby")
+    (description "Lumberjack is a simple logging utility that can be a drop in
+replacement for Logger or ActiveSupport::BufferedLogger.  It provides support
+for automatically rolling log files even with multiple processes writing the
+same log file.")
+    (home-page "http://github.com/bdurand/lumberjack")
+    (license license:expat)))
+
+(define-public ruby-nenv
+  (package
+    (name "ruby-nenv")
+    (version "0.2.0")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "nenv" version))
+              (sha256
+               (base32
+                "152wxwri0afwgnxdf93gi6wjl9rr5z7vwp8ln0gpa3rddbfc27s6"))))
+    (build-system ruby-build-system)
+    (arguments
+     `(#:tests? #f)) ; no tests included
+    (native-inputs
+     `(("ruby-rspec" ,ruby-rspec)
+       ("bundler" ,bundler)))
+    (synopsis "Ruby interface for modifying the environment")
+    (description "Nenv provides a convenient wrapper for Ruby's ENV to modify
+and inspect the environment.")
+    (home-page "https://github.com/e2/nenv")
+    (license license:expat)))
+
+(define-public ruby-shellany
+  (package
+    (name "ruby-shellany")
+    (version "0.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "shellany" version))
+              (sha256
+               (base32
+                "1ryyzrj1kxmnpdzhlv4ys3dnl2r5r3d2rs2jwzbnd1v96a8pl4hf"))))
+    (build-system ruby-build-system)
+    (arguments
+     `(#:test-target "default"
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-version-test
+          (lambda _
+            (substitute* "spec/shellany_spec.rb"
+              (("^RSpec") "require \"shellany\"\nRSpec"))
+            #t)))))
+    (native-inputs
+     `(("ruby-rspec" ,ruby-rspec)
+       ("ruby-nenv" ,ruby-nenv)
+       ("bundler" ,bundler)))
+    (synopsis "Capture command output")
+    (description "Shellany is a Ruby library providing functions to capture
+the output produced by running shell commands.")
+    (home-page "https://rubygems.org/gems/shellany")
+    (license license:expat)))
+
+(define-public ruby-notiffany
+  (package
+    (name "ruby-notiffany")
+    (version "0.0.7")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "notiffany" version))
+              (sha256
+               (base32
+                "1v5x1w59qq85r6dpv3y9ga34dfd7hka1qxyiykaw7gm0i6kggbhi"))))
+    (build-system ruby-build-system)
+    ;; Tests are not included in the gem.
+    (arguments `(#:tests? #f))
+    (propagated-inputs
+     `(("ruby-shellany" ,ruby-shellany)
+       ("ruby-nenv" ,ruby-nenv)))
+    (native-inputs
+     `(("bundler" ,bundler)))
+    (synopsis "Wrapper libray for notification libraries")
+    (description "Notiffany is a Ruby wrapper libray for notification
+libraries such as Libnotify.")
+    (home-page "https://github.com/guard/notiffany")
+    (license license:expat)))
+
+(define-public ruby-formatador
+  (package
+    (name "ruby-formatador")
+    (version "0.2.5")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "formatador" version))
+              (sha256
+               (base32
+                "1gc26phrwlmlqrmz4bagq1wd5b7g64avpx0ghxr9xdxcvmlii0l0"))))
+    (build-system ruby-build-system)
+    ;; Circular dependency: Tests require ruby-shindo, which requires
+    ;; ruby-formatador at runtime.
+    (arguments `(#:tests? #f))
+    (synopsis "Ruby library to format text on stdout")
+    (description "Formatador is a Ruby library to format text printed to the
+standard output stream.")
+    (home-page "http://github.com/geemus/formatador")
+    (license license:expat)))
+
+(define-public ruby-shindo
+  (package
+    (name "ruby-shindo")
+    (version "0.3.8")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "shindo" version))
+              (sha256
+               (base32
+                "0s8v1jbz8i0jh92f2fgxb3p51l1azrpkc8nv4mhrqy4vndpvd7wq"))))
+    (build-system ruby-build-system)
+    (arguments
+     `(#:test-target "shindo_tests"
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-tests
+          (lambda _
+            (substitute* "Rakefile"
+              (("system \"shindo") "system \"./bin/shindo")
+              ;; This test doesn't work, so we disable it.
+              (("fail \"The build_error test should fail") "#"))
+            #t)))))
+    (propagated-inputs
+     `(("ruby-formatador" ,ruby-formatador)))
+    (synopsis "Simple depth first Ruby testing")
+    (description "Shindo is a simple depth first testing library for Ruby.")
+    (home-page "https://github.com/geemus/shindo")
+    (license license:expat)))
+
 (define-public ruby-useragent
   (package
     (name "ruby-useragent")
@@ -1124,3 +1322,96 @@ it unifies the API for web servers, web frameworks, and software in between
 into a single method call.")
     (home-page "http://rack.github.io/")
     (license license:expat)))
+
+(define-public ruby-docile
+  (package
+    (name "ruby-docile")
+    (version "1.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "docile" version))
+       (sha256
+        (base32
+         "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx"))))
+    (build-system ruby-build-system)
+    (arguments
+     '(#:tests? #f)) ; needs github-markup, among others
+    (synopsis "Ruby EDSL helper library")
+    (description "Docile is a Ruby library that provides an interface for
+creating embedded domain specific languages (EDSLs) that manipulate existing
+Ruby classes.")
+    (home-page "https://ms-ati.github.io/docile/")
+    (license license:expat)))
+
+(define-public ruby-gherkin3
+  (package
+    (name "ruby-gherkin3")
+    (version "3.1.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (rubygems-uri "gherkin3" version))
+        (sha256
+          (base32
+            "0xsyxhqa1gwcxzvsdy4didaiq5vam8ma3fbwbw2w60via4k6r1z9"))))
+    (build-system ruby-build-system)
+    (native-inputs
+     `(("bundler" ,bundler)))
+    (arguments
+     '(#:tests? #f)) ; needs simplecov, among others
+    (synopsis "Gherkin parser for Ruby")
+    (description "Gherkin 3 is a parser and compiler for the Gherkin language.
+It is intended to replace Gherkin 2 and be used by all Cucumber
+implementations to parse '.feature' files.")
+    (home-page "https://github.com/cucumber/gherkin3")
+    (license license:expat)))
+
+(define-public ruby-cucumber-core
+  (package
+    (name "ruby-cucumber-core")
+    (version "1.3.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "cucumber-core" version))
+       (sha256
+        (base32
+         "12mrzf0s96izpq0k10lahlkgwc4fjs0zfs344rh8r8h3w3jyppr8"))))
+    (build-system ruby-build-system)
+    (propagated-inputs
+     `(("ruby-gherkin3" ,ruby-gherkin3)))
+    (native-inputs
+     `(("bundler" ,bundler)))
+    (arguments
+     '(#:tests? #f)) ; needs simplecov, among others
+    (synopsis "Core library for the Cucumber BDD app")
+    (description "Cucumber is a tool for running automated tests
+written in plain language.  Because they're written in plain language,
+they can be read by anyone on your team.  Because they can be read by
+anyone, you can use them to help improve communication, collaboration
+and trust on your team.")
+    (home-page "https://cucumber.io/")
+    (license license:expat)))
+
+(define-public ruby-bio-logger
+  (package
+    (name "ruby-bio-logger")
+    (version "1.0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "bio-logger" version))
+       (sha256
+        (base32
+         "02pylfy8nkdqzyzplvnhn1crzmfkj1zmi3qjhrj2f2imlxvycd28"))))
+    (build-system ruby-build-system)
+    (arguments
+     `(#:tests? #f)) ; rake errors, missing shoulda
+    (propagated-inputs
+     `(("ruby-log4r" ,ruby-log4r)))
+    (synopsis "Log4r wrapper for Ruby")
+    (description "Bio-logger is a wrapper around Log4r adding extra logging
+features such as filtering and fine grained logging.")
+    (home-page "https://github.com/pjotrp/bioruby-logger-plugin")
+    (license license:expat)))