diff --git a/bin/better-sqlite3/linux-desktop-better_sqlite3.node b/bin/better-sqlite3/linux-desktop-better_sqlite3.node deleted file mode 100755 index dc587cec5..000000000 Binary files a/bin/better-sqlite3/linux-desktop-better_sqlite3.node and /dev/null differ diff --git a/bin/better-sqlite3/linux-server-better_sqlite3.node b/bin/better-sqlite3/linux-server-better_sqlite3.node deleted file mode 100755 index 00c00a96f..000000000 Binary files a/bin/better-sqlite3/linux-server-better_sqlite3.node and /dev/null differ diff --git a/bin/better-sqlite3/mac-arm64-better_sqlite3.node b/bin/better-sqlite3/mac-arm64-better_sqlite3.node deleted file mode 100755 index 3eadd64bc..000000000 Binary files a/bin/better-sqlite3/mac-arm64-better_sqlite3.node and /dev/null differ diff --git a/bin/better-sqlite3/mac-x64-better_sqlite3.node b/bin/better-sqlite3/mac-x64-better_sqlite3.node deleted file mode 100755 index 0bb7c6a56..000000000 Binary files a/bin/better-sqlite3/mac-x64-better_sqlite3.node and /dev/null differ diff --git a/bin/better-sqlite3/update.sh b/bin/better-sqlite3/update.sh deleted file mode 100755 index 74dbeb01b..000000000 --- a/bin/better-sqlite3/update.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env bash -ELECTRON_VERSION="electron-v125" -NODE_VERSION="node-v115" - -if ! command -v jq &> /dev/null; then - echo "Missing command: jq" - exit 1 -fi - -script_dir=$(realpath $(dirname $0)) -cd "$script_dir" -BETTER_SQLITE3_VERSION=$(jq -r '.dependencies.["better-sqlite3"]' ../../package.json | grep -oP "\d+\.\d+\.\d+") - -if [ -z $BETTER_SQLITE3_VERSION ]; then - echo "Unable to determine better-sqlite3 version." - exit 2 -fi - -echo "Version: $BETTER_SQLITE3_VERSION" - -function download() { - version="$1" - platform="$2" - dest_name="$3" - url=https://github.com/WiseLibs/better-sqlite3/releases/download/v${BETTER_SQLITE3_VERSION}/better-sqlite3-v${BETTER_SQLITE3_VERSION}-${version}-${platform}.tar.gz - temp_file="temp.tar.gz" - curl -L "$url" -o "$temp_file" - tar -xzvf "$temp_file" - mv build/Release/better_sqlite3.node "$dest_name-better_sqlite3.node" - rm -rf build - rm -f "$temp_file" -} - -download $NODE_VERSION "linux-x64" "linux-server" -download $ELECTRON_VERSION "linux-x64" "linux-desktop" -download $ELECTRON_VERSION "win32-x64" "win" -download $ELECTRON_VERSION "darwin-x64" "mac-x64" -download $ELECTRON_VERSION "darwin-arm64" "mac-arm64" \ No newline at end of file diff --git a/bin/better-sqlite3/win-better_sqlite3.node b/bin/better-sqlite3/win-better_sqlite3.node deleted file mode 100644 index 5020e45eb..000000000 Binary files a/bin/better-sqlite3/win-better_sqlite3.node and /dev/null differ diff --git a/bin/build-linux-x64.sh b/bin/build-linux-x64.sh index 8003c9d73..977175e9f 100755 --- a/bin/build-linux-x64.sh +++ b/bin/build-linux-x64.sh @@ -27,7 +27,7 @@ SRC_DIR=./dist/trilium-linux-x64-src [ "$1" != "DONTCOPY" ] && ./bin/copy-trilium.sh "$SRC_DIR" echo "Copying required linux-x64 binaries" -cp -r bin/better-sqlite3/linux-desktop-better_sqlite3.node "$SRC_DIR"/node_modules/better-sqlite3/build/Release/better_sqlite3.node +# cp -r bin/better-sqlite3/linux-desktop-better_sqlite3.node "$SRC_DIR"/node_modules/better-sqlite3/build/Release/better_sqlite3.node echo "Packaging linux x64 electron build" ./node_modules/.bin/electron-packager "$SRC_DIR" --asar --out=dist --executable-name=trilium --platform=linux --arch=x64 --overwrite diff --git a/bin/build-mac-arm64.sh b/bin/build-mac-arm64.sh index c1b4ff144..c5c6229c6 100755 --- a/bin/build-mac-arm64.sh +++ b/bin/build-mac-arm64.sh @@ -11,7 +11,7 @@ fi echo "Copying required mac arm64 binaries" -cp -r bin/better-sqlite3/mac-arm64-better_sqlite3.node $SRC_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node +# cp -r bin/better-sqlite3/mac-arm64-better_sqlite3.node $SRC_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node echo "Packaging mac arm64 electron build" diff --git a/bin/build-mac-x64.sh b/bin/build-mac-x64.sh index 890cf6d3d..2b5f709ce 100755 --- a/bin/build-mac-x64.sh +++ b/bin/build-mac-x64.sh @@ -11,7 +11,7 @@ fi echo "Copying required mac x64 binaries" -cp -r bin/better-sqlite3/mac-x64-better_sqlite3.node $SRC_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node +# cp -r bin/better-sqlite3/mac-x64-better_sqlite3.node $SRC_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node echo "Packaging mac x64 electron build" diff --git a/bin/build-server.sh b/bin/build-server.sh index 33a93bf5a..5918ad30d 100755 --- a/bin/build-server.sh +++ b/bin/build-server.sh @@ -24,7 +24,7 @@ rm -r $PKG_DIR/node/include/node rm -r $PKG_DIR/node_modules/electron* rm -r $PKG_DIR/electron.js -cp -r bin/better-sqlite3/linux-server-better_sqlite3.node $PKG_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node +# cp -r bin/better-sqlite3/linux-server-better_sqlite3.node $PKG_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node printf "#!/bin/sh\n./node/bin/node src/www" > $PKG_DIR/trilium.sh chmod 755 $PKG_DIR/trilium.sh diff --git a/bin/build-win-x64.sh b/bin/build-win-x64.sh index 1d5780d2a..79bb253d9 100755 --- a/bin/build-win-x64.sh +++ b/bin/build-win-x64.sh @@ -16,7 +16,7 @@ fi echo "Copying required windows binaries" -cp -r bin/better-sqlite3/win-better_sqlite3.node $SRC_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node +# cp -r bin/better-sqlite3/win-better_sqlite3.node $SRC_DIR/node_modules/better-sqlite3/build/Release/better_sqlite3.node echo "Packaging windows x64 electron build" diff --git a/loader-register.js b/loader-register.js new file mode 100644 index 000000000..566b7800c --- /dev/null +++ b/loader-register.js @@ -0,0 +1,4 @@ +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 da8e7922b..405af6db7 100644 --- a/package.json +++ b/package.json @@ -23,19 +23,17 @@ "start-server": "cross-env TRILIUM_DATA_DIR=./data TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon src/www.ts", "start-server-safe": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon src/www.ts", "start-server-no-dir": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon src/www.ts", - "qstart-server": "npm run qswitch-server && TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 nodemon src/www.ts", - "start-electron": "rimraf ./dist && tsc && tsx ./bin/copy-dist.ts && cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron ./dist/electron.js --inspect=5858 .", + "start-test-server": "npm run switch-server; rimraf ./data-test; cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data-test TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev TRILIUM_PORT=9999 ts-node src/www.ts", + "qstart-server": "npm run switch-server && npm run start-server", + "start-electron": "npm run prepare-dist && cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron ./dist/electron.js --inspect=5858 .", "start-electron-no-dir": "cross-env TRILIUM_SAFE_MODE=1 TRILIUM_ENV=dev TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 electron --inspect=5858 .", - "qstart-electron": "npm run qswitch-electron && TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev electron --inspect=5858 .", - "start-test-server": "npm run qswitch-server; rimraf ./data-test; cross-env TRILIUM_SAFE_MODE=1 TRILIUM_DATA_DIR=./data-test TRILIUM_SYNC_SERVER_HOST=http://tsyncserver:4000 TRILIUM_ENV=dev TRILIUM_PORT=9999 ts-node src/www.ts", + "qstart-electron": "npm run switch-electron && npm run start-electron", "switch-server": "rimraf ./node_modules/better-sqlite3 && npm install", "switch-electron": "npx electron-rebuild", - "qswitch-server": "rimraf ./node_modules/better-sqlite3/bin ; mkdir -p ./node_modules/better-sqlite3/build ; cp ./bin/better-sqlite3/linux-server-better_sqlite3.node ./node_modules/better-sqlite3/build/better_sqlite3.node", - "qswitch-electron": "rimraf ./node_modules/better-sqlite3/bin ; mkdir -p ./node_modules/better-sqlite3/build ; cp ./bin/better-sqlite3/linux-desktop-better_sqlite3.node ./node_modules/better-sqlite3/build/better_sqlite3.node", "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_OPTIONS=--loader=ts-node/esm webpack -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",