cabal-version: >=1.10 name: linear-base version: 0.1.0 x-revision: 1 homepage: https://github.com/tweag/linear-base#README license: MIT license-file: LICENSE author: Tweag maintainer: arnaud.spiwack@tweag.io copyright: (c) Tweag Holding and affiliates category: Prelude build-type: Simple synopsis: Standard library for linear types. description: Please see README.md. extra-source-files: README.md CHANGELOG.md docs/DESIGN.md docs/USER_GUIDE.md library hs-source-dirs: src exposed-modules: Control.Monad.IO.Class.Linear Control.Functor.Linear Control.Functor.Linear.Internal.Class Control.Functor.Linear.Internal.Instances Control.Functor.Linear.Internal.MonadTrans Control.Functor.Linear.Internal.Reader Control.Functor.Linear.Internal.State Control.Optics.Linear Control.Optics.Linear.Internal Control.Optics.Linear.Iso Control.Optics.Linear.Lens Control.Optics.Linear.Prism Control.Optics.Linear.Traversal Data.Array.Destination Data.Array.Mutable.Linear Data.Array.Mutable.Unlifted.Linear Data.Array.Polarized Data.Array.Polarized.Pull Data.Array.Polarized.Pull.Internal Data.Array.Polarized.Push Data.Bifunctor.Linear Data.Bifunctor.Linear.Internal.Bifunctor Data.Bifunctor.Linear.Internal.SymmetricMonoidal Data.Bool.Linear Data.Either.Linear Data.Functor.Linear Data.Functor.Linear.Internal.Functor Data.Functor.Linear.Internal.Applicative Data.Functor.Linear.Internal.Traversable Data.HashMap.Mutable.Linear Data.List.Linear Data.Maybe.Linear Data.Monoid.Linear Data.Monoid.Linear.Internal.Monoid Data.Monoid.Linear.Internal.Semigroup Data.Num.Linear Data.Ord.Linear Data.Ord.Linear.Internal.Ord Data.Ord.Linear.Internal.Eq Data.Profunctor.Kleisli.Linear Data.Profunctor.Linear Data.Set.Mutable.Linear Data.Tuple.Linear Data.Unrestricted.Internal.Consumable Data.Unrestricted.Internal.Dupable Data.Unrestricted.Internal.Movable Data.Unrestricted.Internal.Instances Data.Unrestricted.Internal.Ur Data.Unrestricted.Linear Data.V.Linear Data.V.Linear.Internal.V Data.V.Linear.Internal.Instances Data.Vector.Mutable.Linear Debug.Trace.Linear Foreign.Marshal.Pure Prelude.Linear Prelude.Linear.Internal Streaming.Linear Streaming.Prelude.Linear Streaming.Internal.Consume Streaming.Internal.Interop Streaming.Internal.Many Streaming.Internal.Process Streaming.Internal.Produce Streaming.Internal.Type System.IO.Linear System.IO.Resource Unsafe.Linear build-depends: -- issue #464: build failure with GHC 9.8 base >= 4.15 && < 4.19, containers, ghc-prim, hashable, storable-tuple, text, transformers, vector, primitive default-language: Haskell2010 test-suite test type: exitcode-stdio-1.0 hs-source-dirs: test main-is: Main.hs other-modules: Test.Data.Destination Test.Data.Mutable.Array Test.Data.Mutable.Vector Test.Data.Mutable.HashMap Test.Data.Mutable.Set Test.Data.Polarized build-depends: base, linear-base, containers, hedgehog, tasty, tasty-hedgehog, mmorph, vector ghc-options: -threaded -rtsopts -with-rtsopts=-N default-language: Haskell2010 test-suite examples type: exitcode-stdio-1.0 hs-source-dirs: examples main-is: Main.hs other-modules: Test.Foreign Test.Quicksort Foreign.List Foreign.Heap Simple.FileIO Simple.Pure Simple.Quicksort Simple.TopSort build-depends: base, linear-base, tasty, tasty-hedgehog, hedgehog, storable-tuple, vector, text ghc-options: -threaded -rtsopts -with-rtsopts=-N default-language: Haskell2010 benchmark mutable-data type: exitcode-stdio-1.0 hs-source-dirs: bench main-is: Main.hs other-modules: Data.Mutable.HashMap build-depends: base, deepseq, gauge, hashtables, hashable, linear-base, random, random-shuffle, unordered-containers ghc-options: -rtsopts=ignore default-language: Haskell2010 -- TODO: Uncomment below block and set 'build-type' to 'Custom' to enable -- doctests once cabal-install 3.4 is released. -- -- Longer story: -- -- cabal-install has a piece of code[1] which injects a Cabal upper bound to -- packages with custom Setup.hs's. And this happens after the overrides, -- so the usual mechanisms of overriding upper bounds does not work. -- -- GHC 9 comes with Cabal 3.4, which is above that bound. So, when using -- GHC 9 with cabal-install 3.2; `build-type: Custom` causes another Cabal -- library to be built, and that causes a strange type error ("expecting IO, -- but got IO"), which I suspect because it conflicts with the existing boot -- packages. -- -- [1]: https://github.com/haskell/cabal/blob/d28c80acc69b9e7fa992a0b2b7fced937734b238/cabal-install/src/Distribution/Client/ProjectPlanning.hs#L1132-L1149 -- custom-setup -- setup-depends: -- base >= 4 && <5, -- Cabal, -- cabal-doctest -- -- test-suite doctests -- type: exitcode-stdio-1.0 -- hs-source-dirs: test/ -- main-is: Doctest.hs -- build-depends: base -- , doctest -- , linear-base -- ghc-options: -Wall -threaded -- default-language: Haskell2010 source-repository head type: git location: https://github.com/tweag/linear-base