Subject: [bug#38594] Deprecate ghc-stylish-haskell in favor of stylish-haskell

From: John Soo <[email-masked]>
Date: Fri, 13 Dec 2019 14:39:33 +0000

Hi all,

As far as I can tell ghc-stylish-haskell and stylish-haskell are the same
package.

I chose to keep stylish-haskell in favor of ghc-stylish-haskell just
because it was newer.

- John
From 8cc601079948c718d5e255e653069e1902740c3d Mon Sep 17 00:00:00 2001
From: John Soo <[email-masked]>
Date: Fri, 13 Dec 2019 06:29:27 -0800
Subject: [PATCH 1/2] gnu: stylish-haskell: Update description.

* gnu/packages/haskell-apps.scm (stylish-haskell): Update description.
---
 gnu/packages/haskell-apps.scm | 26 ++++++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 1e79294737..728574ddc5 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -733,8 +733,26 @@ advanced user's otherwise working script to fail under future circumstances.
        ("ghc-test-framework-hunit" ,ghc-test-framework-hunit)))
     (home-page "https://github.com/jaspervdj/stylish-haskell")
     (synopsis "Haskell code prettifier")
-    (description
-     "A simple Haskell code prettifier.  The goal is not to format all of the
-code in a file, just clean up import statements and a few other tedious
-items.  This tool tries to help where necessary without getting in the way.")
+    (description "Stylish-haskell is a Haskell code prettifier.  The goal is
+not to format all of the code in a file, to avoid \"getting in the way\".
+However, this tool can e.g. clean up import statements and help doing various
+tasks that get tedious very quickly.  It can
+@itemize
+@item
+Align and sort @code{import} statements
+@item
+Group and wrap @code{{-# LANGUAGE #-}} pragmas, remove (some) redundant
+pragmas
+@item
+Remove trailing whitespaces
+@item
+Align branches in @code{case} and fields in records
+@item
+Convert line endings (customisable)
+@item
+Replace tabs by four spaces (turned off by default)
+@item
+Replace some ASCII sequences by their Unicode equivalent (turned off by
+default)
+@end itemize")
     (license license:bsd-3)))
-- 
2.24.0

From 10ef96c199aa4ea32741f162541a386f077ec08f Mon Sep 17 00:00:00 2001
From: John Soo <[email-masked]>
Date: Fri, 13 Dec 2019 06:32:00 -0800
Subject: [PATCH 2/2] gnu: ghc-stylish-haskell: Deprecate older duplicate
 package.

* gnu/packages/haskell-xyz.scm (ghc-stylish-haskell): Deprecate it.
---
 gnu/packages/haskell-xyz.scm | 63 +-----------------------------------
 1 file changed, 1 insertion(+), 62 deletions(-)

diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 1d78eb7894..773164ea0a 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -10823,68 +10823,7 @@ occurrences of a substring (the first in case of overlaps) with another.")
     (license license:bsd-3)))
 
 (define-public ghc-stylish-haskell
-  (package
-    (name "ghc-stylish-haskell")
-    (version "0.9.2.1")
-    (source
-      (origin
-        (method url-fetch)
-        (uri (string-append
-               "mirror://hackage/package/stylish-haskell/stylish-haskell-"
-               version
-               ".tar.gz"))
-        (sha256
-          (base32
-            "1ls11fdx6snvfx8yykpidz142zzxwi5bazl49hgfqlwx50rqcp7w"))))
-    (build-system haskell-build-system)
-    (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'update-constraints
-           (lambda _
-             (substitute* "stylish-haskell.cabal"
-               (("haskell-src-exts >= 1\\.18   && < 1\\.21,")
-                "haskell-src-exts >= 1.18   && < 1.22,"))
-             #t)))))
-    (inputs
-      `(("ghc-aeson" ,ghc-aeson)
-        ("ghc-file-embed" ,ghc-file-embed)
-        ("ghc-haskell-src-exts" ,ghc-haskell-src-exts)
-        ("ghc-semigroups" ,ghc-semigroups)
-        ("ghc-syb" ,ghc-syb)
-        ("ghc-yaml" ,ghc-yaml)
-        ("ghc-strict" ,ghc-strict)
-        ("ghc-optparse-applicative"
-         ,ghc-optparse-applicative)))
-    (native-inputs
-      `(("ghc-hunit" ,ghc-hunit)
-        ("ghc-test-framework" ,ghc-test-framework)
-        ("ghc-test-framework-hunit" ,ghc-test-framework-hunit)))
-    (home-page "https://github.com/jaspervdj/stylish-haskell")
-    (synopsis "Haskell code prettifier")
-    (description "Stylish-haskell is a Haskell code prettifier.  The goal is
-not to format all of the code in a file, to avoid \"getting in the way\".
-However, this tool can e.g. clean up import statements and help doing various
-tasks that get tedious very quickly.  It can
-@itemize
-@item
-Align and sort @code{import} statements
-@item
-Group and wrap @code{{-# LANGUAGE #-}} pragmas, remove (some) redundant
-pragmas
-@item
-Remove trailing whitespaces
-@item
-Align branches in @code{case} and fields in records
-@item
-Convert line endings (customisable)
-@item
-Replace tabs by four spaces (turned off by default)
-@item
-Replace some ASCII sequences by their Unicode equivalent (turned off by
-default)
-@end itemize")
-    (license license:bsd-3)))
+  (deprecated-package "ghc-stylish-haskell" stylish-haskell))
 
 (define-public ghc-svg-builder
   (package
-- 
2.24.0