Very Popular
Changelog
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.
0.25.3 - 2021-07-12
Changed
- Improved the
metrics
generation #125. - Internal code improvements:
- The abstract class
Engine
is converted to a TypeScript interface. - Created interfaces for Site, Page, Directory, Source, Metrics, etc.
- Moved core files to
core/
directory. - Renamed
types.ts
tocore.ts
.
- The abstract class
Fixed
- Updated
highlight.js
. - Updated
eta
.
0.25.2 - 2021-07-09
Added
- The plugin
date
acceptsnow
as a value to format the current time.
Changed
- Moved metrics save/print logic from the CLI to the
Metrics
class, so it’s decoupled from the CLI.
Fixed
- The filename to save the metrics should be relative to
site.options.cwd
. - Allow to save the metrics files in a subdirectory (and create it if doesn’t exist).
- The
--quiet
mode is now even quieter.
0.25.1 - 2021-07-07
Added
- Detect the
_config.ts
file automatically if_config.js
does not exist. - Allow to set options to markdown-it plugins.
Removed
- The
site.includes()
method since it’s not consistent with custom includes.
Fixed
- The JavaScript deprecation message.
- The
lume init
command provided completions for the plugins enabled by default. - Custom
includes
configuration for plugins is not correctly resolved if theroot
is different toDeno.cwd()
. - The plugin
bundler
in Windows. - The plugin
postcss
with multiple includes.
0.25.0 - 2021-07-04
Added
- Optionally, you can do
import lume from "lume";
in your config file (instead ofimport lume from "lume/mod.ts";
). - The
options
configuration key to theeta
plugin to configure Eta.
Changed
- Lume has been ported to TypeScript.
This means that all files have the
.ts
extension. You should edit your config file to import.ts
files instead of.js
. - Renamed plugin
svg
tosvgo
.
Fixed
- Sync Nunjucks tags doesn’t return safe strings.
- Updated
std
,terser
andmarkdown-it
.
0.24.0 - 2021-06-28
Added
- New
-w
/--watch
option to watch changes without starting a web server. #109. - Made the
_includes
directory configurable: #115.- new
includes
option for site and theeta
,nunjucks
andpug
plugins - new
site.includes()
method, similar tosite.src()
.
- new
options
configuration value to thepug
plugin to set options to thepug
compiler.- Command
lume completions
to generate shell completions for Lume.
Changed
- Render pages in parallel, reducing the build time for large sites.
- Added a
--no-check
option tolume upgrade
,install.js
andci.js
to reduce the execution time. - Ported the CLI to TypeScript
and made use of the external library Cliffy for better code structure.
This brings the following changes: #120.
- Removed the duplicated
build
command. Uselume
instead oflume build
. - To see the Lume version, use
lume -V
orlume --version
instead oflume -v
(in lowercase).
- Removed the duplicated
- Replaced the
--verbose
option with--quiet
. - Errors always include the stack. #116, #117.
- Removed the
import_map.json
file because it’s not used. It was kept only for backward compatibility oflume upgrade
from old versions. - Some internal code has been ported to TypeScript:
- the CLI
- the dependency files
- the template engines.
Removed
- The
--verbose
option. Use--quiet
for the same behavior as--verbose=1
.
Fixed
- The async cache for the
inline
plugin. - Some preprocessors were executed several times. #110.
- The
slugify_urls
plugin produced empty path segments (for example,x/@/y
now becomesx/-/y
and notx//y
as before). - JavaScript source maps. #114.
0.23.3 - 2021-06-21
Added
- New metrics feature that allows measuring the performance of large sites:
Use
lume --metrics
to show the metrics in the CLI orlume --metrics=filename.json
to save the data in a file. You can also configure it in the config file. - New
--verbose
option to configure the level of details logged:0
: only important things1
: normal details (the default option)2
: high details (for debugging purposes)
- Allow extensions on Nunjucks. #108.
Fixed
- Improved the way CLI arguments are applied to the site instance.
- Ensure duplicated pages have an unique
src.path
value. - The
relative_urls
plugin should ignore data URLs. #107.
0.23.2 - 2021-06-19
Fixed
- Relative URL resolution. #105.
0.23.1 - 2021-06-17
Fixed
- Error when using
search.pages()
without arguments.
0.23.0 - 2021-06-17
Added
- New
slugify_urls
plugin. - Support for quotes to
page.search()
. This allows to insert spaces in the values. For example:page.search("'tag with spaces' title='Title with spaces'")
.
Changed
- BREAKING: The URLs of the pages will no longer be slugified by default.
Use the
slugify_urls
plugin. - The plugin
attributes
is disabled by default.
Removed
- The
slugifyUrls
option. Use theslugify_urls
plugin for that. - Support for objects in the
url
variable.
Fixed
- Replaced the
terser
dependency with a Deno version. - Updated
std
andpostcss
.
0.22.6 - 2021-06-15
Added
- Events
afterRender
andbeforeSave
. - New method
site.addHelper()
to register different types of helpers.
Changed
- The class signature of template engines:
replaced the
addFilter()
method with more genericaddHelper()
that allows to register not only filters but also custom tags and other features supported by some engines, like Nunjucks.
Removed
- The experimental plugin
image
. Moved to another repository.
Fixed
- Bug in the function to merge default and user options.
- Ensure the
Page
andDirectory
classes always have thesrc
object. - Updated
postcss
andeta
.
0.22.5 - 2021-06-10
Added
- Argument
limit
tosearch.pages()
.
Fixed
- Bug on overriding the URL with
--location
.
0.22.4 - 2021-06-09
Added
- Display a warning when installing Lume with an old Deno version.
Fixed
- Updated
std
. - Updated
postcss
to support Deno 1.11.0.
0.22.3 - 2021-06-07
Fixed
- Bug in the import map after upgrading to 0.22.2.
0.22.2 - 2021-06-07
Added
deno run <script>
accepts several scripts at the same time.- Display the name of a script executed by
deno run <script>
.
Changed
The CLI options are applied before
lume()
returns the site instance. This allows to access these options in_config.js
. For example, after runninglume --dev
, you can include conditions in the_config.js
file like this:const site = lume(); if (site.options.dev) { // Development stuff }
Previously, these overrides were applied after
_config.js
exports the site instance.
Fixed
- Improved the performance of loading page layouts by using the
Source
cache. - Improved error reporting.
search.pages()
with no arguments returns pages with other extensions than.html
.- Clear the cache before building. This allows to run several builds in the same script.
- Updated
nunjucks
(a new fork) andhighlight.js
.
0.22.1 - 2021-06-05
Fixed
- The file
ci.js
and the commandlume init
on Windows.
0.22.0 - 2021-06-04
Added
- New plugin
base_path
to automatically search and fix all URLs in the HTML by adding the path prefix of thelocation
option. This reduces the need to use theurl
filter everywhere. - The
search.pages()
helper allows multiple values to sort by.
Changed
- BREAKING: The
url
variable of the pages must start with/
,./
or../
. - Decoupled the loaders. Now they only need the path argument.
- Preprocessors check the extension of the input and output file. (Previously, only the output extension was used.)
Fixed
- The
url
filter shouldn’t add the path prefix if it’s already added. search.pages()
must return only HTML pages. (Previously, it also returned assets.)- Windows installation. #98.
0.21.1 - 2021-06-03
Fixed
- Restored
import_map.json
to not break upgrades from older versions.
0.21.0 - 2021-06-01
Added
- The
postcss
andterser
filters. #97. - The
--plugins
argument tolume init
, so you can load and use plugins. Example:lume init --plugins=postcss,terser,pug
. - The property
document
toPage
that returns the parsed HTML. - New plugin
code_highlight
to automatically highlight all code insidepre code
. Previously, it was part of the Markdown plugin. Now it’s decoupled, so it can be used by any template engine. - The
extensions
andattribute
options to theinline
plugin. - New argument
--dev
(or-d
) forlume upgrade
to upgrade to the latest development version.
Changed
- Nunjucks no longer loads
.html
files by default. - The loader argument in
loadPages
andloadAssets
is now optional, and the text loader is used by default. - The loaders and template engines are now fully decoupled.
This allows to use the variable
templateEngine
in a layout. - BREAKING: Removed automatic code highlighting from the Markdown plugin.
Use the new
code_highlight
plugin. - Moved the client code of live reload to a external file
ws.js
. - Live server reloads the entire HTML page after JavaScript changes.
Removed
- The
.markdown
extension. Use.md
or configure the Markdown plugin to enable it. - The method
site.engine()
. Use the third argument ofsite.loadPages()
. For example:site.loadPages([".html"], textLoader, nunjucksEngine)
. - The plugin
dom
. It’s no longer needed because pages can easily return the parsed HTML. For example:site.process([".html"], (page) => modify(page.document))
.
Fixed
- Updated
std
,postcss
,deno_dom
,date_fns
andhighlight.js
(to11.x
).
0.20.2 - 2021-05-18
Added
- More default character replacements to slugifier.
Changed
- Simplified the script runner
by using the
/bin/bash
orPowerShell.exe
executable. This adds support for more features, like pipes, etc.
Fixed
- Updated
pug
. - Resolve the imported files from template engines, like
nunjucks
, when thesrc
is in a subdirectory.
0.20.1 - 2021-05-15
Added
- File
install.js
for easy installation.
Removed
- The command
install
from the CLI.
Fixed
- The Lume version.
0.20.0 - 2021-05-14
Added
- New properties
pretty
andslugify
for theurl
page variable to override the correspondingprettyUrls
andslugifyUrls
site options in particular pages. #95. import_map.json
to the installation process. This allows to import Lume in the_config.js
file withimport lume from "lume/mod.js";
.- New command
lume install
to install Lume easily using the import map. - New script
ci.js
to execute the CLI in a CI environment (without installing it or defining the import map). - New argument
--import-map
for thelume init
command to enable or disable the import map in the_config.js
file. By default, it’s enabled.
Changed
- The minimum Deno version supported to
1.10.0
. - BREAKING:
prettyUrls
to not apply to theurl
page variable if it’s a string. To generate a custom pretty URL: #95.- use an object (e.g.,
{ path: /about-me }
) - add a trailing slash (e.g.,
/about-me/
) - use a full URL (e.g.,
/about-me/index.html
).
- use an object (e.g.,
- BREAKING:
url
values to not assume that the page is HTML. This means the.html
extension won’t be added by default. #95. lume init
to generate a_config.js
file using the import map. Uselume init --import-map=false
to use the old URLs.
Removed
- The property
ext
from theurl
page variable, becausepath
now includes it. #95. - The command
lume update
. It’s not needed thanks to import maps.
Fixed
- Updated the
std
dependency.
0.19.0 - 2021-05-10
Added
- The
url
page variable supports an object withpath
andext
properties to fully customize the output filename. #83. - New plugin
relative_urls
to convert all URLs to relative. #85. - Preprocessors (like processors, but are executed before rendering). #91.
- Allowed setting options for the Nunjucks plugin. #90.
- Options to customize the
slugifyUrls
setting: #94.lowercase
: to enable/disable lowercase conversion (true
by default)alphanumeric
: to convert all characters to ASCII (true
by default)separator
: to customize the separator (-
by default)replace
: an object to replace some special characters.
- Option
includes
to customize the path (or paths) used to resolve the@import
ed files in thepostcss
plugin. Useincludes: false
to disable it. autoprefixer
is included by default in thepostcss
plugin.
Changed
- The default URL of the
paginate
helper to relative:./page-${page}
. - Improved the slugifier to handle the separator better, for example:
200,000*7
becomes200-000-7
and not2000007
!2 / 3%
becomes2/3
and not-2-/-3-
Who is?.txt
becomeswho-is.txt
and notwho-is-.txt
.
Removed
- The deprecated
permalink
variable in pages. Useurl
instead.
Fixed
- Ignored files on server update weren’t detected properly. #88.
- Throw an error when a proper template engine can’t be found. #87.
- Missing doctype after DOM manipulation.
- The
njk
filter didn’t work with async filters. #93. - Fixed support for subextensions (like
page.html.md
). #83. - Improved the errors of the
inline
plugin. - Made sure that all characters are lowercased when slugifying
(so “№” becomes
no
and notNo
). - Relative URL syntax to require the prefix
./
or../
, so URLs like.foo
,..foo
or.../foo
are interpreted correctly. - Changes in
_data/*/*
files weren’t updated correctly on--serve
. - Updated the
postcss
andpostcss_import
dependencies.
0.18.1 - 2021-04-26
Fixed
0.18.0 - 2021-04-24
Added
- A second argument for the
lume()
function to configure the default plugins. #45. - Support for more file formats on local server. #67.
Changed
- API for the
search
helper: #69.- Replaced the operator
~=
with*=
. - Added the
<
,<=
,>
and>=
operators. - Allowed using the
OR
operator with pipes, liketag1|tag2
ortitle=value1|value2
. - Added support for numeric values.
- Added support for date and datetime values.
- Replaced the operator
- The
date("ATOM")
filter usesZ
instead of+00:00
. #64. - Removed the
hljs
class from the blocks of unhighlighted code. #71. - Datetime values in filenames can omit the seconds,
like in
2021-04-24-18-00_post.md
.
Fixed
- User options are overridden by default options in the Markdown plugin.
- Changed some filenames to align with the Deno style guide. #73.
- Updated dependencies. #63, #70, #72, #76, #79.
- Improved the CLI help output. #77.
0.17.1 - 2021-04-14
Added
- New option
-o
/--open
to open the browser automatically when runninglume --serve
. #62.
Removed
- The extensions
.html.js
and.html.ts
introduced in 0.17.0. They can be confusing because not all templates must generate HTML pages, so.tmpl.js
/.tmpl.ts
are more agnostic and fit all cases.
Fixed
- Updated the
postcss
version to fix source maps. - Updated the
postcss_import
version to fix the@charset
at-rule.
0.17.0 - 2021-04-11
Added
- The local IP address is shown on
lume --serve
. #55. - Allowed an empty front matter. #54.
- The extensions
.html.js
and.html.ts
are processed as pages (in order to replace to.tmpl.js
and.tmpl.ts
that will be removed in the future). - Added ability to change the sort direction in
search
. #57.
Changed
- Deprecated the
permalink
page variable. Useurl
instead. #46. - Removed the
permalink
variable in thepaginate
helper that usessprintf
. Now it accepts only theurl
option that must be a function.
Fixed
- Improved the slugifier, including a better support for Unicode. #50, #56.
- Update the MIME types used by the server. #51.
- Updated some dependencies. #59.
0.16.6 - 2021-04-04
Added
- New option
slugifyUrls
to disable the slugifier introduced in 0.16.0. #44.
0.16.5 - 2021-03-29
Fixed
- Undo the change
only rebuild the site if it's needed
due to regression issues.
0.16.4 - 2021-03-28
Added
- Allow to define a function as a
permalink
to generate it dynamically. - The
permalink
value can have a relative path (must start with./
or../
) that will be resolved to the directory name. - The
url
filter allows URLs starting with~
to reference to source files that will be automatically resolved to the final URL.
Fixed
- When reloading files on
lume --serve
, some ignored files weren’t correctly filtered. - Improved
lume --serve
to only rebuild the site if it’s needed. - Several changes for Windows compatibility.
0.16.3 - 2021-03-21
Fixed
- The SVG plugin was failed by the SVGO dependency. #43.
0.16.2 - 2021-03-20
Added
- New, experimental plugin
image
to resize images automatically.
Fixed
- On merge options, arrays were converted to objects.
0.16.1 - 2021-03-14
Fixed
- The version number.
0.16.0 - 2021-03-14
Added
- New page variable
renderOrder
to control the rendering order of the pages. - New CLI alias
-s
for--serve
.
Changed
- Slugify the paths of all generated pages to replace tildes and other conflictive characters and to convert them to lowercase.
- Changed the way to generate multiple pages for more flexibility.
Fixed
- Ensure autogenerated pages aren’t saved if they don’t change (on
--serve
).
0.15.4 - 2021-03-08
Added
- The
date
plugin accepts strings or integer arguments (they will be converted to aDate
with thenew Date(value)
constructor).
Fixed
- Updated dependencies.
0.15.3 - 2021-03-06
Fixed
- Some issues with paths on Windows. #41.
0.15.2 - 2021-02-22
Fixed
- The version number.
0.15.1 - 2021-02-21
Added
- Added a second argument for the default exported function of
cli.js
to set a site directly.
Fixed
- Pug templates loaded with
extends
were cached indefinitely. #39. - Allow relative paths in the
--root
CLI argument.
0.15.0 - 2021-02-05
Added
- New advanced search features:
- You can filter by any field at any level, for example
search.pages("header.categories=my-category")
. - You can sort by any field at any level, for example
search.pages("header.categories=my-category", "my.custom.order.field")
. - New method
search.data()
to return the data assigned to any page or directory.
- You can filter by any field at any level, for example
Changed
- Restore the ability to return the proper exit code on
lume --run
. - Show more info on error.
- Removed the parameter to ignore tags in
search.tags()
. Replaced with a filter like the one insearch.pages()
.
Removed
- The method
search.directory()
to return a directory instance. Usesearch.data()
. - The option
file
to sort the results ofsearch.pages()
. Useurl
instead.
Fixed
- Cache wasn’t correctly refreshed when using different versions of plugins. #35.
- Updated dependencies.
- Ensure the processors are executed in the same order they where defined.
- The
inline
plugin when the site is located in a subdirectory.
0.14.0 - 2021-02-02
Changed
- API for the
Page
class:- Tags are stored as an array in
page.data.tags
(they were previously contained by aSet
inpage.tags
). - Removed the
page.fullData
property.page.data
contains the merged data.
- Tags are stored as an array in
- CLI: #33, #34.
- Switched some options (arguments starting with
--
) to commands:lume --upgrade
tolume upgrade
lume --update
tolume update
lume --init
tolume init
lume --run=<script>
tolume run <script>
.
- Added command-specific help output. For example,
lume run --help
. - Changed the way to specify a different
cwd
: instead oflume path/to/site
, uselume --root=path/to/site
.
- Switched some options (arguments starting with
Fixed
- Link to the docs in
--help
. #32.
0.13.2 - 2021-01-23
Fixed
- The incorrect default configuration for YAML plugin.
0.13.1 - 2021-01-23
Fixed
- PostCSS plugins didn’t process CSS files.
0.13.0 - 2021-01-20
Added
- Normalize options across some plugins.
Changed
- The minimum required Deno version to
1.7.0
. - Temporarily,
lume --run
doesn’t return the proper exit code until a bug in Deno is resolved.
0.12.1 - 2021-01-16
Added
- New command
lume --update
to update the Lume version used by any_config.js
file to the same installed globally in CLI.
Fixed
- The cache in the
search
helper to return the original array instead a clone, so it can be modified outside. - The uncaught exception in the built-in server due to a broken pipe.
0.12.0 - 2021-01-15
Added
- New filter
njk
registered by thenunjucks
plugin. - Moved the
url
filter to a plugin that also creates an additional filterhtmlUrl
to search and fix URLs in HTML code. - New plugin
date
to format date and time values using the library date-fns. - The sorting parameter of
search.pages()
accepts any key (in addition todate
andfile
).
Changed
- Moved
attributes
andclassname
to the newattributes
plugin that’s enabled by default.
Fixed
- The
url
filter withnull
values. - Improved performance of
search.pages()
by implementing a cache system. - Improved performance of merging data and tags by implementing a cache system.
0.11.0 - 2021-01-12
Added
Changed
- Renamed the plugin
css
topostcss
and renamed some of its options:map
tosourceMap
postcssPlugins
toplugins
.
Fixed
- Some files (like layouts) were loaded multiple times. Implemented a cache system to ensure that every file is read only once.
0.10.8 - 2021-01-03
Fixed
- Sometimes, the live reload didn’t reload the page, even if the changes were sent to the browser. #20.
0.10.7 - 2021-01-02
Added
- Support for async filters. #22.
- The events
beforeUpdate
andafterUpdate
got a propertyfiles
with the names of all changed files. - Allow configuring the CSS plugin with the following options:
postcssPlugins
: an array of the PostCSS plugins #26.map
: settrue
to generate source maps.
- Ability to dynamically add or remove pages from processors.
Fixed
- WebSocket sent update messages twice.
- The
paginate
helper didn’t always return the latest page. - Dispatching events that contain scripts
should return
false
if the script fails.
0.10.6 - 2020-12-27
Fixed
- The multipage generation workflow.
- The random WebSocket errors on reloading changes.
0.10.5 - 2020-12-25
Fixed
- The
--location
option being unknown.
0.10.4 - 2020-12-24
Fixed
- Ensure that page tags are always converted to strings.
- The template cache wasn’t always updated.
0.10.3 - 2020-12-21
Fixed
- The
TypeError
on reloading the server. - Removed extra whitespace when parsing the front matter.
- Improved the Pug plugin.
- The TypeScript errors due to conflicts with Eta. #18.
- Added cache for the compiled templates.
- Improved filters.
- Added hot reloading for modules (
.ts
,.js
) and fixed some issues. - The undocumented
data
filter is disabled by default.
0.10.2 - 2020-12-17
Fixed
- Don’t add the
.html
extension to files with a subextension. For examplescripts.js.njk
should be saved asscripts.js
instead ofscripts.js.html
. #13. - Refresh the Deno cache with
lume --upgrade
.
0.10.1 - 2020-12-16
Fixed
- The error on handling
<pre>
elements in Markdown.
0.10.0 - 2020-12-16
Added
- New plugin to use Pug as a template engine. #10.
- New methods
search.previousPage()
andsearch.nextPage()
. - Support for definition lists (
<dl>
) in Markdown. - Improved the default
404
error page. Now it displays a list of files and subdirectories. - New option
templateEngine
to configure the template engine used for every page. #11
Fixed
- Live reload didn’t always work with HTML.
- HTTP server timeout on missing
/index.html
. - Nunjucks cache didn’t detect the changes to included templates.
- Showing the version on upgrade. #9.
url
filter in Markdown.url
filter to handle hashes and queries (such as#hashid
and?query=value
)
0.9.12 - 2020-12-07
Fixed
- The
css
plugin uses only thepostcss-import
andpostcss-nesting
plugins because the others fail on Deno.
0.9.11 - 2020-12-06
Fixed
- The
lume --upgrade
error.
0.9.10 - 2020-12-06
Fixed
- Updated dependencies.
0.9.9 - 2020-12-01
Fixed
- Async script runner no longer exits before all promises are resolved. #7.
- Improved the
--upgrade
command.
0.9.8 - 2020-12-01
Fixed
- Removed a failing dependency.
0.9.7 - 2020-12-01
Added
- Support for executing JavaScript functions with
lume.script()
along with CLI commands. - New CLI arguments
--src
and--dest
to override the corresponding options. - New property
site.flags
that saves all arguments after double dash, like the ones inlume --serve -- flag1 flag2
.
Fixed
- Fixed multi-command scripts in Linux. #7.
- Replaced
dev.jspm.io
withjspm.dev
for dependencies. - Replaced
denopkg.com
withcdn.jsdelivr.net
for dependencies. #8. - Updated
highlight.js
to10.x
.
0.9.6 - 2020-11-28
Fixed
- Creating multiple pages with generators.
- Updated dependencies.
- Simplify the code generated by
lume --init
. - Multiple commands joined with
&&
and&
. #7.
0.9.5 - 2020-11-25
Added
- Support for async generators to create pages.
- Predefined values for
attr
filter. - New option
server
to configure the local server, having propertiesport
andpage404
.
Changed
- Removed the documentation from the main repository.
Fixed
- The version number returned by
lume -v
.
0.9.4 - 2020-11-20
Fixed
- Broken pipe errors on the server.
0.9.3 - 2020-11-13
Fixed
- The version number returned by
lume -v
.
0.9.2 - 2020-11-13
Added
- CLI command
--upgrade
.
Changed
- Renamed the
--version
shortcut-V
to-v
.
Fixed
- The
denjucks
installation. #6.
0.9.1 - 2020-11-06
Fixed
@import
CSS of thecss()
plugin, using_includes
as fallback.
0.9.0 - 2020-11-04
Added
- New method
script()
to execute scripts like a task runner. - Allow running scripts in events.
- Autodiscover
404.html
in the built-in server to handle the 404 responses.
Fixed
- Ignore the
node_modules
directory by default. - Show an error if the
cwd
is not a directory. - Enable the
attr
filter by default.
0.8.1 - 2020-10-28
Added
- New method
ignore()
to ignore files and directories.
Fixed
- The version number on
lume --version
.
0.8.0 - 2020-10-27
Added
- New method
loadAssets()
to register asset loaders. - New CLI argument to build the site in a different directory
and even to choose a different
_config.js
file.
Changed
- Renamed
load()
toloadPages()
and removed theasset
parameter. - Renamed
data()
toloadData()
. - Renamed
helper()
todata()
. - Updating files, when watching, dispatches the events
beforeUpdate
andafterUpdate
(instead ofbeforeBuild
andafterBuild
).
0.7.3 - 2020-10-17
Changed
- Removed the version from the
import
URL in the_config.js
file generated with--init
.
Fixed
- Support special characters in the URL on the local server.
- Rebuild inside a
try
…catch
to prevent death on error.
0.7.2 - 2020-10-10
Fixed
- Updated the version in the CLI.
0.7.1 - 2020-10-10
Fixed
- Permalinks not respecting the
prettyUrls
option. #1. - Improved the docs about updating the Lume version.
0.7.0 - 2020-10-09
Added
- Events
beforeBuild
andafterBuild
. - Helper
paginate()
. - Method
site.process()
. - Option
prettyUrls
, which istrue
by default.
Removed
- The transformers
site.beforeRender()
andsite.afterRender()
. Usesite.process()
instead, which is an equivalent toafterRender
.
Fixed
- Improved performance by executing some operations in parallel.
- Page duplications.
- The
url
filter with non-string values.
0.6.0 - 2020-09-28
Added
- New parameter for
search.pages()
to sort pages alphabetically. - New argument
--help
and aliases-h
and-V
for CLI. - New plugin
eta
to support theEta
template engine. - New method
helper()
to register global helpers that can be used in templates.
Removed
- The parameters
path
andrecursive
insearch.pages()
.
Fixed
- The
url
filter with relative paths. - PostCSS incompatibility with Deno.
0.5.1 - 2020-09-25
Fixed
- The
version
variable.
0.5.0 - 2020-09-24
Added
- Ability to generate multiple pages using generators.
Changed
- Replaced
pathPrefix
andurl
withlocation
.
Fixed
url
filter bugs.
0.4.0 - 2020-09-22
Added
- Ability to include the date in the filename.
- New method
search.folder()
. - New option
--dev
to build in development mode.
Fixed
- Front matter detection.
- Site rebuild after creating or removing directories and files.
- Improved the
url
filter. - Use a content hash to detect real file changes.
- Tags propagation.
- Ensure the
beforeRender
transformers are executed only once.
0.3.1 - 2020-09-19
Fixed
- Use a temporary fork of Denjucks to avoid loading bugs.
0.3.0 - 2020-09-19
Added
- New plugin
svg
to optimize SVG files. - New plugin
dom
to manipulate HTML using the DOM API. - New filter
classname
to manipulate CSS classes. - New filter
attributes
to manipulate HTML attributes. - First tests.
Changed
- Renamed
explorer
tosearch
.
Fixed
- Refactored source load and reload.
- Explorer returning wrong results.
- Live reload.
0.2.3 - 2020-09-14
Fixed
- Moved the WebSocket script to
server.js
to avoid reading problems.
0.2.2 - 2020-09-13
Added
- New command
lume --version
.
Fixed
- CLI installation.
0.2.1 - 2020-09-13
Fixed
- Execute the module loader from remote (https://deno.land/x/lume).
- Use fixed versions for dependencies.
0.2.0 - 2020-09-13
Added
- New command
lume --init
to create a_config.js
file.
Changed
- Merged the
postcss
andstylecow
plugins in the newcss
plugin.
Fixed
- The JSX engine.
0.1.0 - 2020-09-13
The first version.