Release Notes¶
v2.3¶
Webserver. Implementation of the Tornado library for the internal preview webserver.
v2.2¶
CLI. Implementation of the cli init subcommand.
v2.1¶
Epub. Implementation of epub version 3 as document target format.
Documentation. Documentation updates for API changes, added an Overview section with Installation, Quickstart and Features sections.
v2.0¶
Builders. Implementation of thread locking and ThreadPoolExecutor for builder threads.
Builders. Implementation of process timeouts.
Templates. CSS updates to
books/tufte
,books/novel
.
v1.0¶
Builder. Implementation of the builder framework for multithreaded and multiprocess compilation of documents and document dependencies.
Dependency Manager. Elimination of the dependency manager, which is now replaced by builders.
v0.20¶
Tags¶
Tables. Tags to render tables.
Data. Tags to incorporate data into tables or plots.
Captions. Captions now render in html using the
caption
orfigcaption
tags.Figures. Figures now render in html using the
figure
tag.Equations. Refactor image, equation and paragraph tags to automatically identify equations in a block paragraph, without specifying the equation environment (ex:
@eq[env=align*]{...}
)
v0.19¶
Tags¶
Feature Boxes. A box with a feature for a text, like an example box (
@examplebox
) or a general featurebox (@featurebox
)Headings. The behavior of heading tags to not list the contents of the tag by default. Instead, a label tag is created, and the content of the tag is included if a
@label.title
macro was included.Equations
- 3.1. tex: Block equations (equations in their own paragraph) are written
without newlines before/after the environment in latex.
Templates¶
books/tufte. Remove indentation before captions.
Documentation¶
Feature Boxes. Add the
@featurebox
and@examplebox
tags to the language documentation.
Bug Fixes¶
Fixed the renaming of filenames with periods in converters. Created a new path utility,
rename
, that more intelligently renames files.
v0.18¶
Document¶
Add local path (parent dir) to the search paths for each document
Files are copied both from the local path of a document or subdocument or the project root path.
Converters¶
Imagemagick. Implemented a
.tif
/.tiff
converter to.png
Bug Fixes¶
Wrap filenames and paths in curly braces for LaTeX
\includegraphics
command. This is needed to deal with filenames that include special characters, like periods.
v0.17¶
Tags¶
Implementation of the
@list
and@outline
tags.Implementation of
@prev
and@next
tags with signalsImplementation of a general
html_list
function for@list
and@toc
tags
Document¶
Implementation of signals.
v0.16¶
Backend¶
Webserver. Implement sanic for preview server.
Heritable tags. Allow tags to be copied and inherited between documents. This enables
@toc
tags and navigation tags to be shared between a document and its subdocuments.Navigation tags. Add navigations tags
@prev
and@next
to add html links for the previous or next page. These are available as theprev
andnext
entries in the context.
v0.15¶
Interfaces¶
Click. Implemented Click for the CLI
Flask. Removed the server interface from the project
v0.14¶
Interfaces¶
Flask. Implement Flask web server for viewing the document list and rendered products.
Backend¶
BaseContext. Refactor to copy values from parent_context, rather than use a ChainMap implementation. This significantly speeds up look ups and loading of documents.
BaseContext. Create shallow copies of mutables from the parent_context so that these aren’t modified directly. This is only done for mutables that have
copy
methods so that some mutables, like theLabelManager
andDependencyManager
, can be preserved by all contexts and documents in a projectProcessContextHeader. Refactor to use the new implementation of the BaseContext. The
ProcessContextHeader
now does the work of loading templates and loading additional context headers.Renderers. Simplify the API.
v0.13 beta¶
Backend¶
Documentation. Update documentation to use sphinx.
Context. Rewrote context to work like a ChainMapping with inherited entries from a parent_context.
Paths. Allow relative links and urls.
TemplateStrings. Eliminated the TemplateString class with a replace_macro function.
Equation Tags. Implement a new pdf cropping converter to more cleanly crop equation images in targets like
.html
.Attributes. Refactored tag attributes to use an ordered dict instead of tuples. The Attributes class now includes useful utility functions, like filter and exclude.
Formats. Refactor the formatting of targets for tags with a new formats sub-module. This module now checks for allowed tags in the settings. The formats submodule also isolates the dependency of external packages, like lxml, to one place instead of multiple places.
Processors. Created a ProcessorABC abstract base class as a chain of command class for objects like tags and context. Included a simple listing of processors in the CLI.
Tags. Eliminate the ast submodule and replaced with a TagProcessor.
Document. Moved context processors to the document submodule and refactor to use the ProcessorABC.
Label Manager. Refactored to simplify the assignment of labels, the resetting of label counters and to minimize the dependency of labels for tags. Also added a set of label processors based on the ProcessorABC.