Skip to content

Commit a5ffd7e

Browse files
committed
Merge remote-tracking branch 'origin/main' into fix/property-with-context-sensitive-return-statement
2 parents 0a5da2f + acf854b commit a5ffd7e

File tree

6,821 files changed

+1151724
-1326834
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

6,821 files changed

+1151724
-1326834
lines changed

.devcontainer/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44
ARG VARIANT="14-buster"
55
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:0-${VARIANT}
66

7-
RUN sudo -u node npm install -g gulp-cli
7+
RUN sudo -u node npm install -g hereby

.dockerignore

-47
This file was deleted.

.eslintignore

-22
This file was deleted.

.eslintplugin.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ const fs = require("fs");
22
const path = require("path");
33

44
const rulesDir = path.join(__dirname, "scripts", "eslint", "rules");
5-
const ext = ".js";
5+
const ext = ".cjs";
66
const ruleFiles = fs.readdirSync(rulesDir).filter((p) => p.endsWith(ext));
77

88
module.exports = {

.eslintrc.json

+55-18
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
2+
"root": true,
23
"parser": "@typescript-eslint/parser",
34
"parserOptions": {
45
"warnOnUnsupportedTypeScriptVersion": false,
5-
"ecmaVersion": 6,
66
"sourceType": "module"
77
},
88
"env": {
@@ -11,22 +11,29 @@
1111
"es6": true
1212
},
1313
"plugins": [
14-
"@typescript-eslint", "jsdoc", "no-null", "import", "eslint-plugin-local"
14+
"@typescript-eslint", "no-null", "import", "eslint-plugin-local"
1515
],
16-
"overrides": [
17-
// By default, the ESLint CLI only looks at .js files. But, it will also look at
18-
// any files which are referenced in an override config. Most users of typescript-eslint
19-
// get this behavior by default by extending a recommended typescript-eslint config, which
20-
// just so happens to override some core ESLint rules. We don't extend from any config, so
21-
// explicitly reference TS files here so the CLI picks them up.
22-
//
23-
// ESLint in VS Code will lint any opened file (so long as it's not eslintignore'd), so
24-
// that will work regardless of the below.
25-
{ "files": ["*.ts", "*.mts", "*.cts", "*.mjs", "*.cjs"] }
16+
"ignorePatterns": [
17+
"**/node_modules/**",
18+
"/built/**",
19+
"/tests/**",
20+
"/lib/**",
21+
"/src/lib/*.generated.d.ts",
22+
"/scripts/**/*.js",
23+
"/scripts/**/*.d.*",
24+
"/internal/**",
25+
"/coverage/**"
2626
],
2727
"rules": {
28+
"sort-imports": ["error", {
29+
"ignoreCase": true,
30+
"ignoreDeclarationSort": true,
31+
"allowSeparatedGroups": true
32+
}],
33+
2834
"@typescript-eslint/adjacent-overload-signatures": "error",
2935
"@typescript-eslint/array-type": "error",
36+
"@typescript-eslint/no-array-constructor": "error",
3037

3138
"brace-style": "off",
3239
"@typescript-eslint/brace-style": ["error", "stroustrup", { "allowSingleLine": true }],
@@ -62,12 +69,14 @@
6269
"@typescript-eslint/prefer-for-of": "error",
6370
"@typescript-eslint/prefer-function-type": "error",
6471
"@typescript-eslint/prefer-namespace-keyword": "error",
72+
"@typescript-eslint/prefer-as-const": "error",
6573

6674
"quotes": "off",
6775
"@typescript-eslint/quotes": ["error", "double", { "avoidEscape": true, "allowTemplateLiterals": true }],
6876

6977
"semi": "off",
7078
"@typescript-eslint/semi": "error",
79+
"@typescript-eslint/no-extra-semi": "error",
7180

7281
"space-before-function-paren": "off",
7382
"@typescript-eslint/space-before-function-paren": ["error", {
@@ -80,6 +89,8 @@
8089
"@typescript-eslint/type-annotation-spacing": "error",
8190
"@typescript-eslint/unified-signatures": "error",
8291

92+
"@typescript-eslint/no-extra-non-null-assertion": "error",
93+
8394
// scripts/eslint/rules
8495
"local/object-literal-surrounding-space": "error",
8596
"local/no-type-assertion-whitespace": "error",
@@ -94,17 +105,14 @@
94105
"local/simple-indent": "error",
95106
"local/debug-assert": "error",
96107
"local/no-keywords": "error",
97-
"local/one-namespace-per-file": "error",
108+
"local/jsdoc-format": "error",
98109

99110
// eslint-plugin-import
100111
"import/no-extraneous-dependencies": ["error", { "optionalDependencies": false }],
101112

102113
// eslint-plugin-no-null
103114
"no-null/no-null": "error",
104115

105-
// eslint-plugin-jsdoc
106-
"jsdoc/check-alignment": "error",
107-
108116
// eslint
109117
"constructor-super": "error",
110118
"curly": ["error", "multi-line"],
@@ -143,6 +151,35 @@
143151
"quote-props": ["error", "consistent-as-needed"],
144152
"space-in-parens": "error",
145153
"unicode-bom": ["error", "never"],
146-
"use-isnan": "error"
147-
}
154+
"use-isnan": "error",
155+
"no-prototype-builtins": "error",
156+
"no-self-assign": "error",
157+
"no-dupe-else-if": "error"
158+
},
159+
"overrides": [
160+
// By default, the ESLint CLI only looks at .js files. But, it will also look at
161+
// any files which are referenced in an override config. Most users of typescript-eslint
162+
// get this behavior by default by extending a recommended typescript-eslint config, which
163+
// just so happens to override some core ESLint rules. We don't extend from any config, so
164+
// explicitly reference TS files here so the CLI picks them up.
165+
//
166+
// ESLint in VS Code will lint any opened file (so long as it's not eslintignore'd), so
167+
// that will work regardless of the below.
168+
//
169+
// The same applies to mjs files; ESLint appears to not scan those either.
170+
{ "files": ["*.ts", "*.mts", "*.cts", "*.mjs", "*.cjs"] },
171+
{
172+
"files": ["*.mjs", "*.mts"],
173+
"rules": {
174+
// These globals don't exist outside of CJS files.
175+
"no-restricted-globals": ["error",
176+
{ "name": "__filename" },
177+
{ "name": "__dirname" },
178+
{ "name": "require" },
179+
{ "name": "module" },
180+
{ "name": "exports" }
181+
]
182+
}
183+
}
184+
]
148185
}

.git-blame-ignore-revs

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Generated module conversion step - inlineImports
2+
07758c08ab72481885e662c98d67a0e3a071b032
3+
# Generated module conversion step - stripNamespaces
4+
b6c053882696af8ddd94a600429f30584d303d7f
5+
# Generated module conversion step - explicitify
6+
9a0b85ce2a3f85f498ab2c05474b4c0b96b111c9
7+
# Generated module conversion step - unindent
8+
94724a8c2e68a4c7e267072ca79971f317c45e4a
+5-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
name : CodeQL Configuration
22

33
paths:
4-
- './src'
4+
- src
5+
- scripts
6+
- Herebyfile.mjs
7+
paths-ignore:
8+
- src/lib

0 commit comments

Comments
 (0)