xml-conduit 1.10.0.0 → 1.10.0.1
raw patch · 3 files changed
+30/−4 lines, 3 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Text.XML: data () => Doctype
+ Text.XML: data Doctype
- Text.XML: data () => ExternalID
+ Text.XML: data ExternalID
- Text.XML: data () => Instruction
+ Text.XML: data Instruction
- Text.XML: data () => Miscellaneous
+ Text.XML: data Miscellaneous
- Text.XML: data () => Name
+ Text.XML: data Name
- Text.XML: data () => Prologue
+ Text.XML: data Prologue
- Text.XML: fromEvents :: MonadThrow m => ConduitT EventPos o m Document
+ Text.XML: fromEvents :: forall (m :: Type -> Type) o. MonadThrow m => ConduitT EventPos o m Document
- Text.XML: renderBytes :: PrimMonad m => RenderSettings -> Document -> ConduitT i ByteString m ()
+ Text.XML: renderBytes :: forall (m :: Type -> Type) i. PrimMonad m => RenderSettings -> Document -> ConduitT i ByteString m ()
- Text.XML: sinkDoc :: MonadThrow m => ParseSettings -> ConduitT ByteString o m Document
+ Text.XML: sinkDoc :: forall (m :: Type -> Type) o. MonadThrow m => ParseSettings -> ConduitT ByteString o m Document
- Text.XML: sinkTextDoc :: MonadThrow m => ParseSettings -> ConduitT Text o m Document
+ Text.XML: sinkTextDoc :: forall (m :: Type -> Type) o. MonadThrow m => ParseSettings -> ConduitT Text o m Document
- Text.XML.Stream.Parse: choose :: Monad m => [ConduitT Event o m (Maybe a)] -> ConduitT Event o m (Maybe a)
+ Text.XML.Stream.Parse: choose :: forall (m :: Type -> Type) o a. Monad m => [ConduitT Event o m (Maybe a)] -> ConduitT Event o m (Maybe a)
- Text.XML.Stream.Parse: content :: MonadThrow m => ConduitT Event o m Text
+ Text.XML.Stream.Parse: content :: forall (m :: Type -> Type) o. MonadThrow m => ConduitT Event o m Text
- Text.XML.Stream.Parse: contentMaybe :: MonadThrow m => ConduitT Event o m (Maybe Text)
+ Text.XML.Stream.Parse: contentMaybe :: forall (m :: Type -> Type) o. MonadThrow m => ConduitT Event o m (Maybe Text)
- Text.XML.Stream.Parse: data () => PositionRange
+ Text.XML.Stream.Parse: data PositionRange
- Text.XML.Stream.Parse: detectUtf :: MonadThrow m => ConduitT ByteString Text m ()
+ Text.XML.Stream.Parse: detectUtf :: forall (m :: Type -> Type). MonadThrow m => ConduitT ByteString Text m ()
- Text.XML.Stream.Parse: ignoreAnyTreeContent :: MonadThrow m => ConduitT Event o m (Maybe ())
+ Text.XML.Stream.Parse: ignoreAnyTreeContent :: forall (m :: Type -> Type) o. MonadThrow m => ConduitT Event o m (Maybe ())
- Text.XML.Stream.Parse: ignoreContent :: MonadThrow m => ConduitT Event o m (Maybe ())
+ Text.XML.Stream.Parse: ignoreContent :: forall (m :: Type -> Type) o. MonadThrow m => ConduitT Event o m (Maybe ())
- Text.XML.Stream.Parse: ignoreEmptyTag :: MonadThrow m => NameMatcher a -> ConduitT Event o m (Maybe ())
+ Text.XML.Stream.Parse: ignoreEmptyTag :: forall (m :: Type -> Type) a o. MonadThrow m => NameMatcher a -> ConduitT Event o m (Maybe ())
- Text.XML.Stream.Parse: ignoreTree :: MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event o m (Maybe ())
+ Text.XML.Stream.Parse: ignoreTree :: forall (m :: Type -> Type) a b o. MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event o m (Maybe ())
- Text.XML.Stream.Parse: ignoreTreeContent :: MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event o m (Maybe ())
+ Text.XML.Stream.Parse: ignoreTreeContent :: forall (m :: Type -> Type) a b o. MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event o m (Maybe ())
- Text.XML.Stream.Parse: many :: Monad m => ConduitT Event o m (Maybe a) -> ConduitT Event o m [a]
+ Text.XML.Stream.Parse: many :: forall (m :: Type -> Type) o a. Monad m => ConduitT Event o m (Maybe a) -> ConduitT Event o m [a]
- Text.XML.Stream.Parse: many' :: MonadThrow m => ConduitT Event o m (Maybe a) -> ConduitT Event o m [a]
+ Text.XML.Stream.Parse: many' :: forall (m :: Type -> Type) o a. MonadThrow m => ConduitT Event o m (Maybe a) -> ConduitT Event o m [a]
- Text.XML.Stream.Parse: manyIgnore :: Monad m => ConduitT Event o m (Maybe a) -> ConduitT Event o m (Maybe b) -> ConduitT Event o m [a]
+ Text.XML.Stream.Parse: manyIgnore :: forall (m :: Type -> Type) o a b. Monad m => ConduitT Event o m (Maybe a) -> ConduitT Event o m (Maybe b) -> ConduitT Event o m [a]
- Text.XML.Stream.Parse: manyIgnoreYield :: MonadThrow m => ConduitT Event b m (Maybe b) -> ConduitT Event b m (Maybe ()) -> ConduitT Event b m ()
+ Text.XML.Stream.Parse: manyIgnoreYield :: forall (m :: Type -> Type) b. MonadThrow m => ConduitT Event b m (Maybe b) -> ConduitT Event b m (Maybe ()) -> ConduitT Event b m ()
- Text.XML.Stream.Parse: manyYield :: Monad m => ConduitT a b m (Maybe b) -> ConduitT a b m ()
+ Text.XML.Stream.Parse: manyYield :: forall (m :: Type -> Type) a b. Monad m => ConduitT a b m (Maybe b) -> ConduitT a b m ()
- Text.XML.Stream.Parse: manyYield' :: MonadThrow m => ConduitT Event b m (Maybe b) -> ConduitT Event b m ()
+ Text.XML.Stream.Parse: manyYield' :: forall (m :: Type -> Type) b. MonadThrow m => ConduitT Event b m (Maybe b) -> ConduitT Event b m ()
- Text.XML.Stream.Parse: many_ :: MonadThrow m => ConduitT Event o m (Maybe a) -> ConduitT Event o m ()
+ Text.XML.Stream.Parse: many_ :: forall (m :: Type -> Type) o a. MonadThrow m => ConduitT Event o m (Maybe a) -> ConduitT Event o m ()
- Text.XML.Stream.Parse: orE :: Monad m => ConduitT Event o m (Maybe a) -> ConduitT Event o m (Maybe a) -> ConduitT Event o m (Maybe a)
+ Text.XML.Stream.Parse: orE :: forall (m :: Type -> Type) o a. Monad m => ConduitT Event o m (Maybe a) -> ConduitT Event o m (Maybe a) -> ConduitT Event o m (Maybe a)
- Text.XML.Stream.Parse: parseBytes :: MonadThrow m => ParseSettings -> ConduitT ByteString Event m ()
+ Text.XML.Stream.Parse: parseBytes :: forall (m :: Type -> Type). MonadThrow m => ParseSettings -> ConduitT ByteString Event m ()
- Text.XML.Stream.Parse: parseBytesPos :: MonadThrow m => ParseSettings -> ConduitT ByteString EventPos m ()
+ Text.XML.Stream.Parse: parseBytesPos :: forall (m :: Type -> Type). MonadThrow m => ParseSettings -> ConduitT ByteString EventPos m ()
- Text.XML.Stream.Parse: parseFile :: MonadResource m => ParseSettings -> FilePath -> ConduitT i Event m ()
+ Text.XML.Stream.Parse: parseFile :: forall (m :: Type -> Type) i. MonadResource m => ParseSettings -> FilePath -> ConduitT i Event m ()
- Text.XML.Stream.Parse: parseLBS :: MonadThrow m => ParseSettings -> ByteString -> ConduitT i Event m ()
+ Text.XML.Stream.Parse: parseLBS :: forall (m :: Type -> Type) i. MonadThrow m => ParseSettings -> ByteString -> ConduitT i Event m ()
- Text.XML.Stream.Parse: parseText :: MonadThrow m => ParseSettings -> ConduitT Text Event m ()
+ Text.XML.Stream.Parse: parseText :: forall (m :: Type -> Type). MonadThrow m => ParseSettings -> ConduitT Text Event m ()
- Text.XML.Stream.Parse: parseTextPos :: MonadThrow m => ParseSettings -> ConduitT Text EventPos m ()
+ Text.XML.Stream.Parse: parseTextPos :: forall (m :: Type -> Type). MonadThrow m => ParseSettings -> ConduitT Text EventPos m ()
- Text.XML.Stream.Parse: tag :: MonadThrow m => NameMatcher a -> (a -> AttrParser b) -> (b -> ConduitT Event o m c) -> ConduitT Event o m (Maybe c)
+ Text.XML.Stream.Parse: tag :: forall (m :: Type -> Type) a b o c. MonadThrow m => NameMatcher a -> (a -> AttrParser b) -> (b -> ConduitT Event o m c) -> ConduitT Event o m (Maybe c)
- Text.XML.Stream.Parse: tag' :: MonadThrow m => NameMatcher a -> AttrParser b -> (b -> ConduitT Event o m c) -> ConduitT Event o m (Maybe c)
+ Text.XML.Stream.Parse: tag' :: forall (m :: Type -> Type) a b o c. MonadThrow m => NameMatcher a -> AttrParser b -> (b -> ConduitT Event o m c) -> ConduitT Event o m (Maybe c)
- Text.XML.Stream.Parse: tagIgnoreAttrs :: MonadThrow m => NameMatcher a -> ConduitT Event o m b -> ConduitT Event o m (Maybe b)
+ Text.XML.Stream.Parse: tagIgnoreAttrs :: forall (m :: Type -> Type) a o b. MonadThrow m => NameMatcher a -> ConduitT Event o m b -> ConduitT Event o m (Maybe b)
- Text.XML.Stream.Parse: tagNoAttr :: MonadThrow m => NameMatcher a -> ConduitT Event o m b -> ConduitT Event o m (Maybe b)
+ Text.XML.Stream.Parse: tagNoAttr :: forall (m :: Type -> Type) a o b. MonadThrow m => NameMatcher a -> ConduitT Event o m b -> ConduitT Event o m (Maybe b)
- Text.XML.Stream.Parse: takeAnyTreeContent :: MonadThrow m => ConduitT Event Event m (Maybe ())
+ Text.XML.Stream.Parse: takeAnyTreeContent :: forall (m :: Type -> Type). MonadThrow m => ConduitT Event Event m (Maybe ())
- Text.XML.Stream.Parse: takeContent :: MonadThrow m => ConduitT Event Event m (Maybe ())
+ Text.XML.Stream.Parse: takeContent :: forall (m :: Type -> Type). MonadThrow m => ConduitT Event Event m (Maybe ())
- Text.XML.Stream.Parse: takeTree :: MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event Event m (Maybe ())
+ Text.XML.Stream.Parse: takeTree :: forall (m :: Type -> Type) a b. MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event Event m (Maybe ())
- Text.XML.Stream.Parse: takeTreeContent :: MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event Event m (Maybe ())
+ Text.XML.Stream.Parse: takeTreeContent :: forall (m :: Type -> Type) a b. MonadThrow m => NameMatcher a -> AttrParser b -> ConduitT Event Event m (Maybe ())
- Text.XML.Stream.Render: content :: Monad m => Text -> ConduitT i Event m ()
+ Text.XML.Stream.Render: content :: forall (m :: Type -> Type) i. Monad m => Text -> ConduitT i Event m ()
- Text.XML.Stream.Render: renderBuilder :: Monad m => RenderSettings -> ConduitT Event Builder m ()
+ Text.XML.Stream.Render: renderBuilder :: forall (m :: Type -> Type). Monad m => RenderSettings -> ConduitT Event Builder m ()
- Text.XML.Stream.Render: renderBuilderFlush :: Monad m => RenderSettings -> ConduitT (Flush Event) (Flush Builder) m ()
+ Text.XML.Stream.Render: renderBuilderFlush :: forall (m :: Type -> Type). Monad m => RenderSettings -> ConduitT (Flush Event) (Flush Builder) m ()
- Text.XML.Stream.Render: renderBytes :: PrimMonad m => RenderSettings -> ConduitT Event ByteString m ()
+ Text.XML.Stream.Render: renderBytes :: forall (m :: Type -> Type). PrimMonad m => RenderSettings -> ConduitT Event ByteString m ()
- Text.XML.Stream.Render: renderText :: (PrimMonad m, MonadThrow m) => RenderSettings -> ConduitT Event Text m ()
+ Text.XML.Stream.Render: renderText :: forall (m :: Type -> Type). (PrimMonad m, MonadThrow m) => RenderSettings -> ConduitT Event Text m ()
- Text.XML.Stream.Render: tag :: Monad m => Name -> Attributes -> ConduitT i Event m () -> ConduitT i Event m ()
+ Text.XML.Stream.Render: tag :: forall (m :: Type -> Type) i. Monad m => Name -> Attributes -> ConduitT i Event m () -> ConduitT i Event m ()
- Text.XML.Stream.Render.Internal: content :: Monad m => Text -> ConduitT i Event m ()
+ Text.XML.Stream.Render.Internal: content :: forall (m :: Type -> Type) i. Monad m => Text -> ConduitT i Event m ()
- Text.XML.Stream.Render.Internal: renderBuilder :: Monad m => RenderSettings -> ConduitT Event Builder m ()
+ Text.XML.Stream.Render.Internal: renderBuilder :: forall (m :: Type -> Type). Monad m => RenderSettings -> ConduitT Event Builder m ()
- Text.XML.Stream.Render.Internal: renderBuilderFlush :: Monad m => RenderSettings -> ConduitT (Flush Event) (Flush Builder) m ()
+ Text.XML.Stream.Render.Internal: renderBuilderFlush :: forall (m :: Type -> Type). Monad m => RenderSettings -> ConduitT (Flush Event) (Flush Builder) m ()
- Text.XML.Stream.Render.Internal: renderBytes :: PrimMonad m => RenderSettings -> ConduitT Event ByteString m ()
+ Text.XML.Stream.Render.Internal: renderBytes :: forall (m :: Type -> Type). PrimMonad m => RenderSettings -> ConduitT Event ByteString m ()
- Text.XML.Stream.Render.Internal: renderText :: (PrimMonad m, MonadThrow m) => RenderSettings -> ConduitT Event Text m ()
+ Text.XML.Stream.Render.Internal: renderText :: forall (m :: Type -> Type). (PrimMonad m, MonadThrow m) => RenderSettings -> ConduitT Event Text m ()
- Text.XML.Stream.Render.Internal: tag :: Monad m => Name -> Attributes -> ConduitT i Event m () -> ConduitT i Event m ()
+ Text.XML.Stream.Render.Internal: tag :: forall (m :: Type -> Type) i. Monad m => Name -> Attributes -> ConduitT i Event m () -> ConduitT i Event m ()
- Text.XML.Unresolved: elementFromEvents :: MonadThrow m => ConduitT EventPos o m (Maybe Element)
+ Text.XML.Unresolved: elementFromEvents :: forall (m :: Type -> Type) o. MonadThrow m => ConduitT EventPos o m (Maybe Element)
- Text.XML.Unresolved: fromEvents :: MonadThrow m => ConduitT EventPos o m Document
+ Text.XML.Unresolved: fromEvents :: forall (m :: Type -> Type) o. MonadThrow m => ConduitT EventPos o m Document
- Text.XML.Unresolved: renderBuilder :: Monad m => RenderSettings -> Document -> ConduitT i Builder m ()
+ Text.XML.Unresolved: renderBuilder :: forall (m :: Type -> Type) i. Monad m => RenderSettings -> Document -> ConduitT i Builder m ()
- Text.XML.Unresolved: renderBytes :: PrimMonad m => RenderSettings -> Document -> ConduitT i ByteString m ()
+ Text.XML.Unresolved: renderBytes :: forall (m :: Type -> Type) i. PrimMonad m => RenderSettings -> Document -> ConduitT i ByteString m ()
- Text.XML.Unresolved: renderText :: (MonadThrow m, PrimMonad m) => RenderSettings -> Document -> ConduitT i Text m ()
+ Text.XML.Unresolved: renderText :: forall (m :: Type -> Type) i. (MonadThrow m, PrimMonad m) => RenderSettings -> Document -> ConduitT i Text m ()
- Text.XML.Unresolved: sinkDoc :: MonadThrow m => ParseSettings -> ConduitT ByteString o m Document
+ Text.XML.Unresolved: sinkDoc :: forall (m :: Type -> Type) o. MonadThrow m => ParseSettings -> ConduitT ByteString o m Document
- Text.XML.Unresolved: sinkTextDoc :: MonadThrow m => ParseSettings -> ConduitT Text o m Document
+ Text.XML.Unresolved: sinkTextDoc :: forall (m :: Type -> Type) o. MonadThrow m => ParseSettings -> ConduitT Text o m Document
Files
- ChangeLog.md +16/−0
- src/Text/XML/Stream/Parse.hs +13/−3
- xml-conduit.cabal +1/−1
ChangeLog.md view
@@ -1,3 +1,19 @@+## 1.10.0.1+* Fix doctest on GHC 9.12++## 1.10.0.0++* `rsPretty` is now exported only from the new module `Text.XML.Render.Internal`+ - Migration path: Import it from its new home.+ - Since it is now internal, be prepared for it to be changed or removed in some future version.+* `prettify` is no longer exported at all.+ - Migration path: Use `rsPretty = True` in your `RenderSettings` when you finally render the stream instead of inserting the `prettify` combinator into your conduit pipeline.+ - Same caveat as above about `rsPretty` now being internal+ - If you require having the prettified version of an XML event stream as a conduit before rendering (we hope this use case occurs rarely if ever), things will be more awkward:+ - The hack of rendering with `rsPretty = True` and re-parsing might work.+ - Another hack could be to fork this library and add `prettify` to the export list in `Text.XML.Render.Internal`.+ - Otherwise, you might need to implement pretty-printing yourself. The source code of `Text.XML.Render.Internal` might be helpful in that case.+ ## 1.9.1.1 * Entity declarations with tags inside are now correctly handled
src/Text/XML/Stream/Parse.hs view
@@ -1301,9 +1301,19 @@ -- -- If an opening-tag is consumed but no matching closing-tag is found, an 'XmlException' is thrown. ----- >>> runConduit $ parseLBS def "<a><b></b>" .| void (takeTree "a" ignoreAttrs) .| sinkList--- *** Exception: InvalidEndElement (Name {nameLocalName = "a", nameNamespace = Nothing, namePrefix = Nothing}) Nothing---+{-+>>> runConduit $ parseLBS def "<a><b></b>" .| void (takeTree "a" ignoreAttrs) .| sinkList+#if MIN_VERSION_base(4, 21, 0)+*** Exception: Error while parsing XML event: expected </Name {nameLocalName = "a", nameNamespace = Nothing, namePrefix = Nothing}>, got nothing++^+HasCallStack backtrace:+ throwIO, called at libraries/exceptions/src/Control/Monad/Catch.hs:308:12 in exceptions-0.10.9-inplace:Control.Monad.Catch+ throwM, called at /home/alexfmpe/profiles/alexfmpe/repos/xml/xml-conduit/src/Text/XML/Stream/Parse.hs:1324:71 in main:Text.XML.Stream.Parse+#else+*** Exception: InvalidEndElement (Name {nameLocalName = "a", nameNamespace = Nothing, namePrefix = Nothing}) Nothing+#endif+-} -- This function automatically ignores comments, instructions and whitespace. -- -- Returns @Just ()@ if an element was consumed, 'Nothing' otherwise.
xml-conduit.cabal view
@@ -1,7 +1,7 @@ cabal-version: 1.14 name: xml-conduit-version: 1.10.0.0+version: 1.10.0.1 license: MIT license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>, Aristid Breitkreuz <aristidb@googlemail.com>