cabal-lenses 0.4.3 → 0.4.4
raw patch · 4 files changed
+23/−6 lines, 4 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
+ CabalLenses.PackageDescription: targetBuildDependsL :: Lens' BuildInfo [Dependency]
+ CabalLenses.Traversals.BuildInfo: allBuildInfo :: Traversal' GenericPackageDescription BuildInfo
- CabalLenses.PackageDescription: condTreeComponentsL :: Lens (CondTree v_a7EX c_a7EY a_a7EZ) (CondTree v_ac59 c_a7EY a_a7EZ) [(Condition v_a7EX, CondTree v_a7EX c_a7EY a_a7EZ, Maybe (CondTree v_a7EX c_a7EY a_a7EZ))] [(Condition v_ac59, CondTree v_ac59 c_a7EY a_a7EZ, Maybe (CondTree v_ac59 c_a7EY a_a7EZ))]
+ CabalLenses.PackageDescription: condTreeComponentsL :: Lens (CondTree v_a7EF c_a7EG a_a7EH) (CondTree v_actj c_a7EG a_a7EH) [(Condition v_a7EF, CondTree v_a7EF c_a7EG a_a7EH, Maybe (CondTree v_a7EF c_a7EG a_a7EH))] [(Condition v_actj, CondTree v_actj c_a7EG a_a7EH, Maybe (CondTree v_actj c_a7EG a_a7EH))]
- CabalLenses.PackageDescription: condTreeConstraintsL :: Lens' (CondTree v_a7EX c_a7EY a_a7EZ) c_a7EY
+ CabalLenses.PackageDescription: condTreeConstraintsL :: Lens' (CondTree v_a7EF c_a7EG a_a7EH) c_a7EG
- CabalLenses.PackageDescription: condTreeDataL :: Lens' (CondTree v_a7EX c_a7EY a_a7EZ) a_a7EZ
+ CabalLenses.PackageDescription: condTreeDataL :: Lens' (CondTree v_a7EF c_a7EG a_a7EH) a_a7EH
Files
- CHANGELOG +7/−2
- cabal-lenses.cabal +1/−1
- lib/CabalLenses/PackageDescription.hs +1/−0
- lib/CabalLenses/Traversals/BuildInfo.hs +14/−3
CHANGELOG view
@@ -1,3 +1,8 @@-0.3.1, 0.4.1, 0.4.2--------------------+0.4.4+-----+* Add traversal 'allBuildInfo'+* Add lens for 'targetBuildDepends' field++0.3.1, 0.4.1, 0.4.2, 0.4.3+-------------------------- * Raise upper bounds of dependencies
cabal-lenses.cabal view
@@ -1,5 +1,5 @@ name: cabal-lenses-version: 0.4.3+version: 0.4.4 cabal-version: >=1.9.2 build-type: Simple license: BSD3
lib/CabalLenses/PackageDescription.hs view
@@ -94,6 +94,7 @@ , ("ldOptions" , "ldOptionsL") , ("includeDirs" , "includeDirsL") , ("includes" , "includesL")+ , ("targetBuildDepends", "targetBuildDependsL") ] ''BuildInfo
lib/CabalLenses/Traversals/BuildInfo.hs view
@@ -1,7 +1,8 @@ {-# LANGUAGE Rank2Types #-} module CabalLenses.Traversals.BuildInfo- ( buildInfo+ ( allBuildInfo+ , buildInfo , buildInfoIf ) where @@ -10,8 +11,18 @@ import CabalLenses.CondVars (CondVars) import CabalLenses.PackageDescription import Control.Lens-import Distribution.PackageDescription (GenericPackageDescription, BuildInfo)+import Control.Applicative ((<$>), (<*>), pure)+import Distribution.PackageDescription (GenericPackageDescription(GenericPackageDescription), BuildInfo) +-- | A traversal for all 'BuildInfo' of all 'Section'+allBuildInfo :: Traversal' GenericPackageDescription BuildInfo+allBuildInfo f (GenericPackageDescription descrp flags lib exes tests benchs) =+ GenericPackageDescription <$> pure descrp+ <*> pure flags+ <*> (_Just . traverseData . libBuildInfoL) f lib+ <*> (traverse . _2 . traverseData . buildInfoL) f exes+ <*> (traverse . _2 . traverseData . testBuildInfoL) f tests+ <*> (traverse . _2 . traverseData . benchmarkBuildInfoL) f benchs -- | A traversal for all 'BuildInfo' of 'Section'. buildInfo :: Section -> Traversal' GenericPackageDescription BuildInfo@@ -29,4 +40,4 @@ buildInfoIf condVars (Benchmark name) = condBenchmarksL . traverse . having name . _2 . traverseDataIf condVars . benchmarkBuildInfoL -having name = filtered ((== name) . fst) +having name = filtered ((== name) . fst)