# hexo changelog > A fast, simple & powerful blog framework, powered by Node.js. - Vendor: hexojs - Category: Frameworks & Libraries - Official site: https://hexo.io/ - Tracked by: What's New (https://whatsnew.fyi/product/hexo) - Harvested from: GitHub (hexojs/hexo) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## Releases ### v8.1.2 - Date: 2026-05-06 - Version: v8.1.2 - Original notes: https://github.com/hexojs/hexo/releases/tag/v8.1.2 - Permalink: https://whatsnew.fyi/product/hexo/releases/v8.1.2 - **fixed** — Fix noopener attribute in external_link (was incorrectly spelled as noopenner) - **fixed** — Fix incorrectly ignores single-line code blocks when escaping Swig and HTML comments - **changed** — Improve externalLink regexp performance - **changed** — Remove node internal api usage in loadPlugin - **security** — Add dependency-review action for vulnerability scanning ##### 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 - Date: 2025-10-31 - Version: v8.1.1 - Original notes: https://github.com/hexojs/hexo/releases/tag/v8.1.1 - Permalink: https://whatsnew.fyi/product/hexo/releases/v8.1.1 - **fixed** — Handle comment nesting in code fence and nunjucks ##### 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.json` by @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 - Date: 2025-10-26 - Version: v8.1.0 - Original notes: https://github.com/hexojs/hexo/releases/tag/v8.1.0 - Permalink: https://whatsnew.fyi/product/hexo/releases/v8.1.0 - **fixed** — Incorrect TOC anchor generation - **fixed** — Missing tags and categories when running hexo s with cache existed - **fixed** — Overly strict invalid tag format check in Swig parser - **fixed** — Updated post assets not being copied in hot processing when post_asset_folder is enabled - **fixed** — Nunjucks and code blocks in HTML comments were incorrectly converted - **changed** — Fix potential cache miss issues with moize - **changed** — Reduce ObjectAssign overhead - **changed** — Improve archy performance - **changed** — Reduce the number of match calls in metaGenerator - **changed** — Improve escapeAllSwigTags performance - **added** — Support skipping heading level in TOC ##### 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 `escapeAllSwigTags` by @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 s` with 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_folder` is 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 - Date: 2025-09-15 - Version: v8.0.0 - Original notes: https://github.com/hexojs/hexo/releases/tag/v8.0.0 - Permalink: https://whatsnew.fyi/product/hexo/releases/v8.0.0 - **removed** — Drop support for Node.js 16 - **removed** — Drop support for Node.js 18 - **added** — Bind hexo context to helper function callback - **added** — Add url config validation - **added** — Add permalink variable `timestamp` - **added** — Support additional options for Backtick Code Block - **added** — Enforce stricter extension checks in load_config - **fixed** — Change the judgement of whether it has been injected - **fixed** — Backtrack when tag is incomplete in escapeAllSwigTags - **fixed** — `hexo.locals.get('posts')` now shows all posts - **fixed** — Fix parsing error for code blocks in list items - **fixed** — Sort the tags in open_graph - **fixed** — Escape HTML in title of `code` and `include_code` tags - **changed** — Optimize external link filter for performance - **changed** — Add binary relation index for PostCategory/PostTag for performance - **changed** — Add cache for posts in listArchives - **changed** — Reduce GC overhead in escapeAllSwigTags - **changed** — Skip tag render when there is no swigTags - **changed** — Implement faster text-table ##### 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 `timestamp` by @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 `code` and `include_code` tags 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](https://github.com/hexojs/warehouse/pull/271) ##### Refactor * refactor(common): delete unused function `ignoreTmpAndHiddenFile` by @yoshinorin in https://github.com/hexojs/hexo/pull/5600 * delete scripts `pretest` by @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 `cheerio` from `0.22` to `1.0.0` by @yoshinorin in https://github.com/hexojs/hexo/pull/5603 * chore(deps): migrate `husky` from `8.x` to `9.x` by @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 contrib _[Truncated at 4000 characters — full notes: https://github.com/hexojs/hexo/releases/tag/v8.0.0]_ ### v7.3.0 - Date: 2024-07-01 - Version: v7.3.0 - Original notes: https://github.com/hexojs/hexo/releases/tag/v7.3.0 - Permalink: https://whatsnew.fyi/product/hexo/releases/v7.3.0 - **added** — Deep merge frontMatter of post and scaffold in renderScaffold - **added** — Add option to use slug as title of post - **added** — Specify maximum number of items to output in helper/toc - **fixed** — Revert backslashes handling on Windows - **changed** — Improve processing speed when config.post_asset_folder is enabled - **changed** — Upgrade ecmascript version in build ##### New Features * feat(renderScaffold): deepMerge frontMatter of post and scaffold by @uiolee in https://github.com/hexojs/hexo/pull/5472 * feat: add option to use slug as title of post by @uiolee in https://github.com/hexojs/hexo/pull/5470 * feat(helper/toc): specify maximum number of items to output by @KentarouTakeda in https://github.com/hexojs/hexo/pull/5487 ##### Fixes * Revert "refactor: backslashes on Windows (#5457)" by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5481 ##### Performances * perf(processor/post): improve processing speed when `config.post_asset_folder` is enabled by @yoshinorin in https://github.com/hexojs/hexo/pull/5473 ##### Test * Revert "test: add test case for issue #4334" by @D-Sketon in https://github.com/hexojs/hexo/pull/5475 ##### CI * ci(comment): fix wrong condition by @uiolee in https://github.com/hexojs/hexo/pull/5471 ##### Misc * build: upgrade ecmascript version by @uiolee in https://github.com/hexojs/hexo/pull/5507 ##### Full Changelog https://github.com/hexojs/hexo/compare/v7.2.0...v7.3.0 ### v7.2.0 - Date: 2024-04-17 - Version: v7.2.0 - Original notes: https://github.com/hexojs/hexo/releases/tag/v7.2.0 - Permalink: https://whatsnew.fyi/product/hexo/releases/v7.2.0 - **added** — Add an option to switch stripIndent in highlight - **changed** — Refactor types - **changed** — Make callback on exit optional - **changed** — Migrate typescript - **changed** — Handle backslashes on Windows - **fixed** — Fix post_link behaviour when using subdir - **fixed** — Use url_for in tag - **fixed** — Prevent path traversal in tag/include_code - **fixed** — Revert behavior of locals.tags and locals.categories ##### New Features * feat(highlight): add an option to switch stripIndent by @uiolee in https://github.com/hexojs/hexo/pull/5427 ##### Improved type definitions * refactor: refactor types by @D-Sketon in https://github.com/hexojs/hexo/pull/5398 * chore: make callback on exit optional by @dimaslanjaka in https://github.com/hexojs/hexo/pull/5421 * refactor: migrate typescript by @D-Sketon in https://github.com/hexojs/hexo/pull/5417 * refactor: migrate typescript by @D-Sketon in https://github.com/hexojs/hexo/pull/5430 ##### Fixes * Fix typos by @mobeicanyue in https://github.com/hexojs/hexo/pull/5426 * fix: post_link behaviour when using subdir by @leafbird in https://github.com/hexojs/hexo/pull/5419 * fix(tag): use url_for by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5385 * fix(tag/include_code): prevent path traversal by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5251 * revert(categories,tags): revert behavior of locals.tags and locals.categories by @uiolee in https://github.com/hexojs/hexo/pull/5388 ##### Refactor * refactor: backslashes on Windows by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5457 ##### Test * test: add test case for issue #4334 by @D-Sketon in https://github.com/hexojs/hexo/pull/5465 ##### CI/CD * ci: suppress comment err and reduce benchmark running by @uiolee in https://github.com/hexojs/hexo/pull/5454 ##### Docs * docs(README): Update Sponsors images by @uiolee in https://github.com/hexojs/hexo/pull/5410 ##### Dependencies * chore(deps): bump hexo-fs from ^4.1.1 to ^4.1.3 by @D-Sketon in https://github.com/hexojs/hexo/pull/5463 * chore(deps-dev): Limited `@types/node` version by @uiolee in https://github.com/hexojs/hexo/pull/5411 ##### New Contributors * @mobeicanyue made their first contribution in https://github.com/hexojs/hexo/pull/5426 * @leafbird made their first contribution in https://github.com/hexojs/hexo/pull/5419 **Full Changelog**: https://github.com/hexojs/hexo/compare/v7.1.1...v7.2.0 ### v7.1.1 - Date: 2024-01-22 - Version: v7.1.1 - Original notes: https://github.com/hexojs/hexo/releases/tag/v7.1.1 - Permalink: https://whatsnew.fyi/product/hexo/releases/v7.1.1 - **fixed** — Escape tags which include line breaks ##### Fixes * fix(escapeTags): escape tag which includes line break by @uiolee in https://github.com/hexojs/hexo/pull/5402 ##### Misc * chore: use `prepublishOnly` instead of `prepublish` and run `npm install` in `prepublishOnly` script by @yoshinorin in https://github.com/hexojs/hexo/pull/5399 **Full Changelog**: https://github.com/hexojs/hexo/compare/v7.1.0...v7.1.1 ### v7.1.0 - Date: 2024-01-19 - Version: v7.1.0 - Original notes: https://github.com/hexojs/hexo/releases/tag/v7.1.0 - Permalink: https://whatsnew.fyi/product/hexo/releases/v7.1.0 - **added** — Add URL hash support for post_link tag - **changed** — Refactor types - **changed** — Bump typescript from 4.9.5 to 5.3.2 - **changed** — Bump c8 from 8.0.1 to 9.0.0 - **changed** — Bump sinon from 15.2.0 to 17.0.1 - **changed** — Bump lint-staged from 14.0.1 to 15.2.0 - **changed** — Remove @ts/eslint-plugin and parser from dev dependencies - **fixed** — Cast from number to string explicitly in types - **fixed** — Permalink should be overwritten when post_asset_folder is true - **fixed** — Check tag completeness in escapeAllSwigTags ##### Notable Changes * chore(Hexo): add event emitter descriptor by @dimaslanjaka in https://github.com/hexojs/hexo/pull/5302 * refactor: refactor types by @D-Sketon in https://github.com/hexojs/hexo/pull/5344 ##### New Features * Added URL hash support for post_link tag by @iliayatsenko in https://github.com/hexojs/hexo/pull/5356 ##### Fixes * fix(types): cast from `number` to `string` explicitly by @yoshinorin in https://github.com/hexojs/hexo/pull/5342 * fix: permalink should be overwritten when post_asset_folder is true by @D-Sketon in https://github.com/hexojs/hexo/pull/5254 * fix(escapeAllSwigTags): check tag completeness by @uiolee in https://github.com/hexojs/hexo/pull/5395 ##### CI/CD * ci(commenter): use workflows_run event to comment flamegraph by @uiolee in https://github.com/hexojs/hexo/pull/5384 * ci(benchmark): add PR permissions for comment by @uiolee in https://github.com/hexojs/hexo/pull/5334 ##### Dependencies * chore: bump typescript from 4.9.5 to 5.3.2 by @dependabot in https://github.com/hexojs/hexo/pull/5358 * chore(deps-dev): remove @ts/eslint-plugin, parser by @uiolee in https://github.com/hexojs/hexo/pull/5290 * chore: bump c8 from 8.0.1 to 9.0.0 by @dependabot in https://github.com/hexojs/hexo/pull/5391 * chore(dev-deps): bump sinon from 15.2.0 to 17.0.1 by @dependabot in https://github.com/hexojs/hexo/pull/5343 * chore(dev-deps): bump lint-staged from 14.0.1 to 15.2.0 by @dependabot in https://github.com/hexojs/hexo/pull/5373 ##### New Contributors * @iliayatsenko made their first contribution in https://github.com/hexojs/hexo/pull/5356 **Full Changelog**: https://github.com/hexojs/hexo/compare/v7.0.0...v7.1.0 ### v7.0.0 - Date: 2023-10-31 - Version: v7.0.0 - Original notes: https://github.com/hexojs/hexo/releases/tag/v7.0.0 - Permalink: https://whatsnew.fyi/product/hexo/releases/v7.0.0 - **removed** — Drop gist tag - **removed** — Drop youtube tag - **removed** — Drop jsfiddle tag - **removed** — Drop vimeo tag - **removed** — Drop external_link boolean type - **removed** — Drop use_date_for_updated option for updated_option - **removed** — Remove front-matter property link - **changed** — Require Node 14 or higher - **changed** — Refactor syntax highlighting with new configuration option syntax_highlighter - **changed** — Migrate codebase to TypeScript - **changed** — Use WHATWG URL API instead of url.resolve - **added** — Add extend API for highlight - **added** — Search for both slug and title in post_link tag - **added** — Support quotes in img tag title and alt - **added** — Support default title from path in console-new command - **added** — Add option to disable titlecase in post - **added** — Add exclude_languages feature to prismjs - **added** — Use slug when title is empty in post_link tag - **added** — Add url_for and full_url_for tag plugins - **added** — Allow top-level await in plugins or scripts - **added** — Define global variable hexo ##### Migration Guide ###### built-in tags > **WARNING** > Some of the built-in tags have been dropped (`gist`, `youtube`, `jsfiddle`, and `vimeo`). If you use those tags in your existing blog posts, you can install [hexo-tag-embed](https://github.com/hexojs/hexo-tag-embed) to continue using them with Hexo `v7.0.0`. > **Note** > No need to install it if you are not using (or will not use) `gist`, `youtube`, `jsfiddle`, `vimeo` tags in your post or page. ```sh $ npm i hexo-tag-embed ``` ###### Syntax highlighting > **WARNING** > Syntax highlighting is refactored and controlled by the following settings. See [Syntax Highlighting](https://hexo.io/docs/syntax-highlight#Configuration) for more details. ```yaml syntax_highlighter: highlight.js # highlight.js | prismjs | ``` ##### Breaking Changes * chore: require node14+ by @yoshinorin in https://github.com/hexojs/hexo/pull/5061 * Dropped tag features. Please see `Migration Guid` section. * refactor: drop `gist` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5067 * refactor: drop `youtube` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5064 * refactor: drop `jsfiddle` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5066 * refactor: drop `vimeo` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5065 * Dropped features * refactor: drop `external_link` boolean type by @yoshinorin in https://github.com/hexojs/hexo/pull/5063 * refactor: drop `use_date_for_updated` option for `updated_option` by @yoshinorin in https://github.com/hexojs/hexo/pull/5062 * feat(post): remove front-matter property `link` (#5253) by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5253 * revert: Access data files from source folder (#1969) (#5325) by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5325 * refactor highlight: add extend api for highlight by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5095 ##### Notable Changes * Migrate TypeSctipt * refactor: prepare for migration to typescript by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5094 * refactor: migrate typescript by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5092 * Refactor types by @Pcrab in https://github.com/hexojs/hexo/pull/5178 ##### New Features * feat(tags/post_link): search for both slug and title by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5114 * feat(open_graph): drop google_plus by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5115 * feat(tags/img): support quotes in img title and alt by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5112 * feat(console-new): support default title from path by @xu-song in https://github.com/hexojs/hexo/pull/4714 * feat: add an option to disable titlecase in post by @renbaoshuo in https://github.com/hexojs/hexo/pull/5156 * feat: add exclude_languages feature to prismjs by @D-Sketon in https://github.com/hexojs/hexo/pull/5182 * feat(tags/post_link): use slug when title is empty by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5220 * feat: add url_for and full_url_for tag plugins by @D-Sketon in https://github.com/hexojs/hexo/pull/5198 * feat: allow top-level await in plugins or scripts by @Pcrab in https://github.com/hexojs/hexo/pull/5228 * feat: define global variable hexo (#5242) by @dimaslanjaka in https://github.com/hexojs/hexo/pull/5242 ##### Fixes * fix(#1099): hexo server error when changing the config by @D-Sketon in https://github.com/hexojs/hexo/pull/5055 * fix: exclude_languages does not work in code blocks by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5088 * When promisifying, store does not preserve disableNunjucks property by @tcr in https://github.com/hexojs/hexo/pull/2670 * fix(post): skip before_post_render and after_post_render on non-posts by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5118 * fix: Failed to create p _[Truncated at 4000 characters — full notes: https://github.com/hexojs/hexo/releases/tag/v7.0.0]_ ### v7.0.0-rc2 — v7.0.0 (RC2) - Date: 2023-07-11 - Version: v7.0.0-rc2 - Original notes: https://github.com/hexojs/hexo/releases/tag/v7.0.0-rc2 - Permalink: https://whatsnew.fyi/product/hexo/releases/v7.0.0-rc2 - Labels: Pre-release - **added** — Add exclude_languages feature to prismjs - **added** — Use slug when title is empty in tags/post_link - **added** — Add url_for and full_url_for tag plugins - **added** — Allow top-level await in plugins or scripts - **fixed** — Handle empty code block in backtick_code - **fixed** — Fix helper function not working fine with relative_url in moize - **removed** — Drop gist tag - **removed** — Drop youtube tag - **removed** — Drop jsfiddle tag - **removed** — Drop vimeo tag - **removed** — Drop external_link boolean type - **removed** — Drop use_date_for_updated option for updated_option - **changed** — Require Node.js 14 or higher - **added** — Search for both slug and title in tags/post_link - **added** — Support quotes in img title and alt - **added** — Support default title from path in console-new - **added** — Add an option to disable titlecase in post - **fixed** — Fix hexo server error when changing the config - **fixed** — Fix exclude_languages does not work in code blocks - **fixed** — Fix failed to create post with special character title #### Changes since v7.0.0 (RC1) ##### New Features * feat: add exclude_languages feature to prismjs by @D-Sketon in https://github.com/hexojs/hexo/pull/5182 * feat(tags/post_link): use slug when title is empty by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5220 * feat: add url_for and full_url_for tag plugins by @D-Sketon in https://github.com/hexojs/hexo/pull/5198 * feat: allow top-level await in plugins or scripts by @Pcrab in https://github.com/hexojs/hexo/pull/5228 ##### Fixes * fix(backtick_code): handle empty code block by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5206 * fix(moize): helper function not working fine with relative_url by @D-Sketon in https://github.com/hexojs/hexo/pull/5217 ##### Refactor * Refactor types by @Pcrab in https://github.com/hexojs/hexo/pull/5178 ##### Test * test: improve coverage by @D-Sketon in https://github.com/hexojs/hexo/pull/5221 * test: improve coverage by @D-Sketon in https://github.com/hexojs/hexo/pull/5223 ##### Dependencies * chore: change dependencies version by @Pcrab in https://github.com/hexojs/hexo/pull/5202 ##### New Contributors * @Pcrab made their first contribution in https://github.com/hexojs/hexo/pull/5178 **Full Changelog**: https://github.com/hexojs/hexo/compare/v7.0.0-rc1...v7.0.0-rc2 ----- #### Changes between v6.3.0 and v7.0.0 (RC1) ##### Migration Guide Some of the built-in tags have been dropped (E.g. `gist`, `youtube`, `jsfiddle`, and `vimeo`). If you use those tags in your existing blog posts, you can install [hexo-tag-embed](https://github.com/hexojs/hexo-tag-embed) to continue using them with Hexo 7.0.0. > **Note** > > No need to install it if you are not using (or will not use) `gist`, `youtube`, `jsfiddle`, `vimeo` tags in your post or page. ```sh $ npm i hexo-tag-embed ``` ##### Breaking Changes * chore: require node14+ by @yoshinorin in https://github.com/hexojs/hexo/pull/5061 * Dropped tag features. Please see `Migration Guid` section. * refactor: drop `gist` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5067 * refactor: drop `youtube` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5064 * refactor: drop `jsfiddle` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5066 * refactor: drop `vimeo` tag by @yoshinorin in https://github.com/hexojs/hexo/pull/5065 * Dropped features * refactor: drop `external_link` boolean type by @yoshinorin in https://github.com/hexojs/hexo/pull/5063 * refactor: drop `use_date_for_updated` option for `updated_option` by @yoshinorin in https://github.com/hexojs/hexo/pull/5062 ##### Notable Changes * Migrate TypeSctipt * refactor: prepare for migration to typescript by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5094 * refactor: migrate typescript by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5092 ##### New Features * feat(tags/post_link): search for both slug and title by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5114 * feat(open_graph): drop google_plus by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5115 * feat(tags/img): support quotes in img title and alt by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5112 * feat(console-new): support default title from path by @xu-song in https://github.com/hexojs/hexo/pull/4714 * feat: add an option to disable titlecase in post by @renbaoshuo in https://github.com/hexojs/hexo/pull/5156 ##### Fixes * fix(#1099): hexo server error when changing the config by @D-Sketon in https://github.com/hexojs/hexo/pull/5055 * fix: exclude_languages does not work in code blocks by @stevenjoezhang in https://github.com/hexojs/hexo/pull/5088 * When promisifying, store does not preserve disableNunjucks property by @tcr in https://github.com/hexojs/hexo/pull/2670 * fix(post): skip before_post_render and after_post_render on non-posts by @stevenjoezhang in https://g _[Truncated at 4000 characters — full notes: https://github.com/hexojs/hexo/releases/tag/v7.0.0-rc2]_