What changed in hexo from 7 to 8
4 releases numbered after v7.3.0 up to and including v8.1.2, stable releases only. v7.3.0 and v8.1.2 are the newest stable releases of 7 and 8 we track; this page follows them as new ones ship.
- 1 mentions breaking changes
- 1 removes or deprecates something
36 changes across 4 releases
Added 6
Changed 13
- Improve externalLink regexp performance
- Remove node internal api usage in loadPlugin
- Fix potential cache miss issues with moize
- Reduce ObjectAssign overhead
- Improve archy performance
- Reduce the number of match calls in metaGenerator
- Improve escapeAllSwigTags performance
- Optimize external link filter for performance
- Add binary relation index for PostCategory/PostTag for performance
- Add cache for posts in listArchives
- Reduce GC overhead in escapeAllSwigTags
- Skip tag render when there is no swigTags
- Implement faster text-table
Fixed 14
- Fix noopener attribute in external_link (was incorrectly spelled as noopenner)
- Fix incorrectly ignores single-line code blocks when escaping Swig and HTML comments
- Handle comment nesting in code fence and nunjucks
- Incorrect TOC anchor generation
- Missing tags and categories when running hexo s with cache existed
- Overly strict invalid tag format check in Swig parser
- Updated post assets not being copied in hot processing when post_asset_folder is enabled
- Nunjucks and code blocks in HTML comments were incorrectly converted
- Change the judgement of whether it has been injected
- Backtrack when tag is incomplete in escapeAllSwigTags
- `hexo.locals.get('posts')` now shows all posts
- Fix parsing error for code blocks in list items
- Sort the tags in open_graph
- Escape HTML in title of `code` and `include_code` tags
Removed 2
- Drop support for Node.js 16
- Drop support for Node.js 18
Security 1
- Add dependency-review action for vulnerability scanning
Original release notes, newest first
The list above is our reading of these notes; the originals from hexojs are here, one fold per release.
v8.1.2
Fixes
- fix(external_link): noopenner should be noopener by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5729
- fix: Incorrectly ignores single-line code blocks when escaping Swig and HTML comments by @D-Sketon in https://github.com/hexojs/hexo/pull/5722
Performances
- perf: faster externalLink regexp by @D-Sketon in https://github.com/hexojs/hexo/pull/5706
Refactor
- refactor: remove node internal api usage in loadPlugin by @renbaoshuo in https://github.com/hexojs/hexo/pull/5769
CI/CD
- ci: add dependency-review action for vulnerability scanning by @yoshinorin in https://github.com/hexojs/hexo/pull/5734
- ci: enable trusted publishing by @yoshinorin in https://github.com/hexojs/hexo/pull/5735
Test
- fix(test): add missing await to unlink in save_database test by @KentarouTakeda in https://github.com/hexojs/hexo/pull/5753
Dependencies
- chore(deps): bump actions/checkout from 5 to 6 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5724
- chore(deps): bump actions/download-artifact from 6 to 7 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5726
- chore(deps): bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5727
- chore(deps): bump actions/dependency-review-action from 4.8.2 to 4.8.3 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5741
- chore(deps): bump actions/dependency-review-action from 4.8.3 to 4.9.0 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5744
- chore(deps): bump marocchino/sticky-pull-request-comment from 2 to 3 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5746
- chore(deps): bump actions/download-artifact from 7 to 8 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5742
- chore(deps): bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5743
- chore(deps): add lockfile by @yoshinorin in https://github.com/hexojs/hexo/pull/5739
Misc
- fix: update ESLint test configuration by @D-Sketon in https://github.com/hexojs/hexo/pull/5725
Full Changelog: https://github.com/hexojs/hexo/compare/v8.1.1...v8.1.2
v8.1.1
Fixes
- fix(regression): handle comment nesting in code fence and nunjucks by @D-Sketon in https://github.com/hexojs/hexo/pull/5717
Misc
- chore: use object format for repository field in
package.jsonby @yoshinorin in https://github.com/hexojs/hexo/pull/5714
Full Changelog: https://github.com/hexojs/hexo/compare/v8.1.0...v8.1.1
v8.1.0
Performances
- perf: fix potential cache miss issues with moize by @D-Sketon in https://github.com/hexojs/hexo/pull/5694
- perf: reduce ObjectAssign overhead by @D-Sketon in https://github.com/hexojs/hexo/pull/5698
- perf: faster archy by @D-Sketon in https://github.com/hexojs/hexo/pull/5700
- perf: reduce the number of match calls in metaGenerator by @D-Sketon in https://github.com/hexojs/hexo/pull/5707
- perf: faster
escapeAllSwigTagsby @D-Sketon in https://github.com/hexojs/hexo/pull/5699
Fixes
- fix/perf: Incorrect TOC anchor generation by @D-Sketon in https://github.com/hexojs/hexo/pull/5696
- fix(regression): missing tags and categories when running
hexo swith cache existed by @D-Sketon in https://github.com/hexojs/hexo/pull/5697 - fix: fix ts error in test by @D-Sketon in https://github.com/hexojs/hexo/pull/5709
- fix(regression): remove overly strict invalid tag format check in Swig parser by @D-Sketon in https://github.com/hexojs/hexo/pull/5691
- fix(processor/post): updated post assets not being copied in hot processing when
post_asset_folderis enabled by @yoshinorin in https://github.com/hexojs/hexo/pull/5704 - fix: nunjucks/code blocks in HTML comments were incorrectly converted by @D-Sketon in https://github.com/hexojs/hexo/pull/5616
Refactor
- refactor(toc): support skipping heading level by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5653
Dependencies
- chore: bump actions/setup-node from 5 to 6 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5708
- chore(deps): bump actions/download-artifact from 4 to 5 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5682
- chore(deps): bump actions/download-artifact from 5 to 6 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5710
- chore(deps): bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5711
- chore(deps): bump hexo-util from 3 to 4 by @D-Sketon in https://github.com/hexojs/hexo/pull/5712
Full Changelog: https://github.com/hexojs/hexo/compare/v8.0.0...v8.1.0
v8.0.0
Breaking Changes
- chore: drop Node.js 16 by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5592
- chore: drop Node.js 18 by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5674
New Features
- feat: bind hexo context to helper function callback by @dimaslanjaka in https://github.com/hexojs/hexo/pull/5555
- feat: add url config validation by @ShaytonXu in https://github.com/hexojs/hexo/pull/5578
- feat: add permalink variable
timestampby @uiolee in https://github.com/hexojs/hexo/pull/5611 - feat: Support additional options for Backtick Code Block by @D-Sketon in https://github.com/hexojs/hexo/pull/5625
- feat(load_config): enforce stricter extension checks by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5591
Fixes
- fix:changed the judgement of whether it has been injected by @mRNA16 in https://github.com/hexojs/hexo/pull/5573
- fix(escapeAllSwigTags): backtrack when tag is incomplete by @D-Sketon in https://github.com/hexojs/hexo/pull/5618
- fix:
hexo.locals.get('posts')doesn't show all posts by @D-Sketon in https://github.com/hexojs/hexo/pull/5612 - fix: Parsing error for code blocks in list items by @D-Sketon in https://github.com/hexojs/hexo/pull/5617
- fix(open_graph): sort the tags by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5656
- Escape HTML in title of
codeandinclude_codetags by @tommy351 in https://github.com/hexojs/hexo/pull/5688
Performances
- perf(external_link): optimize external link filter by @D-Sketon in https://github.com/hexojs/hexo/pull/5598
- perf(PostCategory/PostTag): add binary relation index for performance by @D-Sketon in https://github.com/hexojs/hexo/pull/5605
- perf(listArchives): add cache for posts by @D-Sketon in https://github.com/hexojs/hexo/pull/5624
- perf(escapeAllSwigTags): reducing GC overhead by @D-Sketon in https://github.com/hexojs/hexo/pull/5620
- perf: skip tag render when there is no swigTags by @D-Sketon in https://github.com/hexojs/hexo/pull/5650
- perf: faster text-table by @D-Sketon in https://github.com/hexojs/hexo/pull/5665
- warehouse6
- perf(model): add caching for data keys by @D-Sketon in #271
Refactor
- refactor(common): delete unused function
ignoreTmpAndHiddenFileby @yoshinorin in https://github.com/hexojs/hexo/pull/5600 - delete scripts
pretestby @uiolee in https://github.com/hexojs/hexo/pull/5610 - refactor(moment): remove unused timezone setting by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5654
Test
- test(box/file): extend the mocha timeout to prevent the async file read test from failing by @yoshinorin in https://github.com/hexojs/hexo/pull/5601
- test: improve coverage by @D-Sketon in https://github.com/hexojs/hexo/pull/5638
Depenrencies
- chore(deps-dev): bump @types/node to ^20.16.10 by @uiolee in https://github.com/hexojs/hexo/pull/5558
- chore(deps): remove resolve by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5594
- chore(deps): update dependencies by @yoshinorin in https://github.com/hexojs/hexo/pull/5597
- chore(deps): update
cheeriofrom0.22to1.0.0by @yoshinorin in https://github.com/hexojs/hexo/pull/5603 - chore(deps): migrate
huskyfrom8.xto9.xby @yoshinorin in https://github.com/hexojs/hexo/pull/5602 - chore(deps): update eslint by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5599
- chore(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5684
- chore(deps): bump strip-ansi from 6.0.1 to 7.1.0 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5218
- chore: bump actions/setup-node from 4 to 5 by @dependabot[bot] in https://github.com/hexojs/hexo/pull/5687
Misc
- chore(lint): apply eslint to test files by @yoshinorin in https://github.com/hexojs/hexo/pull/5655
New Contributors
- @mRNA16 made their first contribution in https://github.com/hexojs/hexo/pull/5573
- @ShaytonXu made their first contribution in https://github.com/hexojs/hexo/pull/5578
Full Changelog: https://github.com/hexojs/hexo/compare/v7.3.0...v8.0.0