Skip to content

Releases: typelevel/Laika

0.11.0

12 Jun 21:15
Compare
Choose a tag to compare

Support for Output in the EPUB Format

  • New Renderer for producing EPUB containers
  • New laikaEPUB task in the sbt plugin
  • New laikaIncludeEPUB setting for the laikaSite task
  • Support for cover images for EPUB and PDF
  • Support for document metadata (author, language, date, etc.) for EPUB and PDF
  • Support for title pages per chapter
  • Backwards-compatible to 0.9.0 and 0.10.0 - if you update from earlier versions, please see
    the release notes for 0.9.0 for migration

0.10.0

01 Dec 20:24
Compare
Choose a tag to compare

Support for GitHub Flavored Markdown

  • New Markdown parser extensions for GitHub Flavour:
    • Tables
    • Fenced Code Blocks
    • Auto-Links
    • Strikethrough
  • Preparing for Scala 2.13
    • Adjust use of Collection API for breaking changes and deprecations in 2.13
    • Replace use of parallel collections with custom executor
    • Release will follow once 2.13 is final
  • Level of parallelism of transformations is now configurable
  • Fully backwards-compatible to 0.9.0 - if you update from an earlier version, please see
    the release notes for 0.9.0 for migration

0.9.0

15 Sep 21:19
Compare
Choose a tag to compare

Introduction of the ExtensionBundle API

  • New ExtensionBundle APIs allow to bundle extensions into a single object for easier reuse. Supported extension hooks include directives, markup parser extensions, rewrite rules, custom renderers, document type matchers, alternative parsers for stylesheets, templates or configuration headers and default templates per output format. For migrating from 0.8 extension hooks, see #56.
  • Reduced number of settings and tasks in the sbt plugin, by using the new ExtensionBundle API for sbt settings. The most common tasks and setting remain unchanged, for users of the lower level extension settings of the plugin see #65 for migration instructions.
  • Improved package structure to reduce number of required imports. For simpler use cases a global "organize imports" should suffice for migration, for all other cases see #66.
  • The changes listed above fix some of the design issues of the very early releases from 2013/14.

0.8.0

04 Jun 13:29
Compare
Choose a tag to compare

The Speed Release

  • Doubles parsing speed for both Markdown and reStructuredText
  • Much lower number of parser instance creations on repeated runs
  • Performance goals had been achieved through replacing the former
    Scala SDK parser combinators with a custom, optimized combinator design:
    • Fewer dependent types and base parsers in objects instead of traits, making it easier to freely compose parsers
    • Create parser error messages lazily, as most of them will never be accessed
    • Avoid cost of by-name args in all cases except | combinator
  • Other changes in this release:
    • Add support for size and align options for the image directive in reStructuredText
    • Fixes for all bugs known and reported to this point
    • Remove all deprecation warnings for Scala 2.12

0.7.5

30 Dec 14:17
Compare
Choose a tag to compare

Support for sbt 1.0

  • Laika's sbt plugin is now an AutoPlugin
  • Prefixed all task and setting keys to adhere to recommended naming pattern
    (e.g. laikaGenerate)
  • Adjustments for API changes in sbt 1.0
  • Bug fixes in the library
  • Drop support for sbt 0.13 and Scala 2.10

The unusual version number reflects the fact that users of the sbt plugin need
to update their build for the changes in the key names, while for users of
the library this release is a drop-in replacement containing only bug fixes.

0.7.0

17 Apr 14:37
Compare
Choose a tag to compare

Redesign of the Document API

  • Support for Scala 2.12 (with continued support for 2.11 and 2.10)
  • New Document API: use case classes wherever possible,
    extract features into pluggable traits and introduce a new Cursor type for tree rewriting
  • Allow to customize the FopFactory for the PDF renderer (in API and sbt plugin)
  • Fix an issue in the laika:site task in the sbt plugin that executed several sub-tasks
    twice which could lead to IllegalStateExceptions caused by the resulting race condition
  • Fixes for the reStructuredText parser (for option lists and IP addresses)

0.6.0

23 May 00:48
Compare
Choose a tag to compare

New renderer for PDF output

  • Support for rendering PDF documents
  • Support for rendering XSL-FO output
  • New CSS parser supporting a large subset of standard CSS
  • Support styling of PDF documents with CSS
  • Support for different templates per output format
  • New sbt tasks: html, pdf, xslfo, prettyPrint for rendering
    a single output format
  • New sbt task generate for rendering multiple formats
    (e.g. laika:generate html pdf)
  • Integrate PDF output into existing sbt task laika:site via
    new setting includePDF
  • New directives pageBreak, style and format
  • Changes to the Render and Transform API to allow for the
    merging of an entire directory of input files into a single output
    file (as required by PDF rendering)

0.5.1

23 May 00:36
Compare
Choose a tag to compare
  • Cross-compile for Scala 2.11 and 2.10
  • Publish the sbt plugin to the new plugin repository on Bintray
  • Upgrade to ScalaTest 2.2.4

0.5.0

23 May 00:35
Compare
Choose a tag to compare

Introducing sbt Plugin

  • New sbt plugin, exposing all Laika
    features and customization hooks as sbt tasks and settings
  • New option to merge multiple input directories into a tree structure with a single root,
    allowing to keep reusable styles or templates ("themes") separately
  • New option to use Markdown and reStructuredText markup in the same input tree, including
    cross-linking between the two formats
  • Move to a multi-project build and rename the main artifact from laika to laika-core
  • Upgrade to ScalaTest 2.0 and sbt 0.13
  • Drop support for Scala 2.9.x

0.4.0

23 May 00:33
Compare
Choose a tag to compare

Adding template based site generation and batch processing

  • Template-based site generation for HTML output
  • Support for tables of contents, autonumbering of documents and sections
    and convenient cross-linking between documents for all supported markup
    formats
  • Custom Directives (tags) for templates and text markup
  • Document Fragments that can be rendered separately from the main document content
  • New API for batch processing for parse, render and full transform operations
  • Parallel processing of parsers and renderers
  • Completely restructured manual