Skip to content

Commit f7fd5fc

Browse files
authored
Switch to tshy, vitest & Biome (#1596)
1 parent b3f14ec commit f7fd5fc

32 files changed

+2542
-4414
lines changed

.eslintignore

Lines changed: 0 additions & 3 deletions
This file was deleted.

.eslintrc.json

Lines changed: 0 additions & 69 deletions
This file was deleted.

.github/workflows/nodejs-test.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ jobs:
3838
fail-fast: false
3939
matrix:
4040
node:
41-
- 16
4241
- 18
4342
- 20
43+
- 22
4444
- lts/*
4545

4646
steps:
@@ -54,11 +54,11 @@ jobs:
5454
- run: npm run build --if-present
5555

5656
- name: Run Jest
57-
run: npm run test:jest
57+
run: npm run test:vi
5858
if: matrix.node != env.NODE_COV
5959

6060
- name: Run Jest with coverage
61-
run: npm run test:jest -- --coverage
61+
run: npm run test:vi -- --coverage
6262
if: matrix.node == env.NODE_COV
6363

6464
- name: Run Coveralls

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,6 @@
22
node_modules/
33
coverage/
44
lib/
5+
dist/
6+
.tshy/
7+
.tshy-build/

.prettierignore

Lines changed: 0 additions & 3 deletions
This file was deleted.

biome.json

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
{
2+
"$schema": "https://biomejs.dev/schemas/2.0.6/schema.json",
3+
"vcs": { "enabled": true, "clientKind": "git", "useIgnoreFile": true },
4+
"files": { "ignoreUnknown": false },
5+
"formatter": {
6+
"enabled": true,
7+
"indentStyle": "space",
8+
"indentWidth": 4
9+
},
10+
"linter": {
11+
"enabled": true,
12+
"rules": {
13+
"recommended": false,
14+
"complexity": {
15+
"noAdjacentSpacesInRegex": "error",
16+
"noExtraBooleanCast": "error",
17+
"noUselessCatch": "error",
18+
"noUselessEscapeInRegex": "error",
19+
"useArrowFunction": "error"
20+
},
21+
"correctness": {
22+
"noConstAssign": "error",
23+
"noConstantCondition": "error",
24+
"noEmptyCharacterClassInRegex": "error",
25+
"noEmptyPattern": "error",
26+
"noGlobalObjectCalls": "error",
27+
"noInnerDeclarations": "error",
28+
"noInvalidConstructorSuper": "error",
29+
"noInvalidUseBeforeDeclaration": "error",
30+
"noNonoctalDecimalEscape": "error",
31+
"noPrecisionLoss": "error",
32+
"noSelfAssign": "error",
33+
"noSetterReturn": "error",
34+
"noSwitchDeclarations": "error",
35+
"noUndeclaredVariables": "error",
36+
"noUnreachable": "error",
37+
"noUnreachableSuper": "error",
38+
"noUnsafeFinally": "error",
39+
"noUnsafeOptionalChaining": "error",
40+
"noUnusedLabels": "error",
41+
"noUnusedVariables": "error",
42+
"useIsNan": "error",
43+
"useValidForDirection": "error",
44+
"useValidTypeof": "error",
45+
"useYield": "error"
46+
},
47+
"nursery": {
48+
"noUselessBackrefInRegex": "error",
49+
"useConsistentObjectDefinition": "error",
50+
"useExhaustiveSwitchCases": "error",
51+
"useReadonlyClassProperties": "error"
52+
},
53+
"style": {
54+
"noUselessElse": "error",
55+
"noYodaExpression": "error",
56+
"useBlockStatements": "error",
57+
"useConst": "error",
58+
"useImportType": {
59+
"level": "error",
60+
"options": { "style": "inlineType" }
61+
},
62+
"useShorthandFunctionType": "error",
63+
"useSingleVarDeclarator": "error",
64+
"useTemplate": "error"
65+
},
66+
"suspicious": {
67+
"noAssignInExpressions": "error",
68+
"noAsyncPromiseExecutor": "error",
69+
"noCatchAssign": "error",
70+
"noClassAssign": "error",
71+
"noCompareNegZero": "error",
72+
"noControlCharactersInRegex": "error",
73+
"noDebugger": "error",
74+
"noDoubleEquals": "error",
75+
"noDuplicateCase": "error",
76+
"noDuplicateClassMembers": "error",
77+
"noDuplicateElseIf": "error",
78+
"noDuplicateObjectKeys": "error",
79+
"noDuplicateParameters": "error",
80+
"noEmptyBlockStatements": "error",
81+
"noFallthroughSwitchClause": "error",
82+
"noFunctionAssign": "error",
83+
"noGlobalAssign": "error",
84+
"noImportAssign": "error",
85+
"noIrregularWhitespace": "error",
86+
"noMisleadingCharacterClass": "error",
87+
"noPrototypeBuiltins": "error",
88+
"noRedeclare": "error",
89+
"noShadowRestrictedNames": "error",
90+
"noSparseArray": "error",
91+
"noUnsafeNegation": "error",
92+
"noVar": "error",
93+
"noWith": "error",
94+
"useGetterReturn": "error"
95+
}
96+
}
97+
},
98+
"overrides": [
99+
{
100+
"includes": ["**/*.test.ts", "**/*.spec.ts", "test/**/*.ts"],
101+
"javascript": {
102+
"globals": [
103+
"jest",
104+
"describe",
105+
"it",
106+
"beforeEach",
107+
"afterEach",
108+
"expect"
109+
]
110+
}
111+
}
112+
],
113+
114+
"html": { "formatter": { "selfCloseVoidElements": "always" } },
115+
"assist": {
116+
"enabled": true,
117+
"actions": { "source": { "organizeImports": "on" } }
118+
}
119+
}

0 commit comments

Comments
 (0)