@tony.ganchev/eslint-plugin-header 3.4.3 → 3.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -8
- package/lib/rules/header.js +2 -8
- package/package.json +9 -10
- package/types/lib/rules/header.d.ts.map +1 -1
package/README.md
CHANGED
|
@@ -79,8 +79,14 @@ consistent header structures. Notable adopters include:
|
|
|
79
79
|
|
|
80
80
|
[](./docs/consumers.md#salesforce)
|
|
81
81
|
|
|
82
|
+
[](./docs/consumers.md#google)
|
|
83
|
+
|
|
82
84
|
[](./docs/consumers.md#angular)
|
|
83
85
|
|
|
86
|
+
[](./docs/consumers.md#broadcom)
|
|
87
|
+
|
|
88
|
+
[](./docs/consumers.md#vmware)
|
|
89
|
+
|
|
84
90
|
[](./docs/consumers.md#amazon)
|
|
85
91
|
|
|
86
92
|
[](./docs/consumers.md#cloudscape-design-system)
|
|
@@ -95,6 +101,8 @@ consistent header structures. Notable adopters include:
|
|
|
95
101
|
|
|
96
102
|
[](./docs/consumers.md#flowcrypt)
|
|
97
103
|
|
|
104
|
+
[](./docs/consumers.md#frontify)
|
|
105
|
+
|
|
98
106
|
[](./docs/consumers.md#cratis)
|
|
99
107
|
|
|
100
108
|
[](./docs/consumers.md#mysten-labs)
|
|
@@ -1630,20 +1638,25 @@ migrate to _\@tony.ganchev/eslint-plugin-header_.
|
|
|
1630
1638
|
|
|
1631
1639
|
### Compared to [eslint-plugin-notice](https://github.com/earl-man/eslint-plugin-notice)
|
|
1632
1640
|
|
|
1633
|
-
_eslint-plugin-notice_ is another alternative that uses a template-based
|
|
1634
|
-
(powered by Lodash templates) to manage headers. This makes it quite
|
|
1635
|
-
dynamic content but also brings in more dependencies and a more
|
|
1636
|
-
configuration schema that doesn't always feel "native" to the new ESLint
|
|
1637
|
-
Config era.
|
|
1641
|
+
_eslint-plugin-notice_ is another alternative that uses a template-based
|
|
1642
|
+
approach (powered by Lodash templates) to manage headers. This makes it quite
|
|
1643
|
+
powerful for dynamic content but also brings in more dependencies and a more
|
|
1644
|
+
complex configuration schema that doesn't always feel "native" to the new ESLint
|
|
1645
|
+
Flat Config era.
|
|
1638
1646
|
|
|
1639
1647
|
Key differences:
|
|
1640
1648
|
|
|
1649
|
+
- **Compatibility**: _eslint-plugin-notice_ **does not support ESLint 10** and
|
|
1650
|
+
**does not provide TypeScript bindings**.
|
|
1651
|
+
- **Support**: _eslint-plugin-notice_ has **not seen its code updated in 2
|
|
1652
|
+
years** and has pull request published by the project's owner dangling for
|
|
1653
|
+
over 2 years.
|
|
1641
1654
|
- **Philosophy**: _\@tony.ganchev/eslint-plugin-header_ focuses on a zero-bloat,
|
|
1642
1655
|
native ESLint feel with first-class support for Flat Config and TypeScript.
|
|
1643
|
-
|
|
1644
|
-
|
|
1656
|
+
The project offers much more features and includes a much larger list of
|
|
1657
|
+
supported languages.
|
|
1645
1658
|
- **Languages**: We provide native support for linting headers in HTML, CSS,
|
|
1646
|
-
|
|
1659
|
+
Vue, Svelte, YAML, Markdown via their respective ESLint plugins and parsers.
|
|
1647
1660
|
- **Simplicity**: No need for external template engines or complex variable
|
|
1648
1661
|
mappings. Use standard JavaScript template literals in your `eslint.config.ts`
|
|
1649
1662
|
to handle dynamic years or other variables.
|
package/lib/rules/header.js
CHANGED
|
@@ -35,7 +35,6 @@ const { lineEndingOptions, commentTypeOptions, schema } = require("./header.sche
|
|
|
35
35
|
/**
|
|
36
36
|
* @import { JSSyntaxElement, Linter, Rule, SourceCode } from "eslint"
|
|
37
37
|
* @import { Comment, SourceLocation } from "estree"
|
|
38
|
-
* @import { ViolationReport } from "@eslint/core";
|
|
39
38
|
* @typedef {Rule.NodeListener} NodeListener
|
|
40
39
|
* @typedef {Rule.ReportFixer} ReportFixer
|
|
41
40
|
* @typedef {Rule.RuleFixer} RuleFixer
|
|
@@ -708,19 +707,14 @@ class CommentMatcher {
|
|
|
708
707
|
this.language = language;
|
|
709
708
|
}
|
|
710
709
|
|
|
711
|
-
/**
|
|
712
|
-
* @typedef {ViolationReport<JSSyntaxElement, string>} ViolationReportBad
|
|
713
|
-
* @typedef {ViolationReportBad & { messageId: string }} ViolationReportEx
|
|
714
|
-
*/
|
|
715
|
-
|
|
716
710
|
/**
|
|
717
711
|
* Performs a validation of a comment against a header matching
|
|
718
712
|
* configuration.
|
|
719
713
|
* @param {CommentEx[]} leadingComments The block comment or sequence of
|
|
720
714
|
* line comments to test.
|
|
721
715
|
* @param {SourceCode} sourceCode The source code AST.
|
|
722
|
-
* @returns {
|
|
723
|
-
*
|
|
716
|
+
* @returns {Rule.ReportDescriptor | null} If set a violation report to pass
|
|
717
|
+
* back to ESLint or interpret as necessary.
|
|
724
718
|
*/
|
|
725
719
|
validate(leadingComments, sourceCode) {
|
|
726
720
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tony.ganchev/eslint-plugin-header",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.4",
|
|
4
4
|
"description": "The native ESLint 9/10 header plugin. A zero-bloat, drop-in replacement for 'eslint-plugin-header' with first-class Flat Config & TypeScript support. Auto-fix Copyright, License, and banner comments in JavaScript, TypeScript, Vue, Svelte, CSS, HTML, YAML, and Markdown files. Supports oxlint.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -18,30 +18,29 @@
|
|
|
18
18
|
"CONTRIBUTING.md"
|
|
19
19
|
],
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"@eslint/core": "^1.2.0",
|
|
22
21
|
"@eslint/css": "^1.1.0",
|
|
23
22
|
"@eslint/js": "^10.0.1",
|
|
24
23
|
"@eslint/markdown": "^8.0.1",
|
|
25
|
-
"@html-eslint/eslint-plugin": "^0.
|
|
24
|
+
"@html-eslint/eslint-plugin": "^0.59.0",
|
|
26
25
|
"@stylistic/eslint-plugin": "^5.10.0",
|
|
27
26
|
"@types/estree": "^1.0.8",
|
|
28
27
|
"@types/json-schema": "^7.0.15",
|
|
29
|
-
"@types/node": "^25.
|
|
28
|
+
"@types/node": "^25.6.0",
|
|
30
29
|
"c8": "^11.0.0",
|
|
31
|
-
"eslint": "^10.2.
|
|
30
|
+
"eslint": "^10.2.1",
|
|
32
31
|
"eslint-plugin-eslint-plugin": "^7.3.2",
|
|
33
32
|
"eslint-plugin-jsdoc": "^62.9.0",
|
|
34
33
|
"eslint-plugin-n": "^17.24.0",
|
|
35
|
-
"eslint-plugin-svelte": "^3.17.
|
|
36
|
-
"eslint-plugin-vue": "^10.
|
|
34
|
+
"eslint-plugin-svelte": "^3.17.1",
|
|
35
|
+
"eslint-plugin-vue": "^10.9.0",
|
|
37
36
|
"eslint-plugin-yml": "^3.3.1",
|
|
38
|
-
"globals": "^17.
|
|
37
|
+
"globals": "^17.5.0",
|
|
39
38
|
"markdownlint-cli": "^0.48.0",
|
|
40
39
|
"mocha": "12.0.0-beta-10",
|
|
41
40
|
"svelte-eslint-parser": "^1.6.0",
|
|
42
41
|
"testdouble": "^3.20.2",
|
|
43
|
-
"typescript": "^6.0.
|
|
44
|
-
"typescript-eslint": "^8.
|
|
42
|
+
"typescript": "^6.0.3",
|
|
43
|
+
"typescript-eslint": "^8.59.0",
|
|
45
44
|
"vue-eslint-parser": "^10.4.0"
|
|
46
45
|
},
|
|
47
46
|
"peerDependencies": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../lib/rules/header.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../lib/rules/header.js"],"names":[],"mappings":"2BAqCa,iBAAiB;0BACjB,gBAAgB;wBAChB,cAAc;0BACd,gBAAgB;;;;;yBAIhB,IAAI,GAAG,MAAM;;;;;;;;;;aAOZ,MAAM,GAAG,MAAM;;;;;;;;;;;;yBAOhB,MAAM,GAAG,MAAM,GAAG,iBAAiB;;;;;0BAGnC,UAAU,GAAG,UAAU,EAAE;;;;;;+BAEzB,IAAI,GAAG,MAAM,GAAG,SAAS;;;;;6BAGzB;IAAE,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAAE;;;;;0BAElC,OAAO,GAAG,MAAM;;;;;;;;;;UAOf,MAAM;;;;;;;;;;;;;;;iBASN,WAAW;;;;;;WACX,UAAU,EAAE;;;;;;;;;;;;cAQZ,CAAC,eAAe,GAAG,YAAY,CAAC,EAAE;;;;;;;;;;;;;;;;;;YAclC,eAAe,GAAG,YAAY;;;;;;;;;;;;;;;;;4BAU/B,4BAA4B,GAAG,cAAc;oCAK7C,CAAC,QAAQ,EAAE,MAAM,CAAC;4CAClB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC;iCAE5C,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;yCACvC,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,CAAC;yCAEjE,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC;iDAEzD,CACV,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,cAAc,CACvB;;;;+BACS,CAAC,aAAa,CAAC,GACvB,qBAAqB,GACrB,6BAA6B,GAC7B,kBAAkB,GAClB,0BAA0B,GAC1B,0BAA0B,GAC1B,kCAAkC;;;;;+BAK1B,iBAAiB,gBAAgB,CAAC;oBAiClC,CAAC,MAAM,EAAE,MAAM,CAAC;;;;;UAKf,SAAS,GAAG,OAAO,GAAG,MAAM;;;;WAC5B,MAAM;;;;WACN,KAAK;;;;SACL,cAAc;;;;;;;oBAKd,MAAM;;;;;kBAEN,MAAM;;;;;;;oBAMN,MAAM;;;;;;;;;;;;;;;;;;;AA8wBpB,8BAA8B;AAC9B,0BADW,eAAe,CA2TxB;AAtsBF,2EAA2E;AAC3E,+BADW,MAAM,CAAC,MAAM,EAAE;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAC,CAAC,CAC3C;0BA1iBkC,QAAQ;4BAAR,QAAQ;oCAC1B,QAAQ"}
|