guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

09/15: gnu: Add ruby-immutable-struct.


From: guix-commits
Subject: 09/15: gnu: Add ruby-immutable-struct.
Date: Mon, 10 Jul 2023 07:40:28 -0400 (EDT)

cbaines pushed a commit to branch master
in repository guix.

commit 8509e977b472fe18bbb82c57aab6c026740a4a78
Author: Yovan Naumovski via Guix-patches via <guix-patches@gnu.org>
AuthorDate: Thu May 11 23:29:53 2023 +0300

    gnu: Add ruby-immutable-struct.
    
    * gnu/packages/ruby.scm (ruby-immutable-struct): New variable.
---
 gnu/packages/ruby.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 2d428796f4..f8b68ada89 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -7636,6 +7636,39 @@ of terminal output.")
     ;; There is no mention of the "or later" clause.
     (license license:gpl2)))
 
+(define-public ruby-immutable-struct
+  (package
+    (name "ruby-immutable-struct")
+    (version "2.4.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/stitchfix/immutable-struct";)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "17hlmy9jfwn3i5h2rwv832ycwcdqwxq7dkkd2yly28klwj0l52rq"))))
+    (build-system ruby-build-system)
+    (arguments
+     (list
+      ;; Issues with the lack of Set in Ruby 3
+      #:ruby ruby-2.7
+      #:phases
+      #~(modify-phases %standard-phases
+          (replace 'check
+            (lambda* (#:key tests? #:allow-other-keys)
+              (when tests?
+                (invoke "ruby" (which "rspec"))))))))
+    (native-inputs
+     (list ruby-rspec))
+    (synopsis "Ruby library for creating immutable struct classes")
+    (description
+     "Easily create value objects without the pain of Ruby's Struct (or its 
setters)")
+    (home-page "https://stitchfix.github.io/immutable-struct/";)
+    (license license:expat)))
+
 (define-public ruby-terraform
   (package
   (name "ruby-terraform")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]