Skip to content

Commit 6a55126

Browse files
committed
[migrate] upgrade to Koa 3, Better SQLite3, TypeORM 0.3.22+ & other latest Upstream packages
[fix] several detail bugs
1 parent c454de3 commit 6a55126

File tree

9 files changed

+1796
-2376
lines changed

9 files changed

+1796
-2376
lines changed

.dockerignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ dist/
55
!.npmrc
66
!.env*
77
start.sh
8-
eslint.config.mjs
8+
eslint.config.*
99
*.pem

.github/workflows/deploy-production.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ jobs:
4040
platforms: linux/amd64
4141
tags: ${{ env.BOX_URL }}:latest
4242
outputs: type=docker,dest=${{ env.ARTIFACT_PATH }}
43+
# use GitHub actions cache
44+
cache-from: type=gha
45+
cache-to: type=gha,mode=max
4346

4447
- name: Pick Docker Compose
4548
run: |
@@ -58,13 +61,13 @@ jobs:
5861
strip_components: 1
5962

6063
- name: Run Image
61-
uses: garygrossgarten/github-action-ssh@release
64+
uses: appleboy/ssh-action@v1
6265
if: ${{ env.HOST }}
6366
with:
6467
host: ${{ secrets.HOST }}
6568
username: ${{ secrets.USER }}
6669
password: ${{ secrets.SSH_KEY }}
67-
command: |
70+
script: |
6871
cd /tmp/${{ env.BOX_NAME }}
6972
mkdir -p ~/${{ env.BOX_NAME }}
7073
mv .env docker-compose.yml start.sh ~/${{ env.BOX_NAME }}

docker-compose.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ services:
5656
image: willfarrell/autoheal:1.2.0
5757
volumes:
5858
- /var/run/docker.sock:/var/run/docker.sock
59+
networks:
60+
- idea2app
5961
restart: always
6062
caddy:
6163
depends_on:
@@ -68,4 +70,4 @@ services:
6870
- idea2app
6971
restart: always
7072
volumes:
71-
- ./Caddyfile:/etc/caddy/Caddyfile
73+
- ./Caddyfile:/etc/caddy/Caddyfile

package.json

Lines changed: 39 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -18,90 +18,91 @@
1818
"node": ">=22"
1919
},
2020
"dependencies": {
21-
"@aws-sdk/client-s3": "^3.797.0",
22-
"@aws-sdk/s3-request-presigner": "^3.797.0",
21+
"@aws-sdk/client-s3": "^3.848.0",
22+
"@aws-sdk/s3-request-presigner": "^3.848.0",
2323
"@koa/cors": "^5.0.0",
24-
"@koa/multer": "^3.1.0",
25-
"@koa/router": "^13.1.0",
26-
"@passwordless-id/webauthn": "^2.3.0",
27-
"@smithy/smithy-client": "^4.2.0",
28-
"@supabase/auth-js": "^2.69.1",
29-
"@supabase/supabase-js": "^2.49.4",
24+
"@koa/multer": "^4.0.0",
25+
"@koa/router": "^13.1.1",
26+
"@passwordless-id/webauthn": "^2.3.1",
27+
"@smithy/smithy-client": "^4.4.8",
28+
"@supabase/auth-js": "^2.71.1",
29+
"@supabase/supabase-js": "^2.52.0",
3030
"class-transformer": "^0.5.1",
31-
"class-validator": "^0.14.1",
31+
"class-validator": "^0.14.2",
3232
"cross-env": "^7.0.3",
33-
"dotenv": "^16.5.0",
33+
"dotenv": "^17.2.0",
3434
"jsonwebtoken": "^9.0.2",
35-
"koa": "^2.16.1",
35+
"koa": "^3.0.0",
3636
"koa-bodyparser": "^4.4.1",
3737
"koa-jwt": "^4.0.4",
38-
"koa-logger": "^3.2.1",
38+
"koa-logger": "^4.0.0",
3939
"koa-mount": "^4.2.0",
4040
"koa2-swagger-ui": "^5.11.0",
4141
"koagger": "^0.4.0",
42-
"marked": "^15.0.11",
43-
"mobx-github": "^0.3.5",
42+
"marked": "^16.1.1",
43+
"mobx-github": "^0.3.11",
4444
"mobx-restful": "^2.1.0",
45-
"pg": "^8.15.6",
46-
"pg-connection-string": "^2.8.5",
45+
"pg": "^8.16.3",
46+
"pg-connection-string": "^2.9.1",
4747
"reflect-metadata": "^0.2.2",
4848
"routing-controllers": "^0.11.2",
4949
"routing-controllers-openapi": "^5.0.0",
5050
"tslib": "^2.8.1",
51-
"typeorm": "npm:@helveg/typeorm@^0.3.21",
52-
"undici": "^7.8.0",
51+
"typeorm": "^0.3.25",
52+
"undici": "^7.12.0",
5353
"web-utility": "^4.4.3"
5454
},
5555
"devDependencies": {
56-
"@eslint/js": "^9.25.1",
57-
"@octokit/openapi-types": "^25.0.0",
56+
"@eslint/js": "^9.31.0",
57+
"@octokit/openapi-types": "^25.1.0",
5858
"@types/eslint-config-prettier": "^6.11.3",
5959
"@types/jest": "^29.5.14",
60-
"@types/jsonwebtoken": "^9.0.9",
61-
"@types/koa": "^2.15.0",
60+
"@types/jsonwebtoken": "^9.0.10",
6261
"@types/koa-logger": "^3.1.5",
63-
"@types/node": "^22.15.2",
64-
"eslint": "^9.25.1",
65-
"eslint-config-prettier": "^10.1.2",
62+
"@types/node": "^22.16.5",
63+
"better-sqlite3": "^12.2.0",
64+
"eslint": "^9.31.0",
65+
"eslint-config-prettier": "^10.1.8",
6666
"eslint-plugin-simple-import-sort": "^12.1.1",
67-
"globals": "^16.0.0",
67+
"globals": "^16.3.0",
6868
"husky": "^9.1.7",
6969
"jest": "^29.7.0",
7070
"jiti": "^2.4.2",
7171
"koajax": "^3.1.2",
72-
"lint-staged": "^15.5.1",
73-
"prettier": "^3.5.3",
74-
"sqlite3": "^5.1.7",
75-
"start-server-and-test": "^2.0.11",
76-
"swagger-typescript-api": "^13.1.1",
77-
"ts-jest": "^29.3.2",
72+
"lint-staged": "^16.1.2",
73+
"prettier": "^3.6.2",
74+
"start-server-and-test": "^2.0.12",
75+
"swagger-typescript-api": "^13.2.7",
76+
"ts-jest": "^29.4.0",
7877
"ts-node": "^10.9.2",
7978
"typescript": "~5.8.3",
80-
"typescript-eslint": "^8.31.0"
79+
"typescript-eslint": "^8.37.0"
8180
},
8281
"resolutions": {
83-
"reflect-metadata": "$reflect-metadata"
82+
"reflect-metadata": "$reflect-metadata",
83+
"koa": "$koa"
8484
},
8585
"pnpm": {
8686
"onlyBuiltDependencies": [
87-
"sqlite3"
87+
"better-sqlite3"
8888
]
8989
},
9090
"prettier": {
9191
"singleQuote": true,
9292
"trailingComma": "none",
9393
"arrowParens": "avoid",
94-
"tabWidth": 4
94+
"tabWidth": 4,
95+
"printWidth": 100
9596
},
9697
"lint-staged": {
97-
"*.{md,json,yml,mjs,ts}": "prettier --write",
98+
"*.{md,json,yml,ts}": "prettier --write",
9899
"*.ts": "eslint --fix"
99100
},
100101
"jest": {
101102
"preset": "ts-jest"
102103
},
103104
"scripts": {
104-
"install": "mv .env.example .env || true",
105+
"install": "cp -u .env.example .env || true",
105106
"prepare": "husky || true",
106107
"dev": "cross-env TS_NODE_TRANSPILE_ONLY=true node -r ts-node/register --watch source/",
107108
"lint": "lint-staged",

0 commit comments

Comments
 (0)