Cabal revisions of lvish-1.1.4
Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.
revision 1
--- Initial lvish.cabal generated by cabal init. For further --- documentation, see http://haskell.org/cabal/users-guide/---- The name of the package.-name: lvish---- The package version. See the Haskell package versioning policy (PVP) --- for standards guiding when and how versions should be incremented.--- http://www.haskell.org/haskellwiki/Package_versioning_policy--- PVP summary: +-+------- breaking API changes--- | | +----- non-breaking API additions--- | | | +--- code changes with no API change-version: 1.1.4---- Changelog:--- 0.2 -- switch SLMap over to O(1) freeze--- 1.0 -- initial public release--- 1.0.0.2 -- minor docs polishing--- 1.0.0.4 -- Bugfix for runParThenFreeze 's' param (issue #26).--- 1.0.0.6 -- tighten up dependencies; remove unused flags; very minor doc fixes.--- 1.1.0.2 -- add verifyFiniteJoin--- 1.1.0.3 -- expose BulkRetry prototype--- 1.1.1.0 -- expose logging routines--- 1.1.1.5 -- various bugfixes--- 1.1.2 -- bugfixes and small additions, work-around for -fbeta problems--- 1.1.3 -- add fromPureLVar--- 1.1.4 -- add SatMap --synopsis: Parallel scheduler, LVar data structures, and infrastructure to build more.--description: - .- A programming model based on monotonically-growing concurrent data structures.- .- As a starting point, look at the main module, "Control.LVish", as well as one of these papers:- .- * FHPC 2013: /LVars: lattice-based data structures for deterministic parallelism/ (<http://dl.acm.org/citation.cfm?id=2502326>).- .- * POPL 2014: /Freeze after writing: quasi-deterministic parallel programming with LVars/ (<http://www.cs.indiana.edu/~lkuper/papers/2013-lvish-draft.pdf>).- . - * PLDI 2014: /Taming the Parallel Effect Zoo: Extensible Deterministic Parallelism with LVish/ (<http://www.cs.indiana.edu/~rrnewton/papers/effectzoo-draft.pdf>).- . - If the haddocks are not building, here is a mirror:- <http://www.cs.indiana.edu/~rrnewton/haddock/lvish/>- .- Change Log: - .- * 1.0.0.6 - tighten up dependencies; remove unused flags; very minor doc fixes.- . - * 1.1.2 - many bugfixes, plus a new logging infrastructure, and verification of finite lattices--license: BSD3-license-file: LICENSE-author: Aaron Turon, Lindsey Kuper, Ryan Newton-maintainer: lindsey@composition.al-category: Concurrency-build-type: Simple---- Constraint on the version of Cabal needed to build this package.-cabal-version: >=1.8--flag debug- description: Activate additional debug assertions, and printed output.--- if DEBUGLVL env var is set to 1 or higher.- default: False- manual: True--flag chaselev- description: Use the Chase-Lev work-stealing deque- default: False- manual: True- -flag getonce- description: Ensure that continuations of get run at most once - (by using extra synchronization)- default: False- manual: True---- We won't really support this until LVish 2.0:-flag generic- description: Use (forthcoming) generic interfaces for Par monads.- default: False- manual: True ---- flag beta--- description: These features are in beta and not fully supported yet.--- default: True--Source-repository head- type: git- location: https://github.com/iu-parfunc/lvars- subdir: haskell/lvish--- tag: release-lvish-1.0.0.6-----------------------------------------------------------------------------------library-- -- Modules exported by the library.- exposed-modules:- ------------- End user modules ------------- Control.LVish- Control.LVish.DeepFrz- Data.LVar.Generic- Data.LVar.IVar- Data.LVar.IStructure - Data.LVar.PureSet- Data.LVar.PureMap- Data.LVar.SatMap- Data.LVar.SLSet- Data.LVar.SLMap- -------------------------------------------- -- Unsafe, only for debugging:- Control.LVish.Unsafe - -------------------------------------------- -- End users should NOT USE THESE.- -- These are only for developing new LVars:- Data.LVar.Internal.Pure- Data.LVar.Generic.Internal- Data.LVar.PureMap.Unsafe- Data.LVar.SLMap.Unsafe- Control.LVish.Internal- Control.LVish.DeepFrz.Internal- -- This is also not recommended for general use yet.- Data.Concurrent.SkipListMap-- Data.LVar.CycGraph-- -- TEMP: using a flag to control exports doesn't really work with Hackage currently:- -- if flag(beta)- -- exposed-modules: - -- -- Not quite ready for prime-time yet:- -- Data.LVar.NatArray- -- Data.LVar.NatArray.Unsafe- -- Data.LVar.MaxPosInt- -- Data.LVar.Counter- -- Data.LVar.AddRemoveSet- -- Data.LVar.PNCounter- -- -------------------------------------------- -- -- New / Experimental:- -- Data.LVar.Memo -- -- Modules included in this library but not exported.- other-modules:- Data.UtilInternal- Data.LVar.Pair - Data.Concurrent.Bag- Data.Concurrent.Counter- Data.Concurrent.SNZI- Data.Concurrent.LinkedMap- Data.Concurrent.AlignedIORef- Control.Reagent- Control.LVish.SchedIdempotent- Control.LVish.SchedIdempotentInternal - Control.LVish.MonadToss- Control.LVish.Types- Control.LVish.Basics- Control.LVish.Logical- Control.LVish.Logging-- -- Other library packages from which modules are imported.- build-depends: base >= 4.6 && <= 4.8, - deepseq >= 1.3, - lattices >= 1.2, - vector >=0.10,- atomic-primops >= 0.6, - random, - transformers,- ghc-prim,- async,- -- Used in NatArray:- bits-atomic, missing-foreign- if flag(generic)- cpp-options: -DGENERIC_PAR--- build-depends: containers >= 0.5.4.0- build-depends: containers >= 0.5- build-depends: par-classes >= 1.0 && < 2.0,- par-collections >= 1.0 && < 2.0--- par-transformers <= 2.0- else - build-depends: containers >= 0.5-- ghc-options: -O2 -rtsopts-- if flag(debug)- -- TEMP: depending on these for visualzing MemoCyc DAGs:--- build-depends: fgl, graphviz, text- cpp-options: -DDEBUG_LVAR--- cpp-options: -DDEBUG_MEMO- if flag(chaselev)- build-depends: chaselev-deque- cpp-options: -DCHASE_LEV- if flag(getonce)- cpp-options: -DGET_ONCE-------------------------------------------------------------------------------------test-suite test-lvish- type: exitcode-stdio-1.0- main-is: Main.hs- hs-source-dirs: tests/ ./- other-modules: TestHelpers, - LVishAndIVar,- ArrayTests,- MemoTests,- LogicalTests,- PureMapTests,- SLMapTests,- SetTests,- MaxPosIntTests,- AddRemoveSetTests- - ghc-options: -O2 -threaded -rtsopts -with-rtsopts=-N4-- -- DUPLICATED: from above- build-depends: base >= 4.6 && <= 4.8, - deepseq >= 1.3, - containers >= 0.5, - lattices >= 1.2, - vector >=0.10,- atomic-primops >= 0.6, - random, - transformers,- ghc-prim,- async,- -- Used in NatArray:- bits-atomic, missing-foreign- if flag(generic)- cpp-options: -DGENERIC_PAR- build-depends: par-classes >= 1.0 && < 2.0,- par-collections >= 1.0 && < 2.0- -- END DUPLICATED- if flag(generic)- other-modules: GenericTests-- build-depends: test-framework, test-framework-hunit, test-framework-th, - test-framework-quickcheck2, QuickCheck,- HUnit, time, text--- And the self-dependency: TODO -- how to get this to work? [2013.10.10]--- For now it gets compiled TWICE:- build-depends: lvish- if flag(debug)- -- TEMP: depending on these for visualzing MemoCyc DAGs:--- build-depends: fgl, graphviz, text- cpp-options: -DDEBUG_LVAR--- cpp-options: -DDEBUG_MEMO- if flag(chaselev)- build-depends: chaselev-deque- cpp-options: -DCHASE_LEV- if flag(getonce)- cpp-options: -DGET_ONCE-- -- Atomic-primops fails when used by template-haskell/ghci on linux:- if impl(ghc < 7.7) && os(linux) {- buildable: False- }-+-- Initial lvish.cabal generated by cabal init. For further +-- documentation, see http://haskell.org/cabal/users-guide/ + +-- The name of the package. +name: lvish + +-- The package version. See the Haskell package versioning policy (PVP) +-- for standards guiding when and how versions should be incremented. +-- http://www.haskell.org/haskellwiki/Package_versioning_policy +-- PVP summary: +-+------- breaking API changes +-- | | +----- non-breaking API additions +-- | | | +--- code changes with no API change +version: 1.1.4 +x-revision: 1 + +-- Changelog: +-- 0.2 -- switch SLMap over to O(1) freeze +-- 1.0 -- initial public release +-- 1.0.0.2 -- minor docs polishing +-- 1.0.0.4 -- Bugfix for runParThenFreeze 's' param (issue #26). +-- 1.0.0.6 -- tighten up dependencies; remove unused flags; very minor doc fixes. +-- 1.1.0.2 -- add verifyFiniteJoin +-- 1.1.0.3 -- expose BulkRetry prototype +-- 1.1.1.0 -- expose logging routines +-- 1.1.1.5 -- various bugfixes +-- 1.1.2 -- bugfixes and small additions, work-around for -fbeta problems +-- 1.1.3 -- add fromPureLVar +-- 1.1.4 -- add SatMap + +synopsis: Parallel scheduler, LVar data structures, and infrastructure to build more. + +description: + . + A programming model based on monotonically-growing concurrent data structures. + . + As a starting point, look at the main module, "Control.LVish", as well as one of these papers: + . + * FHPC 2013: /LVars: lattice-based data structures for deterministic parallelism/ (<http://dl.acm.org/citation.cfm?id=2502326>). + . + * POPL 2014: /Freeze after writing: quasi-deterministic parallel programming with LVars/ (<http://www.cs.indiana.edu/~lkuper/papers/2013-lvish-draft.pdf>). + . + * PLDI 2014: /Taming the Parallel Effect Zoo: Extensible Deterministic Parallelism with LVish/ (<http://www.cs.indiana.edu/~rrnewton/papers/effectzoo-draft.pdf>). + . + If the haddocks are not building, here is a mirror: + <http://www.cs.indiana.edu/~rrnewton/haddock/lvish/> + . + Change Log: + . + * 1.0.0.6 - tighten up dependencies; remove unused flags; very minor doc fixes. + . + * 1.1.2 - many bugfixes, plus a new logging infrastructure, and verification of finite lattices + . + * 1.1.4 - GHC 7.8.3 compatibility. + +license: BSD3 +license-file: LICENSE +author: Aaron Turon, Lindsey Kuper, Ryan Newton +maintainer: lindsey@composition.al +category: Concurrency +build-type: Simple + +-- Constraint on the version of Cabal needed to build this package. +cabal-version: >=1.8 + +flag debug + description: Activate additional debug assertions, and printed output. +-- if DEBUGLVL env var is set to 1 or higher. + default: False + manual: True + +flag chaselev + description: Use the Chase-Lev work-stealing deque + default: False + manual: True + +flag getonce + description: Ensure that continuations of get run at most once + (by using extra synchronization) + default: False + manual: True + +-- We won't really support this until LVish 2.0: +flag generic + description: Use (forthcoming) generic interfaces for Par monads. + default: False + manual: True + +-- flag beta +-- description: These features are in beta and not fully supported yet. +-- default: True + +Source-repository head + type: git + location: https://github.com/iu-parfunc/lvars + subdir: haskell/lvish +-- tag: release-lvish-1.0.0.6 + +-------------------------------------------------------------------------------- +library + + -- Modules exported by the library. + exposed-modules: + ------------- End user modules ------------ + Control.LVish + Control.LVish.DeepFrz + Data.LVar.Generic + Data.LVar.IVar + Data.LVar.IStructure + Data.LVar.PureSet + Data.LVar.PureMap + Data.LVar.SatMap + Data.LVar.SLSet + Data.LVar.SLMap + ------------------------------------------- + -- Unsafe, only for debugging: + Control.LVish.Unsafe + ------------------------------------------- + -- End users should NOT USE THESE. + -- These are only for developing new LVars: + Data.LVar.Internal.Pure + Data.LVar.Generic.Internal + Data.LVar.PureMap.Unsafe + Data.LVar.SLMap.Unsafe + Control.LVish.Internal + Control.LVish.DeepFrz.Internal + -- This is also not recommended for general use yet. + Data.Concurrent.SkipListMap + + Data.LVar.CycGraph + + -- TEMP: using a flag to control exports doesn't really work with Hackage currently: + -- if flag(beta) + -- exposed-modules: + -- -- Not quite ready for prime-time yet: + -- Data.LVar.NatArray + -- Data.LVar.NatArray.Unsafe + -- Data.LVar.MaxPosInt + -- Data.LVar.Counter + -- Data.LVar.AddRemoveSet + -- Data.LVar.PNCounter + -- ------------------------------------------- + -- -- New / Experimental: + -- Data.LVar.Memo + + -- Modules included in this library but not exported. + other-modules: + Data.UtilInternal + Data.LVar.Pair + Data.Concurrent.Bag + Data.Concurrent.Counter + Data.Concurrent.SNZI + Data.Concurrent.LinkedMap + Data.Concurrent.AlignedIORef + Control.Reagent + Control.LVish.SchedIdempotent + Control.LVish.SchedIdempotentInternal + Control.LVish.MonadToss + Control.LVish.Types + Control.LVish.Basics + Control.LVish.Logical + Control.LVish.Logging + + -- Other library packages from which modules are imported. + build-depends: base >= 4.6 && <= 4.8, + deepseq >= 1.3, + lattices >= 1.2, + vector >=0.10, + atomic-primops >= 0.6, + random, + transformers, + ghc-prim, + async, + -- Used in NatArray: + bits-atomic, missing-foreign + if flag(generic) + cpp-options: -DGENERIC_PAR +-- build-depends: containers >= 0.5.4.0 + build-depends: containers >= 0.5 + build-depends: par-classes >= 1.0 && < 2.0, + par-collections >= 1.0 && < 2.0 +-- par-transformers <= 2.0 + else + build-depends: containers >= 0.5 + + ghc-options: -O2 -rtsopts + + if flag(debug) + -- TEMP: depending on these for visualzing MemoCyc DAGs: +-- build-depends: fgl, graphviz, text + cpp-options: -DDEBUG_LVAR +-- cpp-options: -DDEBUG_MEMO + if flag(chaselev) + build-depends: chaselev-deque + cpp-options: -DCHASE_LEV + if flag(getonce) + cpp-options: -DGET_ONCE + + +-------------------------------------------------------------------------------- + +test-suite test-lvish + type: exitcode-stdio-1.0 + main-is: Main.hs + hs-source-dirs: tests/ ./ + other-modules: TestHelpers, + LVishAndIVar, + ArrayTests, + MemoTests, + LogicalTests, + PureMapTests, + SLMapTests, + SetTests, + MaxPosIntTests, + AddRemoveSetTests + + ghc-options: -O2 -threaded -rtsopts -with-rtsopts=-N4 + + -- DUPLICATED: from above + build-depends: base >= 4.6 && <= 4.8, + deepseq >= 1.3, + containers >= 0.5, + lattices >= 1.2, + vector >=0.10, + atomic-primops >= 0.6, + random, + transformers, + ghc-prim, + async, + -- Used in NatArray: + bits-atomic, missing-foreign + if flag(generic) + cpp-options: -DGENERIC_PAR + build-depends: par-classes >= 1.0 && < 2.0, + par-collections >= 1.0 && < 2.0 + -- END DUPLICATED + if flag(generic) + other-modules: GenericTests + + build-depends: test-framework, test-framework-hunit, test-framework-th, + test-framework-quickcheck2, QuickCheck, + HUnit, time, text +-- And the self-dependency: TODO -- how to get this to work? [2013.10.10] +-- For now it gets compiled TWICE: + build-depends: lvish + if flag(debug) + -- TEMP: depending on these for visualzing MemoCyc DAGs: +-- build-depends: fgl, graphviz, text + cpp-options: -DDEBUG_LVAR +-- cpp-options: -DDEBUG_MEMO + if flag(chaselev) + build-depends: chaselev-deque + cpp-options: -DCHASE_LEV + if flag(getonce) + cpp-options: -DGET_ONCE + + -- Atomic-primops fails when used by template-haskell/ghci on linux: + if impl(ghc < 7.7) && os(linux) { + buildable: False + } +
revision 2
-- | | +----- non-breaking API additions -- | | | +--- code changes with no API change version: 1.1.4 -x-revision: 1 +x-revision: 2 -- Changelog: -- 0.2 -- switch SLMap over to O(1) freeze Control.LVish.Logging -- Other library packages from which modules are imported. - build-depends: base >= 4.6 && <= 4.8, + build-depends: base >= 4.6 && < 4.9, deepseq >= 1.3, lattices >= 1.2, vector >=0.10,