All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add support for custom templates, by @sindrehan.
- Remove support for Python 3.9.
- Add Python 3.14 to the build matrix.
- Remove Codecov from build and README.
- Update type annotations to Python >= 3.10.
- Improve
read_from_source()to support an optional CWD parameter used to look for the OpenAPI spec. The OpenAPI plugin should supply that CWD relative to the current markdown file being processed. Markdown customarily uses paths relative to the document itself. Existing relative paths will not break, since this will attempt paths relative to both working directories, by @joewlambeth. - Add possibility to enforce row or col span PR #74, by @BFuhry.
- Correct the contribs plugin to use the
--followoption when obtaining contributors' information.
- Improve the
contribsplugin to not pollute the logs withdateutil.parser.ParseErrorwhile working on a new file that is not committed in Git, yet. - Add the possibility to enable and disable the
contribsplugin by env variable, through plugin configuration. To use, specify the following setting:
- neoteroi.contribs:
enabled_by_env: "GIT_CONTRIBS_ON" # Use the name you wish here for the env var- When
enabled_by_envis not empty, the Git contributors plugin is only enabled if such variable exists and its value is a value in{"1", "true"}(case insensitive). This is useful to disable the plugin by default during local development, and enable it only during an automated build that builds the documentation for publishing. The rationale for this setting is that this plugin has an heavy impact on the build performance as it uses the Git CLI to obtain the list of contributors who worked on each page. - Remove Python 3.8 from the build matrix, add 3.13.
- Improve the
cardsplugin to automatically use cards' titles for thealtproperty of their images, whenaltis not specified. See #63, reported by @Valerie-ts.
- Show event description in Gantt diagrams, by @changbowen
- Add possibility to configure months time format in Gantt diagrams, by @yasamoka
- Adds support for running tests using Python 3.12, and adds Python 3.12 to the
build matrix. Note: only tests code did not support Python 3.12 because it
used
pkg_resources.
- Unpins the dependencies on
mkdocsandhttpx, to fix #42.
- Adds support for icons in cards (by @Andy2003).
- Adds support for anchors with target="_blank" in cards.
- Fixes detail in the
contribsplugin: when the name is specified for a contributor by email address, it is used. - Improves
pyproject.toml. - Adds
py.typedfiles.
- Improves the
contribsplugin, adding the possibility to document contributors for a page also using.txtfiles close to.mdfiles. This can be useful in several cases: -
- To document contributors who worked outside of Git, for example when providing pictures for the page, or written content provided to someone who is adding content to the MkDocs site.
-
- To document contributors following a Git history re-write
- Improves the
contribsplugin, adding the possibility to exclude files by glob patterns (fix #33). - Improves the
contribsplugin, adding the possibility to merge contributors by name, for scenarios when the same person commits using different names (Git reports different contributors in such cases) and it is preferred displaying information aggregated as single contributor.
- Adds the possibility to specify a
classfor the root HTML element ofcards. - Fixes a bug in the
contribsplugin (adds a carriage return before the contribution fragment). - Modifies the packages to group all extensions under
neoteroi.mkdocsnamespace. - Replaces
setup.pywithpyproject.toml.
- Corrects the pattern handling name and email for the
contribsplugin. - Adds tests for the
contribsplugin.
- Corrects bug in the
contribsplugin, causing failures in certain CI/CD solutions and improves its safety and performance (removesshell=True!). - Adds option to apply a class to specific contributors, for simpler styling.
- Minor improvements to styles.
- Improves the
contributorsplugin: -
- Adds the possibility to exclude contributor information (for example to not display contributions from bots)
-
- Adds the possibility to merge contributors' information for cases in which the same person commits using two different email addresses
-
- Adds the possibility to display an element with the count of contributors
- Resolves a small issue in pip package resolution
- Improves the Gantt extension:
-
- now supports multiple periods in the same row
-
- now supports activities using the start date from the previous activity (automatic dates)
- Adds a contributors plugin (
neoteroi.contribs) to display contributors' information in each page, obtaining information from the Git repository at build time ⭐
- Adds common classes to enable custom extensions reading configuration from:
-
- YAML, JSON, or CSV embedded in the markdown source
-
- YAML, JSON, or CSV fetched from a URL at build time (simple HTTP GET), with the option to define a custom fetcher for example for use cases that require authentication
- Adds the
Cardsextension, to render cards - Adds the
Timelineextension, to render timelines - Adds the
Projectsextension, with a control to renderGanttdiagrams ✨ - Adds the link to the documentation site
- Drops support for Python 3.7 in the build pipeline (code might still work but is not ensured)
- Adds support for OAD specification organized in different files (fix #5)
- Improves
mkdocsoad.css
- Fixes a bug in
setup.py(#4) - Fixes entry_points related but (#7)
- Publishes the first extension for Python Markdown of the repository:
spantable, custom Markdown table with support forcolspanandrowspan - Improves the support for Material for MkDocs themes in
mkdocsoad
- First release with plugin for OpenAPI Documentation