diff --git a/ghc-hashable.changes b/ghc-hashable.changes index 089e244..f62c21c 100644 --- a/ghc-hashable.changes +++ b/ghc-hashable.changes @@ -1,38 +1,3 @@ -------------------------------------------------------------------- -Thu Jan 5 15:05:33 UTC 2023 - Peter Simons - -- Update hashable to version 1.4.2.0. - ## Version 1.4.2.0 - - * Fix the foreign signature of `getThreadId` - https://github.com/haskell-unordered-containers/hashable/pull/263 - * Drop support for GHCs prior GHC-8.2 - The recent `unordered-containers` releases support only GHC-8.2+ - * Add instance for `OsString`, `PosixString`, `WindowsString` from `filepath-1.4.100.1` - * Add `Hashable ByteArray` instance using `data-array-byte` compat package - - ## Version 1.4.1.0 - - * Add instance for `Data.Array.Byte.ByteArray`. - - ## Version 1.4.0.2 - - * Restore older GHC support - * Support GHC-9.0.2 - - ## Version 1.4.0.1 - - * `text-2.0` compatibility - - ## Version 1.4.0.0 - - * `Eq` is now a superclass of `Hashable`. - Also `Eq1` is a superclass of `Hashable1` and `Eq2` is a superclass of `Hashable2` - when exists. - - * Remove `Hashable1 Fixed` instance - * Remove `Hashable1 Semi.Min/Max/...` instances as they don't have `Eq1` instance. - ------------------------------------------------------------------- Thu Jan 6 13:38:03 UTC 2022 - Peter Simons diff --git a/ghc-hashable.spec b/ghc-hashable.spec index 6b8ca4c..ff3ef5b 100644 --- a/ghc-hashable.spec +++ b/ghc-hashable.spec @@ -1,7 +1,7 @@ # # spec file for package ghc-hashable # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,18 +19,17 @@ %global pkg_name hashable %bcond_with tests Name: ghc-%{pkg_name} -Version: 1.4.2.0 +Version: 1.3.5.0 Release: 0 Summary: A class for types that can be converted to a hash value 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-bytestring-devel BuildRequires: ghc-containers-devel BuildRequires: ghc-deepseq-devel -BuildRequires: ghc-filepath-devel -BuildRequires: ghc-ghc-bignum-devel BuildRequires: ghc-rpm-macros BuildRequires: ghc-text-devel ExcludeArch: %{ix86} @@ -62,6 +61,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 diff --git a/hashable-1.3.5.0.tar.gz b/hashable-1.3.5.0.tar.gz new file mode 100644 index 0000000..14a5865 --- /dev/null +++ b/hashable-1.3.5.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baaad82cd4271b197016bdbe76f22d5c3d3913fe38534cec7d817db9bae19886 +size 24676 diff --git a/hashable-1.4.2.0.tar.gz b/hashable-1.4.2.0.tar.gz deleted file mode 100644 index 9a7785c..0000000 --- a/hashable-1.4.2.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1b4000ea82b81f69d46d0af4152c10c6303873510738e24cfc4767760d30e3f8 -size 25094 diff --git a/hashable.cabal b/hashable.cabal new file mode 100644 index 0000000..dda7ac9 --- /dev/null +++ b/hashable.cabal @@ -0,0 +1,176 @@ +cabal-version: 1.12 +name: hashable +version: 1.3.5.0 +x-revision: 1 +synopsis: A class for types that can be converted to a hash value +description: + This package defines a class, 'Hashable', for types that + can be converted to a hash value. This class + exists for the benefit of hashing-based data + structures. The package provides instances for + basic types and a way to combine hash values. + +homepage: http://github.com/haskell-unordered-containers/hashable + +-- SPDX-License-Identifier : BSD-3-Clause +license: BSD3 +license-file: LICENSE +author: + Milan Straka + Johan Tibell + +maintainer: Oleg Grenrus +bug-reports: + https://github.com/haskell-unordered-containers/hashable/issues + +stability: Provisional +category: Data +build-type: Simple +tested-with: + GHC ==7.4.2 + || ==7.6.3 + || ==7.8.4 + || ==7.10.3 + || ==8.0.2 + || ==8.2.2 + || ==8.4.4 + || ==8.6.5 + || ==8.8.3 + || ==8.10.4 + || ==9.0.1 + || ==9.0.2 + || ==9.2.1 + +extra-source-files: + CHANGES.md + README.md + include/HsHashable.h + +flag integer-gmp + description: + Are we using @integer-gmp@ to provide fast Integer instances? No effect on GHC-9.0 or later. + + manual: False + default: True + +flag random-initial-seed + description: + Randomly initialize the initial seed on each final executable invocation + This is useful for catching cases when you rely on (non-existent) + stability of hashable's hash functions. + This is not a security feature. + + manual: True + default: False + +library + exposed-modules: + Data.Hashable + Data.Hashable.Generic + Data.Hashable.Lifted + + other-modules: + Data.Hashable.Class + Data.Hashable.Imports + Data.Hashable.LowLevel + Data.Hashable.Generic.Instances + + c-sources: cbits/fnv.c + include-dirs: include + hs-source-dirs: src + build-depends: + base >=4.5 && <4.17 + , bytestring >=0.9 && <0.12 + , containers >=0.4.2.1 && <0.7 + , deepseq >=1.3 && <1.5 + , ghc-prim + , text >=0.12 && <1.3 + + if impl(ghc >=9) + build-depends: ghc-bignum ==1.0.* || ==1.1.* || ==1.2.* + + else + if flag(integer-gmp) + build-depends: integer-gmp >=0.4 && <1.1 + + else + -- this is needed for the automatic flag to be well-balanced + build-depends: integer-simple + + if (flag(random-initial-seed) && impl(ghc)) + cpp-options: -DHASHABLE_RANDOM_SEED=1 + + if os(windows) + c-sources: cbits-win/init.c + + else + c-sources: cbits-unix/init.c + + default-language: Haskell2010 + other-extensions: + BangPatterns + CPP + DeriveDataTypeable + FlexibleContexts + FlexibleInstances + GADTs + KindSignatures + MagicHash + MultiParamTypeClasses + ScopedTypeVariables + Trustworthy + TypeOperators + UnliftedFFITypes + + ghc-options: -Wall -fwarn-tabs + + if impl(ghc >=9.0) + -- these flags may abort compilation with GHC-8.10 + -- https://gitlab.haskell.org/ghc/ghc/-/merge_requests/3295 + ghc-options: -Winferred-safe-imports -Wmissing-safe-haskell-mode + +test-suite hashable-tests + type: exitcode-stdio-1.0 + hs-source-dirs: tests + main-is: Main.hs + other-modules: + Properties + Regress + + build-depends: + base + , bytestring + , ghc-prim + , hashable + , HUnit + , QuickCheck >=2.4.0.1 + , random >=1.0 && <1.3 + , test-framework >=0.3.3 + , test-framework-hunit + , test-framework-quickcheck2 >=0.2.9 + , text >=0.11.0.5 + + if !os(windows) + build-depends: unix + cpp-options: -DHAVE_MMAP + other-modules: Regress.Mmap + other-extensions: CApiFFI + + ghc-options: -Wall -fno-warn-orphans + default-language: Haskell2010 + +test-suite hashable-examples + type: exitcode-stdio-1.0 + build-depends: + base + , ghc-prim + , hashable + + hs-source-dirs: examples + main-is: Main.hs + default-language: Haskell2010 + +source-repository head + type: git + location: + https://github.com/haskell-unordered-containers/hashable.git