- Fix
to_htmlfilter.
- Better handling of including partials with custom sites.
- Add support for
CSRF_TRUSTED_ORIGINS. - Support
django-unicorncomponents in a custom site.
- Use a custom staticfiles finder so
collectstaticwill copy static files for each site.
- Better support for multiple sites.
- Do not add the base directory when running collectstatic.
- Re-publish.
- Default to the first site if the request header is unknown.
- Clean up code.
- Better support for multiple domains and custom sites.
- Add
coltrane.tomlsettings file.
- Automatically enable
dj-anglesif the library is installed. - Experimental support for multiple domains.
Breaking changes
- Drop support for Python 3.8.
- Remove loading deprecated
data.jsonfile.
- Handle string, date, epoch in
publish_dateand convert them to timezone-aware datetime.
- Prevent missing
compresstemplatetag from raising an error when calling thecompressmanagement command.
- Set
COMPRESS_OFFLINE=Truewhen running thecompressmanagement command.
- Add all environment variables to
settings.ENV, not just the variables from.env.
- Update default
Dockerfileto fix some deployment problems.
- Include variables from
.envfile insettings.ENV. - Rewrite all docs to remove any perceived dependency on
poetry. - Create nested folder structure for new sites.
- Add
coltranecontext template variable to expose thecoltranesettings. - Add support for
django-compressor. - Add support for redirects.
- Bump
rich-clickdependency and slightly better command aliases support.
- Parse JSON5 data as UTF-8.
- Create example
Dockerfileandgunicorn.conf.pyfiles for easier deployments ofcoltraneapps. - Add the ability to use JSON5 for data files.
Breaking changes
- Remove loading
data.json. All data should be in JSON files in thedatadirectory. - The default markdown renderer is now
mistuneinstead ofmarkdown2. The next version ofcoltranewill remove the option to usemarkdown2.
- Add
COLTRANE_IS_SECUREenv variable. - Add
django.middleware.gzip.GZipMiddleware,django.middleware.http.ConditionalGetMiddleware,django.middleware.csrf.CsrfViewMiddlewaremiddlewares.
django-unicornintegration.- Fix: Passing
INSTALLED_APPSintoinitnow does not override the default apps.
- Add
DISABLE_WILDCARD_TEMPLATESsetting. - Add
data,slug,template, andnowto direct HTML template for as much parity tomarkdowncontent as possible.
- Support directory wildcards.
- Add
pathstemplate tag.
- Ability to configure cache.
- Allow content or data directory to be specified #48.
- Fix: Handle invalid JSON data #48.
- If a markdown file with a slug cannot be found, look for a template with the same slug. Special case for
*.htmlwhich can be a fall-back option to render for any slug. - Add
raise_404template tag. - Add
last_pathtemplate tag.
- Support Django template tags with the
mistunemarkdown renderer.
- Include extra files when building the static site.
- Add
EXTRA_FILE_NAMESsetting to support serving static files likerobots.txt.
- Add support for rendering markdown with
mistune. See MARKDOWN_RENDERED for how to enable.mistunewill be the default renderer after 0.22.0 because it is 1) faster rendering markdown thanmarkdown2, 2) enables new functionality likeabbr, 3) fixed a bug in the generation of the tables of contents HTML, and 4) has a plugin architecture to add new features. - Improve table of contents rendering for
mistune.
- Add
order_bytodirectory_contentstemplatetag. - Fix
TOCoutputting 'None' when it should beNone.
- Add
to_htmltemplate tag. #37 by Tobi-De - Breaking change: change
datetopublish_datein metadata. #39 by Tobi-De - Breaking change: change
SITEsetting toSITE_URL. - Automatically add
verbatimtemplatetag around code fences.
- Update project name to
coltrane.
- Fix bug where templatetags could not be loaded when the base directory was ".".
- Add
requestto the template context when building static sites.
- Fix bug where static site path was incorrect.
- Add
tocto the template context which provides a table of contents for the markdown.
- Fix bug with relative URLs when generating
sitemap.xml - Automatic generation of
rss.xmlfile
- Create
COLTRANE_SITEsetting in.envfile duringcreatecommand
- Output an error if rendering fails during
recordcommand include_mdtemplate tagparentfilter- Serving of
/sitemap.xmlfor standalone - Automatic creation of
sitemap.xmlduringrecordcommand
Breaking changes
COLTRANE_SITEis required in .env file
- Include all frontmatter metadata in
directory_contentstemplate tag output - Parse
datefrontmatter intodatetime - Parse
draftfrontmatter intoboolean
directory_contentstemplate tag- Add
django-fastdevfor more immediate feedback when an invalid template variable is used - Show error message if a markdown file cannot be output to HTML
- Fix bug where
index.mdfiles in a sub-directory were not output correctly
- Add
--threadsoption torecordcommand
- Multithread
recordcommand - Better console output for
recordcommand
- Fix elapsed time for
recordcommand - More performant collection of markdown content files
- Don't include markdown or data when collecting static files while running
record
- Add
--forceoption tocreatecommand - Automatically refresh the browser when markdown content or data is saved
- Fix generating root
index.md
- Add support for static files
- Add
watchmansupport - Add
whitenoisefor static handling - Add
--forceoption torecordcommand
- Read
INTERNAL_IPSfrom .env file - Add
nowto template variables - Include found template tags in built-ins
- Include
humanizetemplate tags in built-ins
- Support nested directories for content and data
- Update default markdown extras
- Add support for markdown frontmatter
- Support custom templates specified in markdown frontmatter
- Add
buildmaangement command - Store build manifest so that HTML doesn't re-render if possible
- Loosen dependencies
- Unit tests, coverage, and fixes for mypy
- Bug fixes
- Bug fixes
- Basic Django app which renders markdown files at a URL
- Basic script