From b2346fcacf82318b0df8e5d21e73c710e143c869 Mon Sep 17 00:00:00 2001 From: kamre Date: Fri, 16 Jul 2021 09:30:22 +0700 Subject: [PATCH] Use cross-env instead of win-node-env (#656) * File `package-lock.json` updated. * Use `cross-env` for setting environment variables in npm scripts. * Remove all the mentions of `win-node-env` because it is no longer needed for running npm scripts. Co-authored-by: Chen-I Lim <46905241+chenilim@users.noreply.github.com> --- .github/workflows/build-win-wpf.yml | 3 - .github/workflows/dev-release.yml | 3 - .github/workflows/prod-release.yml | 3 - README.md | 1 - webapp/package-lock.json | 130 ++++++++++++++++++ webapp/package.json | 9 +- webapp/{webpack.js => webpack.prod.js} | 0 .../contribute/getting-started/dev-tips.md | 1 - 8 files changed, 135 insertions(+), 15 deletions(-) rename webapp/{webpack.js => webpack.prod.js} (100%) diff --git a/.github/workflows/build-win-wpf.yml b/.github/workflows/build-win-wpf.yml index 24fe8c629..7eeeefda6 100644 --- a/.github/workflows/build-win-wpf.yml +++ b/.github/workflows/build-win-wpf.yml @@ -20,9 +20,6 @@ jobs: - name: Add msbuild to PATH uses: microsoft/setup-msbuild@v1.0.2 - - name: win-node-env - run: npm install -g win-node-env - - name: npm install run: cd webapp; npm install --no-optional diff --git a/.github/workflows/dev-release.yml b/.github/workflows/dev-release.yml index 4c44d2280..0df3143e9 100644 --- a/.github/workflows/dev-release.yml +++ b/.github/workflows/dev-release.yml @@ -114,9 +114,6 @@ jobs: - name: Add msbuild to PATH uses: microsoft/setup-msbuild@v1.0.2 - - name: win-node-env - run: npm install -g win-node-env - - name: npm install run: cd webapp; npm install --no-optional diff --git a/.github/workflows/prod-release.yml b/.github/workflows/prod-release.yml index fab8d9d09..11f7ff067 100644 --- a/.github/workflows/prod-release.yml +++ b/.github/workflows/prod-release.yml @@ -109,9 +109,6 @@ jobs: - name: Add msbuild to PATH uses: microsoft/setup-msbuild@v1.0.2 - - name: win-node-env - run: npm install -g win-node-env - - name: npm install run: cd webapp; npm install --no-optional diff --git a/README.md b/README.md index 595a4d06c..a7fcf3b26 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,6 @@ You can build standalone apps that package the server to run locally against SQL * *Tested with: Ubuntu 18.04* * Windows: * Open a git-bash prompt - * Install win-node-env `npm install -g win-node-env` * `make win-wpf-app` * run `cd win-wpf/msix && focalboard.exe` * *Requires: Windows 10* diff --git a/webapp/package-lock.json b/webapp/package-lock.json index 0dce22632..21a9dc486 100644 --- a/webapp/package-lock.json +++ b/webapp/package-lock.json @@ -55,6 +55,7 @@ "@typescript-eslint/eslint-plugin": "^4.19.0", "@typescript-eslint/parser": "^4.19.0", "copy-webpack-plugin": "^8.1.0", + "cross-env": "^7.0.3", "css-loader": "^5.2.0", "eslint": "^7.22.0", "eslint-import-resolver-webpack": "0.13.0", @@ -4434,6 +4435,83 @@ "sha.js": "^2.4.8" } }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/cross-env/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-env/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-env/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-env/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cross-env/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", @@ -20309,6 +20387,58 @@ "sha.js": "^2.4.8" } }, + "cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "requires": { + "cross-spawn": "^7.0.1" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, "cross-spawn": { "version": "6.0.5", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", diff --git a/webapp/package.json b/webapp/package.json index d95cc662d..c75fa1567 100644 --- a/webapp/package.json +++ b/webapp/package.json @@ -4,16 +4,16 @@ "private": true, "description": "", "scripts": { - "pack": "NODE_ENV=production webpack --config webpack.js", - "packdev": "NODE_ENV=dev webpack --config webpack.dev.js", - "watchdev": "NODE_ENV=dev webpack --watch --config webpack.dev.js", + "pack": "cross-env NODE_ENV=production webpack --config webpack.prod.js", + "packdev": "cross-env NODE_ENV=dev webpack --config webpack.dev.js", + "watchdev": "cross-env NODE_ENV=dev webpack --watch --config webpack.dev.js", "test": "jest", "updatesnapshot": "jest --updateSnapshot", "check": "eslint --ext .tsx,.ts . --quiet --cache", "fix": "eslint --ext .tsx,.ts . --quiet --fix --cache", "fix:scss": "prettier --write './src/**/*.scss'", "i18n-extract": "formatjs extract src/*/*/*.ts? src/*/*.ts? src/*.ts? --out-file i18n/tmp.json; formatjs compile i18n/tmp.json --out-file i18n/en.json; rm i18n/tmp.json", - "runserver-test": "cd cypress && FOCALBOARD_SINGLE_USER_TOKEN=TESTTOKEN ../../bin/focalboard-server -single-user", + "runserver-test": "cd cypress && cross-env FOCALBOARD_SINGLE_USER_TOKEN=TESTTOKEN ../../bin/focalboard-server -single-user", "cypress:ci": "start-server-and-test runserver-test http://localhost:8088 cypress:run", "cypress:run": "cypress run", "cypress:run:chrome": "cypress run --browser chrome", @@ -89,6 +89,7 @@ "@typescript-eslint/eslint-plugin": "^4.19.0", "@typescript-eslint/parser": "^4.19.0", "copy-webpack-plugin": "^8.1.0", + "cross-env": "^7.0.3", "css-loader": "^5.2.0", "eslint": "^7.22.0", "eslint-import-resolver-webpack": "0.13.0", diff --git a/webapp/webpack.js b/webapp/webpack.prod.js similarity index 100% rename from webapp/webpack.js rename to webapp/webpack.prod.js diff --git a/website/site/content/contribute/getting-started/dev-tips.md b/website/site/content/contribute/getting-started/dev-tips.md index d208ef89e..9edd016ce 100644 --- a/website/site/content/contribute/getting-started/dev-tips.md +++ b/website/site/content/contribute/getting-started/dev-tips.md @@ -14,7 +14,6 @@ Check that you have recent versions of the basic dependencies installed: * [Node](https://nodejs.org/en/download/) (v10+) and [npm](https://www.npmjs.com/get-npm) On Windows: -* `npm install -g win-node-env` for npm run to work * Install [Mingw64](https://chocolatey.org/packages/mingw) via [Chocolatey](https://chocolatey.org/) On Mac, to build the Mac app: