Changelog of @hackage/rib 0.7.0.0

Change Log for rib

0.7.0.0

  • Dependency upgrades
    • mmark: 0.0.7.2
    • megaparsec: 0.8
    • clay: 0.14
    • shake: 0.8.15
  • New features:
    • Added Dhall parser, Rib.Parser.Dhall
    • Add Rib.Extra containing useful but non-essential features
  • MMark, extensions removed:
    • ghcSyntaxHighlighter: we already have skylighting (which supports more parsers than Haskell)
    • obfuscateEmail: requires JS, which is not documented.
  • API changes:
    • Introduced Route functionality for simpler management of static routes.
      • Removed buildHtmlMulti, buildHtml, readSource functions and Source type.
    • Introduced Rib.Shake.forEvery to run a Shake action over a pattern of files when they change.
    • Exposed Rib.Shake.writeFileCached
    • MMark.parse and Pandoc.parse now automatically append path to ribInputDir and do not return Either.
    • Added MMark.parseWith (and parsePureWith), to specify a custom list of mmark extensions
  • Bug fixes
    • #95: Fix Shake error resource busy (file is locked)
    • #97: Fix Shake error AsyncCancelled when server thread crashes
    • #96 & #108: Drop problematic use of Shake cacheActionWith

0.6.0.0

  • Advance nixpkgs; require Shake >=0.18.4
  • Major API simplication: no more type class!
    • Allow user to specify their own source parser as a Haskell function
    • Removed types Document and Markup in favour of Source
    • Expose ribInputDir and ribOutputDir for use in custom Shake actions
  • Bug fixes:
    • #63: create intermediate directories when generating post HTML
    • #70: Don't crash on Shake errors
    • Fix unnecessary rebuild of all files when only one file changed
      • #66: Use caching (via Shake's cacheActionWith), to avoid writing HTML to disk until it has changed.

0.5.0.0

This release comes with a major API refactor. Key changes:

  • Added MMark support, as an alternative to Pandoc
  • Allows using arbitrary records to load metadata
    • This replaces the previous complex metadata API
  • Added Document type that uses the custom metadata record
  • Add top-level Rib import namespace for ease of use
  • Remove the following:
    • JSON cache
    • Rib.Simple
  • Support for Table of Contents via MMark

Other changes:

  • Use type-safe path types using the path library.
  • Fix #40: Gracefully handle rendering/ parsing errors, without dying.
  • Misc error reporting improvements

0.4.1.0

  • Rib.Pandoc:
    • Export render' and renderInlines' (the non-Lucid versions)
    • Re-export Text.Pandoc.Readers so the library user does not have to directly depend on pandoc only to render its documents.
  • Rib.App: The run funtion now takes two more arguments, specifying the input and output directory, which are no longer hardcoded.
  • Rib.Simple: add LaTeX to default list of readers
  • Rib.Server: Remove ".html" detection magic from URLs

0.3.0.0

  • Rename Rib.App.Watch to Rib.App.WatchAndGenerate

0.2.0.0

  • Initial release.