commit 7a354a8cdb1c1d1723328f43b399b7ea0b2626f3509128cee9710d6bca01dbd1 Author: Peter Simons Date: Tue Jun 16 10:56:24 2020 +0000 osc copypac from project:devel:languages:haskell:ghc-8.10.x package:ghc-cassava revision:2, using keep-link OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-cassava?expand=0&rev=1 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/cassava-0.5.2.0.tar.gz b/cassava-0.5.2.0.tar.gz new file mode 100644 index 0000000..0179b74 --- /dev/null +++ b/cassava-0.5.2.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b30d2ad5894519e364130c0510f167a4ffaf0e08a1e24c9a64238c855bfe0106 +size 37411 diff --git a/cassava.cabal b/cassava.cabal new file mode 100644 index 0000000..18cf1ab --- /dev/null +++ b/cassava.cabal @@ -0,0 +1,188 @@ +cabal-version: 1.12 +Name: cassava +Version: 0.5.2.0 +x-revision: 1 +Synopsis: A CSV parsing and encoding library +Description: { + +@cassava@ is a library for parsing and encoding [RFC 4180](https://tools.ietf.org/html/rfc4180) +compliant [comma-separated values (CSV)](https://en.wikipedia.org/wiki/Comma-separated_values) data, +which is a textual line-oriented format commonly used for exchanging tabular data. +. +@cassava@'s API includes support for +. +- Index-based record-conversion +- Name-based record-conversion +- Typeclass directed conversion of fields and records +- Built-in field-conversion instances for standard types +- Customizable record-conversion instance derivation via GHC generics +- Low-level [bytestring](https://hackage.haskell.org/package/bytestring) builders (see "Data.Csv.Builder") +- Incremental decoding and encoding API (see "Data.Csv.Incremental") +- Streaming API for constant-space decoding (see "Data.Csv.Streaming") +. +Moreover, this library is designed to be easy to use; for instance, here's a +very simple example of encoding CSV data: +. +>>> Data.Csv.encode [("John",27),("Jane",28)] +"John,27\r\nJane,28\r\n" +. +Please refer to the documentation in "Data.Csv" and the included [README](#readme) for more usage examples. + +} +Homepage: https://github.com/hvr/cassava +License: BSD3 +License-file: LICENSE +Bug-reports: https://github.com/hvr/cassava/issues +Copyright: (c) 2012 Johan Tibell + (c) 2012 Bryan O'Sullivan + (c) 2011 MailRank, Inc. +Author: Johan Tibell +Maintainer: hvr@gnu.org +Category: Text, Web, CSV +Build-type: Simple +Extra-source-files: examples/*.hs, + CHANGES.md, + README.md +Tested-with: GHC==8.10.1, GHC==8.8.3, GHC==8.6.5, GHC==8.4.4, GHC ==8.2.2, GHC ==8.0.2, GHC ==7.10.3, GHC ==7.8.4, GHC ==7.6.3, GHC ==7.4.2 + +---------------------------------------------------------------------------- + +source-repository head + type: git + location: https://github.com/hvr/cassava.git + +flag bytestring--LT-0_10_4 + description: [bytestring](https://hackage.haskell.org/haskell/package/bytestring) < 0.10.4 + +Library + default-language: Haskell2010 + other-extensions: + BangPatterns + CPP + DataKinds + DefaultSignatures + DeriveFunctor + FlexibleContexts + FlexibleInstances + KindSignatures + MultiParamTypeClasses + OverloadedStrings + PolyKinds + Rank2Types + ScopedTypeVariables + TypeOperators + UndecidableInstances + + if impl(ghc >= 8.0) + other-extensions: + DataKinds + PolyKinds + + hs-source-dirs: src + + Exposed-modules: + Data.Csv + Data.Csv.Builder + Data.Csv.Incremental + Data.Csv.Parser + Data.Csv.Streaming + + Other-modules: + Data.Csv.Conversion + Data.Csv.Conversion.Internal + Data.Csv.Encoding + Data.Csv.Types + Data.Csv.Util + + Build-depends: + array >= 0.4 && < 0.6, + attoparsec >= 0.11.3.0 && < 0.14, + base >= 4.5 && < 4.15, + bytestring >= 0.9.2 && < 0.11, + containers >= 0.4.2 && < 0.7, + deepseq >= 1.1 && < 1.5, + hashable < 1.4, + scientific >= 0.3.4.7 && < 0.4, + text < 1.3, + transformers >= 0.2 && < 0.6, + unordered-containers < 0.3, + vector >= 0.8 && < 0.13, + Only >= 0.1 && < 0.1.1 + + if flag(bytestring--LT-0_10_4) + build-depends: bytestring < 0.10.4 + , bytestring-builder >= 0.10.8 && < 0.11 + else + build-depends: bytestring >= 0.10.4 + , text-short == 0.1.* + + -- GHC.Generics lived in `ghc-prim` for GHC 7.2 & GHC 7.4 only + if impl(ghc < 7.6) + build-depends: ghc-prim == 0.2.* + + -- For Numeric.Natural + if impl(ghc < 7.10) + build-depends: nats >= 1 && < 1.2 + + -- https://ghc.haskell.org/trac/ghc/wiki/Migration/8.0#Recommendationsforforward-compatibility + if impl(ghc >= 8.0) + ghc-options: -Wcompat -Wnoncanonical-monad-instances + if impl(ghc >= 8.8) + ghc-options: -Wno-star-is-type + else + ghc-options: -Wnoncanonical-monadfail-instances + else + -- provide/emulate `Control.Monad.Fail` and `Data.Semigroups` API for pre-GHC8 + build-depends: fail == 4.9.*, semigroups >= 0.18.2 && <0.20 + + if impl(ghc >= 8.2) + ghc-options: -Wcpp-undef + + ghc-options: -Wall -O2 + +---------------------------------------------------------------------------- + +Test-suite unit-tests + default-language: Haskell2010 + + Type: exitcode-stdio-1.0 + Main-is: UnitTests.hs + -- dependencies with version constraints inherited via lib:cassava + Build-depends: attoparsec + , base + , bytestring + , cassava + , hashable + , scientific + , text + , unordered-containers + , vector + -- extra dependencies not already used by lib:cassava + build-depends: HUnit < 1.7 + , QuickCheck == 2.13.* + , quickcheck-instances >= 0.3.12 && < 0.4 + , test-framework == 0.8.* + , test-framework-hunit == 0.3.* + , test-framework-quickcheck2 == 0.3.* + + hs-source-dirs: tests + + -- GHC.Generics lived in `ghc-prim` for GHC 7.2 & GHC 7.4 only + if impl(ghc < 7.6) + build-depends: ghc-prim == 0.2.* + + -- For Numeric.Natural + if impl(ghc < 7.10) + build-depends: nats + + -- https://ghc.haskell.org/trac/ghc/wiki/Migration/8.0#Recommendationsforforward-compatibility + if impl(ghc >= 8.0) + ghc-options: -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances + else + -- provide/emulate `Control.Monad.Fail` and `Data.Semigroups` API for pre-GHC8 + build-depends: fail, semigroups + + if impl(ghc >= 8.2) + ghc-options: -Wcpp-undef + + ghc-options: -Wall diff --git a/ghc-cassava.changes b/ghc-cassava.changes new file mode 100644 index 0000000..f622002 --- /dev/null +++ b/ghc-cassava.changes @@ -0,0 +1,5 @@ +------------------------------------------------------------------- +Tue Jun 9 09:26:15 UTC 2020 - psimons@suse.com + +- Add cassava at version 0.5.2.0. + diff --git a/ghc-cassava.spec b/ghc-cassava.spec new file mode 100644 index 0000000..d22428a --- /dev/null +++ b/ghc-cassava.spec @@ -0,0 +1,114 @@ +# +# spec file for package ghc-cassava +# +# Copyright (c) 2020 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global pkg_name cassava +%bcond_with tests +Name: ghc-%{pkg_name} +Version: 0.5.2.0 +Release: 0 +Summary: A CSV parsing and encoding library +License: BSD-3-Clause +URL: https://hackage.haskell.org/package/%{pkg_name} +Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-Only-devel +BuildRequires: ghc-array-devel +BuildRequires: ghc-attoparsec-devel +BuildRequires: ghc-bytestring-devel +BuildRequires: ghc-containers-devel +BuildRequires: ghc-deepseq-devel +BuildRequires: ghc-hashable-devel +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-scientific-devel +BuildRequires: ghc-text-devel +BuildRequires: ghc-text-short-devel +BuildRequires: ghc-transformers-devel +BuildRequires: ghc-unordered-containers-devel +BuildRequires: ghc-vector-devel +%if %{with tests} +BuildRequires: ghc-HUnit-devel +BuildRequires: ghc-QuickCheck-devel +BuildRequires: ghc-quickcheck-instances-devel +BuildRequires: ghc-test-framework-devel +BuildRequires: ghc-test-framework-hunit-devel +BuildRequires: ghc-test-framework-quickcheck2-devel +%endif + +%description +'cassava' is a library for parsing and encoding [RFC +4180](https://tools.ietf.org/html/rfc4180) compliant [comma-separated values +(CSV)](https://en.wikipedia.org/wiki/Comma-separated_values) data, which is a +textual line-oriented format commonly used for exchanging tabular data. + +'cassava''s API includes support for + +- Index-based record-conversion - Name-based record-conversion - Typeclass +directed conversion of fields and records - Built-in field-conversion instances +for standard types - Customizable record-conversion instance derivation via GHC +generics - Low-level +[bytestring](https://hackage.haskell.org/package/bytestring) builders (see +"Data.Csv.Builder") - Incremental decoding and encoding API (see +"Data.Csv.Incremental") - Streaming API for constant-space decoding (see +"Data.Csv.Streaming") + +Moreover, this library is designed to be easy to use; for instance, here's a +very simple example of encoding CSV data: + +>>> Data.Csv.encode [("John",27),("Jane",28)] "John,27rnJane,28rn" + +Please refer to the documentation in "Data.Csv" and the included +[README](#readme) for more usage examples. + +%package devel +Summary: Haskell %{pkg_name} library development files +Requires: %{name} = %{version}-%{release} +Requires: ghc-compiler = %{ghc_version} +Requires(post): ghc-compiler = %{ghc_version} +Requires(postun): ghc-compiler = %{ghc_version} + +%description devel +This package provides the Haskell %{pkg_name} library development files. + +%prep +%setup -q -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal + +%build +%define cabal_configure_options -f-bytestring--lt-0_10_4 +%ghc_lib_build + +%install +%ghc_lib_install + +%check +%cabal_test + +%post devel +%ghc_pkg_recache + +%postun devel +%ghc_pkg_recache + +%files -f %{name}.files +%license LICENSE + +%files devel -f %{name}-devel.files +%doc CHANGES.md README.md examples + +%changelog