[gnome-shell] eslint: (Mostly) synchronize configuration with gjs
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] eslint: (Mostly) synchronize configuration with gjs
- Date: Tue, 24 Aug 2021 08:17:45 +0000 (UTC)
commit bf5129adc121c0292209bc3fc6ce1dc068fae89e
Author: Florian Müllner <fmuellner gnome org>
Date: Thu Aug 12 17:12:15 2021 +0200
eslint: (Mostly) synchronize configuration with gjs
In addition to the changes in this commit, gjs now
restricts the use of the Format module and initFormat.
We can't really replace those for translatable strings
until xgettext gains support for template strings, so
leave that bit out for now.
The other notable change is that gjs now requires
jsdoc comments. We can't plainly enable those options
without a massive amount of work first, but let's see
how requiring doc comments for new code goes.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1949>
lint/eslintrc-gjs.yml | 26 +++++++++++++++++++++++---
lint/eslintrc-legacy.yml | 14 ++++++++++++++
2 files changed, 37 insertions(+), 3 deletions(-)
---
diff --git a/lint/eslintrc-gjs.yml b/lint/eslintrc-gjs.yml
index 13114fa7e2..ba6c510314 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é <claudioandre br gmail com>
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 55e9a2bb85..8441f7c2d5 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
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]