diff --git a/aeson.cabal b/aeson.cabal new file mode 100644 index 0000000..3afd19b --- /dev/null +++ b/aeson.cabal @@ -0,0 +1,258 @@ +name: aeson +version: 1.5.6.0 +x-revision: 1 +license: BSD3 +license-file: LICENSE +category: Text, Web, JSON +copyright: (c) 2011-2016 Bryan O'Sullivan + (c) 2011 MailRank, Inc. +author: Bryan O'Sullivan +maintainer: Adam Bergmark +stability: experimental +tested-with: GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.3, GHC == 8.10.1 +synopsis: Fast JSON parsing and encoding +cabal-version: >= 1.10 +homepage: https://github.com/haskell/aeson +bug-reports: https://github.com/haskell/aeson/issues +build-type: Simple +description: + A JSON parsing and encoding library optimized for ease of use + and high performance. + . + To get started, see the documentation for the @Data.Aeson@ module + below. + . + (A note on naming: in Greek mythology, Aeson was the father of Jason.) + +extra-source-files: + *.yaml + README.markdown + cbits/*.c + changelog.md + include/*.h + tests/JSONTestSuite/test_parsing/*.json + tests/JSONTestSuite/test_transform/*.json + tests/golden/*.expected + src-ffi/Data/Aeson/Parser/*.hs + src-pure/Data/Aeson/Parser/*.hs + benchmarks/json-data/*.json + +flag developer + description: operate in developer mode + default: False + manual: True + +flag fast + description: compile without optimizations + default: False + manual: True + +flag bytestring-builder + description: Depend on the bytestring-builder package for backwards compatibility. + default: False + manual: False + +flag cffi + description: Controls whether to include c-ffi bits or pure haskell. Default to False for security. + default: False + manual: True + +library + default-language: Haskell2010 + hs-source-dirs: src attoparsec-iso8601/src + + exposed-modules: + Data.Aeson + Data.Aeson.Encoding + Data.Aeson.Parser + Data.Aeson.Text + Data.Aeson.Types + Data.Aeson.TH + Data.Aeson.QQ.Simple + + Data.Aeson.Encoding.Internal + Data.Aeson.Internal + Data.Aeson.Internal.Time + Data.Aeson.Parser.Internal + + -- Deprecated modules + exposed-modules: + Data.Aeson.Encode + + other-modules: + Data.Aeson.Encoding.Builder + Data.Aeson.Internal.Functions + Data.Aeson.Parser.Unescape + Data.Aeson.Parser.Time + Data.Aeson.Types.FromJSON + Data.Aeson.Types.Generic + Data.Aeson.Types.ToJSON + Data.Aeson.Types.Class + Data.Aeson.Types.Internal + Data.Attoparsec.Time + Data.Attoparsec.Time.Internal + + -- GHC bundled libs + build-depends: + base >= 4.7.0.0 && < 5, + bytestring >= 0.10.4.0 && < 0.12, + containers >= 0.5.5.1 && < 0.7, + deepseq >= 1.3.0.0 && < 1.5, + ghc-prim >= 0.2 && < 0.8, + template-haskell >= 2.9.0.0 && < 2.18, + text >= 1.2.3.0 && < 1.3, + time >= 1.4 && < 1.12 + + if impl(ghc >= 8.0) + build-depends: bytestring >= 0.10.8.1 + + -- Compat + build-depends: + base-compat-batteries >= 0.10.0 && < 0.12, + time-compat >= 1.9.4 && < 1.10 + + if !impl(ghc >= 8.6) + build-depends: + contravariant >=1.4.1 && <1.6 + + if !impl(ghc >= 8.0) + -- `Data.Semigroup` and `Control.Monad.Fail` and `Control.Monad.IO.Class` are available in base only since GHC 8.0 / base 4.9 + build-depends: + semigroups >= 0.18.5 && < 0.20, + transformers >= 0.3.0.0 && < 0.6, + transformers-compat >= 0.6.2 && < 0.7, + fail == 4.9.* + + if !impl(ghc >= 7.10) + -- `Numeric.Natural` is available in base only since GHC 7.10 / base 4.8 + build-depends: nats >= 1.1.1 && < 1.2, + void >= 0.7.2 && < 0.8 + + -- Other dependencies + build-depends: + attoparsec >= 0.13.2.2 && < 0.15, + data-fix >= 0.3 && < 0.4, + dlist >= 0.8.0.4 && < 1.1, + hashable >= 1.2.7.0 && < 1.4, + primitive >= 0.7.0.1 && < 0.8, + scientific >= 0.3.6.2 && < 0.4, + strict >= 0.4 && < 0.5, + tagged >= 0.8.6 && < 0.9, + th-abstraction >= 0.2.8.0 && < 0.5, + these >= 1.1 && < 1.2, + unordered-containers >= 0.2.10.0 && < 0.3, + uuid-types >= 1.0.3 && < 1.1, + vector >= 0.12.0.1 && < 0.13 + + ghc-options: -Wall + + if flag(developer) + ghc-options: -Werror + ghc-prof-options: -auto-all + + if flag(fast) + ghc-options: -O0 + else + ghc-options: -O2 + + include-dirs: include + if impl(ghcjs) || !flag(cffi) + hs-source-dirs: src-pure + other-modules: Data.Aeson.Parser.UnescapePure + else + c-sources: cbits/unescape_string.c + cpp-options: -DCFFI + hs-source-dirs: src-ffi + other-modules: Data.Aeson.Parser.UnescapeFFI + +test-suite aeson-tests + default-language: Haskell2010 + type: exitcode-stdio-1.0 + hs-source-dirs: tests src-ffi src-pure + main-is: Tests.hs + c-sources: cbits/unescape_string.c + ghc-options: -Wall -threaded -rtsopts + + other-modules: + Data.Aeson.Parser.UnescapeFFI + Data.Aeson.Parser.UnescapePure + DataFamilies.Properties + DataFamilies.Instances + DataFamilies.Encoders + DataFamilies.Types + Encoders + ErrorMessages + Functions + Instances + Options + PropUtils + Properties + PropertyGeneric + PropertyKeys + PropertyRoundTrip + PropertyRTFunctors + PropertyTH + SerializationFormatSpec + Types + UnitTests + UnitTests.NullaryConstructors + + build-depends: + QuickCheck >= 2.14.2 && < 2.15, + aeson, + integer-logarithms >= 1 && <1.1, + attoparsec, + base, + base-compat, + base-orphans >= 0.5.3 && <0.9, + base16-bytestring, + containers, + data-fix, + directory, + dlist, + Diff >= 0.4 && < 0.5, + filepath, + generic-deriving >= 1.10 && < 1.15, + ghc-prim >= 0.2, + hashable >= 1.2.4.0, + hashable-time >= 0.2.1 && <0.3, + scientific, + strict, + tagged, + template-haskell, + tasty, + tasty-golden, + tasty-hunit, + tasty-quickcheck, + text, + these, + time, + time-compat, + unordered-containers, + uuid-types, + vector, + quickcheck-instances >= 0.3.25.2 && <0.4 + + if flag(bytestring-builder) + build-depends: bytestring >= 0.9 && < 0.10.4, + bytestring-builder >= 0.10.4 && < 1 + else + build-depends: bytestring >= 0.10.4 + + if !impl(ghc >= 8.0) + build-depends: + semigroups >= 0.18.2 && < 0.20, + transformers >= 0.2.2.0, + transformers-compat >= 0.3 + + if !impl(ghc >= 7.10) + build-depends: nats >=1 && <1.2, + void >=0.7.2 && <0.8 + + + if flag(fast) + ghc-options: -fno-enable-rewrite-rules + +source-repository head + type: git + location: git://github.com/haskell/aeson.git diff --git a/ghc-aeson.changes b/ghc-aeson.changes index fd0ba5d..c5b71ec 100644 --- a/ghc-aeson.changes +++ b/ghc-aeson.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Mar 23 14:56:10 UTC 2021 - psimons@suse.com + +- Update aeson to version 1.5.6.0 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + ------------------------------------------------------------------- Fri Feb 19 23:03:07 UTC 2021 - psimons@suse.com diff --git a/ghc-aeson.spec b/ghc-aeson.spec index fcb6907..5d6fa68 100644 --- a/ghc-aeson.spec +++ b/ghc-aeson.spec @@ -25,6 +25,7 @@ Summary: Fast JSON parsing and encoding 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-attoparsec-devel BuildRequires: ghc-base-compat-batteries-devel @@ -87,6 +88,7 @@ This package provides the Haskell %{pkg_name} library development files. %prep %autosetup -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal %build %ghc_lib_build