This project is mirrored from https://github.com/metabase/metabase.
Pull mirroring updated .
- Oct 11, 2023
-
-
Nemanja Glumac authored
Remove `yarn &&` in front of every single script invocation. Libraries should already be installed by the time one runs any of these scripts. `yarn` is the equivalent of `yarn install`.
-
Nemanja Glumac authored
* Run E2E using ReplayIO daily Increase the frequency from weekly to daily. [ci skip] * Use the latest replayio/action-upload version [ci skip]
-
Nemanja Glumac authored
-
Luis Paolini authored
* Test Java 21 * Bring back Java 17 * Run Java 21 only on `master` --------- Co-authored-by:
Nemanja <31325167+nemanjaglumac@users.noreply.github.com>
-
- Oct 10, 2023
-
-
shaun authored
-
Cam Saul authored
-
Ryan Laurie authored
-
Cal Herries authored
-
Nicolò Pretto authored
Co-authored-by:
Kamil Mielnik <kamil@kamilmielnik.com>
-
Nemanja Glumac authored
* Tag Mongo-dependent E2E tests * Run mongo tests only if `CYPRESS_QA_DB_MONGO` is `true` * Adjust E2E workflow to run mongo tests separately * Guard against missing mongo env var * Fix workflow * Fix qa snapshots * Tag additional Mongo E2E tests * Omit tests tagged with `@mongo` in regular runs
-
Kamil Mielnik authored
* Extract changeNotebookQuery & revertNotebookQueryChange * Extract changeNativeQuery * Reuse changeNotebookQuery & revertNotebookQueryChange * Move assertion to a util function * Add missing spinner awaits * Extract changeMetadata * Rename changeX to triggerXChange
-
Jacob Joseph authored
fixed syntax error re: predefined Postgres role pg_read_all_data that is only available in Postgres 14+ added reference link to Postgres docs re: predefined roles added DATABASE grant option example
-
Kamil Mielnik authored
* Show a warning modal when clicking "Cancel" while editing a model with unsaved changes * Add tests for cancel button when editing metadata * Add tests for cancel button when editing query definition * Update e2e test * Update e2e tests * Update code after merge * Remove todo * Inverse hasFieldWithoutDisplayName logic to everyFieldHasDisplayName
-
John Swanson authored
-
Cal Herries authored
BE: Remove linked filters from dashboard if values source type is not "From connected fields" (#34424)
-
Oisin Coveney authored
-
Ngoc Khuat authored
-
Uladzimir Havenchyk authored
-
Ngoc Khuat authored
-
- Oct 09, 2023
-
-
Cal Herries authored
-
Kamil Mielnik authored
* Introduce waitForLoadingSpinnerToDisappear * Use waitForLoadingSpinnerToDisappear in QueryBuilder tests * Use waitForLoadingSpinnerToDisappear in ObjectDetailWrapper tests * Use waitForLoadingSpinnerToDisappear in DashboardApp tests * Use waitForLoadingSpinnerToDisappear in ActionCreatorModal tests * Use waitForLoadingSpinnerToDisappear in DatabaseEditApp tests * Use waitForLoadingSpinnerToDisappear in MetricApp tests * Use waitForLoadingSpinnerToDisappear in SegmentApp tests * Use waitForLoadingSpinnerToDisappear in DatabasesPermissionsPage tests * Use waitForLoadingSpinnerToDisappear in GroupsPermissionsPage tests * Use waitForLoadingSpinnerToDisappear in PremiumEmbeddingLicensePage tests * Use waitForLoadingSpinnerToDisappear in TableBrowser tests * Use waitForLoadingSpinnerToDisappear in FieldValuesWidget tests * Use waitForLoadingSpinnerToDisappear in DataPicker-Models tests * Use waitForLoadingSpinnerToDisappear in DataPicker-Questions tests * Use waitForLoadingSpinnerToDisappear in DataPicker-RawData tests * Use waitForLoadingSpinnerToDisappear in ActionSidebar tests * Use waitForLoadingSpinnerToDisappear in DashboardHeader tests * Use waitForLoadingSpinnerToDisappear in SearchBar tests * Use waitForLoadingSpinnerToDisappear in SearchResults tests * Use waitForLoadingSpinnerToDisappear in SearchResultsDropdown tests * Use waitForLoadingSpinnerToDisappear in MainNavbar tests * Use waitForLoadingSpinnerToDisappear in Navbar tests * Use waitForLoadingSpinnerToDisappear in PublicAction tests * Use waitForLoadingSpinnerToDisappear in DefaultPicker tests * Use waitForLoadingSpinnerToDisappear in TypeFilterContent tests * Use waitForLoadingSpinnerToDisappear in SearchApp tests * Replace waitForElementToBeRemoved(() => screen.queryByText("Loading...")) with waitForLoadingSpinnerToDisappear(); * Replace waitForElementToBeRemoved(() => screen.queryByText(/loading/)) with waitForLoadingSpinnerToDisappear(); * Remove all remaining waitForElementToBeRemoved usages * Replace all spinner queries by text with queries by test-id * Make spinner existence assertions consistent * Consolidate imports * Connect comment to code * Add explanatory comment * Rename waitForLoadingSpinnerToDisappear to waitForLoaderToBeRemoved
-
Tim Macdonald authored
-
Ryan Laurie authored
-
Ryan Laurie authored
-
Oisin Coveney authored
Co-authored-by:
Kamil Mielnik <kamil@kamilmielnik.com>
-
Luis Paolini authored
* Reverting 18238 * Additional tweaks --------- Co-authored-by:
Luis <luis@pop-os.localdomain>
-
Uladzimir Havenchyk authored
-
Nemanja Glumac authored
Check results in [this test tool](https://www.digitalocean.com/community/tools/glob?comments=true&glob=.github%2F%2A%2A%2F%21%28%2A.md%7Cteam.json%29&matches=false&tests=.github%2Fteam.json&tests=.github%2Ffoo%2Fteam.json&tests=.github%2Ffoo%2Fpotato.json&tests=.github%2Ffoo%2Fbar.md&tests=.github%2Ffoo.md&tests=.github%2Fworkflow.yml&tests=.github%2Ffoo%2Fworkflow.yml) that confirm the glob used here is correct. [ci skip]
-
Kamil Mielnik authored
* Add data-testid to LeaveConfirmationModal * Update LeaveConfirmationModal assertions in QueryBuilder unit tests to use data-testid * Update LeaveConfirmationModal assertions in DashboardApp unit tests to use data-testid * Update LeaveConfirmationModal assertions in SegmentApp unit tests to use data-testid * Update LeaveConfirmationModal assertions in MetricApp unit tests to use data-testid * Update LeaveConfirmationModal assertions in DashboardEditApp unit tests to use data-testid * Update LeaveConfirmationModal assertions in ActionCreatorModal unit tests to use data-testid * Extract LeaveConfirmation component * Add data-testid prop to ConfirmContent * Replace cancel-leave-confirmation-modal with leave-confirmation * Rename LeaveConfirmation to LeaveConfirmationModalContent and move it to LeaveConfirmationModal directory * Replace leave-confirmation-modal with leave-confirmation
-
Alexander Solovyov authored
[ci skip]
-
Ryan Kienstra authored
* Add a unit test for /api/pulse/preview_card_info/:id For the GET endpoint /api/pulse/preview_card_info/:id * Add a unit test for the GET endpoint /search/models * Add a unit test for DELETE /api/timeline-event/:id * Add a unit test for DELETE /api/timeline-event/:id * Commit Ngoc's suggestion: Update test/metabase/api/timeline_event_test.clj Co-authored-by:
Ngoc Khuat <qn.khuat@gmail.com> * Apply Ngoc's suggestion to destructure :timeline_id * Remove test for event that I created in with-temp * Fix failed test I introduced, change collection to collection-id * Test deleting a non-existent timeline event by id * Move my search-models-test lower * Copy-paste Ngoc's query-model-set-test and macro https://github.com/metabase/metabase/pull/32624/files#diff-734923de9c62f49d6b708d64a214ee38d7d0fb1b2c20343bff7b947a6021b021R297-R332 https://github.com/metabase/metabase/pull/32624/files#diff-54344d8b75319d40a4cb2a2afe935500c23d34f0f3c63c51f005493d4dc4f8f1R690-R732 * Remove "database" and "table" from test expectation Those failed in this PR, though they passed in 32624 * Revert test for pulse/preview_card_info/, as it'll be removed * Remove with-verified-cards, which I needlessly copied into this PR That's needed in 32624, but not this PR. * Add a test for the archived-string param --------- Co-authored-by:
Ngoc Khuat <qn.khuat@gmail.com>
-
- Oct 08, 2023
-
-
Nemanja Glumac authored
-
- Oct 06, 2023
-
-
Cam Saul authored
-
Alexander Polyankin authored
-
Ryan Laurie authored
-
Nemanja Glumac authored
-
Denis Berezin authored
* Add more drills tests, unify tests structure, add issues refs * Add tests for fk-details drill apply * Tests fixes after merge with master * Code review fixes * Comment failing tests after merging with master * Restore sort drill tests
-
Emmad Usmani authored
* wip * Add comma and fix spelling error * Added some padding and things * switch control styles * text styles * add storybook examples * Add guidance text * Add top padding for small switches * change default size from `sm` to `md` * fix missing default `size` prop * fix paddings * remove label padding if empty * use `getStylesRef` --------- Co-authored-by:
Oisin Coveney <oisin@metabase.com> Co-authored-by:
Maz Ameli <maz@metabase.com>
-
Cam Saul authored
-
Braden Shepherdson authored
### Background CLJS output is not watched by webpack. (Watching it causes full page reloads I can't find a way to stop.) CLJS changes are hot reloaded by shadow-cljs separate from webpack. Changing CLJS code works great: shadow-cljs hot reloads it and it works nicely. Changing JS code also works: webpack recompiles (including the latest CLJS output), the browser refreshes, and all is well. ### The Problem If you refresh the browser after you've changed only CLJS code, webpack does not know it must recompile the bundles. Therefore it serves up the old bundles, which have now-stale CLJS output in them. ### The "Solution" The first time shadow-cljs hot reloads after a CLJS change, a hook in `metabase.util.devtools` registers a `beforeunload` handler. This handler sends a request to `http://localhost:8080/webpack-dev-server/invalidate`, forcing webpack to recompile the bundles. That isn't such a terrible hack by itself. The ugly part is that there's a race condition between webpack invalidating the bundles and the browser trying to load the bundles after the refresh, and sometimes the browser wins (loading the stale CLJS). I added a spin-lock, repeatedly checking `performance.now()` until 500ms have passed, then the handler returns. This small delay gives webpack time to mark the bundles invalid and allow the refresh. I haven't experimented with how long that delay needs to be for this to be reliable. Since this handler is only attached after CLJS code has been hot reloaded, it will never run for most FE devs. ### Alternative: Smarter webpack The best solution would be to make webpack - recompile the bundles when the CLJS output changes; but - not try to HMR them (which triggers a browser refresh and ruins CLJS hot reloading) but I have not found any way to configure this out of the box. I think it would require patching `ReactRefreshPlugin`, a nontrivial job. It might also be possible for shadow-cljs to poke webpack after it finishes building, but there's the same problem that webpack will want to HMR. Webpack doesn't support any "lazy" invalidation; as far as I know there's no way to say "this bundle is now invalid but don't recompile it until someone tries to GET it" or anything like that. ### Alternative: Block refresh then continue The `beforeunload` handler could instead work like this: - `preventDefault()` on the event, stopping the refresh. - `fetch()` the `invalidate` route as above. - asynchronously, when that `fetch()` is done and we know webpack has invalidated the bundles, trigger a refresh. I haven't tried this, since it seems more complicated than the spin-lock. We just need to give the `invalidate` request a head start.
-