Releases: typelevel/Laika
Releases · typelevel/Laika
0.11.0
Support for Output in the EPUB Format
- New Renderer for producing EPUB containers
- New
laikaEPUB
task in the sbt plugin - New
laikaIncludeEPUB
setting for thelaikaSite
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
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
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
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
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
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
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 settingincludePDF
- New directives
pageBreak
,style
andformat
- Changes to the
Render
andTransform
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
0.5.0
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
tolaika-core
- Upgrade to ScalaTest 2.0 and sbt 0.13
- Drop support for Scala 2.9.x
0.4.0
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