= {project-name} Changelog :project-name: asciidoctor-reveal.js :uri-repo: https://github.com/asciidoctor/asciidoctor-reveal.js :uri-issue: {uri-repo}/issues/ This document provides a high-level view of the changes introduced in {project-name} by release. For a detailed view of what has changed, refer to the {uri-repo}/commits/master[commit history] on GitHub. == 2.0.0 (2019-02-28) Upgrade considerations:: * Node.js API change! If you generate your reveal.js presentations using the node/javascript toolchain, you need to change how the {project-name} back-end is registered to Asciidoctor.js. Instead of `require('asciidoctor-reveal.js')` you need to do: var asciidoctorRevealjs = require('asciidoctor-reveal.js'); asciidoctorRevealjs.register() + This change enables new use cases like embedding a presentation in a React web app. * Anchor links generated by {project-name} will change from now on when revealjs_history is set to true (default is false). This is the consequence of upstream fixing a long standing issue (see https://github.com/hakimel/reveal.js/pull/1230[#1230] and https://github.com/hakimel/reveal.js/pull/2037[#2037]) and us removing a workaround (see {uri-issue}232[#232]). Explicit anchors are not affected. * Custom CSS might require adjustments. Source and listing block are less deeply nested into `div` blocks now. See {uri-issue}195[#195] and {uri-issue}223[#223]. * The reveal.js `marked` and `markdown` plugins are disabled by default now. It is unlikely that they could have been used anyway. See {uri-issue}204[#204]. * Dropped the ability to override the Reveal.JS theme and transitions dynamically with the URL query. Was not compatible with Reveal.JS 3.x series released 4 years ago. Enhancements:: * Easier speaker notes: a `.notes` role that apply to many AsciiDoc blocks (open, sidebar and admonition) ({uri-issue}202[#202]) * Added a role `right` that would apply a `float: right` to any block where it would be assigned ({uri-issue}197[#197], {uri-issue}213[#213], {uri-issue}215[#215]) * Allow the background color of slides to be set using CSS ({uri-issue}16[#16], {uri-issue}220[#220], {uri-issue}226[#226], {uri-issue}229[#229]) * Reveal.js's fragmentInURL option now supported ({uri-issue}206[#206], {uri-issue}214[#214]) * Documentation improvements ({uri-issue}141[#141], {uri-issue}182[#182], {uri-issue}190[#190], {uri-issue}203[#203], {uri-issue}215[#215], {uri-issue}216[#216], {uri-issue}222[#222]) * Support for Asciidoctor.js 1.5.6 and build simplification ({uri-issue}189[#189], {uri-issue}217[#217]) * Support to specify and use reveal.js plugins without modifying {project-name}'s source code ({uri-issue}196[#196], {uri-issue}118[#118], {uri-issue}201[#201], {uri-issue}204[#204]) * Node / Javascript back-end is now loaded on-demand with the `register()` method. This allows embedding {project-name} into React or any other modern Javascript environment. ({uri-issue}205[#205], {uri-issue}218[#218], {uri-issue}219[#219]) * `revealjsdir` attribute is set to a more sensible default when running under Node.js ({uri-issue}191[#191], {uri-issue}228[#228]) * Node / Javascript back-end updated to use Asciidoctor.js 1.5.9. This extension is built with Opal 0.11.99.dev (6703d8d) in order to be compatible. ({uri-issue}227[#227], {uri-issue}240[#240]) Compliance:: * AsciiDoc source callout icons now work ({uri-issue}54[#54], {uri-issue}168[#168], {uri-issue}224[#224]) * New reveal.js 3.7.0 features supported: `controlsTutorial`, `controlsLayout`, `controlsBackArrows`, new `slideNumber` formats, `showSlideNumber`, `autoSlideMethod`, `parallaxBackgroundHorizontal`, `parallaxBackgroundVertical` and `display` configuration parameters are now supported ({uri-issue}212[#212], {uri-issue}239[#239], TODO) * Asciidoctor 2.0 ready ({uri-issue}245[#245]) Bug Fixes:: * Reveal.js' `stretch` class now works with listing blocks ({uri-issue}195[#195], {uri-issue}223[#223]) * Auto-generated slide IDs with unallowed characters (for revealjs history) now work properly. Upstream reveal.js fixed a bug in 3.7.0 (https://github.com/hakimel/reveal.js/pull/2037[#2037]) and we removed our broken workaround. ({uri-issue}192[#192], {uri-issue}232[#232]) Infrastructure:: * Travis testing prepared for upcoming Asciidoctor 2.0 ({uri-issue}216[#216]) * Travis testing for Ruby 2.6 ({uri-issue}243[#243]) === Release meta * Released on: 2018-02-28 * Released by: Olivier Bilodeau * Release beer: President's Choice Blonde Brew De-alcoholized Beer {uri-repo}/releases/tag/v2.0.0[git tag] | {uri-repo}/compare/v1.1.3...v2.0.0[full diff] | {uri-repo}/milestone/6[milestone] === Credits Thanks to the following people who contributed to this release: a4z, Dan Allen, Guillaume Grossetie, Harald, Jakub Jirutka, Olivier Bilodeau, stevewillson, Vivien Didelot == 1.1.3 (2018-01-31) A repackage of 1.1.2 with a fix for Ruby 2.5 environments Bug fixes:: * Worked around a problem in ruby-beautify with the compiled Slim template under Ruby 2.5 === Release meta * Released on: 2018-01-31 * Released by: Olivier Bilodeau * Release coffee: Santropol Dark Espresso {uri-repo}/releases/tag/v1.1.3[git tag] | {uri-repo}/compare/v1.1.2...v1.1.3[full diff] === Credits Thanks to the following people who contributed to this release: Jakub Jirutka, Olivier Bilodeau == 1.1.2 (2018-01-30) NOTE: No packaged version of this release were produced. A bugfix release due to a problem rendering tables using the Javascript / Node.js toolchain. Enhancements:: * Documentation improvements ({uri-issue}181[#181]) Bug fixes:: * Fixed crash with presentations with a table used from Javascript/Node.js setup ({uri-issue}178[#178]) === Release meta * Released on: 2018-01-30 * Released by: Olivier Bilodeau * Release beer: A sad Belgian Moon in a Smoke Meat joint {uri-repo}/releases/tag/v1.1.2[git tag] | {uri-repo}/compare/v1.1.1...v1.1.2[full diff] === Credits Thanks to the following people who contributed to this release: Guillaume Grossetie, Tobias Placht, Olivier Bilodeau == 1.1.1 (2018-01-03) An emergency bugfix release due to a problem in the Ruby Gem package Enhancements:: * Documentation improvements ({uri-issue}163[#163], {uri-issue}165[#165], {uri-issue}169[#169], {uri-issue}173[#173], {uri-issue}175[#175]) Compliance:: * Code listing callouts now work properly ({uri-issue}22[#22], {uri-issue}166[#166], {uri-issue}167[#167]) * More source code listing examples and tests ({uri-issue}163[#163], {uri-issue}170[#170]) Bug fixes:: * The version 1.1.0 Ruby Gem was broken due to a packaging error ({uri-issue}172[#172]) === Release meta * Released on: 2018-01-03 * Released by: Olivier Bilodeau * Release beer: Croque-Mort Double IPA, À la fût {uri-repo}/releases/tag/v1.1.1[git tag] | {uri-repo}/compare/v1.1.0...v1.1.1[full diff] | {uri-repo}/milestone/5[milestone] === Credits Thanks to the following people who contributed to this release: Dietrich Schulten, Olivier Bilodeau == 1.1.0 (2017-12-25) - @obilodeau Enhancements:: * Support for Reveal.JS 3.5.0+ ({uri-issue}146[#146], {uri-issue}151[#151]) * Support for Asciidoctor 1.5.6 ({uri-issue}132[#132], {uri-issue}136[#136], {uri-issue}142[#142]) * Support for Asciidoctor.js 1.5.6-preview.4 ({uri-issue}130[#130], {uri-issue}143[#143], {uri-issue}156[#156]) * Compiling slim templates to Ruby allows us to drop Jade templates for Asciidoctor.js users ({uri-issue}63[#63], {uri-issue}131[#131]) * Documentation polish ({uri-issue}153[#153], {uri-issue}158[#158] and more) Compliance:: * Users of Asciidoctor (Ruby) and Asciidoctor.js (Javascript) now run the same set of templates meaning that we achieved feature parity between the two implementations ({uri-issue}63[#63], {uri-issue}131[#131]) Bug fixes:: * Reveal.js https://github.com/hakimel/reveal.js/#configuration[history feature] now works. We are working around Reveal.js' section id character limits. ({uri-issue}127[#127], {uri-issue}150[#150], https://github.com/hakimel/reveal.js/issues/1346[hakimel/reveal.js#1346]) Infrastructure:: * https://github.com/asciidoctor/asciidoctor-doctest[Asciidoctor-doctest] integration. This layer of automated testing should help prevent regressions and improve our development process. ({uri-issue}92[#92], {uri-issue}116[#116]) * Travis-CI integration to automatically run doctests and examples AsciiDoc conversions * Travis-CI tests are triggered by changes done in Asciidoctor. We will detect upstream changes affecting us sooner. * Smoke tests for our Javascript / Node / Asciidoctor.js toolchain (integrated in Travis-CI also) * `npm run examples` will convert all examples using the Javascript / Node / Asciidoctor.js toolchain ({uri-issue}149[#149]) * `rake examples:serve` will run a Web server from `examples/` so you can preview rendered examples ({uri-issue}154[#154]) === Release meta {uri-repo}/releases/tag/v1.1.0[git tag] | {uri-repo}/compare/v1.0.4...v1.1.0[full diff] === Credits Thanks to the following people who contributed to this release: @jirutka, Dan Allen, Guillaume Grossetie, Jacob Aae Mikkelsen, Olivier Bilodeau, Rahul Somasunderam == 1.0.4 (2017-09-27) - @obilodeau Bug fixes:: * Dependency problems leading to crashes when used from Asciidoctor.js ({uri-issue}145[#145]) === Release meta {uri-repo}/releases/tag/v1.0.4[git tag] | {uri-repo}/compare/v1.0.3...v1.0.4[full diff] === Credits Thanks to the following people who contributed to this release: Olivier Bilodeau, Guillaume Grossetie == 1.0.3 (2017-08-28) - @obilodeau Enhancements:: * Documentation improvements Compliance:: * Added `data-state: title` to the title slide ({uri-issue}123[#123]) Bug fixes:: * Pinned Asciidoctor version requirement to 1.5.4 to avoid dealing with {uri-issue}132[#132] in the 1.0.x series * Fixed consistency issues with boolean values handling in revealjs settings ({uri-issue}125[#125]) === Release meta {uri-repo}/releases/tag/v1.0.3[git tag] | {uri-repo}/compare/v1.0.2...v1.0.3[full diff] === Credits Thanks to the following people who contributed to this release: Dan Allen, nipa, Olivier Bilodeau, Pi3r == 1.0.2 (2016-12-22) - @obilodeau Enhancements:: * Ruby back-end is now compiled in Javascript with Opal (#115) * Documentation improvements === Release meta {uri-repo}/issues?q=milestone%3A1.0.2[issues resolved] | {uri-repo}/releases/tag/v1.0.2[git tag] | {uri-repo}/compare/v1.0.1...v1.0.2[full diff] === Credits Thanks to the following people who contributed to this release: Dan Allen, Guillaume Grossetie, Olivier Bilodeau == 1.0.1 (2016-10-12) - @obilodeau Enhancements:: * Documentation: aligned release process for both npm and ruby gems packages * npm package in sync with ruby gem === Release meta Released by @obilodeau {uri-repo}/issues?q=milestone%3A1.0.1[issues resolved] | {uri-repo}/releases/tag/v1.0.1[git tag] | {uri-repo}/compare/v1.0.0...v1.0.1[full diff] === Credits Thanks to the following people who contributed to this release: Olivier Bilodeau == 1.0.0 (2016-10-06) - @obilodeau Since this is the first ever "release" of asciidoctor-reveal.js (we used to do continuous improvements w/o releases in the past), this list focuses on the major enhancements introduced over the last few weeks. Enhancements:: * Initial release * Ruby package (#93) * Node package (#95) * `:customcss:` attribute for easy per-presentation CSS (#85) * Video support improvements (#81) * Reveal.js `data-state` support (#61) * Subtitle partioning (#70) * Background image rework (#52) * `:imagesdir:` properly enforced (#17, #67) === Release meta Released by @obilodeau {uri-repo}/issues?q=milestone%3A1.0.0[issues resolved] | {uri-repo}/releases/tag/v1.0.0[git tag] === Credits Thanks to the following people who contributed to this release: Alexander Heusingfeld, Andrea Bedini, Antoine Sabot-Durand, Brian Street, Charles Moulliard, Dan Allen, Danny Hyun, Emmanuel Bernard, gtoast, Guillaume Grossetie, Jacob Aae Mikkelsen, Jakub Jirutka, Jozef Skrabo, Julien Grenier, Julien Kirch, kubamarchwicki, lifei, Nico Rikken, nipa, Olivier Bilodeau, Patrick van Dissel, phrix32, Rahman Usta, Robert Panzer, Rob Winch, Thomas and Wendell Smith