Skip to content
Snippets Groups Projects
  • Nemanja Glumac's avatar
    8be8f81f
    Port Cypress fixes/updates from `master` into `release-x.37.x` (#13743) · 8be8f81f
    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: default avatarAriya 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: default avatarAriya Hidayat <ariya@metabase.com>
    Co-authored-by: default avatarDamon P. Cortesi <d.lifehacker@gmail.com>
    Port Cypress fixes/updates from `master` into `release-x.37.x` (#13743)
    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: default avatarAriya 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: default avatarAriya Hidayat <ariya@metabase.com>
    Co-authored-by: default avatarDamon 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"
  }
}