From 690bd4ce5fbac10df36eac3a5bca19205b54968c Mon Sep 17 00:00:00 2001 From: Jin <22962980+JYC333@users.noreply.github.com> Date: Sat, 10 Aug 2024 11:38:23 +0200 Subject: [PATCH 1/4] fix ci errors --- .github/workflows/main.yml | 8 +- Dockerfile | 26 +-- forge.config.cjs | 2 +- package-lock.json | 442 +------------------------------------ package.json | 3 +- 5 files changed, 18 insertions(+), 463 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 66eff0d1e..47edb19e3 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -75,12 +75,12 @@ jobs: - name: Publish Linux zip artifact (x86_64) uses: actions/upload-artifact@v4 with: - name: TriliumNext Notes for Linux + name: TriliumNext Notes for Linux (x86_64) path: out/make/zip/linux/x64/*.zip - name: Publish Linux installer artifact (x86_64) uses: actions/upload-artifact@v4 with: - name: TriliumNext Notes for Linux (Setup) + name: TriliumNext Notes for Linux (Setup) (x86_64) path: out/make/deb/x64/*.deb - name: Run Linux installer build (arm64) run: | @@ -89,12 +89,12 @@ jobs: - name: Publish Linux zip artifact (arm64) uses: actions/upload-artifact@v4 with: - name: TriliumNext Notes for Linux + name: TriliumNext Notes for Linux (arm64) path: out/make/zip/linux/arm64/*.zip - name: Publish Linux installer artifact (arm64) uses: actions/upload-artifact@v4 with: - name: TriliumNext Notes for Linux (Setup) + name: TriliumNext Notes for Linux (Setup) (arm64) path: out/make/deb/arm64/*.deb build_linux_server-x64: name: Build Linux Server x86_64 diff --git a/Dockerfile b/Dockerfile index 2dc3ccef4..5173b60f3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,22 +20,16 @@ WORKDIR /usr/src/app # Bundle app source COPY . . - COPY server-package.json package.json # Copy TypeScript build artifacts into the original directory structure. -RUN ls -RUN cp -R build/src/* src/. - # Copy the healthcheck -RUN cp build/docker_healthcheck.js . -RUN rm docker_healthcheck.ts - -RUN rm -r build +RUN cp -R build/src/* src/. && \ + cp build/docker_healthcheck.js . && \ + rm -r build && \ + rm docker_healthcheck.ts # Install app dependencies -RUN set -x -RUN npm install RUN apt-get purge -y --auto-remove \ autoconf \ automake \ @@ -47,12 +41,12 @@ RUN apt-get purge -y --auto-remove \ libpng-dev \ python3 \ && rm -rf /var/lib/apt/lists/* -RUN npm run webpack -RUN npm prune --omit=dev -RUN cp src/public/app/share.js src/public/app-dist/. -RUN cp -r src/public/app/doc_notes src/public/app-dist/. -RUN rm -rf src/public/app -RUN rm src/services/asset_path.ts +RUN npm install && \ + npm run webpack && \ + npm prune --omit=dev +RUN cp src/public/app/share.js src/public/app-dist/. && \ + cp -r src/public/app/doc_notes src/public/app-dist/. && \ + rm -rf src/public/app && rm src/services/asset_path.ts # Some setup tools need to be kept RUN apt-get update && apt-get install -y --no-install-recommends \ diff --git a/forge.config.cjs b/forge.config.cjs index 3d2f46d0e..ccd2ea18c 100644 --- a/forge.config.cjs +++ b/forge.config.cjs @@ -15,7 +15,7 @@ module.exports = { for (const resource of extraResources) { let sourcePath; if (platform === 'darwin') { - sourcePath = path.join(buildPath, 'TriliumNextNotes.app', 'Content', 'Resources', path.basename(resource)); + sourcePath = path.join(buildPath, 'TriliumNextNotes.app', 'Contents', 'Resources', path.basename(resource)); } else { sourcePath = path.join(buildPath, 'resources', path.basename(resource)); } diff --git a/package-lock.json b/package-lock.json index b633603ad..98a88f221 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "trilium", - "version": "0.90.3", + "version": "0.90.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "trilium", - "version": "0.90.3", + "version": "0.90.4", "license": "AGPL-3.0-only", "dependencies": { "@braintree/sanitize-url": "^7.1.0", @@ -132,7 +132,6 @@ "electron-packager": "17.1.2", "electron-rebuild": "3.2.9", "esm": "3.2.25", - "esrun": "^3.2.26", "iconsur": "^1.7.0", "jasmine": "5.1.0", "jsdoc": "^4.0.3", @@ -206,13 +205,6 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "node_modules/@digitak/grubber": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@digitak/grubber/-/grubber-3.1.4.tgz", - "integrity": "sha512-pqsnp2BUYlDoTXWG34HWgEJse/Eo1okRgNex8IG84wHrJp8h3SakeR5WhB4VxSA2+/D+frNYJ0ch3yXzsfNDoA==", - "dev": true, - "license": "MIT" - }, "node_modules/@discoveryjs/json-ext": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz", @@ -2567,363 +2559,6 @@ "node": ">=12" } }, - "node_modules/@esbuild/android-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", - "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", - "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", - "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", - "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", - "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", - "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", - "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", - "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", - "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", - "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", - "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", - "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", - "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", - "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", - "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", - "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", - "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", - "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", - "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", - "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", - "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, "node_modules/@esbuild/win32-x64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", @@ -8549,79 +8184,6 @@ "node": ">=4.0" } }, - "node_modules/esrun": { - "version": "3.2.26", - "resolved": "https://registry.npmjs.org/esrun/-/esrun-3.2.26.tgz", - "integrity": "sha512-gDjP87qj4RW0BryZXPY3/L161hPo9uG6luBTjLsuHG3cKnhSMrzB7eNzSzvDyBLg7OgugyvzSgB2ov7mZ/oa7Q==", - "dev": true, - "license": "ISC", - "dependencies": { - "@digitak/grubber": "^3.1.4", - "chokidar": "^3.5.1", - "esbuild": "^0.17.4" - }, - "bin": { - "esrun": "bin.js" - }, - "engines": { - "node": ">=14.0" - } - }, - "node_modules/esrun/node_modules/@esbuild/win32-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", - "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esrun/node_modules/esbuild": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", - "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.17.19", - "@esbuild/android-arm64": "0.17.19", - "@esbuild/android-x64": "0.17.19", - "@esbuild/darwin-arm64": "0.17.19", - "@esbuild/darwin-x64": "0.17.19", - "@esbuild/freebsd-arm64": "0.17.19", - "@esbuild/freebsd-x64": "0.17.19", - "@esbuild/linux-arm": "0.17.19", - "@esbuild/linux-arm64": "0.17.19", - "@esbuild/linux-ia32": "0.17.19", - "@esbuild/linux-loong64": "0.17.19", - "@esbuild/linux-mips64el": "0.17.19", - "@esbuild/linux-ppc64": "0.17.19", - "@esbuild/linux-riscv64": "0.17.19", - "@esbuild/linux-s390x": "0.17.19", - "@esbuild/linux-x64": "0.17.19", - "@esbuild/netbsd-x64": "0.17.19", - "@esbuild/openbsd-x64": "0.17.19", - "@esbuild/sunos-x64": "0.17.19", - "@esbuild/win32-arm64": "0.17.19", - "@esbuild/win32-ia32": "0.17.19", - "@esbuild/win32-x64": "0.17.19" - } - }, "node_modules/estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", diff --git a/package.json b/package.json index 2265704d8..a1d32688e 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "build-backend-docs": "rimraf ./docs/backend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/backend_api src/becca/entities/*.js src/services/backend_script_api.js src/services/sql.js", "build-frontend-docs": "rimraf ./docs/frontend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/frontend_api src/public/app/entities/*.js src/public/app/services/frontend_script_api.js src/public/app/widgets/basic_widget.js src/public/app/widgets/note_context_aware_widget.js src/public/app/widgets/right_panel_widget.js", "build-docs": "npm run build-backend-docs && npm run build-frontend-docs", - "webpack": "cross-env esrun node_modules/webpack -c webpack.config.ts", + "webpack": "cross-env node --import 'data:text/javascript,import { register } from \"node:module\"; import { pathToFileURL } from \"node:url\"; register(\"ts-node/esm\", pathToFileURL(\"./\"));' node_modules/webpack/bin/webpack.js -c webpack.config.ts", "test-jasmine": "cross-env TRILIUM_DATA_DIR=./data-test tsx ./node_modules/.bin/jasmine", "test-es6": "tsx -r esm spec-es6/attribute_parser.spec.ts", "test": "npm run test-jasmine && npm run test-es6", @@ -167,7 +167,6 @@ "electron-packager": "17.1.2", "electron-rebuild": "3.2.9", "esm": "3.2.25", - "esrun": "^3.2.26", "iconsur": "^1.7.0", "jasmine": "5.1.0", "jsdoc": "^4.0.3", From 86603573f04033e1ee4774f2ed2f24c4ac7e9e34 Mon Sep 17 00:00:00 2001 From: Jin <22962980+JYC333@users.noreply.github.com> Date: Sat, 10 Aug 2024 12:00:57 +0200 Subject: [PATCH 2/4] fix ci build --- .github/workflows/main.yml | 1 + loader-register.js | 10 ++++++++++ package.json | 2 +- 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 loader-register.js diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 47edb19e3..2942e0a24 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -29,6 +29,7 @@ jobs: node-version: 20 cache: "npm" - run: npm ci + - run: npm install --save-dev appdmg - name: Run MacOS installer build (x86_64) run: | npm run update-build-info diff --git a/loader-register.js b/loader-register.js new file mode 100644 index 000000000..346caacb5 --- /dev/null +++ b/loader-register.js @@ -0,0 +1,10 @@ +// Used to register the loader with Node.js +// This is used to avoid the warning message when using the loader +// Can be removed if this PR is merged: +// https://github.com/TypeStrong/ts-node/pull/2073 +// Then probably can change webpack comand to +// "webpack": "cross-env NODE_OPTIONS=--import=ts-node/esm webpack -c webpack.config.ts", + +import { register } from 'node:module'; +import { pathToFileURL } from 'node:url'; +register('ts-node/esm', pathToFileURL('./')); \ No newline at end of file diff --git a/package.json b/package.json index a1d32688e..ea24661bd 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "build-backend-docs": "rimraf ./docs/backend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/backend_api src/becca/entities/*.js src/services/backend_script_api.js src/services/sql.js", "build-frontend-docs": "rimraf ./docs/frontend_api && ./node_modules/.bin/jsdoc -c jsdoc-conf.json -d ./docs/frontend_api src/public/app/entities/*.js src/public/app/services/frontend_script_api.js src/public/app/widgets/basic_widget.js src/public/app/widgets/note_context_aware_widget.js src/public/app/widgets/right_panel_widget.js", "build-docs": "npm run build-backend-docs && npm run build-frontend-docs", - "webpack": "cross-env node --import 'data:text/javascript,import { register } from \"node:module\"; import { pathToFileURL } from \"node:url\"; register(\"ts-node/esm\", pathToFileURL(\"./\"));' node_modules/webpack/bin/webpack.js -c webpack.config.ts", + "webpack": "cross-env node --import ./loader-register.js node_modules/webpack/bin/webpack.js -c webpack.config.ts", "test-jasmine": "cross-env TRILIUM_DATA_DIR=./data-test tsx ./node_modules/.bin/jasmine", "test-es6": "tsx -r esm spec-es6/attribute_parser.spec.ts", "test": "npm run test-jasmine && npm run test-es6", From 468e996ba1e306e5176dd37f069c46ae74eb9322 Mon Sep 17 00:00:00 2001 From: Jin <22962980+JYC333@users.noreply.github.com> Date: Sat, 10 Aug 2024 12:02:45 +0200 Subject: [PATCH 3/4] remove wrong fix --- .github/workflows/main.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2942e0a24..47edb19e3 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -29,7 +29,6 @@ jobs: node-version: 20 cache: "npm" - run: npm ci - - run: npm install --save-dev appdmg - name: Run MacOS installer build (x86_64) run: | npm run update-build-info From 16851d10b4d86ca06ea0f378294a643ecb49a1e1 Mon Sep 17 00:00:00 2001 From: Jin <22962980+JYC333@users.noreply.github.com> Date: Sat, 10 Aug 2024 12:42:59 +0200 Subject: [PATCH 4/4] fix main.yml conflict --- .github/workflows/main.yml | 136 +++++++------------------------------ 1 file changed, 23 insertions(+), 113 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 47edb19e3..df0c79b0a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,9 +18,19 @@ concurrency: cancel-in-progress: true jobs: - build_darwin: - name: Build macOS (x86_64, arm64) - runs-on: macos-latest + make-electron: + name: Make Electron + strategy: + fail-fast: false + matrix: + os: + - name: macos + image: macos-latest + - name: linux + image: ubuntu-latest + - name: windows + image: windows-latest + runs-on: ${{ matrix.os.image }} steps: - uses: actions/checkout@v4 - name: Set up node & dependencies @@ -28,115 +38,15 @@ jobs: with: node-version: 20 cache: "npm" - - run: npm ci - - name: Run MacOS installer build (x86_64) - run: | - npm run update-build-info - npm run make-electron -- --arch="x64" - - name: Publish MacOS zip artifact (x86_64) + + - name: Install dependencies + run: npm ci + - name: Update build info + run: npm run update-build-info + - name: Run electron-forge + run: npm run make-electron + - name: Publish artifacts uses: actions/upload-artifact@v4 with: - name: TriliumNext Notes for MacOS (x86_64) - path: out/make/zip/darwin/x64/*.zip - - name: Publish MacOS installer artifact (x86_64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for MacOS (Setup) (x86_64) - path: out/make/*-x64.dmg - - name: Run MacOS installer build (arm64) - run: | - npm run update-build-info - npm run make-electron -- --arch="arm64" - - name: Publish MacOS zip artifact (arm64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for MacOS (arm64) - path: out/make/zip/darwin/arm64/*.zip - - name: Publish MacOS installer artifact (arm64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for MacOS (Setup) (arm64) - path: out/make/*-arm64.dmg - build_linux: - name: Build Linux (x86_64, arm64) - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Set up node & dependencies - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: "npm" - - run: npm ci - - name: Run Linux installer build (x86_64) - run: | - npm run update-build-info - npm run make-electron -- --arch="x64" - - name: Publish Linux zip artifact (x86_64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for Linux (x86_64) - path: out/make/zip/linux/x64/*.zip - - name: Publish Linux installer artifact (x86_64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for Linux (Setup) (x86_64) - path: out/make/deb/x64/*.deb - - name: Run Linux installer build (arm64) - run: | - npm run update-build-info - npm run make-electron -- --arch="arm64" - - name: Publish Linux zip artifact (arm64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for Linux (arm64) - path: out/make/zip/linux/arm64/*.zip - - name: Publish Linux installer artifact (arm64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for Linux (Setup) (arm64) - path: out/make/deb/arm64/*.deb - build_linux_server-x64: - name: Build Linux Server x86_64 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Set up node & dependencies - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: "npm" - - run: npm ci - - name: Run Linux server build (x86_64) - run: | - npm run update-build-info - ./bin/build-server.sh - - uses: actions/upload-artifact@v4 - with: - name: trilium-linux-x64-server.tar.xz - path: dist/trilium-linux-x64-server-*.tar.xz - build_windows: - name: Build Windows x86_64 - runs-on: windows-latest - steps: - - uses: actions/checkout@v4 - - name: Set up node & dependencies - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: "npm" - - run: npm ci - - name: Run Windows installer build (x86_64) - run: | - npm run update-build-info - npm run make-electron - - name: Publish Windows zip artifact (x86_64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for Windows - path: out/make/zip/win32/x64/*.zip - - name: Publish Windows installer artifact (x86_64) - uses: actions/upload-artifact@v4 - with: - name: TriliumNext Notes for Windows (Setup) - path: out/make/squirrel.windows/x64/*.exe \ No newline at end of file + name: ${{ matrix.os.name }} + path: out/make/** \ No newline at end of file