UNPKG

13.9 kBMarkdownView Raw
1# Change Log
2
3All notable changes to this project will be documented in this file.
4
5This project adheres to [Semantic Versioning](http://semver.org).
6
7This document follows the guidelines of [Keep A Changelog](http://keepachangelog.com).
8
9## [2.4.3] - 2022-05-16
10
11### Updated
12
13- **Dependencies:** [`774a164`](https://github.com/metalsmith/metalsmith/commit/774a164)
14 - `micromatch`: 4.0.4 ▶︎ 4.0.5
15- Updated README.md
16
17### Fixed
18
19- Fixes repeat `metalsmith.match` file cache in repeat runs without re-read, see https://github.com/metalsmith/layouts/issues/183 [`a727309`](https://github.com/metalsmith/metalsmith/commit/a727309)
20
21## [2.4.2] - 2022-02-13
22
23### Updated
24
25- **Dependencies:** [`af9dec0`](https://github.com/metalsmith/metalsmith/commit/af9dec0)
26 - `chalk`: 3.0.0 ▶︎ 4.1.2
27- Updated README.md
28
29### Fixed
30
31- Fixed Metalsmith JSDoc type hints in VS code [`ebf82f4`](https://github.com/metalsmith/metalsmith/commit/ebf82f4)
32- Added package integrity test [`c539c67`](https://github.com/metalsmith/metalsmith/commit/c539c67)
33
34## [2.4.1] - 2022-01-31
35
36### Fixed
37
38Bugfix: include index.js in package.json files
39
40## [2.4.0] - 2022-01-31
41
42### Added
43
44- [#338] Added `Metalsmith#match` method. Plugins no longer need to require a matching library [`705c4bb`](https://github.com/metalsmith/metalsmith/commit/705c4bb), [`f01c724`](https://github.com/metalsmith/metalsmith/commit/f01c724)
45- [#358] Added TS-style JSdocs [`828b17e`](https://github.com/metalsmith/metalsmith/commit/828b17e)
46- Use native `fs.rm` instead of `rimraf` when available (Node 14.4+) [`fcbb76e`](https://github.com/metalsmith/metalsmith/commit/fcbb76e), [`66e4376`](https://github.com/metalsmith/metalsmith/commit/66e4376)
47- [#226] Allow passing a gray-matter options object to `Metalsmith#frontmatter` [`a6438d2`](https://github.com/metalsmith/metalsmith/commit/a6438d2)
48- Modernized dev setup [`ef7b781`](https://github.com/metalsmith/metalsmith/commit/ef7b781)
49- Added 8 new tests (match method, front-matter options, path & symbolic link handling)
50- Files object file paths are now guaranteed to be sorted aphabetically. [`4eb1184`](https://github.com/metalsmith/metalsmith/commit/4eb1184)
51- [#211] `Metalsmith#build` now returns a promise which you can attach a `then/catch` to or `await`. The build callback model is still available. [`6d5a42d`](https://github.com/metalsmith/metalsmith/commit/6d5a42d)
52
53### Removed
54
55- [#231] Dropped support for Node < 8 [`2db47f5`](https://github.com/metalsmith/metalsmith/commit/75e6878), [`75e6878`](https://github.com/metalsmith/metalsmith/commit/75e6878)
56- **Dependencies:**
57 - `has-generators`: obsolete in supported Node versions [`2db47f5`](https://github.com/metalsmith/metalsmith/commit/2db47f5)
58 - `absolute` replaced with native Node `path.isAbsolute` [`c05f9e2`](https://github.com/metalsmith/metalsmith/commit/c05f9e2) (@Zearin)
59 - `is` replaced with own implementation [`7eaac9e2`](https://github.com/metalsmith/metalsmith/commit/7eaac9e2), [`54dba0c1`](https://github.com/metalsmith/metalsmith/commit/54dba0c1) (@Zearin)
60 - `recursive-readdir`: replaced with own implementation [`4eb1184`](https://github.com/metalsmith/metalsmith/commit/4eb1184)
61
62### Updated
63
64- **Dependencies:** [`75e6878`](https://github.com/metalsmith/metalsmith/commit/75e6878)
65
66 - `chalk`: 1.1.3 ▶︎ 3.0.0
67 - `gray-matter`: 2.0.0 ▶︎ 4.0.3
68 - `stat-mode`: 0.2.0 ▶︎ 1.0.0
69 - `rimraf`: 2.2.8 ▶︎ 3.0.2
70 - `ware`: 1.2.0 ▶︎ 1.3.0
71 - `commander` (used in CLI): 2.15.1 ▶︎ 6.2.1
72 - `win-fork` (used in CLI): replaced with `cross-spawn`:7.0.3
73
74- Updated `CHANGELOG.md` format to follow “[Keep A Changelog](http://keepachangelog.com)” (#266) (@Zearin)
75
76### Fixed
77
78- [#206] `Metalsmith#ignore` now only matches paths relative to `Metalsmith#source` (as it should). See linked issue for details [`4eb1184`](https://github.com/metalsmith/metalsmith/commit/4eb1184)
79- [#226] Metalsmith will no longer 'swallow' errors on invalid front-matter, they will be passed to `Metalsmith#build` [`a6438d2`](https://github.com/metalsmith/metalsmith/commit/a6438d2)
80- Fix test error on Windows [#158] (@moozzyk)
81- [#281] Metalsmith now properly handles symbolic links (will throw an ENOENT error or they can be `Metalsmith#ignore`'d) [`4eb1184`](https://github.com/metalsmith/metalsmith/commit/4eb1184)
82- [#178] `Metalsmith#ignore` now removes the matched files _before_ they are `statted` for glob-based ignores (saving some perf & potential errors).
83- [#295] Metalsmith now catches all FS errors and passes them to the build callback/ thenable appropriately.
84
85### Security
86
87- Replace all occurences of `new Buffer` with `Buffer.from`
88
89#### `npm audit` vulnerability fixes
90
91- **Development Dependencies:**
92 - `coveralls`: 2.11.6 ▶︎ 3.0.1 (#308) (@Zearin)
93 Fix 5 “Moderate” vulnerabilities
94 - `metalsmith-markdown`: 0.2.1 ▶︎ 0.2.2 (#312) (@Zearin)
95 Fix 1 “Low” vulnerability
96
97[#158]: https://github.com/metalsmith/metalsmith/issues/158
98[#178]: https://github.com/metalsmith/metalsmith/issues/178
99[#206]: https://github.com/metalsmith/metalsmith/issues/206#issuecomment-1008289480
100[#211]: https://github.com/metalsmith/metalsmith/issues/211
101[#226]: https://github.com/metalsmith/metalsmith/issues/226
102[#231]: https://github.com/metalsmith/metalsmith/issues/231
103[#281]: https://github.com/metalsmith/metalsmith/issues/281
104[#295]: https://github.com/metalsmith/metalsmith/issues/295
105[#338]: https://github.com/metalsmith/metalsmith/issues/338
106[#358]: https://github.com/metalsmith/metalsmith/issues/358
107
108## [2.3.0] - 2016-10-28
109
110### Added
111
112- Add packaging metadata to build the metalsmith snap ([#249])
113
114### Updated
115
116- Update dependencies ([#246])
117
118### Removed
119
120- Remove unused dependencies
121
122### Fixed
123
124- Fix error when reading a symbolic link to a dir ([#229])
125
126### Security
127
128- Upgrade dependency to include security fix ([#258])
129
130[#229]: https://github.com/metalsmith/metalsmith/pull/229
131[#246]: https://github.com/metalsmith/metalsmith/pull/246
132[#249]: https://github.com/metalsmith/metalsmith/pull/249
133[#258]: https://github.com/metalsmith/metalsmith/pull/258
134
135## [2.2.2] - 2016-10-28
136
137This version is the same as 2.2.0, and was released to counteract the accidental
138release of 2.2.1. (See 2.2.1 for details.)
139
140## [2.2.1] - 2016-10-27 [YANKED]
141
142This release is identical to 2.3.0, but was mistakenly released as a
143SemVer-patch version when it should have been released as a SemVer-minor
144version. **Please use versions `<= 2.2.0` or `>= 2.2.2` instead.**
145
146## [2.2.0] - 2016-08-11
147
148### Added
149
150- Add ability to use functions for `ignore` matchers ([#179])
151- Add CLI option: `ignore` ([#232])
152- Add `process` to process files and plugins without writing files ([#244])
153
154### Changed
155
156- Only remove the contents of the `destination` directory (not the directory itself) when `clean` is `true` ([#221])
157
158[#179]: https://github.com/metalsmith/metalsmith/issues/179
159[#221]: https://github.com/metalsmith/metalsmith/pull/221
160[#232]: https://github.com/metalsmith/metalsmith/pull/232
161[#244]: https://github.com/metalsmith/metalsmith/pull/244
162
163## [2.1.0] - 2015-09-24
164
165### Added
166
167- Add CLI option: `frontmatter`
168
169## [2.0.1] - 2015-07-14
170
171### Fixed
172
173- META: bump patch because `2.0.0` was mistakenly already published
174
175## [2.0.0] - 2015-07-14
176
177### Added
178
179- CLI: Add separate `_metalsmith` bin (to allow custom transpilers)
180
181### Removed
182
183- Drop support for Node 0.10 (native and tests)
184
185## [1.7.0] - 2015-04-30
186
187### Added
188
189- Add `ignore`
190
191## [1.6.0] - 2015-04-14
192
193### Added
194
195- Add `concurrency`
196
197## [1.5.0] - 2015-03-29
198
199### Added
200
201- Add ability to pass in plugins to `#run`
202
203## [1.4.5] - 2015-03-27
204
205### Changed
206
207- Improve plugin error handling
208
209## [1.4.4] - 2015-03-27
210
211### Fixed
212
213- Workaround the absence of `isAbsolute` from Node 0.10
214
215## [1.4.3] - 2015-03-27
216
217### Fixed
218
219- Fix typo in variable name
220
221## [1.4.2] - 2015-03-26
222
223### Changed
224
225- Use `gray-matter` to parse frontmatter
226
227### Fixed
228
229- Fix bug in frontmatter parser
230
231## [1.4.1] - 2015-03-25
232
233### Changed
234
235- Nicer errors for invalid frontmatter
236
237## [1.4.0] - 2015-03-25
238
239### Added
240
241- Add ability to override the read and write directory
242
243## [1.3.0] - 2015-02-06
244
245### Added
246
247- Add support for local (non-npm, but still node) plugins
248
249## [1.2.0] - 2015-02-04
250
251### Added
252
253- Add stack trace to CLI output
254
255## [1.1.1] - 2015-01-25
256
257### Fixed
258
259- Update `recursive-readdir` to `1.2.1` to fix [#110]
260
261[#110]: https://github.com/metalsmith/metalsmith/pull/110
262
263## [1.1.0] - 2015-01-25
264
265### Added
266
267- Add type checking to getter/setters
268- Add support for alternate config file path
269- Add file-specific errors on writing and reading
270
271## [1.0.1] - 2014-09-30
272
273### Changed
274
275- Move `gnode` to regular dependencies
276
277## [1.0.0] - 2014-09-29
278
279### Added
280
281- Add generator support for Node 0.11
282- Add absolute path support for `source` and `directory`
283- Add `#directory` getter and setter method
284- Add `#readFile` method to expose the core reading logic
285- Add `#writeFile` method to expose the core writing logic
286
287### Changed
288
289- Change `#join` to `#path` and use `path.resolve`
290
291### Fixed
292
293- CLI: Fix default `clean` setting
294
295## [0.11.0] - 2014-09-12
296
297### Changed
298
299- Move `clean` logic to happen at the beginning of a build
300
301## [0.10.0] - 2014-08-19
302
303### Added
304
305- Expose `stats` on files
306
307## [0.9.0] - 2014-070-13
308
309### Added
310
311- Add `frontmatter` option (to disable frontmatter parsing, if desired)
312
313## [0.8.1] - 2014-070-07
314
315### Changed
316
317- Update dependencies
318
319## [0.8.0] - 2014-05-06
320
321### Added
322
323- Add `clean` option
324
325## [0.7.0] - 2014-04-29
326
327### Changed
328
329- In `metalsmith.json`: Allow `plugins` be an array
330
331## [0.6.1] - 2014-04-24
332
333### Changed
334
335- Update `ware` to `0.3.0` for passing arrays
336
337## [0.6.0] - 2014-04-02
338
339### Added
340
341- `mode` handling for files
342
343## [0.5.0] - 2014-03-21
344
345### Added
346
347- Remove `destination` directory when writing
348- Expose `#run` to run middleware stack
349
350### Fixed
351
352- Fix jade examples
353
354## [0.4.0] - 2014-03-14
355
356### Changed
357
358- Change `#metadata` to set a clone
359
360## [0.3.0] - 2014-03-08
361
362### Changed
363
364- File contents are no longer trimmed
365
366## [0.2.3] - 2014-03-07
367
368### Added
369
370- Add setting back to `#metadata`
371
372## [0.2.2] - 2014-03-07
373
374### Fixed
375
376- Fix installation error
377
378## [0.2.1] - 2014-03-07
379
380### Changed
381
382- CLI: use `chalk` instead of `colors`
383
384## [0.2.0] - 2014-03-06
385
386### Changed
387
388- `#metadata` is now just a getter
389
390## [0.1.0] - 2014-02-05
391
392### Changed
393
394- `contents` are now always a `Buffer`
395
396## [0.0.4] - 2014-02-05
397
398### Fixed
399
400- Fix corrupted non-utf8 files
401
402## [0.0.3] - 2014-02-05
403
404### Added
405
406- Expose `files` dictionary to `build` callback
407
408## [0.0.2] - 2014-02-05
409
410### Changed
411
412- Do not mix in global metadata; leave it up to plugins
413
414## 0.0.1 - 2014-02-04
415
416:sparkles:
417
418[unreleased]: https://github.com/metalsmith/metalsmith/compare/v2.3.0...HEAD
419[2.4.0]: https://github.com/metalsmith/metalsmith/compare/v2.3.0...v2.4.0
420[2.3.0]: https://github.com/metalsmith/metalsmith/compare/v2.2.2...v2.3.0
421[2.2.2]: https://github.com/metalsmith/metalsmith/compare/v2.2.0...v2.2.2
422[2.2.1]: https://github.com/metalsmith/metalsmith/compare/v2.2.0...v2.2.1
423[2.2.0]: https://github.com/metalsmith/metalsmith/compare/v2.1.0...v2.2.0
424[2.1.0]: https://github.com/metalsmith/metalsmith/compare/v2.0.1...v2.1.0
425[2.0.1]: https://github.com/metalsmith/metalsmith/compare/v2.0.0...v2.0.1
426[2.0.0]: https://github.com/metalsmith/metalsmith/compare/v1.7.0...v2.0.0
427[1.7.0]: https://github.com/metalsmith/metalsmith/compare/v1.6.0...v1.7.0
428[1.6.0]: https://github.com/metalsmith/metalsmith/compare/v1.5.0...v1.6.0
429[1.5.0]: https://github.com/metalsmith/metalsmith/compare/v1.4.5...v1.5.0
430[1.4.5]: https://github.com/metalsmith/metalsmith/compare/v1.4.4...v1.4.5
431[1.4.4]: https://github.com/metalsmith/metalsmith/compare/v1.4.3...v1.4.4
432[1.4.3]: https://github.com/metalsmith/metalsmith/compare/v1.4.2...v1.4.3
433[1.4.2]: https://github.com/metalsmith/metalsmith/compare/v1.4.1...v1.4.2
434[1.4.1]: https://github.com/metalsmith/metalsmith/compare/v1.4.0...v1.4.1
435[1.4.0]: https://github.com/metalsmith/metalsmith/compare/v1.3.0...v1.4.0
436[1.3.0]: https://github.com/metalsmith/metalsmith/compare/v1.2.0...v1.3.0
437[1.2.0]: https://github.com/metalsmith/metalsmith/compare/v1.1.1...v1.2.0
438[1.1.1]: https://github.com/metalsmith/metalsmith/compare/v1.1.0...v1.1.1
439[1.1.0]: https://github.com/metalsmith/metalsmith/compare/v1.0.1...v1.1.0
440[1.0.1]: https://github.com/metalsmith/metalsmith/compare/v1.0.0...v1.0.1
441[1.0.0]: https://github.com/metalsmith/metalsmith/compare/v0.11.0...v1.0.0
442[0.11.0]: https://github.com/metalsmith/metalsmith/compare/v0.10.0...v0.11.0
443[0.10.0]: https://github.com/metalsmith/metalsmith/compare/v0.9.0...v0.10.0
444[0.9.0]: https://github.com/metalsmith/metalsmith/compare/v0.8.1...v0.9.0
445[0.8.1]: https://github.com/metalsmith/metalsmith/compare/v0.8.0...v0.8.1
446[0.8.0]: https://github.com/metalsmith/metalsmith/compare/v0.7.0...v0.8.0
447[0.7.0]: https://github.com/metalsmith/metalsmith/compare/v0.6.1...v0.7.0
448[0.6.1]: https://github.com/metalsmith/metalsmith/compare/v0.6.0...v0.6.1
449[0.6.0]: https://github.com/metalsmith/metalsmith/compare/v0.5.0...v0.6.0
450[0.5.0]: https://github.com/metalsmith/metalsmith/compare/v0.4.0...v0.5.0
451[0.4.0]: https://github.com/metalsmith/metalsmith/compare/v0.3.0...v0.4.0
452[0.3.0]: https://github.com/metalsmith/metalsmith/compare/v0.2.3...v0.3.0
453[0.2.3]: https://github.com/metalsmith/metalsmith/compare/v0.2.2...v0.2.3
454[0.2.2]: https://github.com/metalsmith/metalsmith/compare/v0.2.1...v0.2.2
455[0.2.1]: https://github.com/metalsmith/metalsmith/compare/v0.2.0...v0.2.1
456[0.2.0]: https://github.com/metalsmith/metalsmith/compare/v0.1.0...v0.2.0
457[0.1.0]: https://github.com/metalsmith/metalsmith/compare/v0.0.4...v0.1.0
458[0.0.4]: https://github.com/metalsmith/metalsmith/compare/v0.0.3...v0.0.4
459[0.0.3]: https://github.com/metalsmith/metalsmith/compare/v0.0.2...v0.0.3
460[0.0.2]: https://github.com/metalsmith/metalsmith/compare/v0.0.1...v0.0.2