Skip to content

Changelog

0.2.6 (2023-05-28)

TypeDescriptionPRIssuesAuthor
Fix Add an `update_with` function to the `MarkdownPreprocessor` action@mgor
Fix Fix that Novella now also checks for `mkdocs.yaml`, not only `mkdocs.yml`@mgor
Feature Fix `name` parameter for `@anchor` tag.5@mgor

0.2.5 (2023-03-11)

TypeDescriptionPRIssuesAuthor
Feature Add `--port` option to Mkdocs and Hugo template@NiklasRosenstein
Improvement Rename `--server` option to `--serve` in Hugo template for consistency (the `--server` option is deprecated but still usable).@NiklasRosenstein

0.2.4 (2023-03-10)

TypeDescriptionPRIssuesAuthor
Fix Fixed a bug where the `content_directory` set on the `mkdocs-update-config` action did not propagate into the `mkdocs.yml` file.@NiklasRosenstein
Fix Fixed a bug where a file-system event triggering on file-open would continuously retrigger the Novella serving pipeline.@NiklasRosenstein
Fix Fixed a bug with the mainloop that had the `BuildContext` uninitialized through action configuration and `NameError`s in the Hugo template logic.@NiklasRosenstein
Improvement Use already installed Hugo version if available.@NiklasRosenstein
Feature add `--drafts` option to Hugo template@NiklasRosenstein

0.2.3 (2022-03-31)

TypeDescriptionPRIssuesAuthor
Feature Add `rename_section_to` option to `@cat` tag@NiklasRosenstein

0.2.2 (2022-03-31)

TypeDescriptionPRIssuesAuthor
Fix The `@cat` tag now adds `../` to the path to an image file of which the reference was replaced if the name of the current file being preprocessed is not `index.md`@NiklasRosenstein
Feature Add `markdown_section` option to `@cat` tag, allowing you to inject a portion of another Markdown file@NiklasRosenstein

0.2.1 (2022-03-30)

TypeDescriptionPRIssuesAuthor
Improvement The `@cat` tag now copies image files referenced in the source file into the `MarkdownPreprocessor.path / "img"` directory if needed and adjust the image reference to ensure that it points to the right file2@NiklasRosenstein

0.2.0 (2022-03-26)

TypeDescriptionPRIssuesAuthor
Feature add `MkdocsConfigUpdateAction.profile` option and the `readthedocs` profile in addition to the default `material` profile@NiklasRosenstein
Fix Fix error when path that does not exist is passed to `NovellaBuilder.watch()`@NiklasRosenstein
Improvement Pause process currently running through a `RunAction` if it supports internal reloading while the pipeline is being re-executed@NiklasRosenstein
Improvement reloads triggered by filesystem events are now handled in a separate thread to make sure that the event handling is not blocked@NiklasRosenstein
Feature add `-d,--directory` option to cli@NiklasRosenstein
Feature support reading build script from `pyproject.toml` under the `tool.novella.script` option, as well as the `-d,--directory` flag from `tool.novella.directory` if the option is not given on the CLI (discussion at https://github.com/NiklasRosenstein/pydoc-markdown/discussions/254)@NiklasRosenstein

0.1.15 (2022-03-22)

TypeDescriptionPRIssuesAuthor
Improvement Novella markdown tags can now be ended with a trailing `@` (at) to prevent following indented lines to be consumed@NiklasRosenstein
Improvement `@shell` tag now supports a `prefix` option@NiklasRosenstein

0.1.14 (2022-03-19)

TypeDescriptionPRIssuesAuthor
Breaking change Changed `Graph.build_edges()` into `Graph.build()` and it now returns a `nr.util.digraph.DiGraph` object instead of modifying its internal graph state@NiklasRosenstein
Improvement `Graph.execution_order()` now calls `Graph.build()` everytime, this is to ensure everytime it is called it is up to date@NiklasRosenstein
Improvement Action configuration closures are now invoked before the `--dot` argument is handled, allowing modifications to the action dependencies performed in such closures to appear in the DotViz output@NiklasRosenstein
Feature `NovellaContext.do()` now accepts a function for the `action` parameter which allows users to implement actions on-the-fly without requiring plugins@NiklasRosenstein

0.1.13 (2022-03-14)

TypeDescriptionPRIssuesAuthor
Feature add `-i,--init TEMPLATE` option to the `novella` CLI@NiklasRosenstein
Improvement enable `navigation.sections` by default when using the MkDocs template@NiklasRosenstein

0.1.12 (2022-03-03)

TypeDescriptionPRIssuesAuthor
Fix catch potential `nr.util.git.NoCurrentBranchError` in `novella.repository.detect_repository()`@NiklasRosenstein
Improvement add `novella --version` flag@NiklasRosenstein

0.1.11 (2022-03-02)

TypeDescriptionPRIssuesAuthor
Fix `@anchor` now only specifies the URL fragment if the link target is in the same page@NiklasRosenstein
Improvement options are now added to their own argument group if registered by a template@NiklasRosenstein
Feature add `Action.setup()` which gives it access to the build context@NiklasRosenstein
Feature `NovellaContext.action()` now accepts an `Action` instance as well@NiklasRosenstein
Improvement `copy-files` action now always ignores files or directories named `.git`@NiklasRosenstein
Feature add a basic implementation for a Hugo template (https://gohugo.io/)@NiklasRosenstein
Fix fix replacing escaped tags@NiklasRosenstein
Feature add `metavar` argument to `NovellaContext.option()`@NiklasRosenstein
Feature add `--build-dir` option to MkDocs template4@NiklasRosenstein

0.1.10 (2022-03-01)

TypeDescriptionPRIssuesAuthor
Improvement improve replacing escaped Novella tags in `MarkdownPreprocessorAction`@NiklasRosenstein
Hygiene `MkdocsTemplate` no longer stores actions it creates a members, you should access them using `NovellaContext.action()`@NiklasRosenstein

0.1.9 (2022-02-28)

TypeDescriptionPRIssuesAuthor
Improvement add `novella.graph` module, `Action` is no a subclass of `novella.graph.Node`@NiklasRosenstein
Improvement `NovellaContext.options` now throws an `AssertionError` if accessed before `NovellaContext.configure()` is called@NiklasRosenstein
Improvement `MarkdownProcessorAction` now stores processors internally in a graph as well, and `MarkdownProcessor` is now a subclass of `novella.graph.Node`. This allows processors to express dependencies on other processors.@NiklasRosenstein
Improvement `@cat` preprocessor now repeats preprocessing on the included content before injecting it@NiklasRosenstein
Breaking change remove `AnchorAndLinkRenderer` interface and use `MarkdownFlavor` instead, remove `Link` class and add `always_render_anchor_elements` option to `AnchorTagPreprocessor`. `MarkdownPreprocessorAction` now sets up `@shell`, `@cat` and `@anchor` by default. Add `MarkdownPreprocessor.setup()`@NiklasRosenstein
Breaking change `MkdocsTemplate` now keeps the created actions as attributes so they can be configured indivudally@NiklasRosenstein
Feature add `NovellaContext.delay()`@NiklasRosenstein
Breaking change add `Template.__init__()`@NiklasRosenstein

0.1.8 (2022-02-27)

TypeDescriptionPRIssuesAuthor
Improvement support for Python 3.8+ (before was 3.10)@NiklasRosenstein

0.1.7 (2022-02-27)

TypeDescriptionPRIssuesAuthor
Improvement sluggify anchor HTML ID for the @anchor flavor provided by the `mkdocs` template using `markdown.extensions.toc.slugify()`3@NiklasRosenstein
Feature add `--intercept` and `--intercept-log` options to CLI@NiklasRosenstein
Breaking change Split up responsibilities of `Novella` class between `Novella`, `NovellaContext` and `BuildContext`@NiklasRosenstein
Feature add `-r, --use-reloader` option to CLI@NiklasRosenstein
Feature add `--dot` option to CLI@NiklasRosenstein
Feature add `-c,--config-file` option@NiklasRosenstein
Fix fix `-h,--help` when no Novella build script is available in the current directory@NiklasRosenstein
Hygiene cleanup build logic@NiklasRosenstein
Improvement `@cat` tag registers reference file to be watched for changes@NiklasRosenstein
Improvement add `MkdocsUpdateConfigAction.upadte()` and `.update_with()`, update MkDocs config template to add Material features@NiklasRosenstein

0.1.6 (2022-02-24)

TypeDescriptionPRIssuesAuthor
Improvement enable `admonition` extension in MkDocs config template@NiklasRosenstein
Feature add `novella.repository` module@NiklasRosenstein

0.1.5 (2022-02-24)

TypeDescriptionPRIssuesAuthor
Improvement `@shell` inline tag strips output@NiklasRosenstein

0.1.4 (2022-02-24)

TypeDescriptionPRIssuesAuthor
Improvement `@shell` tag can now be used inline@NiklasRosenstein

0.1.3 (2022-02-23)

TypeDescriptionPRIssuesAuthor
Fix fix return code when an error is encountered in the pipeline@NiklasRosenstein

0.1.2 (2022-02-22)

TypeDescriptionPRIssuesAuthor
Breaking change rename `MkdocsTemplate.apply_default_config` to `~.apply_config`, make adding of `mkdocs-update-config` action unconditional and allow updating the MkDocs site name seperate from applying the default config@NiklasRosenstein
Feature implement automatic detection of Git repository URL and current branch name to inject MkDocs `repo_url` and `edit_uri` settings1@NiklasRosenstein
Hygiene downgrade minimum pyyaml dependency requirement (`>=4.0`)@NiklasRosenstein

0.1.1 (2022-02-22)

TypeDescriptionPRIssuesAuthor
Feature support `slice_lines` option for `@cat` tag@NiklasRosenstein
Docs include Mkdocs default configuration delivered with Novella in `MkdocsApplDefaultAction` docstring@NiklasRosenstein
Feature implement `@shell` tag preprocessor@NiklasRosenstein