Skip to content

Commit f902b3d

Browse files
authored
build: refactor project configurations (liaoliaots#556)
1 parent ba8482c commit f902b3d

38 files changed

+1430
-1050
lines changed

.editorconfig

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

.github/workflows/publish.yaml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,17 @@ name: Publish
22
on: workflow_dispatch
33
jobs:
44
build:
5-
runs-on: ubuntu-22.04
5+
runs-on: ubuntu-24.04
66
steps:
7-
- name: Checkout
8-
uses: actions/checkout@v4
7+
- uses: actions/checkout@v4
98
- name: Setup pnpm
109
uses: pnpm/action-setup@v4
1110
with:
1211
version: 9
1312
- name: Setup node
1413
uses: actions/setup-node@v4
1514
with:
16-
node-version: 20
15+
node-version: 22
1716
check-latest: true
1817
architecture: x64
1918
registry-url: 'https://registry.npmjs.org'

.github/workflows/testing.yaml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,18 @@ on:
55
- main
66
jobs:
77
test:
8-
name: Node.js 20
9-
runs-on: ubuntu-22.04
8+
name: Node.js 22 'Jod' (LTS)
9+
runs-on: ubuntu-24.04
1010
steps:
11-
- name: Checkout
12-
uses: actions/checkout@v4
11+
- uses: actions/checkout@v4
1312
- name: Setup pnpm
1413
uses: pnpm/action-setup@v4
1514
with:
1615
version: 9
1716
- name: Setup node
1817
uses: actions/setup-node@v4
1918
with:
20-
node-version: 20
19+
node-version: 22
2120
check-latest: true
2221
architecture: x64
2322
cache: 'pnpm'

compose.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,16 @@ services:
55
image: redis/redis-stack-server:latest
66
network_mode: host
77
environment:
8-
- 'REDIS_ARGS=--port 6380 --requirepass myredis'
8+
- 'REDIS_ARGS=--port 6380 --requirepass myredis --appendonly yes'
99
cluster-m1:
1010
image: redis:latest
1111
network_mode: host
12-
command: 'redis-server --port 7380 --requirepass mycluster --cluster-enabled yes --cluster-config-file nodes.conf'
12+
command: 'redis-server --port 7380 --requirepass mycluster --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes'
1313
cluster-m2:
1414
image: redis:latest
1515
network_mode: host
16-
command: 'redis-server --port 7381 --requirepass mycluster --cluster-enabled yes --cluster-config-file nodes.conf'
16+
command: 'redis-server --port 7381 --requirepass mycluster --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes'
1717
cluster-m3:
1818
image: redis:latest
1919
network_mode: host
20-
command: 'redis-server --port 7382 --requirepass mycluster --cluster-enabled yes --cluster-config-file nodes.conf'
20+
command: 'redis-server --port 7382 --requirepass mycluster --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes'

eslint.config.mjs

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,45 @@
1+
// @ts-check
12
import eslint from '@eslint/js';
23
import tseslint from 'typescript-eslint';
34
import globals from 'globals';
4-
import prettierPlugin from 'eslint-plugin-prettier/recommended';
5-
// @ts-ignore
5+
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended';
66
import jest from 'eslint-plugin-jest';
77

8-
const jestFiles = ['packages/*/test/**/*', 'packages/*/lib/**/*.spec.ts'];
9-
8+
const jestFiles = ['**/*.e2e-spec.ts', '**/*.spec.ts'];
109
export default tseslint.config(
1110
{
12-
ignores: ['eslint.config.mjs', 'packages/*/dist/', 'packages/*/*.mjs', 'packages/global.d.ts']
11+
ignores: ['packages/global.d.ts', '**/dist/', '**/*.mjs']
1312
},
1413
eslint.configs.recommended,
15-
...tseslint.configs.recommendedTypeChecked,
16-
...tseslint.configs.stylisticTypeChecked,
14+
tseslint.configs.recommendedTypeChecked,
15+
tseslint.configs.stylisticTypeChecked,
1716
{
1817
files: jestFiles,
19-
...jest.configs['flat/recommended']
18+
...jest.configs['flat/recommended'],
19+
languageOptions: {
20+
globals: globals.jest
21+
}
2022
},
2123
{
2224
files: jestFiles,
23-
...jest.configs['flat/style']
25+
...jest.configs['flat/style'],
26+
languageOptions: {
27+
globals: globals.jest
28+
}
2429
},
25-
prettierPlugin,
30+
eslintPluginPrettierRecommended,
2631
{
32+
linterOptions: {
33+
reportUnusedDisableDirectives: 'error'
34+
},
2735
languageOptions: {
2836
globals: {
29-
...globals.node,
30-
...globals.jest
37+
...globals.node
3138
},
3239
parserOptions: {
33-
ecmaVersion: 'latest',
3440
projectService: true,
3541
tsconfigRootDir: import.meta.dirname
3642
}
37-
},
38-
linterOptions: {
39-
reportUnusedDisableDirectives: true
4043
}
4144
}
4245
);

package.json

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -9,37 +9,36 @@
99
"prepare": "husky"
1010
},
1111
"devDependencies": {
12-
"@commitlint/cli": "19.5.0",
13-
"@commitlint/config-conventional": "19.5.0",
14-
"@eslint/js": "9.11.1",
15-
"@nestjs/common": "10.4.4",
16-
"@nestjs/core": "10.4.4",
17-
"@nestjs/platform-fastify": "10.4.4",
18-
"@nestjs/testing": "10.4.4",
19-
"@tsconfig/node20": "20.1.4",
12+
"@commitlint/cli": "19.6.0",
13+
"@commitlint/config-conventional": "19.6.0",
14+
"@eslint/js": "9.17.0",
15+
"@nestjs/common": "10.4.15",
16+
"@nestjs/core": "10.4.15",
17+
"@nestjs/platform-fastify": "10.4.15",
18+
"@nestjs/testing": "10.4.15",
2019
"@types/eslint__js": "8.42.3",
21-
"@types/jest": "29.5.13",
22-
"@types/node": "20.16.7",
23-
"concurrently": "9.0.1",
24-
"eslint": "9.11.1",
20+
"@types/jest": "29.5.14",
21+
"@types/node": "22.10.2",
22+
"concurrently": "9.1.0",
23+
"eslint": "9.17.0",
2524
"eslint-config-prettier": "9.1.0",
26-
"eslint-plugin-jest": "28.8.3",
25+
"eslint-plugin-jest": "28.9.0",
2726
"eslint-plugin-prettier": "5.2.1",
2827
"fastify": "4.28.1",
29-
"globals": "15.9.0",
30-
"husky": "9.1.6",
28+
"globals": "15.13.0",
29+
"husky": "9.1.7",
3130
"istanbul-badges-readme": "1.9.0",
3231
"jest": "29.7.0",
3332
"jest-extended": "4.0.2",
34-
"lint-staged": "15.2.10",
35-
"prettier": "3.3.3",
33+
"lint-staged": "15.2.11",
34+
"prettier": "3.4.2",
3635
"reflect-metadata": "0.2.2",
3736
"rimraf": "6.0.1",
3837
"rxjs": "7.8.1",
3938
"ts-jest": "29.2.5",
4039
"tsc-alias": "1.8.10",
41-
"typescript": "5.6.2",
42-
"typescript-eslint": "8.7.0"
40+
"typescript": "5.7.2",
41+
"typescript-eslint": "8.18.0"
4342
},
4443
"engines": {
4544
"node": ">=20",

packages/node-redis/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,15 @@
3939
"publish:rc": "npm publish --tag rc"
4040
},
4141
"dependencies": {
42-
"tslib": "2.7.0"
42+
"tslib": "2.8.1"
4343
},
4444
"peerDependencies": {
4545
"@nestjs/common": "^10.0.0",
4646
"@nestjs/core": "^10.0.0",
4747
"redis": "^4.1.0"
4848
},
4949
"engines": {
50-
"node": ">=16.13.0"
50+
"node": ">=16"
5151
},
5252
"publishConfig": {
5353
"access": "public"

packages/redis-health/package.json

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,15 @@
1313
"keywords": [
1414
"redis",
1515
"ioredis",
16+
"node-redis",
1617
"cluster",
1718
"nestjs",
1819
"nest",
1920
"nodejs",
2021
"node",
2122
"typescript",
2223
"javascript",
23-
"health",
24-
"healthcheck",
25-
"healthchecks",
26-
"diagnostics"
24+
"healthchecks"
2725
],
2826
"scripts": {
2927
"prebuild": "rimraf dist",
@@ -42,7 +40,7 @@
4240
"publish:rc": "npm publish --tag rc"
4341
},
4442
"dependencies": {
45-
"tslib": "2.7.0"
43+
"tslib": "2.8.1"
4644
},
4745
"devDependencies": {
4846
"@liaoliaots/nestjs-redis": "workspace:*"
@@ -51,10 +49,19 @@
5149
"@nestjs/common": "^10.0.0",
5250
"@nestjs/core": "^10.0.0",
5351
"@nestjs/terminus": "^10.0.0",
54-
"ioredis": "^5.0.0"
52+
"ioredis": "^5.0.0",
53+
"redis": "^4.1.0"
54+
},
55+
"peerDependenciesMeta": {
56+
"ioredis": {
57+
"optional": true
58+
},
59+
"redis": {
60+
"optional": true
61+
}
5562
},
5663
"engines": {
57-
"node": ">=16.13.0"
64+
"node": ">=16"
5865
},
5966
"publishConfig": {
6067
"access": "public"

packages/redis/.lintstagedrc.mjs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
export default {
2+
'*.ts': [
3+
'prettier --write',
4+
'eslint --ignore-pattern "test/" --ignore-pattern "**/*.spec.ts"',
5+
() => 'tsc --project tsconfig.build.json --noEmit'
6+
]
7+
};

packages/redis/.lintstagedrc.mjs__

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

0 commit comments

Comments
 (0)