Hi Mark,

Mark H Weaver writes:

> Hi Pierre,
>
> Pierre Langlois <pierre.langl...@gmx.com> writes:
>
>> [...] However, it mentions that `emacs-seq` has been
>> included in emacs proper for a while.
>>
>> So, what would be the best fix for this? Should we remove `emacs-seq`
>> entirely or try and patch it? Since we don't support previous versions
>> of emacs I don't know if we need it.
>
> If 'emacs-seq' is included in Emacs 27, it seems to me that we should
> just delete it, unless there's something I'm missing.

Agreed, I was curious if there was another reason for needing it, since
I /believe/ it's been in emacs proper since 25, but emacs-seq was added
in to guix after that. I suspect it it's still listed as a dependency
for packages, even though it's not actually needed.

Anyways, I've reconfigured my system with the following patch to fix the
issue, let me know if that looks OK! The packages that depended on it
build just fine, although I don't use them directly -- I was pulling
emacs-seq from emacs-org-roam which depends on emacs-biblio, but I'm not
using this feature.

Oh, another thing, I wanted to warn potential users of emacs-seq with a
deprecation warning using (guix deprecation), like:

    ;; seq.el is included into emacs.
    (define-deprecated emacs-seq emacs)

It would be good to do that so somebody isn't tempted to re-add it when
it's listed a dependency.  But that triggers errors:

    error: emacs: unbound variable
    hint: Did you forget a `use-modules' form?

Am I using it wrong? The (gnu packages emacs) module is included of
course.

Thanks,
Pierre

From 1d4fc30d13df916a0800dfcf2f993a1c2a95add8 Mon Sep 17 00:00:00 2001
From: Pierre Langlois <pierre.langl...@gmx.com>
Date: Mon, 31 Aug 2020 17:05:58 +0100
Subject: [PATCH] gnu: Remove emacs-seq package.

It is included with emacs and installing it alongisde emacs 27 causes issues.

Fixes <https://bugs.gnu.org/43138>.

* gnu/packages/emacs-xyz.scm (emacs-bugs-hunter)[propagated-inputs]: Remove.
(emacs-erc-status-sidebar)[propagated-inputs]: Remove.
(emacs-psc-ide)[propagated-inputs]: Remove emacs-seq.
(emacs-biblio)[propagated-inputs]: Remove emacs-seq.
(emacs-seq): Delete variable.
(emacs-flycheck-haskell)[propagated-inputs]: Remove emacs-seq.
---
 gnu/packages/emacs-xyz.scm | 28 ++--------------------------
 1 file changed, 2 insertions(+), 26 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 3036004cee..151718dd6e 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -1312,8 +1312,6 @@ regexp-like arguments to @code{skip-chars-forward} and
           (base32
            "134fj493sdn93pyyac8rpz1fzahzmayvphsrmqp3wvgysmfqm38l"))))
       (build-system emacs-build-system)
-      (propagated-inputs
-       `(("emacs-seq" ,emacs-seq)))
       (home-page "https://github.com/Malabarba/elisp-bug-hunter";)
       (synopsis "Hunt down errors by bisecting elisp files")
       (description
@@ -3506,7 +3504,6 @@ IRC bouncer with ERC.")
          (sha256
           (base32 "1hwlhzgx03z8891sblz56zdp8zj0izh72kxykgcnz5rrkyc3vfi3"))))
       (build-system emacs-build-system)
-      (propagated-inputs `(("emacs-seq" ,emacs-seq)))
       (home-page "https://github.com/drewbarbs/erc-status-sidebar";)
       (synopsis "Hexchat-like activity overview for ERC channels")
       (description
@@ -13560,8 +13557,7 @@ and can be consulted and modified.")
          ("emacs-dash" ,emacs-dash)
          ("emacs-flycheck" ,emacs-flycheck)
          ("emacs-let-alist" ,emacs-let-alist)
-         ("emacs-s" ,emacs-s)
-         ("emacs-seq" ,emacs-seq)))
+         ("emacs-s" ,emacs-s)))
       (home-page "https://github.com/purescript-emacs/psc-ide-emacs";)
       (synopsis "Emacs integration for PureScript's psc-ide tool")
       (description
@@ -14321,8 +14317,7 @@ with (La)TeX mode, Org mode and other Emacs editing modes.")
         (base32 "1gxjind6r235az59dr8liv03d8994mqb8a7m28j3c12q7p70aziz"))))
     (build-system emacs-build-system)
     (propagated-inputs
-     `(("emacs-seq" ,emacs-seq)
-       ("emacs-dash" ,emacs-dash)
+     `(("emacs-dash" ,emacs-dash)
        ("emacs-let-alist" ,emacs-let-alist)))
     (home-page "https://github.com/cpitclaudel/biblio.el";)
     (synopsis "Browse and import bibliographic references")
@@ -14730,24 +14725,6 @@ timestamps and date-time format strings library for Emacs.")
      "@code{npm-mode} provides a minor mode to work with @code{npm} projects.")
     (license license:gpl3+)))

-(define-public emacs-seq
-  (package
-    (name "emacs-seq")
-    (version "2.20")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (string-append "https://elpa.gnu.org/packages/seq-"; version ".tar"))
-       (sha256
-        (base32
-         "0vrpx6nnyjb0gsypknzagimlhvcvi5y1rcdkpxyqr42415zr8d0n"))))
-    (build-system emacs-build-system)
-    (home-page "https://elpa.gnu.org/packages/seq.html";)
-    (synopsis "Sequence manipulation functions")
-    (description "Sequence-manipulation functions that complement basic
-functions provided by @file{subr.el}.")
-    (license license:gpl3+)))
-
 (define-public emacs-itail
   (let ((commit "6e43c20da03be3b9c6ece93b7dc3495975ec1888")
         (revision "1"))
@@ -20448,7 +20425,6 @@ unescaping of quotes.")
       (build-system emacs-build-system)
       (propagated-inputs
        `(("emacs-dash" ,emacs-dash)
-         ("emacs-seq" ,emacs-seq)
          ("emacs-flycheck" ,emacs-flycheck)
          ("emacs-haskell-mode" ,emacs-haskell-mode)
          ("emacs-let-alist" ,emacs-let-alist)))
--
2.28.0

Reply via email to