eslint-plugin-typefest 1.0.1
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/CHANGELOG.md +1814 -0
- package/LICENSE +21 -0
- package/README.md +282 -0
- package/dist/_internal/array-like-expression.d.ts +67 -0
- package/dist/_internal/array-like-expression.d.ts.map +1 -0
- package/dist/_internal/array-like-expression.js +179 -0
- package/dist/_internal/array-like-expression.js.map +1 -0
- package/dist/_internal/array-method-call-rule.d.ts +34 -0
- package/dist/_internal/array-method-call-rule.d.ts.map +1 -0
- package/dist/_internal/array-method-call-rule.js +49 -0
- package/dist/_internal/array-method-call-rule.js.map +1 -0
- package/dist/_internal/ast-node.d.ts +23 -0
- package/dist/_internal/ast-node.d.ts.map +1 -0
- package/dist/_internal/ast-node.js +38 -0
- package/dist/_internal/ast-node.js.map +1 -0
- package/dist/_internal/bounded-cache.d.ts +42 -0
- package/dist/_internal/bounded-cache.d.ts.map +1 -0
- package/dist/_internal/bounded-cache.js +57 -0
- package/dist/_internal/bounded-cache.js.map +1 -0
- package/dist/_internal/constrained-type-at-location.d.ts +31 -0
- package/dist/_internal/constrained-type-at-location.d.ts.map +1 -0
- package/dist/_internal/constrained-type-at-location.js +61 -0
- package/dist/_internal/constrained-type-at-location.js.map +1 -0
- package/dist/_internal/cycle-safe-linked-search.d.ts +48 -0
- package/dist/_internal/cycle-safe-linked-search.d.ts.map +1 -0
- package/dist/_internal/cycle-safe-linked-search.js +70 -0
- package/dist/_internal/cycle-safe-linked-search.js.map +1 -0
- package/dist/_internal/expression-boolean-memoizer.d.ts +17 -0
- package/dist/_internal/expression-boolean-memoizer.d.ts.map +1 -0
- package/dist/_internal/expression-boolean-memoizer.js +23 -0
- package/dist/_internal/expression-boolean-memoizer.js.map +1 -0
- package/dist/_internal/filter-callback.d.ts +56 -0
- package/dist/_internal/filter-callback.d.ts.map +1 -0
- package/dist/_internal/filter-callback.js +100 -0
- package/dist/_internal/filter-callback.js.map +1 -0
- package/dist/_internal/global-identifier-member-call.d.ts +23 -0
- package/dist/_internal/global-identifier-member-call.d.ts.map +1 -0
- package/dist/_internal/global-identifier-member-call.js +25 -0
- package/dist/_internal/global-identifier-member-call.js.map +1 -0
- package/dist/_internal/global-member-call-rule.d.ts +36 -0
- package/dist/_internal/global-member-call-rule.d.ts.map +1 -0
- package/dist/_internal/global-member-call-rule.js +52 -0
- package/dist/_internal/global-member-call-rule.js.map +1 -0
- package/dist/_internal/import-analysis.d.ts +45 -0
- package/dist/_internal/import-analysis.d.ts.map +1 -0
- package/dist/_internal/import-analysis.js +113 -0
- package/dist/_internal/import-analysis.js.map +1 -0
- package/dist/_internal/import-aware-fixes.d.ts +31 -0
- package/dist/_internal/import-aware-fixes.d.ts.map +1 -0
- package/dist/_internal/import-aware-fixes.js +38 -0
- package/dist/_internal/import-aware-fixes.js.map +1 -0
- package/dist/_internal/import-fix-coordinator.d.ts +43 -0
- package/dist/_internal/import-fix-coordinator.d.ts.map +1 -0
- package/dist/_internal/import-fix-coordinator.js +71 -0
- package/dist/_internal/import-fix-coordinator.js.map +1 -0
- package/dist/_internal/import-insertion.d.ts +27 -0
- package/dist/_internal/import-insertion.d.ts.map +1 -0
- package/dist/_internal/import-insertion.js +295 -0
- package/dist/_internal/import-insertion.js.map +1 -0
- package/dist/_internal/imported-type-aliases.d.ts +140 -0
- package/dist/_internal/imported-type-aliases.d.ts.map +1 -0
- package/dist/_internal/imported-type-aliases.js +316 -0
- package/dist/_internal/imported-type-aliases.js.map +1 -0
- package/dist/_internal/imported-value-symbols.d.ts +157 -0
- package/dist/_internal/imported-value-symbols.d.ts.map +1 -0
- package/dist/_internal/imported-value-symbols.js +478 -0
- package/dist/_internal/imported-value-symbols.js.map +1 -0
- package/dist/_internal/member-call.d.ts +53 -0
- package/dist/_internal/member-call.d.ts.map +1 -0
- package/dist/_internal/member-call.js +48 -0
- package/dist/_internal/member-call.js.map +1 -0
- package/dist/_internal/module-source.d.ts +11 -0
- package/dist/_internal/module-source.d.ts.map +1 -0
- package/dist/_internal/module-source.js +11 -0
- package/dist/_internal/module-source.js.map +1 -0
- package/dist/_internal/normalize-expression-text.d.ts +26 -0
- package/dist/_internal/normalize-expression-text.d.ts.map +1 -0
- package/dist/_internal/normalize-expression-text.js +182 -0
- package/dist/_internal/normalize-expression-text.js.map +1 -0
- package/dist/_internal/nullish-comparison.d.ts +43 -0
- package/dist/_internal/nullish-comparison.d.ts.map +1 -0
- package/dist/_internal/nullish-comparison.js +147 -0
- package/dist/_internal/nullish-comparison.js.map +1 -0
- package/dist/_internal/plugin-settings.d.ts +32 -0
- package/dist/_internal/plugin-settings.d.ts.map +1 -0
- package/dist/_internal/plugin-settings.js +118 -0
- package/dist/_internal/plugin-settings.js.map +1 -0
- package/dist/_internal/report-adapter.d.ts +25 -0
- package/dist/_internal/report-adapter.d.ts.map +1 -0
- package/dist/_internal/report-adapter.js +36 -0
- package/dist/_internal/report-adapter.js.map +1 -0
- package/dist/_internal/rule-catalog.d.ts +51 -0
- package/dist/_internal/rule-catalog.d.ts.map +1 -0
- package/dist/_internal/rule-catalog.js +162 -0
- package/dist/_internal/rule-catalog.js.map +1 -0
- package/dist/_internal/rule-docs-metadata.d.ts +37 -0
- package/dist/_internal/rule-docs-metadata.d.ts.map +1 -0
- package/dist/_internal/rule-docs-metadata.js +192 -0
- package/dist/_internal/rule-docs-metadata.js.map +1 -0
- package/dist/_internal/rule-docs-url.d.ts +15 -0
- package/dist/_internal/rule-docs-url.d.ts.map +1 -0
- package/dist/_internal/rule-docs-url.js +15 -0
- package/dist/_internal/rule-docs-url.js.map +1 -0
- package/dist/_internal/rule-reporting.d.ts +71 -0
- package/dist/_internal/rule-reporting.d.ts.map +1 -0
- package/dist/_internal/rule-reporting.js +89 -0
- package/dist/_internal/rule-reporting.js.map +1 -0
- package/dist/_internal/rules-registry.d.ts +14 -0
- package/dist/_internal/rules-registry.d.ts.map +1 -0
- package/dist/_internal/rules-registry.js +165 -0
- package/dist/_internal/rules-registry.js.map +1 -0
- package/dist/_internal/safe-type-operation.d.ts +89 -0
- package/dist/_internal/safe-type-operation.d.ts.map +1 -0
- package/dist/_internal/safe-type-operation.js +147 -0
- package/dist/_internal/safe-type-operation.js.map +1 -0
- package/dist/_internal/scope-resolution.d.ts +20 -0
- package/dist/_internal/scope-resolution.d.ts.map +1 -0
- package/dist/_internal/scope-resolution.js +21 -0
- package/dist/_internal/scope-resolution.js.map +1 -0
- package/dist/_internal/scope-variable.d.ts +17 -0
- package/dist/_internal/scope-variable.d.ts.map +1 -0
- package/dist/_internal/scope-variable.js +30 -0
- package/dist/_internal/scope-variable.js.map +1 -0
- package/dist/_internal/set-membership.d.ts +6 -0
- package/dist/_internal/set-membership.d.ts.map +1 -0
- package/dist/_internal/set-membership.js +11 -0
- package/dist/_internal/set-membership.js.map +1 -0
- package/dist/_internal/text-character.d.ts +18 -0
- package/dist/_internal/text-character.d.ts.map +1 -0
- package/dist/_internal/text-character.js +69 -0
- package/dist/_internal/text-character.js.map +1 -0
- package/dist/_internal/throw-consequent.d.ts +22 -0
- package/dist/_internal/throw-consequent.d.ts.map +1 -0
- package/dist/_internal/throw-consequent.js +48 -0
- package/dist/_internal/throw-consequent.js.map +1 -0
- package/dist/_internal/throw-type-error.d.ts +19 -0
- package/dist/_internal/throw-type-error.d.ts.map +1 -0
- package/dist/_internal/throw-type-error.js +24 -0
- package/dist/_internal/throw-type-error.js.map +1 -0
- package/dist/_internal/type-checker-compat.d.ts +80 -0
- package/dist/_internal/type-checker-compat.d.ts.map +1 -0
- package/dist/_internal/type-checker-compat.js +104 -0
- package/dist/_internal/type-checker-compat.js.map +1 -0
- package/dist/_internal/type-predicate-autofix-safety.d.ts +20 -0
- package/dist/_internal/type-predicate-autofix-safety.d.ts.map +1 -0
- package/dist/_internal/type-predicate-autofix-safety.js +58 -0
- package/dist/_internal/type-predicate-autofix-safety.js.map +1 -0
- package/dist/_internal/type-reference-node.d.ts +19 -0
- package/dist/_internal/type-reference-node.d.ts.map +1 -0
- package/dist/_internal/type-reference-node.js +14 -0
- package/dist/_internal/type-reference-node.js.map +1 -0
- package/dist/_internal/typed-member-call-rule.d.ts +35 -0
- package/dist/_internal/typed-member-call-rule.d.ts.map +1 -0
- package/dist/_internal/typed-member-call-rule.js +50 -0
- package/dist/_internal/typed-member-call-rule.js.map +1 -0
- package/dist/_internal/typed-path-telemetry.d.ts +58 -0
- package/dist/_internal/typed-path-telemetry.d.ts.map +1 -0
- package/dist/_internal/typed-path-telemetry.js +114 -0
- package/dist/_internal/typed-path-telemetry.js.map +1 -0
- package/dist/_internal/typed-rule.d.ts +142 -0
- package/dist/_internal/typed-rule.d.ts.map +1 -0
- package/dist/_internal/typed-rule.js +197 -0
- package/dist/_internal/typed-rule.js.map +1 -0
- package/dist/_internal/typefest-config-references.d.ts +45 -0
- package/dist/_internal/typefest-config-references.d.ts.map +1 -0
- package/dist/_internal/typefest-config-references.js +98 -0
- package/dist/_internal/typefest-config-references.js.map +1 -0
- package/dist/_internal/typescript-eslint-node-autofix.d.ts +32 -0
- package/dist/_internal/typescript-eslint-node-autofix.d.ts.map +1 -0
- package/dist/_internal/typescript-eslint-node-autofix.js +495 -0
- package/dist/_internal/typescript-eslint-node-autofix.js.map +1 -0
- package/dist/_internal/value-rewrite-autofix-safety.d.ts +33 -0
- package/dist/_internal/value-rewrite-autofix-safety.d.ts.map +1 -0
- package/dist/_internal/value-rewrite-autofix-safety.js +103 -0
- package/dist/_internal/value-rewrite-autofix-safety.js.map +1 -0
- package/dist/plugin.cjs +9718 -0
- package/dist/plugin.cjs.map +7 -0
- package/dist/plugin.d.cts +76 -0
- package/dist/plugin.d.ts +76 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +206 -0
- package/dist/plugin.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-at.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-at.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-at.js +66 -0
- package/dist/rules/prefer-ts-extras-array-at.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-concat.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-concat.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-concat.js +66 -0
- package/dist/rules/prefer-ts-extras-array-concat.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-find-last-index.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-find-last-index.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-find-last-index.js +63 -0
- package/dist/rules/prefer-ts-extras-array-find-last-index.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-find-last.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-find-last.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-find-last.js +66 -0
- package/dist/rules/prefer-ts-extras-array-find-last.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-find.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-find.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-find.js +63 -0
- package/dist/rules/prefer-ts-extras-array-find.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-first.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-first.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-first.js +107 -0
- package/dist/rules/prefer-ts-extras-array-first.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-includes.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-includes.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-includes.js +89 -0
- package/dist/rules/prefer-ts-extras-array-includes.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-join.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-array-join.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-join.js +66 -0
- package/dist/rules/prefer-ts-extras-array-join.js.map +1 -0
- package/dist/rules/prefer-ts-extras-array-last.d.ts +8 -0
- package/dist/rules/prefer-ts-extras-array-last.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-array-last.js +132 -0
- package/dist/rules/prefer-ts-extras-array-last.js.map +1 -0
- package/dist/rules/prefer-ts-extras-as-writable.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-as-writable.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-as-writable.js +110 -0
- package/dist/rules/prefer-ts-extras-as-writable.js.map +1 -0
- package/dist/rules/prefer-ts-extras-assert-defined.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-assert-defined.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-assert-defined.js +182 -0
- package/dist/rules/prefer-ts-extras-assert-defined.js.map +1 -0
- package/dist/rules/prefer-ts-extras-assert-error.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-assert-error.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-assert-error.js +152 -0
- package/dist/rules/prefer-ts-extras-assert-error.js.map +1 -0
- package/dist/rules/prefer-ts-extras-assert-present.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-assert-present.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-assert-present.js +266 -0
- package/dist/rules/prefer-ts-extras-assert-present.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-defined-filter.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-defined-filter.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-defined-filter.js +90 -0
- package/dist/rules/prefer-ts-extras-is-defined-filter.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-defined.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-defined.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-defined.js +179 -0
- package/dist/rules/prefer-ts-extras-is-defined.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-empty.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-empty.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-empty.js +116 -0
- package/dist/rules/prefer-ts-extras-is-empty.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-equal-type.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-equal-type.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-equal-type.js +138 -0
- package/dist/rules/prefer-ts-extras-is-equal-type.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-finite.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-finite.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-finite.js +61 -0
- package/dist/rules/prefer-ts-extras-is-finite.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-infinite.d.ts +8 -0
- package/dist/rules/prefer-ts-extras-is-infinite.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-infinite.js +178 -0
- package/dist/rules/prefer-ts-extras-is-infinite.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-integer.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-integer.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-integer.js +61 -0
- package/dist/rules/prefer-ts-extras-is-integer.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-present-filter.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-present-filter.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-present-filter.js +216 -0
- package/dist/rules/prefer-ts-extras-is-present-filter.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-present.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-present.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-present.js +217 -0
- package/dist/rules/prefer-ts-extras-is-present.js.map +1 -0
- package/dist/rules/prefer-ts-extras-is-safe-integer.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-is-safe-integer.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-is-safe-integer.js +61 -0
- package/dist/rules/prefer-ts-extras-is-safe-integer.js.map +1 -0
- package/dist/rules/prefer-ts-extras-key-in.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-key-in.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-key-in.js +124 -0
- package/dist/rules/prefer-ts-extras-key-in.js.map +1 -0
- package/dist/rules/prefer-ts-extras-not.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-not.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-not.js +136 -0
- package/dist/rules/prefer-ts-extras-not.js.map +1 -0
- package/dist/rules/prefer-ts-extras-object-entries.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-object-entries.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-object-entries.js +59 -0
- package/dist/rules/prefer-ts-extras-object-entries.js.map +1 -0
- package/dist/rules/prefer-ts-extras-object-from-entries.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-object-from-entries.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-object-from-entries.js +59 -0
- package/dist/rules/prefer-ts-extras-object-from-entries.js.map +1 -0
- package/dist/rules/prefer-ts-extras-object-has-in.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-object-has-in.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-object-has-in.js +79 -0
- package/dist/rules/prefer-ts-extras-object-has-in.js.map +1 -0
- package/dist/rules/prefer-ts-extras-object-has-own.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-object-has-own.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-object-has-own.js +82 -0
- package/dist/rules/prefer-ts-extras-object-has-own.js.map +1 -0
- package/dist/rules/prefer-ts-extras-object-keys.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-object-keys.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-object-keys.js +59 -0
- package/dist/rules/prefer-ts-extras-object-keys.js.map +1 -0
- package/dist/rules/prefer-ts-extras-object-values.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-object-values.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-object-values.js +59 -0
- package/dist/rules/prefer-ts-extras-object-values.js.map +1 -0
- package/dist/rules/prefer-ts-extras-safe-cast-to.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-safe-cast-to.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-safe-cast-to.js +159 -0
- package/dist/rules/prefer-ts-extras-safe-cast-to.js.map +1 -0
- package/dist/rules/prefer-ts-extras-set-has.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-set-has.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-set-has.js +304 -0
- package/dist/rules/prefer-ts-extras-set-has.js.map +1 -0
- package/dist/rules/prefer-ts-extras-string-split.d.ts +13 -0
- package/dist/rules/prefer-ts-extras-string-split.d.ts.map +1 -0
- package/dist/rules/prefer-ts-extras-string-split.js +166 -0
- package/dist/rules/prefer-ts-extras-string-split.js.map +1 -0
- package/dist/rules/prefer-type-fest-abstract-constructor.d.ts +13 -0
- package/dist/rules/prefer-type-fest-abstract-constructor.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-abstract-constructor.js +65 -0
- package/dist/rules/prefer-type-fest-abstract-constructor.js.map +1 -0
- package/dist/rules/prefer-type-fest-arrayable.d.ts +13 -0
- package/dist/rules/prefer-type-fest-arrayable.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-arrayable.js +123 -0
- package/dist/rules/prefer-type-fest-arrayable.js.map +1 -0
- package/dist/rules/prefer-type-fest-async-return-type.d.ts +13 -0
- package/dist/rules/prefer-type-fest-async-return-type.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-async-return-type.js +92 -0
- package/dist/rules/prefer-type-fest-async-return-type.js.map +1 -0
- package/dist/rules/prefer-type-fest-conditional-pick.d.ts +13 -0
- package/dist/rules/prefer-type-fest-conditional-pick.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-conditional-pick.js +74 -0
- package/dist/rules/prefer-type-fest-conditional-pick.js.map +1 -0
- package/dist/rules/prefer-type-fest-constructor.d.ts +13 -0
- package/dist/rules/prefer-type-fest-constructor.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-constructor.js +67 -0
- package/dist/rules/prefer-type-fest-constructor.js.map +1 -0
- package/dist/rules/prefer-type-fest-except.d.ts +13 -0
- package/dist/rules/prefer-type-fest-except.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-except.js +105 -0
- package/dist/rules/prefer-type-fest-except.js.map +1 -0
- package/dist/rules/prefer-type-fest-if.d.ts +13 -0
- package/dist/rules/prefer-type-fest-if.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-if.js +79 -0
- package/dist/rules/prefer-type-fest-if.js.map +1 -0
- package/dist/rules/prefer-type-fest-iterable-element.d.ts +13 -0
- package/dist/rules/prefer-type-fest-iterable-element.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-iterable-element.js +76 -0
- package/dist/rules/prefer-type-fest-iterable-element.js.map +1 -0
- package/dist/rules/prefer-type-fest-json-array.d.ts +13 -0
- package/dist/rules/prefer-type-fest-json-array.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-json-array.js +164 -0
- package/dist/rules/prefer-type-fest-json-array.js.map +1 -0
- package/dist/rules/prefer-type-fest-json-object.d.ts +13 -0
- package/dist/rules/prefer-type-fest-json-object.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-json-object.js +102 -0
- package/dist/rules/prefer-type-fest-json-object.js.map +1 -0
- package/dist/rules/prefer-type-fest-json-primitive.d.ts +13 -0
- package/dist/rules/prefer-type-fest-json-primitive.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-json-primitive.js +112 -0
- package/dist/rules/prefer-type-fest-json-primitive.js.map +1 -0
- package/dist/rules/prefer-type-fest-json-value.d.ts +13 -0
- package/dist/rules/prefer-type-fest-json-value.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-json-value.js +109 -0
- package/dist/rules/prefer-type-fest-json-value.js.map +1 -0
- package/dist/rules/prefer-type-fest-keys-of-union.d.ts +13 -0
- package/dist/rules/prefer-type-fest-keys-of-union.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-keys-of-union.js +74 -0
- package/dist/rules/prefer-type-fest-keys-of-union.js.map +1 -0
- package/dist/rules/prefer-type-fest-literal-union.d.ts +13 -0
- package/dist/rules/prefer-type-fest-literal-union.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-literal-union.js +181 -0
- package/dist/rules/prefer-type-fest-literal-union.js.map +1 -0
- package/dist/rules/prefer-type-fest-merge-exclusive.d.ts +13 -0
- package/dist/rules/prefer-type-fest-merge-exclusive.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-merge-exclusive.js +63 -0
- package/dist/rules/prefer-type-fest-merge-exclusive.js.map +1 -0
- package/dist/rules/prefer-type-fest-non-empty-tuple.d.ts +13 -0
- package/dist/rules/prefer-type-fest-non-empty-tuple.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-non-empty-tuple.js +133 -0
- package/dist/rules/prefer-type-fest-non-empty-tuple.js.map +1 -0
- package/dist/rules/prefer-type-fest-omit-index-signature.d.ts +13 -0
- package/dist/rules/prefer-type-fest-omit-index-signature.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-omit-index-signature.js +74 -0
- package/dist/rules/prefer-type-fest-omit-index-signature.js.map +1 -0
- package/dist/rules/prefer-type-fest-partial-deep.d.ts +13 -0
- package/dist/rules/prefer-type-fest-partial-deep.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-partial-deep.js +63 -0
- package/dist/rules/prefer-type-fest-partial-deep.js.map +1 -0
- package/dist/rules/prefer-type-fest-primitive.d.ts +13 -0
- package/dist/rules/prefer-type-fest-primitive.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-primitive.js +102 -0
- package/dist/rules/prefer-type-fest-primitive.js.map +1 -0
- package/dist/rules/prefer-type-fest-promisable.d.ts +13 -0
- package/dist/rules/prefer-type-fest-promisable.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-promisable.js +167 -0
- package/dist/rules/prefer-type-fest-promisable.js.map +1 -0
- package/dist/rules/prefer-type-fest-readonly-deep.d.ts +13 -0
- package/dist/rules/prefer-type-fest-readonly-deep.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-readonly-deep.js +63 -0
- package/dist/rules/prefer-type-fest-readonly-deep.js.map +1 -0
- package/dist/rules/prefer-type-fest-require-all-or-none.d.ts +13 -0
- package/dist/rules/prefer-type-fest-require-all-or-none.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-require-all-or-none.js +75 -0
- package/dist/rules/prefer-type-fest-require-all-or-none.js.map +1 -0
- package/dist/rules/prefer-type-fest-require-at-least-one.d.ts +13 -0
- package/dist/rules/prefer-type-fest-require-at-least-one.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-require-at-least-one.js +74 -0
- package/dist/rules/prefer-type-fest-require-at-least-one.js.map +1 -0
- package/dist/rules/prefer-type-fest-require-exactly-one.d.ts +13 -0
- package/dist/rules/prefer-type-fest-require-exactly-one.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-require-exactly-one.js +102 -0
- package/dist/rules/prefer-type-fest-require-exactly-one.js.map +1 -0
- package/dist/rules/prefer-type-fest-require-one-or-none.d.ts +13 -0
- package/dist/rules/prefer-type-fest-require-one-or-none.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-require-one-or-none.js +74 -0
- package/dist/rules/prefer-type-fest-require-one-or-none.js.map +1 -0
- package/dist/rules/prefer-type-fest-required-deep.d.ts +13 -0
- package/dist/rules/prefer-type-fest-required-deep.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-required-deep.js +63 -0
- package/dist/rules/prefer-type-fest-required-deep.js.map +1 -0
- package/dist/rules/prefer-type-fest-schema.d.ts +13 -0
- package/dist/rules/prefer-type-fest-schema.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-schema.js +74 -0
- package/dist/rules/prefer-type-fest-schema.js.map +1 -0
- package/dist/rules/prefer-type-fest-set-non-nullable.d.ts +13 -0
- package/dist/rules/prefer-type-fest-set-non-nullable.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-set-non-nullable.js +74 -0
- package/dist/rules/prefer-type-fest-set-non-nullable.js.map +1 -0
- package/dist/rules/prefer-type-fest-set-optional.d.ts +13 -0
- package/dist/rules/prefer-type-fest-set-optional.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-set-optional.js +74 -0
- package/dist/rules/prefer-type-fest-set-optional.js.map +1 -0
- package/dist/rules/prefer-type-fest-set-readonly.d.ts +13 -0
- package/dist/rules/prefer-type-fest-set-readonly.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-set-readonly.js +74 -0
- package/dist/rules/prefer-type-fest-set-readonly.js.map +1 -0
- package/dist/rules/prefer-type-fest-set-required.d.ts +13 -0
- package/dist/rules/prefer-type-fest-set-required.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-set-required.js +74 -0
- package/dist/rules/prefer-type-fest-set-required.js.map +1 -0
- package/dist/rules/prefer-type-fest-simplify.d.ts +13 -0
- package/dist/rules/prefer-type-fest-simplify.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-simplify.js +75 -0
- package/dist/rules/prefer-type-fest-simplify.js.map +1 -0
- package/dist/rules/prefer-type-fest-tagged-brands.d.ts +13 -0
- package/dist/rules/prefer-type-fest-tagged-brands.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-tagged-brands.js +174 -0
- package/dist/rules/prefer-type-fest-tagged-brands.js.map +1 -0
- package/dist/rules/prefer-type-fest-tuple-of.d.ts +14 -0
- package/dist/rules/prefer-type-fest-tuple-of.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-tuple-of.js +132 -0
- package/dist/rules/prefer-type-fest-tuple-of.js.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-array.d.ts +13 -0
- package/dist/rules/prefer-type-fest-unknown-array.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-array.js +111 -0
- package/dist/rules/prefer-type-fest-unknown-array.js.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-map.d.ts +13 -0
- package/dist/rules/prefer-type-fest-unknown-map.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-map.js +82 -0
- package/dist/rules/prefer-type-fest-unknown-map.js.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-record.d.ts +13 -0
- package/dist/rules/prefer-type-fest-unknown-record.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-record.js +77 -0
- package/dist/rules/prefer-type-fest-unknown-record.js.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-set.d.ts +13 -0
- package/dist/rules/prefer-type-fest-unknown-set.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-unknown-set.js +81 -0
- package/dist/rules/prefer-type-fest-unknown-set.js.map +1 -0
- package/dist/rules/prefer-type-fest-unwrap-tagged.d.ts +13 -0
- package/dist/rules/prefer-type-fest-unwrap-tagged.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-unwrap-tagged.js +74 -0
- package/dist/rules/prefer-type-fest-unwrap-tagged.js.map +1 -0
- package/dist/rules/prefer-type-fest-value-of.d.ts +13 -0
- package/dist/rules/prefer-type-fest-value-of.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-value-of.js +74 -0
- package/dist/rules/prefer-type-fest-value-of.js.map +1 -0
- package/dist/rules/prefer-type-fest-writable-deep.d.ts +13 -0
- package/dist/rules/prefer-type-fest-writable-deep.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-writable-deep.js +64 -0
- package/dist/rules/prefer-type-fest-writable-deep.js.map +1 -0
- package/dist/rules/prefer-type-fest-writable.d.ts +13 -0
- package/dist/rules/prefer-type-fest-writable.d.ts.map +1 -0
- package/dist/rules/prefer-type-fest-writable.js +129 -0
- package/dist/rules/prefer-type-fest-writable.js.map +1 -0
- package/docs/rules/getting-started.md +74 -0
- package/docs/rules/guides/adoption-checklist.md +37 -0
- package/docs/rules/guides/preset-selection-strategy.md +87 -0
- package/docs/rules/guides/rollout-and-fix-safety.md +42 -0
- package/docs/rules/guides/snapshot-testing.md +121 -0
- package/docs/rules/guides/type-aware-linting-readiness.md +105 -0
- package/docs/rules/overview.md +49 -0
- package/docs/rules/prefer-ts-extras-array-at.md +132 -0
- package/docs/rules/prefer-ts-extras-array-concat.md +138 -0
- package/docs/rules/prefer-ts-extras-array-find-last-index.md +108 -0
- package/docs/rules/prefer-ts-extras-array-find-last.md +108 -0
- package/docs/rules/prefer-ts-extras-array-find.md +108 -0
- package/docs/rules/prefer-ts-extras-array-first.md +132 -0
- package/docs/rules/prefer-ts-extras-array-includes.md +135 -0
- package/docs/rules/prefer-ts-extras-array-join.md +132 -0
- package/docs/rules/prefer-ts-extras-array-last.md +132 -0
- package/docs/rules/prefer-ts-extras-as-writable.md +124 -0
- package/docs/rules/prefer-ts-extras-assert-defined.md +140 -0
- package/docs/rules/prefer-ts-extras-assert-error.md +147 -0
- package/docs/rules/prefer-ts-extras-assert-present.md +139 -0
- package/docs/rules/prefer-ts-extras-is-defined-filter.md +125 -0
- package/docs/rules/prefer-ts-extras-is-defined.md +147 -0
- package/docs/rules/prefer-ts-extras-is-empty.md +142 -0
- package/docs/rules/prefer-ts-extras-is-equal-type.md +144 -0
- package/docs/rules/prefer-ts-extras-is-finite.md +116 -0
- package/docs/rules/prefer-ts-extras-is-infinite.md +134 -0
- package/docs/rules/prefer-ts-extras-is-integer.md +116 -0
- package/docs/rules/prefer-ts-extras-is-present-filter.md +125 -0
- package/docs/rules/prefer-ts-extras-is-present.md +143 -0
- package/docs/rules/prefer-ts-extras-is-safe-integer.md +116 -0
- package/docs/rules/prefer-ts-extras-key-in.md +150 -0
- package/docs/rules/prefer-ts-extras-not.md +138 -0
- package/docs/rules/prefer-ts-extras-object-entries.md +130 -0
- package/docs/rules/prefer-ts-extras-object-from-entries.md +131 -0
- package/docs/rules/prefer-ts-extras-object-has-in.md +141 -0
- package/docs/rules/prefer-ts-extras-object-has-own.md +137 -0
- package/docs/rules/prefer-ts-extras-object-keys.md +127 -0
- package/docs/rules/prefer-ts-extras-object-values.md +128 -0
- package/docs/rules/prefer-ts-extras-safe-cast-to.md +130 -0
- package/docs/rules/prefer-ts-extras-set-has.md +203 -0
- package/docs/rules/prefer-ts-extras-string-split.md +133 -0
- package/docs/rules/prefer-type-fest-abstract-constructor.md +87 -0
- package/docs/rules/prefer-type-fest-arrayable.md +127 -0
- package/docs/rules/prefer-type-fest-async-return-type.md +117 -0
- package/docs/rules/prefer-type-fest-conditional-pick.md +140 -0
- package/docs/rules/prefer-type-fest-constructor.md +87 -0
- package/docs/rules/prefer-type-fest-except.md +231 -0
- package/docs/rules/prefer-type-fest-if.md +217 -0
- package/docs/rules/prefer-type-fest-iterable-element.md +170 -0
- package/docs/rules/prefer-type-fest-json-array.md +107 -0
- package/docs/rules/prefer-type-fest-json-object.md +107 -0
- package/docs/rules/prefer-type-fest-json-primitive.md +105 -0
- package/docs/rules/prefer-type-fest-json-value.md +107 -0
- package/docs/rules/prefer-type-fest-keys-of-union.md +139 -0
- package/docs/rules/prefer-type-fest-literal-union.md +118 -0
- package/docs/rules/prefer-type-fest-merge-exclusive.md +118 -0
- package/docs/rules/prefer-type-fest-non-empty-tuple.md +115 -0
- package/docs/rules/prefer-type-fest-omit-index-signature.md +196 -0
- package/docs/rules/prefer-type-fest-partial-deep.md +133 -0
- package/docs/rules/prefer-type-fest-primitive.md +106 -0
- package/docs/rules/prefer-type-fest-promisable.md +246 -0
- package/docs/rules/prefer-type-fest-readonly-deep.md +151 -0
- package/docs/rules/prefer-type-fest-require-all-or-none.md +149 -0
- package/docs/rules/prefer-type-fest-require-at-least-one.md +155 -0
- package/docs/rules/prefer-type-fest-require-exactly-one.md +240 -0
- package/docs/rules/prefer-type-fest-require-one-or-none.md +165 -0
- package/docs/rules/prefer-type-fest-required-deep.md +123 -0
- package/docs/rules/prefer-type-fest-schema.md +161 -0
- package/docs/rules/prefer-type-fest-set-non-nullable.md +145 -0
- package/docs/rules/prefer-type-fest-set-optional.md +133 -0
- package/docs/rules/prefer-type-fest-set-readonly.md +136 -0
- package/docs/rules/prefer-type-fest-set-required.md +140 -0
- package/docs/rules/prefer-type-fest-simplify.md +168 -0
- package/docs/rules/prefer-type-fest-tagged-brands.md +278 -0
- package/docs/rules/prefer-type-fest-tuple-of.md +250 -0
- package/docs/rules/prefer-type-fest-unknown-array.md +126 -0
- package/docs/rules/prefer-type-fest-unknown-map.md +123 -0
- package/docs/rules/prefer-type-fest-unknown-record.md +130 -0
- package/docs/rules/prefer-type-fest-unknown-set.md +123 -0
- package/docs/rules/prefer-type-fest-unwrap-tagged.md +133 -0
- package/docs/rules/prefer-type-fest-value-of.md +121 -0
- package/docs/rules/prefer-type-fest-writable-deep.md +113 -0
- package/docs/rules/prefer-type-fest-writable.md +139 -0
- package/docs/rules/presets/all.md +102 -0
- package/docs/rules/presets/index.md +124 -0
- package/docs/rules/presets/minimal.md +37 -0
- package/docs/rules/presets/recommended-type-checked.md +37 -0
- package/docs/rules/presets/recommended.md +116 -0
- package/docs/rules/presets/strict.md +98 -0
- package/docs/rules/presets/ts-extras-type-guards.md +45 -0
- package/docs/rules/presets/type-fest-types.md +68 -0
- package/package.json +574 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,1814 @@
|
|
|
1
|
+
<!-- markdownlint-disable -->
|
|
2
|
+
<!-- eslint-disable markdown/no-missing-label-refs -->
|
|
3
|
+
# Changelog
|
|
4
|
+
|
|
5
|
+
All notable changes to this project will be documented in this file.
|
|
6
|
+
|
|
7
|
+
## [Unreleased]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
[[d233b9c](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/d233b9c2b49f5f87e10e2c2ee04deed9765f54a3)...
|
|
11
|
+
[aeb72ee](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/aeb72eeeb9be48054bf96209b07ff62e9f777d33)]
|
|
12
|
+
([compare](https://github.com/Nick2bad4u/eslint-plugin-typefest/compare/d233b9c2b49f5f87e10e2c2ee04deed9765f54a3...aeb72eeeb9be48054bf96209b07ff62e9f777d33))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### โจ Features
|
|
16
|
+
|
|
17
|
+
- โจ [feat] Update test coverage scripts and enhance JUnit reporting
|
|
18
|
+
- ๐ง Modify coverage job to run tests with JUnit report generation
|
|
19
|
+
- ๐ Add verification for JUnit artifact existence
|
|
20
|
+
- ๐ค Implement upload of test results to Codecov
|
|
21
|
+
- ๐ Refactor assertions in prefer-ts-extras-is-empty, prefer-ts-extras-is-infinite, and prefer-ts-extras-not tests to use regex matching for improved accuracy
|
|
22
|
+
|
|
23
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(fe9b0b3)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/fe9b0b3d4133560154045a82ec981920ba847574)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
- โจ [feat] Add ESLint 9 compatibility checks and update documentation
|
|
27
|
+
- ๐ ๏ธ [fix] Implement ESLint 9 compatibility smoke checks in a new script
|
|
28
|
+
- ๐ง [build] Update CI configuration to include ESLint 9 compatibility job
|
|
29
|
+
- ๐ [docs] Add compatibility section to README with supported ESLint versions
|
|
30
|
+
- ๐ง [build] Update package.json and package-lock.json for ESLint 9 compatibility
|
|
31
|
+
- ๐ [refactor] Simplify regex patterns in typed-rule.ts for test file detection
|
|
32
|
+
|
|
33
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(8e7a5a8)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/8e7a5a8890c707d01bd8af285ff7bd3eb53a9698)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
- โจ [feat] Enhance ESLint Benchmarking and Add New Fixtures
|
|
37
|
+
- ๐ ๏ธ [fix] Update ESLint rule types to use `import("eslint").Linter.RulesRecord` for better type safety.
|
|
38
|
+
- โจ [feat] Introduce new benchmark file globs for `recommendedZeroMessageFixture` and `safeCastToStressFixture`.
|
|
39
|
+
- ๐ [docs] Add `recommended-zero-message.baseline.ts` to provide a baseline workload for the recommended preset.
|
|
40
|
+
- ๐ [docs] Create `safe-cast-to.stress.ts` to test the `prefer-ts-extras-safe-cast-to` rule under stress conditions.
|
|
41
|
+
- โก [perf] Improve `assertMeaningfulBenchmarkSignal` to accept options for maximum and minimum reported problems.
|
|
42
|
+
- โจ [feat] Add new benchmarks for the `prefer-ts-extras-safe-cast-to` rule with both fixing and non-fixing scenarios.
|
|
43
|
+
- ๐ท [ci] Update `run-eslint-stats.mjs` to handle new benchmark scenarios and improve reporting with comparison capabilities.
|
|
44
|
+
- ๐งน [chore] Introduce `codecov.yml` for better coverage reporting and management.
|
|
45
|
+
- ๐จ [style] Refactor `lint-actionlint.mjs` to improve output readability with colored console messages.
|
|
46
|
+
- โก [perf] Optimize `vite.config.ts` to include source files in coverage reporting.
|
|
47
|
+
|
|
48
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(72b72c3)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/72b72c3d76e79c5c48b80909a5f26f5d304afd53)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
- โจ [feat] Update rules to require 'frozen: false' for typefest ESLint rules
|
|
52
|
+
- ๐ Added 'frozen: false' to the documentation of multiple TypeFest ESLint rules to indicate that these rules are not frozen and can be modified in the future.
|
|
53
|
+
|
|
54
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(110d7dd)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/110d7dd4ad77096226ed311227c6e9dc54b8669a)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
- โจ [feat] Adds preset-tagged rule recommendations
|
|
58
|
+
|
|
59
|
+
โจ [feat] Expands rule documentation metadata to support preset-based recommendation tags, so guidance maps cleanly to multiple preset levels.
|
|
60
|
+
- Adds stricter metadata typing to improve consistency and catch invalid recommendation values earlier.
|
|
61
|
+
|
|
62
|
+
โจ [feat] Populates recommendation targets across the rule set, including core preset tiers and specialized preset groups.
|
|
63
|
+
- Improves downstream docs and config tooling by making recommendation intent explicit per rule.
|
|
64
|
+
|
|
65
|
+
๐ ๏ธ [fix] Tightens runtime validation for optional configuration inputs and nullable objects.
|
|
66
|
+
- Prevents empty or non-string values from being treated as valid and reduces fragile fallback behavior.
|
|
67
|
+
|
|
68
|
+
๐ [refactor] Applies consistency cleanups in scripts and internal utilities, including style normalization and stricter readonly typing.
|
|
69
|
+
๐งช [test] Updates test helpers and mocks to align with stricter type expectations and explicit undefined checks.
|
|
70
|
+
|
|
71
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(155c352)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/155c352f4fdb9a3ac38104a5b11b67ede23aefe4)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
- โจ [feat] Enhance TypeFest rule tests with detailed metadata and messages
|
|
75
|
+
- ๐ ๏ธ [fix] Refactor rule tests to include `ruleId`, `docsDescription`, and `messages` for better clarity and maintainability
|
|
76
|
+
- ๐ [docs] Update documentation strings to specify the purpose of each rule, emphasizing the preference for TypeFest types over aliases
|
|
77
|
+
- ๐ง [build] Add inline invalid and valid test cases for various TypeFest rules, ensuring comprehensive coverage
|
|
78
|
+
- โก [perf] Optimize test structure by consolidating repetitive code patterns into reusable functions
|
|
79
|
+
- ๐งช [test] Introduce new test cases for edge scenarios, including whitespace formatting and generic type handling
|
|
80
|
+
|
|
81
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(db8f3d9)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/db8f3d907e5b7dff0f98dc648045e96776573ba2)
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
- โจ [feat] Enhance prefer-ts-extras-is-equal-type tests with metadata validation
|
|
85
|
+
- ๐ Add metadata loading function for `prefer-ts-extras-is-equal-type` rule
|
|
86
|
+
- โ
Implement tests for stable report and suggestion messages
|
|
87
|
+
- ๐ Include checks for default options, documentation, and suggestion messages
|
|
88
|
+
- ๐ Add inline code examples for conflicting bindings and named imports
|
|
89
|
+
|
|
90
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(b7735ff)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/b7735fff0c81b9b0e938e11e80f466824d347ee6)
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
- โจ [feat] Enhance prefer-ts-extras-is-equal-type rule with ts-extras integration
|
|
94
|
+
- ๐ ๏ธ [fix] Add support for isEqualType function from ts-extras in ESLint rule
|
|
95
|
+
- ๐ง [build] Update test fixtures to include ts-extras imports and expected outputs
|
|
96
|
+
- ๐งช [test] Extend tests for aliased imports and ensure correct suggestions are provided
|
|
97
|
+
|
|
98
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(64beea6)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/64beea69975339a2924f307a80baf25d38e4c3c7)
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
- โจ [feat] Introduce local Typefest plugin dogfooding rules
|
|
102
|
+
- Added local Typefest plugin for manual dogfooding in ESLint configuration
|
|
103
|
+
- Defined explicit rules for Typefest utilities to enhance linting experience
|
|
104
|
+
- Updated section headers from "MARK" to "SECTION" for consistency across the config
|
|
105
|
+
|
|
106
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(df8b7be)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/df8b7be5d4074457f8d826c979149f8f861f7c73)
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
- โจ [feat] Implement script for temp directory cleanup
|
|
110
|
+
- ๐ ๏ธ Update hooks to use new PowerShell script for removing temp files
|
|
111
|
+
- ๐ ๏ธ Replace inline commands with calls to `.github/hooks/scripts/remove-temp.ps1`
|
|
112
|
+
- ๐ ๏ธ Add logging prompts for Linux and OSX in hooks
|
|
113
|
+
- ๐ Create `remove-temp.ps1` script to handle temp directory cleanup
|
|
114
|
+
|
|
115
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(98e032b)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/98e032b352efbe56862f5912aaab20d094319018)
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
- โจ [feat] Update node configuration and dependencies
|
|
119
|
+
- ๐ง Change "test" directory to "tests" in node options for file system read permissions
|
|
120
|
+
- ๐ง Add additional files to allow file system read permissions including package-lock.json, tsconfig.build.json, eslint.config.js, README.md, CHANGELOG.md, and LICENSE
|
|
121
|
+
- ๐ง Enable extra info on fatal exceptions in node options
|
|
122
|
+
- ๐ง Update test runner configuration to include new test file patterns and coverage settings
|
|
123
|
+
- ๐ง Add support for TypeScript files with .mts extension in coverage include patterns
|
|
124
|
+
- ๐ง Update test coverage thresholds for branches, functions, and lines to 80%
|
|
125
|
+
- ๐ง Adjust test concurrency settings based on CI environment
|
|
126
|
+
|
|
127
|
+
๐ง [chore] Update package dependencies
|
|
128
|
+
- ๐ง Add @stryker-ignorer/console-all package for improved mutation testing
|
|
129
|
+
- ๐ง Update stylelint-plugin-use-baseline to version 1.2.4
|
|
130
|
+
- ๐ง Update typedoc-plugin-dt-links to version 2.0.43
|
|
131
|
+
- ๐ง Remove eslint-plugin-no-hardcoded-strings as it is no longer needed
|
|
132
|
+
|
|
133
|
+
๐งช [test] Enhance test coverage for imported type aliases and value symbols
|
|
134
|
+
- ๐งช Add new tests for createSafeTypeNodeReplacementFix and createSafeTypeNodeTextReplacementFix functions
|
|
135
|
+
- ๐งช Implement tests for imported-value-symbols including collectDirectNamedValueImportsFromSource and related functions
|
|
136
|
+
- ๐งช Ensure tests cover various scenarios including type-only imports, different source modules, and multiple local aliases
|
|
137
|
+
|
|
138
|
+
๐งช [test] Add tests for plugin source configurations
|
|
139
|
+
- ๐งช Verify that plugin configurations build correctly and contain expected rules
|
|
140
|
+
- ๐งช Ensure parser defaults and plugin namespace are registered properly
|
|
141
|
+
|
|
142
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(5c39e3d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/5c39e3d5254fd081c9bd94a35933f21cd396893e)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
- โจ [feat] Add Stryker mutation testing configuration
|
|
146
|
+
- ๐ ๏ธ [config] Create .github/workflows/stryker.yml for scheduled and manual mutation testing
|
|
147
|
+
- ๐ง [build] Update package.json scripts for Stryker with concurrency and incremental file options
|
|
148
|
+
- ๐ง [build] Upgrade knip dependency to version 5.85.0
|
|
149
|
+
- ๐ ๏ธ [config] Enhance stryker.config.mjs with dashboard integration and improved concurrency settings
|
|
150
|
+
- ๐ ๏ธ [config] Adjust thresholds for mutation testing to improve quality metrics
|
|
151
|
+
|
|
152
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(7608574)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/7608574ff670f60b3822c80f981c06e41e61e748)
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
- โจ [feat] Update ESLint configuration and dependencies
|
|
156
|
+
- ๐ง Update environment variable for JSON schema validation from `UW_ENABLE_JSON_SCHEMA_VALIDATION` to `ENABLE_JSON_SCHEMA_VALIDATION`
|
|
157
|
+
- ๐ง Change ESLint progress mode variable from `UW_ESLINT_PROGRESS` to `ESLINT_PROGRESS`
|
|
158
|
+
- ๐ง Upgrade `eslint-plugin-node-dependencies` from `1.3.0` to `2.0.0`
|
|
159
|
+
- ๐ง Update dependencies in `eslint-plugin-node-dependencies` to their latest versions
|
|
160
|
+
- ๐ง Modify `package.json` to reflect the updated version of `eslint-plugin-node-dependencies`
|
|
161
|
+
|
|
162
|
+
๐ ๏ธ [fix] Refactor internal logic for variable resolution in scope
|
|
163
|
+
- ๐ง Introduce `getVariableInScopeChain` to streamline variable resolution across scopes
|
|
164
|
+
- ๐ง Refactor `isLocalNameBoundToExpectedImport` to utilize the new variable resolution function
|
|
165
|
+
|
|
166
|
+
โจ [feat] Enhance TypeFest plugin rule definitions
|
|
167
|
+
- ๐ง Define new rule names for TypeFest and TypeScript extras
|
|
168
|
+
- ๐ง Refactor `typefestRules` to use a more structured approach for rule definitions
|
|
169
|
+
- ๐ง Update the `TypefestRuleId` and `TypefestRuleName` types for better type safety
|
|
170
|
+
|
|
171
|
+
๐งช [test] Improve typed rule tester and runtime tests
|
|
172
|
+
- ๐ง Specify the type of `typedRuleTester` for better type inference
|
|
173
|
+
- ๐ง Refactor runtime tests to ensure proper mocking and reset of modules
|
|
174
|
+
|
|
175
|
+
๐ [docs] Update TypeScript configuration files
|
|
176
|
+
- ๐ง Set `isolatedDeclarations` to `true` in `tsconfig.build.json` for better module isolation
|
|
177
|
+
- ๐ง Adjust `tsconfig.eslint.json` to include `isolatedDeclarations` for consistency
|
|
178
|
+
- ๐ง Modify `tsconfig.json` to enable `declaration` and `declarationMap` for improved type definitions
|
|
179
|
+
|
|
180
|
+
๐จ [style] Refactor Vite configuration for clarity
|
|
181
|
+
- ๐ง Define `vitestConfig` with explicit type for better readability and maintainability
|
|
182
|
+
|
|
183
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(8afc040)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/8afc040b174fd9de7074b1ef149837163aa8dddf)
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
- โจ [feat] Adds import-safe autofixes to lint rules
|
|
187
|
+
|
|
188
|
+
โจ [feat] Expands many helper/type preference diagnostics to deliver automatic fixes or targeted suggestions, reducing manual migrations while keeping behavior stable.
|
|
189
|
+
- Applies rewrites only when required imports exist and local scope checks confirm replacements are safe.
|
|
190
|
+
- Falls back to non-fixing reports or suggestions when safety cannot be proven.
|
|
191
|
+
- Tightens pattern matching for guard, nullish, and infinity checks so automatic rewrites only occur for semantically reliable forms.
|
|
192
|
+
|
|
193
|
+
๐ [refactor] Introduces shared safe-replacement utilities for full type-node and custom-text substitutions, unifying fix generation across value and type rule paths.
|
|
194
|
+
|
|
195
|
+
๐ ๏ธ [fix] Preserves runtime boolean semantics in type-equality rewrites to prevent logical drift during suggested replacements.
|
|
196
|
+
|
|
197
|
+
๐ง [build] Updates lint-related dependency versions to align with newer parser/plugin compatibility.
|
|
198
|
+
|
|
199
|
+
๐งช [test] Adds broad invalid-case coverage with expected autofix and suggestion outputs to verify safety gates and rewrite correctness.
|
|
200
|
+
|
|
201
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(bfc3d8d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/bfc3d8d98165dd6866d558d059a2f6cd46369752)
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
- โจ [feat] Adds safe autofixes for preference rules
|
|
205
|
+
|
|
206
|
+
โจ [feat] Enables automatic rewrites to preferred utility-style calls when compatible value imports are already in scope.
|
|
207
|
+
- Improves rule usability by turning actionable guidance into one-step fixes.
|
|
208
|
+
- Preserves behavior by rewriting receiver-based method/member usage into equivalent function-call forms.
|
|
209
|
+
|
|
210
|
+
๐ [refactor] Introduces shared, scope-aware import resolution and fixer builders used across array/object preference checks.
|
|
211
|
+
- Resolves direct named and aliased value imports while ignoring type-only imports.
|
|
212
|
+
- Verifies symbol binding through scope lookup to avoid unsafe fixes when names are shadowed or unresolved.
|
|
213
|
+
- Applies fixes only for safe syntax patterns and marks the updated rules as code-fixable for consistent tooling behavior.
|
|
214
|
+
|
|
215
|
+
๐งช [test] Expands coverage with inline autofix scenarios for all updated preference checks.
|
|
216
|
+
- Validates expected transformed output when safe imports exist.
|
|
217
|
+
- Retains non-fixable and report-only paths to reduce regression risk.
|
|
218
|
+
|
|
219
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(25a1784)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/25a1784bf26d1d3e9023f21ed2d2023e1d628e02)
|
|
220
|
+
|
|
221
|
+
|
|
222
|
+
- โจ [feat] Add authors configuration for blog
|
|
223
|
+
- Introduced authors.yml to define contributors for the blog
|
|
224
|
+
- Added Alice Example with image, title, and social links
|
|
225
|
+
- Added Nick2bad4u with image, title, permalink, and social links
|
|
226
|
+
|
|
227
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(53bf4a6)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/53bf4a66503c9a0274fea8af7b4cc1ee70c485ac)
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
- โจ [feat] Add favicon and enhance ESLint Config Inspector build script
|
|
231
|
+
- ๐ Introduce favicon.ico to Docusaurus static assets for improved branding
|
|
232
|
+
- ๐ง Refactor build-eslint-inspector.mjs to streamline the build process
|
|
233
|
+
- ๐ฆ Implement local testing version creation for easier development
|
|
234
|
+
- ๐ Update asset path fixing logic for better subdirectory deployment
|
|
235
|
+
- ๐ Create index redirect page for improved SEO and usability
|
|
236
|
+
|
|
237
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(2359e0c)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/2359e0c73d136715759ac931708f1f494a23a447)
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
- โจ [feat] Enhance documentation and CI workflow
|
|
241
|
+
- ๐ [docs] Add CLI debugging and config inspection guide
|
|
242
|
+
- ๐ [docs] Create IDE integration guide for VS Code
|
|
243
|
+
- ๐ [docs] Introduce maintainer performance profiling documentation
|
|
244
|
+
- ๐ [docs] Provide examples for Node.js ESLint API usage
|
|
245
|
+
- ๐ง [build] Update deploy workflow to include full git history and build steps
|
|
246
|
+
- ๐ ๏ธ [fix] Add processors property to plugin contract for compatibility
|
|
247
|
+
- ๐งช [test] Implement rule metadata integrity tests to ensure proper documentation and schema
|
|
248
|
+
- ๐จ [style] Add logo images for improved branding
|
|
249
|
+
|
|
250
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(a8ce34a)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/a8ce34af2b417febf44ca290ff535ba226c44a7f)
|
|
251
|
+
|
|
252
|
+
|
|
253
|
+
- โจ [feat] Integrate Stryker for mutation testing and enhance changelog generation
|
|
254
|
+
- ๐ง Add scripts for changelog generation, preview, and release notes using git-cliff
|
|
255
|
+
- ๐ ๏ธ Introduce Stryker configuration for mutation testing with TypeScript support
|
|
256
|
+
- ๐งช Add mutation testing commands to package.json for local and CI environments
|
|
257
|
+
- ๐จ Create a new vitest configuration file for Stryker to manage test execution
|
|
258
|
+
- ๐ Update tsconfig for ESLint to include new vitest configuration
|
|
259
|
+
- ๐จ Refactor type casting in imported-type-aliases test for improved readability
|
|
260
|
+
- ๐จ Adjust formatting in prefer-type-fest-tagged-brands test for consistency
|
|
261
|
+
|
|
262
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(2c6b5ef)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/2c6b5ef32519e49d3162d67786ba71cce83daf01)
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
- โจ [feat] Adds TypeFest typing preference rules
|
|
266
|
+
|
|
267
|
+
โจ [feat] Expands typed linting to standardize common type patterns on canonical utility aliases.
|
|
268
|
+
- Replaces ad-hoc constructor, abstract-constructor, deep utility, and exclusive-union patterns with consistent utility-first guidance.
|
|
269
|
+
- Improves type consistency across projects and reduces alias drift between teams.
|
|
270
|
+
- Preserves better literal-union authoring ergonomics while keeping primitive compatibility.
|
|
271
|
+
|
|
272
|
+
๐ [refactor] Updates plugin registration and typed rule grouping to include the new preferences.
|
|
273
|
+
- Ensures new rules are exposed and categorized with existing type-focused rule sets.
|
|
274
|
+
- Keeps test-file paths excluded to avoid noisy or misleading diagnostics in test code.
|
|
275
|
+
|
|
276
|
+
๐ [docs] Adds full rule documentation for each new preference.
|
|
277
|
+
- Provides rationale, incorrect/correct examples, flat-config usage, and opt-out guidance to support adoption.
|
|
278
|
+
|
|
279
|
+
๐งช [test] Adds typed fixtures and rule coverage for valid, invalid, and skipped-path scenarios.
|
|
280
|
+
- Confirms diagnostics trigger only on intended patterns and remain silent in test fixtures.
|
|
281
|
+
|
|
282
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(dcd7a6f)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/dcd7a6ffeea657c615551a71e08bcf6e7afbc4df)
|
|
283
|
+
|
|
284
|
+
|
|
285
|
+
- โจ [feat] Add modern docs UI enhancements
|
|
286
|
+
|
|
287
|
+
โจ [feat] Adds a client-side enhancement module to improve documentation site UX with scroll progress feedback, interactive hover behavior, fallback reveal animations, theme-toggle animation, dynamic accents, and desktop cursor lighting.
|
|
288
|
+
- Re-initializes effects after route transitions and cleans up listeners, observers, timers, and injected elements to keep SPA navigation stable and prevent stale handlers.
|
|
289
|
+
- Respects reduced-motion preferences and mobile breakpoints so enhancements stay accessible and lightweight across devices.
|
|
290
|
+
|
|
291
|
+
๐ [docs] Updates rule and test helper comments to use clearer, more consistent parameter and return wording.
|
|
292
|
+
- Improves readability and maintenance confidence without changing runtime or linting behavior.
|
|
293
|
+
|
|
294
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(d81f477)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/d81f47784ebb46ade581d9f8f58fd073bd088608)
|
|
295
|
+
|
|
296
|
+
|
|
297
|
+
- โจ [feat] Enhance documentation structure and content for eslint-plugin-typefest
|
|
298
|
+
- ๐ [docs] Update docusaurus configuration to include new pages for rules overview and getting started
|
|
299
|
+
- ๐ [docs] Add new sidebar categories and links for presets and rules
|
|
300
|
+
- ๐ [docs] Create detailed markdown files for each preset: minimal, recommended, strict, all, type-fest types, and type-guards
|
|
301
|
+
- ๐ [docs] Introduce getting started and overview documentation to guide users
|
|
302
|
+
- ๐จ [style] Update CSS styles to accommodate new sidebar categories and enhance visual hierarchy
|
|
303
|
+
- ๐งน [chore] Add type definitions for custom CSS modules to improve TypeScript support
|
|
304
|
+
- ๐ง [build] Include typed-css-modules in package.json for CSS module type generation
|
|
305
|
+
- ๐งน [chore] Clean up package.json and package-lock.json to ensure proper dependency management
|
|
306
|
+
|
|
307
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(a73ec43)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/a73ec4395f4b8c8977837a94ca16fbb998da3989)
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
- โจ [feat] Update Docusaurus homepage links and text
|
|
311
|
+
- ๐ Change the primary button link from "/docs/getting-started" to "/docs/intro"
|
|
312
|
+
- ๐ Update button text from "Read the docs" to "Start with Overview"
|
|
313
|
+
- ๐ Change the secondary button link from "/docs/rules" to "/docs/developer/api"
|
|
314
|
+
- ๐ Update button text from "Browse rules" to "Explore Developer API"
|
|
315
|
+
|
|
316
|
+
๐ ๏ธ [fix] Enhance ESLint configuration for CSS and Docusaurus
|
|
317
|
+
- ๐จ Add new ESLint plugins: "@docusaurus/eslint-plugin", "eslint-plugin-css-modules", "eslint-plugin-no-hardcoded-strings", and "eslint-plugin-undefined-css-classes"
|
|
318
|
+
- โ๏ธ Update ESLint rules for CSS files to include checks for empty blocks and undefined CSS classes
|
|
319
|
+
- ๐ง Adjust Docusaurus ESLint rules to improve code quality and maintainability
|
|
320
|
+
|
|
321
|
+
๐ง [build] Update package dependencies
|
|
322
|
+
- ๐ฆ Upgrade "eslint-plugin-compat" to version 6.2.0
|
|
323
|
+
- ๐ฆ Upgrade "eslint-plugin-jsdoc" to version 62.6.0
|
|
324
|
+
- ๐ฆ Upgrade "eslint-plugin-sonarjs" to version 4.0.0
|
|
325
|
+
- ๐ฆ Upgrade "eslint-plugin-storybook" to version 10.2.10
|
|
326
|
+
- ๐ฆ Upgrade "eslint-plugin-toml" to version 1.1.1
|
|
327
|
+
- ๐ฆ Upgrade "eslint-plugin-yml" to version 3.2.1
|
|
328
|
+
- ๐ฆ Upgrade "storybook" to version 10.2.10
|
|
329
|
+
- ๐ฆ Upgrade "typescript" peer dependency to version 5.9.3
|
|
330
|
+
|
|
331
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(413a896)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/413a896d53a2576852b4bc02e554478137e50477)
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
- โจ [feat] Enhance ESLint Plugin and Documentation
|
|
335
|
+
|
|
336
|
+
- ๐ ๏ธ [build] Add workspaces support for Docusaurus in package.json
|
|
337
|
+
- ๐ [docs] Introduce new scripts for documentation management:
|
|
338
|
+
- ๐ [scripts] Add build-eslint-inspector.mjs to build static ESLint Config Inspector
|
|
339
|
+
- ๐ [scripts] Implement check-doc-links.mjs to verify documentation links
|
|
340
|
+
- ๐งน [scripts] Create lint-actionlint.mjs for linting GitHub Actions workflows
|
|
341
|
+
- โ
[scripts] Add verify-eslint-inspector.mjs to validate ESLint Inspector integration
|
|
342
|
+
- ๐ ๏ธ [fix] Update tsconfig.eslint.json to include TypeScript files in docs directory
|
|
343
|
+
- ๐ [docs] Add tsdoc.json for TypeScript documentation configuration
|
|
344
|
+
- ๐งน [chore] Clean up and optimize existing scripts for better maintainability
|
|
345
|
+
|
|
346
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(17f1583)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/17f1583bc3a8ca11d587c827ac23d73895fd8c98)
|
|
347
|
+
|
|
348
|
+
|
|
349
|
+
- โจ [feat] Enhance TypeFest ESLint Plugin with TypeScript Support
|
|
350
|
+
- ๐ Add TypeScript parser as a dependency to improve compatibility with TypeScript files.
|
|
351
|
+
- ๐ง Update package.json to include TypeScript as a peer dependency, ensuring users have the correct version.
|
|
352
|
+
- ๐ ๏ธ Refactor plugin structure to utilize TypeScript types for improved type safety and clarity.
|
|
353
|
+
- ๐ Introduce detailed documentation for ESLint rules related to TypeFest and TypeScript utilities.
|
|
354
|
+
- ๐ Restructure rule definitions to enhance maintainability and readability.
|
|
355
|
+
- ๐งช Update tests to validate new configurations and ensure all rules are correctly registered.
|
|
356
|
+
- ๐ Ensure that experimental rules are properly categorized and excluded from stable configurations.
|
|
357
|
+
- ๐ Modify test cases to reflect changes in the plugin's configuration structure and rule registration.
|
|
358
|
+
|
|
359
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(58d2f8d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/58d2f8dad12ea27c2417c65490cc542b18a0bcbd)
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
- โจ [feat] Add new ESLint rules for TypeScript extras
|
|
363
|
+
- ๐ Introduced `prefer-ts-extras-is-equal-type` rule to encourage the use of `isEqualType<T, U>()` from `ts-extras` over `IsEqual<T, U>` boolean assertions.
|
|
364
|
+
- ๐ Introduced `prefer-ts-extras-is-present` rule to promote the use of `isPresent(value)` from `ts-extras` instead of inline nullish comparisons outside filter callbacks.
|
|
365
|
+
- ๐ ๏ธ Implemented logic to identify and suggest replacements for `IsEqual<T, U>` and nullish checks in the codebase.
|
|
366
|
+
- ๐ Updated documentation links for both rules to ensure users can access relevant information.
|
|
367
|
+
|
|
368
|
+
๐งช [test] Add tests for new ESLint rules
|
|
369
|
+
- โ
Created test cases for `prefer-ts-extras-is-equal-type` to validate correct identification and suggestion of type equality checks.
|
|
370
|
+
- โ
Created test cases for `prefer-ts-extras-is-present` to ensure proper detection of nullish comparisons and provide suggestions for using `isPresent`.
|
|
371
|
+
|
|
372
|
+
๐ [docs] Update documentation and test fixtures
|
|
373
|
+
- ๐ Added new documentation files for the newly created rules to guide users on their usage.
|
|
374
|
+
- ๐ Created valid and invalid test fixtures for both rules to ensure comprehensive testing coverage.
|
|
375
|
+
|
|
376
|
+
๐จ [style] Refactor existing test and configuration files
|
|
377
|
+
- ๐งน Cleaned up import statements in test files for consistency.
|
|
378
|
+
- ๐งน Adjusted test structure to improve readability and maintainability.
|
|
379
|
+
|
|
380
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(e731149)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/e7311497fccdd2a094cde912c332f28b562a9adb)
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
- โจ [feat] Enhance ESLint configuration with new rules and plugins
|
|
384
|
+
- ๐ง Import `defineConfig` and `globalIgnores` from `@eslint/config-helpers`
|
|
385
|
+
- ๐ง Update ESLint rules to include `@eslint-community/eslint-comments` for better comment handling
|
|
386
|
+
- ๐ง Reintroduce TypeScript rules for `tsdoc` and `unused-imports`
|
|
387
|
+
- ๐ง Adjust various rule settings for improved linting accuracy and performance
|
|
388
|
+
|
|
389
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(2cb3cac)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/2cb3cac8a808b97edc8e28aecad7c65bce1c22b0)
|
|
390
|
+
|
|
391
|
+
|
|
392
|
+
- โจ [feat] Introduce new rules for TypeScript extras
|
|
393
|
+
|
|
394
|
+
- โจ [feat] Add `prefer-ts-extras-as-writable` rule
|
|
395
|
+
- Enforces the use of `asWritable(value)` from `ts-extras` over `Writable<T>` assertions from `type-fest`.
|
|
396
|
+
- Includes logic to identify and report incorrect usages in TypeScript files.
|
|
397
|
+
- Provides comprehensive tests for valid and invalid cases.
|
|
398
|
+
|
|
399
|
+
- โจ [feat] Add `prefer-ts-extras-safe-cast-to` rule
|
|
400
|
+
- Requires the use of `safeCastTo<T>(value)` from `ts-extras` for type-safe assertions instead of direct `as` casts.
|
|
401
|
+
- Implements checks to ensure type safety and reports violations.
|
|
402
|
+
- Includes tests to validate the functionality of the rule.
|
|
403
|
+
|
|
404
|
+
- ๐ ๏ธ [fix] Update imports to use `import type` for TypeScript types
|
|
405
|
+
- Changes imports in multiple files to use `import type` for better type-only imports, improving performance and clarity.
|
|
406
|
+
|
|
407
|
+
- ๐งช [test] Add tests for new rules
|
|
408
|
+
- Comprehensive test cases for both `prefer-ts-extras-as-writable` and `prefer-ts-extras-safe-cast-to` rules.
|
|
409
|
+
- Includes valid and invalid scenarios to ensure robust rule enforcement.
|
|
410
|
+
|
|
411
|
+
- ๐งน [chore] Update rule tester utilities
|
|
412
|
+
- Adjustments to the rule tester to accommodate new rules and ensure compatibility with existing tests.
|
|
413
|
+
|
|
414
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(7702d74)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/7702d7457c6a6f278e1a3ed786e9c46fa04dc6d0)
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
- โจ [feat] Add .madgerc and .npmpackagejsonlintrc.json configuration files
|
|
418
|
+
- Introduced .madgerc for managing TypeScript file extensions and visualization settings
|
|
419
|
+
- Configured file extensions including ts, tsx, js, and others for better compatibility
|
|
420
|
+
- Set up detective options for TypeScript and TSX with specific configurations
|
|
421
|
+
- Added .npmpackagejsonlintrc.json for npm package JSON linting rules
|
|
422
|
+
- Defined strict rules for dependencies, devDependencies, and various package properties
|
|
423
|
+
- Included validation for author names and license types to ensure compliance
|
|
424
|
+
|
|
425
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(52dea7a)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/52dea7a2b170f4a07f7975d2c12f26773aa6fd5c)
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
- โจ [feat] Enhance ESLint configuration and testing setup
|
|
429
|
+
- ๐ง [build] Update global ignores to include test fixtures
|
|
430
|
+
- ๐ง [build] Modify test file patterns for improved matching
|
|
431
|
+
- ๐งช [test] Refactor assertions to use toBeTruthy() for clarity
|
|
432
|
+
- ๐งช [test] Update test descriptions for better readability
|
|
433
|
+
- ๐งช [test] Ensure all exported configs register the plugin correctly
|
|
434
|
+
- ๐งช [test] Validate existence of documentation files for rules
|
|
435
|
+
- ๐ง [build] Adjust Vite configuration for parallel test execution
|
|
436
|
+
|
|
437
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(570a740)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/570a7402f6ea936368bf1dd9364c107327357582)
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
- โจ [feat] Adds canonical TypeFest alias lint rules
|
|
441
|
+
|
|
442
|
+
โจ [feat] Adds new typed lint coverage that prefers canonical utility-type naming for index-signature omission and key-level non-nullable, readonly, and required transformations.
|
|
443
|
+
- Reduces migration friction across utility libraries and keeps public typing patterns consistent.
|
|
444
|
+
- Keeps intentional test-file skip behavior so checks stay focused on production-facing type usage.
|
|
445
|
+
|
|
446
|
+
๐ [docs] Documents the new rule set with clear check scope and rationale.
|
|
447
|
+
- Improves discoverability and explains why canonical naming is enforced.
|
|
448
|
+
|
|
449
|
+
๐ง [build] Updates lint and test infrastructure to better support rule adoption and test reliability.
|
|
450
|
+
- Introduces a dedicated test lint profile with testing-focused plugins and safeguards against focused-only tests.
|
|
451
|
+
- Adds serial and parallel test run scripts plus environment-driven worker and file-parallelism controls for faster local runs and safer CI defaults.
|
|
452
|
+
- Expands resolver project coverage and aligns configuration compatibility notes for newer ESLint runtime behavior.
|
|
453
|
+
|
|
454
|
+
๐งช [test] Adds comprehensive fixtures and rule tests for valid, invalid, namespace, and test-path skip scenarios.
|
|
455
|
+
- Strengthens plugin export assertions so newly added rules stay registered in exposed presets.
|
|
456
|
+
|
|
457
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(fdaf37b)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/fdaf37b4f0b1e9185e9d6b82c8cc11befb8f32d8)
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
- โจ [feat] Adds canonical TypeFest alias rules
|
|
461
|
+
|
|
462
|
+
โจ [feat] Adds typed lint coverage that flags imported legacy aliases for all-or-none and at-least-one key groups, and steers usage toward canonical TypeFest utilities to reduce semantic drift.
|
|
463
|
+
- โจ [feat] Registers the new checks in exported rules and the minimal preset so enforcement is available by default.
|
|
464
|
+
- โจ [feat] Aligns plugin rule availability by including a previously missing TypeFest preference rule in registration and presets.
|
|
465
|
+
|
|
466
|
+
๐ [docs] Adds focused rule guides that explain detection scope and why canonical naming improves consistency and migration clarity.
|
|
467
|
+
|
|
468
|
+
๐งช [test] Expands typed fixtures and rule tests for invalid alias imports, valid canonical usage, namespace import exceptions, and skip-on-test-file behavior.
|
|
469
|
+
- ๐งช [test] Improves existing typed fixtures with additional non-trigger patterns to better guard against false positives.
|
|
470
|
+
|
|
471
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(f3d1dfc)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/f3d1dfcb50479d3e1319af1e2f213eb5bb1692d1)
|
|
472
|
+
|
|
473
|
+
|
|
474
|
+
- โจ [feat] Enforces canonical TypeFest aliases
|
|
475
|
+
|
|
476
|
+
โจ [feat] Adds broad lint coverage to prefer canonical utility names over legacy or deprecated imported aliases.
|
|
477
|
+
- Improves consistency and lowers migration friction by standardizing type utility vocabulary.
|
|
478
|
+
- Avoids unsafe autofix where migration requires semantic rewrites.
|
|
479
|
+
|
|
480
|
+
๐ [refactor] Centralizes imported type-alias detection in a shared internal matcher.
|
|
481
|
+
- Reduces duplicated rule logic and keeps alias matching behavior uniform across checks.
|
|
482
|
+
|
|
483
|
+
โจ [feat] Expands preset exports with clearer semantic aliases and matching flat variants.
|
|
484
|
+
- Improves preset discoverability while preserving existing preset behavior.
|
|
485
|
+
|
|
486
|
+
๐ง [build] Upgrades lint tooling to the latest major and updates flat-config compatibility handling.
|
|
487
|
+
- Improves reliability by conditionally skipping incompatible third-party presets.
|
|
488
|
+
- Improves lint runtime with caching, content-based cache strategy, and higher memory limits.
|
|
489
|
+
|
|
490
|
+
๐ [docs] Documents new rule expectations and clarifies alias-based enforcement in existing guidance.
|
|
491
|
+
|
|
492
|
+
๐งช [test] Adds comprehensive typed fixtures and rule coverage, including namespace-import pass cases, test-file skip scenarios, and helper property tests.
|
|
493
|
+
|
|
494
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(38e7310)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/38e73102067f20b68f8508b95171511b178e3705)
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
- โจ [feat] Implement prefer-type-fest-non-empty-tuple rule
|
|
498
|
+
- ๐ Add documentation for the prefer-type-fest-non-empty-tuple rule
|
|
499
|
+
- ๐ ๏ธ Create the prefer-type-fest-non-empty-tuple rule logic
|
|
500
|
+
- ๐ง Integrate the rule into the ESLint plugin
|
|
501
|
+
- ๐งช Add test cases for valid and invalid usages of NonEmptyTuple
|
|
502
|
+
|
|
503
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(4715139)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/4715139acd6f3d0f1d0e4a506eee30c84f5fea23)
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
- โจ [feat] Enhance TypeScript Extras with New Array and Assertion Utilities
|
|
507
|
+
- ๐ [feat] Introduce `arrayFirst` and `arrayLast` utilities with valid and invalid test cases
|
|
508
|
+
- ๐ [feat] Add `assertDefined`, `assertError`, and `assertPresent` utilities with corresponding test cases
|
|
509
|
+
- ๐ [feat] Implement `isEmpty` and `isInfinite` checks with tests to validate their functionality
|
|
510
|
+
- ๐ [feat] Create `objectHasIn` utility for object property checks with tests
|
|
511
|
+
- ๐ [feat] Expand TypeFest integration with `Arrayable`, `JsonArray`, `JsonObject`, and `JsonPrimitive` types
|
|
512
|
+
- ๐ [feat] Add tests for TypeFest utilities to ensure correct usage and validation
|
|
513
|
+
- ๐งช [test] Add comprehensive tests for all new features to ensure expected behavior and error handling
|
|
514
|
+
|
|
515
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(e2d0ec0)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/e2d0ec00a7925321774f10dcbf9c8237464584b3)
|
|
516
|
+
|
|
517
|
+
|
|
518
|
+
- โจ [feat] Update package.json and package-lock.json with new remark packages
|
|
519
|
+
- Add "remark" and "remark-cli" for enhanced markdown processing
|
|
520
|
+
- Include "remark-lint" for linting markdown files
|
|
521
|
+
|
|
522
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(a324362)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/a3243623759d4219255e750c02b216e6bb5f224d)
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
- โจ [feat] Update package.json and package-lock.json with new remark-lint rules
|
|
526
|
+
- ๐ Add "remark-lint-check-toc" version 1.0.0 for table of contents checks
|
|
527
|
+
- ๐ Add "remark-lint-heading-capitalization" version 1.3.0 for heading capitalization checks
|
|
528
|
+
- ๐ Add "remark-lint-list-item-spacing" version 5.0.1 for list item spacing checks
|
|
529
|
+
- ๐ Add "remark-lint-maximum-heading-length" version 4.1.1 for heading length checks
|
|
530
|
+
- ๐ Add "remark-lint-maximum-line-length" version 4.1.1 for line length checks
|
|
531
|
+
- ๐ Add "remark-lint-mdx-jsx-attribute-sort" version 1.0.1 for MDX JSX attribute sorting
|
|
532
|
+
- ๐ Add "remark-lint-mdx-jsx-no-void-children" version 1.0.1 for MDX JSX void children checks
|
|
533
|
+
- ๐ Add "remark-lint-no-duplicate-defined-urls" version 3.0.1 for duplicate URL checks
|
|
534
|
+
- ๐ Add "remark-lint-no-empty-url" version 4.0.1 for empty URL checks
|
|
535
|
+
- ๐ Add "remark-lint-no-file-name-mixed-case" version 3.0.1 for mixed case file name checks
|
|
536
|
+
- ๐ Add "remark-lint-no-heading-punctuation" version 4.0.1 for heading punctuation checks
|
|
537
|
+
- ๐ Add "remark-lint-no-literal-urls" version 4.0.1 for literal URL checks
|
|
538
|
+
- ๐ Add "remark-lint-strikethrough-marker" version 3.0.1 for strikethrough marker checks
|
|
539
|
+
- ๐ Add "remark-lint-table-cell-padding" version 5.1.1 for table cell padding checks
|
|
540
|
+
|
|
541
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(55a2687)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/55a26876bf6c5a78873fe449590b9fde596ec41d)
|
|
542
|
+
|
|
543
|
+
|
|
544
|
+
- โจ [feat] Enhance TypeScript rule testing and add new type utilities
|
|
545
|
+
|
|
546
|
+
- ๐ง [build] Update `tsconfig` files to improve project structure and exclude unnecessary directories
|
|
547
|
+
- Adjust `tsconfig.build.json` to include `exclude` patterns for `.cache`, `dist`, and `node_modules`
|
|
548
|
+
- Modify `tsconfig.eslint.json` to include additional `include` patterns for TypeScript files
|
|
549
|
+
- Refactor `tsconfig.js.json` to streamline configuration and exclude unnecessary files
|
|
550
|
+
- Clean up `tsconfig.json` by removing redundant options and improving `exclude` patterns
|
|
551
|
+
|
|
552
|
+
- ๐ ๏ธ [fix] Improve type safety in rule tests
|
|
553
|
+
- Refactor `typed-rule-tester.ts` to enhance project service options and allow default projects
|
|
554
|
+
- Create new test fixtures for `prefer-type-fest-*` rules to ensure proper type handling
|
|
555
|
+
- Update existing tests for `prefer-ts-extras-*` rules to use the new testing structure
|
|
556
|
+
|
|
557
|
+
- โจ [feat] Introduce new type utilities using `type-fest`
|
|
558
|
+
- Add `prefer-type-fest-async-return-type` rule to enforce the use of `AsyncReturnType`
|
|
559
|
+
- Implement `prefer-type-fest-except` rule to promote the use of `Except` for type manipulation
|
|
560
|
+
- Create tests for `UnknownArray`, `UnknownMap`, and `UnknownSet` to validate type safety
|
|
561
|
+
|
|
562
|
+
- ๐งช [test] Add comprehensive tests for new and existing rules
|
|
563
|
+
- Implement tests for `prefer-type-fest-*` rules to ensure they function as expected
|
|
564
|
+
- Update test cases for `prefer-ts-extras-*` rules to align with new testing methodology
|
|
565
|
+
|
|
566
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(c7085da)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/c7085daeaa35a5fc9a980e327d28113b35a8dcee)
|
|
567
|
+
|
|
568
|
+
|
|
569
|
+
- โจ [feat] Update dependencies and add Vite configuration for linting
|
|
570
|
+
|
|
571
|
+
- ๐ง [build] Upgrade various ESLint plugins and configurations in `package.json` to enhance linting capabilities
|
|
572
|
+
- Added new plugins: `@eslint/config-helpers`, `@eslint/css`, `@eslint/json`, `@eslint/markdown`, `@html-eslint/eslint-plugin`, `@html-eslint/parser`, `@vitest/eslint-plugin`, and many others for improved code quality and support for various file types
|
|
573
|
+
- Updated existing plugins to their latest versions for better performance and features
|
|
574
|
+
- Included `vite` and `vite-tsconfig-paths` for better integration with TypeScript and Vite tooling
|
|
575
|
+
|
|
576
|
+
- ๐จ [style] Introduce `vite.config.ts` for Vitest configuration
|
|
577
|
+
- Configured Vitest to run linting and tooling tests with detailed coverage settings
|
|
578
|
+
- Set up environment variables and paths for better project structure and maintainability
|
|
579
|
+
- Defined test settings including coverage thresholds, file exclusions, and test timeouts to ensure robust testing practices
|
|
580
|
+
- Implemented caching and optimization settings for improved performance during test runs
|
|
581
|
+
|
|
582
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(bd59068)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/bd5906889751671df9f18db89fa218f2cbcd763c)
|
|
583
|
+
|
|
584
|
+
|
|
585
|
+
- โจ [feat] Update package.json with new dependencies for enhanced linting and markdown processing
|
|
586
|
+
- ๐ Added "@double-great/remark-lint-alt-text" for alt text linting in markdown
|
|
587
|
+
- ๐ Included "@typescript-eslint/eslint-plugin" and "@typescript-eslint/parser" for improved TypeScript linting
|
|
588
|
+
- ๐ Introduced "actionlint" for GitHub Actions linting
|
|
589
|
+
- ๐ Added various "remark-lint" plugins to enforce markdown style and consistency
|
|
590
|
+
- ๐ Included "remark-math" and "rehype-katex" for better math rendering in markdown
|
|
591
|
+
- ๐ Added "remark-validate-links" to ensure all links in markdown are valid
|
|
592
|
+
- ๐ Included "remark-toc" for automatic table of contents generation in markdown files
|
|
593
|
+
- ๐ Added "remark-preset-lint-recommended" and other presets for consistent linting rules
|
|
594
|
+
|
|
595
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(a7c1162)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/a7c1162a1e8a86c7543310ef491fc7a4cbcaf1a9)
|
|
596
|
+
|
|
597
|
+
|
|
598
|
+
- โจ [feat] Enhance ESLint Plugin with New Rules and TypeScript Configurations
|
|
599
|
+
- ๐ [feat] Introduce `prefer-ts-extras-array-concat` rule to enforce usage of `arrayConcat` from `ts-extras` for better typing.
|
|
600
|
+
- ๐ [feat] Add `prefer-ts-extras-is-finite`, `prefer-ts-extras-is-integer`, and `prefer-ts-extras-is-safe-integer` rules to promote consistent predicate helper usage over native `Number` methods.
|
|
601
|
+
- ๐ง [build] Update `package.json` to include new linting scripts for actions and prettier, and adjust TypeScript configurations for better build management.
|
|
602
|
+
- ๐ง [build] Modify `typecheck` script to include additional TypeScript configurations for comprehensive type checking.
|
|
603
|
+
- ๐ง [build] Update `tsconfig.json` and related configurations to improve project structure and build performance.
|
|
604
|
+
- ๐งช [test] Add tests for new rules to ensure correct functionality and adherence to coding standards.
|
|
605
|
+
- ๐งช [test] Create valid and invalid fixture files for each new rule to facilitate thorough testing.
|
|
606
|
+
|
|
607
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(4c55f69)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/4c55f695e4a6214348d084e0756ea4af6fac83f1)
|
|
608
|
+
|
|
609
|
+
|
|
610
|
+
- Add prefer-ts-extras rules for array and object utilities [`(e7bdca6)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/e7bdca6ae1d25f5fcd0ada0b2234d1cf86f5cf03)
|
|
611
|
+
|
|
612
|
+
|
|
613
|
+
- Add prefer-type-fest-value-of rule to enforce ValueOf<T> usage [`(6aa5b95)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/6aa5b955e06d923a1e6754e3edb7fa378d095f0c)
|
|
614
|
+
|
|
615
|
+
|
|
616
|
+
|
|
617
|
+
### ๐ ๏ธ Bug Fixes
|
|
618
|
+
|
|
619
|
+
- ๐ ๏ธ [fix] Remove unused prettier-plugin-jsdoc-type from configuration
|
|
620
|
+
- Eliminated "prettier-plugin-jsdoc-type" from the plugins list in multiple sections of the .prettierrc file
|
|
621
|
+
|
|
622
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(3d31bbc)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/3d31bbc7a6e3e09429df3cc42c134218158c9ee2)
|
|
623
|
+
|
|
624
|
+
|
|
625
|
+
- ๐ ๏ธ [fix] Update messages for TypeFest rule tests to improve clarity
|
|
626
|
+
- ๐ Refactor error messages in `prefer-type-fest-set-non-nullable.test.ts` to specify making selected keys non-nullable instead of using legacy aliases.
|
|
627
|
+
- ๐ Refactor error messages in `prefer-type-fest-set-optional.test.ts` to clarify making selected keys optional instead of using legacy aliases.
|
|
628
|
+
- ๐ Refactor error messages in `prefer-type-fest-set-readonly.test.ts` to indicate marking selected keys as readonly instead of using legacy aliases.
|
|
629
|
+
- ๐ Refactor error messages in `prefer-type-fest-set-required.test.ts` to specify making selected keys required instead of using legacy aliases.
|
|
630
|
+
- ๐ Refactor error messages in `prefer-type-fest-simplify.test.ts` to clarify flattening resolved object and intersection types instead of using legacy aliases.
|
|
631
|
+
- ๐ Refactor error messages in `prefer-type-fest-tagged-brands.test.ts` to indicate using canonical tagged-brand aliases instead of legacy aliases.
|
|
632
|
+
- ๐ Refactor error messages in `prefer-type-fest-tuple-of.test.ts` to clarify modeling fixed-length homogeneous tuples instead of using legacy aliases.
|
|
633
|
+
- ๐ Refactor error messages in `prefer-type-fest-unknown-array.test.ts` to specify using `Readonly<UnknownArray>` instead of legacy types.
|
|
634
|
+
- ๐ Refactor error messages in `prefer-type-fest-unknown-map.test.ts` to clarify using `Readonly<UnknownMap>` instead of legacy types.
|
|
635
|
+
- ๐ Refactor error messages in `prefer-type-fest-unknown-record.test.ts` to improve clarity on reporting unknown record aliases.
|
|
636
|
+
- ๐ Refactor error messages in `prefer-type-fest-unknown-set.test.ts` to specify using `Readonly<UnknownSet>` instead of legacy types.
|
|
637
|
+
- ๐ Refactor error messages in `prefer-type-fest-unwrap-tagged.test.ts` to clarify unwrapping Tagged/Opaque values instead of using legacy aliases.
|
|
638
|
+
- ๐ Refactor error messages in `prefer-type-fest-value-of.test.ts` to improve clarity on indexed-access value unions.
|
|
639
|
+
- ๐ Refactor error messages in `prefer-type-fest-writable.test.ts` to specify removing readonly modifiers from selected keys instead of using legacy aliases.
|
|
640
|
+
|
|
641
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(c606fd2)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/c606fd2b73ca23cfb48854fc0170aae43635d1c6)
|
|
642
|
+
|
|
643
|
+
|
|
644
|
+
- ๐ ๏ธ [fix] Adds missing-import insertion to autofixes
|
|
645
|
+
|
|
646
|
+
๐ ๏ธ [fix] Improves autofix reliability by applying safe rewrites even when required helper imports are not already present.
|
|
647
|
+
- Adds import insertion for both type-level and value-level replacements, so fixes remain usable instead of failing closed.
|
|
648
|
+
- Preserves safety by keeping scope/shadowing checks before deciding whether direct names can be introduced.
|
|
649
|
+
|
|
650
|
+
๐ [refactor] Unifies replacement generation behind shared fix builders to reduce duplicated rule logic.
|
|
651
|
+
- Centralizes how replacements resolve local names, build replacement text, and compose multi-part fixes.
|
|
652
|
+
- Keeps import placement deterministic by inserting after existing imports or at file start when none exist.
|
|
653
|
+
- Tightens internal typing with shared unknown collection types to improve consistency across rule contexts.
|
|
654
|
+
|
|
655
|
+
๐งช [test] Expands autofix and suggestion coverage to lock in import-aware behavior.
|
|
656
|
+
- Updates many invalid cases to assert concrete transformed output, including scenarios that now require inserted imports.
|
|
657
|
+
- Adds multi-pass expected outputs for fixtures where several findings are fixed across repeated runs.
|
|
658
|
+
- Strengthens suggestion output assertions and mixed line-ending fixtures to guard against regression in real editor flows.
|
|
659
|
+
|
|
660
|
+
๐จ [style] Applies minor formatting and comment cleanup in auxiliary scripts and config text for readability without changing runtime behavior.
|
|
661
|
+
|
|
662
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(7639e4d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/7639e4d3d04fd40ec505141ee4c9d5a6fce34388)
|
|
663
|
+
|
|
664
|
+
|
|
665
|
+
- ๐ ๏ธ [fix] Improve documentation link checker functionality
|
|
666
|
+
- Enhance `isUrlLike` function comment for clarity
|
|
667
|
+
- Add pathExists caching to optimize link validation
|
|
668
|
+
- Implement concurrency control for file checks
|
|
669
|
+
- Introduce metrics tracking for link validation results
|
|
670
|
+
- Update error handling and logging for better feedback
|
|
671
|
+
- Refactor link validation logic to reduce redundancy
|
|
672
|
+
|
|
673
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(721700d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/721700d4f551e3b9b70675dc68c11b9ccd4f0c72)
|
|
674
|
+
|
|
675
|
+
|
|
676
|
+
- ๐ ๏ธ [fix] Guard missing filenames in lint rules
|
|
677
|
+
|
|
678
|
+
๐ ๏ธ [fix] Prevents undefined-path behavior by defaulting missing lint context filenames before test-file short-circuit checks.
|
|
679
|
+
- Improves runtime safety for rule execution in nonstandard or mocked contexts.
|
|
680
|
+
|
|
681
|
+
๐งน [chore] Expands prompt audit records with host, user, shell version, and ISO timestamp metadata.
|
|
682
|
+
- Improves traceability for local hook activity and environment diagnostics.
|
|
683
|
+
|
|
684
|
+
๐ท [ci] Stabilizes mutation-report publishing metadata.
|
|
685
|
+
- Normalizes repository identity casing and pins dashboard version labeling to a stable branch value.
|
|
686
|
+
|
|
687
|
+
๐งช [test] Adds broad mutation-focused coverage for rule metadata, filename fallbacks, and edge-case matching/fixing behavior.
|
|
688
|
+
- Introduces shared metadata smoke checks and extends many rule suites with no-fix, suggestion, whitespace-normalization, shadowing, and qualified-type scenarios to reduce survivor regressions.
|
|
689
|
+
|
|
690
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(c7c99db)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/c7c99dba2a2b84979ad8462087f8c60348cbda73)
|
|
691
|
+
|
|
692
|
+
|
|
693
|
+
- ๐ ๏ธ [fix] Improves rule matching and early exits
|
|
694
|
+
|
|
695
|
+
๐ ๏ธ [fix] Improves array-like type detection to reduce missed matches.
|
|
696
|
+
- Normalizes rendered type text before checking suffixes.
|
|
697
|
+
- Uses a single `[]`-based check so readonly array forms are handled consistently.
|
|
698
|
+
|
|
699
|
+
๐ [refactor] Moves test-file short-circuiting ahead of import scanning across rules.
|
|
700
|
+
- Avoids unnecessary analysis work for excluded files.
|
|
701
|
+
- Improves rule setup efficiency and keeps behavior consistent.
|
|
702
|
+
|
|
703
|
+
๐ ๏ธ [fix] Makes replacement-name handling explicit in autofix paths.
|
|
704
|
+
- Switches from truthy checks to null checks to prevent accidentally skipping valid replacements.
|
|
705
|
+
|
|
706
|
+
๐ง [build] Repositions dependency override metadata.
|
|
707
|
+
- Keeps package configuration ordering consistent while retaining the parser version override.
|
|
708
|
+
|
|
709
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(3ede063)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/3ede06303b78cea7525adb221778dea080e352a9)
|
|
710
|
+
|
|
711
|
+
|
|
712
|
+
- ๐ ๏ธ [fix] Stabilizes plugin export defaults
|
|
713
|
+
|
|
714
|
+
๐ ๏ธ [fix] Ensures the published plugin always exposes a complete, predictable object shape.
|
|
715
|
+
- Prevents runtime and integration failures when optional sections are missing from built output.
|
|
716
|
+
- Removes brittle undefined-path handling by applying safe defaults at the entry boundary.
|
|
717
|
+
|
|
718
|
+
๐งช [test] Improves shared test-run behavior and test failure diagnostics.
|
|
719
|
+
- Uses proper focused-test wiring and generates readable fallback names for unnamed cases.
|
|
720
|
+
- Preserves explicit case names while making anonymous case failures easier to identify.
|
|
721
|
+
|
|
722
|
+
๐งช [test] Expands rule coverage with broader, named valid/invalid edge cases.
|
|
723
|
+
- Adds stronger regression protection for unions, callback shapes, guard patterns, skip-path behavior, and non-target method/property lookalikes.
|
|
724
|
+
|
|
725
|
+
๐ [docs] Strengthens quality-first contribution guidance.
|
|
726
|
+
- Reinforces correctness and maintainability over shortcuts, including iterative follow-up when needed.
|
|
727
|
+
|
|
728
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(8f4b499)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/8f4b499a6c0285c3cc0b92c4ba08b78af04e8a08)
|
|
729
|
+
|
|
730
|
+
|
|
731
|
+
- ๐ ๏ธ [fix] Update type aliases to use TypeScript's type-fest library
|
|
732
|
+
|
|
733
|
+
- ๐ง [fix] Replace `MaybePromise` with `Promisable` in `prefer-type-fest-promisable.test.ts`
|
|
734
|
+
- ๐ง [fix] Replace `DeepReadonly` with `ReadonlyDeep` in `prefer-type-fest-readonly-deep.test.ts`
|
|
735
|
+
- ๐ง [fix] Replace `DeepRequired` with `RequiredDeep` in `prefer-type-fest-required-deep.test.ts`
|
|
736
|
+
- ๐ง [fix] Replace `RecordDeep` with `Schema` in `prefer-type-fest-schema.test.ts`
|
|
737
|
+
- ๐ง [fix] Replace `NonNullableBy` with `SetNonNullable` in `prefer-type-fest-set-non-nullable.test.ts`
|
|
738
|
+
- ๐ง [fix] Replace `PartialBy` with `SetOptional` in `prefer-type-fest-set-optional.test.ts`
|
|
739
|
+
- ๐ง [fix] Replace `ReadonlyBy` with `SetReadonly` in `prefer-type-fest-set-readonly.test.ts`
|
|
740
|
+
- ๐ง [fix] Replace `RequiredBy` with `SetRequired` in `prefer-type-fest-set-required.test.ts`
|
|
741
|
+
- ๐ง [fix] Replace `Expand` with `Simplify` in `prefer-type-fest-simplify.test.ts`
|
|
742
|
+
- ๐ง [fix] Replace `Opaque` with `Tagged` in `prefer-type-fest-tagged-brands.test.ts`
|
|
743
|
+
- ๐ง [fix] Replace `ReadonlyTuple` with `Readonly<TupleOf<Length, Element>>` in `prefer-type-fest-tuple-of.test.ts`
|
|
744
|
+
- ๐ง [fix] Replace `readonly unknown[]` with `unknown[]` in `prefer-type-fest-unknown-array.test.ts`
|
|
745
|
+
- ๐ง [fix] Replace `ReadonlyMap<unknown, unknown>` with `Map<unknown, unknown>` in `prefer-type-fest-unknown-map.test.ts`
|
|
746
|
+
- ๐ง [fix] Replace `ReadonlySet<unknown>` with `Set<unknown>` in `prefer-type-fest-unknown-set.test.ts`
|
|
747
|
+
- ๐ง [fix] Replace `UnwrapOpaque` with `UnwrapTagged` in `prefer-type-fest-unwrap-tagged.test.ts`
|
|
748
|
+
- ๐ง [fix] Replace `Mutable` with `Writable` in `prefer-type-fest-writable.test.ts`
|
|
749
|
+
|
|
750
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(895cb41)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/895cb413648d9421fcfd6c557cb66025ebc1cb8d)
|
|
751
|
+
|
|
752
|
+
|
|
753
|
+
|
|
754
|
+
### ๐ฆ Dependencies
|
|
755
|
+
|
|
756
|
+
- *(deps)* [dependency] Update the github-actions group across 1 directory with 7 updates [`(7b08932)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/7b089328816b87606e9b80a03a22495aecfd7de0)
|
|
757
|
+
|
|
758
|
+
|
|
759
|
+
- *(deps)* [dependency] Update the github-actions group across 1 directory with 8 updates [`(acd2932)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/acd29320fdc5e4e99afe81e099e3f6beb622f455)
|
|
760
|
+
|
|
761
|
+
|
|
762
|
+
|
|
763
|
+
### ๐ก๏ธ Security
|
|
764
|
+
|
|
765
|
+
- [StepSecurity] Apply security best practices
|
|
766
|
+
|
|
767
|
+
Signed-off-by: StepSecurity Bot <bot@stepsecurity.io> [`(de875de)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/de875ded17a8f5ee5851d27586215eeb2bf1d419)
|
|
768
|
+
|
|
769
|
+
|
|
770
|
+
|
|
771
|
+
### ๐ ๏ธ Other Changes
|
|
772
|
+
|
|
773
|
+
- ๐๏ธ [chore] Remove ESLint Config Inspector build and verification scripts
|
|
774
|
+
- Deleted `build-eslint-inspector.mjs` and `verify-eslint-inspector.mjs` scripts
|
|
775
|
+
- These scripts were responsible for building and verifying the ESLint Config Inspector integration
|
|
776
|
+
- Their removal simplifies the project structure and eliminates unused code
|
|
777
|
+
|
|
778
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(79dd244)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/79dd2444ee0729ab547a608945aca8f9097070fc)
|
|
779
|
+
|
|
780
|
+
|
|
781
|
+
- ๐ [test] Enhance type-fest rule tests with additional cases
|
|
782
|
+
|
|
783
|
+
- โจ [test] Add valid cases for Awaited with Promise and qualified ReturnType
|
|
784
|
+
- โจ [test] Introduce inline fixable cases for ConditionalPick and update error messages
|
|
785
|
+
- โจ [test] Add tests for constructor signature validation
|
|
786
|
+
- โจ [test] Expand Except tests with inline fixable cases and valid namespace aliases
|
|
787
|
+
- โจ [test] Introduce inline fixable cases for IfAny and IsAny
|
|
788
|
+
- โจ [test] Add tests for IterableElement and SetElement with inline fixable cases
|
|
789
|
+
- โจ [test] Enhance JsonArray tests with various valid and invalid cases
|
|
790
|
+
- โจ [test] Add tests for JsonObject with inline invalid cases
|
|
791
|
+
- โจ [test] Expand JsonValue tests with inline invalid cases and valid types
|
|
792
|
+
- โจ [test] Introduce KeysOfUnion tests with inline fixable cases
|
|
793
|
+
- โจ [test] Add tests for NonEmptyTuple with various valid cases
|
|
794
|
+
- โจ [test] Enhance OmitIndexSignature tests with inline fixable cases
|
|
795
|
+
- โจ [test] Introduce RequireAllOrNone tests with inline fixable cases
|
|
796
|
+
- โจ [test] Add RequireAtLeastOne tests with inline fixable cases
|
|
797
|
+
- โจ [test] Introduce RequireExactlyOne tests with inline fixable cases
|
|
798
|
+
- โจ [test] Add RequireOneOrNone tests with inline fixable cases
|
|
799
|
+
- โจ [test] Enhance TaggedBrands tests with inline invalid cases
|
|
800
|
+
- โจ [test] Add UnknownArray tests with various valid and invalid cases
|
|
801
|
+
- โจ [test] Introduce UnknownMap tests with additional valid cases
|
|
802
|
+
- โจ [test] Add UnknownRecord tests with inline invalid cases
|
|
803
|
+
- โจ [test] Enhance UnknownSet tests with additional valid cases
|
|
804
|
+
- โจ [test] Expand Writable tests with various valid cases and namespace aliases
|
|
805
|
+
|
|
806
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(ec44a53)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/ec44a53779b9a5e7d5ea0f2e0f08c7c318a92366)
|
|
807
|
+
|
|
808
|
+
|
|
809
|
+
- Add tests and TypeScript configuration for uptime-watcher plugin
|
|
810
|
+
|
|
811
|
+
- Implement tests for various rules in the uptime-watcher plugin, including:
|
|
812
|
+
- prefer-ts-extras-is-present-filter
|
|
813
|
+
- prefer-ts-extras-object-has-own
|
|
814
|
+
- prefer-type-fest-json-value
|
|
815
|
+
- prefer-type-fest-promisable
|
|
816
|
+
- prefer-type-fest-tagged-brands
|
|
817
|
+
- prefer-type-fest-unknown-record
|
|
818
|
+
- prefer-type-fest-value-of
|
|
819
|
+
- preload-no-local-is-plain-object
|
|
820
|
+
- renderer-no-browser-dialogs
|
|
821
|
+
- renderer-no-direct-bridge-readiness
|
|
822
|
+
- renderer-no-direct-electron-log
|
|
823
|
+
- renderer-no-direct-networking
|
|
824
|
+
- renderer-no-direct-preload-bridge
|
|
825
|
+
- renderer-no-electron-import
|
|
826
|
+
- renderer-no-import-internal-service-utils
|
|
827
|
+
- renderer-no-ipc-renderer-usage
|
|
828
|
+
- renderer-no-preload-bridge-writes
|
|
829
|
+
- renderer-no-process-env
|
|
830
|
+
- renderer-no-window-open
|
|
831
|
+
- require-ensure-error-in-catch
|
|
832
|
+
- require-error-cause-in-catch
|
|
833
|
+
- shared-no-outside-imports
|
|
834
|
+
- shared-types-no-local-is-plain-object
|
|
835
|
+
- store-actions-require-finally-reset
|
|
836
|
+
- test-no-mock-return-value-constructors
|
|
837
|
+
- tsdoc-no-console-example
|
|
838
|
+
- typed-eventbus-payload-assignable
|
|
839
|
+
|
|
840
|
+
- Add TypeScript configuration files for linting and building the uptime-watcher plugin.
|
|
841
|
+
|
|
842
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(d233b9c)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/d233b9c2b49f5f87e10e2c2ee04deed9765f54a3)
|
|
843
|
+
|
|
844
|
+
|
|
845
|
+
|
|
846
|
+
### ๐ Refactor
|
|
847
|
+
|
|
848
|
+
- ๐ [refactor] switch rule docs to Docusaurus routes & add footer links
|
|
849
|
+
|
|
850
|
+
๐ [docs] add ADRโฏ0006/0007 entries and pages, update sidebar/index with new decisions
|
|
851
|
+
๐ [refactor] change docsโURL base constants and ruleโcreator logic to use live site routes (`โฆ/rules/<id>`) instead of GitHub blob markdown links
|
|
852
|
+
๐ [refactor] update all rule metadata defaults and inline urls accordingly
|
|
853
|
+
๐งช [test] adjust smoke, integration and individual rule tests to expect `/rules/<id>` URLs and remove `.md` suffix checks
|
|
854
|
+
๐ [docs] append a consistent โAdoption resourcesโ footer to every rule page linking shared guides
|
|
855
|
+
๐ [docs] create ADRs explaining canonical URL strategy and footer link rationale
|
|
856
|
+
|
|
857
|
+
Enhances user experience by pointing editors and links at rendered documentation, stabilizes the public docs surface independent of repo layout, and keeps shared guidance discoverable without duplicating boilerplate. Tests and sources no longer assume `.md` filenames; route stability is now a compatibility concern.
|
|
858
|
+
|
|
859
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(91a136d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/91a136dbd7dd14660f9a4b9a6aeffc0e4a6b7657)
|
|
860
|
+
|
|
861
|
+
|
|
862
|
+
- ๐ [refactor] Improve code readability and formatting in inspect_pr_checks.py
|
|
863
|
+
- ๐ ๏ธ Adjust function signatures for better clarity
|
|
864
|
+
- ๐จ Reformat argument lists and string literals for consistency
|
|
865
|
+
- ๐ง Enhance error handling messages for better debugging
|
|
866
|
+
- ๐จ Improve indentation and line breaks for better readability
|
|
867
|
+
|
|
868
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(a62ba9e)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/a62ba9eb919101eabe2fde50818be1b64866cdd4)
|
|
869
|
+
|
|
870
|
+
|
|
871
|
+
- ๐ [refactor] Treats tests like other files
|
|
872
|
+
|
|
873
|
+
๐ [refactor] Aligns plugin/test heuristics
|
|
874
|
+
- ๐งช Removes test-path skips and the heuristic so rules always lint tests while relying on config scoping, and cleans up fixtures that only exercised the skip path.
|
|
875
|
+
- โ๏ธ Updates benchmark scripts/config to build before running stats/timing suites and adds explicit namespace metadata to the plugin entry for clearer identification.
|
|
876
|
+
|
|
877
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(72c85a8)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/72c85a8e2335f64003b42f78dc8104a105169f03)
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
- ๐ [refactor] Remove redundant defaultOptions stubs
|
|
881
|
+
|
|
882
|
+
๐ [refactor] - Drops the explicit defaultOptions arrays from typed rule definitions so configuration relies on implicit defaults and keeps source definitions concise.
|
|
883
|
+
๐จ [style] - Refreshes doc/test helpers with tighter formatting for import/type utilities and assertion checks to match the cleaned-up style.
|
|
884
|
+
|
|
885
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(60e7e00)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/60e7e0073c1a54ac8b6611e269bc74a53537aa3c)
|
|
886
|
+
|
|
887
|
+
|
|
888
|
+
- ๐ [refactor] Enforce readonly parameter typing
|
|
889
|
+
|
|
890
|
+
๐ [refactor] Expands readonly annotations across core typed utilities and rule logic so function inputs stay immutable by default.
|
|
891
|
+
- Improves type-safety consistency and reduces accidental mutation paths without changing runtime behavior.
|
|
892
|
+
|
|
893
|
+
๐ง [build] Tunes readonly-parameter linting to stay strict on explicit APIs while avoiding noisy inferred-parameter churn.
|
|
894
|
+
- Adds practical allowlists for common external types and method handling so enforcement remains useful and sustainable.
|
|
895
|
+
|
|
896
|
+
๐งช [test] Aligns test helpers and listener harness typings with the stricter immutability model.
|
|
897
|
+
- Applies safer optional access and targeted writable casts only where test scaffolding must mutate nodes.
|
|
898
|
+
|
|
899
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(0422fd8)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/0422fd8f088a1e8f6231815f795e57e4a01a916c)
|
|
900
|
+
|
|
901
|
+
|
|
902
|
+
- Migrate plugin to TypeScript and restructure codebase [`(2101a3e)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/2101a3ec1f446f93c0351941344f34603bfb3f13)
|
|
903
|
+
|
|
904
|
+
|
|
905
|
+
|
|
906
|
+
### ๐ Documentation
|
|
907
|
+
|
|
908
|
+
- ๐ [docs] Update TypeFest rule documentation for clarity and consistency
|
|
909
|
+
- ๐ [docs] Revise `prefer-type-fest-tuple-of` to emphasize deprecated alias usage
|
|
910
|
+
- ๐ [docs] Clarify behavior and migration notes in `prefer-type-fest-unknown-array`
|
|
911
|
+
- ๐ [docs] Enhance `prefer-type-fest-unknown-map` documentation with intent and usage
|
|
912
|
+
- ๐ [docs] Improve `prefer-type-fest-unknown-record` to focus on boundary contracts
|
|
913
|
+
- ๐ [docs] Refine `prefer-type-fest-unknown-set` to highlight shared alias benefits
|
|
914
|
+
- ๐ [docs] Update `prefer-type-fest-unwrap-tagged` to target deprecated alias usage
|
|
915
|
+
- ๐ [docs] Clarify `prefer-type-fest-value-of` to emphasize clarity in value extraction
|
|
916
|
+
- ๐ [docs] Revise `prefer-type-fest-writable-deep` to standardize deep mutability usage
|
|
917
|
+
- ๐ [docs] Update `prefer-type-fest-writable` to clarify targeted patterns and behavior
|
|
918
|
+
- ๐ [docs] Add alternative configuration example for applying recommended rules selectively
|
|
919
|
+
๐ ๏ธ [fix] Normalize line endings in typed rule tester fixtures
|
|
920
|
+
- ๐ ๏ธ [fix] Implement line ending normalization to ensure consistent fixture reading
|
|
921
|
+
|
|
922
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(9acb9a8)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/9acb9a8bb27cf23d4503b52c095c48120bf5f568)
|
|
923
|
+
|
|
924
|
+
|
|
925
|
+
- ๐ [docs] Adds ADR hub and updates docs build flow
|
|
926
|
+
|
|
927
|
+
๐ [docs] Adds an ADR section with an index and three accepted decisions to capture architectural intent and reduce repeated dependency-adoption discussions.
|
|
928
|
+
- Defines why current internal rule/runtime patterns remain in place and when those decisions should be revisited.
|
|
929
|
+
|
|
930
|
+
๐จ [style] Updates sidebar badges and accent styling so architecture decisions are easier to find and remain visually consistent with existing documentation sections.
|
|
931
|
+
|
|
932
|
+
๐ง [build] Updates documentation build orchestration to rely on workspace-level inspector build commands and introduces a faster docs build path for quicker iteration.
|
|
933
|
+
- Improves local build ergonomics and keeps generated docs steps aligned across environments.
|
|
934
|
+
|
|
935
|
+
๐งน [chore] Refreshes selected lint and style tooling versions and expands script-level documentation comments to improve maintenance clarity.
|
|
936
|
+
|
|
937
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(51d6a5d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/51d6a5d7ca6f3c5e14f32794f20f4c6ddb91f5cd)
|
|
938
|
+
|
|
939
|
+
|
|
940
|
+
- ๐ [docs] Update Code of Conduct to reflect no formal guidelines
|
|
941
|
+
๐ง [build] Change logo file types in manifest.json from SVG to PNG
|
|
942
|
+
๐จ [style] Enhance case name formatting in ruleTester.ts for better visibility
|
|
943
|
+
๐ง [build] Simplify project name label in vite.config.ts from "Frontend" to "Test"
|
|
944
|
+
๐ง [build] Update vitest configuration in vitest.stryker.config.ts for improved test handling
|
|
945
|
+
|
|
946
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(7d246f8)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/7d246f84d4928bbae4ddfb3d51bb092a56864ef0)
|
|
947
|
+
|
|
948
|
+
|
|
949
|
+
- ๐ [docs] Update documentation scripts in package.json
|
|
950
|
+
|
|
951
|
+
- ๐ง Reordered the `docs:toc` and `docs:validate-links` scripts for better clarity and consistency.
|
|
952
|
+
- ๐ ๏ธ Removed the old `docs:validate-links` script and added it back after `docs:toc` to maintain logical flow.
|
|
953
|
+
- ๐ง Updated the `remark` dependencies to ensure the latest features and fixes are utilized.
|
|
954
|
+
- ๐งน Removed unused `mdast` dependency to clean up package.json and reduce bloat.
|
|
955
|
+
|
|
956
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(f099e8d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/f099e8d191c3e432d3f50535834e08cef9ce09cb)
|
|
957
|
+
|
|
958
|
+
|
|
959
|
+
- ๐ [docs] Update strict and type-fest-types presets documentation
|
|
960
|
+
|
|
961
|
+
- ๐ Refactor the rules table in `strict.md` for better readability
|
|
962
|
+
- Added new rules: `prefer-type-fest-abstract-constructor`, `prefer-type-fest-constructor`, `prefer-type-fest-literal-union`, `prefer-type-fest-merge-exclusive`, `prefer-type-fest-required-deep`, `prefer-type-fest-readonly-deep`, and `prefer-type-fest-writable-deep`
|
|
963
|
+
- Removed outdated rules: `prefer-type-fest-require-exactly-one`, `prefer-type-fest-require-one-or-none`, `prefer-type-fest-schema`, `prefer-type-fest-set-non-nullable`, `prefer-type-fest-set-optional`, `prefer-type-fest-set-readonly`, `prefer-type-fest-set-required`, `prefer-type-fest-simplify`, `prefer-type-fest-tagged-brands`, `prefer-type-fest-tuple-of`, `prefer-type-fest-unknown-array`, `prefer-type-fest-unknown-map`, `prefer-type-fest-unknown-record`, `prefer-type-fest-unknown-set`, `prefer-type-fest-unwrap-tagged`, `prefer-type-fest-value-of`, and `prefer-type-fest-writable`
|
|
964
|
+
|
|
965
|
+
- ๐ Refactor the rules table in `type-fest-types.md` for better readability
|
|
966
|
+
- Added new rules: `prefer-type-fest-abstract-constructor`, `prefer-type-fest-constructor`, `prefer-type-fest-literal-union`, `prefer-type-fest-merge-exclusive`, `prefer-type-fest-required-deep`, `prefer-type-fest-readonly-deep`, and `prefer-type-fest-writable-deep`
|
|
967
|
+
- Removed outdated rules: `prefer-type-fest-require-exactly-one`, `prefer-type-fest-require-one-or-none`, `prefer-type-fest-schema`, `prefer-type-fest-set-non-nullable`, `prefer-type-fest-set-optional`, `prefer-type-fest-set-readonly`, `prefer-type-fest-set-required`, `prefer-type-fest-simplify`, `prefer-type-fest-tagged-brands`, `prefer-type-fest-tuple-of`, `prefer-type-fest-unknown-array`, `prefer-type-fest-unknown-map`, `prefer-type-fest-unknown-record`, `prefer-type-fest-unknown-set`, `prefer-type-fest-unwrap-tagged`, `prefer-type-fest-value-of`, and `prefer-type-fest-writable`
|
|
968
|
+
|
|
969
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(92500d2)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/92500d25d901851046813ee34b0d0ba1bc29663f)
|
|
970
|
+
|
|
971
|
+
|
|
972
|
+
- ๐ [docs] Update presets documentation with rule matrices and details
|
|
973
|
+
|
|
974
|
+
- ๐ Added a comprehensive rule matrix to `index.md` for better visibility of rules, fixes, and preset keys.
|
|
975
|
+
- ๐ Included specific rules in the `minimal.md` preset documentation to clarify which rules are included.
|
|
976
|
+
- ๐ Expanded the `recommended.md` preset documentation to list all applicable rules, enhancing user guidance.
|
|
977
|
+
- ๐ Updated `strict.md` preset documentation with a detailed list of rules to inform users of strict configurations.
|
|
978
|
+
- ๐ Enhanced `ts-extras-type-guards.md` with a complete list of rules to provide clarity on type guard functionalities.
|
|
979
|
+
- ๐ Updated `type-fest-types.md` to include a detailed list of rules, ensuring users understand the available type fest functionalities.
|
|
980
|
+
|
|
981
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(b8b30d5)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/b8b30d533d1ccda5f5d9450da6013c9eb6997a57)
|
|
982
|
+
|
|
983
|
+
|
|
984
|
+
- ๐ [docs] Enhance documentation across multiple rules and tests
|
|
985
|
+
|
|
986
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-ts-extras-is-empty.ts`
|
|
987
|
+
- ๐ [docs] Document utility functions in `prefer-ts-extras-is-infinite.ts`
|
|
988
|
+
- ๐ [docs] Improve documentation for helper functions in `prefer-ts-extras-is-present-filter.ts`
|
|
989
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-ts-extras-is-present.ts`
|
|
990
|
+
- ๐ [docs] Document utility functions in `prefer-ts-extras-not.ts`
|
|
991
|
+
- ๐ [docs] Enhance documentation for helper functions in `prefer-ts-extras-object-has-in.ts`
|
|
992
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-ts-extras-safe-cast-to.ts`
|
|
993
|
+
- ๐ [docs] Document utility functions in `prefer-type-fest-arrayable.ts`
|
|
994
|
+
- ๐ [docs] Enhance documentation for utility functions in `prefer-type-fest-async-return-type.ts`
|
|
995
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-type-fest-except.ts`
|
|
996
|
+
- ๐ [docs] Document utility functions in `prefer-type-fest-json-array.ts`
|
|
997
|
+
- ๐ [docs] Enhance documentation for utility functions in `prefer-type-fest-json-object.ts`
|
|
998
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-type-fest-json-primitive.ts`
|
|
999
|
+
- ๐ [docs] Document utility functions in `prefer-type-fest-json-value.ts`
|
|
1000
|
+
- ๐ [docs] Enhance documentation for utility functions in `prefer-type-fest-non-empty-tuple.ts`
|
|
1001
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-type-fest-primitive.ts`
|
|
1002
|
+
- ๐ [docs] Document utility functions in `prefer-type-fest-promisable.ts`
|
|
1003
|
+
- ๐ [docs] Enhance documentation for utility functions in `prefer-type-fest-tagged-brands.ts`
|
|
1004
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-type-fest-unknown-array.ts`
|
|
1005
|
+
- ๐ [docs] Document utility functions in `prefer-type-fest-unknown-map.ts`
|
|
1006
|
+
- ๐ [docs] Enhance documentation for utility functions in `prefer-type-fest-unknown-record.ts`
|
|
1007
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `prefer-type-fest-unknown-set.ts`
|
|
1008
|
+
- ๐ [docs] Document utility functions in `prefer-type-fest-value-of.ts`
|
|
1009
|
+
- ๐ [docs] Enhance documentation for utility functions in `prefer-type-fest-writable.ts`
|
|
1010
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `imported-type-aliases.test.ts`
|
|
1011
|
+
- ๐ [docs] Document utility functions in `ruleTester.ts`
|
|
1012
|
+
- ๐ [docs] Enhance documentation for utility functions in `configs.test.ts`
|
|
1013
|
+
- ๐ [docs] Add JSDoc comments for utility functions in `docs-integrity.test.ts`
|
|
1014
|
+
|
|
1015
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(562ff90)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/562ff901516df7171c834f22ed0b83b92cdcc693)
|
|
1016
|
+
|
|
1017
|
+
|
|
1018
|
+
- ๐ [docs] Enhance ESLint rule documentation across multiple files
|
|
1019
|
+
|
|
1020
|
+
- โจ [feat] Add detailed ESLint rule definitions and metadata for `prefer-ts-extras-object-keys`, `prefer-ts-extras-object-values`, `prefer-ts-extras-safe-cast-to`, `prefer-ts-extras-set-has`, `prefer-ts-extras-string-split`, `prefer-type-fest-arrayable`, `prefer-type-fest-async-return-type`, `prefer-type-fest-conditional-pick`, `prefer-type-fest-except`, `prefer-type-fest-if`, `prefer-type-fest-iterable-element`, `prefer-type-fest-json-array`, `prefer-type-fest-json-object`, `prefer-type-fest-json-primitive`, `prefer-type-fest-json-value`, `prefer-type-fest-keys-of-union`, `prefer-type-fest-non-empty-tuple`, `prefer-type-fest-omit-index-signature`, `prefer-type-fest-primitive`, `prefer-type-fest-promisable`, `prefer-type-fest-require-all-or-none`, `prefer-type-fest-require-at-least-one`, `prefer-type-fest-require-exactly-one`, `prefer-type-fest-require-one-or-none`, `prefer-type-fest-schema`, `prefer-type-fest-set-non-nullable`, `prefer-type-fest-set-optional`, `prefer-type-fest-set-readonly`, `prefer-type-fest-set-required`, `prefer-type-fest-simplify`, `prefer-type-fest-tagged-brands`, `prefer-type-fest-tuple-of`, `prefer-type-fest-unknown-array`, `prefer-type-fest-unknown-map`, `prefer-type-fest-unknown-record`, `prefer-type-fest-unknown-set`, `prefer-type-fest-unwrap-tagged`, and `prefer-type-fest-value-of`.
|
|
1021
|
+
- ๐ [docs] Add JSDoc comments to clarify the purpose and usage of each rule, enhancing maintainability and developer understanding.
|
|
1022
|
+
- ๐งน [chore] Update `ruleTester` utility functions with additional documentation to improve clarity on their usage and functionality.
|
|
1023
|
+
|
|
1024
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(ef195de)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/ef195de3aaabb27a1e3542df4c1a025a2d28c701)
|
|
1025
|
+
|
|
1026
|
+
|
|
1027
|
+
- ๐ [docs] Update CSS documentation and global styles for Docusaurus
|
|
1028
|
+
- Added global CSS overrides for Docusaurus documentation site.
|
|
1029
|
+
- Enhanced comments to clarify the purpose and scope of the CSS file.
|
|
1030
|
+
- Updated hover background color for sidebar menu links for better accessibility.
|
|
1031
|
+
|
|
1032
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(6863895)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/68638954b10b776b033cd5a207f83531347f28ab)
|
|
1033
|
+
|
|
1034
|
+
|
|
1035
|
+
- ๐ [docs] Adds package-level module docs
|
|
1036
|
+
|
|
1037
|
+
๐ [docs] Improves maintainability and generated docs clarity by adding consistent package-level headers across core modules, plugin wiring, and rule implementations.
|
|
1038
|
+
- ๐ [docs] Clarifies module intent so contributors and tooling can understand responsibilities faster.
|
|
1039
|
+
|
|
1040
|
+
๐ [docs] Updates the rules reference table layout to improve readability and quick scanning.
|
|
1041
|
+
- ๐จ [style] Normalizes column alignment while preserving existing rule metadata.
|
|
1042
|
+
|
|
1043
|
+
๐งช [test] Applies the same package-level documentation pattern to test utilities and suites for repository-wide consistency.
|
|
1044
|
+
|
|
1045
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(84bc8a1)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/84bc8a1d500497e1ce3bd9302f1aefd69b698c79)
|
|
1046
|
+
|
|
1047
|
+
|
|
1048
|
+
- ๐ [docs] Update documentation for type-fest utility rules
|
|
1049
|
+
|
|
1050
|
+
- ๐ง Refactor rule documentation to replace "Legacy" terminology with "Non-canonical" for clarity.
|
|
1051
|
+
- ๐ Enhance examples in `prefer-type-fest-require-one-or-none.md`, `prefer-type-fest-schema.md`, and other related files to reflect updated import aliases.
|
|
1052
|
+
- ๐ Modify adoption tips across multiple rule documents to emphasize direct canonical imports and discourage compatibility aliases.
|
|
1053
|
+
- ๐ Update rollout strategies in various rule documents to clarify migration processes and reduce review noise.
|
|
1054
|
+
- ๐ Ensure consistency in references to `typefest.configs["type-fest/types"]` across all relevant documentation files.
|
|
1055
|
+
|
|
1056
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(07214d3)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/07214d3546cf52dafafc26936403cf090ddffb3c)
|
|
1057
|
+
|
|
1058
|
+
|
|
1059
|
+
- ๐ [docs] Update documentation for type-fest utility types
|
|
1060
|
+
|
|
1061
|
+
- ๐ Improve clarity in examples for `prefer-type-fest-set-required`, `prefer-type-fest-simplify`, `prefer-type-fest-tagged-brands`, `prefer-type-fest-tuple-of`, `prefer-type-fest-unknown-array`, `prefer-type-fest-unknown-map`, `prefer-type-fest-unknown-record`, `prefer-type-fest-unknown-set`, `prefer-type-fest-unwrap-tagged`, and `prefer-type-fest-value-of` rules.
|
|
1062
|
+
- ๐ Replace non-canonical patterns with comments indicating legacy patterns repeated inline across modules.
|
|
1063
|
+
- ๐ Enhance the "Why this helps in real projects" section to emphasize shared type vocabulary, safer API evolution, and no runtime overhead.
|
|
1064
|
+
- ๐ ๏ธ Update `eslint.config.mjs` to fix plugin imports and improve configuration.
|
|
1065
|
+
- ๐ Update `package-lock.json` and `package.json` to reflect version upgrades for various ESLint plugins, ensuring compatibility and access to new features.
|
|
1066
|
+
|
|
1067
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(9a45e98)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/9a45e98c3c63a49374ed2dbfe37e1a45b518a564)
|
|
1068
|
+
|
|
1069
|
+
|
|
1070
|
+
- ๐ [docs] Add comprehensive guidelines for various file types in the repository
|
|
1071
|
+
|
|
1072
|
+
- โจ [feat] Introduce JSON guidelines to ensure clarity and consistency in JSON files
|
|
1073
|
+
- Emphasize strictness and intentionality in JSON structure
|
|
1074
|
+
- Provide style recommendations, structural best practices, and security considerations
|
|
1075
|
+
|
|
1076
|
+
- โจ [feat] Add MJS guidelines for modern JavaScript modules
|
|
1077
|
+
- Focus on ESM usage, syntax preferences, and async patterns
|
|
1078
|
+
- Encourage documentation and type annotations for better maintainability
|
|
1079
|
+
|
|
1080
|
+
- โจ [feat] Establish Markdown guidelines for documentation and content creation
|
|
1081
|
+
- Outline content rules, formatting standards, and front matter usage
|
|
1082
|
+
- Include tooling alignment instructions for maintaining Markdown quality
|
|
1083
|
+
|
|
1084
|
+
- โจ [feat] Create detailed instructions for testing ESLint rules
|
|
1085
|
+
- Define goals for ESLint rule testing, setup requirements, and coding standards
|
|
1086
|
+
- Highlight best practices for writing tests, including valid and invalid cases
|
|
1087
|
+
|
|
1088
|
+
- โจ [feat] Provide TypeScript 5.9+ development guidelines
|
|
1089
|
+
- Focus on modern TypeScript features, strict typing, and utility types
|
|
1090
|
+
- Emphasize error handling, async patterns, and coding style best practices
|
|
1091
|
+
|
|
1092
|
+
- โจ [feat] Introduce YAML guidelines for robust YAML authoring
|
|
1093
|
+
- Stress predictability and readability in YAML files
|
|
1094
|
+
- Offer style, structure, and tooling recommendations for YAML usage
|
|
1095
|
+
|
|
1096
|
+
- โจ [feat] Add Copilot instructions for ESLint plugin development
|
|
1097
|
+
- Define the role, architecture, and constraints for ESLint rule creation
|
|
1098
|
+
- Emphasize code quality, testing standards, and tool usage for effective development
|
|
1099
|
+
|
|
1100
|
+
- ๐งน [chore] Remove instructions folder from .gitignore to allow tracking of new guidelines
|
|
1101
|
+
|
|
1102
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(976452b)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/976452b5c39227330fa42d56f08eab88968d53a6)
|
|
1103
|
+
|
|
1104
|
+
|
|
1105
|
+
- ๐ [docs] Add configuration files for various tools
|
|
1106
|
+
- Created `.taplo.toml` for TOML formatting rules, aligning with Prettier's style.
|
|
1107
|
+
- Introduced `.yamllint` for YAML linting configuration, specifying rules and ignored paths.
|
|
1108
|
+
- Added `cliff.toml` for git-cliff configuration to generate changelogs based on conventional commits.
|
|
1109
|
+
- Implemented `commitlint.config.mjs` to enforce commit message standards, including emoji and scope validation.
|
|
1110
|
+
- Established `jscpd.json` for configuring the jscpd tool to detect code duplication.
|
|
1111
|
+
- Created `kics.yaml` for KICS configuration, focusing on Infrastructure as Code security scanning.
|
|
1112
|
+
- Added `lychee.toml` for configuring the lychee link checker, including caching and request settings.
|
|
1113
|
+
- Introduced `markdownlint.json` for markdown linting rules, ensuring consistent formatting across markdown files.
|
|
1114
|
+
|
|
1115
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(20a6723)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/20a672338e3a0d93f3a85dca1dd1df52e48b18eb)
|
|
1116
|
+
|
|
1117
|
+
|
|
1118
|
+
|
|
1119
|
+
### ๐จ Styling
|
|
1120
|
+
|
|
1121
|
+
- ๐จ [style] Clean up trailing whitespace in TypeScript rule files
|
|
1122
|
+
- Removed trailing whitespace from multiple TypeScript rule files to maintain code consistency and cleanliness.
|
|
1123
|
+
- Affected files include:
|
|
1124
|
+
- `prefer-ts-extras-is-finite.ts`
|
|
1125
|
+
- `prefer-ts-extras-is-infinite.ts`
|
|
1126
|
+
- `prefer-ts-extras-is-integer.ts`
|
|
1127
|
+
- `prefer-ts-extras-is-present-filter.ts`
|
|
1128
|
+
- `prefer-ts-extras-is-present.ts`
|
|
1129
|
+
- `prefer-ts-extras-is-safe-integer.ts`
|
|
1130
|
+
- `prefer-ts-extras-key-in.ts`
|
|
1131
|
+
- `prefer-ts-extras-not.ts`
|
|
1132
|
+
- `prefer-ts-extras-object-entries.ts`
|
|
1133
|
+
- `prefer-ts-extras-object-from-entries.ts`
|
|
1134
|
+
- `prefer-ts-extras-object-has-in.ts`
|
|
1135
|
+
- `prefer-ts-extras-object-has-own.ts`
|
|
1136
|
+
- `prefer-ts-extras-object-keys.ts`
|
|
1137
|
+
- `prefer-ts-extras-object-values.ts`
|
|
1138
|
+
- `prefer-ts-extras-safe-cast-to.ts`
|
|
1139
|
+
- `prefer-ts-extras-set-has.ts`
|
|
1140
|
+
- `prefer-ts-extras-string-split.ts`
|
|
1141
|
+
- `prefer-type-fest-arrayable.ts`
|
|
1142
|
+
- `prefer-type-fest-async-return-type.ts`
|
|
1143
|
+
- `prefer-type-fest-conditional-pick.ts`
|
|
1144
|
+
- `prefer-type-fest-constructor.ts`
|
|
1145
|
+
- `prefer-type-fest-except.ts`
|
|
1146
|
+
- `prefer-type-fest-if.ts`
|
|
1147
|
+
- `prefer-type-fest-iterable-element.ts`
|
|
1148
|
+
- `prefer-type-fest-json-array.ts`
|
|
1149
|
+
- `prefer-type-fest-json-object.ts`
|
|
1150
|
+
- `prefer-type-fest-json-primitive.ts`
|
|
1151
|
+
- `prefer-type-fest-json-value.ts`
|
|
1152
|
+
- `prefer-type-fest-keys-of-union.ts`
|
|
1153
|
+
- `prefer-type-fest-literal-union.ts`
|
|
1154
|
+
- `prefer-type-fest-merge-exclusive.ts`
|
|
1155
|
+
- `prefer-type-fest-non-empty-tuple.ts`
|
|
1156
|
+
- `prefer-type-fest-omit-index-signature.ts`
|
|
1157
|
+
- `prefer-type-fest-partial-deep.ts`
|
|
1158
|
+
- `prefer-type-fest-primitive.ts`
|
|
1159
|
+
- `prefer-type-fest-promisable.ts`
|
|
1160
|
+
- `prefer-type-fest-readonly-deep.ts`
|
|
1161
|
+
- `prefer-type-fest-require-all-or-none.ts`
|
|
1162
|
+
- `prefer-type-fest-require-at-least-one.ts`
|
|
1163
|
+
- `prefer-type-fest-require-exactly-one.ts`
|
|
1164
|
+
- `prefer-type-fest-require-one-or-none.ts`
|
|
1165
|
+
- `prefer-type-fest-required-deep.ts`
|
|
1166
|
+
- `prefer-type-fest-schema.ts`
|
|
1167
|
+
- `prefer-type-fest-set-non-nullable.ts`
|
|
1168
|
+
- `prefer-type-fest-set-optional.ts`
|
|
1169
|
+
- `prefer-type-fest-set-readonly.ts`
|
|
1170
|
+
- `prefer-type-fest-set-required.ts`
|
|
1171
|
+
- `prefer-type-fest-simplify.ts`
|
|
1172
|
+
- `prefer-type-fest-tagged-brands.ts`
|
|
1173
|
+
- `prefer-type-fest-tuple-of.ts`
|
|
1174
|
+
- `prefer-type-fest-unknown-array.ts`
|
|
1175
|
+
- `prefer-type-fest-unknown-map.ts`
|
|
1176
|
+
- `prefer-type-fest-unknown-record.ts`
|
|
1177
|
+
- `prefer-type-fest-unknown-set.ts`
|
|
1178
|
+
- `prefer-type-fest-unwrap-tagged.ts`
|
|
1179
|
+
- `prefer-type-fest-value-of.ts`
|
|
1180
|
+
- `prefer-type-fest-writable-deep.ts`
|
|
1181
|
+
- `prefer-type-fest-writable.ts`
|
|
1182
|
+
๐งช [test] Update test files for consistency
|
|
1183
|
+
- Adjusted test files to remove trailing whitespace and ensure consistent formatting.
|
|
1184
|
+
- Affected test files include:
|
|
1185
|
+
- `imported-type-aliases.test.ts`
|
|
1186
|
+
- `prefer-type-fest-arrayable.test.ts`
|
|
1187
|
+
- `prefer-type-fest-async-return-type.test.ts`
|
|
1188
|
+
- `prefer-type-fest-json-array.test.ts`
|
|
1189
|
+
- `prefer-type-fest-json-object.test.ts`
|
|
1190
|
+
- `prefer-type-fest-partial-deep.test.ts`
|
|
1191
|
+
- `prefer-type-fest-require-all-or-none.test.ts`
|
|
1192
|
+
- `prefer-type-fest-require-exactly-one.test.ts`
|
|
1193
|
+
- `prefer-type-fest-required-deep.test.ts`
|
|
1194
|
+
- `prefer-type-fest-set-non-nullable.test.ts`
|
|
1195
|
+
- `prefer-type-fest-set-optional.test.ts`
|
|
1196
|
+
- `prefer-type-fest-set-required.test.ts`
|
|
1197
|
+
- `prefer-type-fest-simplify.test.ts`
|
|
1198
|
+
- `prefer-type-fest-tagged-brands.test.ts`
|
|
1199
|
+
- `prefer-type-fest-unknown-array.test.ts`
|
|
1200
|
+
- `prefer-type-fest-unwrap-tagged.test.ts`
|
|
1201
|
+
|
|
1202
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(e6eeff5)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/e6eeff586d1d69f4c812df893a00f836dde93222)
|
|
1203
|
+
|
|
1204
|
+
|
|
1205
|
+
- ๐จ [style] Refine stylelint disable comments in custom.css
|
|
1206
|
+
- Updated stylelint disable comments to remove unnecessary rules
|
|
1207
|
+
- Maintained essential rules for Docusaurus CSS compatibility
|
|
1208
|
+
|
|
1209
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(6eb9b0f)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/6eb9b0ff35cb5769ce2142ae048c29e8e05ec5f9)
|
|
1210
|
+
|
|
1211
|
+
|
|
1212
|
+
- ๐จ [style] Refine stylelint disable comments in CSS module
|
|
1213
|
+
- Removed unnecessary stylelint rules for improved clarity
|
|
1214
|
+
- Maintained essential rules to ensure Docusaurus CSS compatibility
|
|
1215
|
+
|
|
1216
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(1d8c4af)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/1d8c4af3441e33c1a4db469903c731a91ea80470)
|
|
1217
|
+
|
|
1218
|
+
|
|
1219
|
+
- ๐จ [style] Improve code formatting and consistency in scripts
|
|
1220
|
+
- Adjust spacing in parameter definitions in `.github/CleanReleases.ps1` and `.github/RepoSize.ps1`
|
|
1221
|
+
- Standardize spacing in output formatting for better readability
|
|
1222
|
+
- Enhance clarity by ensuring consistent spacing in condition checks
|
|
1223
|
+
โจ [feat] Add bootstrap script for GitHub labels
|
|
1224
|
+
- Introduce `scripts/bootstrap-labels.ps1` to manage GitHub issue/PR labels
|
|
1225
|
+
- Implement features for creating/updating labels using GitHub CLI
|
|
1226
|
+
- Include options for reading label names from `.github/labeler.yml`
|
|
1227
|
+
- Provide audit and export functionalities for label management
|
|
1228
|
+
|
|
1229
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(7f84870)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/7f84870ac38c2d089a0bfb6fe85025cce034c2ce)
|
|
1230
|
+
|
|
1231
|
+
|
|
1232
|
+
- ๐จ [style] Clean up code formatting and improve readability
|
|
1233
|
+
- Removed unnecessary trailing whitespace in multiple files to maintain consistent formatting.
|
|
1234
|
+
- Adjusted comment formatting for better clarity in several rule files, ensuring that return descriptions are properly wrapped for readability.
|
|
1235
|
+
|
|
1236
|
+
๐ ๏ธ [fix] Enhance type checks and improve rule implementations
|
|
1237
|
+
- Added checks for undefined elements in tuple types within `prefer-type-fest-non-empty-tuple.ts` to prevent runtime errors.
|
|
1238
|
+
- Improved type handling in `prefer-type-fest-promisable.ts` to ensure proper identification of identifier type references.
|
|
1239
|
+
- Updated logic in `prefer-type-fest-tuple-of.ts` to handle shadowed type parameters correctly, ensuring accurate suggestions for replacements.
|
|
1240
|
+
|
|
1241
|
+
๐งช [test] Update and expand test cases for rule validation
|
|
1242
|
+
- Added new test cases for `prefer-type-fest-value-of` to ensure correct handling of shadowed identifiers.
|
|
1243
|
+
- Enhanced tests for `prefer-type-fest-tuple-of` to cover scenarios with shadowed type parameters and ensure proper output.
|
|
1244
|
+
- Refactored existing tests for clarity and consistency, ensuring they align with the latest rule implementations.
|
|
1245
|
+
|
|
1246
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(b4b1929)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/b4b1929c19e9e23e7e2c88229979a2c23473a4b3)
|
|
1247
|
+
|
|
1248
|
+
|
|
1249
|
+
- ๐จ [style] Improve code formatting and consistency across multiple files
|
|
1250
|
+
- โจ Adjust spacing around object destructuring in `prefer-ts-extras-array-first.ts`
|
|
1251
|
+
- ๐จ Standardize spacing in `prefer-type-fest-json-primitive.ts` for better readability
|
|
1252
|
+
- ๐จ Refactor spacing in `prefer-type-fest-primitive.ts` to enhance clarity
|
|
1253
|
+
- ๐จ Clean up spacing in `prefer-type-fest-tagged-brands.ts` for uniformity
|
|
1254
|
+
- ๐จ Normalize spacing in `prefer-type-fest-writable.ts` to maintain style consistency
|
|
1255
|
+
- ๐จ Update spacing in `imported-type-aliases.test.ts` for improved code aesthetics
|
|
1256
|
+
- ๐จ Modify spacing in `docs-integrity.test.ts` to align with style guidelines
|
|
1257
|
+
|
|
1258
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(22c06f3)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/22c06f32690751743723df370ee9f648bb27b943)
|
|
1259
|
+
|
|
1260
|
+
|
|
1261
|
+
- ๐จ [style] Refactor code formatting for consistency and readability
|
|
1262
|
+
- Cleaned up import statements across multiple test files by consolidating imports from "vitest"
|
|
1263
|
+
- Adjusted line breaks and indentation in various test fixtures for improved clarity
|
|
1264
|
+
- Reformatted conditional statements in test fixtures to enhance readability
|
|
1265
|
+
|
|
1266
|
+
๐งช [test] Enhance test coverage for typed rules
|
|
1267
|
+
- Added tests for `getTypedRuleServices` to ensure correct parser services and type checker retrieval
|
|
1268
|
+
- Implemented tests for `getSignatureParameterTypeAt` to validate behavior with parameter indices
|
|
1269
|
+
- Created new test files for `prefer-ts-extras-not` rule to validate its functionality
|
|
1270
|
+
|
|
1271
|
+
๐ ๏ธ [fix] Corrected issues in test fixtures
|
|
1272
|
+
- Fixed invalid TypeScript syntax in several test fixtures by ensuring proper function declarations
|
|
1273
|
+
- Adjusted conditional checks in test fixtures to prevent unexpected behavior during tests
|
|
1274
|
+
|
|
1275
|
+
โจ [feat] Introduce new rule: prefer-ts-extras-not
|
|
1276
|
+
- Developed a new rule to encourage the use of `not` for filtering non-nullable values
|
|
1277
|
+
- Created corresponding valid and invalid test fixtures to validate the rule's functionality
|
|
1278
|
+
|
|
1279
|
+
โก [perf] Optimize Vite configuration for better performance
|
|
1280
|
+
- Updated Vite configuration to improve test execution speed and resource management
|
|
1281
|
+
- Adjusted coverage settings to ensure accurate reporting and exclude unnecessary files
|
|
1282
|
+
|
|
1283
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(4ab154d)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/4ab154d52bb4581406410e848c69daebc6d0e847)
|
|
1284
|
+
|
|
1285
|
+
|
|
1286
|
+
|
|
1287
|
+
### ๐งช Testing
|
|
1288
|
+
|
|
1289
|
+
- ๐งช [test] Refactor test cases to use 'test' instead of 'it' for consistency
|
|
1290
|
+
- Updated all test files to replace 'it' with 'test' for better readability and consistency across the test suite.
|
|
1291
|
+
- Ensured that all relevant test cases maintain their functionality after the change.
|
|
1292
|
+
|
|
1293
|
+
๐ ๏ธ [fix] Change boolean checks to use 'toBeTruthy()' for clarity
|
|
1294
|
+
- Modified assertions in multiple test files to use 'toBeTruthy()' instead of 'toBe(true)' for improved clarity in boolean checks.
|
|
1295
|
+
|
|
1296
|
+
๐จ [style] Clean up import statements and formatting
|
|
1297
|
+
- Removed duplicate import statements and ensured consistent formatting across test files.
|
|
1298
|
+
- Added spacing and line breaks for better readability in several test files.
|
|
1299
|
+
|
|
1300
|
+
๐ [docs] Update documentation comments for clarity
|
|
1301
|
+
- Enhanced documentation comments in various test files to provide clearer context and explanations for the tests being conducted.
|
|
1302
|
+
|
|
1303
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(10c699a)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/10c699af540ea73a73ab0e69acb9d2c217b3d9ff)
|
|
1304
|
+
|
|
1305
|
+
|
|
1306
|
+
- ๐งช [test] Expands type-utility rule coverage
|
|
1307
|
+
|
|
1308
|
+
๐งช [test] Strengthens rule reliability by adding edge-case assertions for detection and autofix behavior across multiple type-utility preference rules.
|
|
1309
|
+
- Adds reversed-union, whitespace-normalized, extra/missing generic argument, and nested-type scenarios to reduce false positives and false negatives.
|
|
1310
|
+
- Verifies non-fix behavior when required imports are missing, so diagnostics stay accurate without unsafe edits.
|
|
1311
|
+
๐งช [test] Broadens valid-case coverage for multi-member unions and duplicate-member combinations to ensure rules trigger only on exact intended patterns.
|
|
1312
|
+
๐จ [style] Normalizes import ordering and modernizes matcher assertions and regex flags in metadata checks to keep tests consistent and less brittle.
|
|
1313
|
+
|
|
1314
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(145743a)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/145743a270bfa524527bdcfd1ff264a7fce87aa1)
|
|
1315
|
+
|
|
1316
|
+
|
|
1317
|
+
|
|
1318
|
+
### ๐งน Chores
|
|
1319
|
+
|
|
1320
|
+
- ๐งน [chore] migrate documentation URLs to GitHub Pages and bump dev dependencies
|
|
1321
|
+
|
|
1322
|
+
- update base docs URL from custom domain to GitHub Pages in internal helpers and rule metadata
|
|
1323
|
+
ensures generated rule links point at `nick2bad4u.github.io/...`
|
|
1324
|
+
- adjust tests and URL construction to reflect new base and remove `.md` suffix
|
|
1325
|
+
- bump various ESLintโrelated dependencies (htmlโeslint plugins, compat, jsonc, stylelint, etc.)
|
|
1326
|
+
to keep linting tooling upโtoโdate
|
|
1327
|
+
|
|
1328
|
+
The changes simplify hosting strategy for docs and keep development dependencies current.
|
|
1329
|
+
|
|
1330
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(aeb72ee)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/aeb72eeeb9be48054bf96209b07ff62e9f777d33)
|
|
1331
|
+
|
|
1332
|
+
|
|
1333
|
+
|
|
1334
|
+
### ๐ง Build System
|
|
1335
|
+
|
|
1336
|
+
- ๐ง [build] Add defaultOptions to multiple TypeScript rules
|
|
1337
|
+
|
|
1338
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-ts-extras-not.ts`, ensuring consistent default behavior across rules.
|
|
1339
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-ts-extras-object-entries.ts`, enhancing rule configurability.
|
|
1340
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-ts-extras-object-from-entries.ts`, standardizing rule options.
|
|
1341
|
+
- โจ [feat] Included `defaultOptions: []` in `prefer-ts-extras-object-has-in.ts`, improving rule consistency.
|
|
1342
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-ts-extras-object-has-own.ts`, aligning with other rules.
|
|
1343
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-ts-extras-object-keys.ts`, ensuring uniformity in rule definitions.
|
|
1344
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-ts-extras-object-values.ts`, enhancing rule behavior.
|
|
1345
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-ts-extras-safe-cast-to.ts`, standardizing rule options.
|
|
1346
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-ts-extras-set-has.ts`, improving rule configurability.
|
|
1347
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-ts-extras-string-split.ts`, ensuring consistent default behavior.
|
|
1348
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-arrayable.ts`, enhancing rule configurability.
|
|
1349
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-async-return-type.ts`, standardizing rule options.
|
|
1350
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-conditional-pick.ts`, aligning with other rules.
|
|
1351
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-constructor.ts`, ensuring uniformity in rule definitions.
|
|
1352
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-except.ts`, improving rule consistency.
|
|
1353
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-if.ts`, enhancing rule behavior.
|
|
1354
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-iterable-element.ts`, standardizing rule options.
|
|
1355
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-json-array.ts`, ensuring consistent default behavior.
|
|
1356
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-json-object.ts`, enhancing rule configurability.
|
|
1357
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-json-primitive.ts`, standardizing rule options.
|
|
1358
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-json-value.ts`, improving rule consistency.
|
|
1359
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-keys-of-union.ts`, ensuring uniformity in rule definitions.
|
|
1360
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-literal-union.ts`, enhancing rule behavior.
|
|
1361
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-merge-exclusive.ts`, standardizing rule options.
|
|
1362
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-non-empty-tuple.ts`, improving rule configurability.
|
|
1363
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-omit-index-signature.ts`, ensuring consistent default behavior.
|
|
1364
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-partial-deep.ts`, enhancing rule behavior.
|
|
1365
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-primitive.ts`, standardizing rule options.
|
|
1366
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-promisable.ts`, improving rule consistency.
|
|
1367
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-readonly-deep.ts`, ensuring uniformity in rule definitions.
|
|
1368
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-require-all-or-none.ts`, enhancing rule configurability.
|
|
1369
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-require-at-least-one.ts`, standardizing rule options.
|
|
1370
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-require-exactly-one.ts`, improving rule consistency.
|
|
1371
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-require-one-or-none.ts`, ensuring consistent default behavior.
|
|
1372
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-required-deep.ts`, enhancing rule behavior.
|
|
1373
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-schema.ts`, standardizing rule options.
|
|
1374
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-set-non-nullable.ts`, improving rule configurability.
|
|
1375
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-set-optional.ts`, ensuring uniformity in rule definitions.
|
|
1376
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-set-readonly.ts`, enhancing rule behavior.
|
|
1377
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-set-required.ts`, standardizing rule options.
|
|
1378
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-simplify.ts`, improving rule consistency.
|
|
1379
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-tagged-brands.ts`, ensuring consistent default behavior.
|
|
1380
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-tuple-of.ts`, enhancing rule configurability.
|
|
1381
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-unknown-array.ts`, standardizing rule options.
|
|
1382
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-unknown-map.ts`, improving rule consistency.
|
|
1383
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-unknown-record.ts`, ensuring uniformity in rule definitions.
|
|
1384
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-unknown-set.ts`, enhancing rule behavior.
|
|
1385
|
+
- โจ [feat] Introduced `defaultOptions: []` in `prefer-type-fest-unwrap-tagged.ts`, standardizing rule options.
|
|
1386
|
+
- โจ [feat] Set `defaultOptions: []` in `prefer-type-fest-value-of.ts`, improving rule configurability.
|
|
1387
|
+
- โจ [feat] Added `defaultOptions: []` to `prefer-type-fest-writable-deep.ts`, ensuring consistent default behavior.
|
|
1388
|
+
- โจ [feat] Implemented `defaultOptions: []` in `prefer-type-fest-writable.ts`, enhancing rule behavior.
|
|
1389
|
+
|
|
1390
|
+
๐งช [test] Update tests to reflect changes in rule configurations
|
|
1391
|
+
|
|
1392
|
+
- ๐งช [test] Modified `configs.test.ts` to utilize `UnknownRecord` from `type-fest`, improving type safety.
|
|
1393
|
+
- ๐งช [test] Updated `prefer-type-fest-writable-deep.test.ts` to reflect changes in return types, ensuring consistency.
|
|
1394
|
+
- ๐งช [test] Adjusted `typed-rule-internal.test.ts` to improve clarity in test descriptions and ensure accurate path recognition.
|
|
1395
|
+
|
|
1396
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(9082660)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/90826605cb10f2a9ca47e47f8aafaa621e972e9b)
|
|
1397
|
+
|
|
1398
|
+
|
|
1399
|
+
- ๐ง [build] Refactor benchmark and test configurations
|
|
1400
|
+
- ๐ ๏ธ Update benchmark directory path to use `import.meta.dirname`
|
|
1401
|
+
- ๐ ๏ธ Replace `null` checks with `!= null` for candidate variables in stress tests
|
|
1402
|
+
- ๐ ๏ธ Modify ESLint stats calculation to use `Math.sumPrecise`
|
|
1403
|
+
- ๐ ๏ธ Remove deprecated `no-constructor-bind` plugin from configurations
|
|
1404
|
+
- ๐ ๏ธ Add benchmarks to ESLint and TypeScript configurations
|
|
1405
|
+
- ๐ ๏ธ Update type definitions to use `Readonly<UnknownArray>` in tests
|
|
1406
|
+
- ๐ ๏ธ Adjust Vite configuration to include benchmark files
|
|
1407
|
+
|
|
1408
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(528c601)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/528c601c385c557e677649bbaa06af894e6e9f82)
|
|
1409
|
+
|
|
1410
|
+
|
|
1411
|
+
- ๐ง [build] Update dependencies in package.json and package-lock.json
|
|
1412
|
+
- ๐ ๏ธ Update `eslint-plugin-jsdoc` from `^62.7.0` to `^62.7.1` to incorporate the latest improvements and fixes.
|
|
1413
|
+
- ๐งน Remove unused dependencies:
|
|
1414
|
+
- `eslint-plugin-mdx` version `^3.6.2`
|
|
1415
|
+
- `eslint-plugin-storybook` version `^10.2.11`
|
|
1416
|
+
- `storybook` version `^10.2.11`
|
|
1417
|
+
- ๐ง Clean up `package-lock.json` by removing entries for the removed dependencies and updating the lock file accordingly.
|
|
1418
|
+
|
|
1419
|
+
๐งช [test] Add unit tests for typed-rule internal helpers
|
|
1420
|
+
- โจ Introduce a new test file `typed-rule-internal.test.ts` to validate the behavior of the `isTestFilePath` function.
|
|
1421
|
+
- ๐ Implement tests to ensure that various file paths do not get incorrectly identified as test files, covering a range of common file naming conventions.
|
|
1422
|
+
|
|
1423
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(db80fb0)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/db80fb0425ed6198b5e3c426c2632208081053ad)
|
|
1424
|
+
|
|
1425
|
+
|
|
1426
|
+
- ๐ง [build] Update aliasReplacementFix checks for consistency across rules
|
|
1427
|
+
- ๐ ๏ธ [fix] Change condition from `!replacementFix` to `replacementFix === null` in multiple rules to ensure clarity in reporting
|
|
1428
|
+
- ๐ ๏ธ [fix] Adjust handling of `aliasReplacementFix` to check for `null` instead of using a truthy check in various rules
|
|
1429
|
+
|
|
1430
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(ba3b799)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/ba3b799b909cd67fe3c334cfb9aec7da650e57a5)
|
|
1431
|
+
|
|
1432
|
+
|
|
1433
|
+
- ๐ง [build] Mark rules as non-deprecated
|
|
1434
|
+
|
|
1435
|
+
- ๐ Update metadata for multiple rules in the TypeScript extras library to indicate they are not deprecated.
|
|
1436
|
+
- ๐ง Set `deprecated: false` for the following rules:
|
|
1437
|
+
- prefer-ts-extras-array-find-last-index
|
|
1438
|
+
- prefer-ts-extras-array-find-last
|
|
1439
|
+
- prefer-ts-extras-array-find
|
|
1440
|
+
- prefer-ts-extras-array-first
|
|
1441
|
+
- prefer-ts-extras-array-includes
|
|
1442
|
+
- prefer-ts-extras-array-join
|
|
1443
|
+
- prefer-ts-extras-array-last
|
|
1444
|
+
- prefer-ts-extras-as-writable
|
|
1445
|
+
- prefer-ts-extras-assert-defined
|
|
1446
|
+
- prefer-ts-extras-assert-error
|
|
1447
|
+
- prefer-ts-extras-assert-present
|
|
1448
|
+
- prefer-ts-extras-is-defined-filter
|
|
1449
|
+
- prefer-ts-extras-is-defined
|
|
1450
|
+
- prefer-ts-extras-is-empty
|
|
1451
|
+
- prefer-ts-extras-is-equal-type
|
|
1452
|
+
- prefer-ts-extras-is-finite
|
|
1453
|
+
- prefer-ts-extras-is-infinite
|
|
1454
|
+
- prefer-ts-extras-is-integer
|
|
1455
|
+
- prefer-ts-extras-is-present-filter
|
|
1456
|
+
- prefer-ts-extras-is-present
|
|
1457
|
+
- prefer-ts-extras-is-safe-integer
|
|
1458
|
+
- prefer-ts-extras-key-in
|
|
1459
|
+
- prefer-ts-extras-not
|
|
1460
|
+
- prefer-ts-extras-object-entries
|
|
1461
|
+
- prefer-ts-extras-object-from-entries
|
|
1462
|
+
- prefer-ts-extras-object-has-in
|
|
1463
|
+
- prefer-ts-extras-object-has-own
|
|
1464
|
+
- prefer-ts-extras-object-keys
|
|
1465
|
+
- prefer-ts-extras-object-values
|
|
1466
|
+
- prefer-ts-extras-safe-cast-to
|
|
1467
|
+
- prefer-ts-extras-set-has
|
|
1468
|
+
- prefer-ts-extras-string-split
|
|
1469
|
+
- prefer-type-fest-arrayable
|
|
1470
|
+
- prefer-type-fest-async-return-type
|
|
1471
|
+
- prefer-type-fest-conditional-pick
|
|
1472
|
+
- prefer-type-fest-constructor
|
|
1473
|
+
- prefer-type-fest-except
|
|
1474
|
+
- prefer-type-fest-if
|
|
1475
|
+
- prefer-type-fest-iterable-element
|
|
1476
|
+
- prefer-type-fest-json-array
|
|
1477
|
+
- prefer-type-fest-json-object
|
|
1478
|
+
- prefer-type-fest-json-primitive
|
|
1479
|
+
- prefer-type-fest-json-value
|
|
1480
|
+
- prefer-type-fest-keys-of-union
|
|
1481
|
+
- prefer-type-fest-literal-union
|
|
1482
|
+
- prefer-type-fest-merge-exclusive
|
|
1483
|
+
- prefer-type-fest-non-empty-tuple
|
|
1484
|
+
- prefer-type-fest-omit-index-signature
|
|
1485
|
+
- prefer-type-fest-partial-deep
|
|
1486
|
+
- prefer-type-fest-primitive
|
|
1487
|
+
- prefer-type-fest-promisable
|
|
1488
|
+
- prefer-type-fest-readonly-deep
|
|
1489
|
+
- prefer-type-fest-require-all-or-none
|
|
1490
|
+
- prefer-type-fest-require-at-least-one
|
|
1491
|
+
- prefer-type-fest-require-exactly-one
|
|
1492
|
+
- prefer-type-fest-require-one-or-none
|
|
1493
|
+
- prefer-type-fest-required-deep
|
|
1494
|
+
- prefer-type-fest-schema
|
|
1495
|
+
- prefer-type-fest-set-non-nullable
|
|
1496
|
+
- prefer-type-fest-set-optional
|
|
1497
|
+
- prefer-type-fest-set-readonly
|
|
1498
|
+
- prefer-type-fest-set-required
|
|
1499
|
+
- prefer-type-fest-simplify
|
|
1500
|
+
- prefer-type-fest-tagged-brands
|
|
1501
|
+
- prefer-type-fest-tuple-of
|
|
1502
|
+
- prefer-type-fest-unknown-array
|
|
1503
|
+
- prefer-type-fest-unknown-map
|
|
1504
|
+
- prefer-type-fest-unknown-record
|
|
1505
|
+
- prefer-type-fest-unknown-set
|
|
1506
|
+
- prefer-type-fest-unwrap-tagged
|
|
1507
|
+
- prefer-type-fest-value-of
|
|
1508
|
+
- prefer-type-fest-writable-deep
|
|
1509
|
+
- prefer-type-fest-writable
|
|
1510
|
+
|
|
1511
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(46e0d73)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/46e0d732d26617586d5b1533da10fd9d729bec56)
|
|
1512
|
+
|
|
1513
|
+
|
|
1514
|
+
- ๐ง [build] Raises lint baseline and hardens rules
|
|
1515
|
+
|
|
1516
|
+
๐ง [build] Converts multiple previously disabled lint checks to warnings and adds extra markup/config warnings to catch quality issues earlier without blocking development.
|
|
1517
|
+
- Improves incremental enforcement by surfacing problems sooner while avoiding abrupt error-level breakage.
|
|
1518
|
+
|
|
1519
|
+
๐ [refactor] Reworks primitive-union detection to use parser-provided node-type constants and a set-backed type guard instead of string-switch matching.
|
|
1520
|
+
- Improves type safety, reduces branching complexity, and keeps matching logic easier to maintain.
|
|
1521
|
+
|
|
1522
|
+
๐จ [style] Normalizes internal listener and helper formatting across authored rule implementations for consistency with stricter lint/style expectations.
|
|
1523
|
+
|
|
1524
|
+
๐งช [test] Refactors suites to a consistent structure, strengthens AST-node assertions with shared constants, and hardens metadata/import/assertion checks.
|
|
1525
|
+
- Aligns edge-case expectations for suggestion behavior and escaped template placeholders to reduce brittle test outcomes.
|
|
1526
|
+
|
|
1527
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(3ad591e)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/3ad591e4f8be1ffade32bc896ec0af34673ef703)
|
|
1528
|
+
|
|
1529
|
+
|
|
1530
|
+
- ๐ง [build] Update dependencies in package.json
|
|
1531
|
+
|
|
1532
|
+
- ๐ฆ Upgrade @typescript-eslint/parser and @typescript-eslint/utils to version 8.56.1 for improved TypeScript support.
|
|
1533
|
+
- ๐ฆ Upgrade @typescript-eslint/eslint-plugin and @typescript-eslint/rule-tester to version 8.56.1 for better linting capabilities.
|
|
1534
|
+
- ๐ฆ Upgrade eslint to version 10.0.2 for bug fixes and performance improvements.
|
|
1535
|
+
- ๐ฆ Upgrade eslint-plugin-storybook to version 10.2.11 for enhanced Storybook integration.
|
|
1536
|
+
- ๐ฆ Upgrade storybook to version 10.2.11 for the latest features and fixes.
|
|
1537
|
+
- ๐ฆ Upgrade typescript-eslint to version 8.56.1 for consistency with other TypeScript ESLint packages.
|
|
1538
|
+
- ๐ฆ Update peerDependencies to require eslint version 10.0.2 for compatibility.
|
|
1539
|
+
|
|
1540
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(4f1aede)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/4f1aede544912eba9af43a5078b774ede5845435)
|
|
1541
|
+
|
|
1542
|
+
|
|
1543
|
+
- ๐ง [build] Update Stryker configuration for improved testing
|
|
1544
|
+
- Adjust `test:stryker` scripts to use `--ignoreStatic` flag for better performance
|
|
1545
|
+
- Change `ignoreStatic` option in Stryker config to `false` for comprehensive mutant testing
|
|
1546
|
+
|
|
1547
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(28104ce)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/28104ce26257b19d12fb03c117832bb62fab0a26)
|
|
1548
|
+
|
|
1549
|
+
|
|
1550
|
+
- ๐ง [build] Update Stryker configuration and package.json scripts
|
|
1551
|
+
- ๐ ๏ธ Remove outdated mutation testing scripts from package.json
|
|
1552
|
+
- โจ Add new Stryker testing scripts for improved mutation testing
|
|
1553
|
+
- โก Enhance Stryker configuration with ignoreStatic and disableTypeChecks options
|
|
1554
|
+
|
|
1555
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(5f83e37)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/5f83e378a295fcba40c50841f08b8e13223fba6a)
|
|
1556
|
+
|
|
1557
|
+
|
|
1558
|
+
- ๐ง [build] Update package.json and package-lock.json
|
|
1559
|
+
- โจ Add overrides for jsonc-eslint-parser to use version ^3.1.0
|
|
1560
|
+
- ๐ง Remove unused dependencies from package-lock.json
|
|
1561
|
+
|
|
1562
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(b934c2e)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/b934c2e401cac9ef0889f3d606107b6ee6e0716e)
|
|
1563
|
+
|
|
1564
|
+
|
|
1565
|
+
- ๐ง [build] Update dependencies in package.json
|
|
1566
|
+
- ๐ ๏ธ Update `eslint-plugin-jsonc` from `^3.0.0` to `^2.21.1`
|
|
1567
|
+
- ๐ ๏ธ Update `jsonc-eslint-parser` from `^3.1.0` to `^3.0.0`
|
|
1568
|
+
|
|
1569
|
+
๐ [refactor] Improve type definitions and utility functions in imported-value-symbols.ts
|
|
1570
|
+
- ๐จ Refactor type definitions for `MemberToFunctionCallFixParams` and `MethodToFunctionCallFixParams`
|
|
1571
|
+
- ๐ ๏ธ Consolidate and rename parameters for clarity in function signatures
|
|
1572
|
+
- ๐จ Improve documentation comments for better understanding
|
|
1573
|
+
- ๐ ๏ธ Optimize logic in `collectDirectNamedValueImportsFromSource` for clarity
|
|
1574
|
+
|
|
1575
|
+
โจ [feat] Enhance ESLint rules for TypeScript extras
|
|
1576
|
+
- ๐จ Refactor imports in multiple rule files to use consistent import statements
|
|
1577
|
+
- โจ Implement autofix capabilities for `isDefined`, `isEmpty`, `isPresent` in respective rules
|
|
1578
|
+
- ๐ Add inline fixable test cases for `isDefined`, `isEmpty`, and `isPresent` rules
|
|
1579
|
+
|
|
1580
|
+
๐งช [test] Add tests for new autofix functionality
|
|
1581
|
+
- ๐งช Add test cases for autofixing `isDefined` and `isEmpty` checks
|
|
1582
|
+
- ๐งช Add test cases for autofixing `isPresent` checks
|
|
1583
|
+
- ๐งช Ensure all tests cover both defined and negated scenarios for comprehensive coverage
|
|
1584
|
+
|
|
1585
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(63355ae)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/63355ae568aabe9d928faa0d575643f48768d5fa)
|
|
1586
|
+
|
|
1587
|
+
|
|
1588
|
+
- ๐ง [build] Update dependencies in package.json
|
|
1589
|
+
|
|
1590
|
+
- ๐ Upgrade "@html-eslint/eslint-plugin" and "@html-eslint/parser" to version 0.56.0 for improved HTML linting capabilities.
|
|
1591
|
+
- ๐ Update "eslint" to version 10.0.1 to incorporate the latest fixes and features.
|
|
1592
|
+
- ๐ Upgrade "eslint-plugin-jsdoc" to version 62.7.0 for enhanced JSDoc support.
|
|
1593
|
+
- ๐ Update "eslint-plugin-jsonc" to version 3.0.0 for better JSONC linting.
|
|
1594
|
+
- ๐ Upgrade "jsonc-eslint-parser" to version 3.1.0 for improved JSONC parsing.
|
|
1595
|
+
- ๐ Update peer dependency "eslint" to version 10.0.1 to ensure compatibility with the latest changes.
|
|
1596
|
+
|
|
1597
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(e06b605)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/e06b605ec157e48bdef1667bd9b7d29c594ee17a)
|
|
1598
|
+
|
|
1599
|
+
|
|
1600
|
+
- ๐ง [build] Update Stryker dependencies and package manager version
|
|
1601
|
+
- Upgrade Stryker packages to version 9.5.1 for improved functionality
|
|
1602
|
+
- Update package manager version to 11.10.1 for better compatibility
|
|
1603
|
+
|
|
1604
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(1dde506)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/1dde506c1d63afe0a9d0ffc1ea7fb8d4722e1844)
|
|
1605
|
+
|
|
1606
|
+
|
|
1607
|
+
- ๐ง [build] Update Knip configuration to remove unnecessary dependencies
|
|
1608
|
+
- Removed several unused dependencies from the Knip configuration to streamline the analysis process
|
|
1609
|
+
- This change helps in reducing false positives and improving the accuracy of dependency tracking
|
|
1610
|
+
|
|
1611
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(5d2f382)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/5d2f382a0e7cdbc2463d18c6f322c29f0d697ace)
|
|
1612
|
+
|
|
1613
|
+
|
|
1614
|
+
- ๐ง [build] Update TypeScript configuration for ESLint
|
|
1615
|
+
|
|
1616
|
+
- โจ [feat] Include `knip.config.ts` in the TypeScript ESLint configuration
|
|
1617
|
+
- ๐ This addition allows ESLint to recognize and lint the `knip.config.ts` file, ensuring consistent code quality and adherence to coding standards across the project.
|
|
1618
|
+
|
|
1619
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(a4ac857)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/a4ac8576e18b4a30ef54662a3857951dca1ac277)
|
|
1620
|
+
|
|
1621
|
+
|
|
1622
|
+
- ๐ง [build] Force install dependencies in Docusaurus deployment workflow
|
|
1623
|
+
- Updated npm install command to use --force for consistent dependency installation
|
|
1624
|
+
|
|
1625
|
+
๐ [docs] Clarify documentation for modern enhancements
|
|
1626
|
+
- Revised package documentation to reflect subtle client-side interaction enhancements
|
|
1627
|
+
|
|
1628
|
+
๐งน [chore] Update lint-actionlint script configuration path
|
|
1629
|
+
- Changed path for ActionLintConfig.yaml to use the repository root for better accessibility
|
|
1630
|
+
|
|
1631
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(b1b30c3)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/b1b30c3c1fb58329c11e49acbe4e84acae2d46c4)
|
|
1632
|
+
|
|
1633
|
+
|
|
1634
|
+
- ๐ง [build] Update npm-check-updates to version 19.4.0
|
|
1635
|
+
- Upgraded the "npm-check-updates" package in both package.json and package-lock.json to ensure compatibility with the latest features and fixes.
|
|
1636
|
+
|
|
1637
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(0d1b867)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/0d1b867c174310b07659a43fbd41694ab4579337)
|
|
1638
|
+
|
|
1639
|
+
|
|
1640
|
+
- ๐ง [build] Update Docusaurus configuration and add manifest file
|
|
1641
|
+
- ๐ ๏ธ [fix] Implement ignoreKnownWebpackWarningsPlugin to suppress known webpack warnings
|
|
1642
|
+
- ๐ [docs] Add manifest.json for PWA support with background color and icons
|
|
1643
|
+
- ๐ง [build] Modify build:local script to include NODE_OPTIONS for deprecation warnings
|
|
1644
|
+
- ๐ง [build] Update TypeDoc output path in typedoc.local.config.json
|
|
1645
|
+
|
|
1646
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(9327651)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/93276515f3fef321f4fea54d762fdf9d63ac07b5)
|
|
1647
|
+
|
|
1648
|
+
|
|
1649
|
+
- ๐ง [build] Refactor TypeFest plugin types and configurations
|
|
1650
|
+
- ๐ Export `TypefestConfigName` and `TypefestPresetConfig` types for better clarity
|
|
1651
|
+
- ๐ Update `TypefestPlugin` and `TypefestConfigs` types to enhance type safety
|
|
1652
|
+
- ๐ง Modify function signatures to use new types for improved consistency
|
|
1653
|
+
- ๐ฆ Adjust `typefestPlugin` structure to align with updated type definitions
|
|
1654
|
+
|
|
1655
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(a0fdbab)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/a0fdbabd4429095440c4efd43d07829ace5b2afc)
|
|
1656
|
+
|
|
1657
|
+
|
|
1658
|
+
- ๐ง [build] Update eslint-plugin-testing-library to version 7.16.0
|
|
1659
|
+
- [dependency] Update version 7.16.0 in package.json and package-lock.json
|
|
1660
|
+
- Update dependencies for compatibility with the latest ESLint versions
|
|
1661
|
+
|
|
1662
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(25224f5)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/25224f59273e80a3b6231b8eaf954f164f3565f2)
|
|
1663
|
+
|
|
1664
|
+
|
|
1665
|
+
- ๐ง [build] Refactor TypeFest ESLint rules for consistency and clarity
|
|
1666
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-require-all-or-none`
|
|
1667
|
+
- Moved `name`, `meta`, and `defaultOptions` to the end of the rule definition for consistency.
|
|
1668
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-require-at-least-one`
|
|
1669
|
+
- Adjusted the structure to match the new format.
|
|
1670
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-require-exactly-one`
|
|
1671
|
+
- Ensured consistent ordering of properties.
|
|
1672
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-require-one-or-none`
|
|
1673
|
+
- Updated to follow the new structure.
|
|
1674
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-schema`
|
|
1675
|
+
- Aligned with the new metadata format.
|
|
1676
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-set-non-nullable`
|
|
1677
|
+
- Adjusted to maintain consistency across rules.
|
|
1678
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-set-optional`
|
|
1679
|
+
- Updated to follow the new structure.
|
|
1680
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-set-readonly`
|
|
1681
|
+
- Ensured consistent ordering of properties.
|
|
1682
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-set-required`
|
|
1683
|
+
- Aligned with the new metadata format.
|
|
1684
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-simplify`
|
|
1685
|
+
- Updated to follow the new structure.
|
|
1686
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-tagged-brands`
|
|
1687
|
+
- Adjusted to maintain consistency across rules.
|
|
1688
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-tuple-of`
|
|
1689
|
+
- Ensured consistent ordering of properties.
|
|
1690
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-unknown-array`
|
|
1691
|
+
- Aligned with the new metadata format.
|
|
1692
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-unknown-map`
|
|
1693
|
+
- Updated to follow the new structure.
|
|
1694
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-unknown-record`
|
|
1695
|
+
- Ensured consistent ordering of properties.
|
|
1696
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-unknown-set`
|
|
1697
|
+
- Aligned with the new metadata format.
|
|
1698
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-unwrap-tagged`
|
|
1699
|
+
- Updated to follow the new structure.
|
|
1700
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-value-of`
|
|
1701
|
+
- Ensured consistent ordering of properties.
|
|
1702
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-writable`
|
|
1703
|
+
- Aligned with the new metadata format.
|
|
1704
|
+
- ๐งช [test] Update docs integrity test to use expectTypeOf for description validation
|
|
1705
|
+
- Changed `expect(typeof description).toBe("string")` to `expectTypeOf(description).toBeString()`
|
|
1706
|
+
|
|
1707
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(ce485eb)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/ce485eb271acb65d12753e772cdcd320572bdeab)
|
|
1708
|
+
|
|
1709
|
+
|
|
1710
|
+
- ๐ง [build] Refactor TypeFest ESLint rules for consistency and clarity
|
|
1711
|
+
|
|
1712
|
+
- ๐ ๏ธ [fix] Reorganize rule metadata for `prefer-type-fest-require-all-or-none`:
|
|
1713
|
+
- Moved `name`, `meta`, and `defaultOptions` to the correct positions.
|
|
1714
|
+
- Ensured the `create` function remains intact while maintaining functionality.
|
|
1715
|
+
|
|
1716
|
+
- ๐ ๏ธ [fix] Update `prefer-type-fest-require-at-least-one` rule structure:
|
|
1717
|
+
- Adjusted metadata organization for clarity.
|
|
1718
|
+
- Preserved the core logic within the `create` function.
|
|
1719
|
+
|
|
1720
|
+
- ๐ ๏ธ [fix] Refactor `prefer-type-fest-require-exactly-one` rule:
|
|
1721
|
+
- Streamlined metadata for better readability.
|
|
1722
|
+
- Kept the reporting logic unchanged.
|
|
1723
|
+
|
|
1724
|
+
- ๐ ๏ธ [fix] Revise `prefer-type-fest-require-one-or-none` rule:
|
|
1725
|
+
- Enhanced metadata structure for consistency.
|
|
1726
|
+
- Maintained existing functionality in the `create` method.
|
|
1727
|
+
|
|
1728
|
+
- ๐ ๏ธ [fix] Modify `prefer-type-fest-schema` rule:
|
|
1729
|
+
- Reorganized metadata for improved clarity.
|
|
1730
|
+
- Ensured the reporting logic remains functional.
|
|
1731
|
+
|
|
1732
|
+
- ๐ ๏ธ [fix] Adjust `prefer-type-fest-set-non-nullable` rule:
|
|
1733
|
+
- Updated metadata layout for consistency.
|
|
1734
|
+
- Preserved the core logic in the `create` function.
|
|
1735
|
+
|
|
1736
|
+
- ๐ ๏ธ [fix] Refactor `prefer-type-fest-set-optional` rule:
|
|
1737
|
+
- Improved metadata organization for clarity.
|
|
1738
|
+
- Maintained existing functionality.
|
|
1739
|
+
|
|
1740
|
+
- ๐ ๏ธ [fix] Revise `prefer-type-fest-set-readonly` rule:
|
|
1741
|
+
- Streamlined metadata for better readability.
|
|
1742
|
+
- Ensured the reporting logic remains intact.
|
|
1743
|
+
|
|
1744
|
+
- ๐ ๏ธ [fix] Update `prefer-type-fest-set-required` rule:
|
|
1745
|
+
- Enhanced metadata structure for consistency.
|
|
1746
|
+
- Preserved the core logic within the `create` function.
|
|
1747
|
+
|
|
1748
|
+
- ๐ ๏ธ [fix] Refactor `prefer-type-fest-simplify` rule:
|
|
1749
|
+
- Reorganized metadata for improved clarity.
|
|
1750
|
+
- Kept the reporting logic unchanged.
|
|
1751
|
+
|
|
1752
|
+
- ๐ ๏ธ [fix] Modify `prefer-type-fest-tagged-brands` rule:
|
|
1753
|
+
- Adjusted metadata organization for clarity.
|
|
1754
|
+
- Maintained existing functionality in the `create` method.
|
|
1755
|
+
|
|
1756
|
+
- ๐ ๏ธ [fix] Revise `prefer-type-fest-tuple-of` rule:
|
|
1757
|
+
- Improved metadata layout for consistency.
|
|
1758
|
+
- Preserved the core logic in the `create` function.
|
|
1759
|
+
|
|
1760
|
+
- ๐ ๏ธ [fix] Adjust `prefer-type-fest-unknown-array` rule:
|
|
1761
|
+
- Updated metadata structure for clarity.
|
|
1762
|
+
- Ensured the reporting logic remains functional.
|
|
1763
|
+
|
|
1764
|
+
- ๐ ๏ธ [fix] Refactor `prefer-type-fest-unknown-map` rule:
|
|
1765
|
+
- Streamlined metadata for better readability.
|
|
1766
|
+
- Maintained existing functionality.
|
|
1767
|
+
|
|
1768
|
+
- ๐ ๏ธ [fix] Modify `prefer-type-fest-unknown-record` rule:
|
|
1769
|
+
- Enhanced metadata organization for consistency.
|
|
1770
|
+
- Preserved the core logic within the `create` function.
|
|
1771
|
+
|
|
1772
|
+
- ๐ ๏ธ [fix] Revise `prefer-type-fest-unknown-set` rule:
|
|
1773
|
+
- Reorganized metadata for improved clarity.
|
|
1774
|
+
- Kept the reporting logic unchanged.
|
|
1775
|
+
|
|
1776
|
+
- ๐ ๏ธ [fix] Update `prefer-type-fest-unwrap-tagged` rule:
|
|
1777
|
+
- Adjusted metadata layout for consistency.
|
|
1778
|
+
- Maintained existing functionality in the `create` method.
|
|
1779
|
+
|
|
1780
|
+
- ๐ ๏ธ [fix] Refactor `prefer-type-fest-value-of` rule:
|
|
1781
|
+
- Improved metadata structure for clarity.
|
|
1782
|
+
- Preserved the core logic in the `create` function.
|
|
1783
|
+
|
|
1784
|
+
- ๐ ๏ธ [fix] Modify `prefer-type-fest-writable` rule:
|
|
1785
|
+
- Streamlined metadata for better readability.
|
|
1786
|
+
- Ensured the reporting logic remains intact.
|
|
1787
|
+
|
|
1788
|
+
๐ [docs] Update documentation integrity tests
|
|
1789
|
+
- ๐ ๏ธ [fix] Adjusted tests to ensure documentation URLs and descriptions are validated correctly.
|
|
1790
|
+
- ๐ ๏ธ [fix] Enhanced type checks for rule descriptions to ensure they are strings.
|
|
1791
|
+
|
|
1792
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(df2ae2f)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/df2ae2f38b3f8c5d03b1737f5bf328a8132adc77)
|
|
1793
|
+
|
|
1794
|
+
|
|
1795
|
+
- ๐ง [build] Update dependencies for improved compatibility and features
|
|
1796
|
+
|
|
1797
|
+
- ๐ฆ Upgrade "@typescript-eslint/utils" from "^8.55.0" to "^8.56.0" for enhanced TypeScript support.
|
|
1798
|
+
- ๐ฆ Upgrade "@eslint/js" from "^9.39.2" to "^10.0.1" to leverage the latest ESLint features and fixes.
|
|
1799
|
+
- ๐ฆ Upgrade "@typescript-eslint/eslint-plugin", "@typescript-eslint/parser", and "@typescript-eslint/rule-tester" from "^8.55.0" to "^8.56.0" for better linting capabilities.
|
|
1800
|
+
- ๐ฆ Upgrade "typescript-eslint" from "^8.55.0" to "^8.56.0" to ensure compatibility with the latest TypeScript features.
|
|
1801
|
+
- ๐ฆ Update peer dependency "eslint" from "^9.0.0" to "^10.0.0" to align with the latest ESLint version requirements.
|
|
1802
|
+
|
|
1803
|
+
Signed-off-by: Nick2bad4u <20943337+Nick2bad4u@users.noreply.github.com> [`(ff78dc7)`](https://github.com/Nick2bad4u/eslint-plugin-typefest/commit/ff78dc7d23858611fe280055f82504009732e61c)
|
|
1804
|
+
|
|
1805
|
+
|
|
1806
|
+
|
|
1807
|
+
|
|
1808
|
+
|
|
1809
|
+
|
|
1810
|
+
## Contributors
|
|
1811
|
+
Thanks to all the [contributors](https://github.com/Nick2bad4u/eslint-plugin-typefest/graphs/contributors) for their hard work!
|
|
1812
|
+
## License
|
|
1813
|
+
This project is licensed under the [UnLicense](https://github.com/Nick2bad4u/eslint-plugin-typefest/blob/main/LICENSE)
|
|
1814
|
+
*This changelog was automatically generated with [git-cliff](https://github.com/orhun/git-cliff).*
|