diff --git a/.github/workflows/deployment.yaml b/.github/workflows/deployment.yaml index dc0fcad..c8dc0c8 100644 --- a/.github/workflows/deployment.yaml +++ b/.github/workflows/deployment.yaml @@ -19,7 +19,7 @@ concurrency: jobs: deployment: name: Perform deployment - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 permissions: read-all environment: @@ -50,7 +50,7 @@ jobs: run: heroku container:login - name: Build Docker image - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: push: true provenance: false diff --git a/.github/workflows/integration.yaml b/.github/workflows/integration.yaml index aac2afb..422b9e1 100644 --- a/.github/workflows/integration.yaml +++ b/.github/workflows/integration.yaml @@ -15,7 +15,7 @@ on: jobs: validate-pr-title: name: Validate PR title - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: amannn/action-semantic-pull-request@v5 env: @@ -23,7 +23,7 @@ jobs: integration: name: Continuous integration checks - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout repository uses: actions/checkout@v4 @@ -62,7 +62,7 @@ jobs: run: pnpm test - name: Build Docker image for project - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: push: false cache-from: type=gha diff --git a/.nvmrc b/.nvmrc index 8326e27..0373daa 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -22.3.0 +23.6.0 diff --git a/Dockerfile b/Dockerfile index 71625e1..0fca7fd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:22.3.0-alpine as base +FROM node:23.6.0-alpine as base WORKDIR /app @@ -29,7 +29,7 @@ RUN --mount=type=cache,id=pnpm,target=/root/.local/share/pnpm/store/v3 \ pnpm prune --prod && \ pnpm install --production --frozen-lockfile --offline -FROM node:22.3.0-alpine as application +FROM node:23.6.0-alpine as application WORKDIR /app diff --git a/package.json b/package.json index 01f9f1c..80d5bab 100644 --- a/package.json +++ b/package.json @@ -15,38 +15,38 @@ "check": "run-s check:*" }, "dependencies": { - "@keyv/redis": "2.8.5", + "@keyv/redis": "4.2.0", "change-case": "5.4.4", "cheerio": "1.0.0-rc.12", "cron": "3.1.7", "discord.js": "14.15.3", "ioredis": "5.4.1", - "keyv": "4.5.4", + "keyv": "5.2.3", "nanoid": "5.0.7", "open-graph-scraper": "6.5.2", "zod": "3.23.8" }, "devDependencies": { - "@types/node": "20.14.2", - "@typescript-eslint/eslint-plugin": "7.13.0", - "@typescript-eslint/parser": "7.13.0", + "@types/node": "22.10.7", + "@typescript-eslint/eslint-plugin": "8.21.0", + "@typescript-eslint/parser": "8.21.0", "dotenv": "16.4.5", - "eslint": "8.57.0", + "eslint": "9.18.0", "eslint-import-resolver-typescript": "3.6.1", "eslint-plugin-import": "2.29.1", "eslint-plugin-only-error": "1.0.2", "eslint-plugin-simple-import-sort": "12.1.0", - "eslint-plugin-sonarjs": "1.0.3", - "eslint-plugin-unused-imports": "3.2.0", - "npm-run-all2": "6.2.0", + "eslint-plugin-sonarjs": "3.0.1", + "eslint-plugin-unused-imports": "4.1.4", + "npm-run-all2": "7.0.2", "prettier": "3.3.2", "tsup": "8.1.0", "type-fest": "4.20.0", "typescript": "5.4.5", - "vitest": "1.6.0" + "vitest": "3.0.2" }, "packageManager": "pnpm@9.3.0", "engines": { - "node": "22.3.0" + "node": "23.6.0" } }