unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add re2.
@ 2016-08-15 13:05 Marius Bakke
  2016-08-16 17:59 ` Leo Famulari
  0 siblings, 1 reply; 13+ messages in thread
From: Marius Bakke @ 2016-08-15 13:05 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 183 bytes --]


I wasn't sure where to put this, so went with its own file. It does not
fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
be renamed to regex.scm or similar.


[-- Attachment #2: 0001-gnu-Add-re2.patch --]
[-- Type: text/x-patch, Size: 3558 bytes --]

From c8aa1ecab5176dc9d2b02a4063936b77039af163 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@fastmail.com>
Date: Sun, 14 Aug 2016 20:16:01 +0100
Subject: [PATCH] gnu: Add re2.

* gnu/packages/re2.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
---
 gnu/local.mk         |  1 +
 gnu/packages/re2.scm | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)
 create mode 100644 gnu/packages/re2.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 7416850..a95a503 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -296,6 +296,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/ratpoison.scm			\
   %D%/packages/rdesktop.scm			\
   %D%/packages/rdf.scm				\
+  %D%/packages/re2.scm				\
   %D%/packages/readline.scm			\
   %D%/packages/rrdtool.scm			\
   %D%/packages/rsync.scm			\
diff --git a/gnu/packages/re2.scm b/gnu/packages/re2.scm
new file mode 100644
index 0000000..073e766
--- /dev/null
+++ b/gnu/packages/re2.scm
@@ -0,0 +1,57 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages re2)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu))
+
+(define-public re2
+   (package
+     (name "re2")
+     (version "2016-08-01")
+     (source (origin
+               (method url-fetch)
+               (uri
+                (string-append
+                 "https://github.com/google/re2/archive/"
+                 version ".tar.gz"))
+               (file-name (string-append name "-" version ".tar.gz"))
+               (sha256
+                (base32
+                 "06pfm3xi5irrrij85m0c46rsn9jyg1rc2r431wi2knhjvbw9f0bx"))))
+     (build-system gnu-build-system)
+     (arguments
+      `(#:test-target "test"
+        ;; There is no configure step, but the Makefile respects a prefix.
+        #:make-flags (list (string-append "prefix=" %output))
+        #:phases
+        (modify-phases %standard-phases
+          (delete 'configure)
+          (add-after 'install 'delete-static-library
+            (lambda* (#:key outputs #:allow-other-keys)
+              ;; No make target for shared-only; delete the static version.
+              (delete-file (string-append (assoc-ref outputs "out")
+                                          "/lib/libre2.a")))))))
+     (home-page "https://github.com/google/re2")
+     (synopsis "Fast, safe, thread-friendly regular expression engine")
+     (description "RE2 is a fast, safe, thread-friendly alternative to
+backtracking regular expression engines like those used in PCRE, Perl and
+Python.  It is a C++ library.")
+     (license license:bsd-3)))
-- 
2.9.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-15 13:05 [PATCH] gnu: Add re2 Marius Bakke
@ 2016-08-16 17:59 ` Leo Famulari
  2016-08-17 10:34   ` Marius Bakke
  0 siblings, 1 reply; 13+ messages in thread
From: Leo Famulari @ 2016-08-16 17:59 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
> 
> I wasn't sure where to put this, so went with its own file. It does not
> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
> be renamed to regex.scm or similar.

The patch looks good, but please put it in regex.scm! But, I don't want
to move all the regex packages into this new regex module. Perhaps tre,
since it appears to have no users in our tree.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-16 17:59 ` Leo Famulari
@ 2016-08-17 10:34   ` Marius Bakke
  2016-08-17 15:18     ` Marius Bakke
  2016-08-18 20:37     ` Leo Famulari
  0 siblings, 2 replies; 13+ messages in thread
From: Marius Bakke @ 2016-08-17 10:34 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 529 bytes --]

Leo Famulari <leo@famulari.name> writes:

> On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
>> 
>> I wasn't sure where to put this, so went with its own file. It does not
>> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
>> be renamed to regex.scm or similar.
>
> The patch looks good, but please put it in regex.scm! But, I don't want
> to move all the regex packages into this new regex module. Perhaps tre,
> since it appears to have no users in our tree.

Moved to regex.scm. Thanks!


[-- Attachment #2: 0001-gnu-Add-re2.patch --]
[-- Type: text/x-patch, Size: 3570 bytes --]

From 137d7ca124c66d23862949228b678a2db1a940b0 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@fastmail.com>
Date: Sun, 14 Aug 2016 20:16:01 +0100
Subject: [PATCH] gnu: Add re2.

* gnu/packages/regex.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
---
 gnu/local.mk           |  1 +
 gnu/packages/regex.scm | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)
 create mode 100644 gnu/packages/regex.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 7416850..7f4e397 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -297,6 +297,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/rdesktop.scm			\
   %D%/packages/rdf.scm				\
   %D%/packages/readline.scm			\
+  %D%/packages/regex.scm				\
   %D%/packages/rrdtool.scm			\
   %D%/packages/rsync.scm			\
   %D%/packages/ruby.scm				\
diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm
new file mode 100644
index 0000000..cea9db8
--- /dev/null
+++ b/gnu/packages/regex.scm
@@ -0,0 +1,57 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages regex)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu))
+
+(define-public re2
+   (package
+     (name "re2")
+     (version "2016-08-01")
+     (source (origin
+               (method url-fetch)
+               (uri
+                (string-append
+                 "https://github.com/google/re2/archive/"
+                 version ".tar.gz"))
+               (file-name (string-append name "-" version ".tar.gz"))
+               (sha256
+                (base32
+                 "06pfm3xi5irrrij85m0c46rsn9jyg1rc2r431wi2knhjvbw9f0bx"))))
+     (build-system gnu-build-system)
+     (arguments
+      `(#:test-target "test"
+        ;; There is no configure step, but the Makefile respects a prefix.
+        #:make-flags (list (string-append "prefix=" %output))
+        #:phases
+        (modify-phases %standard-phases
+          (delete 'configure)
+          (add-after 'install 'delete-static-library
+            (lambda* (#:key outputs #:allow-other-keys)
+              ;; No make target for shared-only; delete the static version.
+              (delete-file (string-append (assoc-ref outputs "out")
+                                          "/lib/libre2.a")))))))
+     (home-page "https://github.com/google/re2")
+     (synopsis "Fast, safe, thread-friendly regular expression engine")
+     (description "RE2 is a fast, safe, thread-friendly alternative to
+backtracking regular expression engines like those used in PCRE, Perl and
+Python.  It is a C++ library.")
+     (license license:bsd-3)))
-- 
2.9.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-17 10:34   ` Marius Bakke
@ 2016-08-17 15:18     ` Marius Bakke
  2016-08-18 20:43       ` Leo Famulari
  2016-09-12 13:38       ` Alex Kost
  2016-08-18 20:37     ` Leo Famulari
  1 sibling, 2 replies; 13+ messages in thread
From: Marius Bakke @ 2016-08-17 15:18 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 694 bytes --]

Marius Bakke <mbakke@fastmail.com> writes:

> Leo Famulari <leo@famulari.name> writes:
>
>> On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
>>> 
>>> I wasn't sure where to put this, so went with its own file. It does not
>>> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
>>> be renamed to regex.scm or similar.
>>
>> The patch looks good, but please put it in regex.scm! But, I don't want
>> to move all the regex packages into this new regex module. Perhaps tre,
>> since it appears to have no users in our tree.
>
> Moved to regex.scm. Thanks!

..and here is a patch that moves tre.scm over as well. The code is
unchanged apart from license: prefix.


[-- Attachment #2: 0002-gnu-tre-Move-to-regex.scm.patch --]
[-- Type: text/x-patch, Size: 5483 bytes --]

From 8e673ebd8c68c3a92fa60b56068339c011607752 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@fastmail.com>
Date: Wed, 17 Aug 2016 16:10:15 +0100
Subject: [PATCH 2/2] gnu: tre: Move to regex.scm.

* gnu/packages/tre.scm (tre): Move from here ...
* gnu/packages/regex.scm (tre): ... to here.
* gnu/packages/tre.scm: Delete file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove tre.scm.
---
 gnu/local.mk           |  1 -
 gnu/packages/regex.scm | 34 ++++++++++++++++++++++++++++++
 gnu/packages/tre.scm   | 57 --------------------------------------------------
 3 files changed, 34 insertions(+), 58 deletions(-)
 delete mode 100644 gnu/packages/tre.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index a18ed44..ebf2d13 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -342,7 +342,6 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/tls.scm				\
   %D%/packages/tmux.scm				\
   %D%/packages/tor.scm				\
-  %D%/packages/tre.scm				\
   %D%/packages/tv.scm				\
   %D%/packages/unrtf.scm			\
   %D%/packages/upnp.scm				\
diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm
index cea9db8..b34b26d 100644
--- a/gnu/packages/regex.scm
+++ b/gnu/packages/regex.scm
@@ -1,4 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 John Darrington
+;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -55,3 +57,35 @@
 backtracking regular expression engines like those used in PCRE, Perl and
 Python.  It is a C++ library.")
      (license license:bsd-3)))
+
+(define-public tre
+  (package
+    (name "tre")
+    (version "0.8.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri
+          (string-append "http://laurikari.net/tre/" name "-" version
+                         ".tar.bz2"))
+        (sha256
+          (base32 "0n36cgqys59r2gmb7jzbqiwsy790v8nbxk82d2n2saz0rp145ild"))))
+
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases (alist-cons-before
+                 'check 'install-locales
+                  (lambda _
+                    ;; The tests require the availability of the
+                    ;; 'en_US.ISO-8859-1' locale.
+                    (setenv "LOCPATH" (getcwd))
+                    (zero? (system* "localedef" "--no-archive"
+                                    "--prefix" (getcwd) "-i" "en_US"
+                                    "-f" "ISO-8859-1" "./en_US.ISO-8859-1")))
+                 %standard-phases)))
+    (synopsis "Approximate regex matching library and agrep utility")
+    (description "Superset of the POSIX regex API, enabling approximate
+matching.  Also ships a version of the agrep utility which behaves similar to
+grep but features inexact matching.")
+    (home-page "http://laurikari.net/tre")
+    (license license:bsd-2)))
diff --git a/gnu/packages/tre.scm b/gnu/packages/tre.scm
deleted file mode 100644
index 721a350..0000000
--- a/gnu/packages/tre.scm
+++ /dev/null
@@ -1,57 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014 John Darrington
-;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;;
-;;; This file is part of GNU Guix.
-;;;
-;;; GNU Guix is free software; you can redistribute it and/or modify it
-;;; under the terms of the GNU General Public License as published by
-;;; the Free Software Foundation; either version 3 of the License, or (at
-;;; your option) any later version.
-;;;
-;;; GNU Guix is distributed in the hope that it will be useful, but
-;;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-;;; GNU General Public License for more details.
-;;;
-;;; You should have received a copy of the GNU General Public License
-;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
-
-(define-module (gnu packages tre)
-  #:use-module (gnu packages)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (guix licenses))
-
-(define-public tre
-  (package
-    (name "tre")
-    (version "0.8.0")
-    (source
-      (origin
-        (method url-fetch)
-        (uri
-          (string-append "http://laurikari.net/tre/" name "-" version
-                         ".tar.bz2"))
-        (sha256
-          (base32 "0n36cgqys59r2gmb7jzbqiwsy790v8nbxk82d2n2saz0rp145ild"))))
-
-    (build-system gnu-build-system)
-    (arguments
-     `(#:phases (alist-cons-before
-                 'check 'install-locales
-                  (lambda _
-                    ;; The tests require the availability of the
-                    ;; 'en_US.ISO-8859-1' locale.
-                    (setenv "LOCPATH" (getcwd))
-                    (zero? (system* "localedef" "--no-archive"
-                                    "--prefix" (getcwd) "-i" "en_US"
-                                    "-f" "ISO-8859-1" "./en_US.ISO-8859-1")))
-                 %standard-phases)))
-    (synopsis "Approximate regex matching library and agrep utility")
-    (description "Superset of the POSIX regex API, enabling approximate
-matching.  Also ships a version of the agrep utility which behaves similar to
-grep but features inexact matching.")
-    (home-page "http://laurikari.net/tre")
-    (license bsd-2)))
-- 
2.9.2


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-17 10:34   ` Marius Bakke
  2016-08-17 15:18     ` Marius Bakke
@ 2016-08-18 20:37     ` Leo Famulari
  1 sibling, 0 replies; 13+ messages in thread
From: Leo Famulari @ 2016-08-18 20:37 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

On Wed, Aug 17, 2016 at 11:34:14AM +0100, Marius Bakke wrote:
> Leo Famulari <leo@famulari.name> writes:
> 
> > On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
> >> 
> >> I wasn't sure where to put this, so went with its own file. It does not
> >> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
> >> be renamed to regex.scm or similar.
> >
> > The patch looks good, but please put it in regex.scm! But, I don't want
> > to move all the regex packages into this new regex module. Perhaps tre,
> > since it appears to have no users in our tree.
> 
> Moved to regex.scm. Thanks!

Thanks, pushed as dc253bf0a5!

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-17 15:18     ` Marius Bakke
@ 2016-08-18 20:43       ` Leo Famulari
  2016-08-19  7:35         ` Alex Kost
                           ` (2 more replies)
  2016-09-12 13:38       ` Alex Kost
  1 sibling, 3 replies; 13+ messages in thread
From: Leo Famulari @ 2016-08-18 20:43 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

On Wed, Aug 17, 2016 at 04:18:48PM +0100, Marius Bakke wrote:
> Marius Bakke <mbakke@fastmail.com> writes:
> 
> > Leo Famulari <leo@famulari.name> writes:
> >
> >> On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
> >>> 
> >>> I wasn't sure where to put this, so went with its own file. It does not
> >>> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
> >>> be renamed to regex.scm or similar.
> >>
> >> The patch looks good, but please put it in regex.scm! But, I don't want
> >> to move all the regex packages into this new regex module. Perhaps tre,
> >> since it appears to have no users in our tree.
> >
> > Moved to regex.scm. Thanks!
> 
> ..and here is a patch that moves tre.scm over as well. The code is
> unchanged apart from license: prefix.

When moving packages around, all users of the package need to have their
module imports updated. Copyright attribution must be carefully handled.
And merging the various *-updates branches into master and vice versa
becomes more complicated and prone to error.

I *think* this patch does it right. And it will really grate on my sense
of aesthetics to have both regex.scm and tre.scm. But, in general, do we
want to make this change? What does everyone think?

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-18 20:43       ` Leo Famulari
@ 2016-08-19  7:35         ` Alex Kost
  2016-08-19 22:49           ` Leo Famulari
  2016-08-19 11:37         ` Marius Bakke
  2016-08-19 12:33         ` Marius Bakke
  2 siblings, 1 reply; 13+ messages in thread
From: Alex Kost @ 2016-08-19  7:35 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari (2016-08-18 23:43 +0300) wrote:

> On Wed, Aug 17, 2016 at 04:18:48PM +0100, Marius Bakke wrote:
>> Marius Bakke <mbakke@fastmail.com> writes:
>> 
>> > Leo Famulari <leo@famulari.name> writes:
>> >
>> >> On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
>> >>> 
>> >>> I wasn't sure where to put this, so went with its own file. It does not
>> >>> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
>> >>> be renamed to regex.scm or similar.
>> >>
>> >> The patch looks good, but please put it in regex.scm! But, I don't want
>> >> to move all the regex packages into this new regex module. Perhaps tre,
>> >> since it appears to have no users in our tree.
>> >
>> > Moved to regex.scm. Thanks!
>> 
>> ..and here is a patch that moves tre.scm over as well. The code is
>> unchanged apart from license: prefix.
>
> When moving packages around, all users of the package need to have their
> module imports updated. Copyright attribution must be carefully handled.
> And merging the various *-updates branches into master and vice versa
> becomes more complicated and prone to error.
>
> I *think* this patch does it right. And it will really grate on my sense
> of aesthetics to have both regex.scm and tre.scm. But, in general, do we
> want to make this change? What does everyone think?

I agree that having both 'tre' and 're2' packages in "regex.scm" is the
right thing.  Also I think it would be good to move 'oniguruma' there.

As for "pcre.scm", I would also move its content to "regex.scm".  What
about 'ghc-pcre-light'?  It seems natural to keep it in the same file
with 'pcre'/'pcre2' or should it stay in "haskell.scm"?

But also there are regex libraries for various languages (like
'ghc-regex-posix', 'guile-irregex', 'perl-regexp-common').  I think
these shouldn't be moved.

-- 
Alex

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-18 20:43       ` Leo Famulari
  2016-08-19  7:35         ` Alex Kost
@ 2016-08-19 11:37         ` Marius Bakke
  2016-08-19 12:33         ` Marius Bakke
  2 siblings, 0 replies; 13+ messages in thread
From: Marius Bakke @ 2016-08-19 11:37 UTC (permalink / raw)
  To: Alex Kost, Leo Famulari; +Cc: guix-devel

Leo Famulari <leo@famulari.name> writes:

> On Wed, Aug 17, 2016 at 04:18:48PM +0100, Marius Bakke wrote:
>> Marius Bakke <mbakke@fastmail.com> writes:
>> 
>> > Leo Famulari <leo@famulari.name> writes:
>> >
>> >> On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
>> >>> 
>> >>> I wasn't sure where to put this, so went with its own file. It does not
>> >>> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
>> >>> be renamed to regex.scm or similar.
>> >>
>> >> The patch looks good, but please put it in regex.scm! But, I don't want
>> >> to move all the regex packages into this new regex module. Perhaps tre,
>> >> since it appears to have no users in our tree.
>> >
>> > Moved to regex.scm. Thanks!
>> 
>> ..and here is a patch that moves tre.scm over as well. The code is
>> unchanged apart from license: prefix.
>
> When moving packages around, all users of the package need to have their
> module imports updated. Copyright attribution must be carefully handled.
> And merging the various *-updates branches into master and vice versa
> becomes more complicated and prone to error.
>
> I *think* this patch does it right. And it will really grate on my sense
> of aesthetics to have both regex.scm and tre.scm. But, in general, do we
> want to make this change? What does everyone think?

I agree that package moves should be kept at a minimum. Not only does it
make merges difficult, but git log/blame information is also "lost", as
in having to check out pre-move versions to trace the history. It can
also break third-party repositories as I found after tcsh move.

...for this particular package (tre) however, I think a move is
inevitable. It has no in-tree users and will forever stay alone in
tre.scm. It doesn't mean we have to go out of our way to move everything
else though. There are more important things to spend time on right now.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-18 20:43       ` Leo Famulari
  2016-08-19  7:35         ` Alex Kost
  2016-08-19 11:37         ` Marius Bakke
@ 2016-08-19 12:33         ` Marius Bakke
  2 siblings, 0 replies; 13+ messages in thread
From: Marius Bakke @ 2016-08-19 12:33 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari <leo@famulari.name> writes:

> When moving packages around, all users of the package need to have their
> module imports updated. Copyright attribution must be carefully handled.
> And merging the various *-updates branches into master and vice versa
> becomes more complicated and prone to error.

Perhaps it makes sense to schedule package moves just after big merges
(e.g. before cutting a new core-updates branch). Or have them in
separate short-lived branches to give users (and Hydra, considering the
recent tcsh evaluation failure) some time to test and prepare.

My 2 NOK,
Marius

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-19  7:35         ` Alex Kost
@ 2016-08-19 22:49           ` Leo Famulari
  0 siblings, 0 replies; 13+ messages in thread
From: Leo Famulari @ 2016-08-19 22:49 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

On Fri, Aug 19, 2016 at 10:35:14AM +0300, Alex Kost wrote:
> I agree that having both 'tre' and 're2' packages in "regex.scm" is the
> right thing.  Also I think it would be good to move 'oniguruma' there.
> 
> As for "pcre.scm", I would also move its content to "regex.scm".  What
> about 'ghc-pcre-light'?  It seems natural to keep it in the same file
> with 'pcre'/'pcre2' or should it stay in "haskell.scm"?
> 
> But also there are regex libraries for various languages (like
> 'ghc-regex-posix', 'guile-irregex', 'perl-regexp-common').  I think
> these shouldn't be moved.

Your first paragraph made it sound so simple. As your message continued,
it illustrated how complicated this issue can be ;)

BTW, if I had remembered the textutils module, I would probably have put
re2 there.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-08-17 15:18     ` Marius Bakke
  2016-08-18 20:43       ` Leo Famulari
@ 2016-09-12 13:38       ` Alex Kost
  2016-09-12 14:09         ` Marius Bakke
  1 sibling, 1 reply; 13+ messages in thread
From: Alex Kost @ 2016-09-12 13:38 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

Marius Bakke (2016-08-17 16:18 +0100) wrote:

> ..and here is a patch that moves tre.scm over as well. The code is
> unchanged apart from license: prefix.
>
> From 8e673ebd8c68c3a92fa60b56068339c011607752 Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@fastmail.com>
> Date: Wed, 17 Aug 2016 16:10:15 +0100
> Subject: [PATCH 2/2] gnu: tre: Move to regex.scm.
>
> * gnu/packages/tre.scm (tre): Move from here ...
> * gnu/packages/regex.scm (tre): ... to here.
> * gnu/packages/tre.scm: Delete file.
> * gnu/local.mk (GNU_SYSTEM_MODULES): Remove tre.scm.

Sorry for the long delay, I've found this patch is my mail heap :-)
I adjusted the commit message a bit (to avoid duplicating
"* gnu/packages/tre.scm") and committed it as ac8a642.
Thanks!

-- 
Alex

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-09-12 13:38       ` Alex Kost
@ 2016-09-12 14:09         ` Marius Bakke
  2016-09-13  7:44           ` Alex Kost
  0 siblings, 1 reply; 13+ messages in thread
From: Marius Bakke @ 2016-09-12 14:09 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> writes:

> Marius Bakke (2016-08-17 16:18 +0100) wrote:
>
>> ..and here is a patch that moves tre.scm over as well. The code is
>> unchanged apart from license: prefix.
>>
>> From 8e673ebd8c68c3a92fa60b56068339c011607752 Mon Sep 17 00:00:00 2001
>> From: Marius Bakke <mbakke@fastmail.com>
>> Date: Wed, 17 Aug 2016 16:10:15 +0100
>> Subject: [PATCH 2/2] gnu: tre: Move to regex.scm.
>>
>> * gnu/packages/tre.scm (tre): Move from here ...
>> * gnu/packages/regex.scm (tre): ... to here.
>> * gnu/packages/tre.scm: Delete file.
>> * gnu/local.mk (GNU_SYSTEM_MODULES): Remove tre.scm.
>
> Sorry for the long delay, I've found this patch is my mail heap :-)
> I adjusted the commit message a bit (to avoid duplicating
> "* gnu/packages/tre.scm") and committed it as ac8a642.
> Thanks!

I think it was delayed, because we now have 'regex.scm' and
'textutils.scm'. Perhaps those two should be merged :) 

Thanks,
Marius

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] gnu: Add re2.
  2016-09-12 14:09         ` Marius Bakke
@ 2016-09-13  7:44           ` Alex Kost
  0 siblings, 0 replies; 13+ messages in thread
From: Alex Kost @ 2016-09-13  7:44 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

Marius Bakke (2016-09-12 15:09 +0100) wrote:

> Alex Kost <alezost@gmail.com> writes:
>
>> Marius Bakke (2016-08-17 16:18 +0100) wrote:
>>
>>> ..and here is a patch that moves tre.scm over as well. The code is
>>> unchanged apart from license: prefix.
>>>
>>> From 8e673ebd8c68c3a92fa60b56068339c011607752 Mon Sep 17 00:00:00 2001
>>> From: Marius Bakke <mbakke@fastmail.com>
>>> Date: Wed, 17 Aug 2016 16:10:15 +0100
>>> Subject: [PATCH 2/2] gnu: tre: Move to regex.scm.
>>>
>>> * gnu/packages/tre.scm (tre): Move from here ...
>>> * gnu/packages/regex.scm (tre): ... to here.
>>> * gnu/packages/tre.scm: Delete file.
>>> * gnu/local.mk (GNU_SYSTEM_MODULES): Remove tre.scm.
>>
>> Sorry for the long delay, I've found this patch is my mail heap :-)
>> I adjusted the commit message a bit (to avoid duplicating
>> "* gnu/packages/tre.scm") and committed it as ac8a642.
>> Thanks!
>
> I think it was delayed, because we now have 'regex.scm' and
> 'textutils.scm'. Perhaps those two should be merged :)

Perhaps, I don't know; but your patch was fine since it removed a
single-package file which is a good thing.  Merging "regex" and
"textutils" (if it will happen) is a separate thing.

-- 
Alex

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2016-09-13  7:46 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-15 13:05 [PATCH] gnu: Add re2 Marius Bakke
2016-08-16 17:59 ` Leo Famulari
2016-08-17 10:34   ` Marius Bakke
2016-08-17 15:18     ` Marius Bakke
2016-08-18 20:43       ` Leo Famulari
2016-08-19  7:35         ` Alex Kost
2016-08-19 22:49           ` Leo Famulari
2016-08-19 11:37         ` Marius Bakke
2016-08-19 12:33         ` Marius Bakke
2016-09-12 13:38       ` Alex Kost
2016-09-12 14:09         ` Marius Bakke
2016-09-13  7:44           ` Alex Kost
2016-08-18 20:37     ` Leo Famulari

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).