Cabal revisions of vivid-0.4.2.3
Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.
revision 1
--- TODO: get the readme change from the github merge--name: vivid-version: 0.4.2.3-synopsis: Sound synthesis with SuperCollider-description: - Music and sound synthesis with SuperCollider.- .- Example usage (after installing and booting SuperCollider):- .- @- {-\# LANGUAGE DataKinds, ExtendedDefaultRules \#-}- @- .- > import Vivid- >- > playSong :: VividAction m => m ()- > playSong = do- > fork $ do- > s0 <- synth theSound (36 ::I "note")- > wait 1- > free s0- > s1 <- synth theSound (60 ::I "note")- > forM_ [62,66,64] $ \note -> do- > wait (1/4)- > set s1 (note ::I "note")- > wait (1/4)- > free s1- >- > theSound :: SynthDef '["note"]- > theSound = sd (0 ::I "note") $ do- > wobble <- sinOsc (freq_ 5) ? KR ~* 10 ~+ 10- > s <- 0.1 ~* sinOsc (freq_ $ midiCPS (V::V "note") ~+ wobble)- > out 0 [s,s]- >- > main :: IO ()- > main = do- > putStrLn "Simplest:"- > playSong- >- > putStrLn "With precise timing:"- > doScheduledIn 0.1 playSong- > wait 1- >- > putStrLn "Written to a file, non-realtime synthesis:"- > putStrLn "(Need to quit the running server for NRT)"- > quitSCServer- > writeNRT "song.wav" playSong-author: Tom Murphy-maintainer: Tom Murphy-category: Audio, Music, Sound-build-type: Simple-cabal-version: >=1.8-stability: experimental-license: GPL--library- exposed-modules:- Vivid- , Vivid.Actions- , Vivid.Actions.Class- , Vivid.Actions.IO- , Vivid.Actions.NRT- , Vivid.Actions.Scheduled- , Vivid.ByteBeat- , Vivid.Envelopes- , Vivid.NoPlugins- , Vivid.OSC.Bundles- , Vivid.Randomness- , Vivid.SCServer- , Vivid.SCServer.Connection- , Vivid.SCServer.State- , Vivid.SCServer.Types- , Vivid.SynthDef- , Vivid.SynthDef.FromUA- , Vivid.SynthDef.ToSig- , Vivid.SynthDef.Types- , Vivid.SynthDef.TypesafeArgs- , Vivid.UGens- , Vivid.UGens.Algebraic- , Vivid.UGens.Analysis- , Vivid.UGens.Args- , Vivid.UGens.Buffer- , Vivid.UGens.Conversion- , Vivid.UGens.Convolution- , Vivid.UGens.Delays- , Vivid.UGens.Demand- , Vivid.UGens.Dynamics- , Vivid.UGens.Envelopes- , Vivid.UGens.Examples- , Vivid.UGens.FFT- , Vivid.UGens.Filters- , Vivid.UGens.Filters.BEQSuite- , Vivid.UGens.Filters.Linear- , Vivid.UGens.Filters.Nonlinear- , Vivid.UGens.Filters.Pitch- , Vivid.UGens.Generators.Chaotic- , Vivid.UGens.Generators.Deterministic- , Vivid.UGens.Generators.Granular- , Vivid.UGens.Generators.SingleValue- , Vivid.UGens.Generators.Stochastic- , Vivid.UGens.Info- , Vivid.UGens.InOut- , Vivid.UGens.Maths- , Vivid.UGens.Multichannel- , Vivid.UGens.Random- , Vivid.UGens.Reverbs- , Vivid.UGens.SynthControl- , Vivid.UGens.Triggers- , Vivid.UGens.Undocumented- , Vivid.UGens.UserInteraction- -- other-modules: - build-depends:- -- These package bounds are to comply with the PVP- -- (https://wiki.haskell.org/Package_versioning_policy).- -- Most/all of these upper bounds will be able to be bumped- -- forevermore: if you're having trouble building this because- -- of an upper bound, you can probably just bump it up.- -- I'll try to bump version bounds whenever new compatible- -- versions come out.-- -- Auto bounds from 'cabal init':- base > 3 && < 5-- -- TEMP:- , binary-- -- Lower bound:- -- Just a guess -- 0.5.0.2 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 0.2 is the oldest version on Hackage- -- Upper bound:- -- 0.9 doesn't exist yet- -- Try: "> 0.5.0.2 && < 0.9"-- -- Lower bound:- -- Just a guess -- 0.9.1.8 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 0.9 is the oldest version on Hackage- -- Upper bound:- -- 0.11 doesn't exist yet- -- Try: "> 0.9.1.8 && < 0.11"- , bytestring-- -- Lower bound:- -- Just a guess -- 0.4.0.0 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 0.1.0.0 is the oldest version on Hackage- -- Upper bound:- -- 0.6 doesn't exist yet- -- Try: "> 0.4.0.0 && < 0.6"-- , containers-- , directory-- -- Lower bound:- -- 1.0 is the oldest version with 'takeExtension'- -- (It's from 2007-05)- -- Upper bound:- -- 1.5 doesn't exist yet- -- Try: "&& < 1.5"- , filepath >= 1.0-- -- Lower bound:- -- 1.1.1.0 is the first version with 'hashWithSalt'- -- (It's from 2011-02)- -- (Also betw 1.2 and 1.2.0.5 are marked as broken!)- -- Upper bound:- -- 1.3 doesn't exist yet- -- Try: "&& < 1.3"- , hashable >= 1.2.0.6-- -- Lower bound:- -- 0.1 is the oldest version on Hackage- -- Upper bound:- -- 0.5 doesn't exist yet- -- Try: ">= 0.1 && < 0.5"- , MonadRandom-- -- Lower bound:- -- Just a guess -- 0.2.0.0 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 1.0 is the oldest version on Hackage- -- Upper bound:- -- 2.3 doesn't exist yet- -- Try: ">= 2.0.0.0 && < 2.3"- , mtl-- -- Lower bound:- -- Just a guess -- 2.3 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 2.0 is the oldest version on Hackage- -- Upper bound:- -- 2.7 doesn't exist yet- -- Try: ">= 2.3 && < 2.7"- , network--- -- Lower bound:- -- Just a guess -- 1.0.1.4 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 1.0.0.0 is the oldest version on Hackage- -- Upper bound:- -- 1.5 doesn't exist yet- -- Try: ">= 1.0.1.4 && < 1.5"- , process-- -- Lower bound:- -- Just a guess -- 1.0.0.3 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 1.0.0.0 is the oldest version on Hackage- -- Upper bound:- -- 1.2 doesn't exist yet- -- /= : 1.0.1.3 is deprecated- -- Try: (>= 1.0.0.3 && <= 1.0.1.1) || (>= 1.1 && < 1.2)- , random >= 1.1-- -- Lower bound:- -- 0.0.3 is the first version with 'shuffleM'- -- Upper bound:- -- 0.1 doesn't exist yet (will it ever?)- -- Try: "&& < 0.1"- , random-shuffle >= 0.0.3-- -- Lower bound:- -- 0.2.0.0 is the first version with 'chunksOf'- -- Upper bound:- -- 0.3 doesn't exist yet- -- Try: "&& < 0.3"- , split >= 0.2.0.0-- -- Lower bound:- -- Just a guess -- 2.2.0.1 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- 2.1 is the oldest version on Hackage- -- Upper bound:- -- 2.5 doesn't exist yet- -- Try: ">= 2.2.0.1 && < 2.5"- , stm-- -- Lower bound:- -- Just a guess -- 1.2 is >5 years old- -- I don't have a reason to think it needs a lower bound- -- (Although check out 'old-time' and those changes -- but- -- that's before 1.2)- -- 1.0 is the oldest version on Hackage- -- Upper bound:- -- 1.7 doesn't exist yet- -- Try: "&& < 1.7"- , time >= 1.2-- -- Lower bound:- -- Only need it for 'MonadIO' which came in 0.2.0.0- -- (0.2.0.0 is from 2010-03)- -- Upper bound:- -- 0.6 doesn't exist yet- -- Note there are lots of deprecated versions but I'm taking- -- a guess for now that 'liftIO' is fine in all of them- -- Try: "&& < 0.6" (and maybe disallow deprecated)- , transformers >= 0.2.0.0-- -- We only need 'fromString' from here:- , utf8-string-- -- Pinned to vivid's version:- , vivid-osc >= 0.4 && < 0.6- , vivid-supercollider == 0.4.*-- -- TODO: constraint solver iterations only for the GHC that needs it- ghc-options:- -O2- -fconstraint-solver-iterations=0---- TODO:--- testsuite --- build-depends:--- vivid--- , microspec--- -- , quickcheck+-- TODO: get the readme change from the github merge + +name: vivid +version: 0.4.2.3 +x-revision: 1 +synopsis: Sound synthesis with SuperCollider +description: + Music and sound synthesis with SuperCollider. + . + Example usage (after installing and booting SuperCollider): + . + @ + {-\# LANGUAGE DataKinds, ExtendedDefaultRules \#-} + @ + . + > import Vivid + > + > playSong :: VividAction m => m () + > playSong = do + > fork $ do + > s0 <- synth theSound (36 ::I "note") + > wait 1 + > free s0 + > s1 <- synth theSound (60 ::I "note") + > forM_ [62,66,64] $ \note -> do + > wait (1/4) + > set s1 (note ::I "note") + > wait (1/4) + > free s1 + > + > theSound :: SynthDef '["note"] + > theSound = sd (0 ::I "note") $ do + > wobble <- sinOsc (freq_ 5) ? KR ~* 10 ~+ 10 + > s <- 0.1 ~* sinOsc (freq_ $ midiCPS (V::V "note") ~+ wobble) + > out 0 [s,s] + > + > main :: IO () + > main = do + > putStrLn "Simplest:" + > playSong + > + > putStrLn "With precise timing:" + > doScheduledIn 0.1 playSong + > wait 1 + > + > putStrLn "Written to a file, non-realtime synthesis:" + > putStrLn "(Need to quit the running server for NRT)" + > quitSCServer + > writeNRT "song.wav" playSong +author: Tom Murphy +maintainer: Tom Murphy +category: Audio, Music, Sound +build-type: Simple +cabal-version: >=1.8 +stability: experimental +license: GPL + +library + exposed-modules: + Vivid + , Vivid.Actions + , Vivid.Actions.Class + , Vivid.Actions.IO + , Vivid.Actions.NRT + , Vivid.Actions.Scheduled + , Vivid.ByteBeat + , Vivid.Envelopes + , Vivid.NoPlugins + , Vivid.OSC.Bundles + , Vivid.Randomness + , Vivid.SCServer + , Vivid.SCServer.Connection + , Vivid.SCServer.State + , Vivid.SCServer.Types + , Vivid.SynthDef + , Vivid.SynthDef.FromUA + , Vivid.SynthDef.ToSig + , Vivid.SynthDef.Types + , Vivid.SynthDef.TypesafeArgs + , Vivid.UGens + , Vivid.UGens.Algebraic + , Vivid.UGens.Analysis + , Vivid.UGens.Args + , Vivid.UGens.Buffer + , Vivid.UGens.Conversion + , Vivid.UGens.Convolution + , Vivid.UGens.Delays + , Vivid.UGens.Demand + , Vivid.UGens.Dynamics + , Vivid.UGens.Envelopes + , Vivid.UGens.Examples + , Vivid.UGens.FFT + , Vivid.UGens.Filters + , Vivid.UGens.Filters.BEQSuite + , Vivid.UGens.Filters.Linear + , Vivid.UGens.Filters.Nonlinear + , Vivid.UGens.Filters.Pitch + , Vivid.UGens.Generators.Chaotic + , Vivid.UGens.Generators.Deterministic + , Vivid.UGens.Generators.Granular + , Vivid.UGens.Generators.SingleValue + , Vivid.UGens.Generators.Stochastic + , Vivid.UGens.Info + , Vivid.UGens.InOut + , Vivid.UGens.Maths + , Vivid.UGens.Multichannel + , Vivid.UGens.Random + , Vivid.UGens.Reverbs + , Vivid.UGens.SynthControl + , Vivid.UGens.Triggers + , Vivid.UGens.Undocumented + , Vivid.UGens.UserInteraction + -- other-modules: + build-depends: + -- These package bounds are to comply with the PVP + -- (https://wiki.haskell.org/Package_versioning_policy). + -- Most/all of these upper bounds will be able to be bumped + -- forevermore: if you're having trouble building this because + -- of an upper bound, you can probably just bump it up. + -- I'll try to bump version bounds whenever new compatible + -- versions come out. + + -- Auto bounds from 'cabal init': + base > 3 && < 5 + + -- TEMP: + , binary + + -- Lower bound: + -- Just a guess -- 0.5.0.2 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 0.2 is the oldest version on Hackage + -- Upper bound: + -- 0.9 doesn't exist yet + -- Try: "> 0.5.0.2 && < 0.9" + + -- Lower bound: + -- Just a guess -- 0.9.1.8 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 0.9 is the oldest version on Hackage + -- Upper bound: + -- 0.11 doesn't exist yet + -- Try: "> 0.9.1.8 && < 0.11" + , bytestring + + -- Lower bound: + -- Just a guess -- 0.4.0.0 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 0.1.0.0 is the oldest version on Hackage + -- Upper bound: + -- 0.6 doesn't exist yet + -- Try: "> 0.4.0.0 && < 0.6" + + , containers + + , directory + + -- Lower bound: + -- 1.0 is the oldest version with 'takeExtension' + -- (It's from 2007-05) + -- Upper bound: + -- 1.5 doesn't exist yet + -- Try: "&& < 1.5" + , filepath >= 1.0 + + -- Lower bound: + -- 1.1.1.0 is the first version with 'hashWithSalt' + -- (It's from 2011-02) + -- (Also betw 1.2 and 1.2.0.5 are marked as broken!) + -- Upper bound: + -- 1.3 doesn't exist yet + -- Try: "&& < 1.3" + , hashable >= 1.2.0.6 + + -- Lower bound: + -- 0.1 is the oldest version on Hackage + -- Upper bound: + -- 0.5 doesn't exist yet + -- Try: ">= 0.1 && < 0.5" + , MonadRandom + + -- Lower bound: + -- Just a guess -- 0.2.0.0 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 1.0 is the oldest version on Hackage + -- Upper bound: + -- 2.3 doesn't exist yet + -- Try: ">= 2.0.0.0 && < 2.3" + , mtl + + -- Lower bound: + -- Just a guess -- 2.3 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 2.0 is the oldest version on Hackage + -- Upper bound: + -- 2.7 doesn't exist yet + -- Try: ">= 2.3 && < 2.7" + , network + + + -- Lower bound: + -- Just a guess -- 1.0.1.4 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 1.0.0.0 is the oldest version on Hackage + -- Upper bound: + -- 1.5 doesn't exist yet + -- Try: ">= 1.0.1.4 && < 1.5" + , process + + -- Lower bound: + -- Just a guess -- 1.0.0.3 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 1.0.0.0 is the oldest version on Hackage + -- Upper bound: + -- 1.2 doesn't exist yet + -- /= : 1.0.1.3 is deprecated + -- Try: (>= 1.0.0.3 && <= 1.0.1.1) || (>= 1.1 && < 1.2) + , random >= 1.1 && < 1.2 + + -- Lower bound: + -- 0.0.3 is the first version with 'shuffleM' + -- Upper bound: + -- 0.1 doesn't exist yet (will it ever?) + -- Try: "&& < 0.1" + , random-shuffle >= 0.0.3 + + -- Lower bound: + -- 0.2.0.0 is the first version with 'chunksOf' + -- Upper bound: + -- 0.3 doesn't exist yet + -- Try: "&& < 0.3" + , split >= 0.2.0.0 + + -- Lower bound: + -- Just a guess -- 2.2.0.1 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- 2.1 is the oldest version on Hackage + -- Upper bound: + -- 2.5 doesn't exist yet + -- Try: ">= 2.2.0.1 && < 2.5" + , stm + + -- Lower bound: + -- Just a guess -- 1.2 is >5 years old + -- I don't have a reason to think it needs a lower bound + -- (Although check out 'old-time' and those changes -- but + -- that's before 1.2) + -- 1.0 is the oldest version on Hackage + -- Upper bound: + -- 1.7 doesn't exist yet + -- Try: "&& < 1.7" + , time >= 1.2 + + -- Lower bound: + -- Only need it for 'MonadIO' which came in 0.2.0.0 + -- (0.2.0.0 is from 2010-03) + -- Upper bound: + -- 0.6 doesn't exist yet + -- Note there are lots of deprecated versions but I'm taking + -- a guess for now that 'liftIO' is fine in all of them + -- Try: "&& < 0.6" (and maybe disallow deprecated) + , transformers >= 0.2.0.0 + + -- We only need 'fromString' from here: + , utf8-string + + -- Pinned to vivid's version: + , vivid-osc >= 0.4 && < 0.6 + , vivid-supercollider == 0.4.* + + -- TODO: constraint solver iterations only for the GHC that needs it + ghc-options: + -O2 + -fconstraint-solver-iterations=0 + +-- TODO: +-- testsuite +-- build-depends: +-- vivid +-- , microspec +-- -- , quickcheck