Starting with Pandoc 3.1.6.1, the compatible version of the Pandoc API (on Hackage: pandoc-types has changed to 1.23.0.1 and later to 1.23.1 (latest).
It would be great if you (or somebody else via a PR) could update Panflute so that it becomes usable with Pandoc 3.2!
Your work is very much appreciated, btw!
As my small contribution: I looked into what changed in pandoc-types from 1.23.0: Besides updating the GHC, CI/CD components, and allowing bytestring 0.12, the only changes that may affect Panflute are IMHO these two:
instance (Walkable [a] Pandoc, MonadIO m) => ToJSONFilter m (a -> [a]) where
toJSONFilter f = liftIO $ BL.getContents >>=
BL.putStr . encode . (walk (concatMap f) :: Pandoc -> Pandoc) .
either error id .
eitherDecode'
src/Text/Pandoc/JSON.hs
- instance (Walkable a Pandoc) => ToJSONFilter IO (a -> a) where
- toJSONFilter f = BL.getContents >>=
+ instance (Walkable a Pandoc, MonadIO m) => ToJSONFilter m (a -> a) where
+ toJSONFilter f = liftIO $ BL.getContents >>=
+ BL.putStr . encode . (walk f :: Pandoc -> Pandoc) . either error id .
+ eitherDecode'
Restore toJSONFilter instance for pure a -> [a].
This went missing after my ill-considered revision to #105,
commit 183af9d9f1066be974ac55fd23a4c985999d3ce8 . See jgm/pandoc#8976.
Generalize ToJSONFilter instance. Previously a pure function a -> a
could only be promoted to a filter in IO. Now we allow it to work with
any instance of MonadIO. (This adds to #105.)
Allow bytestring 0.12.
[1.23.0.1]
Allow aeson 2.2.
Remove dependency on string-qq (recbecca skinner).
Starting with Pandoc 3.1.6.1, the compatible version of the Pandoc API (on Hackage: pandoc-types has changed to 1.23.0.1 and later to 1.23.1 (latest).
It would be great if you (or somebody else via a PR) could update Panflute so that it becomes usable with Pandoc 3.2!
Your work is very much appreciated, btw!
As my small contribution: I looked into what changed in pandoc-types from 1.23.0: Besides updating the GHC, CI/CD components, and allowing bytestring 0.12, the only changes that may affect Panflute are IMHO these two:
https://github.com/jgm/pandoc-types/commit/1d0e8b2b3f373903280dc8d5c0f385ee6fce1a46
src/Text/Pandoc/JSON.hs
src/Text/Pandoc/JSON.hs
https://github.com/jgm/pandoc-types/commit/01b2b86c8b2002cba205eac87bcf8fc8c446ea22
The snippet from the changelog is below.
[1.23.1]
Restore toJSONFilter instance for pure
a -> [a]
. This went missing after my ill-considered revision to #105, commit 183af9d9f1066be974ac55fd23a4c985999d3ce8 . See jgm/pandoc#8976.Generalize ToJSONFilter instance. Previously a pure function
a -> a
could only be promoted to a filter in IO. Now we allow it to work with any instance of MonadIO. (This adds to #105.)Allow bytestring 0.12.
[1.23.0.1]
Allow aeson 2.2.
Remove dependency on string-qq (recbecca skinner).