hexojs/hexo
### [`v4.1.0`](https://togithub.com/hexojs/hexo/releases/4.1.0)
[Compare Source](https://togithub.com/hexojs/hexo/compare/4.0.0...4.1.0)
##### Breaking change
- Requires Node 8.10 or above [#3778]
- Node 8 is going to be deprecated in [less than a month](https://togithub.com/nodejs/Release/blob/master/README.md), we strongly urge to upgrade to Node 10 or newer
- `og:locale` Open Graph tag won't be inserted if `language:` (in config, front-matter of post/page or [`open_graph()`](https://hexo.io/docs/helpers#open-graph) helper) is not in `language_TERRITORY` format, otherwise it assumes `en_US` value [#3808]
- `en` is invalid
- `en_GB` is valid
- Not all locales are supported (e.g. `en_AU` is not valid), see [official list](https://developers.facebook.com/docs/messenger-platform/messenger-profile/supported-locales/)
##### Features
- Support adding hour and minute to post permalink [#3629]
- Example usage:
```yml
_config.yml
permalink: :year/:month/:day/:hour/:minute/:title/
```
- Results in `https://yoursite.com/2019/12/09/23/59/a-post/`
- Insert `article:published_time` [#3674] `article:author` [#3805] Open Graph tags
- Enable `lazyload` in iframe-related tag plugins [#3798]
- Affects [`iframe`](https://hexo.io/docs/tag-plugins#iframe), [`jsfiddle`](https://hexo.io/docs/tag-plugins#jsFiddle), [`vimeo`](https://hexo.io/docs/tag-plugins#Vimeo), [`youtube`](https://hexo.io/docs/tag-plugins#YouTube) tag plugins
- Requires [supported browsers](https://caniuse.com/#feat=loading-lazy-attr) to benefit from this feature
- Unsupported browsers would simply ignore the attribute, thus it is safe to use and always enabled
- `meta_generator` helper to insert [metadata](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta) element tag [#3782]
- Example usage:
- Insert the following snippet (if EJS is used) inside `` element of your theme layout,
```js
<%- meta_generator() %>
```
- would output ``
- Hexo 3.9.0+ inserts the tag automatically; to get the performance benefit, [`meta_generator:`](https://hexo.io/docs/configuration#Extensions) option needs to be disabled,
```yml
_config.yml
meta_generator: false
```
- Support custom attributes in [`js()`](https://hexo.io/docs/helpers#js) [#3681] and [`css()`](https://hexo.io/docs/helpers#css) [#3690] helpers
- Example usage:
```js
<%- js({ src: 'script.js', integrity: 'foo', async: true }) %>
//
<%- css({ href: 'style.css', integrity: 'foo' }) %>
//
```
- Support `wrap:` option to enable/disable wrapping backtick codeblock in `
` element [#3827]
- Enabled by default, enabling `line_number` also enables it
- Configure in [`highlight:`](https://hexo.io/docs/configuration#Writing)
```yml
_config.yml
highlight:
line_number: false # must be disabled to disable wrap:
wrap: false
```
- This option also can be passed to [`codeblock()`](https://hexo.io/docs/tag-plugins#Code-Block) tag plugin [#3848]
```js
{% codeblock lang:js wrap:false %}
const foo = (bar) => {
return bar;
};
{% endcodeblock %}
```
##### Fixes
- Retain blank lines in a codeblock attached in blockquote [#3770]
- Replaced deprecated `og_updated_time` [Open Graph](https://ogp.me/) tag with `article:modified_time` [#3674]
- Replaced deprecated `keywords` Open Graph tag with `article:tag` [#3805]
- meta_generator tag should be inserted into `` that spans multiple lines [#3778]
- No longer clear database `db.json` when running `hexo new` or `hexo --help` [#3793]
- Completely ignore files/folders specified in [`ignore:`](https://hexo.io/docs/configuration#Include-Exclude-Files-or-Folders) option [#3797]
- If you're using Webpack or related tools in your theme, the `node_modules` folder could cause some issues
- A temporary workaround is to configure Hexo to ignore that folder,
```yml
_config.yml
ignore: '**/themes/*/node_modules/**'
```
- The workaround will no longer be necessary in future version
- jsfiddle, vimeo and youtube tag plugins now use https only [#3806]
- `external_link` filter should not process data URLs (e.g. `mailto:` & `javascript:`) [#3812] and `` element [#3895]
- Prevent unnecessary insertion of front-matter when using alias in Hexo [CLI](https://hexo.io/docs/commands) [#3830]
- `-p` is alias of `--path`
- `-s` is alias of `--slug`
- `-r` is alias of `--replace`
- Applies `include:` and `exclude:` [options](https://hexo.io/docs/configuration#Include-Exclude-Files-or-Folders) to post's asset folder [#3882]
- `ignore:` option should work for files, in addition to folders [#3878]
##### Housekeeping
- Add [FOSSA](https://fossa.com/) license analyzer for open-source software license compliance [#3779]
- Run benchmark in CI to catch regression [#3776]
- Further reduces lodash usage [#3786], [#3788], [#3790], [#3785], [#3809], [#3791], [#3810], [#3826], [#3867], [#3845]
- Remove unnecessary file at the end of unit test [#3792]
- Add funding source to npm [#3851]
- Update bump strip-ansi from 5.2.0 to 6.0.0 [#3852]
- Update chalk from 2.4.2 to 3.0.0 [#3853]
Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
Newsflash: Renovate has joined WhiteSource, and is now free for all use. Learn more or view updated terms and privacy policies.
This PR contains the following updates:
4.0.0
->4.1.0
Release Notes
hexojs/hexo
### [`v4.1.0`](https://togithub.com/hexojs/hexo/releases/4.1.0) [Compare Source](https://togithub.com/hexojs/hexo/compare/4.0.0...4.1.0) ##### Breaking change - Requires Node 8.10 or above [#3778] - Node 8 is going to be deprecated in [less than a month](https://togithub.com/nodejs/Release/blob/master/README.md), we strongly urge to upgrade to Node 10 or newer - `og:locale` Open Graph tag won't be inserted if `language:` (in config, front-matter of post/page or [`open_graph()`](https://hexo.io/docs/helpers#open-graph) helper) is not in `language_TERRITORY` format, otherwise it assumes `en_US` value [#3808] - `en` is invalid - `en_GB` is valid - Not all locales are supported (e.g. `en_AU` is not valid), see [official list](https://developers.facebook.com/docs/messenger-platform/messenger-profile/supported-locales/) ##### Features - Support adding hour and minute to post permalink [#3629] - Example usage: ```yml _config.yml permalink: :year/:month/:day/:hour/:minute/:title/ ``` - Results in `https://yoursite.com/2019/12/09/23/59/a-post/` - Insert `article:published_time` [#3674] `article:author` [#3805] Open Graph tags - Enable `lazyload` in iframe-related tag plugins [#3798] - Affects [`iframe`](https://hexo.io/docs/tag-plugins#iframe), [`jsfiddle`](https://hexo.io/docs/tag-plugins#jsFiddle), [`vimeo`](https://hexo.io/docs/tag-plugins#Vimeo), [`youtube`](https://hexo.io/docs/tag-plugins#YouTube) tag plugins - Requires [supported browsers](https://caniuse.com/#feat=loading-lazy-attr) to benefit from this feature - Unsupported browsers would simply ignore the attribute, thus it is safe to use and always enabled - `meta_generator` helper to insert [metadata](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta) element tag [#3782] - Example usage: - Insert the following snippet (if EJS is used) inside `` element of your theme layout, ```js <%- meta_generator() %> ``` - would output `` - Hexo 3.9.0+ inserts the tag automatically; to get the performance benefit, [`meta_generator:`](https://hexo.io/docs/configuration#Extensions) option needs to be disabled, ```yml _config.yml meta_generator: false ``` - Support custom attributes in [`js()`](https://hexo.io/docs/helpers#js) [#3681] and [`css()`](https://hexo.io/docs/helpers#css) [#3690] helpers - Example usage: ```js <%- js({ src: 'script.js', integrity: 'foo', async: true }) %> // <%- css({ href: 'style.css', integrity: 'foo' }) %> // ``` - Support `wrap:` option to enable/disable wrapping backtick codeblock in `Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "
rebase!
".:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
Newsflash: Renovate has joined WhiteSource, and is now free for all use. Learn more or view updated terms and privacy policies.