Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Oct 06, 2023
    • Case Nelson's avatar
    • Case Nelson's avatar
    • Nemanja Glumac's avatar
      Parameterize E2E matrix (#34431) · ea17aa78
      Nemanja Glumac authored
      Unverified
      ea17aa78
    • Tim Macdonald's avatar
      Minor updates to the developer's guide (#34436) · 009000e5
      Tim Macdonald authored
      
      * Minor updates to the developer's guide
      
      * extra context
      
      ---------
      
      Co-authored-by: default avatardan sutton <dan@dpsutton.com>
      Unverified
      009000e5
    • Nemanja Glumac's avatar
      Remove and disallow H2 from E2E tests (#34364) · 0f54f772
      Nemanja Glumac authored
      * Make it easy to add SQLite database
      
      * Replace H2 with SQLite in E2E tests
      
      * Remove long unused E2E reproduction
      
      It's been sufficiently covered with backend tests.
      
      * Remove H2 database helper from E2E tests
      Unverified
      0f54f772
    • Kamil Mielnik's avatar
      Show custom warning message when leaving editing dashboard via Cancel button (#34405) · 23453f57
      Kamil Mielnik authored
      * Show a warning modal when clicking "Cancel" in dashboard
      
      * Update dashboard test
      
      * Update question settings test
      
      * Add missing "Edit dashboard" click
      
      * Add tests for leaving dashboard editing via Cancel button
      Unverified
      23453f57
    • Kamil Mielnik's avatar
      Add custom warning message when leaving editing a model (query definition or metadata) (#34316) · d7576fc8
      Kamil Mielnik authored
      * Add model-editing logic to isLocationAllowed in QueryBuilder
      
      * Fix IS_LOCATION_ALLOWED implementation
      
      * Fix typos
      
      * Remove redundant checks and invert logic for better readability
      
      * Add editing queries tests
      
      * Improve test to include reverted form interaction
      
      * Fix existing test case
      
      * Add editing metadata test
      
      * Add editing metadata test (unedited)
      
      * Organize tests
      
      * Add a test for not showing custom warning modal when saving edited query
      
      * Extract slug to TEST_MODEL_CARD_SLUG
      
      * Add a test for not showing custom warning modal when saving edited metadata
      
      * Remove redundant routing
      
      * Add a workaround for test setup
      
      * Add a test for tabs navigation
      
      * Fix failing test
      
      * Extract isNavigationAllowed out of isLocationAllowed
      
      * Extract createMockLocation
      
      * Add isNavigationAllowed test setup and test for new questions
      
      * Add a test case for beforeunload event
      
      * Format code
      
      * Add more tests and organize them
      
      * Add notebook question tests
      
      * Format code
      Unverified
      d7576fc8
    • Kamil Mielnik's avatar
      Add custom warning message when leaving changing Data Model (segments and metrics) (#34398) · d29867e0
      Kamil Mielnik authored
      * Rename component to match the filename
      
      * Fix typo
      
      * Replace useBeforeUnload with LeaveConfirmationModal in SegmentForm
      
      * Replace useBeforeUnload with LeaveConfirmationModal in MetricForm
      
      * Update setup of MetricForm tests to allow testing navigation
      
      * Update setup of SegmentForm tests to allow testing navigation
      
      * Use proper history in MetricForm
      
      * Refactor SegmentForm test setup to be consistent with the one of MetricForm
      
      * Make MetricForm and SegmentForm tests consistent
      
      * Add tests for not showing custom warning
      
      * Add tests for showing custom warning when leaving with unsaved changes
      
      * Extract FORM_URL
      
      * Remove redundant asyncs and awaits
      
      * Rename MetricForm.unit.spec.tsx & SegmentForm.unit.spec.tsx to MetricApp.unit.spec.tsx & SegmentApp.unit.spec.tsx and move them near the components they're testing
      
      * Improve a11y
      
      * Add missing endpoint mocks
      
      * Improve selectors thanks to proper a11y
      
      * Add tests for not showing warning modal when saving changes
      
      * Convert CreateMetricForm to a functional component
      
      * Convert CreateSegmentForm to a functional component
      
      * Convert UpdateMetricFormInner to a functional component
      
      * Convert UpdateSegmentFormInner to a functional component
      
      * Disable LeaveConfirmationModal on scheduled navigation
      
      * Setup metrics & segments POST endpoints
      
      * Properly mock metric and segment creation
      
      * Lift LeaveConfirmationModal from SegmentForm to SegmentApp
      
      * Lift LeaveConfirmationModal from MetricForm to MetricApp
      
      * Sort props
      
      * Get rid of useCallbackEffect usage in MetricApp
      
      * Get rid of useCallbackEffect usage in SegmentApp
      Unverified
      d29867e0
    • Uladzimir Havenchyk's avatar
  2. Oct 05, 2023
  3. Oct 04, 2023
  4. Oct 03, 2023
    • Cam Saul's avatar
      Misc drill thru fixes :wrench: (#34231) · 8224e5b6
      Cam Saul authored
      Unverified
      8224e5b6
    • Jacob Joseph's avatar
      Update expressions-list.md (#34263) · 09e3777a
      Jacob Joseph authored
      added an example of rounding with a decimal place
      Unverified
      09e3777a
    • Ryan Laurie's avatar
    • Braden Shepherdson's avatar
      Fix `yarn dev-ee` with new CLJS setup (#34319) · 21a70290
      Braden Shepherdson authored
      `yarn dev` had been adjusted to use `build-hot:js-wait` (which waits for the first CLJS compilation to be done), but `yarn dev-ee` had not been changed, so its JS compilation ran too early, failed, and never re-ran.
      
      We actually had this broken behavior (JS build runs too early, CLJS build completes, JS build fails, JS build notices new inputs and re-runs) for a long time. But since it fixed itself when the JS build re-ran, it didn't cause any issues. Now that the JS build no longer watches the CLJS output for changes, the CLJS output needs to be there for the first JS build.
      Unverified
      21a70290
    • Tim Macdonald's avatar
    • Ibe Dwi's avatar
      Add color to `ExpandButton` when moving collection (#33846) · bdbbb61d
      Ibe Dwi authored
      * fix: add ExpandButton color on parent's hover
      
      * fix: icon's color by canSelect, remove !important
      
      * feat: update expand button style on canSelect props
      
      * fix: icon button color when hovered
      Unverified
      bdbbb61d
    • Anton Kulyk's avatar
      Add more E2E tests around joins (#34252) · 3715839c
      Anton Kulyk authored
      * Test using columns from joined tables or cards
      
      * Test multi stage joins
      
      * Test removal on source table change
      
      * Test RHS table column selection
      
      * Reduce flakiness?
      
      * Fix test
      
      * Reduce flakiness?
      Unverified
      3715839c
    • Kamil Mielnik's avatar
      Add custom warning message when leaving creating/editing a DB connection (#34272) · 124a6a3d
      Kamil Mielnik authored
      * Use LeaveConfirmationModal in QueryBuilder
      
      * Add isLocationAllowed prop to LeaveConfirmationModal
      
      * Do not route-block running modified native question
      
      * Fix typo
      
      * Introduce explanatory variables
      
      * Move updating URL during question creation to QueryBuilder
      
      * Schedule navigation to after re-render so that LeaveConfirmationModal prop has a chance to update
      
      * Add a test for unsaved changes warning
      
      * Introduce useCallbackEffect
      
      * Refactor QueryBuilder to use useCallbackEffect
      
      * Refactor ActionCreator to use useCallbackEffect
      
      * Fix useCallbackEffect typing
      
      * Move onSubmit out of the scheduled callback to reduce probability of race conditions
      
      * Add comments explaining useCallbackEffect usage
      
      * Improve JSDocs
      
      * Add a test for running modified question
      
      * Update button query to more accessible one
      
      * Add a test for saving a modified question
      
      * Update test names
      
      * Add a test for leaving with no changes
      
      * Remove isDirty-related no-change assertions, as isDirty flag does not work reliably
      - Question.prototype.isDirtyComparedTo would return true because edited "question"
        would have extra "description: null" attribute and no "name" compared to
        "originalQuestion" (see "getIsDirty")
      
      * Move useCallbackEffect to its own directory
      
      * Add test setup for useCallbackEffect
      
      * Add a test case for scheduling
      
      * Add a test for scheduling callback effect
      
      * Do not disable navigation in models
      - this is a temporary condition until #33793 is implemented
      
      * Remove redundant _.noop
      
      * Rename isScheduled to isCallbackScheduled
      
      * Replace useBeforeUnload with LeaveConfirmationModal in DatabaseEditApp
      
      * Refactor DatabaseEditApp.unit.spec.js to TypeScript
      
      * Add initialRoute param, return history & add /home route
      
      * Add a test case for showing the unsaved changes modal
      
      * Add a test case for not showing the unsaved changes modal
      
      * Format code
      
      * Extend a test case to assert isDirty being properly computed
      
      * Remove redundant route
      
      * Remove redundant code
      
      * Add a test for custom warning modal when saving edited question as a new one
      
      * Redirect to databases page on database creation in component so that isDirty flag can re-compute on re-render
      
      * Fix mocks setup
      
      * Remove redundant withRouter usage
      
      * Use waitFor + expect + not.toBeInDocument instead waitForElementToBeRemoved
      
      * Add a test case for creating new database connection
      
      * Remove redundant promise
      Unverified
      124a6a3d
    • Cal Herries's avatar
    • Nemanja Glumac's avatar
    • Aleksandr Lesnenko's avatar
      fix Arabic translations (#34295) · 65373df6
      Aleksandr Lesnenko authored
      Unverified
      65373df6
  5. Oct 02, 2023
    • Ryan Laurie's avatar
      Automated Releases from CI :rocket: (#33938) · 15f82914
      Ryan Laurie authored
      Unverified
      15f82914
    • Braden Shepherdson's avatar
      Enable ClojureScript REPL and hot reloading of CLJS code (#34007) · 8e298158
      Braden Shepherdson authored
      This also moves the CLJS output out of `frontend/src/cljs{,_release}` to
      `target/cljs_{dev,release}`. If that causes problems for FE tooling I
      don't know about, it could be moved back.
      
      Hot reloading:
      CLJS changes are hot-reloaded into the running app by Shadow CLJS - no
      action is needed. Note that the UI will not refresh; you usually have to
      click around so the updated MLv2 code gets executed.
      
      Usage of the CLJS REPL:
      - Open the browser (you should see `shadow-cljs: #N ready!` in console)
      - Connect to nrepl on 50655
      - "Select" the `:app` build;
          - https://shadow-cljs.github.io/docs/UsersGuide.html#_editor_integration
          - Conjure: `:ConjureShadowSelect app`
          - Plain REPL: Eval in CLJ mode `(shadow/repl :app)`
      - Consider running `yarn build-hot:cljs` and `yarn build-hot:js` in
        separate terminals; then when `yarn build-hot:js` crashes you don't
        have to reconnect your REPL.
      - The REPL works beautifully, even loading files outside the :entries
        of the shadow-cljs build like tests!
      
      "Stale" error in browser:
      - This can happen if the webpack bundle is created before the CLJS is
        done building.
      - If you ran `yarn build-hot:cljs` and `:js` separately, let `:cljs`
        finish compiling first.
      - If you see this otherwise: (a) contact Braden so it can be fixed; and
        (b) either restart `build-hot:js` or force webpack to rebuild by
        hitting http://localhost:8080/webpack-dev-server/invalidate
      
      Yarn commands:
      `dev`, `dev-ee`, `build-hot`, and `build-static-viz:watch` all now wait
      for the CLJS build to be complete by watching for files to be generated.
      They should work the same from a user's POV.
      
      (Since the webpack build no longer watches the CLJS output,
      it won't notice the changes and immediately rebuild after the first
      build. This avoids errors on the clean build, or "stale build" messages
      in the app from Shadow CLJS.)
      
      Fixes #32674.
      Unverified
      8e298158
Loading