Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Feb 01, 2022
  2. Jan 31, 2022
  3. Jan 28, 2022
  4. Jan 21, 2022
  5. Jan 20, 2022
  6. Jan 12, 2022
  7. Jan 07, 2022
  8. Jan 04, 2022
  9. Dec 16, 2021
    • Ariya Hidayat's avatar
      Custom expression: switch to a recursive-descent parser (#19335) · c7f106d7
      Ariya Hidayat authored
      The fault-tolerant/recovery mode of the Chevrotain-based parser isn't
      needed anymore since the suggestion was made to be lexical-based in
      PR #15688. Therefore, there is no more reason to carry the Chevrotain
      baggage. The grammar construct for Chevrotain was converted into a
      simple recursive-descen parser. This represents a reduction from over
      1,100 LoC to a leaner parser of only 270 LoC.
      
      Also, we remove the dependency to Chevrotain, reducing the front-end
      bundle by approx 18 KB.
      Unverified
      c7f106d7
  10. Dec 08, 2021
  11. Dec 07, 2021
  12. Dec 06, 2021
  13. Nov 30, 2021
  14. Nov 29, 2021
  15. Nov 24, 2021
  16. Nov 18, 2021
    • Dalton's avatar
      Reimplement tooltips using tippy.js (#18880) · 80d81a10
      Dalton authored
      * add tippy and react-is
      
      * add tippy styles to vendor.css
      
      we'll probably override most things but it handles
      apply the triangle to tooltips
      
      * reimplement Tooltip using tippy
      
      * reimplement ChartTooltip using Tooltip
      
      * add tooltip theme styling
      
      * fix StoreLink styling
      
      * remove TooltipPopover
      
      * add util for easy mapping to innerRef
      
      * use innerRef util with StoreLink target
      
      * react-is type defs
      
      * convert Tooltip into tsx
      
      * convert styled-components util into typescript
      
      * fix Tooltip fallback return
      
      * use Tooltip in Icon over Tooltipify
      
      * remove Tooltipify
      
      * pass ref all the way through Icon
      
      * fix DimensionListItem styling caused by missing ref
      
      * fix ChartTooltip event target bug
      
      * fix unit test by making Icon.tsx grosser
      
      * replace popover() util with tooltip() in cy tests
      
      * fix random broken e2e test
      
      * improve types in Tooltip
      
      * move everything to a separate folder + add tests
      
      * add more examples
      
      * rmv accidental deps
      
      * fix run button styling
      
      * add Link tooltip prop to avoid tooltip on icon
      
      * wrap MetabotLogo in forwardRef
      
      * support reduced motion
      
      * remove flow type from dom.js so we can use in ts files
      
      * pass isEnabled prop to tippy's disabled prop
      
      once you've activated "control mode" in tippy you can't turn it off so
      using "visible" as a toggle doesn't work. instead, use disabled.
      
      * fix uncentered tooltip the right way
      
      tippy includes padding/margin in its centering calculations, unlike
      tether, so we will need to be careful about adding one-sides
      padding/margins to a tooltip target, otherwise the tooltip will appear
      offcenter
      
      * workaround for absolutely positioned element
      
      the tooltip appeared on the far end of the target because of a child div
      that is absolutely positioned. quick fix is to instead target the icon
      
      * fix positioning of HintIcon tooltip
      
      * lint fix
      
      * add placement prop
      
      * fix styled component tooltip target styling
      
      * place QuestionNotebookButton tooltip below
      
      * Make the NativeQueryButton an actual button
      
      * set tooltip placement to bottom
      
      * lint fix warning
      Unverified
      80d81a10
  17. Nov 11, 2021
    • Dalton's avatar
      update postcss deps (#18860) · 11cf75d7
      Dalton authored
      * update postcss deps
      
      * update the postcss config
      
      * replace color fn with color-mod fn
      
      * remove webpack-postcss-tools
      
      * fix postcss config
      
      * fix negated vars
      Unverified
      11cf75d7
  18. Nov 08, 2021
  19. Nov 04, 2021
  20. Oct 28, 2021
  21. Oct 22, 2021
  22. Oct 15, 2021
  23. Oct 14, 2021
  24. Oct 12, 2021
  25. Oct 07, 2021
    • Alexander Lesnenko's avatar
      add basic typescript configuration (#18284) · 8114af48
      Alexander Lesnenko authored
      
      * add basic typescript configuration
      
      * convert a tiny hook use-debounced-value to typescript
      
      * allow any for now?
      
      * update terser and static viz configs
      
      * adjust config
      
      * change extension of QuestionActivityTimeline from jsx to js to match jest config
      
      * adjust config
      
      * skip failing tests
      
      * Fix missing question method in unit tests (#18314)
      
      * review fix
      
      * fix
      
      Co-authored-by: default avatarAnton Kulyk <kuliks.anton@gmail.com>
      Unverified
      8114af48
  26. Oct 04, 2021
    • Ariya Hidayat's avatar
      Rename NODE_ENV to WEBPACK_BUNDLE (#18087) · 3a67ddc1
      Ariya Hidayat authored
      NODE_ENV interferes with other tools (e.g. `yarn` won't pull
      devDependencies). Since what we need is only a flag indicating Webpack
      to bundle for production vs developement, invent our own env.
      
      This also solves the mystery of unable to call `yarn build` in the build
      script `bin/build-mb/src/build.clj`.
      Unverified
      3a67ddc1
  27. Sep 27, 2021
  28. Sep 14, 2021
  29. Sep 01, 2021
  30. Aug 31, 2021
  31. Aug 17, 2021
    • pawit-metabase's avatar
      upgrade to @percy/cypress 3.x (#17485) · baed054f
      pawit-metabase authored
      * upgrade to @percy/cypress 3.x
      
      @percy/cypress 2.x uses deprecated @percy/agent which includes
      an old version of puppeteer. The old version of puppeteer causes
      `yarn` command to fail on M1 macOS environment.
      
      Upgrade to @percy/cypress 3.x removes the dependency and thus
      solves the issue.
      
      The upgrade was done by running `npx @percy/migrate`.
      
      * remove percy healthcheck task
      
      This no longer exists in 3.x, see
      https://github.com/percy/percy-cypress/blob/master/README.md#upgrading
      
      * remove deprecated percy/exec-action
      
      and moved `percy exec` to the correct command
      
      * run 'yarn install' before running percy
      Unverified
      baed054f
  32. Aug 10, 2021
  33. Aug 03, 2021
  34. Aug 02, 2021
  35. Jul 30, 2021
    • Dalton's avatar
      Upgrade babel to 7.x.x and jest to 27.x.x (#17137) · 3a7c3987
      Dalton authored
      * Update babel dependencies to latest
      
      * Remove some old babel dependencies
      
      The dependencies in this commit include dependencies that have been
      renamed, such as babel-cli which is now @babel/cli. It also includes
      dependencies that have been replaced, such as babel-preset-stage-0 and
      its ilk, which have been replaced with @babel/preset-env.
      
      * Remove babel-register dependency
      
      This is referenced in our webpack.config.js file. I don't think we need
      Babel in our Node envionment, but I could be wrong, so leaving this as a
      separate commit.
      
      * Remove @babel/standalone and dependent code
      
      We're using @babel/standalone to support the writing of JSX in our
      internal-only ScratchApp editor. Unfortunately, this dependency is
      large--1.5mb not gzipped--and our current build does not intelligently
      split bundles, meaning our users our burdened by the size of this
      dependency whenever they must redownload the Metabase JS bundle.
      
      I'm removing it. We should still be able to write JS in the ScratchApp,
      but JSX no longer.
      
      * Add @babel/node to dev deps
      
      Needed by a cypress command
      
      * Add browserslist config
      
      Babel's preset-env dep needs this config to determine how to transform
      our JavaScript. By default I believe it ends up defaulting to
      "defaults."
      
      "defaults" is equivalent to the following rules:
      > 0.5%, last 2 versions, Firefox ESR, not dead
      
      A comma between rules represents a UNION operator.
      
      Per
      https://www.metabase.com/docs/latest/faq/general/supported-browsers.html
      
      
      we have deprecated IE 11 so I am including that explicitly in our
      browserslist.
      
      * Update babelrc plugins and presets
      
      - Replaced presets with preset-env and preset-react
      - Updated the names of some plugins, like transform-decorators-legacy,
        which is now @babel/plugin-proposal-decorators with an explicit
        "legacy: true" passed in the config.
      - Removed add-react-displayname because it is included in preset-react
      - Removed transform-builtin-extend because it is included in preset-env*
      - Removed syntax-trailing-function-commas because it is supported by
        all browsers we support
      
      * note: There is a "loose" config option for handling the extension of builtin
      classes. We may need it, but I am not sure.
      
      * Update babel cli args
      
      Replace -q with --quiet because -q no longer exists
      
      * Fix circular dep in auth.js by making it async
      
      Our app unfortunately contains MANY circular dependencies. Some, like
      this one, caused problems when the app instantiates because the
      "refreshCurrentUser" method is undefined when auth.js is initially run.
      
      While we should in the future avoid having circular deps in the first
      place, making them run async by requiring the dep and function run-time
      fixes this particular issue.
      
      * Fix circular dependency in metabase/redux/requests.js
      
      The handleActions and createAction methods imported from
      "metabase/lib/redux" are actually just methods from the "redux-actions"
      dependency... so importing those methods directly from that dep fixes
      this circular dependency problem.
      
      * Remove references to global.services and exports in metabase/services
      
      This line breaks the build. Git blame says the line is 5 years old, and
      I wouldn't expect such code to be used with how our app now requires
      deps.
      
      * Fix MBQLArrayClause problem caused by Array extension
      
      * Explicitly pass args from flatMap to function via anonymous cb
      
      I think the old Array.prototype.flatMap prototype must've had different
      args. They are now "currentValue, index, array" so when we passed it
      "enumeratePaths" as a callback, the second arg of enumeratePaths gets
      set to a number. This breaks the logic of enumeratePaths because it is a
      recursive function that depends on that second arg getting initialized
      as an empty array by default.
      
      * Remove code that spreads non-iterable value in array
      
      New Babel is stricter about handling this sort of code that doesn't
      match the JS spec. You can't spread an undefined value inside of an
      iterator.
      
      * Update jest and babel-jest to latest
      
      Updating Babel breaks our unit tests. Updating nothing causes every test
      to fail due to a Babel version mismatch. Updating only babel-jest causes
      the following error:
      
      TypeError: Jest: a transform must export a `process` function
      
      There may be a way around updating Jest, but updating it does not appear
      to be too difficult.
      
      * Set the testEnvironment to jsdom
      
      This was the default testEnvironment in our old version of jest. At some
      point the default was changed to node.
      
      * Remove unfinished "pending" unit tests
      
      I'm unfamiliar with this pending function, but the function no longer
      exists, causing the tests to fail.
      
      * don't pass async callback to describe
      
      * Update name of runTimersToTime to advanceTimersByTime
      
      * Fix incorrectly nested unit test
      
      * mock SVGElement.prototype.getBBox method
      
      * Don't return values in describe callback
      
      * Move variable declaration to above usage
      
      * Fix prettier error
      
      * Upgrade `documentation` library to the latest version (13.x.x)
      
      This library was the only one left that was still using Babel 6.
      
      * Return an MBQLClause instance after using Array methods
      
      * remove 'not IE 11' from browserslist
      
      * Remove mock that breaks unit test
      
      Co-authored-by: default avatarNemanja <31325167+nemanjaglumac@users.noreply.github.com>
      Unverified
      3a7c3987
Loading