diff --git a/lint/eslintrc-gjs.yml b/lint/eslintrc-gjs.yml index 13114fa7e..ba6c51031 100644 --- a/lint/eslintrc-gjs.yml +++ b/lint/eslintrc-gjs.yml @@ -1,8 +1,12 @@ --- # SPDX-License-Identifier: MIT OR LGPL-2.0-or-later +# SPDX-FileCopyrightText: 2018 Claudio André env: es6: true + es2020: true extends: 'eslint:recommended' +plugins: + - jsdoc rules: array-bracket-newline: - error @@ -60,6 +64,17 @@ rules: - 'CallExpression[callee.object.name=GObject][callee.property.name=registerClass] > ClassExpression:first-child' # Allow dedenting chained member expressions MemberExpression: 'off' + jsdoc/check-alignment: error + jsdoc/check-param-names: error + jsdoc/check-tag-names: error + jsdoc/check-types: error + jsdoc/implements-on-classes: error + jsdoc/newline-after-description: error + jsdoc/require-jsdoc: error + jsdoc/require-param: error + jsdoc/require-param-description: error + jsdoc/require-param-name: error + jsdoc/require-param-type: error key-spacing: - error - beforeColon: false @@ -107,6 +122,7 @@ rules: no-octal-escape: error no-proto: error no-prototype-builtins: 'off' + no-restricted-globals: [error, window] no-restricted-properties: - error - object: Lang @@ -167,6 +183,7 @@ rules: object-curly-newline: - error - consistent: true + multiline: true object-curly-spacing: error object-shorthand: error operator-assignment: error @@ -214,14 +231,14 @@ rules: template-curly-spacing: error template-tag-spacing: error unicode-bom: error - valid-jsdoc: - - error - - requireReturn: false wrap-iife: - error - inside yield-star-spacing: error yoda: error +settings: + jsdoc: + mode: typescript globals: ARGV: readonly Debugger: readonly @@ -233,5 +250,8 @@ globals: logError: readonly print: readonly printerr: readonly + window: readonly + TextEncoder: readonly + TextDecoder: readonly parserOptions: ecmaVersion: 2020 diff --git a/lint/eslintrc-legacy.yml b/lint/eslintrc-legacy.yml index 55e9a2bb8..8441f7c2d 100644 --- a/lint/eslintrc-legacy.yml +++ b/lint/eslintrc-legacy.yml @@ -10,5 +10,19 @@ rules: ArrayExpression: first ObjectExpression: first MemberExpression: off + jsdoc/check-alignment: off + jsdoc/check-param-names: off + jsdoc/check-tag-names: off + jsdoc/check-types: off + jsdoc/implements-on-classes: off + jsdoc/newline-after-description: off + jsdoc/require-jsdoc: off + jsdoc/require-param: off + jsdoc/require-param-description: off + jsdoc/require-param-name: off + jsdoc/require-param-type: off + object-curly-newline: + - error + - consistent: true prefer-template: off quotes: off