diff --git a/cryptohash-sha256-0.11.101.0.cabal b/cryptohash-sha256-0.11.101.0.cabal new file mode 100644 index 0000000..bddab0c --- /dev/null +++ b/cryptohash-sha256-0.11.101.0.cabal @@ -0,0 +1,135 @@ +cabal-version: 1.12 +name: cryptohash-sha256 +version: 0.11.101.0 +x-revision: 2 + +synopsis: Fast, pure and practical SHA-256 implementation +description: { + +A practical incremental and one-pass, pure API to +the [SHA-256 cryptographic hash algorithm](https://en.wikipedia.org/wiki/SHA-2) according +to [FIPS 180-4](http://dx.doi.org/10.6028/NIST.FIPS.180-4) +with performance close to the fastest implementations available in other languages. +. +The core SHA-256 algorithm is implemented in C and is thus expected +to be as fast as the standard [sha256sum(1) tool](https://linux.die.net/man/1/sha256sum); +for instance, on an /Intel Core i7-3770/ at 3.40GHz this implementation can +compute a SHA-256 hash over 230 MiB of data in under one second. +(If, instead, you require a pure Haskell implementation and performance is secondary, please refer to the [SHA package](https://hackage.haskell.org/package/SHA).) +. +Additionally, this package provides support for +. +- HMAC-SHA-256: SHA-256-based [Hashed Message Authentication Codes](https://en.wikipedia.org/wiki/HMAC) (HMAC) +- HKDF-SHA-256: [HMAC-SHA-256-based Key Derivation Function](https://en.wikipedia.org/wiki/HKDF) (HKDF) +. +conforming to [RFC6234](https://tools.ietf.org/html/rfc6234), [RFC4231](https://tools.ietf.org/html/rfc4231), [RFC5869](https://tools.ietf.org/html/rfc5869), et al.. +. +=== Packages in the @cryptohash-*@ family +. +- +- +- +- +. +=== Relationship to the @cryptohash@ package and its API +. +This package has been originally a fork of @cryptohash-0.11.7@ because the @cryptohash@ +package had been deprecated and so this package continues to satisfy the need for a +lightweight package providing the SHA-256 hash algorithm without any dependencies on packages +other than @base@ and @bytestring@. The API exposed by @cryptohash-sha256-0.11.*@'s +"Crypto.Hash.SHA256" module is guaranteed to remain a compatible superset of the API provided +by the @cryptohash-0.11.7@'s module of the same name. +. +Consequently, this package is designed to be used as a drop-in replacement for @cryptohash-0.11.7@'s +"Crypto.Hash.SHA256" module, though with +a [clearly smaller footprint by almost 3 orders of magnitude](https://www.reddit.com/r/haskell/comments/5lxv75/psa_please_use_unique_module_names_when_uploading/dbzegx3/). + +} + +license: BSD3 +license-file: LICENSE +copyright: Vincent Hanquez, Herbert Valerio Riedel +maintainer: Herbert Valerio Riedel +homepage: https://github.com/hvr/cryptohash-sha256 +bug-reports: https://github.com/hvr/cryptohash-sha256/issues +category: Data, Cryptography +build-type: Simple +tested-with: GHC == 7.4.2 + , GHC == 7.6.3 + , GHC == 7.8.4 + , GHC == 7.10.3 + , GHC == 8.0.2 + , GHC == 8.2.1 + , GHC == 8.4.1 + +extra-source-files: cbits/hs_sha256.h + changelog.md + +source-repository head + type: git + location: https://github.com/hvr/cryptohash-sha256.git + +flag exe + description: Enable building @sha256sum@ executable + manual: True + default: False + +library + default-language: Haskell2010 + other-extensions: BangPatterns + CApiFFI + Trustworthy + Unsafe + + build-depends: base >= 4.5 && < 4.13 + , bytestring >= 0.9.2 && < 0.11 + + ghc-options: -Wall + + hs-source-dirs: src + exposed-modules: Crypto.Hash.SHA256 + other-modules: Crypto.Hash.SHA256.FFI + include-dirs: cbits + +executable sha256sum + hs-source-dirs: src-exe + main-is: sha256sum.hs + ghc-options: -Wall -threaded + if flag(exe) + default-language: Haskell2010 + other-extensions: RecordWildCards + build-depends: cryptohash-sha256 + , base + , bytestring + + , base16-bytestring >= 0.1.1 && < 0.2 + else + buildable: False + +test-suite test-sha256 + default-language: Haskell2010 + other-extensions: OverloadedStrings + type: exitcode-stdio-1.0 + hs-source-dirs: src-tests + main-is: test-sha256.hs + ghc-options: -Wall -threaded + build-depends: cryptohash-sha256 + , base + , bytestring + + , base16-bytestring >= 0.1.1 && < 0.2 + , SHA >= 1.6.4 && < 1.7 + , tasty == 0.11.* + , tasty-quickcheck == 0.8.* + , tasty-hunit == 0.9.* + +benchmark bench-sha256 + default-language: Haskell2010 + other-extensions: BangPatterns + type: exitcode-stdio-1.0 + main-is: bench-sha256.hs + hs-source-dirs: src-bench + build-depends: cryptohash-sha256 + , base + , bytestring + , criterion == 1.1.* diff --git a/ghc-cryptohash-sha256.spec b/ghc-cryptohash-sha256.spec index 6a8fe81..360dc27 100644 --- a/ghc-cryptohash-sha256.spec +++ b/ghc-cryptohash-sha256.spec @@ -1,4 +1,4 @@ -# generated by cabal-rpm-0.12.1 +# generated by cabal-rpm-0.13 # https://fedoraproject.org/wiki/Packaging:Haskell %global pkg_name cryptohash-sha256 @@ -8,16 +8,19 @@ Name: ghc-%{pkg_name} Version: 0.11.101.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Fast, pure and practical SHA-256 implementation License: BSD 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 -# Begin cabal-rpm deps: BuildRequires: ghc-bytestring-devel %if %{with tests} BuildRequires: ghc-SHA-devel @@ -60,15 +63,22 @@ files. %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 %check @@ -84,7 +94,9 @@ files. %files -f %{name}.files +# Begin cabal-rpm files: %license LICENSE +# End cabal-rpm files %files devel -f %{name}-devel.files @@ -92,6 +104,9 @@ files. %changelog +* Sun Feb 17 2019 Jens Petersen - 0.11.101.0-5 +- refresh to cabal-rpm-0.13 + * Thu Jan 31 2019 Fedora Release Engineering - 0.11.101.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild