Fri Jun 21 09:18:33 UTC 2024 - Dan Čermák <dan.cermak@posteo.net>
- 2.0.23:
This is a patch release in the 2.0.x release line to fix bugs and deal with compliance issues.
The primary bug fix in this release is to not duplicate the block attribute line above a detached block that breaks a dlist, which fixes the duplicate role warning on that detached block.
The main compliance improvement is to encode spaces in mailto links using %20, in accordance with RFC 3986, instead of +.
This release introduces several fixes and improvements related to parsing a table that has jagged rows.
If the colspan of the last cell in a row, including the last row, exceeds the specified number of columns, only that row is dropped.
On the other hand, if the last row is missing cells, an error message is logged to notify the author.
If a URL is used as the target of an xref shorthand, the processor now treats the URL as a fragment identifier instead of crashing.
Finally, repeating spaces in verbatim content in the manpage output are preserved.
Asciidoctor is also packaged for [Fedora](https://apps.fedoraproject.org/packages/rubygem-asciidoctor), [Debian](https://packages.debian.org/sid/asciidoctor), [Ubuntu](https://packages.ubuntu.com/search?keywords=asciidoctor), [Alpine Linux](https://pkgs.alpinelinux.org/packages?name=asciidoctor), [OpenSUSE](https://software.opensuse.org/package/rubygem-asciidoctor), and [Homebrew](https://formulae.brew.sh/formula/asciidoctor). You can use the system's package manager to install the package named **asciidoctor**.
## Changelog
### Compliance
* Encode spaces in mailto links as %20, in accordance with RFC 3986, instead of + (#4576)
### Improvements
* Log error when an incomplete row is detected at the end of a table (#4573)
A very special thanks to all the **awesome** [supporters of the Asciidoctor OpenCollective campaign](https://opencollective.com/asciidoctor), who provide critical funding for the ongoing development of this project.
2.0.22:
This is a patch release in the 2.0.x release line to further compatibility with Ruby 3.3.
The most critical fix in this release is to remove use of the base64 library since it will no longer being provided as part of the Ruby language starting with Ruby 3.4. When using Ruby 3.3, users would see a warning if this library is used, which happens when the data-uri attribute is set. The functionality has been replaced with a lower-level method on the String object (String#pack), which the base64 library delegates to anyway.
This release also sets the cloaked-context attribute on a source block that is defined using either a styled paragraph or a literal or fenced code structural container. This matches the functionality used for custom block extensions (when the source context does not match the final parsed context).
Asciidoctor is also packaged for [Fedora](https://apps.fedoraproject.org/packages/rubygem-asciidoctor), [Debian](https://packages.debian.org/sid/asciidoctor), [Ubuntu](https://packages.ubuntu.com/search?keywords=asciidoctor), [Alpine Linux](https://pkgs.alpinelinux.org/packages?name=asciidoctor), [OpenSUSE](https://software.opensuse.org/package/rubygem-asciidoctor), and [Homebrew](https://formulae.brew.sh/formula/asciidoctor). You can use the system's package manager to install the package named **asciidoctor**.
## Changelog
### Improvements
* Set `cloaked-context` attribute on source block when context is not `:listing` (#4556)
### Compliance
* Remove use of base64 library to prevent warning in Ruby >= 3.3 (#4561)
## Release meta
Released on: 2024-03-08
Released by: @mojavelinux
Release beer: Turbo Laser by Resolute Brewing Company
A very special thanks to all the **awesome** [supporters of the Asciidoctor OpenCollective campaign](https://opencollective.com/asciidoctor), who provide critical funding for the ongoing development of this project.
2.0.21:
This is a patch release in the 2.0.x release line, primarily to address compatibility with Ruby 3.3. While development of Asciidoctor 2.1 is beginning to pick up again, we extracted several other important improvements and bug fixes from main to include in this patch release.
The most critical fix in this release is to make Asciidoctor's logger compatible with the logger API in Ruby 3.3. The code is now tested against Ruby 3.3 on each change. Nearly as important, this release also turns off Ruby's system-dependent newline conversion when writing files so that Asciidoctor's output is consistent between *nix and Windows.
Numerous changes were made to correct AsciiDoc parsing. A nested dlist attached using a list continuation no longer consumes a detached paragraph. And an attached block is correctly attached to a nested dlist when that dlist is offset from its parent by an empty line. The secondary and tertiary terms on the `indexterm` macro are preserved when the primary term is quoted and contains an equals sign. And a bare URL enclosed in angle brackets acts as unconstrained syntax that stops at the first occurrence of a closing angle bracket. When includes are not enabled, any spaces in the include target are preserved when generating the fallback link.
Several changes were made to the DocBook output to address compliance. The abstract is moved inside the `<info>` tag (applies to both the abstract in the preamble as well an an abstract for a book part). The `scaledwidth` and `scale` attributes are now supported on an inline macro, like with a block image macro.
A few changes to the manpage output were made. Cells in the head row are styled as bold. Paragraph breaks in a normal table cell are preserved.
Finally, a few refinements to the default stylesheet were applied. The extra border below the doctitle when the sidebar toc is collapsed into main content area was removed. And a text decoration was added to the active footnote number link in the footnotes list.
Asciidoctor is also packaged for [Fedora](https://apps.fedoraproject.org/packages/rubygem-asciidoctor), [Debian](https://packages.debian.org/sid/asciidoctor), [Ubuntu](https://packages.ubuntu.com/search?keywords=asciidoctor), [Alpine Linux](https://pkgs.alpinelinux.org/packages?name=asciidoctor), [OpenSUSE](https://software.opensuse.org/package/rubygem-asciidoctor), and [Homebrew](https://formulae.brew.sh/formula/asciidoctor). You can use the system's package manager to install the package named **asciidoctor**.
## Changelog
### Compliance
* Turn off system-dependent newline conversion when writing files; don't convert line feeds to system-dependent newline (#4550)
* Support logger in Ruby 3.3 by instantiating super class (#4493) (*@mtasaka*)
* Add support for `scaledwidth` and `scale` attributes on inline image macro in DocBook output (#4552)
* Update latest Ruby to 3.3 in CI workflows
### Improvements
* Change title to doctitle in warning message about use of abstract to make subject more clear
* Modify default stylesheet to add text decoration to active footnote number link in footnotes list (#4530) (@Larhzu)
### Bug Fixes
* Nested dlist attached using list continuation should not consume detached paragraph (#3535)
* Don't break nested dlist with attached block if offset from parent list by empty line (#3693)
* Preserve paragraph breaks in normal table cell in manpage output (#4481)
* Style cells in head row as bold in manpage output (#4490)
* Escape spaces in include target (using inline passthrough) when generating link from include directive (#4461)
* Move abstract inside info tag in DocBook output (#3602)
* Honor secondary and tertiary terms on `indexterm` macro when primary term is quoted and contains an equals sign (#3652)
* Remove extra border below doctitle when sidebar toc is collapsed into main content area (#4523)
* Treat bare URL enclosed in angle brackets as unconstrained syntax; only match until closing angled bracket (#4468)
* Allow URL enclosed in angled brackets syntax to be escaped using backslash (#4468)
A very special thanks to all the **awesome** [supporters of the Asciidoctor OpenCollective campaign](https://opencollective.com/asciidoctor), who provide critical funding for the ongoing development of this project.
Mon Nov 12 12:43:58 UTC 2018 - Stephan Kulow <coolo@suse.com>
- updated to version 1.5.8
see installed CHANGELOG.adoc
== 1.5.8 (2018-10-28) - @mojavelinux
Enhancements::
* if set, add value of part-signifier and chapter-signifier attributes to part and chapter titles (#2738)
* allow position (float) and alignment (align) to be set on video block (#2425)
* substitute attribute references in attrlist of include directive (#2761)
* add Document#set_header_attribute method for adding method directly to document header during parsing (#2820)
* add helper method to extension processor classes to create lists and list items
* allow ordered and unordered lists to be nested to an arbitrary / unlimited depth (#2854)
* add `prefer` DSL method to extension registry and document processor to flag extension as preferred (#2848)
* allow manname and manpurpose to be set using document attributes; don't look for NAME section in this case (#2810)
* substitute attribute references in target of custom block macro (honoring attribute-missing setting) (#2839)
* interpret `<.>` as an auto-numbered callout in verbatim blocks and callout lists (#2871)
* require marker for items in callout list to have circumfix brackets (e.g., `<1>` instead of `1>`) (#2871)
* preserve comment guard in front of callout number in verbatim block if icons is not enabled (#1360)
* add more conventional styles to quote block when it has the excerpt role (#2092)
* colspecs can be separated by semi-colon instead of comma (#2798)
* change AbstractBlock#find_by to respond to StopIteration exception; stop traversal after matching ID (#2900)
* change AbstractBlock#find_by to honor return values :skip and :skip_children from filter block to skip node and its descendants or just its descendants, respectively (#2067)
* add API to retrieve authors as array; use API in converters (#1042) (*@mogztter*)
* add support for start attribute on source block to set starting line number when converting to DocBook (#2915)
* track imagesdir for image on node and in catalog (#2779)
* allow starting line number to be set using start attribute when highighting source block with Pygments or CodeRay (#1742)
* upgrade highlight.js to 9.13.1
Fixes::
* don't hang on description list item that begins with /// (#2888)
* don't crash when using AsciiDoc table cell style on column in CSV table (#2817)
* show friendly error if CSV data for table contains unclosed quote (#2878) (*@zelivans*)
* don't crash when attribute entry continuation is used on last line of file (#2880) (*@zelivans*)
* treat empty/missing value of named block attribute followed by other attributes (e.g., caption=,cols=2*) as empty string
* AbstractNode#set_option does nothing if option is already set (PR #2778)
* allow revnumber to be an attribute reference in revision info line (#2785)
* use ::File.open instead of ::IO.binread in Reader for Asciidoctor.js compatibility
* add fallback for timezone when setting doctime
* preserve UNC path that begins with a double backslash (Windows) (#2869)
* fix formatting of quote block (indentation) in manpage output (#2792)
* catalog inline anchors in ordered list items (#2812)
* detect closing tag on last line with no trailing newline (#2830)
* process `!name@` attribute syntax property; follow-up to #642
* change document extension processor DSL methods to return registered extension instance instead of array of instances
* use fallback value for manname-title to prevent crash in manpage converter
* consolidate inner whitespace in prose in manpage output (#2890)
* only apply subs to node attribute value if enclosed in single quotes (#2905)
* don't hide URI scheme if target of link macro is a bare URI scheme
* fix crash when child section of part is out of sequence and section numbering is enabled (#2931)
* fix crash when restoring passthroughs if passthrough role is enclosed in single quotes (#2882, #2883)
* don't eagerly apply subs to inline attributes in general
* make sure encoding of output file is UTF-8
* prevent warning about invalid `:asciidoc` option when using custom templates with Slim 4 (#2928)
* use Pathname#relative_path_from to compute relative path to file outside of base directory (#2108)
Improvements::
* change trailing delimiter on part number to colon (:) (#2738)
* interpret open line range as infinite (#2914)
* rename number property on AbstractBlock to numeral, but keep number as deprecated alias
* use CSS class instead of hard-coded inline float style on tables and images (#2753)
* use CSS class instead of hard-coded inline text-align style on block images (#2753)
* allow hyphen to be used custom block macro name as long as it's not the first character (#2620)
* use shorthands %F and %T instead of %Y-%m-%d and %H:%M:%S to format time
* read file in binary mode whenever contents are being normalized
* use .drop(0) to duplicate arrays (roughly 1.5x as fast as .dup)
* only recognize a bullet glyph which is non-repeating as an unordered list marker
* rename SyntaxDsl module to SyntaxProcessorDsl (internal)
* fail if name given to block macro contains illegal characters
* normalize all whitespace in value of manpurpose attribute
* make space before callout number after custom line comment character optional
* parse attrlist on inline passthrough as a shorthand attribute syntax or literal role (#2910)
* add support for range syntax (.. delimiter) to highlight attribute on source block (#2918)
* add support for unbounded range to highlight attribute on source block (#2918)
* automatically assign title and caption on image block if title is set on custom block source (#2926)
* use OS independent timezone (UTC or time offset) in doctime and localtime attributes (#2770)
* report correct line number for inline anchor with id already in use (#2769)
* generate manpage even if input is non-conforming or malformed (#1639)
* allow authorinitials for single author to be overridden (#669)
Documentation::
* translate README into German (#2829) (*@jwehmschulte*)
* sync French translation of README (*@mogztter*)
* add Swedish translation of built-in attributes (PR #2930) (*@jonasbjork*)
Build / Infrastructure::
* replace thread_safe with concurrent-ruby (PR #2822) (*@junaruga*)
* add test to ensure ampersand in author line is not double escaped (#2439, PR #2440)
* prevent footnote ID from clashing with auto-generated footnote IDs (#2019)
* fix alignment of icons in footnote (#2415, PR #2416)
* add graceful fallback if pygments.rb fails to return a value (#2341, PR #2342)
* escape specialchars in source if pygments fails to highlight (#2341)
* do not recognize attribute entry line if name contains colon (PR #2377)
* allow flow indexterm to be enclosed in round brackets (#2363, PR #2364)
* set outfilesuffix to match file extension of output file (#2258, PR #2367)
* add block title to dlist in manpage output (#1611, PR #2434)
* scale text to 80% in print styles (#1484, PR #2576)
* fix alignment of abstract title when using default stylesheet (PR #2732)
* only set nowrap style on table caption for auto-width table (#2392)
* output non-breaking space for man manual if absent in DocBook output (PR #2636)
* don't crash if stem type is not recognized (instead, fallback to asciimath)
Improvements / Refactoring::
* BREAKING: rename table spread role to stretch (#2589, PR #2591)
* use cursor marks to track lines more accurately; record cursor at the start of each block, list item, or table cell (PR #2701, PR #2547) (*@seikichi*)
* log a warning message if an unterminated delimited block is detected (#1133, PR #2612)
* log a warning when nested section is found inside special section that doesn't support nested sections (#2433, PR #2672)
* read files in binary mode to disable automatic endline coercion (then explicitly coerce to UTF-8) (PR #2583, PR #2694)
* resolve / expand parent references in start path passed to PathResolver#system_path (#2642, PR #2644)
* update PathResolver#expand_path to resolve parent references (#2642, PR #2644)
* allow start path passed to PathResolver#system_path to be outside jail if target brings resolved path back inside jail (#2642, PR #2644)
* don't run File.expand_path on Dir.pwd (assume Dir.pwd is absolute) (#2642, PR #2644)
* posixify working_dir passed to PathResolver constructor if absolute (#2642, PR #2644)
* optimize detection for footnote* and indexterm* macros (#2347, PR #2362)
* log a warning if a footnote reference cannot be resolved (#2669)
* set logger level to DEBUG when verbose is enabled
* coerce value of `:template_dirs` option to an Array (PR #2621)
* make block roles specified using shorthand syntax additive (#2174)
* allow paragraph to masquerade as open block (PR #2412)
* move callouts into document catalog (PR #2394)
* document ID defined in block attribute line takes precedence over ID defined inside document title line
* don't look for link and window attributes on document when resolving these attributes for an image
* when linkattrs is set, only parse attributes in link macro if equals is present
* skip line comments in name section of manpage (#2584, PR #2585)
* always activate extension registry passed to processor (PR #2379)
* skip extension registry activation if no groups are registered (PR #2373)
* don't apply lead styling to first paragraph if role is present (#2624, PR #2625)
* raise clearer exception when extension class cannot be resolved (#2622, PR #2623)
* add methods to read results from timings (#2578, PR #2580)
* collapse bottom margin of last block in AsciiDoc table cell (#2568, PR #2593)
* set authorcount to 0 if there are no authors (#2519, PR #2520)
* validate fragment of interdoc xref that resolves to current doc (#2448, PR #2449)
* put id attribute on tag around phrase instead of preceding anchor (#2445, PR #2446)
* add .plist extension to XML circumfix comment family (#2430, PR #2431) (*@akosma*)
* alias Document#title method to no args Document#doctitle method (#2429, PR #2432)
* upgrade missing or unreadable include file to an error (#2424, PR #2426)
* use custom cross reference text if xrefstyle attribute is set (full, short, basic) (#858, #1132)
* store referenceable nodes under refs key in document catalog (PR #2220)
* apply reftext substitutions (specialchars, quotes, replacements) to value returned by reftext method (PR #2220)
* add xreftext method to AbstractBlock, Section, and Inline to produce formatted text for xref (PR #2220)
* introduce attributes chapter-refsig, section-refsig, and appendix-refsig to set reference signifier for chapter, section, and appendix, respectively (PR #2220)
* add rel="noopener" to links that target _blank or when noopener option is set (#2071)
* add option to exclude tags when including a file (#1516)
* add meta for shortcut icon if favicon attribute is set (#1574)
* allow use of linenums option to enable line numbers on a source block (#1981)
* allow extension groups to be unregistered individually (#1701)
* catalog bibliography anchors and capture reftext (#560, #1562)
* automatically add bibliography style to unordered list in bibliography section (#1924)
* disable startinline option when highlighting PHP if mixed option is set on source block (PR #2015) (@ricpelo)
* configure Slim to resolve includes in specified template dirs (#2214)
* dump manpage when -h manpage flag is passed to CLI (#2302)
* add resolves_attributes method to DSL for macros (#2122)
* invoke convert on result of custom inline macro if value is an inline node (#2132)
* resolve attributes for custom short inline macros if requested (#1797)
* add convenience method to create section from extension; use same initialization logic as parser (#1957)
* add handles? method to DSL for IncludeProcessor (#2119)
* pass through preload attribute to video tag (#2046)
* add start and end times for audio element (#1930)
* set localyear and docyear attributes (#1372)
* pass cloaked context to block extension via cloaked-context attribute (#1606)
* add support for covers in DocBook 5 converter (#1939)
* accept named pipe (fifo) as the input file (#1948)