Skip to content
Open
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
2 changes: 1 addition & 1 deletion .github/actions/get-node-version/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Image already pulled on runners
FROM node:20-alpine
FROM node:24.9.0-alpine
WORKDIR /src
COPY package.json yarn.lock ./
RUN yarn install --frozen-lockfile
Expand Down
8 changes: 4 additions & 4 deletions .github/actions/get-node-version/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@
"url": "https://github.com/thunderstore-io/thunderstore-ui",
"directory": ".github/actions/get-node-version"
},
"engines": {
"node": "^20.17.0"
},
"scripts": {
"build": "tsc"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@actions/core": "^1.4.0",
"@types/node": "^20.16.0",
"@types/node": "^24",
"@types/semver": "^7.3.8",
"semver": "^7.3.5",
"typescript": "^5.6.2"
Expand Down
4 changes: 3 additions & 1 deletion .github/actions/get-node-version/src/main.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { setOutput, setFailed, getInput } from "@actions/core";
import { info, setOutput, setFailed, getInput } from "@actions/core";
import semver from "semver";
import { readFileSync } from "fs";

Expand All @@ -11,6 +11,7 @@ import { readFileSync } from "fs";

const rawContent = readFileSync(inputPath);
const packageJson = JSON.parse(rawContent.toString());
info(`Validating Node version string "${packageJson?.engines?.node}"`);

// Check if both ranges are valid
const engineVersionRangeString = semver.validRange(packageJson.engines.node);
Expand Down Expand Up @@ -48,5 +49,6 @@ import { readFileSync } from "fs";
return;
}

info(`Setting outputs.node-version to "${engineVersionRangeMinimum.major}"`);
setOutput("node-version", engineVersionRangeMinimum.major);
})();
18 changes: 9 additions & 9 deletions .github/actions/get-node-version/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.4.0.tgz#cf2e6ee317e314b03886adfeb20e448d50d6e524"
integrity sha512-CGx2ilGq5i7zSLgiiGUtBCxhRRxibJYU6Fim0Q1Wg2aQL2LTnF27zbqZOrxfvFQ55eSBW0L8uVStgtKMpa0Qlg==

"@types/node@^20.16.0":
version "20.16.7"
resolved "https://registry.npmjs.org/@types/node/-/node-20.16.7.tgz#0a245bf5805add998a22b8b5adac612ee70190bc"
integrity sha512-QkDQjAY3gkvJNcZOWwzy3BN34RweT0OQ9zJyvLCU0kSK22dO2QYh/NHGfbEAYylPYzRB1/iXcojS79wOg5gFSw==
"@types/node@^24":
version "24.6.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-24.6.1.tgz#29cd365beb4419b3b8271c7464f1a563446d7481"
integrity sha512-ljvjjs3DNXummeIaooB4cLBKg2U6SPI6Hjra/9rRIy7CpM0HpLtG9HptkMKAb4HYWy5S7HUvJEuWgr/y0U8SHw==
dependencies:
undici-types "~6.19.2"
undici-types "~7.13.0"

"@types/semver@^7.3.8":
version "7.3.8"
Expand All @@ -38,10 +38,10 @@ typescript@^5.6.2:
resolved "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz#d1de67b6bef77c41823f822df8f0b3bcff60a5a0"
integrity sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==

undici-types@~6.19.2:
version "6.19.8"
resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02"
integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==
undici-types@~7.13.0:
version "7.13.0"
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.13.0.tgz#a20ba7c0a2be0c97bd55c308069d29d167466bff"
integrity sha512-Ov2Rr9Sx+fRgagJ5AX0qvItZG/JKKoBRAVITs1zk7IqZGTJUwgUr7qoYBpWwakpWilTZFM98rG/AFRocu10iIQ==

yallist@^4.0.0:
version "4.0.0"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/auto-merge-dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
name: Auto-merge
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v5
- uses: ahmadnassri/action-dependabot-auto-merge@v2
with:
target: minor
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/static-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
outputs:
node-version: ${{ steps.get-node-version.outputs.node-version }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v5
- name: Check get-node-version version
uses: ./.github/actions/get-node-version
with:
Expand All @@ -44,9 +44,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v5
- name: Setup Node
uses: actions/setup-node@v2
uses: actions/setup-node@v5
with:
node-version: ${{ needs.get-node-version.outputs.node-version }}
- name: Set fontawesome token
Expand Down Expand Up @@ -78,7 +78,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v5
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
Expand Down
40 changes: 19 additions & 21 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
outputs:
node-version: ${{ steps.get-node-version.outputs.node-version }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v5
- name: Check get-node-version version
uses: ./.github/actions/get-node-version
with:
Expand All @@ -28,21 +28,19 @@ jobs:
pre-commit:
name: Run pre-commit
runs-on: ubuntu-latest
needs: get-node-version
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
submodules: false
- name: Setup Python 3.8
id: setup-python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: "3.8"
- uses: actions/setup-node@v4
- uses: actions/setup-node@v5
with:
node-version: "24"
- name: Get node version
id: node-version
run: echo "::set-output name=node-version::$(node --version)"
node-version: ${{ needs.get-node-version.outputs.node-version }}
- uses: snok/install-poetry@v1
Comment on lines +31 to 44
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Critical: new dependency skips CI on same‑repo PRs

By adding needs: get-node-version here while the upstream job still has if: github.event_name != 'pull_request' || …, every internal PR (base repo id == head repo id) will now skip get-node-version, so this job — and every other job that declares the same dependency — gets skipped as well. Net result: CI no longer runs for any branch PR created inside this repository. Please either drop/relax the if on the get-node-version job or make this job resilient when that job is skipped.

   get-node-version:
     name: Get Node version
-    if: github.event_name != 'pull_request' || (github.event_name == 'pull_request' && github.event.base.repo.id != github.event.head.repo.id)
+    # Allow internal PRs to run; the dependency chain now requires this job every time.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
needs: get-node-version
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
submodules: false
- name: Setup Python 3.8
id: setup-python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: "3.8"
- uses: actions/setup-node@v4
- uses: actions/setup-node@v5
with:
node-version: "24"
- name: Get node version
id: node-version
run: echo "::set-output name=node-version::$(node --version)"
node-version: ${{ needs.get-node-version.outputs.node-version }}
- uses: snok/install-poetry@v1
get-node-version:
name: Get Node version
# Allow internal PRs to run; the dependency chain now requires this job every time.
🤖 Prompt for AI Agents
.github/workflows/test.yml lines 31-44: the job currently declares needs:
get-node-version which causes the entire job to be skipped for same-repo PRs
because the get-node-version job is itself gated by an if that skips for PRs;
fix by either (A) removing or relaxing the restrictive if on the
get-node-version job so it always runs for PRs, or (B) make this job resilient
by removing the hard dependency and instead conditionally use the
get-node-version output (e.g., only reference
needs.get-node-version.outputs.node-version when needs.get-node-version.outcome
== 'success' or fallback to a default node-version), ensuring the job can run
even when get-node-version was skipped.

with:
version: 1.4.1
Expand All @@ -65,7 +63,7 @@ jobs:
path: ~/.cache/pre-commit
key: "pre-commit-${{ runner.os }}-\
${{ steps.setup-python.outputs.python-version }}-\
${{ steps.node-version.outputs.node-version }}-\
${{ needs.get-node-version.outputs.node-version }}-\
${{ hashFiles('.pre-commit-config.yaml') }}"
- name: Run pre-commit
run: poetry run pre-commit run --show-diff-on-failure --color=always --all-files
Expand All @@ -75,7 +73,7 @@ jobs:
# name: Build
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v3
# - uses: actions/checkout@v5
# - name: Build Docker images
# run: IMAGE_TAG=${GITHUB_REF##*/} docker compose -f docker-compose.build.yml build --pull
# - name: Login to Docker Hub
Expand All @@ -98,11 +96,11 @@ jobs:
VITE_AUTH_BASE_URL: ${{ vars.NEXT_PUBLIC_SITE_URL }}
VITE_AUTH_RETURN_URL: ${{ vars.NEXT_PUBLIC_SITE_URL }}
steps:
- uses: actions/checkout@v4
- name: Set up Node 24
uses: actions/setup-node@v4
- uses: actions/checkout@v5
- name: Setup Node ${{ needs.get-node-version.outputs.node-version }}
uses: actions/setup-node@v5
with:
node-version: "24"
node-version: ${{ needs.get-node-version.outputs.node-version }}
cache: "yarn"
- name: Set fontawesome token
run: |
Expand Down Expand Up @@ -158,16 +156,16 @@ jobs:
VITE_AUTH_RETURN_URL: ${{ vars.NEXT_PUBLIC_SITE_URL }}
steps:
- name: "Checkout"
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: "Setup Python 3.10"
id: setup-python
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Set up Node 24
uses: actions/setup-node@v4
- name: Setup Node ${{ needs.get-node-version.outputs.node-version }}
uses: actions/setup-node@v5
with:
node-version: "24"
node-version: ${{ needs.get-node-version.outputs.node-version }}
cache: "yarn"
- name: Set fontawesome token
run: |
Expand Down Expand Up @@ -210,11 +208,11 @@ jobs:
{ dir: "apps/storybook", token: "CHROMATIC_CYBERSTORM_TOKEN" },
]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Set up Node ${{ needs.get-node-version.outputs.node-version }}
uses: actions/setup-node@v4
- name: Setup Node ${{ needs.get-node-version.outputs.node-version }}
uses: actions/setup-node@v5
with:
node-version: ${{ needs.get-node-version.outputs.node-version }}
cache: "yarn"
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/visual-diff.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
outputs:
node-version: ${{ steps.get-node-version.outputs.node-version }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Check get-node-version version
uses: ./.github/actions/get-node-version
with:
Expand All @@ -30,14 +30,14 @@ jobs:
needs: get-node-version
steps:
- name: "Checkout"
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: "Setup Python 3.10"
id: setup-python
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: "Setup Node"
uses: actions/setup-node@v4
uses: actions/setup-node@v5
with:
node-version: ${{ needs.get-node-version.outputs.node-version }}
- name: Set fontawesome token
Expand Down
2 changes: 1 addition & 1 deletion apps/cyberstorm-remix/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# For running @thunderstore/cyberstorm-remix in Docker container.
FROM node:24.1.0-alpine3.21
FROM node:24.9.0-alpine3.21
RUN apk add --no-cache libc6-compat

WORKDIR /app
Expand Down
2 changes: 1 addition & 1 deletion apps/cyberstorm-remix/Dockerfile.development
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# For running @thunderstore/cyberstorm-remix in Docker container.
FROM node:24.1.0-alpine3.21
FROM node:24.9.0-alpine3.21
RUN apk add --no-cache libc6-compat

ENV NODE_ENV development
Expand Down
6 changes: 3 additions & 3 deletions apps/cyberstorm-remix/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@
"test:coverage": "vitest run --coverage",
"typecheck": "react-router typegen && tsc"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@fortawesome/pro-solid-svg-icons": "6.6.0",
"@react-router/node": "^7.6.2",
Expand Down Expand Up @@ -52,8 +55,5 @@
"vite-tsconfig-paths": "^5.0.1",
"vitest": "3.2.4"
},
"engines": {
"node": ">=20.17.0"
},
"repository": "https://github.com/thunderstore-io/thunderstore-ui/tree/master/apps/cyberstorm-remix"
}
2 changes: 1 addition & 1 deletion apps/storybook/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# For running @thunderstore/storybook in Docker container.

# Build Storybook to static files
FROM node:24.1.0-alpine3.21 AS builder
FROM node:24.9.0-alpine3.21 AS builder
WORKDIR /app
COPY package.json yarn.lock babel.config.js ./
COPY apps/storybook ./apps/storybook
Expand Down
3 changes: 3 additions & 0 deletions apps/storybook/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
"storybook": "storybook dev -p 6006",
"build-storybook": "storybook build"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@eslint/js": "^9.36.0",
"@fortawesome/fontawesome-svg-core": "6.6.0",
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
"coverage": "vitest run --coverage"
},
"engines": {
"node": ">=20.17.0"
"node": "24.9.0"
},
"dependencies": {
"@babel/core": "7.25.2",
Expand All @@ -27,7 +27,7 @@
"@manypkg/cli": "^0.21.4",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@preconstruct/cli": "^2.8.7",
"@types/node": "^20.16.0",
"@types/node": "^24",
"@typescript-eslint/eslint-plugin": "^8.7.0",
"@typescript-eslint/parser": "^8.7.0",
"@vitest/coverage-v8": "3.2.4",
Expand Down
3 changes: 3 additions & 0 deletions packages/beta-switch/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,8 @@
"scripts": {
"build": "tsc",
"dev": "tsc --watch"
},
"engines": {
"node": "24.9.0"
}
}
3 changes: 3 additions & 0 deletions packages/cyberstorm-forms/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@
"build": "tsc",
"dev": "tsc --watch"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@babel/runtime": "^7.25.6",
"@fortawesome/fontawesome-svg-core": "6.6.0",
Expand Down
5 changes: 4 additions & 1 deletion packages/cyberstorm/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@
"build": "tsc",
"dev": "tsc --watch"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@babel/runtime": "^7.25.6",
"@faker-js/faker": "^9.0.2",
Expand All @@ -34,7 +37,7 @@
"@thunderstore/dapper": "^0.1.0",
"@thunderstore/thunderstore-api": "*",
"@thunderstore/use-promise": "^0.1.0",
"@types/node": "^20.16.0",
"@types/node": "^24",
"@types/react": "^19.1.0",
"@types/uuid": "^10.0.0",
"react": "^19.1.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/dapper-fake/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@
"build": "tsc",
"dev": "tsc --watch"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@babel/runtime": "^7.25.6",
"@faker-js/faker": "^9.0.2",
Expand Down
3 changes: 3 additions & 0 deletions packages/dapper-ts/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@
"test": "vitest",
"watch": "vitest watch"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@babel/runtime": "^7.25.6",
"@thunderstore/dapper": "^0.1.0",
Expand Down
3 changes: 3 additions & 0 deletions packages/dapper/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@
"build": "tsc",
"dev": "tsc --watch"
},
"engines": {
"node": "24.9.0"
},
"dependencies": {
"@babel/runtime": "^7.25.6",
"@types/react": "^19.1.0",
Expand Down
5 changes: 4 additions & 1 deletion packages/dapper/types/package.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
{
"main": "dist/thunderstore-dapper-types.cjs.js",
"module": "dist/thunderstore-dapper-types.esm.js"
"module": "dist/thunderstore-dapper-types.esm.js",
"engines": {
"node": "24.9.0"
}
}
Loading
Loading