All notable changes to @ericcornelissen/eslint-plugin-top
will be documented
in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- (
aaa56b7
) Always allowImportExpression
,SequenceExpression
, andThisExpression
forno-top-level-variables
. - (
56d7a83
) Allow top-levelWeakMap
andWeakSet
in recommended config.
- (
f878f23
) Makeno-top-level-side-effects
report side effects inside top-level objects. - (
9f32d1d
) Makeno-top-level-side-effects
report derived object values whenallowDerived: false
(i.e.{[foo]:42}
and{...foo}
). - (
f878f23
) Makeno-top-level-side-effects
stop reporting literals at the top level. - (
5cab9a9
) Automatically determine if analysis should setcommonjs: true
for theno-top-level-side-effects
rule based on ESLint hints (ifcommonjs
is not explicitly configured).
- (
6e1a298
) Allow"strict mode";
forno-top-level-side-effects
rule.
- (
be6a4af
) Provide a preset strict configuration.
- (
e81b7af
) Provide a preset recommended configuration.
- (
5ebc009
) Add support for Node.js v22. - (
bfacef9
) Add usage documentation for new ESLint configuration syntax.
- (
8028f58
) Add support for ESLint v9. - (
38fe16e
) Disallow callingBigInt
with theno-top-level-side-effects
rule by default. - (
19d1136
) Add docs metadata to all rules.
- (
efdf44f
) Add option to allow deriving values at the top level as a side effect.
- (
6a79b0c
) (Breaking) Rework theno-top-level-side-effects
rule to make it easier to configure. - (
207ad89
) (Breaking) Rework theno-top-level-variables
rule to focus on variables being mutable instead of other side effects.
- (
16964e0
) Add end-of-life messaging to the documentation.
- (
2f2bb41
) Disallow top-level side effects of optional changing forno-top-level-side-effects
. - (
452f5e3
) Fix bug wheremodule.exports.property
-like assignments were not allowed byno-top-level-side-effects
. - (
0e04f54
) Optionally disallow top-level side effect of assigning to either ofmodule.exports
orexports
.
- (
7b50c22
) Disallow top-level side effects of async calls, binary operations, conditional expression, logical operations, tagged template expressions, and update expressions forno-top-level-side-effects
. - (
b83307b
) Disallow top-level unary operations with side effects in assignments forno-top-level-side-effects
. - (
c2866aa
) Disallow top-level template literals with side effects in assignments forno-top-level-side-effects
. - (
2458d81
) Fix runtime errors due to export statements. - (
33120d8
) Optionally disallow top-level side effect of callingrequire
.
- (
ebf23c6
) Always allow assignment of literals forno-top-level-variables
. - (
282ff77
) Optionally allow top-levelconst
assignments of functions. - (
f130b34
) Optionally allow top-levelconst
assignments of template literals.
- (
fced786
) Allowrequire()
forno-top-level-side-effects
. - (
c46dec9
) AllowSymbol()
forconst
inno-top-level-variables
. - (
8e4566b
) Optionally allow top-levelconst
assignments of arrays and objects.
- (
ba81b6d
) Allow top-levelconst
assignment from literals. - (
bc90491
) Optionally allowSymbol()
forno-top-level-side-effects
. - (
bed2d39
) Report named export declarations forno-top-level-variables
. - (
efd1232
) Report function calls in exports forno-top-level-side-effects
. - (
cd61a0a
) Report function calls in variable declarations forno-top-level-side-effects
. - (
fe11de9
) Reportnew
calls in export and variable declarations forno-top-level-side-effects
.
- (
8a7eb63
) Allow top-level assignments of arrow functions toconst
. - (
eeb53b4
) Update the license year.
- (
c527342
) (Breaking) Drop ESlint v6 and v7 support. - (
da04330
) (Breaking) Drop Node.js v12, v14, and v16 support.
- (
63cfe1e
) Add support for Node.js v20.
- (
9ddf3fe
) (Breaking) Rename the ruleno-top-level-side-effect
tono-top-level-side-effects
. - (
cec69d5
) (Breaking) Report top-level IIFEs by default. - (
92a3f58
) Improve performance ofno-top-level-variables
.
- (
a85b514
) Add support for configuring if top-level Immediately Invoked Function Expressions (IIFEs) are allowed forno-top-level-side-effect
.
- (
e97db34
) Report top-level for-in statements. - (
16462ae
) Report top-level for-of statements. - (
0a3ba0f
) Report top-level throw statements. - (
0fb75fa
) Report top-level try statements. - (
dc5f99e
) Improve performance ofno-top-level-side-effect
. - (
2e367d4
) Improve violation messaging.
- (
64781ae
) Improve performance ofno-top-level-side-effect
. - (
27d457b
) Report top-level do-while statements.
- (
90f9389
) Improve performance ofno-top-level-variables
. - (
bd334d7
) Make example code in documentation runnable. - (
9485afb
) Update the license year and fullname.
- (
60f0f38
) Add support for configuring allowed assignments to aconst
. - (
acec27c
) Allow top-level assignments of member expressions toconst
. - (
ab3fd6b
) Improve performance ofno-top-level-variables
.
- (
84b0145
) Add the Security Policy to the published package. - (
03418df
) Correct the plugin name in the usage documentation text. - (
6d89129
) Fix only reporting first declaration forno-top-level-variables
. - (
ceaa619
) Improve specificity of supported ESLint versions. - (
73ca9c0
) Improve violation highlights forno-top-level-variables
. - (
9fa79df
) Use YAML for example configuration in documentation.
- (
6670488
) Add"exports"
field to the package manifest. - (
0f80dc5
) Add homepage and repository link to package metadata. - (
0f80dc5
) Fix supported rules link on npm. - (
300e7b7
) Improve specificity of supported Node.js versions.
- (
e75383f
) Remove unused dependencyrequireindex
. - (
3b42dca
) Remove unused dependencytypescript-eslint/eslint-plugin
. - (
bb1fd72
) Correct package references in the documentation.
- (
9490743
) Don't report top-level literal assignments to aconst
. - (
d3690da
) Omit unnecessary files from published package.
- Initial release.