summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Todaro <solpeth@posteo.org>2020-07-29 11:54:38 +1000
committerSergei Trofimovich <slyfox@gentoo.org>2020-08-01 09:00:17 +0100
commita77b5838820486c1a07aa524fe1a396ff0ca14dd (patch)
tree2aba7ff0e9ff930ecf4678cddf4998dfc83ae59d /dev-haskell/tree-diff
parentdev-haskell/tasty: bump up to 1.2.3 (diff)
downloadgentoo-a77b5838820486c1a07aa524fe1a396ff0ca14dd.tar.gz
gentoo-a77b5838820486c1a07aa524fe1a396ff0ca14dd.tar.bz2
gentoo-a77b5838820486c1a07aa524fe1a396ff0ca14dd.zip
dev-haskell/tree-diff: add package
Package-Manager: Portage-3.0.1, Repoman-2.3.23 Signed-off-by: Jack Todaro <solpeth@posteo.org> Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'dev-haskell/tree-diff')
-rw-r--r--dev-haskell/tree-diff/Manifest1
-rw-r--r--dev-haskell/tree-diff/metadata.xml36
-rw-r--r--dev-haskell/tree-diff/tree-diff-0.1.ebuild58
3 files changed, 95 insertions, 0 deletions
diff --git a/dev-haskell/tree-diff/Manifest b/dev-haskell/tree-diff/Manifest
new file mode 100644
index 000000000000..f091af93eab2
--- /dev/null
+++ b/dev-haskell/tree-diff/Manifest
@@ -0,0 +1 @@
+DIST tree-diff-0.1.tar.gz 21644 BLAKE2B 0cd1633970216a994100f852b0982d43b6f1d0dc1b0550e759009250e016d271c5358460ef3999267da597b4e58dd28c3094e0ba4f618ba5990e91740eb63881 SHA512 a4ee703e4b6a18055c7749020863a9571af4620dbb7ea05903693c752e10e3ffa4fee8da0dacc0e4bbf92173e34c9070251881597ca1cd9f7c8ed365e840563c
diff --git a/dev-haskell/tree-diff/metadata.xml b/dev-haskell/tree-diff/metadata.xml
new file mode 100644
index 000000000000..214ee1271465
--- /dev/null
+++ b/dev-haskell/tree-diff/metadata.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>haskell@gentoo.org</email>
+ <name>Gentoo Haskell</name>
+ </maintainer>
+ <longdescription>
+ Common diff algorithm works on list structures:
+
+ @
+ diff :: Eq a =&gt; [a] -&gt; [a] -&gt; [Edit a]
+ @
+
+ This package works on trees.
+
+ @
+ treeDiff :: Eq a =&gt; Tree a -&gt; Tree a -&gt; Edit (EditTree a)
+ @
+
+ This package also provides a way to diff arbitrary ADTs,
+ using @Generics@-derivable helpers.
+
+ This package differs from &lt;http://hackage.haskell.org/package/gdiff gdiff&gt;,
+ in a two ways: @tree-diff@ doesn&#39;t have patch function,
+ and the &quot;edit-script&quot; is a tree itself, which is useful for pretty-printing.
+
+ @
+ &gt;&gt;&gt; prettyEditExpr $ ediff (Foo 42 [True, False] &quot;old&quot;) (Foo 42 [False, False, True] &quot;new&quot;)
+ Foo
+ {fooBool = [-True, +False, False, +True],
+ fooInt = 42,
+ fooString = -&quot;old&quot; +&quot;new&quot;}
+ @
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-haskell/tree-diff/tree-diff-0.1.ebuild b/dev-haskell/tree-diff/tree-diff-0.1.ebuild
new file mode 100644
index 000000000000..36faec98079a
--- /dev/null
+++ b/dev-haskell/tree-diff/tree-diff-0.1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
+inherit haskell-cabal
+
+DESCRIPTION="Diffing of (expression) trees"
+HOMEPAGE="https://github.com/phadej/tree-diff"
+SRC_URI="https://hackage.haskell.org/package/${P}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND=">=dev-haskell/aeson-1.4.0.0:=[profile?] <dev-haskell/aeson-1.5:=[profile?]
+ >=dev-haskell/ansi-terminal-0.8.1:=[profile?]
+ >=dev-haskell/ansi-wl-pprint-0.6.8.2:=[profile?] <dev-haskell/ansi-wl-pprint-0.7:=[profile?]
+ >=dev-haskell/base-compat-0.9.3:=[profile?]
+ >=dev-haskell/bytestring-builder-0.10.8.2.0:=[profile?] <dev-haskell/bytestring-builder-0.11:=[profile?]
+ >=dev-haskell/generic-deriving-1.12.4:=[profile?] <dev-haskell/generic-deriving-1.14:=[profile?]
+ >=dev-haskell/generics-sop-0.3.1.0:=[profile?] <dev-haskell/generics-sop-0.6:=[profile?]
+ >=dev-haskell/hashable-1.2.7.0:=[profile?] <dev-haskell/hashable-1.4:=[profile?]
+ >=dev-haskell/memotrie-0.6.8:=[profile?] <dev-haskell/memotrie-0.7:=[profile?]
+ >=dev-haskell/nats-1.1.2:=[profile?] <dev-haskell/nats-1.2:=[profile?]
+ >=dev-haskell/parsec-3.1.13.0:=[profile?] <dev-haskell/parsec-3.2:=[profile?]
+ >=dev-haskell/parsers-0.12.10:=[profile?] <dev-haskell/parsers-0.13:=[profile?]
+ >=dev-haskell/quickcheck-2.10.0.1:2=[profile?] <dev-haskell/quickcheck-2.14:2=[profile?]
+ >=dev-haskell/scientific-0.3.6.2:=[profile?] <dev-haskell/scientific-0.4:=[profile?]
+ >=dev-haskell/semigroups-0.18.5:=[profile?] <dev-haskell/semigroups-0.20:=[profile?]
+ >=dev-haskell/tagged-0.8.6:=[profile?] <dev-haskell/tagged-0.9:=[profile?]
+ >=dev-haskell/text-1.2.3.0:=[profile?] <dev-haskell/text-1.3:=[profile?]
+ >=dev-haskell/unordered-containers-0.2.8.0:=[profile?] <dev-haskell/unordered-containers-0.3:=[profile?]
+ >=dev-haskell/uuid-types-1.0.3:=[profile?] <dev-haskell/uuid-types-1.1:=[profile?]
+ >=dev-haskell/vector-0.12:=[profile?] <dev-haskell/vector-0.13:=[profile?]
+ >=dev-haskell/void-0.7.3:=[profile?] <dev-haskell/void-0.8:=[profile?]
+ >=dev-lang/ghc-7.8.2:=
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.18.1.3
+ test? ( >=dev-haskell/tasty-1.2 <dev-haskell/tasty-1.3
+ >=dev-haskell/tasty-golden-2.3.1.1 <dev-haskell/tasty-golden-2.4
+ >=dev-haskell/tasty-quickcheck-0.10.1 <dev-haskell/tasty-quickcheck-0.11
+ >=dev-haskell/trifecta-2.0 )
+"
+
+src_prepare() {
+ default
+
+ cabal_chdeps \
+ 'ansi-terminal ^>=0.8.2 || ^>=0.9.1' 'ansi-terminal >=0.8.2' \
+ 'base >=4.5 && <4.13' 'base >=4.5' \
+ 'time ^>=1.4 || ^>=1.5.0.1 || ^>=1.6.0.1 || ^>=1.8.0.2' 'time >=1.4' \
+ 'base-compat ^>=0.10.5' 'base-compat >=0.10.5' \
+ 'trifecta ^>=2' 'trifecta >=2'
+}