Releases: metalsmith/metalsmith
Metalsmith 2.6.3
Removed
- Drops support for Node < 14.18.0 (4 minor, deprecated versions) to be able to use 'node:' protocol imports"
b170cf0
Updated
- Updated README.md code samples, links, and troubleshooting section
- Dependencies:
774a164
chokidar
: 3.5.3 ▶︎ 3.6.0
Fixed
- Fixes ms.watch(false) unreliable behavior when the build errors.
0d8d791
Metalsmith 2.6.2
Metalsmith 2.6.1
34239d9
Documents metalsmith.watch() getter signature in TSa719025
Normalizes ms.watch().paths to an array, allows access to a subset of chokidar options as advertised5a516b2
Sets chokidar watchOption awaitWriteFinish to false, and batch timer to 0 to speed up watching23b0944
Fixes #389: ensure not missing watcher ready event to successfully launch build05265ce
Fixes formatting issue in types JSdoc comments
Metalsmith 2.6.0
Added
- [#356] Added Typescript support
58d22a3
- Added --debug and --dry-run options to metalsmith (build) command
2d84fbe
- Added --env option to metalsmith (build) command
9661ddc
- Added Metalsmith CLI support for loading a .(c)js config. Reads from metalsmith.js as second default after metalsmith.json
45a4afe
- Added support for running (C/M)JS config files from CLI
424e6ec
- Dependencies:
Removed
Updated
- Modernized Metalsmith CLI, prepared transition to imports instead of require
24fcffb
4929bc2
- Dependencies:
Fixed
- Fixes a duplicate empty input check in metalsmith.match
60e173a
- Gray-matter excerpts are removed from contents instead of being duplicated to the
excerpt
property2bfe800
- Gray-matter excerpts are trimmed
acb363e
Full Changelog: v2.5.1...v2.6.0
Metalsmith 2.5.1
Metalsmith 2.5.0
Important note to metalsmith-watch users:
Although 2.5.0 is a semver-minor release, it breaks compatibility with metalsmith-watch, which relies on the Metalsmith < 2.4.x private method signature using the outdated unyield package. See issue #374 for more details.
Added
- #354 Added
Metalsmith#env
method. Supports passingDEBUG
andDEBUG_LOG
amongst others. SetsCLI: true
when run from the metalsmith CLI.b42df8c
,446c676
,33d936b
,4c483a3
- #356 Added
Metalsmith#debug
method for creating plugin debuggers - #362 Upgraded all generator-based methods (
Metalsmith#read
,Metalsmith#readFile
,Metalsmith#write
,Metalsmith#writeFile
,Metalsmith#run
andMetalsmith#process
) to dual callback-/ promise-based methods16a91c5
,faf6ab6
,6cb6229
- Added org migration notification to postinstall script to encourage users to upgrade
3a11a24
Removed
Updated
- Restructured and updated
README.md
0da0c4d
- #247 Calling
Metalsmith#metadata
no longer clones the object passed to it, overwriting the previous metadata, but merges it into existing metadata.
Fixed
Metalsmith 2.4.3
Updated
- Dependencies:
774a164
micromatch
: 4.0.4 ▶︎ 4.0.5
- Updated README.md
Fixed
- Fixes repeat
metalsmith.match
file cache in repeat runs without re-read, see metalsmith/layouts#183a727309
Metalsmith 2.4.2
metalsmith 2.4.1
Fixed
Bugfix: include index.js in package.json files
Unfortunately release 2.4.0 missed the index.js file and was only usable by doing require('metalsmith/lib'). For this reason the release notes from 2.4.0 are re-included below:
Added
- #338 Added
Metalsmith#match
method. Plugins no longer need to require a matching library705c4bb
,f01c724
- #358 Added TS-style JSdocs
828b17e
- Use native
fs.rm
instead ofrimraf
when available (Node 14.4+)fcbb76e
,66e4376
- #226 Allow passing a gray-matter options object to
Metalsmith#frontmatter
a6438d2
- Modernized dev setup
ef7b781
- Added 8 new tests (match method, front-matter options, path & symbolic link handling)
- Files object file paths are now guaranteed to be sorted aphabetically.
4eb1184
- #211
Metalsmith#build
now returns a promise which you can attach athen/catch
to orawait
. The build callback model is still available.6d5a42d
Removed
Updated
-
Dependencies:
75e6878
chalk
: 1.1.3 ▶︎ 3.0.0gray-matter
: 2.0.0 ▶︎ 4.0.3stat-mode
: 0.2.0 ▶︎ 1.0.0rimraf
: 2.2.8 ▶︎ 3.0.2ware
: 1.2.0 ▶︎ 1.3.0commander
(used in CLI): 2.15.1 ▶︎ 6.2.1win-fork
(used in CLI): replaced withcross-spawn
:7.0.3
-
Updated
CHANGELOG.md
format to follow “Keep A Changelog” (#266) (@Zearin)
Fixed
- #206
Metalsmith#ignore
now only matches paths relative toMetalsmith#source
(as it should). See linked issue for details4eb1184
- #226 Metalsmith will no longer 'swallow' errors on invalid front-matter, they will be passed to
Metalsmith#build
a6438d2
- Fix test error on Windows #158 (@moozzyk)
- #281 Metalsmith now properly handles symbolic links (will throw an ENOENT error or they can be
Metalsmith#ignore
'd)4eb1184
- #178
Metalsmith#ignore
now removes the matched files before they arestatted
for glob-based ignores (saving some perf & potential errors). - #295 Metalsmith now catches all FS errors and passes them to the build callback/ thenable appropriately.
Security
- Replace all occurences of
new Buffer
withBuffer.from
npm audit
vulnerability fixes
metalsmith 2.4.0
Unfortunately this release missed the index.js file and is only usable by doing require('metalsmith/lib')
. This has quickly been fixed in 2.4.1 and the release notes ported to it
Added
- #338 Added
Metalsmith#match
method. Plugins no longer need to require a matching library705c4bb
,f01c724
- #358 Added TS-style JSdocs
828b17e
- Use native
fs.rm
instead ofrimraf
when available (Node 14.4+)fcbb76e
,66e4376
- #226 Allow passing a gray-matter options object to
Metalsmith#frontmatter
a6438d2
- Modernized dev setup
ef7b781
- Added 8 new tests (match method, front-matter options, path & symbolic link handling)
- Files object file paths are now guaranteed to be sorted aphabetically.
4eb1184
- #211
Metalsmith#build
now returns a promise which you can attach athen/catch
to orawait
. The build callback model is still available.6d5a42d
Removed
Updated
-
Dependencies:
75e6878
chalk
: 1.1.3 ▶︎ 3.0.0gray-matter
: 2.0.0 ▶︎ 4.0.3stat-mode
: 0.2.0 ▶︎ 1.0.0rimraf
: 2.2.8 ▶︎ 3.0.2ware
: 1.2.0 ▶︎ 1.3.0commander
(used in CLI): 2.15.1 ▶︎ 6.2.1win-fork
(used in CLI): replaced withcross-spawn
:7.0.3
-
Updated
CHANGELOG.md
format to follow “Keep A Changelog” (#266) (@Zearin)
Fixed
- #206
Metalsmith#ignore
now only matches paths relative toMetalsmith#source
(as it should). See linked issue for details4eb1184
- #226 Metalsmith will no longer 'swallow' errors on invalid front-matter, they will be passed to
Metalsmith#build
a6438d2
- Fix test error on Windows #158 (@moozzyk)
- #281 Metalsmith now properly handles symbolic links (will throw an ENOENT error or they can be
Metalsmith#ignore
'd)4eb1184
- #178
Metalsmith#ignore
now removes the matched files before they arestatted
for glob-based ignores (saving some perf & potential errors). - #295 Metalsmith now catches all FS errors and passes them to the build callback/ thenable appropriately.
Security
- Replace all occurences of
new Buffer
withBuffer.from