mysticatea/eslint-plugin-node
### [`v11.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v11.0.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v10.0.0...v11.0.0)
#### 💥 Breaking changes
- [`b6cb9a0`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b6cb9a071a7177ad625cde07541b9d2f31aab35b) updated `node/no-unsupported-features/node-builtins` rule based on Node.js 13.2.0.
- [`fb9ce15`](https://togithub.com/mysticatea/eslint-plugin-node/commit/fb9ce15fb6d465f2cead242a5daae2599ce90142) updated `node/no-unsupported-features/es-syntax` rule to recognize BigInt literal property names.
- [`4295f6a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/4295f6a45635ab61c53a8d51c19e1858a208492d) updated the rules that check global variables to recognize `globalThis.*`.
- [`04051ed`](https://togithub.com/mysticatea/eslint-plugin-node/commit/04051edfe3aa8cdb9f1aa87bbd4130021f767174) updated `node/no-unsupported-features/es-builtins` rule to recognize `globalThis`.
#### ✨ Enhancements
- [`276a9ad`](https://togithub.com/mysticatea/eslint-plugin-node/commit/276a9ad0fa8d6db224aae6fe6d35146a3fac9377) updated `node/no-deprecated-api` rule to allow revoked deprecations.
- [`972f828`](https://togithub.com/mysticatea/eslint-plugin-node/commit/972f828d3134a9d3ec426cb11aa1cd9f66b657a2) updated `node/no-unsupported-features/node-builtins` rule to handle backporting properly.
#### 🐛 Bug fixes
- [`4f74fbf`](https://togithub.com/mysticatea/eslint-plugin-node/commit/4f74fbf3d674ab9104880954af86f40acd88fb8e) fixed a crash bug around dynamic import syntax.
### [`v10.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v10.0.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.2.0...v10.0.0)
This release supports BigInt and Dynamic Imports if you are using ESLint 6.2.0 or later.
#### 💥 Breaking Changes
- [`9ea67c9`](https://togithub.com/mysticatea/eslint-plugin-node/commit/9ea67c9e130c3da5f1ce9edc67241e1803db9264) updated `node/no-unsupported-features/es-syntax` rule to recognize BigInt literals and `import()`.
- [`b91b48d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b91b48df112426b2eb86479e4841f7008ac7cdaf) updated `node/no-unsupported-features/es-builtins` rule to recognize `BigInt`, `BigInt64Array`, `BigUint64Array`, and `Promise.allSettled`.
- [`b57a4f9`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b57a4f97dcc6ea46e3b7aa8f7e25ab59a3357375) updated `node/file-extension-in-import`, `node/no-extraneous-import`, `node/no-missing-import`, and `node/no-unpublished-import` rules to recognize `import()`.
- [`4b9c4d7`](https://togithub.com/mysticatea/eslint-plugin-node/commit/4b9c4d7d5deb9b66a6f37c0a440131500e51624f) updated `node/no-deprecated-api` rule to recognize `module.createRequireFromPath`.
- [`9c574ba`](https://togithub.com/mysticatea/eslint-plugin-node/commit/9c574ba29390cd5f793885d956c1c89a6d30a7d5) updated `plugin:node/recommended` and the other configs.
- It added `node/no-exports-assign` rule.
- It changed `exports` global variable writable.
- It enabled `node/*-import` rules in CommonJS mode as well.
#### ✨ New rules
- [`a0f0ee1`](https://togithub.com/mysticatea/eslint-plugin-node/commit/a0f0ee1efa860aa1633a7d84e73247e09a950b0b) added `node/no-exports-assign` rule that disallows `exports = {}`.
### [`v9.2.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.2.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.1.0...v9.2.0)
#### ✨ New Rules
- [`c1d5dbf`](https://togithub.com/mysticatea/eslint-plugin-node/commit/c1d5dbfbd01e1d2483fc3b970bc2ab2d61580db6) added a new rule `no-callback-literal`.
#### 🐛 Bug Fixes
- [`72de3a3`](https://togithub.com/mysticatea/eslint-plugin-node/commit/72de3a30a1d66414eaff3603ddc74628967a9ea3) updated `eslint-utils` for security fix.
### [`v9.1.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.1.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.0.1...v9.1.0)
#### ✨ Features
- [`fd9d19d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/fd9d19d369fcea13518ca97b669b9e358cd137a8) updated `no-deprecated-api` to not suggest alternative APIs if it has not supported on configured Node.js version. Thank you, [@Lalem001](https://togithub.com/Lalem001) !
#### 🐛 Bug Fixes
- [`e5aee3c`](https://togithub.com/mysticatea/eslint-plugin-node/commit/e5aee3c86d0f33788c9a11f9c3e01d8083291513) updated `semver` package to not crash on wildcard `*` version range.
### [`v9.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.0.1)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.0.0...v9.0.1)
#### 🐛 Bug Fixes
- [`dfb4dc0`](https://togithub.com/mysticatea/eslint-plugin-node/commit/dfb4dc0202a9f9eb106b4dddb6c0f0205fabaff6) fixed the false positive of `node/file-extension-in-import` rule on scoped packages ([#160](https://togithub.com/mysticatea/eslint-plugin-node/issues/160)).
### [`v9.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.0.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v8.0.1...v9.0.0)
Update for Node.js v12 :tada:
#### 💥 Breaking Changes
- [`c95b2fd`](https://togithub.com/mysticatea/eslint-plugin-node/commit/c95b2fd5959756d53c011fa1136ad9499154bfc6) dropped Node.js 6 support because of End-of-Life.
- [`fe2343f`](https://togithub.com/mysticatea/eslint-plugin-node/commit/fe2343f2afda7931d3a980858388be4d8bf0a31b) dropped ESLint 4 support. New supported versions are `^5.16.0` and `>=6.0.0`.
- [`7e0c2c5`](https://togithub.com/mysticatea/eslint-plugin-node/commit/7e0c2c5fa547598132441be57279e092517af08e) updated [node/no-deprecated-api] rule to check new deprecated APIs in Node.js 12.
- [`5d79f2d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/5d79f2d24bd147f35a8e3f3d906b4567270acaab) updated [node/no-unsupported-features/node-builtins] rule to recognize new APIs in Node.js 12.
- [`02d61cf`](https://togithub.com/mysticatea/eslint-plugin-node/commit/02d61cfcc1201550945a477c8fcf95572d7b6fec) updated [node/no-unsupported-features/es-builtins] rule to recognize new APIs in Node.js 12.
- [`b94731a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b94731af0b89c9f0e0ca11298a1cbea40c5dacf0) updated the rules for `require()` such as [node/no-missing-require] rule to check `require.resolve()` as well.
- [`2061413`](https://togithub.com/mysticatea/eslint-plugin-node/commit/206141312ae7f1f2177393d55228da09da6573a4) updated `plugin:node/recommended` preset.
#### ✨ New Rules
- [`a3e0e29`](https://togithub.com/mysticatea/eslint-plugin-node/commit/a3e0e29b2ef03db2e597064a066bdbbd3ce734f5) added [node/file-extension-in-import] rule which enforce the style of file extensions.
- [`e41a1e0`](https://togithub.com/mysticatea/eslint-plugin-node/commit/e41a1e08729430edca550636437738529721d286) added [node/prefer-promises/dns] rule and [node/prefer-promises/fs] rule which enforce to use Promise API instead of Callback API.
[node/no-deprecated-api]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-deprecated-api.md
[node/no-unsupported-features/node-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-unsupported-features/node-builtins.md
[node/no-unsupported-features/es-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-unsupported-features/es-builtins.md
[node/no-missing-require]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-missing-require.md
[node/file-extension-in-import]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/file-extension-in-import.md
[node/prefer-promises/dns]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/prefer-promises/dns.md
[node/prefer-promises/fs]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/prefer-promises/fs.md
### [`v8.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v8.0.1)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v8.0.0...v8.0.1)
#### 🐛 Bug fixes
- [`62ba642`](https://togithub.com/mysticatea/eslint-plugin-node/commit/62ba6425a73845c235e93d706b7d826f70853c40) fixed the wrong messages of `node/no-deprecated-api` rule ([#142](https://togithub.com/mysticatea/eslint-plugin-node/issues/142)).
- [`0225b02`](https://togithub.com/mysticatea/eslint-plugin-node/commit/0225b02d0f3f8dbf2d2d52577455bf9817e925ca)...[`0593c67`](https://togithub.com/mysticatea/eslint-plugin-node/commit/0593c67576c86b2cbf4990db38d1cc4707b2f309) fixed the false positives of `no-unpublished-(bin|import|require)` rules ([#115](https://togithub.com/mysticatea/eslint-plugin-node/issues/115), [#126](https://togithub.com/mysticatea/eslint-plugin-node/issues/126)).
### [`v8.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v8.0.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v7.0.1...v8.0.0)
This release focuses on supporting new things that were added between Node.js 8.7.0 and 11.0.0.
#### Breaking changes
- [`5860795`](https://togithub.com/mysticatea/eslint-plugin-node/commit/58607951356dc63cd33366282eeda98ebd587dd0) updated `node/no-deprecated-api` rule to disallow new deprecated APIs.
Especially, it includes [legacy URL API](https://nodejs.org/dist/v11.0.0/docs/api/url.html#url_legacy_url_api).
- [`d153b93`](https://togithub.com/mysticatea/eslint-plugin-node/commit/d153b93809c079b1be64aab706c14efb0da7991f) updated `node/no-unsupported-features/node-builtins` rule to detect new APIs.
#### New rules
- [`46ed54d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/46ed54dc3931bbf78c6b6d0761201867c74c033f) added `node/prefer-global/text-decoder` rule for new global varaible `TextDecoder`.
- [`46ed54d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/46ed54dc3931bbf78c6b6d0761201867c74c033f) added `node/prefer-global/text-encoder` rule for new global varaible `TextEncoder`.
### [`v7.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v7.0.1)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v7.0.0...v7.0.1)
#### Bug fixes
- It fixed false positive that the `node/no-unsupported-features/node-builtins` reports the `process.emitWarning` method on Node.js `>=6 <8`. It was supported since Node.js 6.0.0.
### [`v7.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v7.0.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v6.0.1...v7.0.0)
#### Breaking changes
- It dropped the support of Node.js 4. Now it requires `>=6`.
- It dropped the support of ESLint 3. Now it requires `>=4.19.1`. (the `node/recommended` preset is supporting only ESLint `>=5.0.0`)
- It updated the `node/recommended` config.
- changed `parserOptions.ecmaVersion` to `2019` from `2018`.
- added `plugins: ["node"]`.
- removed a deprecated rule: [node/no-unsupported-features].
- added three new rules:
- [node/no-unsupported-features/es-builtins]
- [node/no-unsupported-features/es-syntax]
- [node/no-unsupported-features/node-builtins].
- It updated the [node/no-deprecated-api] rule to support Node.js up to `10.6.0`.
- Note some assertion methods such as `assert.equal` are deprecated. Use stricter methods such as `assert.strictEqual` or the strict mode (`assert.strict`) instead.
#### New rules
- [node/no-unsupported-features/es-builtins] ... disallow unsupported ECMAScript built-in globals on the configured Node.js version.
- [node/no-unsupported-features/es-syntax] ... disallow unsupported ECMAScript syntax on the configured Node.js version.
- [node/no-unsupported-features/node-builtins] ... disallow unsupported Node.js built-in modules and globals on the configured Node.js version.
- [node/prefer-global/buffer] ... enforce the use of either `Buffer` or `require("buffer").Buffer` consistently.
- [node/prefer-global/console] ... enforce the use of either `console` or `require("console")` consistently.
- [node/prefer-global/process] ... enforce the use of either `process` or `require("process")` consistently.
- [node/prefer-global/url-search-params] ... enforce the use of either `URLSearchParams` or `require("url").URLSearchParams` consistently.
- [node/prefer-global/url] ... enforce the use of either `URL` or `require("url").URL` consistently.
#### Deprecated rules
- [node/no-unsupported-features] was replaced by [node/no-unsupported-features/es-builtins] and [node/no-unsupported-features/es-syntax].
#### Chore
I extracted the logic which detects certain globals and modules and those properties to the [eslint-utils] package. I wish it to be useful for your ESLint plugins.
* * *
All commits: [`5260039`](https://togithub.com/mysticatea/eslint-plugin-node/commit/5260039c77fd7e6368c1a5808f90462e5beec6f3)...[`890ee63`](https://togithub.com/mysticatea/eslint-plugin-node/commit/890ee63e98ef95ec5a27f50f42188102526d81b1)
[node/no-deprecated-api]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-deprecated-api.md
[node/no-unsupported-features]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features.md
[node/no-unsupported-features/es-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features/es-builtins.md
[node/no-unsupported-features/es-syntax]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features/es-syntax.md
[node/no-unsupported-features/node-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features/node-builtins.md
[node/prefer-global/buffer]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/buffer.md
[node/prefer-global/console]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/console.md
[node/prefer-global/process]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/process.md
[node/prefer-global/url-search-params]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/url-search-params.md
[node/prefer-global/url]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/url.md
[eslint-utils]: https://togithub.com/mysticatea/eslint-utils#readme
### [`v6.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v6.0.1)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v6.0.0...v6.0.1)
#### Bug fixes
- [`234703c`](https://togithub.com/mysticatea/eslint-plugin-node/commit/234703cc58d1d8ebfdf0be367d958bf6682b299f) fixed a regression that `node/no-unsupported-features` crashes if `engines` field exists but `engines.node` field doesn't exist in package.json ([#109](https://togithub.com/mysticatea/eslint-plugin-node/issues/109)). Thanks [@ZauberNerd](https://togithub.com/ZauberNerd) !
### [`v6.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v6.0.0)
[Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v5.2.1...v6.0.0)
#### Breaking Changes
- [`49c060a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/49c060a7f7fcb5c33712914ce75bd499cf7e1340) updated `node/no-unsupported-features` rule to support ES2018 syntactic features. Now the rule recognizes the following syntax:
- [Rest/Spread Proeprties](https://togithub.com/tc39/proposal-object-rest-spread) (since Node.js `8.3.0`)
- [Illegal Escape Sequences in Taggled Templates](https://togithub.com/tc39/proposal-template-literal-revision) (since Node.js `9.0.0`)
- [RegExp 's' Flag](https://togithub.com/tc39/proposal-regexp-dotall-flag) (since Node.js `9.0.0`)
- [RegExp Lookbehind Assertions](https://togithub.com/tc39/proposal-regexp-lookbehind) (since Node.js `9.0.0`)
- [RegExp Named Capture Groups](https://togithub.com/tc39/proposal-regexp-named-groups) (since Node.js `10.0.0`)
- [RegExp Unicode Property Escapes](https://togithub.com/tc39/proposal-regexp-unicode-property-escapes) (since Node.js `10.0.0`)
- [Asynchronous Iteration](https://togithub.com/tc39/proposal-async-iteration) (since Node.js `10.0.0`)
- [`400e20a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/400e20a00a1620f986eb91317d6d26e1b049f8dd) updated `node/no-deprecated-api` rule to support new deprecated APIs. Now the rule recognizes the following APIs:
- `async_hooks.currentId`
- `async_hooks.triggerId`
- `module._debug`
- `path._makeLong`
- `tls.parseCertString`
- [`e8d757b`](https://togithub.com/mysticatea/eslint-plugin-node/commit/e8d757b97ac571d456085e9103dc7b9cbd9500c7) updated `plugin:node/recommended` preset.
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:
^5.2.1
->^11.0.0
Release Notes
mysticatea/eslint-plugin-node
### [`v11.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v11.0.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v10.0.0...v11.0.0) #### 💥 Breaking changes - [`b6cb9a0`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b6cb9a071a7177ad625cde07541b9d2f31aab35b) updated `node/no-unsupported-features/node-builtins` rule based on Node.js 13.2.0. - [`fb9ce15`](https://togithub.com/mysticatea/eslint-plugin-node/commit/fb9ce15fb6d465f2cead242a5daae2599ce90142) updated `node/no-unsupported-features/es-syntax` rule to recognize BigInt literal property names. - [`4295f6a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/4295f6a45635ab61c53a8d51c19e1858a208492d) updated the rules that check global variables to recognize `globalThis.*`. - [`04051ed`](https://togithub.com/mysticatea/eslint-plugin-node/commit/04051edfe3aa8cdb9f1aa87bbd4130021f767174) updated `node/no-unsupported-features/es-builtins` rule to recognize `globalThis`. #### ✨ Enhancements - [`276a9ad`](https://togithub.com/mysticatea/eslint-plugin-node/commit/276a9ad0fa8d6db224aae6fe6d35146a3fac9377) updated `node/no-deprecated-api` rule to allow revoked deprecations. - [`972f828`](https://togithub.com/mysticatea/eslint-plugin-node/commit/972f828d3134a9d3ec426cb11aa1cd9f66b657a2) updated `node/no-unsupported-features/node-builtins` rule to handle backporting properly. #### 🐛 Bug fixes - [`4f74fbf`](https://togithub.com/mysticatea/eslint-plugin-node/commit/4f74fbf3d674ab9104880954af86f40acd88fb8e) fixed a crash bug around dynamic import syntax. ### [`v10.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v10.0.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.2.0...v10.0.0) This release supports BigInt and Dynamic Imports if you are using ESLint 6.2.0 or later. #### 💥 Breaking Changes - [`9ea67c9`](https://togithub.com/mysticatea/eslint-plugin-node/commit/9ea67c9e130c3da5f1ce9edc67241e1803db9264) updated `node/no-unsupported-features/es-syntax` rule to recognize BigInt literals and `import()`. - [`b91b48d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b91b48df112426b2eb86479e4841f7008ac7cdaf) updated `node/no-unsupported-features/es-builtins` rule to recognize `BigInt`, `BigInt64Array`, `BigUint64Array`, and `Promise.allSettled`. - [`b57a4f9`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b57a4f97dcc6ea46e3b7aa8f7e25ab59a3357375) updated `node/file-extension-in-import`, `node/no-extraneous-import`, `node/no-missing-import`, and `node/no-unpublished-import` rules to recognize `import()`. - [`4b9c4d7`](https://togithub.com/mysticatea/eslint-plugin-node/commit/4b9c4d7d5deb9b66a6f37c0a440131500e51624f) updated `node/no-deprecated-api` rule to recognize `module.createRequireFromPath`. - [`9c574ba`](https://togithub.com/mysticatea/eslint-plugin-node/commit/9c574ba29390cd5f793885d956c1c89a6d30a7d5) updated `plugin:node/recommended` and the other configs. - It added `node/no-exports-assign` rule. - It changed `exports` global variable writable. - It enabled `node/*-import` rules in CommonJS mode as well. #### ✨ New rules - [`a0f0ee1`](https://togithub.com/mysticatea/eslint-plugin-node/commit/a0f0ee1efa860aa1633a7d84e73247e09a950b0b) added `node/no-exports-assign` rule that disallows `exports = {}`. ### [`v9.2.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.2.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.1.0...v9.2.0) #### ✨ New Rules - [`c1d5dbf`](https://togithub.com/mysticatea/eslint-plugin-node/commit/c1d5dbfbd01e1d2483fc3b970bc2ab2d61580db6) added a new rule `no-callback-literal`. #### 🐛 Bug Fixes - [`72de3a3`](https://togithub.com/mysticatea/eslint-plugin-node/commit/72de3a30a1d66414eaff3603ddc74628967a9ea3) updated `eslint-utils` for security fix. ### [`v9.1.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.1.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.0.1...v9.1.0) #### ✨ Features - [`fd9d19d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/fd9d19d369fcea13518ca97b669b9e358cd137a8) updated `no-deprecated-api` to not suggest alternative APIs if it has not supported on configured Node.js version. Thank you, [@Lalem001](https://togithub.com/Lalem001) ! #### 🐛 Bug Fixes - [`e5aee3c`](https://togithub.com/mysticatea/eslint-plugin-node/commit/e5aee3c86d0f33788c9a11f9c3e01d8083291513) updated `semver` package to not crash on wildcard `*` version range. ### [`v9.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.0.1) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v9.0.0...v9.0.1) #### 🐛 Bug Fixes - [`dfb4dc0`](https://togithub.com/mysticatea/eslint-plugin-node/commit/dfb4dc0202a9f9eb106b4dddb6c0f0205fabaff6) fixed the false positive of `node/file-extension-in-import` rule on scoped packages ([#160](https://togithub.com/mysticatea/eslint-plugin-node/issues/160)). ### [`v9.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v9.0.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v8.0.1...v9.0.0) Update for Node.js v12 :tada: #### 💥 Breaking Changes - [`c95b2fd`](https://togithub.com/mysticatea/eslint-plugin-node/commit/c95b2fd5959756d53c011fa1136ad9499154bfc6) dropped Node.js 6 support because of End-of-Life. - [`fe2343f`](https://togithub.com/mysticatea/eslint-plugin-node/commit/fe2343f2afda7931d3a980858388be4d8bf0a31b) dropped ESLint 4 support. New supported versions are `^5.16.0` and `>=6.0.0`. - [`7e0c2c5`](https://togithub.com/mysticatea/eslint-plugin-node/commit/7e0c2c5fa547598132441be57279e092517af08e) updated [node/no-deprecated-api] rule to check new deprecated APIs in Node.js 12. - [`5d79f2d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/5d79f2d24bd147f35a8e3f3d906b4567270acaab) updated [node/no-unsupported-features/node-builtins] rule to recognize new APIs in Node.js 12. - [`02d61cf`](https://togithub.com/mysticatea/eslint-plugin-node/commit/02d61cfcc1201550945a477c8fcf95572d7b6fec) updated [node/no-unsupported-features/es-builtins] rule to recognize new APIs in Node.js 12. - [`b94731a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/b94731af0b89c9f0e0ca11298a1cbea40c5dacf0) updated the rules for `require()` such as [node/no-missing-require] rule to check `require.resolve()` as well. - [`2061413`](https://togithub.com/mysticatea/eslint-plugin-node/commit/206141312ae7f1f2177393d55228da09da6573a4) updated `plugin:node/recommended` preset. #### ✨ New Rules - [`a3e0e29`](https://togithub.com/mysticatea/eslint-plugin-node/commit/a3e0e29b2ef03db2e597064a066bdbbd3ce734f5) added [node/file-extension-in-import] rule which enforce the style of file extensions. - [`e41a1e0`](https://togithub.com/mysticatea/eslint-plugin-node/commit/e41a1e08729430edca550636437738529721d286) added [node/prefer-promises/dns] rule and [node/prefer-promises/fs] rule which enforce to use Promise API instead of Callback API. [node/no-deprecated-api]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-deprecated-api.md [node/no-unsupported-features/node-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-unsupported-features/node-builtins.md [node/no-unsupported-features/es-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-unsupported-features/es-builtins.md [node/no-missing-require]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/no-missing-require.md [node/file-extension-in-import]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/file-extension-in-import.md [node/prefer-promises/dns]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/prefer-promises/dns.md [node/prefer-promises/fs]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v9.0.0/docs/rules/prefer-promises/fs.md ### [`v8.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v8.0.1) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v8.0.0...v8.0.1) #### 🐛 Bug fixes - [`62ba642`](https://togithub.com/mysticatea/eslint-plugin-node/commit/62ba6425a73845c235e93d706b7d826f70853c40) fixed the wrong messages of `node/no-deprecated-api` rule ([#142](https://togithub.com/mysticatea/eslint-plugin-node/issues/142)). - [`0225b02`](https://togithub.com/mysticatea/eslint-plugin-node/commit/0225b02d0f3f8dbf2d2d52577455bf9817e925ca)...[`0593c67`](https://togithub.com/mysticatea/eslint-plugin-node/commit/0593c67576c86b2cbf4990db38d1cc4707b2f309) fixed the false positives of `no-unpublished-(bin|import|require)` rules ([#115](https://togithub.com/mysticatea/eslint-plugin-node/issues/115), [#126](https://togithub.com/mysticatea/eslint-plugin-node/issues/126)). ### [`v8.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v8.0.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v7.0.1...v8.0.0) This release focuses on supporting new things that were added between Node.js 8.7.0 and 11.0.0. #### Breaking changes - [`5860795`](https://togithub.com/mysticatea/eslint-plugin-node/commit/58607951356dc63cd33366282eeda98ebd587dd0) updated `node/no-deprecated-api` rule to disallow new deprecated APIs. Especially, it includes [legacy URL API](https://nodejs.org/dist/v11.0.0/docs/api/url.html#url_legacy_url_api). - [`d153b93`](https://togithub.com/mysticatea/eslint-plugin-node/commit/d153b93809c079b1be64aab706c14efb0da7991f) updated `node/no-unsupported-features/node-builtins` rule to detect new APIs. #### New rules - [`46ed54d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/46ed54dc3931bbf78c6b6d0761201867c74c033f) added `node/prefer-global/text-decoder` rule for new global varaible `TextDecoder`. - [`46ed54d`](https://togithub.com/mysticatea/eslint-plugin-node/commit/46ed54dc3931bbf78c6b6d0761201867c74c033f) added `node/prefer-global/text-encoder` rule for new global varaible `TextEncoder`. ### [`v7.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v7.0.1) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v7.0.0...v7.0.1) #### Bug fixes - It fixed false positive that the `node/no-unsupported-features/node-builtins` reports the `process.emitWarning` method on Node.js `>=6 <8`. It was supported since Node.js 6.0.0. ### [`v7.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v7.0.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v6.0.1...v7.0.0) #### Breaking changes - It dropped the support of Node.js 4. Now it requires `>=6`. - It dropped the support of ESLint 3. Now it requires `>=4.19.1`. (the `node/recommended` preset is supporting only ESLint `>=5.0.0`) - It updated the `node/recommended` config. - changed `parserOptions.ecmaVersion` to `2019` from `2018`. - added `plugins: ["node"]`. - removed a deprecated rule: [node/no-unsupported-features]. - added three new rules: - [node/no-unsupported-features/es-builtins] - [node/no-unsupported-features/es-syntax] - [node/no-unsupported-features/node-builtins]. - It updated the [node/no-deprecated-api] rule to support Node.js up to `10.6.0`. - Note some assertion methods such as `assert.equal` are deprecated. Use stricter methods such as `assert.strictEqual` or the strict mode (`assert.strict`) instead. #### New rules - [node/no-unsupported-features/es-builtins] ... disallow unsupported ECMAScript built-in globals on the configured Node.js version. - [node/no-unsupported-features/es-syntax] ... disallow unsupported ECMAScript syntax on the configured Node.js version. - [node/no-unsupported-features/node-builtins] ... disallow unsupported Node.js built-in modules and globals on the configured Node.js version. - [node/prefer-global/buffer] ... enforce the use of either `Buffer` or `require("buffer").Buffer` consistently. - [node/prefer-global/console] ... enforce the use of either `console` or `require("console")` consistently. - [node/prefer-global/process] ... enforce the use of either `process` or `require("process")` consistently. - [node/prefer-global/url-search-params] ... enforce the use of either `URLSearchParams` or `require("url").URLSearchParams` consistently. - [node/prefer-global/url] ... enforce the use of either `URL` or `require("url").URL` consistently. #### Deprecated rules - [node/no-unsupported-features] was replaced by [node/no-unsupported-features/es-builtins] and [node/no-unsupported-features/es-syntax]. #### Chore I extracted the logic which detects certain globals and modules and those properties to the [eslint-utils] package. I wish it to be useful for your ESLint plugins. * * * All commits: [`5260039`](https://togithub.com/mysticatea/eslint-plugin-node/commit/5260039c77fd7e6368c1a5808f90462e5beec6f3)...[`890ee63`](https://togithub.com/mysticatea/eslint-plugin-node/commit/890ee63e98ef95ec5a27f50f42188102526d81b1) [node/no-deprecated-api]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-deprecated-api.md [node/no-unsupported-features]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features.md [node/no-unsupported-features/es-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features/es-builtins.md [node/no-unsupported-features/es-syntax]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features/es-syntax.md [node/no-unsupported-features/node-builtins]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/no-unsupported-features/node-builtins.md [node/prefer-global/buffer]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/buffer.md [node/prefer-global/console]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/console.md [node/prefer-global/process]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/process.md [node/prefer-global/url-search-params]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/url-search-params.md [node/prefer-global/url]: https://togithub.com/mysticatea/eslint-plugin-node/blob/v7.0.0/docs/rules/prefer-global/url.md [eslint-utils]: https://togithub.com/mysticatea/eslint-utils#readme ### [`v6.0.1`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v6.0.1) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v6.0.0...v6.0.1) #### Bug fixes - [`234703c`](https://togithub.com/mysticatea/eslint-plugin-node/commit/234703cc58d1d8ebfdf0be367d958bf6682b299f) fixed a regression that `node/no-unsupported-features` crashes if `engines` field exists but `engines.node` field doesn't exist in package.json ([#109](https://togithub.com/mysticatea/eslint-plugin-node/issues/109)). Thanks [@ZauberNerd](https://togithub.com/ZauberNerd) ! ### [`v6.0.0`](https://togithub.com/mysticatea/eslint-plugin-node/releases/v6.0.0) [Compare Source](https://togithub.com/mysticatea/eslint-plugin-node/compare/v5.2.1...v6.0.0) #### Breaking Changes - [`49c060a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/49c060a7f7fcb5c33712914ce75bd499cf7e1340) updated `node/no-unsupported-features` rule to support ES2018 syntactic features. Now the rule recognizes the following syntax: - [Rest/Spread Proeprties](https://togithub.com/tc39/proposal-object-rest-spread) (since Node.js `8.3.0`) - [Illegal Escape Sequences in Taggled Templates](https://togithub.com/tc39/proposal-template-literal-revision) (since Node.js `9.0.0`) - [RegExp 's' Flag](https://togithub.com/tc39/proposal-regexp-dotall-flag) (since Node.js `9.0.0`) - [RegExp Lookbehind Assertions](https://togithub.com/tc39/proposal-regexp-lookbehind) (since Node.js `9.0.0`) - [RegExp Named Capture Groups](https://togithub.com/tc39/proposal-regexp-named-groups) (since Node.js `10.0.0`) - [RegExp Unicode Property Escapes](https://togithub.com/tc39/proposal-regexp-unicode-property-escapes) (since Node.js `10.0.0`) - [Asynchronous Iteration](https://togithub.com/tc39/proposal-async-iteration) (since Node.js `10.0.0`) - [`400e20a`](https://togithub.com/mysticatea/eslint-plugin-node/commit/400e20a00a1620f986eb91317d6d26e1b049f8dd) updated `node/no-deprecated-api` rule to support new deprecated APIs. Now the rule recognizes the following APIs: - `async_hooks.currentId` - `async_hooks.triggerId` - `module._debug` - `path._makeLong` - `tls.parseCertString` - [`e8d757b`](https://togithub.com/mysticatea/eslint-plugin-node/commit/e8d757b97ac571d456085e9103dc7b9cbd9500c7) updated `plugin:node/recommended` preset.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.