packages feed

xml-optics 0.1.0 → 0.2.0

raw patch · 3 files changed

+30/−9 lines, 3 filesdep ~optics-corePVP ok

version bump matches the API change (PVP)

Dependency ranges changed: optics-core

API changes (from Hackage documentation)

- Text.XML.Optics: (./) :: (Is (Join k A_Traversal) (Join (Join k A_Traversal) l), Is l (Join (Join k A_Traversal) l), Is k (Join k A_Traversal), Is A_Traversal (Join k A_Traversal)) => Optic k is s t Element Element -> Optic l js Element Element a b -> Optic (Join (Join k A_Traversal) l) (Append (Append is (WithIx Int)) js) s t a b
+ Text.XML.Optics: (./) :: (JoinKinds k1 l m, JoinKinds k2 A_Traversal k1, AppendIndices is1 js ks, AppendIndices is2 (WithIx Int) is1) => Optic k2 is2 s t Element Element -> Optic l js Element Element a b -> Optic m ks s t a b
- Text.XML.Optics: (.//) :: (Is (Join k A_Traversal) (Join (Join k A_Traversal) l), Is l (Join (Join k A_Traversal) l), Is k (Join k A_Traversal), Is A_Traversal (Join k A_Traversal)) => Optic k is s t Element Element -> Optic l js Element Element a b -> Optic (Join (Join k A_Traversal) l) (Append is js) s t a b
+ Text.XML.Optics: (.//) :: (AppendIndices is js ks, JoinKinds k1 l m, JoinKinds k2 A_Traversal k1) => Optic k2 is s t Element Element -> Optic l js Element Element a b -> Optic m ks s t a b

Files

CHANGELOG.md view
@@ -1,5 +1,10 @@ # xml-optics +## 0.2.0++* Compatibility with optics 0.4+* Version bound on optics+ ## 0.1.0  Initial release
src/Text/XML/Optics.hs view
@@ -1,3 +1,5 @@+{-# LANGUAGE CPP #-}+ module Text.XML.Optics   ( -- * Document     Document (..),@@ -184,7 +186,14 @@ -- | Compose two 'Traversal'' using 'plate' -- -- @t1 './' t2 = t1 '%' 'plate' '%' t2@+#if MIN_VERSION_optics_core(0,4,0)+(./) :: (JoinKinds k1 l m, JoinKinds k2 A_Traversal k1,+ AppendIndices is1 js ks, AppendIndices is2 (WithIx Int) is1) =>+  Optic k2 is2 s t Element Element+  -> Optic l js Element Element a b -> Optic m ks s t a b+#else (./) :: (Is (Join k A_Traversal) (Join (Join k A_Traversal) l), Is l (Join (Join k A_Traversal) l), Is k (Join k A_Traversal), Is A_Traversal (Join k A_Traversal)) => Optic k is s t Element Element -> Optic l js Element Element a b -> Optic (Join (Join k A_Traversal) l) (Append (Append is (WithIx Int)) js) s t a b+#endif o1 ./ o2 = o1 % plate % o2 {-# INLINE (./) #-} @@ -193,6 +202,13 @@ -- | A version of './' that ignores the index from 'plate' -- -- @t1 './/' t1 = t1 '<%' 'plate' '%' t2@+#if MIN_VERSION_optics_core(0,4,0)+(.//) :: (AppendIndices is js ks, JoinKinds k1 l m,+ JoinKinds k2 A_Traversal k1) =>+  Optic k2 is s t Element Element+  -> Optic l js Element Element a b -> Optic m ks s t a b+#else (.//) :: (Is (Join k A_Traversal) (Join (Join k A_Traversal) l), Is l (Join (Join k A_Traversal) l), Is k (Join k A_Traversal), Is A_Traversal (Join k A_Traversal)) => Optic k is s t Element Element -> Optic l js Element Element a b -> Optic (Join (Join k A_Traversal) l) (Append is js) s t a b+#endif o1 .// o2 = o1 <% plate % o2 {-# INLINE (.//) #-}
xml-optics.cabal view
@@ -1,14 +1,15 @@ cabal-version:   3.0 name:            xml-optics-version:         0.1.0-+version:         0.2.0 synopsis:        Optics for xml-conduit-description:     Optics port of xml-lens, a collection of optics for xml-conduit+description:+  Optics port of xml-lens, a collection of optics for xml-conduit+ category:        XML license:         BSD-3-Clause license-file:    LICENSE author:          Poscat-maintainer:      Poscat <poscat@mail.poscat.moe>+maintainer:      Poscat <poscat@poscat.moe> copyright:       Copyright (c) Poscat 2021 stability:       experimental homepage:        https://github.com/poscat0x04/xml-optics@@ -19,11 +20,11 @@  common common-attrs   build-depends:-    , base              >=4.10 && <5+    , base         >=4.10 && <5     , containers-    , optics-core-    , xml-conduit+    , optics-core  >=0.3  && <0.5     , text+    , xml-conduit    default-language:   Haskell2010   default-extensions:@@ -66,8 +67,7 @@ library   import:          common-attrs   build-depends:-  exposed-modules:-    Text.XML.Optics+  exposed-modules: Text.XML.Optics   other-modules:   hs-source-dirs:  src