157 lines
5.3 KiB
Plaintext
157 lines
5.3 KiB
Plaintext
cabal-version: 1.14
|
|
name: HsYAML
|
|
version: 0.2.1.0
|
|
x-revision: 4
|
|
|
|
synopsis: Pure Haskell YAML 1.2 processor
|
|
homepage: https://github.com/hvr/HsYAML
|
|
bug-reports: https://github.com/hvr/HsYAML/issues
|
|
license: GPL-2
|
|
X-SPDX-License-Identifier: GPL-2.0-or-later
|
|
license-files: LICENSE.GPLv2 LICENSE.GPLv3
|
|
author: Herbert Valerio Riedel
|
|
maintainer: hvr@gnu.org
|
|
copyright: 2015-2018 Herbert Valerio Riedel
|
|
, 2007-2008 Oren Ben-Kiki
|
|
category: Text
|
|
build-type: Simple
|
|
tested-with:
|
|
GHC == 9.2.1
|
|
GHC == 9.0.1
|
|
GHC == 8.10.7
|
|
GHC == 8.8.4
|
|
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
|
|
|
|
description:
|
|
@HsYAML@ is a [YAML 1.2](http://yaml.org/spec/1.2/spec.html) processor, i.e. a library for parsing and serializing YAML documents.
|
|
|
|
.
|
|
Features of @HsYAML@ include:
|
|
.
|
|
* Pure Haskell implementation with small dependency footprint and emphasis on strict compliance with the [YAML 1.2 specification](http://yaml.org/spec/1.2/spec.html).
|
|
* Direct decoding to native Haskell types via (@aeson@-inspired) typeclass-based API (see "Data.YAML").
|
|
* Allows round-tripping while preserving ordering, anchors, and comments at Event-level.
|
|
* Support for constructing custom YAML node graph representation (including support for cyclic YAML data structures).
|
|
* Support for the standard (untyped) /Failsafe/, (strict) /JSON/, and (flexible) /Core/ \"schemas\" providing implicit typing rules as defined in the YAML 1.2 specification (including support for user-defined custom schemas; see "Data.YAML.Schema").
|
|
* Support for emitting YAML using /Failsafe/, (strict) /JSON/, and (flexible) /Core/ \"schemas\" (including support for user-defined custom encoding schemas; see "Data.YAML.Schema").
|
|
* Event-based API resembling LibYAML's Event-based API (see "Data.YAML.Event").
|
|
* Low-level API access to lexical token-based scanner (see "Data.YAML.Token").
|
|
.
|
|
See also the <//hackage.haskell.org/package/HsYAML-aeson HsYAML-aeson> package which allows to decode and encode YAML by leveraging @aeson@'s 'FromJSON' and 'ToJSON' instances.
|
|
|
|
extra-source-files:
|
|
ChangeLog.md
|
|
|
|
source-repository head
|
|
type: git
|
|
location: https://github.com/hvr/HsYAML.git
|
|
|
|
flag exe
|
|
description: Enable @exe:yaml-test@ component
|
|
manual: True
|
|
default: False
|
|
|
|
library
|
|
hs-source-dirs: src
|
|
exposed-modules: Data.YAML
|
|
, Data.YAML.Schema
|
|
, Data.YAML.Event
|
|
, Data.YAML.Token
|
|
other-modules: Data.YAML.Loader
|
|
, Data.YAML.Dumper
|
|
, Data.YAML.Internal
|
|
, Data.YAML.Event.Internal
|
|
, Data.YAML.Event.Writer
|
|
, Data.YAML.Pos
|
|
, Data.YAML.Schema.Internal
|
|
, Data.YAML.Token.Encoding
|
|
, Util
|
|
, Data.DList
|
|
|
|
default-language: Haskell2010
|
|
other-extensions: DeriveGeneric
|
|
FlexibleContexts
|
|
FlexibleInstances
|
|
FunctionalDependencies
|
|
MultiParamTypeClasses
|
|
OverloadedStrings
|
|
PostfixOperators
|
|
RecordWildCards
|
|
RecursiveDo
|
|
Safe
|
|
ScopedTypeVariables
|
|
Trustworthy
|
|
TypeSynonymInstances
|
|
|
|
build-depends: base >=4.5 && <4.17
|
|
, bytestring >=0.9 && <0.12
|
|
, containers >=0.4.2 && <0.7
|
|
, deepseq >=1.3.0 && <1.5
|
|
, text >=1.2.3 && <2.1
|
|
, mtl >=2.2.1 && <2.3
|
|
, parsec >=3.1.13.0 && < 3.2
|
|
|
|
-- for GHC.Generics
|
|
if impl(ghc < 7.6)
|
|
build-depends: ghc-prim
|
|
|
|
if !impl(ghc >= 8.0)
|
|
build-depends: fail >=4.9.0.0 && <4.10
|
|
|
|
if !impl(ghc >= 7.10)
|
|
build-depends: nats >=1.1.2 && <1.2
|
|
|
|
ghc-options: -Wall
|
|
|
|
executable yaml-test
|
|
hs-source-dirs: src-test
|
|
main-is: Main.hs
|
|
other-modules: TML
|
|
|
|
default-language: Haskell2010
|
|
|
|
if flag(exe)
|
|
build-depends: HsYAML
|
|
-- inherited constraints
|
|
, bytestring >= 0.10.8.0
|
|
, base
|
|
, text
|
|
, containers
|
|
, mtl
|
|
-- non-inherited
|
|
, megaparsec >= 7.0 && < 10
|
|
, microaeson == 0.1.*
|
|
, filepath == 1.4.*
|
|
, directory >= 1.2 && < 1.4
|
|
else
|
|
buildable: False
|
|
|
|
ghc-options: -rtsopts
|
|
|
|
test-suite tests
|
|
default-language: Haskell2010
|
|
type: exitcode-stdio-1.0
|
|
hs-source-dirs: tests
|
|
main-is: Tests.hs
|
|
|
|
ghc-options: -rtsopts
|
|
|
|
build-depends: HsYAML
|
|
-- inherited constraints
|
|
, bytestring >= 0.10.8.0
|
|
, base
|
|
, text
|
|
, containers
|
|
, mtl
|
|
-- non-inherited
|
|
, QuickCheck == 2.14.*
|
|
, tasty == 1.4.*
|
|
, tasty-quickcheck == 0.10.*
|