Eslint config passport next#3
Conversation
…ents`
- Breaking change [`sauron`]: `preferredTypes` to prefer Typescript-friendly
`any` instead of `Any`
- Change [`index.js`]: Reorder `extends` (what should be
backward-compatibly) and avoid adding to `plugins` except where needed
- Change [`index.js`]: Make explicit deriving from `promise/recommended`,
`import/recommended`, and `jsdoc/recommended`, though disabling rules
we don't want (and removing some explicit rule additions which are
now inherited); though not currently deriving from its `es2019` config,
we are disabling some `@mysticatea/eslint-plugin` rules, as though we
were inheriting only those rules which it doesn't inherit from other
plugins/configs. In the absence of inheriting the config, we are also
therefore adding some of its rules manually. Should be
backward-compatible.
- Update [\*]: Fix config extension paths for ESLint 6
- Fix [`index.js`] (tighten): Ensure `no-use-extend-native` is being applied
- Fix [`explicitly-unused.js`]: Remove those which were (or now are) in
other configs like `sauron`
- Enhancement [`index.js`] (tighten): Add plugin with its recommended
rules (`sonarjs`), disabling some
- Enhancement [`index.js`] (tighten): Add `eslint-plugin-html` plugin
(though need to enable for HTML, e.g., `--ext .js,.md,.html`)
- Enhancement [`index.js`] (tighten): Add plugin `array-func/all` with its
`all` rules (though disabling `array-func/prefer-array-from` for now)
- Enhancement [`sauron`] (tighten): Add `prefer-named-capture-group`
- Enhancement [`great-eye`] (tighten): Add `max-statements`,
`import/no-unused-modules`, and `sonarjs/cognitive-complexity`
- Enhancement [`great-eye`] (tighten): Add `import/no-unused-modules` (with
`missingExports` and `unusedExports`)
- Enhancement [`great-eye-node`]: Add new config which expands on `great-eye`
and `sauron-node`
- Enhancement [`explicitly-unused.js`]: Add unused `@mysticatea` and
`eslint-comments` items and some deprecated rules
- Enhancement [`inherited-rules/implicitly-included`]: Add these auto-built
configs to track rules that were inherited (and not disabled)
- Enhancement [`inherited-rules/unused`]: Add space for these auto-built
configs (currently none) to track if there are any rules in the plug-ins
and configs we have extended but have not either incorporated or
explicitly rejected.
- Linting: Fix `.eslintrc` error
- Docs: Indicate how to find which rules were inherited or rejected and
to calculate if any inherited ones are missing from our lists;
some doc fixes
- npm: Update devDeps, peerDeps
- npm: Bump to 8.0.0
reporting parents instead of children - Refactoring: Remove trailing commas - npm: Bump to 8.0.1
…sdoc type improvements) - npm: Bump to 8.0.2
accordingly; document choice of options - npm: Bump to 8.1.0
- npm: Bump to 8.2.0
- npm: Bump to 8.3.0
…-recommended rules (e.g., by standard) - Build: Update "standard" and eslint-recommended comparison files as "standard" now incorporates more recommended rules (and removes a few of its own redundant ones) - npm: Bump peerDeps/devDeps - npm: Bump to 8.4.0
…sticatea - Build: Ensure removing files before testing - Build: Only check `explicitly-unused` rules in comparison with unused, not with inherited, as need to see which explicitly unused rules may later become used - Fix [`index.js`]: Disable `lines-between-class-members` as inherited now from standard
- npm: Bump to 8.5.0
…ages calling for replacement - npm: Bump to 8.5.1
…plugins) - npm: Bump to 8.5.2
`function-call-argument-newline` set to `never` - Enhancement [`index.js`]: apply rule `no-label-var` for comparison purposes (though already a part of `eslint:recommended`) - Enhancement [`index.js`]: Disable `object-curly-newline` since added to "standard" - npm: Update devDeps/peerDeps - npm: Bump to 8.6.0
`function-call-argument-newline` (oppressive) - npm: Bump to 8.7.0
`standard/no-callback-literal` - npm: Update devDeps/peerDeps - npm: Bump to 8.8.0
adds `node/no-exports-assign` - npm: Bump to 8.9.0
- Enhancement [`index.js`] (tighten): Add new rules: `default-param-last`, `no-import-assign`, `prefer-regex-literals` - Enhancement [`index.js`] (tighten): Inherit new rules from unicorn: `prefer-dataset`, `prefer-reflect-apply` - Enhancement [`index.js`]: `unicorn/expiring-todo-comments` but allowing for no conditions - Enhancement [`index.js`]: Add `no-warning-comments` with terms set to `fixme` and `xxx` so as to block these (in favor of `todo`) - Enhancement [`great-eye`]: `unicorn/expiring-todo-comments` and insisting on conditions - Enhancement [`sauron`]: `unicorn/consistent-function-scoping` - Testing: Compare to es2020 - npm: Bump `@mysticatea/eslint-plugin`, `eslint-plugin-jsdoc`, `eslint-plugin-unicorn`, `typescript`, `eslint` devDeps/peerDeps - npm: Bump to 9.0.0
- npm: Bump to 9.0.1
* master: (26 commits) - Fix: Remove `unicorn/consistent-function-scoping` as prematurely added - npm: Bump to 9.0.1 - Breaking change: Require >= node 8.10.0 - Enhancement [`index.js`] (tighten): Add new rules: `default-param-last`, `no-import-assign`, `prefer-regex-literals` - Enhancement [`index.js`] (tighten): Inherit new rules from unicorn: `prefer-dataset`, `prefer-reflect-apply` - Enhancement [`index.js`]: `unicorn/expiring-todo-comments` but allowing for no conditions - Enhancement [`index.js`]: Add `no-warning-comments` with terms set to `fixme` and `xxx` so as to block these (in favor of `todo`) - Enhancement [`great-eye`]: `unicorn/expiring-todo-comments` and insisting on conditions - Enhancement [`sauron`]: `unicorn/consistent-function-scoping` - Testing: Compare to es2020 - npm: Bump `@mysticatea/eslint-plugin`, `eslint-plugin-jsdoc`, `eslint-plugin-unicorn`, `typescript`, `eslint` devDeps/peerDeps - npm: Bump to 9.0.0 - Enhancement [`index.js`]: Update node plugin with recommended update; adds `node/no-exports-assign` - npm: Bump to 8.9.0 - Docs: Update CHANGES - npm: Update eslint, eslint-plugin-jsdoc devDeps/peerDeps - Docs; Reason for non-inclusion of `node/no-callback-literal` - Update: Avoid `node/no-callback-literal` which duplicates `standard/no-callback-literal` - npm: Update devDeps/peerDeps - npm: Bump to 8.8.0 - npm: Actually bump to 8.7.0 - Enhancement [`index.js`] (tighten): remove rule `function-call-argument-newline` (oppressive) - npm: Bump to 8.7.0 - Enhancement [`index.js`] (tighten): apply rule `function-call-argument-newline` set to `never` - Enhancement [`index.js`]: apply rule `no-label-var` for comparison purposes (though already a part of `eslint:recommended`) - Enhancement [`index.js`]: Disable `object-curly-newline` since added to "standard" - npm: Update devDeps/peerDeps - npm: Bump to 8.6.0 - npm: Update peer and devDeps (including import, jsdoc, and unicorn plugins) - npm: Bump to 8.5.2 - npm: Update devDeps/peerDeps, compat, jsdoc (no rule changes) - Fix [`sauron`]: Avoid use of now removed template variables in messages calling for replacement - npm: Bump to 8.5.1 - npm: Update eslint-plugin-jsdoc - npm: Bump to 8.5.0 - Change: [`index.js`]: Explicitly reject items if we inherit from mysticatea - Build: Ensure removing files before testing - Build: Only check `explicitly-unused` rules in comparison with unused, not with inherited, as need to see which explicitly unused rules may later become used - Fix [`index.js`]: Disable `lines-between-class-members` as inherited now from standard - Enhancement: Add `eslint-conf_eslint-all.js` for showing non-eslint-recommended rules (e.g., by standard) - Build: Update "standard" and eslint-recommended comparison files as "standard" now incorporates more recommended rules (and removes a few of its own redundant ones) - npm: Bump peerDeps/devDeps - npm: Bump to 8.4.0 - Docs: Clarify jsdoc item usage - npm: Bump eslint-plugin-jsdoc, typescript devDeps/peerDeps - npm: Bump to 8.3.0 - npm: Bump eslint-plugin-jsdoc devDep/peerDep - npm: Bump to 8.2.0 - Todos ... # Conflicts: # CHANGES.md # README.md # great-eye.js # index.js # inherited-rules/build.js # inherited-rules/implicitly-included/unicorn-recommended.js # package-lock.json # package.json
…rule - npm: Bump to 10.0.0
* master: - Enhancement [`sauron`] (tighten) Add Unicorn `prefer-string-slice` rule - npm: Bump to 10.0.0 # Conflicts: # CHANGES.md # package-lock.json # package.json
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](lodash/lodash@4.17.15...4.17.19) Signed-off-by: dependabot[bot] <support@github.com>
…7.19 Bump lodash from 4.17.15 to 4.17.19
`no-object-as-default-parameter` and `prefer-array-find`;
add back `prefer-flat-map`
- npm: Update peerDeps/devDeps.
- npm: Bump to 22.6.0
- npm: Bump to 22.7.0
- Update: Disable new Unicorn and jsdoc rules - npm: Bump to 22.8.0
`checkProperties` to `jsdoc/check-examples` rule
- Enhancement [`great-eye.js`]: Add `unicorn/numeric-separators-style` (but
disable in `index.js`)
- npm: Update devDeps.
- npm: Bump to 22.9.0
`standard/no-calback-literal`, `no-negated-in-lhs`
- Enhancement [`explicitly-unused.js`]: Remove disabling of
`node/no-callback-literal` (rule now used)
- npm: Update peerDeps/devDeps.
- npm: Bump to 22.10.0
`no-unsafe-optional-chaining` - npm: Update peerDeps/devDeps.
…` and
`no-unsafe-optional-chaining`
- Enhancement [`index.js`] (tighten): Add `unicorn/prefer-array-some`,
`unicorn/prefer-date-now`, `unicorn/prefer-default-parameters`
- Enhancement [`index.js`] (tighten): Use renamed Unicorn rules
- Enhancement [`index.js`]: Avoid new Unicorn rules `no-lonely-if` and
`empty-brace-spaces`
- Update [`explicitly-unused.js`]: Add renamed Unicorn rules
- npm: Update peerDeps/devDeps.
- npm: Bump to 23.0.0
- remark: remove remarkrc - npm: Update peerDeps/devDeps. - npm: Bump to 24.0.0
…ubclassed
`Promise<>` to instead use an interface where the specific resolver and
rejector can be documented.
…les,
though disable `unicorn/no-array-for-each`
- npm: Update peerDeps/devDeps.
- npm: Bump to 25.0.0
- npm: Bump to 25.1.0
…rk which
doesn't warn when using ESLint 7 for `peerDependencies`. Changes
`inherited-rules/implicitly-included/sonars-recommended.js` to
`inherited-rules/implicitly-included/radar-recommended.js`
- npm: Bump to 26.0.0
- npm: Bump to 26.1.0
…r polyglot-friendly globals (other globals specific to envrionment are not whitelisted); to actually prevent these, will now need to set `shared-node-browser` `env` to `false`.
- Enhancement (`+babel.js`): Add file for wrapping a module to support equivalent babel/eslint-parser rules
- Enhancement (`+script-node.js`): Add file for applying script source type with Node
- Enhancement (`+script.js`): Add file for applying script source type for non-Node
- Enhancement (`mocha.js`): Sets up Mocha (and `chai` global) on test directories (via overrides)
- Enhancement (`mocha-plus.js`): Strict but reasonable rules for checking Mocha/Chai (not naming "sauron" as not bundling with Sauron)
- Enhancement (`cypress.js`): Strict but reasonable rules for checking Cypress
- Enhancement (`node.js`) [loosen]: Drop `node/global-require` as redundant with `import/no-dynamic-require`
- Enhancement (`node.js`): Based on `engines: {node}` set `env: {node: true, esX: true}` (extra ES globals as relevant to Node version), `parserOptions` `ecmaVersion`
- Enhancement (`rc.js`): Add config for using `overrides` to give Rollup and RC config files to support modules where available (and script where not)
- Enhancement (`sauron-node-overrides.js`):
- Enhancement (`sauron-node-script-overrides.js`):
- Enhancement (`sauron-node-script.js`): Use new `+script-node.js` file
- Enhancement (`sauron-overrides.js`):
- Enhancement (`sauron-script.js`):
- Lining: Dogfood our tighter modules
- npm: Bump engines to Node 10
`peerDependencies` and removes extra code) - pnpm: Switch to pnpm - npm: Bump semver; peerDeps/devDeps.
`unicorn/consistent-destructuring`
…dependents - npm: Bump to 27.0.1
* master: (39 commits)
- Fix: Avoid `postinstall` script which causes problems for non-pnpm dependents - npm: Bump to 27.0.1
- npm: Ignore pnpm lock file
- Docs: Update README per latest configs and auto-settings
- Enhancement (`index.js`) [loosen]: Disable sometimes cumbersome `unicorn/consistent-destructuring`
- Switch from `@mysticatea` to `@brettz9` fork (fixes and simplifies `peerDependencies` and removes extra code) - pnpm: Switch to pnpm - npm: Bump semver; peerDeps/devDeps.
- Enhancement (`index.js`) [loosen]: Add `shared-node-browser` env for polyglot-friendly globals (other globals specific to envrionment are not whitelisted); to actually prevent these, will now need to set `shared-node-browser` `env` to `false`. - Enhancement (`+babel.js`): Add file for wrapping a module to support equivalent babel/eslint-parser rules - Enhancement (`+script-node.js`): Add file for applying script source type with Node - Enhancement (`+script.js`): Add file for applying script source type for non-Node - Enhancement (`mocha.js`): Sets up Mocha (and `chai` global) on test directories (via overrides) - Enhancement (`mocha-plus.js`): Strict but reasonable rules for checking Mocha/Chai (not naming "sauron" as not bundling with Sauron) - Enhancement (`cypress.js`): Strict but reasonable rules for checking Cypress - Enhancement (`node.js`) [loosen]: Drop `node/global-require` as redundant with `import/no-dynamic-require` - Enhancement (`node.js`): Based on `engines: {node}` set `env: {node: true, esX: true}` (extra ES globals as relevant to Node version), `parserOptions` `ecmaVersion` - Enhancement (`rc.js`): Add config for using `overrides` to give Rollup and RC config files to support modules where available (and script where not) - Enhancement (`sauron-node-overrides.js`): - Enhancement (`sauron-node-script-overrides.js`): - Enhancement (`sauron-node-script.js`): Use new `+script-node.js` file - Enhancement (`sauron-overrides.js`): - Enhancement (`sauron-script.js`): - Lining: Dogfood our tighter modules - npm: Bump engines to Node 10
- Todo
- Linting: max-len
- Refactoring: lbs, explicit extensions, no unnecessary quotes
- npm: Update peerDeps/devDeps. - npm: Bump to 26.1.0
- Breaking enhancement: Switch from SonarJS to Radar, a maintained fork which doesn't warn when using ESLint 7 for `peerDependencies`. Changes `inherited-rules/implicitly-included/sonars-recommended.js` to `inherited-rules/implicitly-included/radar-recommended.js` - npm: Bump to 26.0.0
- Todo
- Enhancement: Enforce type on `yields` - npm: Bump to 25.1.0
- Enhancement [`index.js`] (tighten): Update new jsdoc and Unicorn rules, though disable `unicorn/no-array-for-each` - npm: Update peerDeps/devDeps. - npm: Bump to 25.0.0
- Enhancement [`great-eye.js`] (tighten): Prevent plain use of even subclassed `Promise<>` to instead use an interface where the specific resolver and rejector can be documented.
- Enhancement [`index.js`] (tighten): Uses all new Unicorn 26.0.0 rules - remark: remove remarkrc - npm: Update peerDeps/devDeps. - npm: Bump to 24.0.0
- Enhancement [`index.js`] (tighten): Add `no-nonoctal-decimal-escape` and `no-unsafe-optional-chaining` - Enhancement [`index.js`] (tighten): Add `unicorn/prefer-array-some`, `unicorn/prefer-date-now`, `unicorn/prefer-default-parameters` - Enhancement [`index.js`] (tighten): Use renamed Unicorn rules - Enhancement [`index.js`]: Avoid new Unicorn rules `no-lonely-if` and `empty-brace-spaces` - Update [`explicitly-unused.js`]: Add renamed Unicorn rules - npm: Update peerDeps/devDeps. - npm: Bump to 23.0.0
- Enhancement [`index.js`]: Add `no-nonoctal-decimal-escape` and `no-unsafe-optional-chaining` - npm: Update peerDeps/devDeps.
- Enhancement [`index.js`]: Apply latest standard; remove now unneeded `standard/no-calback-literal`, `no-negated-in-lhs` - Enhancement [`explicitly-unused.js`]: Remove disabling of `node/no-callback-literal` (rule now used) - npm: Update peerDeps/devDeps. - npm: Bump to 22.10.0
- Enhancement [`index.js`]: Add `checkDefaults`, `checkParams`, and `checkProperties` to `jsdoc/check-examples` rule - Enhancement [`great-eye.js`]: Add `unicorn/numeric-separators-style` (but disable in `index.js`) - npm: Update devDeps. - npm: Bump to 22.9.0
...
# Conflicts:
# CHANGES.md
# package-lock.json
# package.json
|
FWIW, there's another update here, which is more significant because it drops Besides reducing package size, this has the advantages:
As far as trying out passport-local, btw, I've thankfully recently found some things that have helped for my energy/health, and it is a priority for me, so I am hoping to revisit it as possible, though I can't make firm promises about it. Take care! |
|
I've been updating my own copies of passport using my ash-nazg directly to keep it linted and updated passport-local, and passport-strategy, but the latter need to be reconciled with your skeleton changes on |
FWIW, it's been a while since this has been updated.
I still need to look at rebasing my old work, and I'm only now getting back into the node-login project (which I hope can give me some experience on passport-local once I may get to it--hopefully in a couple weeks).