zola/CHANGELOG.md

640 lines
29 KiB
Markdown
Raw Normal View History

2017-03-27 02:48:01 +00:00
# Changelog
2023-03-19 19:23:27 +00:00
## 0.17.2 (2023-03-19)
2023-02-24 21:21:25 +00:00
2023-03-08 21:48:27 +00:00
- Fix one more invalid error with colocated directories
- Revert "Recognize links starting with `www` as external for the link checker" as they won't be external links in practice
2023-03-15 19:23:40 +00:00
- Use page.summary for atom.xml if available
- Fix cachebusting not working with binary files
- Fix warning message for multilingual sites
2023-02-24 21:21:25 +00:00
2023-02-24 21:03:52 +00:00
## 0.17.1 (2023-02-24)
- Fix bugs with colocated directories in the root `content` directory
2023-02-24 21:03:52 +00:00
- Fix `zola serve` not respecting `preserve_dotfiles_in_output`
2023-02-22 21:20:40 +00:00
- Add `generate_feed` field to the `section` object in templates
2023-02-16 16:21:31 +00:00
## 0.17.0 (2023-02-16)
2022-08-14 14:09:45 +00:00
2022-10-11 17:40:14 +00:00
### Breaking
- `get_file_hash` is removed, use `get_hash` instead. Arguments do not change
2023-01-12 22:01:06 +00:00
- Replace libsass by a Rust implementation: [grass](https://github.com/connorskees/grass). See https://sass-lang.com/documentation/breaking-changes
for breaking changes with libsass: look for "beginning in Dart Sass"
2023-01-17 19:59:29 +00:00
- Merge settings for the default language set in the root of `config.toml` and in the `[languages.{default_lang}]` section.
2023-02-16 16:21:31 +00:00
This will error if the same keys are defined multiple times
- Code blocks content are no longer included in the search index
- Remove built-ins shortcodes
- Having a file called `index.md` in a folder with a `_index.md` is now an error
- Ignore temp files from vim/emacs/macos/etc as well as files without extensions when getting colocated assets
- Now integrates the file stem of the original file into the processed images filename: {stem}.{hash}.{extension}
2022-10-11 17:40:14 +00:00
### Other
2022-08-24 20:44:52 +00:00
- Add `get_taxonomy_term` function
2023-01-12 22:33:07 +00:00
- Add `slugify.paths_keep_dates` option
2022-08-24 20:44:52 +00:00
- Add command to generate shell completions
2023-01-12 22:33:07 +00:00
- Fix link generation to co-located assets other than images
2022-10-11 17:40:14 +00:00
- Add `get_hash` Tera function
2022-10-17 17:55:25 +00:00
- Minify CSS and JS embedded in HTML
2022-10-27 19:42:54 +00:00
- Fix slow image processing
2023-01-12 22:33:07 +00:00
- Fix `current_url` in taxonomy term
- Add new flag `zola serve --no_port_append` to give the ability to remove port from base url
2023-01-02 21:48:39 +00:00
- `config.markdown` is now available in templates
- Add `preserve_dotfiles_in_output` option in the config
2023-01-12 22:51:35 +00:00
- Add Elasticlunr JSON output for the search index
2023-01-12 22:33:07 +00:00
- Add sorting by slug for pages
2023-01-17 19:59:29 +00:00
- Enable locale date formatting for the Tera `date` filter
2023-01-18 19:55:47 +00:00
- Cachebust fingerprint is now only 20 chars long
- Add `text` alias for plain text highlighting (before, only `txt` was used)
- Adds a new field to `page`: `colocated_path` that points to the folder of the current file being rendered if it's a colocated folder. None otherwise.
2023-02-11 14:23:48 +00:00
- Add `author` as a first-class property to the config and `authors` to pages
- Allows using external URL for `redirect_to`
2023-02-14 20:13:25 +00:00
- Recognize links starting with `www` as external for the link checker
2022-08-24 20:44:52 +00:00
2022-08-14 13:47:10 +00:00
## 0.16.1 (2022-08-14)
2022-07-17 19:18:02 +00:00
2022-08-07 10:44:42 +00:00
- Fix many Windows bugs
- Fix overriding built-in shortcodes
2022-08-10 21:39:13 +00:00
- Support .yml files with `load_data`
2022-07-17 19:18:02 +00:00
2022-07-16 21:27:02 +00:00
## 0.16.0 (2022-07-16)
2022-01-23 13:38:08 +00:00
2022-03-03 23:16:48 +00:00
### Breaking
- Switch to pulldown-cmark anchor system rather than ours, some (very niche) edge cases are not supported anymore, you can
2022-03-03 23:16:48 +00:00
also specify classes on headers now
- Now outputs empty taxonomies instead of ignoring them
2022-05-10 20:33:57 +00:00
- Unify all pages sorting variable names in templates to `lower`/`higher` in order to make it easy to re-use templates and it
was becoming hard to come up with names to be honest
2022-03-03 23:16:48 +00:00
### Other
- Fix markup for fenced code with linenos
- Make `ignored_content` work with nested paths and directories
- `zola serve/build` can now run from anywhere in a zola directory
2022-03-04 20:35:24 +00:00
- Add XML support to `load_data`
- Add YAML support to `load_data`
2022-04-26 20:27:20 +00:00
- `skip_prefixes` is now checked before parsing external link URLs
- Add `render` attribute to taxonomies configuration in `config.toml`, for when you don't want to render
any pages related to that taxonomy
2022-05-02 20:51:01 +00:00
- Serialize `transparent` field from front-matter of sections
- Use Zola Tera instance for markdown filter: this means you have access to the same Tera functions as in shortcodes
- Ignore sections with `render=false` when looking for path collisions
2022-05-08 12:10:29 +00:00
- Add support for backlinks
- Add a warning mode for internal/external link checking in case you don't want zola to stop the build on invalid links
- Always follow symlinks when loading the site/assets
2022-06-10 18:14:38 +00:00
- Add `rel="alternate"` to Atom post links
- Fix taxonomy `current_path`
- Fix feed location for taxonomies not in the default language
2022-06-13 21:37:39 +00:00
- Add `title_bytes` sorting method
2022-07-11 22:10:18 +00:00
- Add `insert_anchor = "heading"`, which allows users to use the entire heading as a link
- Apply orientation transformation based on EXIF data
- Fix generated homepages not having their `translations` filled properly
2022-01-23 13:38:08 +00:00
2022-01-23 12:54:38 +00:00
## 0.15.3 (2022-01-23)
2021-12-10 21:06:28 +00:00
2022-01-13 22:53:01 +00:00
- Fix shortcodes not being rendered in code blocks
- Fix colocated assets with no extensions being ignored
- Add `headers` parameters to `load_data`
- Fix themes `robots.txt` not being rendered
- Check for local internal anchors in HTML content of markdown files
- Fix issues loading custom syntaxes if highlight_theme = css
2021-12-10 21:06:28 +00:00
2021-12-10 21:04:20 +00:00
## 0.15.2 (2021-12-10)
- Fix HTML shortcodes
2021-12-09 18:49:18 +00:00
2021-12-08 19:40:50 +00:00
## 0.15.1 (2021-12-08)
2021-12-06 07:58:05 +00:00
2021-12-07 19:22:34 +00:00
- Fix markdown shortcodes not being rendered correctly
- Fix config data not getting to the templates
2021-12-05 18:18:24 +00:00
## 0.15.0 (2021-12-05)
2021-08-24 07:14:18 +00:00
2021-09-13 19:16:55 +00:00
- Fix config file watching
- Support custom syntax highlighting themes
- Add a `required` argument to taxonomy template functions to allow them to return empty taxonomies
- Support colocating subfolders
2021-12-05 18:18:24 +00:00
- Shortcodes and `anchor-link.html` can now access the `lang` context
2021-09-13 19:16:55 +00:00
- Add prompt before replacing the output directory with `zola build` if the `output-dir` flag is given
- Shortcode handling has been completely rewritten, solving many issues
- Also add internal links starting with `#` without any internal Zola link
2021-08-24 07:14:18 +00:00
2021-08-24 06:50:44 +00:00
## 0.14.1 (2021-08-24)
2021-07-19 18:05:04 +00:00
2021-08-12 06:54:55 +00:00
- HTML minification now respects HTML spec (it still worked before because browsers can handle invalid HTML well and minifiers take advantage of it)
- Show all errors on `zola serve`
- `zola serve` now properly returns a 404
- Fix `zola serve` having issues with config files in separate dir
- Fix code blocks content not being escaped when not using syntax highlighting
- Add missing `draft` attribute to the `section` variable in templates
2021-07-19 18:05:04 +00:00
2021-07-19 17:32:26 +00:00
## 0.14.0 (2021-07-19)
### Breaking
- Newlines are now required after the closing `+++` of front-matter
2021-05-17 18:26:50 +00:00
- `resize_image` now returns an object: `{url, static_path}` instead of just the URL so you can follow up with other functions on the new file if needed
2021-06-11 19:14:45 +00:00
- `get_file_hash` now has the `base64` option set to `true` by default (from `false`) since it's mainly used for integrity hashes which are base64
- i18n rework: languages now have their sections in `config.toml` to set up all their options
1. taxonomies don't have a `lang` anymore in the config, you need to declare them in their respective language section
2021-03-13 20:04:01 +00:00
2. the `config` variable in templates has been changed and is now a stripped down language aware version of the previous `config`
object
2021-03-21 17:15:38 +00:00
3. Search settings are now language specific
4. Translations are now nested in the languages table
2021-06-11 19:14:45 +00:00
- Paths unification:
1. `get_url` does not load automatically from the `static` folder anymore
2. New path resolving logic for all on-disk files: replace `@/` by `content/`, trim leading `/` and
search in $BASE_DIR + $path, $BASE_DIR + static + $path and $BASE_DIR + content + $path
3. `get_file_hash` now returns base64 encoded hash by default
4. all functions working on files can now only load files in the Zola directory
2021-06-11 21:39:48 +00:00
5. `resize_image` return value has changed
6. `page.assets` now start with a `/` to match `section.assets` and other paths
### Other
2021-07-10 06:58:51 +00:00
- Internal links are now resolved in the `markdown` filter in the templates (#1296 #1316)
2021-02-02 19:20:39 +00:00
- Add a `required` argument to `load_data` so it can be allowed to fail
2021-02-21 07:41:49 +00:00
- `get_file_hash` now supports returning the base64 encoded hash
2021-07-10 06:58:51 +00:00
- The `markdown` filter not renders shortcodes
2021-02-21 07:41:49 +00:00
- Image processing now supports WebP
- Fix `zola serve` failing for some static files
- Fix `zola serve` not picking up directory renaming
2021-02-22 20:27:50 +00:00
- Add `path` to the taxonomy terms to be on par with pages and sections
- Add the `base16-aterlierdune-light` syntax highlight theme
2021-04-21 19:43:02 +00:00
- Improve link checking: less concurrency and try to not overload the servers
- Allow using POST for `load_data`, along with a body to POST and allow it to fail
2021-05-10 20:09:36 +00:00
- Add Zig and Protobuf syntax highlighting
- Footnotes links are now stripped from summaries - they were not linking to anything.
2021-05-17 18:26:50 +00:00
- `get_url` and `get_taxonomy_url` are now marked as safe, no need to call `| safe` on their output
- Add `allow_missing` optional argument to `get_image_metadata` to not error if the file is not found
2021-07-10 06:58:51 +00:00
- Add `permalink` to `Taxonomy` in templates
- Syntax highlighting improvements, see documentation for details on each
1. Add CSS class based syntax highlighting
2. Allow hiding specific lines
3. Allow showing line numbers
2021-01-09 09:21:47 +00:00
## 0.13.0 (2021-01-09)
2020-09-28 07:50:16 +00:00
- Enable HTML minification
2020-11-06 10:46:32 +00:00
- Support `output_dir` in `config.toml`
2020-10-30 15:52:01 +00:00
- Allow sections to be drafted
2020-11-15 09:13:38 +00:00
- Allow specifying default language in filenames
- Render emoji in Markdown content if the `render_emoji` option is enabled
2020-11-15 09:13:38 +00:00
- Enable YouTube privacy mode for the YouTube shortcode
2021-01-02 08:29:28 +00:00
- Add language as class to the `<code>` block and as `data-lang`
- Add bibtex to `load_data`
- Add a `[markdown]` section to `config.toml` to configure rendering
- Add `highlight_code` and `highlight_theme` to a `[markdown]` section in `config.toml`
- Add `external_links_target_blank`, `external_links_no_follow` and `external_links_no_referrer`
2020-11-27 10:11:19 +00:00
- Add a `smart_punctuation` option in the `[markdown]` section in `config.toml` to turn elements like dots and dashes
into their typographic forms
2020-12-14 19:45:32 +00:00
- Add iteration count variable `nth` for shortcodes to know how many times a shortcode has been invoked in a given
content
- Update some highlighting syntaxes and the TS syntax will now be used instead of JS due to issues with it
2020-12-22 20:35:15 +00:00
- Remove `zola serve --watch-only`: since we build the HTML in memory and not on disk, it doesn't make sense anymore
- Update clojure syntax
- Prefer extra syntaxes to the default ones if we have a match for language
2021-01-07 18:16:31 +00:00
- Fix `zola serve` having issues with non-ascii paths
2021-01-09 09:21:47 +00:00
- 404 page now gets the site default language as `lang`
2020-10-09 07:18:14 +00:00
2020-09-28 07:36:16 +00:00
## 0.12.2 (2020-09-28)
- Fix `zola serve` being broken on reload
2020-09-27 12:15:44 +00:00
2020-09-27 09:19:20 +00:00
## 0.12.1 (2020-09-27)
2020-09-04 21:44:30 +00:00
2020-09-22 10:22:26 +00:00
- Add line highlighting in code blocks
- Fix the new `zola serve` being broken on Windows
- Fix slugified taxonomies not being rendered at the right path
2020-09-27 09:19:20 +00:00
- Fix issues with shortcodes with newlines and read more
2020-09-04 21:44:30 +00:00
2020-09-04 20:42:07 +00:00
## 0.12.0 (2020-09-04)
2020-07-29 18:49:15 +00:00
### Breaking
- All paths like `current_path`, `page.path`, `section.path` (except colocated assets) now have a leading `/`
2020-09-03 19:22:20 +00:00
- Search index generation for Chinese and Japanese has been disabled by default as it leads to a big increase in
binary size
2020-07-29 18:49:15 +00:00
### Other
2020-06-09 20:30:10 +00:00
- Add 2 syntax highlighting themes: `green` and `railsbase16-green-screen-dark`
2020-06-11 16:29:05 +00:00
- Enable task lists in Markdown
- Add support for SVG in `get_image_metadata`
2020-06-18 19:22:48 +00:00
- Fix parsing of dates in arrays in `extra`
- Add a `--force` argument to `zola init` to allow creating a Zola site in a non-empty directory
2020-06-18 20:29:25 +00:00
- Make themes more flexible: `include` can now be used
2020-07-24 19:37:57 +00:00
- Make search index generation configurable, see docs for examples
- Fix Sass trying to load folders starting with `_`, causing issues with frameworks
- Update livereload.js version
2020-07-29 18:49:15 +00:00
- Add Markdown-outputting shortcodes
2020-09-04 21:39:12 +00:00
- Taxonomies with the same name but different casing are now merged, eg Author and author
2020-06-09 20:30:10 +00:00
2020-05-25 08:26:30 +00:00
## 0.11.0 (2020-05-25)
Support and default to generating Atom feeds This includes several breaking changes, but they’re easy to adjust for. Atom 1.0 is superior to RSS 2.0 in a number of ways, both technical and legal, though information from the last decade is hard to find. http://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared has some info which is probably still mostly correct. How do RSS and Atom compare in terms of implementation support? The impression I get is that proper Atom support in normal content websites has been universal for over twelve years, but that support in podcasts was not quite so good, but getting there, over twelve years ago. I have no more recent facts or figures; no one talks about this stuff these days. I remember investigating this stuff back in 2011–2013 and coming to the same conclusion. At that time, I went with Atom on websites and RSS in podcasts. Now I’d just go full Atom and hang any podcast tools that don’t support Atom, because Atom’s semantics truly are much better. In light of all this, I make the bold recommendation to default to Atom. Nonetheless, for compatibility for existing users, and for those that have Opinions, I’ve retained the RSS template, so that you can escape the breaking change easily. I personally prefer to give feeds a basename that doesn’t mention “Atom” or “RSS”, e.g. “feed.xml”. I’ll be doing that myself, as I’ll be using my own template with more Atom features anyway, like author information, taxonomies and making the title field HTML. Some notes about the Atom feed template: - I went with atom.xml rather than something like feed.atom (the .atom file format being registered for this purpose by RFC4287) due to lack of confidence that it’ll be served with the right MIME type. .xml is a safer default. - It might be nice to get Zola’s version number into the <generator> tag. Not for any particularly good reason, y’know. Just picture it: <generator uri="https://www.getzola.org/" version="0.10.0"> Zola </generator> - I’d like to get taxonomies into the feed, but this requires exposing a little more info than is currently exposed. I think it’d require `TaxonomyConfig` to preferably have a new member `permalink` added (which should be equivalent to something like `config.base_url ~ "/" ~ taxonomy.slug ~ "/"`), and for the feed to get all the taxonomies passed into it (`taxonomies: HashMap<String, TaxonomyTerm>`). Then, the template could be like this, inside the entry: {% for taxonomy, terms in page.taxonomies %} {% for term in terms %} <category scheme="{{ taxonomies[taxonomy].permalink }}" term="{{ term.slug }}" label="{{ term.name }}" /> {% endfor %} {% endfor %} Other remarks: - I have added a date field `extra.updated` to my posts and include that in the feed; I’ve observed others with a similar field. I believe this should be included as an official field. I’m inclined to add author to at least config.toml, too, for feeds. - We need to have a link from the docs to the source of the built-in templates, to help people that wish to alter it.
2019-08-11 10:25:24 +00:00
### Breaking
- RSS feed support has been altered to allow, *and default to*, Atom feeds, Atom being technically superior and just as widely-supported in normal use cases.
- New config value `feed_filename`, defaulting to `atom.xml` (change to `rss.xml` to reinstate the old behaviour)
- Config value `rss_limit` is renamed to `feed_limit`
- Config value `languages.*.rss` is renamed to `languages.*.feed`
- Config value `generate_rss` is renamed to `generate_feed`
- Taxonomy value `rss` is renamed to `feed`
Support and default to generating Atom feeds This includes several breaking changes, but they’re easy to adjust for. Atom 1.0 is superior to RSS 2.0 in a number of ways, both technical and legal, though information from the last decade is hard to find. http://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared has some info which is probably still mostly correct. How do RSS and Atom compare in terms of implementation support? The impression I get is that proper Atom support in normal content websites has been universal for over twelve years, but that support in podcasts was not quite so good, but getting there, over twelve years ago. I have no more recent facts or figures; no one talks about this stuff these days. I remember investigating this stuff back in 2011–2013 and coming to the same conclusion. At that time, I went with Atom on websites and RSS in podcasts. Now I’d just go full Atom and hang any podcast tools that don’t support Atom, because Atom’s semantics truly are much better. In light of all this, I make the bold recommendation to default to Atom. Nonetheless, for compatibility for existing users, and for those that have Opinions, I’ve retained the RSS template, so that you can escape the breaking change easily. I personally prefer to give feeds a basename that doesn’t mention “Atom” or “RSS”, e.g. “feed.xml”. I’ll be doing that myself, as I’ll be using my own template with more Atom features anyway, like author information, taxonomies and making the title field HTML. Some notes about the Atom feed template: - I went with atom.xml rather than something like feed.atom (the .atom file format being registered for this purpose by RFC4287) due to lack of confidence that it’ll be served with the right MIME type. .xml is a safer default. - It might be nice to get Zola’s version number into the <generator> tag. Not for any particularly good reason, y’know. Just picture it: <generator uri="https://www.getzola.org/" version="0.10.0"> Zola </generator> - I’d like to get taxonomies into the feed, but this requires exposing a little more info than is currently exposed. I think it’d require `TaxonomyConfig` to preferably have a new member `permalink` added (which should be equivalent to something like `config.base_url ~ "/" ~ taxonomy.slug ~ "/"`), and for the feed to get all the taxonomies passed into it (`taxonomies: HashMap<String, TaxonomyTerm>`). Then, the template could be like this, inside the entry: {% for taxonomy, terms in page.taxonomies %} {% for term in terms %} <category scheme="{{ taxonomies[taxonomy].permalink }}" term="{{ term.slug }}" label="{{ term.name }}" /> {% endfor %} {% endfor %} Other remarks: - I have added a date field `extra.updated` to my posts and include that in the feed; I’ve observed others with a similar field. I believe this should be included as an official field. I’m inclined to add author to at least config.toml, too, for feeds. - We need to have a link from the docs to the source of the built-in templates, to help people that wish to alter it.
2019-08-11 10:25:24 +00:00
Users with existing feeds should either set `feed_filename = "rss.xml"` in config.toml to keep things the same, or set up a 3xx redirect from rss.xml to atom.xml so that existing feed consumers arent broken.
- The feed template variable `last_build_date` is renamed to `last_updated` to more accurately reflect its semantics
- The sitemap templates `SitemapEntry` types `date` field has been renamed to `updated` to reflect that it will use the `updated` front-matter field if available, rather than `date`
2020-06-03 13:12:09 +00:00
- Code blocks are now wrapped in `<pre><code>` instead of just `<pre>`
### Other
- Add `updated` front-matter field for pages, which sitemap templates will use for the `SitemapEntry.date` field instead of the `date` front-matter field, and which the default Atom feed template will use
- Add `lang` to the feed template context
- Add `taxonomy` and `term` to the feed template context for taxonomy feeds
- Fix link checker not looking for anchor with capital id/name
- Pass missing `lang` template parameter to taxonomy list template
2020-05-23 09:51:08 +00:00
- Fix default index section not having its path set to '/'
- Change cachebust strategy to use SHA256 instead of timestamp
2020-03-12 17:44:14 +00:00
## 0.10.1 (2020-03-12)
- Set user agent for HTTP requests
- Add nyx-bold highlight theme
- Add lyric and subtitles highlighting
- Enable strikethrough in markdown filter
2020-02-17 19:05:37 +00:00
2020-02-17 09:45:52 +00:00
## 0.10.0 (2020-02-17)
2019-10-04 01:48:57 +00:00
2019-10-28 18:28:23 +00:00
### Breaking
- Remove `toc` variable in section/page context and pass it to `page.toc` and `section.toc` instead so they are
accessible everywhere
2019-10-08 19:31:23 +00:00
### Other
- Add zenburn syntax highlighting theme
2019-10-28 18:28:23 +00:00
- Fix `zola init .`
- Add `total_pages` to paginator
- Do not prepend URL prefix to links that start with a scheme
2019-10-30 15:17:22 +00:00
- Allow skipping anchor checking in `zola check` for some URL prefixes
2019-12-01 17:03:24 +00:00
- Allow skipping prefixes in `zola check`
- Check for path collisions when building the site
2020-02-11 21:30:30 +00:00
- Fix bug in template extension with themes
- Use Rustls instead of openssl
- The continue reading HTML element is now a `<span>` instead of a `<p>`
2020-02-11 21:30:30 +00:00
- Update livereload.js
- Add --root global argument
2019-10-04 01:48:57 +00:00
2019-09-28 03:18:37 +00:00
## 0.9.0 (2019-09-28)
2019-07-10 21:38:32 +00:00
2019-07-19 09:10:28 +00:00
### Breaking
2019-08-24 20:23:08 +00:00
- Add `--drafts` flag to `build`, `serve` and `check` to load drafts. Drafts are never loaded by default anymore
2019-09-25 02:12:13 +00:00
- Using `fit` in `resize_image` on an image smaller than the given height/width is now a no-op and will not upscale images anymore
2019-07-19 09:10:28 +00:00
### Other
2019-07-10 21:38:32 +00:00
- Add `--open` flag to open server URL in default browser
- Fix sitemaps namespace & do not urlencode URLs
2019-07-10 21:38:32 +00:00
- Update livereload
- Add `hard_link_static` config option to hard link things in the static directory instead of copying
- Add warning for old style internal links since they would still function silently
- Print some counts when running `zola check`
- Re-render all pages/sections when `anchor-link.html` is changed
- Taxonomies can now have the same name in multiple languages
2019-08-13 18:01:17 +00:00
- `zola init` can now be create sites inside the current directory
- Fix table of contents generation for deep heading levels
2019-08-24 20:23:08 +00:00
- Add `lang` in all templates context except sitemap, robots
- Add `lang` parameter to `get_taxonomy` and `get_taxonomy_url`
2019-08-24 17:13:26 +00:00
- Rebuild whole site on changes in `themes` changes
- Add one-dark syntax highlighting theme
2019-08-29 18:08:02 +00:00
- Process images on changes in `zola serve` if needed after change
2019-07-10 21:38:32 +00:00
2019-06-22 09:15:40 +00:00
## 0.8.0 (2019-06-22)
2019-05-22 18:52:15 +00:00
### Breaking
- Allow specifying heading IDs. It is a breaking change in the unlikely case you are using `{#..}` in your heading
- Internal links are now starting by `@/` rather than `./` to avoid confusion with relative links
2019-06-23 16:23:48 +00:00
- Latest Tera version now cares about where the `safe` filter is, always put it at the end of an expression.
2019-05-22 18:52:15 +00:00
### Other
- Fix image processing not happening if called from the template
- Add a `zola check` command to that validates the site and checks all external links
2019-06-02 18:21:06 +00:00
- Sections can have `aliases` as well
- Anchors in internal links are now checked for existence
2019-04-29 07:50:23 +00:00
2019-04-28 07:54:13 +00:00
## 0.7.0 (2019-04-28)
2019-03-26 18:27:13 +00:00
### Breaking
- Remove --base-path option, it broke `serve` on Windows and wasn't properly tested
### Other
2019-04-18 16:55:09 +00:00
- Strip wrapping whitespaces from shortcodes
- Sort sitemap elements by `permalink`
2019-04-18 16:55:09 +00:00
2019-03-25 22:15:51 +00:00
## 0.6.0 (2019-03-25)
2018-12-27 09:49:32 +00:00
### Breaking
- `earlier/later` and `lighter/heavier` are not set anymore on pages when rendering
a section
- The table of content for a page/section is now only available as the `toc` variable when
rendering it and not anymore on the `page`/`section` variable
2019-03-11 19:21:13 +00:00
- Default directory for `load_data` is now the root of the site instead of the `content` directory
2019-03-14 20:15:01 +00:00
- Change variable sent to the sitemap template, see documentation for details
### Other
2018-12-28 09:42:26 +00:00
- Add support for content in multiple languages
2019-01-05 10:02:46 +00:00
- Lower latency on serve before rebuilding from 2 to 1 second
- Allow processing PNG and produced images are less blurry
2019-01-17 17:18:02 +00:00
- Add an id (`zola-continue-reading`) to the paragraph generated after a summary
- Add Dracula syntax highlighting theme
- Fix using inline styles in headers
- Fix sections with render=false being shown in sitemap
2019-03-19 19:42:16 +00:00
- Sitemap is now split when there are more than 30 000 links in it
2019-03-14 20:30:53 +00:00
- Add link to sitemap in robots.txt
- Markdown rendering is now fully CommonMark compliant
- `load_data` now defaults to loading file as plain text, unless `format` is passed
or the extension matches csv/toml/json
2019-03-19 19:42:16 +00:00
- Sitemap entries get an additional `extra` field for pages only
2019-03-25 09:00:11 +00:00
- Add a `base-path` command line option to `build` and `serve`
2019-01-17 17:18:02 +00:00
2018-12-27 09:49:32 +00:00
2018-12-14 16:13:24 +00:00
## 0.5.1 (2018-12-14)
2018-11-19 16:19:05 +00:00
- Fix deleting markdown file in `zola serve`
- Fix pagination for taxonomies being broken and add missing documentation for it
- Add missing pager pages from the sitemap
- Allow and parse full RFC339 datetimes in filenames
2018-12-10 17:21:08 +00:00
- Live reload is now enabled for the 404 page on serve
2018-11-19 16:19:05 +00:00
2018-11-17 14:05:35 +00:00
## 0.5.0 (2018-11-17)
2018-09-05 15:26:39 +00:00
2018-09-30 21:49:32 +00:00
### Breaking
- Gutenberg has changed name to `zola`!
2018-09-30 21:49:32 +00:00
- The `pagers` variable of Paginator objects has been removed
- `section.subsections` is now an array of paths to be used with the `get_section`
Tera function
2018-10-18 15:20:51 +00:00
- Table of content now strips HTML from the titles to avoid various issues
- `gutenberg-anchor` CSS class has been renamed `zola-anchor`
2018-11-16 22:51:11 +00:00
- `data` is now a reserved variable name in templates, it is unused right now but
might change soon.
2018-09-30 21:49:32 +00:00
### Others
- Many many times faster (x5-x40) for most sites
2018-09-09 17:43:14 +00:00
- Update dependencies, fixing a few bugs with templates
- Load only .html files in themes from the templates folder
- Background colour is set fewer times when highlighting syntaxes, resulting in smaller HTML filesize
- Link checker will not try to validate email links anymore
- Load table and footnote markdown extensions in `markdown` filter
- `get_url` now defaults to not adding a trailing slash
- Fix `--base-url` not overriding processed images URLs
- Add more Emacs temp file to the ignored patterns in `gutenberg serve`
- Files starting with `.` are not considered pages anymore even if they end with `.md`
2018-09-15 11:16:46 +00:00
- `_processed_images` folder for image processing has been renamed `processed_images` to avoid issues with GitHub Pages
- Syntax highlighting default was mistakenly `true`, it has been set to `false`
2018-09-29 09:20:59 +00:00
- Add NO_COLOR and CLICOLOR support for having colours or not in CLI output
- Fix `robots.txt`template not being used
- RSS feed now takes all available articles by default instead of limiting to 10000
- `templates` directory is now optional
2018-10-15 09:56:03 +00:00
- Add Reason and F# syntax highlighting
- Add `ancestors` to pages and sections pointing to the relative path of all ancestor
sections up to the index to be used with the `get_section` Tera function
2018-10-18 15:33:43 +00:00
- Add a `load_data` Tera function to load local CSV/TOML/JSON files
- Add `relative_path` to pages and sections in templates
- Do not have a trailing slash for the RSS permalinks
- `serve` will now try to find other ports than 1111 rather than panicking
2018-10-22 20:34:38 +00:00
- Ensure content directory exists before rendering aliases
2018-10-23 11:37:23 +00:00
- Do not include drafts in pagination
2018-10-25 14:22:00 +00:00
- Pages filenames starting by a date will now use that date as page date if there isn't one defined in frontmatter
- Accept markdown files starting with BOM
2018-11-03 13:11:38 +00:00
- Add a `watch-only` flag to the `serve` command for when you don't want a webserver
- Add `transparent` sections, for when you want to separate content by sections but want to group them at a higher level (think a `posts` folder with years
that want to use pagination on the index).
- Add `page_template` to section front-matter for when you want to specify the template to use for every page under it
2018-11-10 21:24:27 +00:00
- Improves to `zola serve`: now handles directories renaming
2018-09-05 15:26:39 +00:00
2018-09-03 17:41:30 +00:00
## 0.4.2 (2018-09-03)
- Add assets to section indexes
- Allow users to add custom highlighting syntaxes
- Add Swift, MiniZinc syntaxes and update others
2018-08-25 09:21:02 +00:00
- Handle post summaries better: no more cutting references
2018-08-06 17:40:59 +00:00
## 0.4.1 (2018-08-06)
2018-08-05 08:29:53 +00:00
2018-08-06 17:40:59 +00:00
- Fix live reload of a section content change getting no pages data
2018-08-05 13:03:12 +00:00
- Fix critical bug in `serve` in some OSes
2018-08-06 07:20:54 +00:00
- Update deps, should now build and work correctly on BSDs
2018-08-05 08:29:53 +00:00
2018-08-06 17:40:59 +00:00
## 0.4.0 (2018-08-04)
2018-07-16 08:54:05 +00:00
### Breaking
- Taxonomies have been rewritten from scratch to allow custom ones with RSS and pagination
2018-07-31 13:31:36 +00:00
- `order` sorting has been removed in favour of only having `weight`
2018-08-03 17:47:39 +00:00
- `page.next/page.previous` have been renamed to `page.later/page.earlier` and `page.heavier/page.lighter` depending on the sort method
2018-07-16 08:54:05 +00:00
### Others
- Fix `serve` not working with the config flag
2018-05-11 11:54:16 +00:00
- Websocket port on `live` will not get the first available port instead of a fixed one
2018-05-17 17:04:42 +00:00
- Rewrite markdown rendering to fix all known issues with shortcodes
- Add array arguments to shortcodes and allow single-quote/backtick strings
- Co-located assets are now permalinks
- Words are now counted using unicode rather than whitespaces
2018-05-17 17:08:56 +00:00
- Aliases can now be pointing directly to specific HTML files
- Add `year`, `month` and `day` variables to pages with a date
2018-06-20 15:43:24 +00:00
- Fix panic when live reloading a change on a file without extensions
2018-06-25 17:13:21 +00:00
- Add image resizing support
- Add a 404 template
- Enable preserve-order feature of Tera
- Add an external link checker
- Add `get_taxonomy` global function to return the full taxonomy
2018-06-22 11:33:17 +00:00
## 0.3.4 (2018-06-22)
2018-06-22 11:33:17 +00:00
- `cargo update` as some dependencies didn't compile with current Rust version
- Add CMake syntax highlighting and update other syntax highlighting
2018-03-29 13:30:30 +00:00
## 0.3.3 (2018-03-29)
2018-03-16 18:11:08 +00:00
- Fixed config flag in CLI
- Sitemap entries are now sorted by permalinks to avoid random ordering
- Preserve directory structure from sass folder when copying compiled css files
to the public directory
- Do not require themes to have a static folder
2018-03-19 17:50:04 +00:00
- Now supports indented Sass syntax
2018-03-21 15:18:24 +00:00
- Add search index building
- Update Tera: now has `break` and `continue` in loops
- Gutenberg now creates an anchor link at the position of the `<!-- more -->` tag if you
want to link directly to it
- Fix many shortcode parsing issues
- Correctly copy themes shortcodes so they are useable in content
- Fix internal links not working for markdown files directly in `content` directory
2018-03-16 18:11:08 +00:00
2018-03-05 18:26:21 +00:00
## 0.3.2 (2018-03-05)
- Fix `serve` command trying to read all files as markdown
- Add many syntax highlighting themes
- Fix date being serialised incorrectly in page `extra` section of front-matter
2018-02-15 09:41:49 +00:00
## 0.3.1 (2018-02-15)
2018-01-25 18:12:17 +00:00
2018-02-02 16:34:24 +00:00
- Update Tera and other dependencies
2018-02-15 09:41:49 +00:00
- Add option for inline (ie no `<p>...</p>` wrapping) in markdown filter
2018-02-02 16:34:24 +00:00
- Allow to specify both interface and base_url in `gutenberg serve` for usage in Docker
2018-01-25 18:12:17 +00:00
2018-01-25 14:15:59 +00:00
## 0.3.0 (2018-01-25)
2018-01-02 19:11:19 +00:00
### Breaking
- Change names of individual taxonomies to be plural (ie `tags/my-tag` instead of `tag/my-tag`)
- Front matter now uses TOML dates rather strings: remove quotes from your date value to fix it.
For example: `date = "2001-10-10"` becomes `date = 2001-10-10`
2018-01-16 12:57:31 +00:00
- `language_code` has been renamed `default_language` in preparations of i18n support
2018-01-02 19:11:19 +00:00
### Others
- Add `get_taxonomy_url` to retrieve the permalink of a tag/category
- Fix bug when generating permalinks for taxonomies
2017-11-27 17:09:09 +00:00
- Update to Tera 0.11
- Better UX on first `serve` thanks to some default templates.
2017-12-29 18:33:04 +00:00
- Add `output-dir` to `build` and `serve` to generate the site in a folder other than `public`
2018-01-02 19:11:19 +00:00
- Add Prolog syntax highlighting and update all current syntaxes
2018-01-09 20:57:29 +00:00
- Live reloading now works on shortcode template changes
2018-01-24 12:21:47 +00:00
- `gutenberg serve` now reloads site on `config.toml` changes: you will need to F5 to see any changes though
2018-01-16 12:57:31 +00:00
- Add a `trans` global function that will get return the translation of the given key for the given lang, defaulting
to `config.default_language` if not given
- `gutenberg serve` cleans after itself and deletes the output directory on CTRL+C
2017-11-01 13:58:03 +00:00
## 0.2.2 (2017-11-01)
2017-10-23 08:49:13 +00:00
- Fix shortcodes without arguments being ignored
- Fix shortcodes with markdown chars (_, *, etc) in name and args being ignored
2017-10-24 18:11:39 +00:00
- Fix subsections of index not being filled without a `_index.md`
- Fix generated index section not found in `get_section` global function
2017-10-24 18:11:39 +00:00
- Fix permalink generation for index page
2017-10-25 07:09:55 +00:00
- Add Nim syntax highlighting
2017-10-25 12:49:54 +00:00
- Allow static folder to be missing
- Fix shortcodes args being only passed as strings
2017-10-31 15:41:31 +00:00
- Add `page.components` and `section.components` that are equivalent to `path.split('/')`
2017-11-01 13:58:03 +00:00
- Expose `page.draft` in the template
2017-10-23 08:49:13 +00:00
2017-10-17 09:44:06 +00:00
## 0.2.1 (2017-10-17)
2017-10-16 20:48:59 +00:00
2017-10-17 07:23:17 +00:00
- Fix `base-url` argument to `gutenberg build` being called `base`
- Add syntaxes: Crystal, Elixir, Kotlin
2017-10-16 20:48:59 +00:00
2017-10-05 10:26:29 +00:00
## 0.2.0 (2017-10-05)
2017-09-25 09:55:43 +00:00
- Fix `section.subsections` not being filled correctly
2017-09-26 08:04:18 +00:00
- `section.subsections` can now be sorted by a `weight` attribute on a section front-matter
2017-09-25 09:55:43 +00:00
- Do nothing on directory adding/removal in livereload
- Add back `draft` on pages that was wrongly removed
2017-09-26 08:25:55 +00:00
- Page and Section `path` field is not starting with a `/` anymore
- All Tera global fns are now rebuilt on changes
- Use flags for port/interface in `gutenberg serve`
2017-09-27 14:09:13 +00:00
- Fix various issues with headers markdown rendering
- Rename `insert_anchor` in section front-matter to `insert_anchor_links`
- Remove `insert_anchor_links` from the config: it wasn't used
- Add `class` variable to `gist` shortcode
- Add reading analytics to sections content
2017-10-01 03:51:43 +00:00
- Add config to sitemap template
- Add `permalink` to all taxonomy items (tags & categories)
- Tags in the tags page are now sorting alphabetically instead of by number of pages in them
2017-10-03 15:21:18 +00:00
- Remove deprecated `link` param of `get_url`
- Add 1337 color scheme
- Defaults to compressed Sass output
2017-10-04 00:23:25 +00:00
- Fix regression wrt co-located assets slug detecting
2017-10-04 00:35:37 +00:00
- Rename `url` from page front-matter to `path` to be consistent
- Add a `base-url` flag to the `build` command to override the URL from config.toml
2017-09-25 09:55:43 +00:00
2017-08-31 09:51:18 +00:00
## 0.1.3 (2017-08-31)
- Add themes support
2017-08-10 02:30:19 +00:00
## 0.1.2 (2017-08-10)
- Add `redirect_to` to section front matter to redirect when landing on section
root page
2017-07-27 09:24:43 +00:00
- Make `title` in config optional
- Improved `gutenberg init` UX and users first experience
- Make `get_url` work for any path with optional cachebusting.
2017-08-09 04:42:27 +00:00
- Deprecates `link` param of `get_url` in favour of `path` to be consistent
2017-07-16 02:46:43 +00:00
## 0.1.1 (2017-07-16)
2017-07-15 03:51:32 +00:00
- Fix RSS feed not behaving (https://github.com/Keats/gutenberg/issues/101)
## 0.1.0 (2017-07-14)
2017-06-22 03:01:45 +00:00
- Parallelize all the things
2017-06-29 15:10:24 +00:00
- Add weight sorting
2017-06-29 12:14:08 +00:00
- Remove `section` from the `page` rendering context: this is too expensive. Use
the global function `get_section` if you need to get it
- Put back a 20 page limit on rss feed by default (configurable)
- Remove index page getting all sections: use the `get_section` global fn instead to
only get the ones you need
- Remove pages from pagers in pagination: they were not supposed to be there
2017-07-14 10:26:27 +00:00
- Add built-in Sass compilation support
2017-07-06 13:19:15 +00:00
2017-06-19 09:44:31 +00:00
## 0.0.7 (2017-06-19)
2017-05-30 10:23:07 +00:00
- Sort individual tag/category pages by date
- Add extra builtin shortcode for Streamable videos
- `path` and `permalink` now end with a `/`
2017-06-16 05:05:14 +00:00
- Generate table of contents for each page
- Add `section` to a page Tera context if there is one
2017-06-16 14:09:01 +00:00
- Add `aliases` to pages for when you are changing urls but want to redirect
to the new one
2017-06-19 09:14:13 +00:00
- Name the homepage section `index` (previously empty string)
2017-05-30 10:23:07 +00:00
2017-05-24 12:28:33 +00:00
## 0.0.6 (2017-05-24)
2017-05-16 04:37:00 +00:00
- Fix missing serialized data for sections
- Change the single item template context for categories/tags
2017-05-23 11:03:25 +00:00
- Add a `get_url` and a `get_section` global Tera function
- Add a config option to control how many articles to show in RSS feed
2017-05-23 11:03:25 +00:00
- Move `insert_anchor_links` from config to being a section option and it can
now be insert left or right
2017-05-16 04:37:00 +00:00
2017-05-15 06:57:42 +00:00
## 0.0.5 (2017-05-15)
2017-04-28 07:18:18 +00:00
- Fix XML templates overriding and reloading
- `title` and `description` are now optional in the front matter
- Add GenericConfig, Vim, Jinja2 syntax
2017-05-08 10:29:37 +00:00
- Add `_index.md` for homepage as well and make that into a normal section
- Allow sorting by `none`, `date` and `order` for sections
2017-05-03 12:30:17 +00:00
- Add pagination
2017-05-11 05:12:02 +00:00
- Add a `get_page` global function to tera
- Revamp index page, no more `pages` variables
- Fix livereload stopping randomly
- Smarter re-rendering in `serve` command
2017-04-28 07:18:18 +00:00
2017-04-23 06:32:08 +00:00
## 0.0.4 (2017-04-23)
2017-04-28 07:18:18 +00:00
2017-04-06 02:21:37 +00:00
- Fix RSS feed link and description
- Renamed `Page::url` and `Section::url` to `Page::path` and `Section::path`
- Pass `current_url` and `current_path` to every template
2017-04-10 11:26:35 +00:00
- Add id to headers to allow anchor linking
- Make relative link work with anchors
- Add option to render an anchor link automatically next to headers
- Only copy the static files that changed, not the whole directory in `gutenberg serve`
- Use summary if available in RSS feed
- Add tables and footnotes support in markdown
- Add more language syntaxes
- Only load templates ending by `.html`
2017-04-06 02:21:37 +00:00
## 0.0.3 (2017-04-05)
2017-04-28 07:18:18 +00:00
2017-03-27 02:48:01 +00:00
- Add some colours in console
- Allow using a file other than config.toml for config
- Add sections to the index page context
2017-03-27 14:17:33 +00:00
- Fix page rendering not working when containing `+++`
- Add shortcodes (see README for details)
- Allow relative links to other content in markdown links
2017-04-04 07:08:40 +00:00
- Add `markdown`, `base64_encode` and `base64_decode` filters to the Tera instance of Gutenberg
2017-04-05 12:51:18 +00:00
- Work on Windows!