From 0ed219bb335b34f4ae3c1e28c923a0cfe9bd67ba Mon Sep 17 00:00:00 2001 From: Stephen Paul Weber Date: Tue, 10 May 2022 07:18:54 -0400 Subject: gnu: Add ruby-promise. * gnu/packages/ruby.scm (ruby-promise): New variable. Signed-off-by: Raghav Gururajan --- gnu/packages/ruby.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 817f9f614b..23526c2243 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -12328,3 +12328,37 @@ completes.") value semantics for a given set of attributes. The behaviour is similar to an immutable Struct class, plus extensible, lightweight validation and coercion.") (license license:expat))) + +(define-public ruby-promise + (package + (name "ruby-promise") + (version "0.7.4") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "promise.rb" version)) + (sha256 + (base32 "0a819sikcqvhi8hck1y10d1nv2qkjvmmm553626fmrh51h2i089d")))) + (build-system ruby-build-system) + (arguments + `(#:test-target "spec" + #:phases + (modify-phases %standard-phases + (add-after 'extract-gemspec 'less-strict-dependencies + (lambda _ + (substitute* "Rakefile" + (("if Gem.ruby_version.*") "if false\n")) + (substitute* "spec/spec_helper.rb" + ((".*devtools/spec_helper.*") "\n"))))))) + (native-inputs + (list + ruby-rspec + ruby-rspec-its + ruby-awesome-print + ruby-fuubar)) + (home-page "https://github.com/lgierth/promise.rb") + (synopsis "Asynchronous operation library for Ruby") + (description "Promise is a Ruby implementation of the Promises/A+ +specification. It provides 100% mutation coverage, tested on MRI 1.9, 2.0, 2.1, +2.2, Rubinius, and JRuby.") + (license license:unlicense))) -- cgit 1.4.1