From 90f7a205a6b6fd3bf3963dafd5c090734fa73f68 Mon Sep 17 00:00:00 2001 From: Brendan Doherty Date: Sat, 13 Aug 2022 05:48:24 +1200 Subject: [PATCH 1/6] changes needed to build on windows --- packages/desktop-client/package.json | 4 ++-- packages/loot-core/bin/build-browser | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/desktop-client/package.json b/packages/desktop-client/package.json index 4b347da..383b913 100644 --- a/packages/desktop-client/package.json +++ b/packages/desktop-client/package.json @@ -85,10 +85,10 @@ }, "scripts": { "start": "cross-env PORT=3001 node scripts/start.js", - "start:browser": "./bin/watch-browser", + "start:browser": "cross-env ./bin/watch-browser", "watch": "cross-env PORT=3001 node scripts/start.js", "build": "cross-env INLINE_RUNTIME_CHUNK=false node scripts/build.js", - "build:browser": "./bin/build-browser" + "build:browser": "cross-env./bin/build-browser" }, "browserslist": [ "electron 3.0" diff --git a/packages/loot-core/bin/build-browser b/packages/loot-core/bin/build-browser index 2430750..2e0d168 100755 --- a/packages/loot-core/bin/build-browser +++ b/packages/loot-core/bin/build-browser @@ -22,6 +22,7 @@ if [ $NODE_ENV == 'development' ]; then # Make sure to do this before starting the build since watch mode # will block WEBPACK_ARGS="$WEBPACK_ARGS --watch" + export MSYS=winsymlinks:nativestrict ln -snf "$ROOT"/../lib-dist/browser ../../desktop-client/public/kcab fi From f7c977dc1272738781e930581bee330e2505585b Mon Sep 17 00:00:00 2001 From: Tom French Date: Wed, 24 Aug 2022 00:07:06 +0100 Subject: [PATCH 2/6] build: use workspace ranges for monorepo dependencies --- packages/desktop-electron/package.json | 2 +- packages/import-ynab4/package.json | 2 +- packages/import-ynab5/package.json | 2 +- packages/loot-core/package.json | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/desktop-electron/package.json b/packages/desktop-electron/package.json index 29df4a2..7e70c86 100644 --- a/packages/desktop-electron/package.json +++ b/packages/desktop-electron/package.json @@ -48,7 +48,7 @@ "electron-is-dev": "2.0.0", "electron-log": "4.3.2", "electron-updater": "4.3.8", - "loot-core": "*", + "loot-core": "workspace:*", "node-fetch": "^1.6.3", "node-ipc": "9.1.4" }, diff --git a/packages/import-ynab4/package.json b/packages/import-ynab4/package.json index 138abc3..e559193 100644 --- a/packages/import-ynab4/package.json +++ b/packages/import-ynab4/package.json @@ -16,7 +16,7 @@ "bin": "./index.js", "homepage": "https://github.com/actualbudget/actual/tree/master/packages/import-ynab4#readme", "dependencies": { - "@actual-app/api": "^1.0.0", + "@actual-app/api": "workspace:*", "adm-zip": "^0.5.9", "date-fns": "2.0.0-alpha.27", "slash": "3.0.0", diff --git a/packages/import-ynab5/package.json b/packages/import-ynab5/package.json index a15fe5f..1c04a71 100644 --- a/packages/import-ynab5/package.json +++ b/packages/import-ynab5/package.json @@ -16,7 +16,7 @@ "bin": "./index.js", "homepage": "https://github.com/actualbudget/actual/tree/master/packages/import-ynab5#readme", "dependencies": { - "@actual-app/api": "^1.0.0", + "@actual-app/api": "workspace:*", "date-fns": "2.0.0-alpha.27", "uuid": "3.3.2" } diff --git a/packages/loot-core/package.json b/packages/loot-core/package.json index 1208f3b..7db5a45 100644 --- a/packages/loot-core/package.json +++ b/packages/loot-core/package.json @@ -32,12 +32,12 @@ "md5": "^2.3.0", "mitt": "^2.1.0", "node-fetch": "^1.6.3", - "node-libofx": "*", + "node-libofx": "workspace:*", "regenerator-runtime": "^0.13.7" }, "devDependencies": { - "@actual-app/api": "*", - "@actual-app/import-ynab4": "*", + "@actual-app/api": "workspace:*", + "@actual-app/import-ynab4": "workspace:*", "@babel/core": "~7.14.3", "adm-zip": "cthackers/adm-zip#ff17ae85", "babel-jest": "25.2.6", From ae8ef2674fd781e99e76fa572715ef48cc1d5257 Mon Sep 17 00:00:00 2001 From: Tom French Date: Tue, 30 Aug 2022 17:07:38 +0100 Subject: [PATCH 3/6] build: update yarn.lock --- yarn.lock | 59 +++++++++++-------------------------------------------- 1 file changed, 11 insertions(+), 48 deletions(-) diff --git a/yarn.lock b/yarn.lock index d62e79d..e7f6d30 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12,7 +12,7 @@ __metadata: languageName: node linkType: hard -"@actual-app/api@*, @actual-app/api@workspace:packages/api": +"@actual-app/api@workspace:*, @actual-app/api@workspace:packages/api": version: 0.0.0-use.local resolution: "@actual-app/api@workspace:packages/api" dependencies: @@ -22,21 +22,11 @@ __metadata: languageName: unknown linkType: soft -"@actual-app/api@npm:^1.0.0": - version: 1.1.3 - resolution: "@actual-app/api@npm:1.1.3" - dependencies: - node-ipc: 9.1.1 - uuid: 3.3.2 - checksum: e7fccff7583d64ac908eb7a7c93226200fd75af92b9fe9718b6e3fe0d004d92d79d87485e212b0d3d86cb685827e6733c939ece799156eea64db886bf1457a94 - languageName: node - linkType: hard - -"@actual-app/import-ynab4@*, @actual-app/import-ynab4@workspace:packages/import-ynab4": +"@actual-app/import-ynab4@workspace:*, @actual-app/import-ynab4@workspace:packages/import-ynab4": version: 0.0.0-use.local resolution: "@actual-app/import-ynab4@workspace:packages/import-ynab4" dependencies: - "@actual-app/api": ^1.0.0 + "@actual-app/api": "workspace:*" adm-zip: ^0.5.9 date-fns: 2.0.0-alpha.27 slash: 3.0.0 @@ -50,7 +40,7 @@ __metadata: version: 0.0.0-use.local resolution: "@actual-app/import-ynab5@workspace:packages/import-ynab5" dependencies: - "@actual-app/api": ^1.0.0 + "@actual-app/api": "workspace:*" date-fns: 2.0.0-alpha.27 uuid: 3.3.2 bin: @@ -4302,7 +4292,7 @@ __metadata: electron-notarize: 1.0.0 electron-rebuild: 2.3.5 electron-updater: 4.3.8 - loot-core: "*" + loot-core: "workspace:*" node-fetch: ^1.6.3 node-ipc: 9.1.4 languageName: unknown @@ -8819,7 +8809,7 @@ __metadata: languageName: node linkType: hard -"easy-stack@npm:^1.0.0, easy-stack@npm:^1.0.1": +"easy-stack@npm:^1.0.1": version: 1.0.1 resolution: "easy-stack@npm:1.0.1" checksum: 161a99e497b3857b0be4ec9e1ebbe90b241ea9d84702f9881b8e5b3f6822065b8c4e33436996935103e191bffba3607de70712a792f4d406a050def48c6bc381 @@ -13690,13 +13680,6 @@ jest-snapshot@test: languageName: node linkType: hard -"js-message@npm:1.0.5": - version: 1.0.5 - resolution: "js-message@npm:1.0.5" - checksum: fd2fc8837a88a115aa2fa859bf5c13d9b335fd7eeba8426c44da6eb006b04c52cfe6675b3c27d6b112ffc51dadb8bc51d58340c3a3aa5c555d7da6bdc72ce9c0 - languageName: node - linkType: hard - "js-message@npm:1.0.7": version: 1.0.7 resolution: "js-message@npm:1.0.7" @@ -13704,15 +13687,6 @@ jest-snapshot@test: languageName: node linkType: hard -"js-queue@npm:2.0.0": - version: 2.0.0 - resolution: "js-queue@npm:2.0.0" - dependencies: - easy-stack: ^1.0.0 - checksum: 8f8e589cc20fd3bc3067db73ecaac77b55411c3ac58fdd6882868924ee19ab4203d19e68d3ec680c5c8f5e8282e30dafa377014dbec05c3f2d33be4596f4fb65 - languageName: node - linkType: hard - "js-queue@npm:2.0.2": version: 2.0.2 resolution: "js-queue@npm:2.0.2" @@ -14541,12 +14515,12 @@ jest-snapshot@test: languageName: node linkType: hard -"loot-core@*, loot-core@workspace:packages/loot-core": +"loot-core@*, loot-core@workspace:*, loot-core@workspace:packages/loot-core": version: 0.0.0-use.local resolution: "loot-core@workspace:packages/loot-core" dependencies: - "@actual-app/api": "*" - "@actual-app/import-ynab4": "*" + "@actual-app/api": "workspace:*" + "@actual-app/import-ynab4": "workspace:*" "@babel/core": ~7.14.3 "@babel/register": ^7.12.10 "@jlongster/mixpanel": ^0.13.4 @@ -14587,7 +14561,7 @@ jest-snapshot@test: mockdate: ^3.0.5 murmurhash: ^0.0.2 node-fetch: ^1.6.3 - node-libofx: "*" + node-libofx: "workspace:*" npm-run-all: ^4.1.3 perf-deets: ^1.0.15 prettier: ^1.19.1 @@ -16098,17 +16072,6 @@ jest-snapshot@test: languageName: node linkType: hard -"node-ipc@npm:9.1.1": - version: 9.1.1 - resolution: "node-ipc@npm:9.1.1" - dependencies: - event-pubsub: 4.3.0 - js-message: 1.0.5 - js-queue: 2.0.0 - checksum: 2b66099d1976e4328d34ae7fec853d3969ca337b52b5aefb48ae1d19387c37d6716c2b98d4a4934ec24aa79f0441721961d6c1beb858c294ad6a7a97ddf5460d - languageName: node - linkType: hard - "node-ipc@npm:9.1.4": version: 9.1.4 resolution: "node-ipc@npm:9.1.4" @@ -16120,7 +16083,7 @@ jest-snapshot@test: languageName: node linkType: hard -"node-libofx@*, node-libofx@workspace:packages/node-libofx": +"node-libofx@workspace:*, node-libofx@workspace:packages/node-libofx": version: 0.0.0-use.local resolution: "node-libofx@workspace:packages/node-libofx" languageName: unknown From 18e6eac11678e14016bb60522b040a46e290f9be Mon Sep 17 00:00:00 2001 From: bdoherty Date: Wed, 31 Aug 2022 07:31:03 +1200 Subject: [PATCH 4/6] Conditionally set MSYS Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com> --- packages/loot-core/bin/build-browser | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/loot-core/bin/build-browser b/packages/loot-core/bin/build-browser index 2e0d168..c2888de 100755 --- a/packages/loot-core/bin/build-browser +++ b/packages/loot-core/bin/build-browser @@ -22,7 +22,10 @@ if [ $NODE_ENV == 'development' ]; then # Make sure to do this before starting the build since watch mode # will block WEBPACK_ARGS="$WEBPACK_ARGS --watch" - export MSYS=winsymlinks:nativestrict + if [ "$OSTYPE" == "msys" ]; then + // Ensure symlinks are created as native Windows symlinks. + export MSYS=winsymlinks:nativestrict + fi ln -snf "$ROOT"/../lib-dist/browser ../../desktop-client/public/kcab fi From d293613645f48c0fd28121bca91cf683411de091 Mon Sep 17 00:00:00 2001 From: Tom French Date: Tue, 30 Aug 2022 20:33:17 +0100 Subject: [PATCH 5/6] build: remove patch-package dependency from loot-design --- packages/loot-design/package.json | 3 --- yarn.lock | 9 --------- 2 files changed, 12 deletions(-) diff --git a/packages/loot-design/package.json b/packages/loot-design/package.json index 3a05dfe..1b54ea5 100644 --- a/packages/loot-design/package.json +++ b/packages/loot-design/package.json @@ -36,9 +36,7 @@ "dependencies": { "@juggle/resize-observer": "^3.1.2", "hotkeys-js": "3.8.2", - "patch-package": "^6.1.2", "pikaday": "1.8.0", - "postinstall-postinstall": "^2.0.0", "react-dnd": "^10.0.2", "react-merge-refs": "^1.1.0", "react-modal": "3.4.4", @@ -48,7 +46,6 @@ "scripts": { "start": "react-scripts start", "start:mobile": "IS_REACT_NATIVE=1 react-scripts start", - "postinstall": "patch-package", "test": "npm-run-all -cp 'test:*'", "test:web": "jest -c jest.config.js", "test:react-native": "jest -c jest.rn.config.js" diff --git a/yarn.lock b/yarn.lock index e7f6d30..4a6127f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14606,10 +14606,8 @@ jest-snapshot@test: memoizee: ^0.4.12 node-noop: 1.0.0 npm-run-all: ^4.1.3 - patch-package: ^6.1.2 pikaday: 1.8.0 polished: ^1.8.1 - postinstall-postinstall: ^2.0.0 prettier: ^1.14.2 prop-types: 15.6.0 react: 16.13.1 @@ -18205,13 +18203,6 @@ jest-snapshot@test: languageName: node linkType: hard -"postinstall-postinstall@npm:^2.0.0": - version: 2.1.0 - resolution: "postinstall-postinstall@npm:2.1.0" - checksum: e1d34252cf8d2c5641c7d2db7426ec96e3d7a975f01c174c68f09ef5b8327bc8d5a9aa2001a45e693db2cdbf69577094d3fe6597b564ad2d2202b65fba76134b - languageName: node - linkType: hard - "prebuild-install@npm:^6.0.1": version: 6.1.4 resolution: "prebuild-install@npm:6.1.4" From e638cdf4673c2ca46ebf699427b8f0c09d659407 Mon Sep 17 00:00:00 2001 From: Tom French <15848336+TomAFrench@users.noreply.github.com> Date: Tue, 30 Aug 2022 20:35:57 +0100 Subject: [PATCH 6/6] fix: use correct comment style --- packages/loot-core/bin/build-browser | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/loot-core/bin/build-browser b/packages/loot-core/bin/build-browser index c2888de..0ae89a5 100755 --- a/packages/loot-core/bin/build-browser +++ b/packages/loot-core/bin/build-browser @@ -23,7 +23,7 @@ if [ $NODE_ENV == 'development' ]; then # will block WEBPACK_ARGS="$WEBPACK_ARGS --watch" if [ "$OSTYPE" == "msys" ]; then - // Ensure symlinks are created as native Windows symlinks. + # Ensure symlinks are created as native Windows symlinks. export MSYS=winsymlinks:nativestrict fi ln -snf "$ROOT"/../lib-dist/browser ../../desktop-client/public/kcab