Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 22 additions & 20 deletions .github/workflows/cicd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,20 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 25

- name: find pnpm cache path
id: cache
run: echo "path=$(pnpm store path)" >> "$GITHUB_OUTPUT"

- uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ steps.cache.outputs.path }}
key: v1-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
Expand All @@ -47,20 +47,20 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 25

- name: find pnpm cache path
id: cache
run: echo "path=$(pnpm store path)" >> "$GITHUB_OUTPUT"

- uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ steps.cache.outputs.path }}
key: v1-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
Expand All @@ -70,26 +70,27 @@ jobs:
- name: Install dependencies
run: pnpm install --frozen-lockfile

- run: node --run gen:types
- run: node --run lint

typecheck:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 25

- name: find pnpm cache path
id: cache
run: echo "path=$(pnpm store path)" >> "$GITHUB_OUTPUT"

- uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ steps.cache.outputs.path }}
key: v1-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
Expand All @@ -99,26 +100,27 @@ jobs:
- name: Install dependencies
run: pnpm install --frozen-lockfile

- run: node --run gen:types
- run: node --run typecheck

test:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 25

- name: find pnpm cache path
id: cache
run: echo "path=$(pnpm store path)" >> "$GITHUB_OUTPUT"

- uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ steps.cache.outputs.path }}
key: v1-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
Expand Down Expand Up @@ -148,20 +150,20 @@ jobs:
- typecheck

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 25

- name: find pnpm cache path
id: cache
run: echo "path=$(pnpm store path)" >> "$GITHUB_OUTPUT"

- uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ steps.cache.outputs.path }}
key: v1-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
type: string
default: https://dota.haglund.dev
required: false
description: "The base URL of the API to test"
description: The base URL of the API to test
#schedule:
# - cron: "0 */4 * * *" # https://crontab.guru/#0_*/4_*_*_*

Expand All @@ -26,9 +26,9 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0

- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 25

Expand All @@ -38,7 +38,7 @@ jobs:
id: cache
run: echo "path=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: ${{ steps.cache.outputs.path }}
key: v1-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
Expand All @@ -51,7 +51,7 @@ jobs:
- run: node --run test:e2e

- name: ntfy_action
uses: NiNiyas/ntfy-action@2ebc39afb288e8b01804a6ec1be0db2e7a458387 # V1.0.5
uses: NiNiyas/ntfy-action@2fd8963f2092903578ac7303d30be47a675fc182 # v1.0.6
if: ${{ failure() }}
with:
url: ${{ secrets.NTFY_URL }}
Expand Down
7 changes: 4 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
node_modules

.idea
.wrangler
dist
.env
.idea/
.wrangler/
dist/
worker-configuration.d.ts
2 changes: 1 addition & 1 deletion e2e/matches.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import xior from "xior"
import { expect, it } from "vitest"
import xior from "xior"

import type { Match } from "../src/dota.ts"

Expand Down
2 changes: 1 addition & 1 deletion mise.toml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
[tools]
node = "25"
node = "26"
31 changes: 16 additions & 15 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
"author": "BeeeQueue <adam@haglund.dev>",
"license": "CC-BY-SA-3.0-US",
"private": true,
"packageManager": "pnpm@10.31.0",
"packageManager": "pnpm@11.13.1",
"engines": {
"node": "^25"
"node": "^26"
},
"simple-git-hooks": {
"pre-commit": "node_modules/.bin/nano-staged"
Expand All @@ -20,45 +20,46 @@
"scripts": {
"dev": "wrangler dev",
"dev:migrate": "wrangler d1 migrations apply --local dpc",
"gen:types": "wrangler types",
"build": "tsdown",
"lint": "eslint src",
"lint": "eslint --flag unstable_native_nodejs_ts_config",
"test": "vitest",
"test:e2e": "vitest -c vitest.e2e.config.ts",
"typecheck": "tsc --noEmit --project tsconfig.json",
"prepare": "simple-git-hooks"
},
"devDependencies": {
"@antfu/eslint-config": "7.7.2",
"@cloudflare/vitest-pool-workers": "0.12.20",
"@cloudflare/workers-types": "4.20260307.1",
"@cloudflare/vitest-pool-workers": "0.18.6",
"@cloudflare/workers-types": "5.20260717.1",
"@e18e/eslint-plugin": "0.2.0",
"@leeoniya/ufuzzy": "1.0.19",
"@total-typescript/ts-reset": "0.6.1",
"@tsconfig/node-ts": "23.6.4",
"@tsconfig/node24": "24.0.4",
"@tsconfig/node26": "26.0.0",
"@tsconfig/strictest": "2.0.8",
"@types/node": "25.3.5",
"@types/node": "26.1.1",
"db0": "0.3.4",
"discord-api-types": "0.38.41",
"discord-api-types": "0.38.50",
"discord-interactions": "4.4.0",
"es-toolkit": "1.45.1",
"eslint": "10.0.3",
"hono": "4.12.25",
"kysely": "0.28.17",
"mentoss": "0.13.0",
"milli": "4.0.0",
"miniflare": "4.20260301.1",
"miniflare": "4.20260714.0",
"nano-staged": "0.9.0",
"nanoid": "5.1.6",
"nanoid": "6.0.0",
"p-queue": "9.1.0",
"prettier": "3.8.1",
"simple-git-hooks": "2.13.1",
"temporal-polyfill": "0.3.0",
"tsdown": "0.21.0",
"typescript": "6.0.2",
"temporal-polyfill": "0.3.2",
"tsdown": "0.22.9",
"typescript": "6.0.3",
"ultrahtml": "1.6.0",
"vitest": "3.2.6",
"wrangler": "4.71.0",
"vitest": "4.1.10",
"wrangler": "4.112.0",
"xior": "0.8.3"
}
}
Loading