All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project try to adheres to Semantic Versioning.
Go to the v1
branch to see the changelog of Lume 1.
2.0.2 - 2024-01-01
- Add critical log on rare case where developer forget to export the Site instance in the
_config.ts
decap_cms
plugin: Add a script in the homepage to redirect to /admin/ when an invite token or recovery token is detected from netlify identity.getOptionsFromCli
is moved frommod.ts
toutils/cli_options.ts
#535, #540.
sitemap
plugin: Add thexmlns
namespace for localized urls.- Files with all caps extensions are ignored #542.
multilanguage
plugin:- Fix error of two pages with the same id, type and lang.
- Fix the error of a page with lang, but undefined id.
- Removed unused
imagick
dependency. - Added
Lume.PaginateResult
type. - Apply merge data strategies between multiple _data files/folders in the same folder.
- Date recovery from Git repositories #544.
- Updated dependencies:
std
,esbuild
,liquid
,postcssNesting
,react-dom
types,sharp
,svgo
,vento
,tailwindcss
,minify_html
,unocss
,sass
.
2.0.1 - 2023-12-10
mdx
plugin: NewrehypeOptions
option #517
lightningcss
plugin: use the correct includes folder #523.mdx
andremark
plugins: improved types.- Lume needs Deno >= 1.38.
- Type of
Lume.Data.results
. - Improved log messages of empty and ondemand pages #525.
picture
plugin using the wrong attribute name #526.- Updated deps:
markdown-it
,preact
,terser
,esbuild
.
2.0.0 - 2023-12-08
- New plugin
unocss
, to replacewindi_css
. - New plugin
transform_images
, to replaceimagick
. - New option
server.root
toSite
. - New
basename
variable to change the final name of files/directories. #494 - New function
site.getOrCreatePage()
. - Allow to copy files/directories inside ignored directories #520
- Added generics to
search
functions. For example:search.pages<PageType>()
. - New environment variable
LUME_NOCACHE
to disable the cache of the remote files. - TOML plugin: New option
pageSubExtension
with the default value.page
. - YAML plugin: New option
pageSubExtension
. - JSX plugin: New option
pageSubExtension
. - JSON plugin: New option
pageSubExtension
. - Eta plugin: New option
pageSubExtension
. - Liquid plugin: New option
pageSubExtension
. - Nunjucks plugin: New option
pageSubExtension
. - Pug plugin: New option
pageSubExtension
. - Vento plugin: New option
pageSubExtension
. - Markdown plugin: New option
useDefaultPlugins
that it'strue
by default. - Postcss plugin: new option
useDefaultPlugins
that it'strue
by default. - Module plugin:
- New option
pageSubExtension
. - New option
includes
- New option
- MDX plugin:
- New option
useDefaultPlugins
that it'strue
by default. - New option
recmaPlugins
#521. - New option
includes
- New option
- JSX Preact plugin
- New option
pageSubExtension
. - New
precompile
option for faster jsx transform.
- New option
- Pagefind plugin: New option
highlightParam
. - Not found middleware: Added default options.
- Remark plugin:
- Revamp of types.
- Removed
core.ts
and createdtypes.ts
. - New global namespace
Lume
. - Use the lib
dom
anddom.iterable
types instead ofdeno-dom
.
- Removed
- Changed the signature of
process
andpreprocess
to behave likeprocessAll
andpreprocessAll
. - Changed the signature of
Page.create()
. It has a single argument with an object with the page content. - Renamed the interface method
Engine.renderSync
toEngine.renderComponent
. - Changed the
Format
interface. - Pretty URLs option doesn't affect to the
/404.html
page by default. - Replace
fn-date
withTemporal
polyfill to convert dates. - Refactor of
Server
class to work withDeno.serve()
API #501. - Renamed
core/filesystem.ts
tocore/file.ts
. - Picture plugin: Renamed the attribute
imagick
totransform-images
. - TOML plugin:
- is installed by default
- Changed
extensions
option type tostring[]
.
- Slugify URL: Slugify static files by default. #447
- JSX plugin:
- Removed
window.React
#332. - Changed
extensions
option type tostring[]
. - The
includes
folder is automatically ignored.
- Removed
- NetlifyCMS plugin:
- Renamed to
decap_cms
. - Changed
netlifyIdentity
option toidentity: "netlify"
- Renamed to
- Markdown plugin: Disable indented code blocks by default #376
- Postcss plugin: The
includes
folder is automatically ignored. - MDX plugin:
- Updated to MDX v3.
- The
includes
folder is automatically ignored.
- Module plugin
- Changed
extensions
option type tostring[]
. - Replaced
.tmpl
subextension with.page
. - The
includes
folder is automatically ignored.
- Changed
- Eta plugin
- Changed
extensions
option type tostring[]
. - The
includes
folder is automatically ignored.
- Changed
- JSON plugin
- Changed
extensions
option type tostring[]
. - Replaced
.tmpl
subextension with.page
.
- Changed
- JSX Preact plugin
- Changed
extensions
option type tostring[]
. - The
includes
folder is automatically ignored.
- Changed
- Liquid plugin
- Changed
extensions
option type tostring[]
. - The
includes
folder is automatically ignored.
- Changed
- Nunjucks plugin
- Disabled by default
- Changed
extensions
option type tostring[]
. - The
includes
folder is automatically ignored.
- Pug plugin
- Changed
extensions
option type tostring[]
. - The
includes
folder is automatically ignored.
- Changed
- Vento plugin
- Enabled by default
- Changed
extensions
option type tostring[]
. - The
includes
folder is automatically ignored.
- Multilanguage plugin
- Apply the default language to all pages with undefined language.
- Removed the ability to insert translations in the middle of the data object.
- The uniqueness of a page is defined by the combination of id + type.
- SASS plugin: The
includes
folder is automatically ignored. - LightningCSS plugin: The
includes
folder is automatically ignored. - Feed plugin
- Renamed the option
info.date
toinfo.published
; - Renamed the option
item.date
toitem.published
; - New option
item.updated
;
- Renamed the option
- Removed plugin
windi_css
. Useunocss
instead. - Removed plugin
imagick
. Usetransform_images
instead. - Removed output extension detection in the filename: #430
- Removed
processAll
andpreprocessAll
. - Removed
Page.dest
property #290. - Removed
Page.updateDest
function. - Removed
Page.src.lastModified
andPage.src.created
because they are already inPage.src.entry
. - Removed
Page.src.remote
because it's already inPage.src.entry
. - Removed
Page.src.slug
because it's already inPage.data.basename
. - Removed
--dev
mode #244, #201. Use the env variableLUME_DRAFTS=true
to output draft pages. - Removed
--quiet
argument Use the env variableLUME_LOGS=DEBUG|INFO|WARNING|ERROR|CRITICAL
. - Removed
site.includes()
function. - Renamed
site.searcher
tosite.search
. - The
pageSubExtension
is used only to load pages, but not for layouts, components, etc. - Removed
site.loadComponents()
. It's included insite.loadPages()
options. - Removed
site.engine()
. It's included insite.loadPages()
options. - Removed
site.cacheFile()
- Removed
Entry.setContent()
- Removed message to upgrade Lume.
- Removed
Error
class to print the errors.Deno.inspect()
is used instead. - Removed
lume/core/utils.ts
and moved all utilities to different files under/lume/core/utils/
folder. - Search plugin:
- Removed
returnPageData
option. Pages always return thedata
object #251 - Removed
search.tags()
function. Usesearch.values("tags")
. - Removed
data
filter.
- Removed
- YAML plugin: Changed
extensions
option type tostring[]
. - Removed WindiCSS plugin.
- Markdown plugin: removed
keepDefaultPlugins
- Postcss plugin: removed
keepDefaultPlugins
- MDX plugin:
- Removed
overrideDefaultPlugins
- Removed
pragma
option.
- Removed
- Remark plugin: Removed
overrideDefaultPlugins
option
- Updated dependencies:
std
,deno_dom
,eta
,lightningcss
,liquidjs
,nunjucks types
,pagefind
,preact
,react types
,pug
,svgo
,esbuild
,svgo
,terser
,unocss
,vento
,xml
,postcss
,markdown-it-defllist
.