# Changelog `pandoc-lua-marshal` uses [PVP Versioning][]. ## 0.1.1 Released 2021-12-10. ### Behavior of Lua objects - Lists of Inline values and lists of Block values are now pushed with their own metatables (named "Inlines" and "Blocks"). - The types `Block`, `Blocks`, `Inline`, `Inlines`, and `Pandoc` now all have a method `walk` that applies a filter to the document subtree. - Changed behavior for *Cell* values: these are now pushed as userdata; the old table-based structure is still accepted when retrieving a Cell from the stack. ### Haskell code - Module Text.Pandoc.Lua.Marshal.Cell exports the constructor function `mkCell`, the type definition `typeCell` and the fuzzy peeker `peekCellFuzzy`. - Added a new module `Text.Pandoc.Lua.Marshal.Filter` that handles Lua filters. - Added functions for filtering: - Module Text.Pandoc.Lua.Marshal.Block: - `walkBlockSplicing`: walk an AST element, applying a filter on each Block and splicing the result back into the list. - `walkBlocks`: walk an AST element, modifying lists of Block elements by applying the `Blocks` filter function. - Module Text.Pandoc.Lua.Marshal.Inline: - `walkInlineSplicing`: walk an AST element, applying a filter on each Inline and splicing the result back into the list. - `walkInlines`: walk an AST element, modifying lists of Inline elements by applying the `Inlines` filter function. - Module Text.Pandoc.Lua.Marshal.Pandoc: - `applyFully`: fully apply a filter on a Pandoc document. - New internal modules: - Text.Pandoc.Lua.SpliceList: defines a helper type used to walk a list of elements in a way that replaces the element by splicing the function result back into the list. The module is a slight rewrite of pandoc’s `SingletonsList`. - Text.Pandoc.Lua.Walk: handles walking of the document tree while modifying elements via filter functions. This is a re-implementation of large parts of pandoc’s T.P.Lua.Filter module. - Text.Pandoc.Lua.Marshal.Shared: provides helper functions used in multiple Lua type definitions. ## 0.1.0.1 Released 2021-11-28. - Added test-simpletable.lua to the list of extra-source-files. ## 0.1.0 Released 2021-11-28. - Released into the wild. May it live long and prosper. [PVP Versioning]: https://pvp.haskell.org