chore: improve actions performance and security practices (#5970)

* chore: bump actions and pin versions

* build: switch to blacksmith

* fix: use rust-toolchain stable

* build: improve pnpm store caching

* chore: remove emoji from workflows

* fix: run prepare job on blacksmith

* chore: kebab case id

* build: add concurrency groups to limit duplicate jobs

* build: switch around node setup and pnpm setup task

* chore: bump to nodejs 24, fix pnpm caching

* fix: enable corepack

* fix: concurrency deadlock in frontend preview

* fix: approve build scripts

* fix: just don't cancel concurrent previews

* build: remove pnpm setup action everywhere

* build: cache apt packages

* build: yet another attempt at fixing concurrency

* build: lower runner type for frontend deploy

* fix: eslint not existing

* build: add sccache to turbo-ci

* fix: correct nextest pkg

* fix: turbo ignoring sccache

* revert me: test labrinth tests

* Revert "revert me: test labrinth tests"

This reverts commit def5cc19183d5c0fe3b6f3c03635d73bb59bd312.

* build: compile app before docker build

* build: lower runner types

* build: remove docker inline caching

* build: try mold on labrinth

* build: tweak labrinth prod build profile

* fix: app windows builds and caching

* fix: tombi format cargo.toml

* fix: swap ping test to cubecraft to avoid CI flakiness

* typos fix

---------

Co-authored-by: aecsocket <aecsocket@tutanota.com>
This commit is contained in:
Michael H.
2026-05-03 14:18:31 +02:00
committed by GitHub
parent 9015ff0971
commit 5b59e39a8a
29 changed files with 976 additions and 382 deletions

View File

@@ -1,59 +1,73 @@
{
"name": "@modrinth/monorepo",
"version": "0.0.0",
"private": true,
"scripts": {
"web:dev": "turbo run dev --filter=@modrinth/frontend",
"web:build": "turbo run build --filter=@modrinth/frontend",
"app:dev": "turbo run dev --filter=@modrinth/app",
"app:build": "turbo run build --filter=@modrinth/app",
"docs:dev": "turbo run dev --filter=@modrinth/docs",
"pages:build": "NITRO_PRESET=cloudflare-pages pnpm --filter frontend run build",
"build": "turbo run build --continue",
"lint": "turbo run lint lint:ancillary --continue",
"lint:ancillary": "prettier --check .github *.*",
"test": "turbo run test --continue",
"fix": "turbo run fix fix:ancillary --continue",
"fix:ancillary": "prettier --write .github *.*",
"ci": "turbo run lint test --continue",
"prepr": "turbo run prepr --continue",
"prepr:frontend": "turbo run prepr --filter=@modrinth/frontend --filter=@modrinth/app-frontend",
"prepr:frontend:lib": "turbo run prepr --filter=@modrinth/ui --filter=@modrinth/moderation --filter=@modrinth/assets --filter=@modrinth/blog --filter=@modrinth/api-client --filter=@modrinth/utils --filter=@modrinth/tooling-config",
"prepr:frontend:web": "turbo run prepr --filter=@modrinth/frontend",
"prepr:frontend:app": "turbo run prepr --filter=@modrinth/app-frontend",
"storybook": "pnpm --filter @modrinth/ui storybook",
"build-storybook": "pnpm --filter @modrinth/ui build-storybook",
"icons:add": "pnpm --filter @modrinth/assets icons:add",
"changelog:collect": "node scripts/run.mjs collect-changelog",
"changelog:combine-for-app": "node scripts/run.mjs build-theseus-release-notes",
"scripts": "node scripts/run.mjs"
},
"devDependencies": {
"@clack/prompts": "^1.0.0",
"@modrinth/tooling-config": "workspace:*",
"@tailwindcss/container-queries": "^0.1.1",
"@types/node": "^20.1.0",
"@vue/compiler-dom": "^3.5.26",
"@vue/compiler-sfc": "^3.5.26",
"chalk": "^5.6.2",
"if-ci": "^3.0.0",
"keep-a-changelog": "^3.0.2",
"prettier": "^3.3.2",
"turbo": "^2.5.4",
"vue": "^3.5.13",
"yaml": "^2.8.2"
},
"packageManager": "pnpm@9.15.0",
"pnpm": {
"patchedDependencies": {
"readable-stream@2.3.8": "patches/readable-stream@2.3.8.patch"
},
"peerDependencyRules": {
"allowedVersions": {
"vite": "8",
"esbuild": "0"
}
}
},
"prettier": "@modrinth/tooling-config/prettier.config.cjs"
"name": "@modrinth/monorepo",
"version": "0.0.0",
"private": true,
"scripts": {
"web:dev": "turbo run dev --filter=@modrinth/frontend",
"web:build": "turbo run build --filter=@modrinth/frontend",
"app:dev": "turbo run dev --filter=@modrinth/app",
"app:build": "turbo run build --filter=@modrinth/app",
"docs:dev": "turbo run dev --filter=@modrinth/docs",
"pages:build": "NITRO_PRESET=cloudflare-pages pnpm --filter frontend run build",
"build": "turbo run build --continue",
"lint": "turbo run lint lint:ancillary --continue",
"lint:ancillary": "prettier --check .github *.*",
"test": "turbo run test --continue",
"fix": "turbo run fix fix:ancillary --continue",
"fix:ancillary": "prettier --write .github *.*",
"ci": "turbo run lint test --continue",
"prepr": "turbo run prepr --continue",
"prepr:frontend": "turbo run prepr --filter=@modrinth/frontend --filter=@modrinth/app-frontend",
"prepr:frontend:lib": "turbo run prepr --filter=@modrinth/ui --filter=@modrinth/moderation --filter=@modrinth/assets --filter=@modrinth/blog --filter=@modrinth/api-client --filter=@modrinth/utils --filter=@modrinth/tooling-config",
"prepr:frontend:web": "turbo run prepr --filter=@modrinth/frontend",
"prepr:frontend:app": "turbo run prepr --filter=@modrinth/app-frontend",
"storybook": "pnpm --filter @modrinth/ui storybook",
"build-storybook": "pnpm --filter @modrinth/ui build-storybook",
"icons:add": "pnpm --filter @modrinth/assets icons:add",
"changelog:collect": "node scripts/run.mjs collect-changelog",
"changelog:combine-for-app": "node scripts/run.mjs build-theseus-release-notes",
"scripts": "node scripts/run.mjs"
},
"devDependencies": {
"@clack/prompts": "^1.0.0",
"@modrinth/tooling-config": "workspace:*",
"@tailwindcss/container-queries": "^0.1.1",
"@types/node": "^24",
"@vue/compiler-dom": "^3.5.26",
"@vue/compiler-sfc": "^3.5.26",
"chalk": "^5.6.2",
"if-ci": "^3.0.0",
"keep-a-changelog": "^3.0.2",
"prettier": "^3.3.2",
"turbo": "^2.5.4",
"vue": "^3.5.13",
"yaml": "^2.8.2"
},
"packageManager": "pnpm@10.33.2",
"engines": {
"node": ">=24.15.0"
},
"pnpm": {
"patchedDependencies": {
"readable-stream@2.3.8": "patches/readable-stream@2.3.8.patch"
},
"peerDependencyRules": {
"allowedVersions": {
"vite": "8",
"esbuild": "0"
}
},
"onlyBuiltDependencies": [
"@parcel/watcher",
"@sentry/cli",
"core-js",
"esbuild",
"protobufjs",
"sharp",
"unrs-resolver",
"vue-demi",
"workerd"
]
},
"prettier": "@modrinth/tooling-config/prettier.config.cjs"
}