Skip to content

Commit

Permalink
yarn up and eslint.config.js (#215)
Browse files Browse the repository at this point in the history
  • Loading branch information
quisido committed Apr 21, 2024
1 parent e4251b0 commit 9ab9002
Show file tree
Hide file tree
Showing 275 changed files with 4,337 additions and 6,711 deletions.
21 changes: 0 additions & 21 deletions .eslintignore

This file was deleted.

62 changes: 0 additions & 62 deletions .eslintrc.cjs

This file was deleted.

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
/jest/
/sarif/
/.attach_pid*
/.eslintcache
/.pnp.*
/yarn-error.log
.idea/
Expand Down
7 changes: 5 additions & 2 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"editor.tabSize": 2,
"eslint.experimental.useFlatConfig": false,
"eslint.nodePath": ".yarn/sdks",
"eslint.runtime": "node",
"eslint.useFlatConfig": true,
"files.eol": "\n",
"javascript.preferences.importModuleSpecifierEnding": "js",
"prettier.configPath": ".prettierrc.json",
Expand All @@ -21,10 +21,12 @@
".yarn/install-state.gz": true,
"jest/": true,
"node_modules/": true,
"packages/": true,
"sarif/": true,
".eslintcache": true,
".pnp.cjs": true,
".pnp.loader.mjs": true,
"packages/": true,
"jest.config.cjs": true,
"yarn.lock": true
},
"search.exclude": {
Expand All @@ -44,6 +46,7 @@
"**/node_modules/": true,
"**/sarif/": true,
"**/.attach_pid*": true,
"**/.eslintcache": true,
"**/.yarn": true,
"**/.pnp.*": true,
"**/*.cpuprofile": true,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
diff --git a/index.d.ts b/index.d.ts
index 756a025eb97d7d2819e3688bb16f5118432f7921..eeaa95025d08dc5b44f4e865e4b89006637ddc5c 100644
--- a/index.d.ts
+++ b/index.d.ts
@@ -1,13 +1,4 @@
-import type {
- ClassicConfig,
- FlatConfig,
-} from '@typescript-eslint/utils/ts-eslint';
+import { ESLint } from 'eslint';

-import type rules from './rules';
-
-declare const cjsExport: {
- configs: Record<string, ClassicConfig.Config>;
- meta: FlatConfig.PluginMeta;
- rules: typeof rules;
-};
+declare const cjsExport: ESLint.Plugin;
export = cjsExport;
85 changes: 85 additions & 0 deletions .yarn/patches/typescript-eslint-npm-7.7.0-1c6d9ccc41.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
diff --git a/dist/index.d.ts b/dist/index.d.ts
index 80759b35992c79d624cf5d7471aae005948aab61..6fc39dde152c5b42a578ac55f14680dd53758c58 100644
--- a/dist/index.d.ts
+++ b/dist/index.d.ts
@@ -1,41 +1,41 @@
-import type { TSESLint } from '@typescript-eslint/utils';
+import { ESLint, Linter } from 'eslint';
import type { ConfigWithExtends } from './config-helper';
import { config } from './config-helper';
-declare const parser: TSESLint.FlatConfig.Parser;
-declare const plugin: TSESLint.FlatConfig.Plugin;
+declare const parser: Linter.ParserModule;
+declare const plugin: ESLint.Plugin;
declare const configs: {
- all: TSESLint.FlatConfig.ConfigArray;
- base: TSESLint.FlatConfig.Config;
- disableTypeChecked: TSESLint.FlatConfig.Config;
- eslintRecommended: TSESLint.FlatConfig.Config;
- recommended: TSESLint.FlatConfig.ConfigArray;
- recommendedTypeChecked: TSESLint.FlatConfig.ConfigArray;
- recommendedTypeCheckedOnly: TSESLint.FlatConfig.ConfigArray;
- strict: TSESLint.FlatConfig.ConfigArray;
- strictTypeChecked: TSESLint.FlatConfig.ConfigArray;
- strictTypeCheckedOnly: TSESLint.FlatConfig.ConfigArray;
- stylistic: TSESLint.FlatConfig.ConfigArray;
- stylisticTypeChecked: TSESLint.FlatConfig.ConfigArray;
- stylisticTypeCheckedOnly: TSESLint.FlatConfig.ConfigArray;
+ all: Linter.FlatConfig[];
+ base: Linter.FlatConfig;
+ disableTypeChecked: Linter.FlatConfig;
+ eslintRecommended: Linter.FlatConfig;
+ recommended: Linter.FlatConfig[];
+ recommendedTypeChecked: Linter.FlatConfig[];
+ recommendedTypeCheckedOnly: Linter.FlatConfig[];
+ strict: Linter.FlatConfig[];
+ strictTypeChecked: Linter.FlatConfig[];
+ strictTypeCheckedOnly: Linter.FlatConfig[];
+ stylistic: Linter.FlatConfig[];
+ stylisticTypeChecked: Linter.FlatConfig[];
+ stylisticTypeCheckedOnly: Linter.FlatConfig[];
};
-export type Config = TSESLint.FlatConfig.ConfigFile;
+export type Config = Linter.FlatConfig;
export type { ConfigWithExtends };
declare const _default: {
config: typeof config;
configs: {
- all: TSESLint.FlatConfig.ConfigArray;
- base: TSESLint.FlatConfig.Config;
- disableTypeChecked: TSESLint.FlatConfig.Config;
- eslintRecommended: TSESLint.FlatConfig.Config;
- recommended: TSESLint.FlatConfig.ConfigArray;
- recommendedTypeChecked: TSESLint.FlatConfig.ConfigArray;
- recommendedTypeCheckedOnly: TSESLint.FlatConfig.ConfigArray;
- strict: TSESLint.FlatConfig.ConfigArray;
- strictTypeChecked: TSESLint.FlatConfig.ConfigArray;
- strictTypeCheckedOnly: TSESLint.FlatConfig.ConfigArray;
- stylistic: TSESLint.FlatConfig.ConfigArray;
- stylisticTypeChecked: TSESLint.FlatConfig.ConfigArray;
- stylisticTypeCheckedOnly: TSESLint.FlatConfig.ConfigArray;
+ all: Linter.FlatConfig[];
+ base: Linter.FlatConfig;
+ disableTypeChecked: Linter.FlatConfig;
+ eslintRecommended: Linter.FlatConfig;
+ recommended: Linter.FlatConfig[];
+ recommendedTypeChecked: Linter.FlatConfig[];
+ recommendedTypeCheckedOnly: Linter.FlatConfig[];
+ strict: Linter.FlatConfig[];
+ strictTypeChecked: Linter.FlatConfig[];
+ strictTypeCheckedOnly: Linter.FlatConfig[];
+ stylistic: Linter.FlatConfig[];
+ stylisticTypeChecked: Linter.FlatConfig[];
+ stylisticTypeCheckedOnly: Linter.FlatConfig[];
};
parser: {
meta?: {
@@ -49,7 +49,7 @@ declare const _default: {
visitorKeys?: unknown;
};
};
- plugin: TSESLint.FlatConfig.Plugin;
+ plugin: ESLint.Plugin;
};
export default _default;
export { config, configs, parser, plugin };
9 changes: 9 additions & 0 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import configs from '@quisido/eslint-config';

/** @type {readonly import('eslint').Linter.FlatConfig[]} */
export default [
...configs,
{
ignores: ['packages/**'],
},
];
2 changes: 2 additions & 0 deletions jest.config.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
require('cjs-ts');
module.exports = require('./jest.config.ts').default;
5 changes: 3 additions & 2 deletions jest.config.js → jest.config.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
/** @type {import('jest').Config} */
import type { Config } from 'jest';

export default {
cacheDirectory: './jest/cache',
collectCoverage: true,
Expand Down Expand Up @@ -27,4 +28,4 @@ export default {
resetModules: true,
restoreMocks: true,
roots: ['<rootDir>'],
};
} satisfies Config;
42 changes: 26 additions & 16 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,13 @@
"cloudflare-analytics": "yarn packages/cloudflare-analytics run dev",
"cloudflare-analytics:init": "yarn packages/cloudflare-analytics run init",
"dev": "echo \"Please use either `yarn run authn` or `yarn run next` instead.\" && exit 1",
"eslint": "eslint '**/*' --format @microsoft/eslint-formatter-sarif --output-file ./sarif/index.sarif",
"eslint:fix": "eslint '**/*' --fix",
"eslint": "eslint . --cache --color --exit-on-fatal-error --format @microsoft/eslint-formatter-sarif --max-warnings 0 --output-file ./sarif/index.sarif --stats || (echo \"ESLint failed.\" && exit 1)",
"eslint:fix": "eslint . --cache --color --exit-on-fatal-error --fix --max-warnings 0",
"export": "yarn packages/next run export",
"init": "yarn packages/authn run local:init",
"info": "yarn packages/next run info",
"jest": "jest",
"jest": "jest --config jest.config.cjs",
"jest:watch": "jest --config jest.config.cjs --watch",
"lighthouse": "yarn packages/next run lighthouse",
"next": "yarn packages/next run dev",
"pack:dry-run": "yarn workspaces foreach --all --exclude \"@quisi/do\" --interlaced --jobs unlimited --parallel --topological-dev --verbose pack --dry-run",
Expand All @@ -45,41 +46,50 @@
"serve": "yarn packages/next run serve",
"start": "echo \"Please use either `yarn run dev` or `yarn run serve` instead.\" && exit 1",
"test": "monorepo-template-test",
"up": "yarn up \"@!(monorepo-template|quisido)/*\" \"!(aws-rum-react|cjs-ts|fmrs|fullstory-react|lazy-i18n|mock-next-router|number-format-react|react-datadog|sentry-react|unknown2string|use-shallow-memo)\" && yarn up --recursive \"@*/*\" \"*\" && yarn sdks vscode",
"up": "yarn up \"@!(monorepo-template|quisido)/*\" \"!(aws-rum-react|cjs-ts|fmrs|fullstory-react|lazy-i18n|mock-next-router|number-format-react|proposal-async-context|react-datadog|sentry-react|unknown2string|use-shallow-memo)\" && yarn up --recursive \"@*/*\" \"*\" && yarn sdks vscode",
"whoami": "yarn packages/whoami run dev"
},
"workspaces": [
"packages/*"
],
"devDependencies": {
"@babel/core": "^7.24.0",
"@babel/preset-env": "^7.24.0",
"@babel/preset-typescript": "^7.23.3",
"@microsoft/eslint-formatter-sarif": "^3.0.0",
"@babel/core": "^7.24.4",
"@babel/preset-env": "^7.24.4",
"@babel/preset-typescript": "^7.24.1",
"@eslint/js": "^9.1.1",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@monorepo-template/eslint-config": "^1.0.7",
"@monorepo-template/test": "workspace:^",
"@quisido/eslint-config": "workspace:^",
"@types/babel__core": "^7.20.5",
"@types/babel__preset-env": "^7.9.6",
"@types/eslint": "^8.56.10",
"@types/eslint__js": "^8.42.3",
"@types/jest": "^29.5.12",
"@types/node": "^20.11.28",
"@typescript-eslint/eslint-plugin": "^7.2.0",
"@typescript-eslint/parser": "^7.2.0",
"@types/node": "^20.12.7",
"@typescript-eslint/eslint-plugin": "patch:@typescript-eslint/eslint-plugin@npm%3A7.7.0#~/.yarn/patches/@typescript-eslint-eslint-plugin-npm-7.7.0-de43f1e757.patch",
"@typescript-eslint/parser": "^7.7.0",
"@yarnpkg/sdks": "^3.1.0",
"babel-jest": "^29.7.0",
"babel-plugin-replace-import-extension": "^1.1.4",
"browserslist": "^4.23.0",
"cjs-ts": "workspace:^",
"concurrently": "^8.2.2",
"dd-trace": "^5.6.0",
"eslint": "^8.57.0",
"dd-trace": "^5.10.0",
"eslint": "^9.1.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.0",
"eslint-plugin-react": "^7.34.1",
"jest": "^29.7.0",
"prettier": "^3.2.5",
"typescript": "^5.4.2"
"typescript": "^5.4.5",
"typescript-eslint": "patch:typescript-eslint@npm%3A7.7.0#~/.yarn/patches/typescript-eslint-npm-7.7.0-1c6d9ccc41.patch"
},
"resolutions": {
"buildcheck@npm:~0.0.6": "patch:buildcheck@npm%3A0.0.6#~/.yarn/patches/buildcheck-npm-0.0.6-46e0f23ecf.patch",
"@sentry/types@npm:7.107.0": "patch:@sentry/types@npm%3A7.107.0#~/.yarn/patches/@sentry-types-npm-7.107.0-a994f84978.patch",
"@sentry/types@npm:6.19.7": "patch:@sentry/types@npm%3A7.107.0#~/.yarn/patches/@sentry-types-npm-7.107.0-a994f84978.patch"
"@sentry/types@npm:6.19.7": "patch:@sentry/types@npm%3A7.107.0#~/.yarn/patches/@sentry-types-npm-7.107.0-a994f84978.patch",
"@typescript-eslint/eslint-plugin@npm:^5.45.0": "patch:@typescript-eslint/eslint-plugin@npm%3A7.7.0#~/.yarn/patches/@typescript-eslint-eslint-plugin-npm-7.7.0-de43f1e757.patch",
"@typescript-eslint/eslint-plugin@npm:7.7.0": "patch:@typescript-eslint/eslint-plugin@npm%3A7.7.0#~/.yarn/patches/@typescript-eslint-eslint-plugin-npm-7.7.0-de43f1e757.patch"
}
}
14 changes: 9 additions & 5 deletions package.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,7 @@ const mapWorkspaceToPackage = (workspace: string): unknown => {
const publicPackageNames: readonly string[] = readdirSync('packages')
.map(mapWorkspaceToPackage)
.filter(isPublic)
.map(mapToName)
.sort();
.map(mapToName);

describe('package.json', (): void => {
describe('scripts', (): void => {
Expand All @@ -50,10 +49,15 @@ describe('package.json', (): void => {
* copy as the source of truth.
*/
it('should not upgrade workspaces', (): void => {
const scopes = Array.from(
const scopes: readonly string[] = Array.from(
new Set(publicPackageNames.filter(isScoped).map(mapToScope)),
);
const unscopedPackageNames = publicPackageNames.filter(isUnscoped);
).sort();

const unscopedPackageNames: readonly string[] = [
...publicPackageNames.filter(isUnscoped),
'proposal-async-context',
].sort();

expect(up).toMatch(
[
`yarn up "@!(${scopes.join('|')})/*" "!(${unscopedPackageNames.join(
Expand Down
8 changes: 0 additions & 8 deletions packages/authn-shared/.eslintignore

This file was deleted.

0 comments on commit 9ab9002

Please sign in to comment.