This document provides a curated view of the changes to Asciidoctor Reducer in each release. For a detailed view of what has changed, refer to the commit history on GitHub.
-
Add
Asciidoctor::Reducer::IncludeMapper
auxiliary extension, required byasciidoctor/reducer/include_mapper/extension
(#26) -
Register
Asciidoctor::Reducer::IncludeMapper
extension whenasciidoctor/reducer/include_mapper
is required (#26) -
Add
Asciidoctor::Reducer::Extensions.key
method that returns key for registering extension group -
Update help text to note that the
-a
and-r
CLI options may be specified multiple times -
Automate the release process
-
Rename x_include_replacements attr on reader to include_replacements since it’s public
-
Don’t pass
:to
option toAsciidoctor.load_file
-
Make
Asciidoctor::Reducer::Cli
a module instead of a class
-
Replace remote include with link if
allow-uri-read
attribute is not set -
Don’t raise error if
Asciidoctor::Reducer::Extensions.unregister
is called when extensions are not registered globally -
Ensure output is written to file with universal newlines (\n) on Windows
-
Add secure mode as value of
-S
CLI option (#31) -
Add
--trace
option to CLI to trace cause of application errors (#29)
-
Replace include directive with link macro if safe mode is secure (#31)
-
Track line numbers in include replacements using 1-based index
-
Only mix in preprocessor conditional tracker if
:preserve_conditionals
option is not set (#36)
-
Add asciidoctor/reducer/api to require main API (#3)
-
Add
Asciidoctor::Reducer.reduce
andAsciidoctor::Reducer.reduce_file
API methods (#3) -
Add asciidoctor/reducer/extensions to require extensions API (#3)
-
Add
Asciidoctor::Reducer::Extensions
API (#3)
-
Scope extensions to single call instead of registering them globally (#3)
-
Use
:safe
as the default safe mode when using the API -
Make
CurrentPosition
module private to thePreprocessorDirectiveTracker
module
-
Require asciidoctor/reducer/version automatically when
Asciidoctor::Reducer::VERSION
is accessed
-
Add
-S
,--safe-mode
option to CLI to set safe mode (#13) -
Add
-r
,--require
option to CLI to specify additional libraries to require before running (#17)
-
Sort CLI options in help text, except for the
-h
,--help
option -
Update CLI to always use a new logger instance
-
Defer initializing logger until run method is called
-
Replace include directives that follow an unresolved include (#19)
-
Don’t activate reducer extensions on reduced document
-
Prevent custom extension registry from activating extensions twice during reload (#21)
-
Retain includes table in document catalog when reloading document (#23)
-
Removing trailing empty lines after reducing when sourcemap is not enabled
-
Remove unnecessary override of lineno in preprocess_include_directive override
-
Simplify how include replacement target is tracked
-
Classify extensions in group named
:reducer
-
Rename PreprocessorReader ext module to PreprocessorReaderTracker
-
Encapsulate logic to enhance PreprocessorReader inside PreprocessorReaderTracker module
-
Only reload document if source lines have changed; otherwise, update source lines on reader directly
-
Change default safe mode for CLI to :unsafe
-
Reduce preprocessor conditionals by default; add option (
--preserve-conditionals
,:preserve_conditionals
) to preserve them (#8) -
Don’t enable sourcemap automatically (#4)
-
Don’t override logger by default; instead, rely on
:logger
API option to change logger -
Add
--log-level
option to CLI to set severity level on logger (#9) -
Add
-q
,--quiet
option to CLI to suppress log messages (#9) -
Reserve zero index in include replacements for top-level document
Initial release.