From 73eb7d2ed505bd6c7a4f9bc6c04f9939e0077d88 Mon Sep 17 00:00:00 2001 From: dlilley Date: Fri, 12 Apr 2024 15:51:32 -0400 Subject: [PATCH 1/3] Add node-loader to resolve packaging failure on Mac --- README.md | 3 ++ package-lock.json | 104 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 1 + webpack.config.js | 8 +++- 4 files changed, 115 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0666763..3355200 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,9 @@ MATLAB language server supports these editors by installing the corresponding ex ### Unreleased +Fixed: +* Resolved packaging failure on Mac + ### 1.2.1 Release date: 2024-04-04 diff --git a/package-lock.json b/package-lock.json index 49be7fe..6118b30 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,6 +31,7 @@ "eslint-plugin-import": "^2.26.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^6.0.1", + "node-loader": "^2.0.0", "ts-loader": "^9.4.1", "typescript": "^4.8.3", "webpack": "^5.74.0", @@ -885,6 +886,15 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -1222,6 +1232,15 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, "node_modules/enhanced-resolve": { "version": "5.12.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", @@ -2813,6 +2832,32 @@ "node": ">=6.11.5" } }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/loader-utils/node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -2940,6 +2985,25 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, + "node_modules/node-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-loader/-/node-loader-2.0.0.tgz", + "integrity": "sha512-I5VN34NO4/5UYJaUBtkrODPWxbobrE4hgDqPrjB25yPkonFhCmZ146vTH+Zg417E9Iwoh1l/MbRs1apc5J295Q==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, "node_modules/node-releases": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", @@ -4937,6 +5001,12 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, "binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -5176,6 +5246,12 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, + "emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true + }, "enhanced-resolve": { "version": "5.12.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", @@ -6321,6 +6397,25 @@ "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", "dev": true }, + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "dependencies": { + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true + } + } + }, "locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -6421,6 +6516,15 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, + "node-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-loader/-/node-loader-2.0.0.tgz", + "integrity": "sha512-I5VN34NO4/5UYJaUBtkrODPWxbobrE4hgDqPrjB25yPkonFhCmZ146vTH+Zg417E9Iwoh1l/MbRs1apc5J295Q==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0" + } + }, "node-releases": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", diff --git a/package.json b/package.json index 6717d97..5e2e547 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "eslint-plugin-import": "^2.26.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^6.0.1", + "node-loader": "^2.0.0", "ts-loader": "^9.4.1", "typescript": "^4.8.3", "webpack": "^5.74.0", diff --git a/webpack.config.js b/webpack.config.js index f539daf..5344c72 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -5,7 +5,9 @@ const path = require('path') const config = { target: 'node', mode: 'none', - + node: { + __dirname: false + }, entry: './src/index.ts', output: { path: path.resolve(__dirname, 'out'), @@ -26,6 +28,10 @@ const config = { loader: 'ts-loader' } ] + }, + { + test: /\.node$/, + loader: 'node-loader' } ] } From f8471241e50824bc0b849cee806297f34fb070dc Mon Sep 17 00:00:00 2001 From: dlilley Date: Fri, 12 Apr 2024 16:03:25 -0400 Subject: [PATCH 2/3] Try removing __dirname config --- webpack.config.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/webpack.config.js b/webpack.config.js index 5344c72..ccaaff7 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -5,9 +5,9 @@ const path = require('path') const config = { target: 'node', mode: 'none', - node: { - __dirname: false - }, + // node: { + // __dirname: false + // }, entry: './src/index.ts', output: { path: path.resolve(__dirname, 'out'), From 1a0f326b4ae3456323ed8fca70eaa0af04f2f949 Mon Sep 17 00:00:00 2001 From: dlilley Date: Tue, 16 Apr 2024 11:44:34 -0400 Subject: [PATCH 3/3] Disable use of fsevents in chokidar --- src/lifecycle/MatlabSession.ts | 3 ++- webpack.config.js | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/lifecycle/MatlabSession.ts b/src/lifecycle/MatlabSession.ts index 6cbae22..2914e12 100644 --- a/src/lifecycle/MatlabSession.ts +++ b/src/lifecycle/MatlabSession.ts @@ -44,7 +44,8 @@ export async function launchNewMatlab (): Promise { const outFile = path.join(Logger.logDir, 'matlabls_conn.json') const watcher = chokidar.watch(outFile, { - persistent: true + persistent: true, + useFsEvents: false }) // This callback will be triggered when MATLAB has launched and writes the watched file. diff --git a/webpack.config.js b/webpack.config.js index ccaaff7..5344c72 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -5,9 +5,9 @@ const path = require('path') const config = { target: 'node', mode: 'none', - // node: { - // __dirname: false - // }, + node: { + __dirname: false + }, entry: './src/index.ts', output: { path: path.resolve(__dirname, 'out'),