chore: tooling (#2040)

* chore: only run release action if we have a tag

* chore: typescript 6 is out of beta

* chore: update flaky test

* chore: update pnpm

* chore: update playwright and node types

* chore: migrate tsup to tsdown

* chore: update node to node 22.22.2(LTS)

* chore: fix lockfile

---------

Co-authored-by: alex-Arc <omnivox@LAPTOP-RC5SNBVV.localdomain>
This commit is contained in:
Alex Christoffer Rasmussen
2026-03-27 19:31:41 +01:00
committed by GitHub
parent 3a0df0b491
commit c7d8b137ca
9 changed files with 1016 additions and 1832 deletions
+3
View File
@@ -56,6 +56,7 @@ jobs:
- name: Release - name: Release
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v1
if: github.ref_type == 'tag'
with: with:
files: | files: |
./apps/electron/dist/ontime-macOS-x64.dmg ./apps/electron/dist/ontime-macOS-x64.dmg
@@ -95,6 +96,7 @@ jobs:
- name: Release - name: Release
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v1
if: github.ref_type == 'tag'
with: with:
files: './apps/electron/dist/ontime-win64.exe' files: './apps/electron/dist/ontime-win64.exe'
env: env:
@@ -133,6 +135,7 @@ jobs:
- name: Release - name: Release
uses: softprops/action-gh-release@v1 uses: softprops/action-gh-release@v1
if: github.ref_type == 'tag'
with: with:
files: | files: |
./apps/electron/dist/ontime-linux-x86_64.AppImage ./apps/electron/dist/ontime-linux-x86_64.AppImage
+2 -6
View File
@@ -9,9 +9,7 @@
"scripts": { "scripts": {
"lint": "oxlint --quiet --type-aware", "lint": "oxlint --quiet --type-aware",
"typecheck": "tsc --noEmit", "typecheck": "tsc --noEmit",
"prebuild": "pnpm rimraf ./dist", "build": "tsdown"
"build": "tsup && pnpm rimraf ./dist/index.js",
"postbuild": "pnpm rimraf ./dist/index.d.ts"
}, },
"keywords": [ "keywords": [
"ontime", "ontime",
@@ -21,10 +19,8 @@
"author": "", "author": "",
"license": "AGPL-3.0-only", "license": "AGPL-3.0-only",
"devDependencies": { "devDependencies": {
"@sprout2000/esbuild-copy-plugin": "^1.1.19",
"ontime-types": "workspace:^4.2.1", "ontime-types": "workspace:^4.2.1",
"rimraf": "catalog:", "tsdown": "^0.21.5",
"tsup": "^8.5.0",
"typescript": "catalog:" "typescript": "catalog:"
}, },
"files": [ "files": [
+2 -2
View File
@@ -10,8 +10,8 @@
"allowJs": true, "allowJs": true,
"declaration": true, "declaration": true,
"outDir": "dist", "outDir": "dist",
"sourceMap": true, "rootDir": "./src",
"ignoreDeprecations": "6.0" "sourceMap": true
}, },
"include": [ "include": [
"src", "src",
+22
View File
@@ -0,0 +1,22 @@
import { defineConfig } from 'tsdown';
const config = defineConfig({
clean: false, // we can't use clean as it runs after the copy plugin
entry: ['src/main.ts'],
outDir: 'dist',
unbundle: true,
dts: {
resolve: true,
tsconfig: './tsconfig.dts.json',
eager: true,
},
deps: {
alwaysBundle: ['ontime-types'],
onlyBundle: ['ontime-types', 'ts-essentials'],
},
format: 'esm',
target: 'esnext',
platform: 'node',
});
export default config;
-22
View File
@@ -1,22 +0,0 @@
import copyPlugin from '@sprout2000/esbuild-copy-plugin';
import { defineConfig } from 'tsup';
const config = defineConfig({
clean: false, // we can't use clean as it runs after the copy plugin
entry: ['src/main.ts'],
outDir: 'dist',
bundle: true,
dts: { resolve: true, tsconfig: './tsconfig.dts.json' },
format: 'esm',
target: 'esnext',
platform: 'node',
esbuildPlugins: [
copyPlugin.copyPlugin({
src: './node_modules/ontime-types/dist',
dest: './dist',
}),
],
});
export default config;
+1 -1
View File
@@ -183,7 +183,7 @@ test.describe('Sharing from cuesheet', () => {
await expect(page.getByTestId('cuesheet-event').locator('input')).toBeHidden(); await expect(page.getByTestId('cuesheet-event').locator('input')).toBeHidden();
// other elements are still there // other elements are still there
await expect(page.getByRole('cell', { name: 'Duration' })).toBeVisible(); await expect(page.getByTestId('cuesheet-cell-duration')).toBeVisible();
}); });
test('Sharing a link with scoped read-write permissions', async ({ page }, testInfo) => { test('Sharing a link with scoped read-write permissions', async ({ page }, testInfo) => {
+7 -7
View File
@@ -41,15 +41,15 @@
"format:check": "oxfmt --check" "format:check": "oxfmt --check"
}, },
"devDependencies": { "devDependencies": {
"@playwright/test": "^1.51.1", "@playwright/test": "^1.58.2",
"@types/node": "catalog:", "@types/node": "catalog:",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"oxfmt": "^0.35.0", "oxfmt": "^0.42.0",
"oxlint": "^1.50.0", "oxlint": "^1.57.0",
"oxlint-tsgolint": "^0.15.0", "oxlint-tsgolint": "^0.17.4",
"rimraf": "catalog:", "rimraf": "catalog:",
"turbo": "2.5.8", "turbo": "2.8.20",
"typescript": "6.0.0-beta" "typescript": "catalog:"
}, },
"packageManager": "pnpm@10.18.0+sha512.e804f889f1cecc40d572db084eec3e4881739f8dec69c0ff10d2d1beff9a4e309383ba27b5b750059d7f4c149535b6cd0d2cb1ed3aeb739239a4284a68f40cfa" "packageManager": "pnpm@10.33.0+sha512.10568bb4a6afb58c9eb3630da90cc9516417abebd3fabbe6739f0ae795728da1491e9db5a544c76ad8eb7570f5c4bb3d6c637b2cb41bfdcdb47fa823c8649319"
} }
+976 -1791
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -3,14 +3,14 @@ packages:
- packages/* - packages/*
catalog: catalog:
'@types/node': 22.15.26 '@types/node': 22.19.11
rimraf: 6.0.1 rimraf: 6.0.1
ts-essentials: 10.1.1 ts-essentials: 10.1.1
typescript: 6.0.0-beta typescript: 6.0.2
vitest: 4.0.17 vitest: 4.0.17
onlyBuiltDependencies: onlyBuiltDependencies:
- electron - electron
- esbuild - esbuild
useNodeVersion: 22.15.1 useNodeVersion: 22.22.2