summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Wright <gienah@gentoo.org>2014-03-09 12:41:24 +0000
committerMark Wright <gienah@gentoo.org>2014-03-09 12:41:24 +0000
commit8fb3446e0ddf32ac3f9575003ff952e4f83c8f18 (patch)
tree97cbd502213b014da082bbf10313d134f080f3d0 /dev-haskell/esqueleto
parentAdd enclosed-exceptions (diff)
downloadgentoo-2-8fb3446e0ddf32ac3f9575003ff952e4f83c8f18.tar.gz
gentoo-2-8fb3446e0ddf32ac3f9575003ff952e4f83c8f18.tar.bz2
gentoo-2-8fb3446e0ddf32ac3f9575003ff952e4f83c8f18.zip
Add esqueleto
(Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key 618E971F)
Diffstat (limited to 'dev-haskell/esqueleto')
-rw-r--r--dev-haskell/esqueleto/ChangeLog9
-rw-r--r--dev-haskell/esqueleto/esqueleto-1.3.5.ebuild50
-rw-r--r--dev-haskell/esqueleto/files/esqueleto-1.0.6-haddock.patch13
-rw-r--r--dev-haskell/esqueleto/metadata.xml41
4 files changed, 113 insertions, 0 deletions
diff --git a/dev-haskell/esqueleto/ChangeLog b/dev-haskell/esqueleto/ChangeLog
new file mode 100644
index 000000000000..88357b7eb807
--- /dev/null
+++ b/dev-haskell/esqueleto/ChangeLog
@@ -0,0 +1,9 @@
+# ChangeLog for dev-haskell/esqueleto
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-haskell/esqueleto/ChangeLog,v 1.1 2014/03/09 12:41:24 gienah Exp $
+
+*esqueleto-1.3.5 (09 Mar 2014)
+
+ 09 Mar 2014; Mark Wright <gienah@gentoo.org> +esqueleto-1.3.5.ebuild,
+ +files/esqueleto-1.0.6-haddock.patch, +metadata.xml:
+ Add esqueleto
diff --git a/dev-haskell/esqueleto/esqueleto-1.3.5.ebuild b/dev-haskell/esqueleto/esqueleto-1.3.5.ebuild
new file mode 100644
index 000000000000..3fc0d7ec14d1
--- /dev/null
+++ b/dev-haskell/esqueleto/esqueleto-1.3.5.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-haskell/esqueleto/esqueleto-1.3.5.ebuild,v 1.1 2014/03/09 12:41:24 gienah Exp $
+
+EAPI=5
+
+# ebuild generated by hackport 0.3.6.9999
+#hackport: flags: -mysql,-postgresql
+
+CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
+inherit eutils haskell-cabal
+
+DESCRIPTION="Bare bones, type-safe EDSL for SQL queries on persistent backends."
+HOMEPAGE="https://github.com/meteficha/esqueleto"
+SRC_URI="mirror://hackage/packages/archive/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-haskell/conduit:=[profile?]
+ dev-haskell/monad-logger:=[profile?]
+ >=dev-haskell/persistent-1.3:=[profile?] <dev-haskell/persistent-1.4:=[profile?]
+ dev-haskell/resourcet:=[profile?]
+ >=dev-haskell/tagged-0.2:=[profile?]
+ >=dev-haskell/text-0.11:=[profile?]
+ >=dev-haskell/transformers-0.2:=[profile?]
+ >=dev-haskell/unordered-containers-0.2:=[profile?]
+ >=dev-lang/ghc-7.4.1:=
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.8
+ test? ( >=dev-haskell/hspec-1.3 <dev-haskell/hspec-1.9
+ dev-haskell/hunit
+ dev-haskell/monad-control
+ >=dev-haskell/persistent-sqlite-1.2 <dev-haskell/persistent-sqlite-1.4
+ >=dev-haskell/persistent-template-1.2 <dev-haskell/persistent-template-1.4
+ dev-haskell/quickcheck )
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.0.6-haddock.patch
+}
+
+src_configure() {
+ haskell-cabal_src_configure \
+ --flag=-mysql \
+ --flag=-postgresql
+}
diff --git a/dev-haskell/esqueleto/files/esqueleto-1.0.6-haddock.patch b/dev-haskell/esqueleto/files/esqueleto-1.0.6-haddock.patch
new file mode 100644
index 000000000000..bf66a22b359e
--- /dev/null
+++ b/dev-haskell/esqueleto/files/esqueleto-1.0.6-haddock.patch
@@ -0,0 +1,13 @@
+diff --git a/src/Database/Esqueleto.hs b/src/Database/Esqueleto.hs
+index 5900c5d..340cd7d 100644
+--- a/src/Database/Esqueleto.hs
++++ b/src/Database/Esqueleto.hs
+@@ -289,7 +289,7 @@ import qualified Database.Persist.Store
+ --
+ -- @
+ -- do 'update' $ \\p -> do
+--- 'set' p [ PersonName '=.' val \"João\" ]
++-- 'set' p [ PersonName '=.' val \"Joao\" ]
+ -- where_ (p ^. PersonName ==. val \"Joao\")
+ -- 'delete' $
+ -- from $ \\p -> do
diff --git a/dev-haskell/esqueleto/metadata.xml b/dev-haskell/esqueleto/metadata.xml
new file mode 100644
index 000000000000..853795a534f7
--- /dev/null
+++ b/dev-haskell/esqueleto/metadata.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>haskell</herd>
+ <maintainer>
+ <email>haskell@gentoo.org</email>
+ </maintainer>
+ <longdescription>
+ @persistent@ is a library for type-safe data serialization. It
+ has many kinds of backends, such as SQL backends
+ (@persistent-mysql@, @persistent-postgresql@,
+ @persistent-sqlite@) and NoSQL backends (@persistent-mongoDB@).
+
+ While @persistent@ is a nice library for storing and retrieving
+ records, currently it has a poor interface for SQL backends
+ compared to SQL itself. For example, it&#39;s extremely hard to do
+ a type-safe @JOIN@ on a many-to-one relation, and simply
+ impossible to do any other kinds of @JOIN@s (including for the
+ very common many-to-many relations). Users have the option of
+ writing raw SQL, but that&#39;s error prone and not type-checked.
+
+ @esqueleto@ is a bare bones, type-safe EDSL for SQL queries
+ that works with unmodified @persistent@ SQL backends. Its
+ language closely resembles SQL, so (a) you don&#39;t have to learn
+ new concepts, just new syntax, and (b) it&#39;s fairly easy to
+ predict the generated SQL and optimize it for your backend.
+ Most kinds of errors committed when writing SQL are caught as
+ compile-time errors---although it is possible to write
+ type-checked @esqueleto@ queries that fail at runtime.
+
+ Currently only @SELECT@s are supported. Not all SQL features
+ are available, but most of them can be easily added (especially
+ functions), so please open an issue or send a pull request if
+ you need anything that is not covered by @esqueleto@ on
+ &lt;https://github.com/meteficha/esqueleto/&gt;.
+
+ The name of this library means \&quot;skeleton\&quot; in Portuguese and
+ contains all three SQL letters in the correct order =). It was
+ inspired by Scala&#39;s Squeryl but created from scratch.
+ </longdescription>
+</pkgmetadata>