diff options
author | Mark Wright <gienah@gentoo.org> | 2014-03-09 12:41:24 +0000 |
---|---|---|
committer | Mark Wright <gienah@gentoo.org> | 2014-03-09 12:41:24 +0000 |
commit | 8fb3446e0ddf32ac3f9575003ff952e4f83c8f18 (patch) | |
tree | 97cbd502213b014da082bbf10313d134f080f3d0 /dev-haskell/esqueleto | |
parent | Add enclosed-exceptions (diff) | |
download | gentoo-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/ChangeLog | 9 | ||||
-rw-r--r-- | dev-haskell/esqueleto/esqueleto-1.3.5.ebuild | 50 | ||||
-rw-r--r-- | dev-haskell/esqueleto/files/esqueleto-1.0.6-haddock.patch | 13 | ||||
-rw-r--r-- | dev-haskell/esqueleto/metadata.xml | 41 |
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'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'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't have to learn + new concepts, just new syntax, and (b) it'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 + <https://github.com/meteficha/esqueleto/>. + + The name of this library means \"skeleton\" in Portuguese and + contains all three SQL letters in the correct order =). It was + inspired by Scala's Squeryl but created from scratch. + </longdescription> +</pkgmetadata> |