packages feed

isomorphism-class 0.1.0.9 → 0.1.0.10

raw patch · 6 files changed

+53/−73 lines, 6 filesdep −tasty-hunitdep ~bytestringdep ~primitivePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies removed: tasty-hunit

Dependency ranges changed: bytestring, primitive

API changes (from Hackage documentation)

- IsomorphismClass: class IsomorphicTo b a => IsomorphicTo a b
+ IsomorphismClass: class (IsomorphicTo b a) => IsomorphicTo a b

Files

isomorphism-class.cabal view
@@ -1,65 +1,63 @@ cabal-version: 3.0--name: isomorphism-class-version: 0.1.0.9-synopsis: Isomorphism typeclass solving the conversion problem-homepage: https://github.com/nikita-volkov/isomorphism-class-bug-reports: https://github.com/nikita-volkov/isomorphism-class/issues-author: Nikita Volkov <nikita.y.volkov@mail.ru>-maintainer: Nikita Volkov <nikita.y.volkov@mail.ru>-copyright: (c) 2022 Nikita Volkov-license: MIT-license-file: LICENSE+name:          isomorphism-class+version:       0.1.0.10+synopsis:      Isomorphism typeclass solving the conversion problem+homepage:      https://github.com/nikita-volkov/isomorphism-class+bug-reports:   https://github.com/nikita-volkov/isomorphism-class/issues+author:        Nikita Volkov <nikita.y.volkov@mail.ru>+maintainer:    Nikita Volkov <nikita.y.volkov@mail.ru>+copyright:     (c) 2022 Nikita Volkov+license:       MIT+license-file:  LICENSE  source-repository head-  type: git+  type:     git   location: git://github.com/nikita-volkov/isomorphism-class.git  common language-settings-  default-language: Haskell2010+  default-language:   Haskell2010   default-extensions:+    NoImplicitPrelude     FlexibleContexts     FlexibleInstances     MagicHash     MultiParamTypeClasses-    NoImplicitPrelude     ScopedTypeVariables     TypeApplications     UndecidableSuperClasses -common library-dependencies-  build-depends:-    base >=4.12 && <5,-    bytestring >=0.10 && <0.12,-    containers >=0.6 && <0.7,-    hashable >=1 && <2,-    primitive >=0.7.3 && <0.9,-    text >=1.2 && <3,-    unordered-containers >=0.2 && <0.3,-    vector >=0.12 && <0.14,- library-  import: language-settings, library-dependencies-  hs-source-dirs: library-  exposed-modules:-    IsomorphismClass+  import:          language-settings+  hs-source-dirs:  library+  exposed-modules: IsomorphismClass   other-modules:     IsomorphismClass.Prelude     IsomorphismClass.TextCompat.Array +  build-depends:+    , base >=4.12 && <5+    , bytestring >=0.10 && <0.12+    , containers >=0.6 && <0.7+    , hashable >=1 && <2+    , primitive >=0.7.3 && <0.10+    , text >=1.2 && <3+    , unordered-containers >=0.2 && <0.3+    , vector >=0.12 && <0.14+ test-suite test-  import: language-settings, library-dependencies-  type: exitcode-stdio-1.0+  import:         language-settings+  type:           exitcode-stdio-1.0   hs-source-dirs: test-  main-is: Main.hs-  other-modules:-    Test.ExtraInstances+  main-is:        Main.hs+  other-modules:  Test.ExtraInstances   build-depends:-    bytestring,-    isomorphism-class,-    QuickCheck >=2.13 && <3,-    quickcheck-instances >=0.3.28 && <0.4,-    rebase >=1.15 && <2,-    tasty >=1.2.3 && <2,-    tasty-hunit >=0.10.0.2 && <0.11,-    tasty-quickcheck >=0.10.1 && <0.11,+    , bytestring >=0.10 && <0.12+    , isomorphism-class+    , primitive >=0.7.3 && <0.10+    , QuickCheck >=2.13 && <3+    , quickcheck-instances >=0.3.28 && <0.4+    , rebase >=1.15 && <2+    , tasty >=1.2.3 && <2+    , tasty-quickcheck >=0.10.1 && <0.11+    , text >=1.2 && <3+    , vector >=0.12 && <0.14
library/IsomorphismClass.hs view
@@ -1,3 +1,5 @@+{-# OPTIONS_GHC -Wno-unused-top-binds #-}+ -- | -- Isomorphism as a lawful solution to the conversion problem. --@@ -114,13 +116,11 @@ import qualified Data.ByteString.Short.Internal as ByteStringShortInternal import qualified Data.Primitive.ByteArray as PrimitiveByteArray import qualified Data.Sequence as Seq-import qualified Data.Set as Set import qualified Data.Text as Text import qualified Data.Text.Array as TextArray import qualified Data.Text.Lazy as TextLazy import qualified Data.Text.Lazy.Builder as TextLazyBuilder import qualified Data.Vector as Vector-import qualified Data.Vector.Generic as VectorGeneric import IsomorphismClass.Prelude import qualified IsomorphismClass.TextCompat.Array as TextCompatArray @@ -166,7 +166,7 @@ -- For each pair of isomorphic types (/A/ and /B/) the compiler will require -- you to define two instances, namely: @IsomorphicTo A B@ and @IsomorphicTo -- B A@.-class IsomorphicTo b a => IsomorphicTo a b where+class (IsomorphicTo b a) => IsomorphicTo a b where   to :: b -> a  --@@ -526,7 +526,7 @@ -- -- The first type application of the 'to' function on the other hand specifies -- the output data type.-from :: forall a b. IsomorphicTo b a => a -> b+from :: forall a b. (IsomorphicTo b a) => a -> b from = to  -- |
library/IsomorphismClass/Prelude.hs view
@@ -48,7 +48,7 @@ import Data.Proxy as Exports import Data.Ratio as Exports import Data.STRef as Exports-import Data.Semigroup as Exports hiding (Option)+import Data.Semigroup as Exports import Data.Sequence as Exports (Seq) import Data.Set as Exports (Set) import Data.String as Exports@@ -81,8 +81,6 @@ import System.Mem as Exports import System.Mem.StableName as Exports import System.Timeout as Exports-import Text.ParserCombinators.ReadP as Exports (ReadP, ReadS, readP_to_S, readS_to_P)-import Text.ParserCombinators.ReadPrec as Exports (ReadPrec, readP_to_Prec, readPrec_to_P, readPrec_to_S, readS_to_Prec) import Text.Printf as Exports (hPrintf, printf) import Text.Read as Exports (Read (..), readEither, readMaybe) import Unsafe.Coerce as Exports
library/IsomorphismClass/TextCompat/Array.hs view
@@ -4,7 +4,6 @@  import Data.Text.Array import GHC.Exts (ByteArray#)-import IsomorphismClass.Prelude  {-# INLINE toUnliftedByteArray #-} toUnliftedByteArray :: Array -> ByteArray#
test/Main.hs view
@@ -1,26 +1,21 @@ module Main where -import qualified Data.ByteString as ByteString import qualified Data.ByteString.Builder as ByteStringBuilder import qualified Data.ByteString.Lazy as ByteStringLazy import qualified Data.ByteString.Short as ByteStringShort import qualified Data.Primitive.ByteArray as PrimitiveByteArray-import qualified Data.Sequence as Seq-import qualified Data.Set as Set-import qualified Data.Text as Text import qualified Data.Text.Lazy as TextLazy import qualified Data.Text.Lazy.Builder as TextLazyBuilder-import qualified Data.Vector as Vector-import qualified Data.Vector.Generic as VectorGeneric import IsomorphismClass import Rebase.Prelude-import Test.ExtraInstances+import Test.ExtraInstances () import Test.Tasty-import Test.Tasty.HUnit import Test.Tasty.QuickCheck hiding ((.&.)) +main :: IO () main = defaultMain allTests +allTests :: TestTree allTests =   testGroup "All" $     [ testPair @String @Text Proxy Proxy,
test/Test/ExtraInstances.hs view
@@ -1,26 +1,16 @@+{-# OPTIONS_GHC -Wno-orphans #-}+ module Test.ExtraInstances () where -import qualified Data.ByteString as ByteString import qualified Data.ByteString.Builder as ByteStringBuilder-import qualified Data.ByteString.Lazy as ByteStringLazy-import qualified Data.ByteString.Short as ByteStringShort-import qualified Data.HashSet as HashSet-import qualified Data.Primitive.ByteArray as PrimitiveByteArray-import qualified Data.Sequence as Seq-import qualified Data.Set as Set-import qualified Data.Text as Text-import qualified Data.Text.Lazy as TextLazy import qualified Data.Text.Lazy.Builder as TextLazyBuilder-import qualified Data.Vector as Vector import qualified Data.Vector.Generic as VectorGeneric import qualified Data.Vector.Primitive as VectorPrimitive-import qualified Data.Vector.Storable as VectorStorable-import qualified Data.Vector.Unboxed as VectorUnboxed import Rebase.Prelude import Test.QuickCheck-import Test.QuickCheck.Instances+import Test.QuickCheck.Instances () -instance (Arbitrary a, VectorPrimitive.Prim a, Show a) => Arbitrary (VectorPrimitive.Vector a) where+instance (Arbitrary a, VectorPrimitive.Prim a) => Arbitrary (VectorPrimitive.Vector a) where   arbitrary = arbitraryVector   shrink = shrinkVector @@ -35,7 +25,7 @@   arbitrary = ByteStringBuilder.byteString <$> arbitrary   shrink = shrinkMap ByteStringBuilder.lazyByteString ByteStringBuilder.toLazyByteString -arbitraryVector :: (VectorGeneric.Vector v a, Arbitrary a, Show a) => Gen (v a)+arbitraryVector :: (VectorGeneric.Vector v a, Arbitrary a) => Gen (v a) arbitraryVector = VectorGeneric.fromList <$> arbitrary  shrinkVector :: (VectorGeneric.Vector v a, Arbitrary a) => v a -> [v a]