leaky 0.2.0.1 → 0.2.1.0
raw patch · 2 files changed
+51/−31 lines, 2 filesdep ~seqaid
Dependency ranges changed: seqaid
Files
- changelog.txt +8/−0
- leaky.cabal +43/−31
changelog.txt view
@@ -1,4 +1,12 @@ +0.2.0.1 -> 0.2.1.0+ - realised I should be using Manual: True in all my .cabal flags,+ or else the constraint solver is free to toggle them!!++0.2.0.0 -> 0.2.0.1+ - added a note in the .cabal description field, about the+ rogue build failure report+ 0.1.7.0 -> 0.2.0.0 - deepseq-bounded had a major version bump - fixed cpphs missing dependency for seqaid (also affects this package)
leaky.cabal view
@@ -1,6 +1,6 @@ name: leaky-version: 0.2.0.1+version: 0.2.1.0 synopsis: Robust space leak, and its strictification license: BSD3 license-file: LICENSE@@ -12,7 +12,7 @@ category: Testing build-type: Simple stability: experimental-cabal-version: >=1.10+cabal-version: >=1.16 -- However, seqaid requires GHC>=7.8. --@@ -32,8 +32,8 @@ See also the project <http://www.fremissant.net/leaky homepage> for more information. . Please share your comments on this <http://www.reddit.com/r/haskell/comments/2pscxh/ann_deepseqbounded_seqaid_leaky/ reddit> discussion.- .- __Note:__ Ignore the anonymous rogue failed build report below (at least, it appeared on all versions I uploaded so far). If you examine the log it's clear that the problem is theirs, and nothing to do with this package or its dependencies. It's a shame this is so prominently displayed and impossible to remedy, it makes unbroken packages seem broken to visitors, and it exerts negative pressure on the use of cpphs (since one can make this rogue report go away by pretending cpphs never existed and depending on the ubiquity of a system-wide cpp).+-- .+-- NOTE: Ignore the anonymous rogue failed build report below (at least, it appeared on all versions I uploaded so far). If you examine the log it's clear that the problem is theirs, and nothing to do with this package or its dependencies. It's a shame this is so prominently displayed and impossible to remedy, it makes unbroken packages seem broken to visitors, and it exerts negative pressure on the use of cpphs (since one can make this rogue report go away by pretending cpphs never existed and depending on the ubiquity of a system-wide cpp). extra-source-files: @@ -75,67 +75,79 @@ Flag HELLO_HACKAGE_VISITOR Description: [Note to those reading on Hackage:] Please ignore these flags, which would be better presented in a collapsed state. The flags are mostly for development purposes.- Default: False+ Default: False+ Manual: True Flag TURN_ON_SEQAID_PLUGIN Description: Only when True, provide the options to enable the seqaid preprocessor and GHC plugin.- Default: True---Default: False+ Default: True+--Default: False+ Manual: True Flag OMNITYPIC Description: Blanket seqaid harness at subexpressions of all possible types. Shouldn't need a Cabal flag for this, but it's the same problem of casing over integer values for a macro (in a .cabal file). So this need not be orthogonal to FORCING_STRATEGY, but this way it is ... which is okay, actually. (Can then test interactions with other FS=0..6.)---Default: True- Default: False+--Default: True+ Default: False+ Manual: True Flag TEST_SEQAIDPP Description: Finally crumbed and availed myself of -F -pgmF, although only for things which are /fairly/ safe via regex (injecting imports, top-level splices, "deriving instance" statements, LANGUAGE pragmas, etc.). (Later: You can't really do without this anymore, although with FORCING_STRATEGY=4 it is possible.)- Default: True---Default: False+ Default: True+--Default: False+ Manual: True Flag STATS Description: Dump periodic stats lines, for FORCING_STRATEGY that need it.- Default: True---Default: False+ Default: True+--Default: False+ Manual: True Flag USING_SANDBOX Description: I use them, but it's not default because it makes for much longer initial build, as all the dependencies (except base libs) need first to be installed into the sandbox.---Default: True- Default: False+--Default: True+ Default: False+ Manual: True Flag USE_SECOND_MODULE Description: Temporary for testing... (Later: Sadly this is not so temporary. There is some kind of interference between SOP.TH and Seqaid.TH splices which is still unresolved. So, types needing NFDataP (etc.) instances will need to live in a module which is /not/ being harnessed.)- Default: True---Default: False+ Default: True+--Default: False+ Manual: True Flag PROFILE Description: Enable profiling---Default: True- Default: False+--Default: True+ Default: False+ Manual: True Flag USE_GROWING_LIST Description: The problem with using a growing list is, it itself is a leak (as it were), so it's hard to see you've plugged anything. However, the slowdown of "force" relative to "forcep" will be noticed! Alternative to GROWING is FIXED (is at length 10000 at the moment). Fixed list is infinite if INFINITE set below. (INFINITE has no effect when GROWING set.)- Default: True---Default: False+ Default: True+--Default: False+ Manual: True Flag USE_GROWING_LIST_REDUCTION Description: XXX For some reason, memory is being retained when REDUCTION is enabled. (Later: Is this still the case? I see it's been set to True throughout development...).- Default: True---Default: False+ Default: True+--Default: False+ Manual: True Flag USE_INFINITE_LIST Description: To show DeepSeq.force (FORCING_STRATEGY=1) at its worst.---Default: True- Default: False+--Default: True+ Default: False+ Manual: True Flag USE_STRICT_BLOB Description: Put some weighty strict subtrees in the test data structure, so can showcase forcep's specificity relative to forcen.- Default: True---Default: False+ Default: True+--Default: False+ Manual: True -- Flag FORCING_STRATEGY -- Description: --- --Default: 6--- Default: (6::Int)+-- --Default: 6+-- Default: (6::Int) ------- -- Sadly, not. -- See bottom of this file for the meanings of the values.@@ -173,8 +185,8 @@ -- , template-haskell == 2.9.* -- XXX this is no good !! (co-evolving packages)- -- I guess the best is to leave it unconstrained...- , seqaid == 0.2.0.0+ -- I guess the best is to leave it unconstrained?...+ , seqaid == 0.2.1.0 -- , seqaid == 0.2.* -- Hopefully this will simply install the latest one, -- which ought to be fine: