-
Nemanja Glumac authored
* Quarantine flaky tests (#13682) (#13683) * Quarantine flaky tests (#13682) * Add TODO note re: `describeWithToken` Co-authored-by: Nemanja Glumac * Add a circleci workflow that runs a set of Cypress smoketests (#12775) * Add a circleci nightly workflow that runs a bigger set of Cypress smoketests * Run this every hour while we're testing it, add a small fix to the admin test * Smoketests: Skip some known failing tests Co-authored-by:
Ariya Hidayat <ariya@metabase.com> * Narrow down the quarantine for chart_drill spec (#13682) (#13699) * CI: Fix the cache key for uberjar for running smoketest (#13698) Smoketest for OSS edition (for now) * Fix `settings/settings.cy.spec.js` flakes (#13701) - isolated flake (`it.only("should surface an error when validation for any field fails (metabase#4506)", () => {...})`) passed 10x (https://github.com/nemanjaglumac/metabase-tests/actions/runs/348275781) - the whole spec passed 20x (https://github.com/nemanjaglumac/metabase-tests/actions/runs/348306177) * CI: Update uberjar oss key for smoketest (#13704) * Fix Cypress flakes in `dashboard/dashboard.cy.spec.js` file (#13703) * Fix flakes in `revisions screen` block * Improve test assertions (there were some rendering problems, so I adjusted the assertions) * Narrow down the quarantine for dash_drill spec (#13682) (#13706) * Fix `metrics.cy.spec.js` flakes (#13709) * Fix `metrics.cy.spec.js` flakes (#13682) * Refactor the test using API * Smoketest: run nightly at 1am PST (#13711) 1 am PST = 09:00 UTC CircleCI cron is for UTC: https://circleci.com/docs/2.0/workflows/#scheduling-a-workflow * Upgrade Cypress to v5.5.0 (#13674) * Upgrade Cypress to v5.5.0 * Needed to unset the `DISPLAY` ENV through `config.yml` to finally make this work! (Reference: https://github.com/cypress-io/cypress/issues/4034#issuecomment-486773042 ) * Improve `segments` tests with the use of API (#13718) * Unquarantine `scenarios/pulse/pulse.cy.spec.js` (#13727) * Unset `DISPLAY` ENV in smoketests CI group (#13732) * Unquarantine ee `custom_drill_through/drill_through.cy.spec.js` [ci skip] (#13734) * Unquarantine `question/nested.cy.spec.js` (#13733) Co-authored-by:
Ariya Hidayat <ariya@metabase.com> Co-authored-by:
Damon P. Cortesi <d.lifehacker@gmail.com>
Nemanja Glumac authored* Quarantine flaky tests (#13682) (#13683) * Quarantine flaky tests (#13682) * Add TODO note re: `describeWithToken` Co-authored-by: Nemanja Glumac * Add a circleci workflow that runs a set of Cypress smoketests (#12775) * Add a circleci nightly workflow that runs a bigger set of Cypress smoketests * Run this every hour while we're testing it, add a small fix to the admin test * Smoketests: Skip some known failing tests Co-authored-by:
Ariya Hidayat <ariya@metabase.com> * Narrow down the quarantine for chart_drill spec (#13682) (#13699) * CI: Fix the cache key for uberjar for running smoketest (#13698) Smoketest for OSS edition (for now) * Fix `settings/settings.cy.spec.js` flakes (#13701) - isolated flake (`it.only("should surface an error when validation for any field fails (metabase#4506)", () => {...})`) passed 10x (https://github.com/nemanjaglumac/metabase-tests/actions/runs/348275781) - the whole spec passed 20x (https://github.com/nemanjaglumac/metabase-tests/actions/runs/348306177) * CI: Update uberjar oss key for smoketest (#13704) * Fix Cypress flakes in `dashboard/dashboard.cy.spec.js` file (#13703) * Fix flakes in `revisions screen` block * Improve test assertions (there were some rendering problems, so I adjusted the assertions) * Narrow down the quarantine for dash_drill spec (#13682) (#13706) * Fix `metrics.cy.spec.js` flakes (#13709) * Fix `metrics.cy.spec.js` flakes (#13682) * Refactor the test using API * Smoketest: run nightly at 1am PST (#13711) 1 am PST = 09:00 UTC CircleCI cron is for UTC: https://circleci.com/docs/2.0/workflows/#scheduling-a-workflow * Upgrade Cypress to v5.5.0 (#13674) * Upgrade Cypress to v5.5.0 * Needed to unset the `DISPLAY` ENV through `config.yml` to finally make this work! (Reference: https://github.com/cypress-io/cypress/issues/4034#issuecomment-486773042 ) * Improve `segments` tests with the use of API (#13718) * Unquarantine `scenarios/pulse/pulse.cy.spec.js` (#13727) * Unset `DISPLAY` ENV in smoketests CI group (#13732) * Unquarantine ee `custom_drill_through/drill_through.cy.spec.js` [ci skip] (#13734) * Unquarantine `question/nested.cy.spec.js` (#13733) Co-authored-by:
Ariya Hidayat <ariya@metabase.com> Co-authored-by:
Damon P. Cortesi <d.lifehacker@gmail.com>
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
This project manages its dependencies using yarn.
Learn more
package.json 8.33 KiB
{
"name": "metabase",
"private": true,
"version": "0.0.0",
"description": "Metabase Analytics Report Server",
"repository": "https://github.com/metabase/metabase",
"license": "private",
"engines": {
"node": ">=8.11.4",
"yarn": ">=1.12.3"
},
"dependencies": {
"ace-builds": "^1.4.7",
"chevrotain": "^6.5.0",
"classlist-polyfill": "^1.2.0",
"classnames": "^2.1.3",
"color": "^3.0.0",
"color-harmony": "^0.3.0",
"core-js": "^3.1.4",
"crossfilter": "^1.3.12",
"d3": "^3.5.17",
"d3-scale": "^2.1.0",
"dc": "2.1.9",
"diff": "^3.2.0",
"grid-styled": "4.1.0",
"history": "3",
"humanize-plus": "^1.8.1",
"icepick": "2.3.0",
"iframe-resizer": "^3.5.11",
"inflection": "^1.7.1",
"isomorphic-fetch": "^2.2.1",
"js-cookie": "^2.1.2",
"jsrsasign": "10.0.4",
"leaflet": "^1.2.0",
"leaflet-draw": "^0.4.9",
"leaflet.heat": "^0.2.0",
"lodash.memoize": "^4.1.2",
"moment": "2.19.3",
"moment-timezone": "^0.5.26",
"mustache": "^2.3.2",
"node-libs-browser": "^2.0.0",
"normalizr": "^3.0.2",
"number-to-locale-string": "^1.0.1",
"password-generator": "^2.0.1",
"prop-types": "^15.5.7",
"re-reselect": "^3.4.0",
"react": "15",
"react-addons-shallow-compare": "^15.2.1",
"react-ansi-style": "^1.0.0",
"react-collapse": "^4.0.3",
"react-color": "^2.14.1",
"react-copy-to-clipboard": "^5.0.1",
"react-dnd": "3",
"react-dnd-html5-backend": "3",
"react-dom": "15",
"react-draggable": "^3.3.2",
"react-element-to-jsx-string": "^13.1.0",
"react-hot-loader": "^1.3.0",
"react-markdown": "^3.6.0",
"react-motion": "^0.4.5",
"react-redux": "^5.0.4",
"react-resizable": "^1.9.0",
"react-retina-image": "^2.0.5",
"react-router": "3",
"react-router-redux": "^4.0.8",
"react-sortable-hoc": "^0.6.8",
"react-textarea-autosize": "^5.2.1",
"react-transition-group": "1",
"react-virtualized": "^9.7.2",
"recompose": "^0.26.0",
"redux": "^3.5.2",
"redux-actions": "^2.0.1",
"redux-auth-wrapper": "^1.0.0",
"redux-form": "5",
"redux-logger": "^3.0.1",
"redux-promise": "^0.5.0",
"redux-router": "^2.1.2",
"redux-thunk": "^2.0.1",
"regenerator": "^0.14.1",
"regexp.escape": "^1.1.0",
"reselect": "^3.0.0",
"resize-observer-polyfill": "^1.5.1",
"screenfull": "^4.2.1",
"simple-statistics": "^3.0.0",
"stack-source-map": "^1.0.4",
"styled-components": "3.2.6",
"styled-system": "2.2.5",
"system-components": "2.0.3",
"tether": "^1.2.0",
"ttag": "1.7.15",
"underscore": "^1.8.3",
"webpack-dev-middleware": "^1.12.0",
"z-index": "0.0.1"
},
"devDependencies": {
"@babel/standalone": "^7.4.5",
"@cypress/webpack-preprocessor": "^4.1.0",
"@slack/client": "^3.5.4",
"@testing-library/cypress": "^5.0.2",
"@testing-library/jest-dom": "^4.0.0",
"@testing-library/react": "^11.0.2",
"babel-cli": "^6.26.0",
"babel-core": "^6.26.3",
"babel-eslint": "10.1.0",
"babel-loader": "^7.1.5",
"babel-plugin-add-react-displayname": "^0.0.5",
"babel-plugin-styled-components": "^1.10.7",
"babel-plugin-syntax-trailing-function-commas": "^6.22.0",
"babel-plugin-transform-builtin-extend": "^1.1.2",
"babel-plugin-transform-decorators-legacy": "^1.3.5",
"babel-plugin-transform-flow-strip-types": "^6.22.0",
"babel-plugin-ttag": "^1.7.26",
"babel-preset-es2015": "^6.24.1",
"babel-preset-react": "^6.24.1",
"babel-preset-stage-0": "^6.24.1",
"babel-register": "^6.26.0",
"banner-webpack-plugin": "^0.2.3",
"color-diff": "^1.1.0",
"concurrently": "^3.1.0",
"css-loader": "^0.28.7",
"cypress": "^5.5.0",
"documentation": "^4.0.0-rc.1",
"enzyme": "^3.8.0",
"enzyme-2": "npm:enzyme@2",
"enzyme-adapter-react-15": "^1.3.0",
"eslint": "7.12.1",
"eslint-import-resolver-webpack": "^0.8.3",
"eslint-loader": "4.0.2",
"eslint-plugin-cypress": "^2.7.0",
"eslint-plugin-flowtype": "^2.50.3",
"eslint-plugin-import": "^2.22.0",
"eslint-plugin-jasmine": "^2.2.0",
"eslint-plugin-react": "^6.10.3",
"exports-loader": "^0.6.3",
"extract-text-webpack-plugin": "^3.0.1",
"file-loader": "^0.11.1",
"flow-bin": "^0.37.4",
"fs-promise": "^2.0.2",
"glob": "^7.1.1",
"html-webpack-harddisk-plugin": "^0.1.0",
"html-webpack-plugin": "^2.30.1",
"image-diff": "^1.6.3",
"imports-loader": "^0.7.0",
"insightful": "^1.1.0",
"jasmine": "^2.4.1",
"jasmine-core": "^2.4.1",
"jasmine-promises": "^0.4.1",
"jasmine-reporters": "^2.2.0",
"jasmine-spec-reporter": "^3.0.0",
"jest": "^19.0.2",
"jest-localstorage-mock": "^2.2.0",
"jscodeshift": "0.5.0",
"jsonwebtoken": "^7.2.1",
"lint-staged": "^3.3.1",
"mockdate": "^2.0.2",
"postcss-cssnext": "^2.4.0",
"postcss-import": "^9.0.0",
"postcss-loader": "^2.0.8",
"postcss-url": "^6.0.4",
"prettier": "1.18.2",
"promise-loader": "^1.0.0",
"proxymise": "^1.0.2",
"raf": "^3.4.0",
"react-test-renderer": "15",
"sauce-connect-launcher": "^1.1.1",
"style-loader": "^0.19.0",
"uglifyjs-webpack-plugin": "^1.0.0",
"unused-files-webpack-plugin": "^3.0.0",
"webpack": "^3.8.1",
"webpack-dev-server": "^2.9.1",
"webpack-notifier": "^1.8.0",
"webpack-postcss-tools": "^1.1.2",
"xhr-mock": "^2.4.1",
"yaml-lint": "^1.2.4"
},
"scripts": {
"dev": "concurrently --kill-others -p name -n 'backend,frontend,docs' -c 'blue,green,yellow' 'lein run' 'yarn build-hot' 'yarn docs'",
"lint": "yarn lint-eslint && yarn lint-prettier && yarn lint-flow && yarn lint-docs-links",
"lint-eslint": "yarn && eslint --ext .js --ext .jsx --rulesdir frontend/lint/eslint-rules --max-warnings 0 enterprise/frontend/src frontend/src enterprise/frontend/test frontend/test",
"lint-prettier": "yarn && prettier -l '{enterprise/,}frontend/**/*.{js,jsx,css}' || (echo '\nThese files are not formatted correctly. Did you forget to \"yarn prettier\"?' && false)",
"lint-flow": "yarn && flow check",
"lint-docs-links": "yarn && ./bin/verify-doc-links",
"lint-yaml": "yamllint",
"test": "yarn test-unit && yarn test-timezones && yarn test-integration && yarn test-cypress",
"test-unit": "yarn && jest --maxWorkers=2 --config jest.unit.conf.json",
"test-unit-watch": "yarn test-unit --watch",
"test-unit-update-snapshot": "yarn test-unit --updateSnapshot",
"test-integration": "yarn && jest --maxWorkers=2 --config jest.integ.conf.json",
"test-integration-watch": "yarn test-integration --watch",
"test-timezones-unit": "yarn && jest --maxWorkers=2 --config jest.tz.unit.conf.json",
"test-timezones": "yarn && ./frontend/test/__runner__/run_timezone_tests",
"build": "yarn && webpack --bail",
"build-watch": "yarn && webpack --watch",
"build-hot": "yarn && NODE_ENV=hot webpack-dev-server --progress",
"build-stats": "yarn && webpack --json > stats.json",
"build-shared": "yarn && webpack --config webpack.shared.config.js",
"start": "yarn build && lein ring server",
"precommit": "lint-staged",
"preinstall": "echo $npm_execpath | grep -q yarn || echo '\\033[0;33mSorry, npm is not supported. Please use Yarn (https://yarnpkg.com/).\\033[0m'",
"prettier": "prettier --write '{enterprise/,}frontend/**/*.{js,jsx,css}'",
"eslint-fix": "yarn && eslint --fix --ext .js --ext .jsx --rulesdir frontend/lint/eslint-rules {enterprise/,}frontend/{src,test}",
"docs": "documentation serve --watch frontend/src/metabase-lib/lib/**",
"ci": "yarn ci-frontend && yarn ci-backend",
"ci-frontend": "yarn lint && yarn test",
"ci-backend": "lein docstring-checker && lein bikeshed && lein eastwood && lein test",
"test-cypress": "yarn build && ./bin/build-for-test && yarn test-cypress-no-build",
"test-cypress-open": "./bin/build-for-test && yarn test-cypress-no-build --open",
"test-cypress-no-build": "yarn && CONFIG_FILE=frontend/test/cypress.json babel-node ./frontend/test/__runner__/run_cypress_tests.js",
"test-cypress-smoketest": "yarn run test-cypress-no-build --testFiles frontend/test/metabase-smoketest"
},
"lint-staged": {
"frontend/**/*.{js,jsx,css}": [
"prettier --write",
"git add"
]
},
"resolutions": {
"cypress": "5.5.0",
"styled-components": "3.2.6",
"styled-system": "2.2.5"
}
}