Subject: bug#41036: closed (Re: [bug#41036] [PATCH 0/2] New patches to update Ruby to 2.7)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 24 Jun 2020 20:29:02 +0000

Your bug report

#41036: ruby: Add 2.7.3.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
41036: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=41036
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#41036] [PATCH 0/2] New patches to update Ruby to 2.7
From: Christopher Baines <[email-masked]>
To: Ryan Prior <[email-masked]>
Cc: [email-masked]
Date: Wed, 24 Jun 2020 21:28:51 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Ryan Prior via Guix-patches via <[email-masked]> writes:

> Here are the new patches you asked for, they should apply cleanly to master.
>
> Ryan Prior (2):
>   gnu: Renames ruby to ruby-2.6.
>   gnu: Ruby: Update to 2.7.
>
>  gnu/packages/ruby.scm | 10 ++++++----
>  1 file changed, 6 insertions(+), 4 deletions(-)

Great, thanks.

I've tweaked the commit messages a bit, and now pushed these patches to
core-updates.

I think the way ruby-2.7 inherits from ruby-2.6 is a bit odd, but I like
that this change is small in terms of the diff. Anyway, how to lay out
the package definitions is a lesser issue compared to what's actually
defined.

Now comes the challenge of actually fixing all the packages this change
will have broken. If updates to packages that fix issues with Ruby 2.7
don't cause too many rebuilds or break anything on master, then pushing
those to master is good. The master branch can then be merged in to
core-updates to get those changes applied there as well. Otherwise, the
fixes should be applied to core-updates.

Thanks,

Chris

Subject: ruby: Add 2.7.3.
From: Ryan Prior <[email-masked]>
To: "[email-masked]" <[email-masked]>
Date: Sat, 02 May 2020 23:25:53 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

This patch adds Ruby 2.7.3, the latest release.

From 0c10fb29338bc118c3fa442615aa6217960bb03b Mon Sep 17 00:00:00 2001
From: Ryan Prior <[email-masked]>
Date: Sat, 2 May 2020 18:17:00 -0500
Subject: [PATCH] gnu: Add ruby-2.7.

---
 gnu/packages/ruby.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 4d6d323442..67f344301c 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -128,6 +128,48 @@ a focus on simplicity and productivity.")
     (home-page "https://www.ruby-lang.org")
     (license license:ruby)))
 
+(define-public ruby-2.7
+  (package
+    (inherit ruby)
+    (version "2.7.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://cache.ruby-lang.org/pub/ruby/"
+                           (version-major+minor version)
+                           "/ruby-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0674x98f542y02r7n2yv2qhmh97blqhi2mvh2dn5f000vlxlh66l"))
+       (modules '((guix build utils)))
+       (snippet `(begin
+                   ;; Remove bundled libffi
+                   (delete-file-recursively "ext/fiddle/libffi-3.2.1")
+                   #t))))
+    (arguments
+     `(#:test-target "test"
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'replace-bin-sh-and-remove-libffi
+           (lambda _
+             (substitute* '("configure.ac"
+                            "template/Makefile.in"
+                            "lib/rubygems/installer.rb"
+                            "ext/pty/pty.c"
+                            "io.c"
+                            "lib/mkmf.rb"
+                            "process.c"
+                            "test/rubygems/test_gem_ext_configure_builder.rb"
+                            "test/rdoc/test_rdoc_parser.rb"
+                            "test/ruby/test_rubyoptions.rb"
+                            "test/ruby/test_process.rb"
+                            "test/ruby/test_system.rb"
+                            "tool/rbinstall.rb")
+               (("/bin/sh") (which "sh")))
+             #t)))))
+    (native-inputs
+     `(("autoconf" ,autoconf)))))
+
 (define-public ruby-2.4
   (package
     (inherit ruby)
-- 
2.17.1