packages feed

cabal-lenses 0.2 → 0.3

raw patch · 3 files changed

+53/−7 lines, 3 filesdep ~lensPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: lens

API changes (from Hackage documentation)

+ CabalLenses.Traversals.Dependency: allDependency :: Traversal' GenericPackageDescription Dependency
+ CabalLenses.Traversals.Dependency: allDependencyIf :: CondVars -> Traversal' GenericPackageDescription Dependency
+ CabalLenses.Version: lowerBound :: Lens' VersionInterval LowerBound
+ CabalLenses.Version: noLowerBound :: LowerBound
+ CabalLenses.Version: rangeToIntervals :: Iso' VersionRange [VersionInterval]
+ CabalLenses.Version: upperBound :: Lens' VersionInterval UpperBound
- CabalLenses.PackageDescription: condTreeComponentsL :: Lens (CondTree v_a7PB c_a7PC a_a7PD) (CondTree v_ac6w c_a7PC a_a7PD) [(Condition v_a7PB, CondTree v_a7PB c_a7PC a_a7PD, Maybe (CondTree v_a7PB c_a7PC a_a7PD))] [(Condition v_ac6w, CondTree v_ac6w c_a7PC a_a7PD, Maybe (CondTree v_ac6w c_a7PC a_a7PD))]
+ CabalLenses.PackageDescription: condTreeComponentsL :: Lens (CondTree v_a5ZB c_a5ZC a_a5ZD) (CondTree v_a8Br c_a5ZC a_a5ZD) [(Condition v_a5ZB, CondTree v_a5ZB c_a5ZC a_a5ZD, Maybe (CondTree v_a5ZB c_a5ZC a_a5ZD))] [(Condition v_a8Br, CondTree v_a8Br c_a5ZC a_a5ZD, Maybe (CondTree v_a8Br c_a5ZC a_a5ZD))]
- CabalLenses.PackageDescription: condTreeConstraintsL :: Lens' (CondTree v_a7PB c_a7PC a_a7PD) c_a7PC
+ CabalLenses.PackageDescription: condTreeConstraintsL :: Lens' (CondTree v_a5ZB c_a5ZC a_a5ZD) c_a5ZC
- CabalLenses.PackageDescription: condTreeDataL :: Lens' (CondTree v_a7PB c_a7PC a_a7PD) a_a7PD
+ CabalLenses.PackageDescription: condTreeDataL :: Lens' (CondTree v_a5ZB c_a5ZC a_a5ZD) a_a5ZD

Files

cabal-lenses.cabal view
@@ -1,5 +1,5 @@ name: cabal-lenses-version: 0.2+version: 0.3 cabal-version: >=1.9.2 build-type: Simple license: BSD3@@ -21,7 +21,7 @@ library     build-depends:         base >=3 && <5,-        lens >=4.0.1 && <4.3,+        lens >=4.0.1 && <4.4,         unordered-containers >=0.2.3.3 && <0.3,         Cabal >=1.16.0 && <1.21     exposed-modules:
lib/CabalLenses/Traversals/Dependency.hs view
@@ -1,7 +1,9 @@ {-# LANGUAGE Rank2Types #-}  module CabalLenses.Traversals.Dependency-   ( dependency+   ( allDependency+   , allDependencyIf+   , dependency    , dependencyIf    ) where @@ -10,10 +12,33 @@ import CabalLenses.CondVars (CondVars) import CabalLenses.PackageDescription import Control.Lens-import Distribution.PackageDescription (GenericPackageDescription)+import Control.Applicative ((<$>), (<*>), pure)+import Distribution.PackageDescription (GenericPackageDescription(GenericPackageDescription)) import Distribution.Package (Dependency)  +-- | A traversal for all 'Dependency' of all 'Section'.+allDependency :: Traversal' GenericPackageDescription Dependency+allDependency f (GenericPackageDescription descrp flags lib exes tests benchs) =+   GenericPackageDescription <$> pure descrp+                             <*> pure flags+                             <*> (_Just . traverseDependency) f lib+                             <*> (traverse . _2 . traverseDependency) f exes+                             <*> (traverse . _2 . traverseDependency) f tests+                             <*> (traverse . _2 . traverseDependency) f benchs+++-- | A traversal for all 'Dependency' of all 'Section' that match 'CondVars'.+allDependencyIf :: CondVars -> Traversal' GenericPackageDescription Dependency+allDependencyIf condVars f (GenericPackageDescription descrp flags lib exes tests benchs) =+   GenericPackageDescription <$> pure descrp+                             <*> pure flags+                             <*> (_Just . traverseDependencyIf condVars) f lib+                             <*> (traverse . _2 . traverseDependencyIf condVars) f exes+                             <*> (traverse . _2 . traverseDependencyIf condVars) f tests+                             <*> (traverse . _2 . traverseDependencyIf condVars) f benchs++ -- | A traversal for all 'Dependency' of 'Section'. dependency :: Section -> Traversal' GenericPackageDescription Dependency dependency Library           = condLibraryL . _Just . traverseDependency@@ -30,4 +55,4 @@ dependencyIf condVars (Benchmark name)  = condBenchmarksL . traverse . having name . _2 . traverseDependencyIf condVars  -having name = filtered ((== name) . fst) +having name = filtered ((== name) . fst)
lib/CabalLenses/Version.hs view
@@ -6,10 +6,31 @@  module CabalLenses.Version where -import Distribution.Version (Version(..))-import Control.Lens (makeLensesFor)+import Distribution.Version+import Control.Lens+import Data.Maybe (fromMaybe)+import Control.Applicative ((<$>))   makeLensesFor [ ("versionBranch", "versionBranchL")               , ("versionTags"  , "versionTagsL")               ] ''Version+++rangeToIntervals :: Iso' VersionRange [VersionInterval]+rangeToIntervals = iso asVersionIntervals toVersionRange+   where+      toVersionRange intervals =+         fromMaybe anyVersion (fromVersionIntervals <$> mkVersionIntervals intervals)+++lowerBound :: Lens' VersionInterval LowerBound+lowerBound = _1+++upperBound :: Lens' VersionInterval UpperBound+upperBound = _2+++noLowerBound :: LowerBound+noLowerBound = LowerBound (Version [0] []) InclusiveBound