This commit is contained in:
Jens Petersen 2020-07-01 15:15:07 +08:00
parent 93e2afeccb
commit 344fc2bec9
4 changed files with 235 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/HsYAML-0.1.2.0.tar.gz

108
HsYAML-0.1.2.0.cabal Normal file
View File

@ -0,0 +1,108 @@
cabal-version: 1.14
build-type: Simple
name: HsYAML
version: 0.1.2.0
x-revision: 1
synopsis: Pure Haskell YAML 1.2 parser
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
tested-with: GHC==8.6.5, GHC==8.4.4, GHC==8.4.1, 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) parser implementation for Haskell.
.
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").
* 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).
* 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").
.
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.Event
, Data.YAML.Token
other-modules: Data.YAML.Loader
, Data.YAML.Schema
, Data.YAML.Token.Encoding
, Util
, Data.DList
default-language: Haskell2010
other-extensions: FlexibleContexts
FlexibleInstances
FunctionalDependencies
MultiParamTypeClasses
OverloadedStrings
PostfixOperators
RecordWildCards
RecursiveDo
Safe
ScopedTypeVariables
Trustworthy
TypeSynonymInstances
build-depends: base >=4.5 && <4.14
, bytestring >=0.9 && <0.11
, containers >=0.4.2 && <0.7
, text >=1.2.3 && <1.3
, mtl >=2.2.1 && <2.3
, parsec >=3.1.13.0 && < 3.2
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 >= 6.5.0 && < 6.6
, microaeson == 0.1.*
, filepath == 1.4.*
, directory >= 1.2 && < 1.4
else
buildable: False
ghc-options: -rtsopts

125
ghc-HsYAML.spec Normal file
View File

@ -0,0 +1,125 @@
# generated by cabal-rpm-2.0.6
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/
%global pkg_name HsYAML
%global pkgver %{pkg_name}-%{version}
Name: ghc-%{pkg_name}
Version: 0.1.2.0
Release: 1%{?dist}
Summary: Pure Haskell YAML 1.2 parser
License: GPLv2+
Url: https://hackage.haskell.org/package/%{pkg_name}
# Begin cabal-rpm sources:
Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz
Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal
# End cabal-rpm sources
# Begin cabal-rpm deps:
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-base-prof
BuildRequires: ghc-bytestring-prof
BuildRequires: ghc-containers-prof
BuildRequires: ghc-mtl-prof
BuildRequires: ghc-parsec-prof
BuildRequires: ghc-text-prof
# End cabal-rpm deps
%description
'HsYAML' is a YAML 1.2 parser implementation for Haskell.
Features of 'HsYAML' include:
* Pure Haskell implementation with small dependency footprint and emphasis on
strict compliance with the http://yaml.org/spec/1.2/spec.html).
* Direct decoding to native Haskell types via ('aeson'-inspired) typeclass-based
API (see "Data.YAML").
* 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).
* 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").
%package devel
Summary: Haskell %{pkg_name} library development files
Provides: %{name}-static = %{version}-%{release}
Provides: %{name}-static%{?_isa} = %{version}-%{release}
%if %{defined ghc_version}
Requires: ghc-compiler = %{ghc_version}
%endif
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
This package provides the Haskell %{pkg_name} library development files.
%if %{with haddock}
%package doc
Summary: Haskell %{pkg_name} library documentation
BuildArch: noarch
%description doc
This package provides the Haskell %{pkg_name} library documentation.
%endif
%if %{with ghc_prof}
%package prof
Summary: Haskell %{pkg_name} profiling library
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
Supplements: (%{name}-devel and ghc-prof)
%description prof
This package provides the Haskell %{pkg_name} profiling library.
%endif
%prep
# Begin cabal-rpm setup:
%setup -q -n %{pkgver}
cp -bp %{SOURCE1} %{pkg_name}.cabal
# End cabal-rpm setup
%build
# Begin cabal-rpm build:
%ghc_lib_build
# End cabal-rpm build
%install
# Begin cabal-rpm install
%ghc_lib_install
# End cabal-rpm install
%files -f %{name}.files
# Begin cabal-rpm files:
%license LICENSE.GPLv2
%license LICENSE.GPLv3
# End cabal-rpm files
%files devel -f %{name}-devel.files
%doc ChangeLog.md
%if %{with haddock}
%files doc -f %{name}-doc.files
%license LICENSE.GPLv2
%license LICENSE.GPLv3
%endif
%if %{with ghc_prof}
%files prof -f %{name}-prof.files
%endif
%changelog
* Thu Mar 5 2020 Fedora Haskell SIG <haskell@lists.fedoraproject.org> - 0.1.2.0-1
- spec file generated by cabal-rpm-2.0.4

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (HsYAML-0.1.2.0.tar.gz) = 540123f547e4f76241a1282f87f45b0af282076a6edcd73c52a5362b5f5bcc50b92fef0c6a611ebdca25f8b5e9a9825911d42d2b9be75e9bbea214a3718dd9c3