8 Commits
Author SHA1 Message Date
RenovateandRenovate a2711f3f40 chore(deps): update pnpm/action-setup action to v6 (#114)
Lint / pre-commit Linting (push) Successful in 46s
Test / Run Tests (push) Successful in 2m20s
Co-authored-by: Renovate Bot <renovate@horstenkamp.eu>
2026-08-11 02:43:32 +02:00
RenovateandRenovate 7e526aeef3 chore(deps): update pnpm/action-setup action to v4.4.0 (#112)
Lint / pre-commit Linting (push) Successful in 39s
Test / Run Tests (push) Successful in 1m14s
Co-authored-by: Renovate Bot <renovate@horstenkamp.eu>
2026-08-11 01:33:30 +02:00
RenovateandRenovate c116597f23 chore(deps): pin pnpm/action-setup action to b906aff (#111)
Lint / pre-commit Linting (push) Successful in 50s
Test / Run Tests (push) Failing after 3m14s
Co-authored-by: Renovate Bot <renovate@horstenkamp.eu>
2026-08-11 00:31:23 +02:00
Philipp 0751b1470b chore: migrate package manager from npm to pnpm (#110)
Lint / pre-commit Linting (push) Successful in 45s
Test / Run Tests (push) Successful in 1m20s
This PR migrates the package manager from `npm` to `pnpm`.

### Changes:
- Replaced `package-lock.json` with `pnpm-lock.yaml` and `pnpm-workspace.yaml`.
- Updated `.gitea/workflows/test.yaml` to include `pnpm/action-setup@v4` and use `pnpm install` / `pnpm test`.
- Updated `renovate.json` to match `pnpm` manager and execute `pnpm install --frozen-lockfile` and `pnpm run build`.
- Updated `.pre-commit-config.yaml` to exclude `pnpm-lock.yaml` from `pretty-format-yaml`.
- Updated documentation in `README.md` and `GEMINI.md`.
- Rebuilt `dist/index.js`.Reviewed-on: #110
2026-08-11 00:20:02 +02:00
RenovateandRenovate 76a263859b chore(deps): update actions/setup-node action to v7 (#108)
Lint / pre-commit Linting (push) Successful in 1m23s
Test / Run Tests (push) Successful in 1m53s
Co-authored-by: Renovate Bot <renovate@horstenkamp.eu>
Co-committed-by: Renovate Bot <renovate@horstenkamp.eu>
2026-07-25 01:50:45 +02:00
RenovateandRenovate 2f32772d0a chore(deps): update actions/setup-node action to v6.5.0 (#107)
Lint / pre-commit Linting (push) Successful in 1m2s
Test / Run Tests (push) Successful in 4m48s
Co-authored-by: Renovate Bot <renovate@horstenkamp.eu>
Co-committed-by: Renovate Bot <renovate@horstenkamp.eu>
2026-07-25 01:06:02 +02:00
RenovateandRenovate 7a447adf45 chore(deps): update actions/setup-python action to v7 (#109)
Lint / pre-commit Linting (push) Successful in 1m0s
Test / Run Tests (push) Successful in 1m35s
Co-authored-by: Renovate Bot <renovate@horstenkamp.eu>
Co-committed-by: Renovate Bot <renovate@horstenkamp.eu>
2026-07-25 01:04:51 +02:00
RenovateandRenovate dcdca8e753 chore(deps): update actions/checkout action to v7.0.1 (#106)
Lint / pre-commit Linting (push) Successful in 58s
Test / Run Tests (push) Successful in 1m36s
Co-authored-by: Renovate Bot <renovate@horstenkamp.eu>
Co-committed-by: Renovate Bot <renovate@horstenkamp.eu>
2026-07-25 00:32:05 +02:00
11 changed files with 1441 additions and 2353 deletions
+2 -2
View File
@@ -9,8 +9,8 @@ jobs:
name: pre-commit Linting
runs-on: pi
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- run: pip install pre-commit
shell: bash
- name: Pre Commit
+5 -4
View File
@@ -9,11 +9,12 @@ jobs:
name: Run Tests
runs-on: pi
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: '24'
- run: npm install
- uses: pnpm/action-setup@0977fd99725f1db4007ccb2928dbb4e90d06cc86 # v6.0.10
- run: pnpm install --frozen-lockfile
shell: bash
- run: npm test
- run: pnpm test
shell: bash
+1
View File
@@ -21,6 +21,7 @@ repos:
hooks:
- id: pretty-format-yaml
args: [--autofix]
exclude: ^pnpm-lock\.yaml$
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v4.0.0-alpha.8
+4 -4
View File
@@ -19,7 +19,7 @@ This project uses [Vitest](https://vitest.dev/) for testing. The tests are locat
To run the tests locally, use the following command:
```bash
npm test
pnpm test
```
### Testing Pipeline
@@ -29,6 +29,6 @@ The tests are automatically run on every push and workflow dispatch using a Gite
The Gitea workflow does the following:
1. Checks out the code.
2. Sets up Node.js.
3. Installs the dependencies using `npm install`.
4. Runs the tests using `npm test`.
2. Sets up Node.js and pnpm.
3. Installs the dependencies using `pnpm install`.
4. Runs the tests using `pnpm test`.
+3 -3
View File
@@ -84,7 +84,7 @@ This project includes a build step to prepare the action for use.
### Why a Build Step?
We use a build step to compile the JavaScript code and its dependencies into a single, self-contained file (`dist/index.js`). This approach is chosen for the following reasons:
1. **Zero-configuration at Runtime:** By bundling everything, the action runner doesn't need to run `npm install`, which speeds up the action execution.
1. **Zero-configuration at Runtime:** By bundling everything, the action runner doesn't need to run `pnpm install` or `npm install`, which speeds up the action execution.
2. **Reliability:** It guarantees that the exact versions of dependencies tested during development are used in the action, avoiding potential issues with version updates or missing packages.
3. **Standard Practice:** This is a recommended practice for JavaScript-based GitHub/Gitea Actions.
@@ -100,8 +100,8 @@ We chose [`@vercel/ncc`](https://github.com/vercel/ncc) as the compiler because:
If you modify `index.js` or change dependencies, you must rebuild the project before committing:
```bash
npm install
npm run build
pnpm install
pnpm run build
```
This will update the `dist/index.js` file, which should be committed to the repository.
+8 -8
View File
File diff suppressed because one or more lines are too long
-2326
View File
File diff suppressed because it is too large Load Diff
+4 -3
View File
@@ -3,6 +3,7 @@
"version": "0.2.1",
"description": "Deploys screeps code to the official game or a private server.",
"type": "module",
"packageManager": "pnpm@11.21.0",
"main": "index.js",
"scripts": {
"start": "node index.js",
@@ -16,8 +17,8 @@
"screeps-api": "^1.7.2"
},
"devDependencies": {
"@vercel/ncc": "^0.38.4",
"@vitest/coverage-v8": "^4.0.16",
"vitest": "^4.0.16"
"@vercel/ncc": "^0.44.1",
"@vitest/coverage-v8": "^4.1.10",
"vitest": "^4.1.10"
}
}
+1408
View File
File diff suppressed because it is too large Load Diff
+3
View File
@@ -0,0 +1,3 @@
allowBuilds:
bufferutil: true
utf-8-validate: true
+3 -3
View File
@@ -8,12 +8,12 @@
"packageRules": [
{
"matchManagers": [
"npm"
"pnpm"
],
"postUpgradeTasks": {
"commands": [
"npm ci",
"npm run build"
"pnpm install --frozen-lockfile",
"pnpm run build"
],
"fileFilters": [
"dist/index.js"