2bb622c314
* PoC performance tests in CI * Add a naive measurement * Change in spec descriptions * More minimal reporter and 2 tests: 1 failing, 1 succeeding * Fix circleci config * Fix circleci part 2 * Make performance tests a workflow * add npm install in performance tests * change executor * Experimenting: Install crossenv * Experimenting * More experimenting * Revert some changes * Run update_image and cache node modules * Sandbox e2e tests run * fix code residual from rebase * Add GH action for ci perf * Use ubuntu instead of macos * Use windows instead of ubuntu * Fix env set command * Use post-test script to check performance * Use macos-latest * Throw error when tests fail * Use measudePerformance function instead * Use measudePerformance function instead * Try to run e2e on github actions * Try headless script * Install linux packages * Add shell * Use if: runner.. * ADd sudo * Add more linux packages * Go back to macos * Try recursive find for main window * Remove performance tests from circleCi * Increase retries * Fix * Revert "Fix" This reverts commit c19fc56600ada4eee3e26bf3988b27d2ce2616d1. * Revert "Increase retries" This reverts commit 564ac95c34def892595c17b98eec245cacb0d4a4. * Revert "Remove performance tests from circleCi" This reverts commit c49c73b6f811df12631036bc33dae30da2271173. * Revert "Try recursive find for main window" This reverts commit 19d9367f9317f6e9d7ef9aa6a5d69eccdff2df67. * Revert "Go back to macos" This reverts commit 72b796ad983e89940f84d53039affd867d0e7f34. * Revert "Add more linux packages" This reverts commit 4bd510f8ea5356c13fbc4722be874aeea32de43e. * Revert "ADd sudo" This reverts commit acb95e02609e7cc02b12863910d29c03694936c1. * Revert "Use if: runner.." This reverts commit 69beed6fe24e452b1d7f0b0e4578bbfa9ca36d2f. * Revert "Add shell" This reverts commit e1743664a8b01797da4112314af0b88318ad2fd7. * Revert "Install linux packages" This reverts commit 25195dd11c827dff0fd8cf4fbdf2dc709377d525. * Revert "Try headless script" This reverts commit 385be5609d5ee45363d26828f6a14c6be0ef661a. * Revert "Try to run e2e on github actions" This reverts commit be8f682fd8a82b265403471b5106fd5107f9fecb. * Revert "Use measudePerformance function instead" This reverts commit bfd46768ae845e2839e9f124735922da6301fa4e. * Revert "Use measudePerformance function instead" This reverts commit ab4bc22b8689ff35260b4ab55724a77dc5993426. * Update workflow command * Remove circleci config for perf tests * Run on ubuntu * Add packages for linux * Fix order of commands * Move env var at the beginning * Upload test results to s3 * Update name * Update name * Add trigger for flag * Add step to upload artifact to github workflow artifacts * Update yml * Add step to comment the results in the PR * Fix env bug * move constant to workflow env * Wrap workflow env with single quotes * Add start comment and remove label steps * Update body of comment * Remove unused file * Move PR comment function into file * Fix import * Remove spaces from line start * Remove label even if workflow failed * Add logging * Fix markdown table data * Remove trailing semi string --------- Co-authored-by: Tasos Boulis <tboulis@hotmail.com> Co-authored-by: Mattermost Build <build@mattermost.com>
239 lines
9.8 KiB
JSON
239 lines
9.8 KiB
JSON
{
|
|
"name": "mattermost-desktop",
|
|
"productName": "Mattermost",
|
|
"version": "5.3.0-develop.1",
|
|
"description": "Mattermost",
|
|
"main": "dist/index.js",
|
|
"author": "Mattermost, Inc. <feedback@mattermost.com>",
|
|
"license": "Apache-2.0",
|
|
"desktopName": "Mattermost.Desktop",
|
|
"homepage": "https://mattermost.com",
|
|
"engines": {
|
|
"node": ">=16.16.0"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git://github.com/mattermost/desktop.git"
|
|
},
|
|
"config": {
|
|
"target": "21.2.0",
|
|
"arch": "x64",
|
|
"target_arch": "x64",
|
|
"disturl": "https://electronjs.org/headers",
|
|
"runtime": "electron",
|
|
"build_from_source": true
|
|
},
|
|
"scripts": {
|
|
"build": "npm-run-all build:*",
|
|
"build:main": "webpack-cli --config webpack.config.main.js",
|
|
"build:renderer": "webpack-cli --config webpack.config.renderer.js",
|
|
"build-prod": "cross-env NODE_ENV=production npm-run-all check-build-config build",
|
|
"build-prod-upgrade": "cross-env NODE_ENV=production CAN_UPGRADE=true npm-run-all check-build-config build",
|
|
"build-robotjs": "cross-env CL='/std:c++17' electron-rebuild -m ./node_modules/robotjs",
|
|
"start": "electron dist/ --disable-dev-mode",
|
|
"restart": "npm run build && npm run start",
|
|
"storybook": "start-storybook -p 9001 -c src/.storybook",
|
|
"clean": "rm -rf release/ node_modules/ src/node_modules/ dist/ && find src -name '*_bundle.js' | xargs rm",
|
|
"clean-install": "npm run clean && npm install",
|
|
"clean-dist": "rm -rf dist/",
|
|
"watch": "run-p watch:*",
|
|
"watch:main": "node scripts/watch_main_and_preload.js",
|
|
"watch:renderer": "webpack-dev-server --config webpack.config.renderer.js",
|
|
"test": "npm-run-all lint:js test:unit test:e2e",
|
|
"test:docker": "node scripts/setup_e2e_docker.js",
|
|
"test:e2e": "cross-env NODE_ENV=test npm-run-all build build-robotjs test:e2e:build test:e2e:run",
|
|
"test:e2e:performance": "cross-env NODE_ENV=test PERFORMANCE=true npm-run-all build build-robotjs test:e2e:build-performance test:e2e:run-performance",
|
|
"test:e2e:nobuild": "cross-env NODE_ENV=test npm-run-all test:e2e:build test:e2e:run",
|
|
"test:e2e:build": "webpack-cli --config webpack.config.test.js",
|
|
"test:e2e:build-performance": "webpack-cli --config webpack.config.performance.test.js",
|
|
"test:e2e:run-performance": "electron-mocha -r @babel/register --reporter json --reporter-option output=./e2e/performance/perf-test-report.json dist/tests/e2e_bundle.js",
|
|
"test:e2e:run": "electron-mocha -r @babel/register --reporter mochawesome dist/tests/e2e_bundle.js",
|
|
"test:e2e:send-report": "node ./e2e/save_report.js",
|
|
"test:unit": "cross-env NODE_ENV=jest jest",
|
|
"test:unit-ci": "cross-env NODE_ENV=jest jest --runInBand",
|
|
"test:coverage": "jest --coverage",
|
|
"package:all": "cross-env NODE_ENV=production npm-run-all package:windows package:windows-nsis package:mac package:mac-with-universal package:linux",
|
|
"package:windows": "npm-run-all build-prod && electron-builder --win zip --x64 --ia32 --arm64 --publish=never",
|
|
"package:windows-nsis": "npm-run-all build-prod-upgrade && electron-builder --win zip nsis --x64 --ia32 --arm64 --publish=never",
|
|
"package:mac": "npm-run-all build-prod && electron-builder --mac --x64 --arm64 --publish=never",
|
|
"package:mac-with-universal": "npm-run-all build-prod && electron-builder --mac --x64 --arm64 --universal --publish=never",
|
|
"package:mas": "cross-env NODE_ENV=production IS_MAC_APP_STORE=true npm-run-all check-build-config build && electron-builder --mac mas --universal --publish=never",
|
|
"package:mas-dev": "cross-env NODE_ENV=production IS_MAC_APP_STORE=true npm-run-all check-build-config build && electron-builder --mac mas-dev --universal --publish=never",
|
|
"package:linux": "npm-run-all package:linux-all package:linux-appImage",
|
|
"package:linux-appImage": "npm-run-all build-prod-upgrade package:linux-appImage-x64 package:linux-appImage-arm64",
|
|
"package:linux-appImage-x64": "electron-builder --linux tar.gz appimage --x64 --publish=never",
|
|
"package:linux-appImage-arm64": "cross-env CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ electron-builder --linux tar.gz appimage --arm64 --publish=never",
|
|
"package:linux-all": "npm-run-all build-prod package:linux-all-x64 package:linux-all-arm64",
|
|
"package:linux-all-x64": "electron-builder --linux tar.gz deb rpm --x64 --publish=never",
|
|
"package:linux-all-arm64": "cross-env CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ electron-builder --linux tar.gz deb rpm --arm64 --publish=never",
|
|
"lint:js": "eslint --ignore-path .gitignore --ignore-pattern node_modules --ext .js --ext .jsx --ext .ts --ext .tsx .",
|
|
"lint:js-quiet": "eslint --ignore-path .gitignore --ignore-pattern node_modules --ext .js --ext .jsx --ext .ts --ext .tsx . --quiet",
|
|
"fix:js": "eslint --ignore-path .gitignore --ignore-pattern node_modules --quiet --ext .js --ext .jsx --ext .ts --ext .tsx . --fix",
|
|
"check-build-config": "npm-run-all check-build-config:build check-build-config:run",
|
|
"check-build-config:build": "babel ./src/common/config/buildConfig.ts -o ./dist/buildConfig.js",
|
|
"check-build-config:run": "node -r @babel/register scripts/check_build_config.js",
|
|
"check-types": "tsc",
|
|
"prune": "ts-prune",
|
|
"mmjstool": "mmjstool",
|
|
"i18n-extract": "npm run mmjstool -- i18n extract-desktop",
|
|
"postinstall": "node scripts/patch_macos_notification_state.js && electron-builder install-app-deps"
|
|
},
|
|
"jest": {
|
|
"clearMocks": true,
|
|
"moduleDirectories": [
|
|
"",
|
|
"node_modules"
|
|
],
|
|
"moduleFileExtensions": [
|
|
"ts",
|
|
"tsx",
|
|
"js",
|
|
"jsx",
|
|
"json"
|
|
],
|
|
"collectCoverageFrom": [
|
|
"src/common/**/*.ts",
|
|
"src/main/**/*.ts"
|
|
],
|
|
"testMatch": [
|
|
"**/src/**/*.test.js"
|
|
],
|
|
"testPathIgnorePatterns": [
|
|
"/node_modules/",
|
|
"/e2e/",
|
|
"/webpack.config.test.js"
|
|
],
|
|
"globals": {
|
|
"__HASH_VERSION__": "5.0.0",
|
|
"__CAN_UPGRADE__": false,
|
|
"__IS_NIGHTLY_BUILD__": false,
|
|
"__IS_MAC_APP_STORE__": false,
|
|
"__DISABLE_GPU__": false,
|
|
"__SKIP_ONBOARDING_SCREENS__": false
|
|
},
|
|
"setupFiles": [
|
|
"./src/jest/jestSetup.js"
|
|
],
|
|
"setupFilesAfterEnv": [
|
|
"./src/jest/jestSetupAfterEnv.js"
|
|
],
|
|
"reporters": [
|
|
"default",
|
|
[
|
|
"jest-junit",
|
|
{
|
|
"suiteName": "unit tests",
|
|
"outputName": "test-results.xml",
|
|
"classNameTemplate": "{classname}-{title}",
|
|
"titleTemplate": "{classname}-{title}",
|
|
"ancestorSeparator": "> "
|
|
}
|
|
]
|
|
]
|
|
},
|
|
"devDependencies": {
|
|
"@babel/cli": "7.17.6",
|
|
"@babel/core": "7.17.8",
|
|
"@babel/plugin-proposal-class-properties": "7.16.7",
|
|
"@babel/plugin-proposal-object-rest-spread": "7.17.3",
|
|
"@babel/preset-env": "7.16.11",
|
|
"@babel/preset-react": "7.16.7",
|
|
"@babel/register": "7.17.7",
|
|
"@bloomberg/record-tuple-polyfill": "^0.0.4",
|
|
"@electron/fuses": "1.6.0",
|
|
"@electron/universal": "1.3.1",
|
|
"@mattermost/compass-icons": "0.1.32",
|
|
"@storybook/addon-actions": "6.4.20",
|
|
"@storybook/react": "6.4.20",
|
|
"@types/auto-launch": "5.0.2",
|
|
"@types/electron-devtools-installer": "2.2.1",
|
|
"@types/jest": "^29.0.0",
|
|
"@types/react": "17.0.43",
|
|
"@types/react-beautiful-dnd": "13.0.0",
|
|
"@types/react-dom": "17.0.14",
|
|
"@types/valid-url": "1.0.3",
|
|
"@types/winreg": "1.2.31",
|
|
"@typescript-eslint/eslint-plugin": "5.18.0",
|
|
"@typescript-eslint/parser": "5.18.0",
|
|
"7zip-bin": "5.1.1",
|
|
"auto-launch": "5.0.5",
|
|
"aws-sdk": "^2.1190.0",
|
|
"axios": "0.26.1",
|
|
"babel-eslint": "10.1.0",
|
|
"babel-loader": "8.2.4",
|
|
"bootstrap": "4.6.1",
|
|
"bootstrap-dark": "1.0.3",
|
|
"chai": "4.3.6",
|
|
"classnames": "2.3.1",
|
|
"copy-webpack-plugin": "10.2.4",
|
|
"cross-env": "7.0.3",
|
|
"css-loader": "6.7.1",
|
|
"electron": "21.2.0",
|
|
"electron-builder": "23.3.3",
|
|
"electron-connect": "0.6.3",
|
|
"electron-context-menu": "3.5.0",
|
|
"electron-devtools-installer": "3.2.0",
|
|
"electron-is-dev": "2.0.0",
|
|
"electron-log": "4.4.8",
|
|
"electron-mocha": "11.0.2",
|
|
"electron-notarize": "1.2.1",
|
|
"electron-rebuild": "3.2.9",
|
|
"electron-updater": "5.2.1",
|
|
"eslint": "7.29.0",
|
|
"eslint-import-resolver-webpack": "0.13.2",
|
|
"eslint-plugin-babel": "5.3.1",
|
|
"eslint-plugin-cypress": "2.11.3",
|
|
"eslint-plugin-header": "3.1.1",
|
|
"eslint-plugin-import": "2.25.4",
|
|
"eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#46ad99355644a719bf32082f472048f526605181",
|
|
"eslint-plugin-no-only-tests": "2.6.0",
|
|
"eslint-plugin-react": "7.29.4",
|
|
"eslint-plugin-react-hooks": "4.4.0",
|
|
"fs-extra": "10.0.1",
|
|
"jest": "27.5.1",
|
|
"jest-junit": "13.1.0",
|
|
"joi": "17.6.0",
|
|
"mini-css-extract-plugin": "2.6.0",
|
|
"mmjstool": "github:mattermost/mattermost-utilities#3b4506b0f6b14fbb402f9f8ef932370e459e3773",
|
|
"mocha-circleci-reporter": "0.0.3",
|
|
"mochawesome": "7.1.3",
|
|
"nan": "2.17.0",
|
|
"node-abi": "3.26.0",
|
|
"node-jq": "2.3.4",
|
|
"node-loader": "2.0.0",
|
|
"npm-run-all": "4.1.5",
|
|
"playwright": "1.28.1",
|
|
"pretty-bytes": "6.0.0",
|
|
"ps-node": "^0.1.6",
|
|
"react": "16.14.0",
|
|
"react-beautiful-dnd": "13.1.0",
|
|
"react-bootstrap": "1.6.4",
|
|
"react-dom": "16.14.0",
|
|
"react-intl": "5.20.10",
|
|
"react-select": "5.2.2",
|
|
"recursive-readdir": "^2.2.2",
|
|
"robotjs": "0.6.0",
|
|
"sass": "1.49.11",
|
|
"sass-loader": "12.6.0",
|
|
"semver": "7.3.5",
|
|
"shebang-loader": "0.0.1",
|
|
"style-loader": "3.3.1",
|
|
"ts-prune": "0.10.3",
|
|
"typescript": "4.6.3",
|
|
"valid-url": "1.0.9",
|
|
"webpack": "5.71.0",
|
|
"webpack-cli": "4.10.0",
|
|
"webpack-dev-server": "4.8.0",
|
|
"webpack-merge": "5.8.0",
|
|
"winreg-utf8": "0.1.1",
|
|
"yargs": "17.4.0"
|
|
},
|
|
"dependencies": {
|
|
"macos-notification-state": "2.0.2",
|
|
"windows-focus-assist": "1.3.0"
|
|
},
|
|
"overrides": {
|
|
"@electron/universal": "1.3.1"
|
|
}
|
|
}
|