Subject: CVS commit: pkgsrc/devel/hs-primitive
From: Masatake Daimon
Date: 2019-12-31 18:25:06
Message id: 20191231172507.0CB88FA97@cvs.NetBSD.org

Log Message:
Update to primitive-0.6.4.0

Changes in version 0.6.4.0
* Introduce Data.Primitive.PrimArray, which offers types and function
  for dealing with a ByteArray tagged with a phantom type variable for
  tracking the element type.
* Implement isByteArrayPinned and isMutableByteArrayPinned.
* Add Eq1, Ord1, Show1, and Read1 instances for Array and SmallArray.
* Improve the test suite. This includes having property tests for
  typeclasses from base such as Eq, Ord, Functor, Applicative, Monad,
  IsList, Monoid, Foldable, and Traversable.
* Fix the broken IsList instance for ByteArray. The old definition
  would allocate a byte array of the correct size and then leave the
  memory unitialized instead of writing the list elements to it.
* Fix the broken Functor instance for Array. The old definition would
  allocate an array of the correct size with thunks for erroring
  installed at every index. It failed to replace these thunks with the
  result of the function applied to the elements of the argument
  array.
* Fix the broken Applicative instances of Array and SmallArray. The
  old implementation of <*> for Array failed to initialize some
  elements but correctly initialized others in the resulting Array. It
  is unclear what the old behavior of <*> was for SmallArray, but it
  was incorrect.
* Fix the broken Monad instances for Array and SmallArray.
* Fix the implementation of foldl1 in the Foldable instances for Array
  and SmallArray. In both cases, the old implementation simply
  returned the first element of the array and made no use of the other
  elements in the array.
* Fix the implementation of mconcat in the Monoid instance for
  SmallArray.
* Implement Data.Primitive.Ptr, implementations of Ptr functions that
  require a Prim constraint instead of a Storable constraint.
* Add PrimUnlifted instances for TVar and MVar.
* Use compareByteArrays# for the Eq and Ord instances of ByteArray
  when building with GHC 8.4 and newer.
* Add Prim instances for lots of types in Foreign.C.Types and
  System.Posix.Types.
* Reexport Data.Primitive.SmallArray and Data.Primitive.UnliftedArray
  from Data.Primitive.
* Add fold functions and map function to
  Data.Primitive.UnliftedArray. Add typeclass instances for IsList,
  Ord, and Show.
* Add defaultSetByteArray# and defaultSetOffAddr# to
  Data.Primitive.Types.
* Add Data.Primitive.MVar, a replacement for Control.Concurrent.MVar
  that can run in any PrimMonad instead of just IO. It is not a full
  replacement. Notably, it's missing masking functions and support for
  adding finalizers.

Changes in version 0.6.3.0
* Add PrimMonad instances for ContT, AccumT, and SelectT from
  transformers
* Add Eq, Ord, Show, and IsList instances for ByteArray
* Add Semigroup instances for Array and SmallArray. This allows
  primitive to build on GHC 8.4 and later.

Changes in version 0.6.2.0
* Drop support for GHCs before 7.4
* SmallArray support
* ArrayArray# based support for more efficient arrays of unlifted
  pointer types
* Make Array and the like instances of various classes for convenient
  use
* Add Prim instances for Ptr and FunPtr
* Add ioToPrim, stToPrim and unsafe counterparts for situations that
  would otherwise require type ascriptions on primToPrim
* Add evalPrim
* Add PrimBase instance for IdentityT

Files:
RevisionActionfile
1.4modifypkgsrc/devel/hs-primitive/Makefile
1.5modifypkgsrc/devel/hs-primitive/buildlink3.mk
1.5modifypkgsrc/devel/hs-primitive/distinfo
1.1removepkgsrc/devel/hs-primitive/PLIST