From d55de7b920bc914387cdf89d257b34a0a6679c3291d2b3fbc72d34c970228e62 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 19 Jul 2024 12:40:31 +0000 Subject: [PATCH] osc copypac from project:devel:languages:haskell:ghc-9.8.x package:ghc-cryptohash-sha256 revision:3, using keep-link OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-cryptohash-sha256?expand=0&rev=66 --- .gitattributes | 23 +++++ .gitignore | 1 + cryptohash-sha256-0.11.102.1.tar.gz | 3 + cryptohash-sha256.cabal | 155 ++++++++++++++++++++++++++++ ghc-cryptohash-sha256.changes | 134 ++++++++++++++++++++++++ ghc-cryptohash-sha256.spec | 147 ++++++++++++++++++++++++++ 6 files changed, 463 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 cryptohash-sha256-0.11.102.1.tar.gz create mode 100644 cryptohash-sha256.cabal create mode 100644 ghc-cryptohash-sha256.changes create mode 100644 ghc-cryptohash-sha256.spec 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/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/cryptohash-sha256-0.11.102.1.tar.gz b/cryptohash-sha256-0.11.102.1.tar.gz new file mode 100644 index 0000000..f6144ee --- /dev/null +++ b/cryptohash-sha256-0.11.102.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73a7dc7163871a80837495039a099967b11f5c4fe70a118277842f7a713c6bf6 +size 15707 diff --git a/cryptohash-sha256.cabal b/cryptohash-sha256.cabal new file mode 100644 index 0000000..69183a8 --- /dev/null +++ b/cryptohash-sha256.cabal @@ -0,0 +1,155 @@ +cabal-version: 2.0 +name: cryptohash-sha256 +version: 0.11.102.1 +x-revision: 5 + +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.. +. +=== 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/haskell-hvr/cryptohash-sha256 +bug-reports: https://github.com/haskell-hvr/cryptohash-sha256/issues +category: Data, Cryptography +build-type: Simple + +tested-with: + GHC == 9.10.1 + GHC == 9.8.2 + GHC == 9.6.5 + GHC == 9.4.8 + GHC == 9.2.8 + GHC == 9.0.2 + GHC == 8.10.7 + GHC == 8.8.4 + GHC == 8.6.5 + GHC == 8.4.4 + GHC == 8.2.2 + GHC == 8.0.2 + +extra-source-files: cbits/hs_sha256.h + changelog.md + +source-repository head + type: git + location: https://github.com/haskell-hvr/cryptohash-sha256.git + +flag exe + description: Enable building @sha256sum@ executable + manual: True + default: False + +flag use-cbits + description: Use fast optimized C routines via FFI; if flag is disabled falls back to non-FFI Haskell optimized implementation. + manual: True + default: True + +library + default-language: Haskell2010 + + ghc-options: -Wall + + build-depends: base >= 4.5 && < 4.21 + + exposed-modules: Crypto.Hash.SHA256 + + if flag(use-cbits) + build-depends: bytestring ^>= 0.9.2.0 || ^>= 0.10.0.0 || ^>= 0.11.0.0 || ^>= 0.12.0.2 + + other-extensions: BangPatterns + CApiFFI + CPP + Trustworthy + Unsafe + + hs-source-dirs: src + other-modules: Crypto.Hash.SHA256.FFI + Compat + include-dirs: cbits + else + hs-source-dirs: src-pure + build-depends: cryptohash-sha256-pure ^>= 0.1.0 + +executable sha256sum + default-language: Haskell2010 + hs-source-dirs: src-exe + main-is: sha256sum.hs + ghc-options: -Wall -threaded + if flag(exe) + other-extensions: RecordWildCards + build-depends: cryptohash-sha256 + , base + , bytestring + + , base16-bytestring ^>= 0.1.1 || ^>= 1.0.0 + 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 || ^>= 1.0.0 + , SHA ^>= 1.6.4 + , tasty ^>= 1.4 || ^>= 1.5 + , tasty-quickcheck >= 0.10 && < 1 + , tasty-hunit ^>= 0.10 + +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 + , SHA ^>= 1.6.4 + , base + , bytestring + , criterion ^>= 1.5 || ^>=1.6 + + -- not yet public + -- build-depends: cryptohash-sha256-pure ^>= 0.1.0 diff --git a/ghc-cryptohash-sha256.changes b/ghc-cryptohash-sha256.changes new file mode 100644 index 0000000..a84072a --- /dev/null +++ b/ghc-cryptohash-sha256.changes @@ -0,0 +1,134 @@ +------------------------------------------------------------------- +Wed Jun 26 09:08:36 UTC 2024 - Peter Simons + +- Update cryptohash-sha256 to version 0.11.102.1 revision 5. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- +Fri Apr 19 21:15:16 UTC 2024 - Peter Simons + +- Update cryptohash-sha256 to version 0.11.102.1 revision 4. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- +Thu Sep 14 07:18:49 UTC 2023 - Peter Simons + +- Update cryptohash-sha256 to version 0.11.102.1 revision 3. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- +Thu Mar 30 17:06:26 UTC 2023 - Peter Simons + +- Updated spec file to conform with ghc-rpm-macros-2.5.2. + +------------------------------------------------------------------- +Thu Mar 16 23:42:38 UTC 2023 - Peter Simons + +- Update cryptohash-sha256 to version 0.11.102.1 revision 2. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- +Sun Aug 14 20:37:24 UTC 2022 - Peter Simons + +- Update cryptohash-sha256 to version 0.11.102.1 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- +Tue Oct 12 11:34:17 UTC 2021 - psimons@suse.com + +- Update cryptohash-sha256 to version 0.11.102.1. + Upstream has not updated the file "changelog.md" since the last + release. + +------------------------------------------------------------------- +Wed Jun 16 08:26:59 UTC 2021 - psimons@suse.com + +- Update cryptohash-sha256 to version 0.11.102.0 revision 1. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- +Mon Jan 25 09:35:35 UTC 2021 - psimons@suse.com + +- Update cryptohash-sha256 to version 0.11.102.0. + ## 0.11.102.0 + + - Add Eq instance for Ctx + - Add start and startlazy producing Ctx + - Introduce new `use-cbits` cabal flag in order to + add support for FFI-less `cryptohash-sha256-pure` pass-thru + +------------------------------------------------------------------- +Thu Dec 17 12:20:00 UTC 2020 - Ondřej Súkup + +- disable %{ix86} build + +------------------------------------------------------------------- +Mon Aug 31 09:34:37 UTC 2020 - psimons@suse.com + +- Update cryptohash-sha256 to version 0.11.101.0 revision 4. + Upstream has revised the Cabal build instructions on Hackage. + +------------------------------------------------------------------- +Tue Aug 18 10:44:31 UTC 2020 - Peter Simons + +- Replace %setup -q with the more modern %autosetup macro. + +------------------------------------------------------------------- +Tue Jun 16 11:13:57 UTC 2020 - Peter Simons + +- Re-generate file with latest version of spec-cleaner. + +------------------------------------------------------------------- +Thu May 7 08:08:20 UTC 2020 - Peter Simons + +- Update Cabal file to get more accurate dependency information. + +------------------------------------------------------------------- +Fri Nov 8 16:13:31 UTC 2019 - Peter Simons + +- Drop obsolete group attributes. + +------------------------------------------------------------------- +Fri Oct 19 13:13:47 UTC 2018 - Peter Simons + +- Update Cabal build instructions to support ghc-8.6.1. + +------------------------------------------------------------------- +Wed Jul 18 14:26:19 UTC 2018 - psimons@suse.com + +- Cosmetic: replace tabs with blanks, strip trailing white space, + and update copyright headers with spec-cleaner. + +------------------------------------------------------------------- +Mon May 14 17:02:11 UTC 2018 - psimons@suse.com + +- Update cryptohash-sha256 to version 0.11.101.0 revision 1. + - Add `hkdf` function providing HKDF-SHA256 conforming to RFC5869 + - Declare `Crypto.Hash.SHA256` module `-XTrustworthy` + - Remove ineffective RULES + - Convert to `CApiFFI` + - Added `...AndLength` variants of hashing functions: + - `finalizeAndLength` + - `hashlazyAndLength` + - `hmaclazyAndLength` + - Minor optimizations in `hmac` and `hash` + +------------------------------------------------------------------- +Thu Aug 3 15:38:38 UTC 2017 - psimons@suse.com + +- Updated with latest spec-cleaner version 0.9.8-8-geadfbbf. + +------------------------------------------------------------------- +Sun Apr 9 18:08:08 UTC 2017 - psimons@suse.com + +- Update to version 0.11.100.1 revision 1 with cabal2obs. + +------------------------------------------------------------------- +Sun Jul 10 17:28:01 UTC 2016 - psimons@suse.com + +- Update to version 0.11.100.1 revision 0 with cabal2obs. + +------------------------------------------------------------------- +Fri May 27 12:02:02 UTC 2016 - mimi.vx@gmail.com + +- ghc-cryptohash-sha256 generated by st2obs scritpt diff --git a/ghc-cryptohash-sha256.spec b/ghc-cryptohash-sha256.spec new file mode 100644 index 0000000..3f11318 --- /dev/null +++ b/ghc-cryptohash-sha256.spec @@ -0,0 +1,147 @@ +# +# spec file for package ghc-cryptohash-sha256 +# +# Copyright (c) 2024 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 cryptohash-sha256 +%global pkgver %{pkg_name}-%{version} +%bcond_with tests +Name: ghc-%{pkg_name} +Version: 0.11.102.1 +Release: 0 +Summary: Fast, pure and practical SHA-256 implementation +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/5.cabal#/%{pkg_name}.cabal +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-base-prof +BuildRequires: ghc-bytestring-devel +BuildRequires: ghc-bytestring-prof +BuildRequires: ghc-rpm-macros +ExcludeArch: %{ix86} +%if %{with tests} +BuildRequires: ghc-SHA-devel +BuildRequires: ghc-SHA-prof +BuildRequires: ghc-base16-bytestring-devel +BuildRequires: ghc-base16-bytestring-prof +BuildRequires: ghc-tasty-devel +BuildRequires: ghc-tasty-hunit-devel +BuildRequires: ghc-tasty-hunit-prof +BuildRequires: ghc-tasty-prof +BuildRequires: ghc-tasty-quickcheck-devel +BuildRequires: ghc-tasty-quickcheck-prof +%endif + +%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.. + +=== 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/). + +%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. + +%package -n ghc-%{pkg_name}-doc +Summary: Haskell %{pkg_name} library documentation +Requires: ghc-filesystem +BuildArch: noarch + +%description -n ghc-%{pkg_name}-doc +This package provides the Haskell %{pkg_name} library documentation. + +%package -n ghc-%{pkg_name}-prof +Summary: Haskell %{pkg_name} profiling library +Requires: ghc-%{pkg_name}-devel = %{version}-%{release} +Supplements: (ghc-%{pkg_name}-devel and ghc-prof) + +%description -n ghc-%{pkg_name}-prof +This package provides the Haskell %{pkg_name} profiling library. + +%prep +%autosetup -n %{pkg_name}-%{version} +cp -p %{SOURCE1} %{pkg_name}.cabal + +%build +%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 changelog.md + +%files -n ghc-%{pkg_name}-doc -f ghc-%{pkg_name}-doc.files +%license LICENSE + +%files -n ghc-%{pkg_name}-prof -f ghc-%{pkg_name}-prof.files + +%changelog