This project is mirrored from https://github.com/metabase/metabase.
Pull mirroring updated .
- Mar 28, 2024
-
-
John Swanson authored
For collections retrieved from the Search API, attach `location` and `effective_location` so the frontend knows... where they're located.
-
dpsutton authored
-
adam-james authored
* Cards with Results Should Show up in Subscriptions Fixes: #40726 This PR fixes a bug where setting 'Hide thie card if there are no results' in a Dashcard's viz-settings would hide the card even when there were results. * adjust test to show that the setting is respected Before, the setting would always hide the card. Now, the card is only hidden when there are no results. This test sets up 4 cards: 2 are normal, 2 have no results, but 1 has the setting to hide empty. THerefore, we should expect to see 3 results.
-
Sloan Sparger authored
* upgrades @testing-library/user-event to v14, updates test to accomidate events always returning promises and other breaking API changes * Fixing up broken suites. Half way * rest of tests * green plz * Fix new entries of userEvent usage * unit test adjustments --------- Co-authored-by:
Nick Fitzpatrick <nickfitz.582@gmail.com> Co-authored-by:
Uladzimir Havenchyk <uladzimir.dev@gmail.com>
-
adam-james authored
* Make Formatting on Exports Optional Formatting on exports can be turned off via a middleware key: `:format-export?` which will control if the 'app style' formatting will be applied to the exported results. `:format-export? false` will return the file as in previous Metabase versions. * format_export's default value provided in the QP middleware Should still default to formatted for v. 49, as the formatting is intended as a feature. This default value should be provided in a central place, so is added to the middleware and is therefore not necessary for the API to provide a default. * weird indentation * Add format_export param to dashboard dashcard query endpoint * Add format_export option to embedded dashboard downloads endpoint * Move default true value to the streaming-results-writer impls * Default true but for real this time * Add format_export to the public Question endpoint * Add test to card api * Dashboard exports endpoint test * Add test to dashboard embeds Test still fails and I don't know why yet * the dangers of println debugging.... Well, I was passing a string false the whole time. Turns out the problem was me * Public Card downloads endpoint now has format_export and test * export_format also works for adhoc queries using api/dataset * Let defendpoint do the boolean parsing * Embed endpoint should now work too. * Unify format-rows and format-export middlewares * Sneaky endpoint! * In xlsx, always parse temporal strings so that viz-settings formatting is applied * Snuck in an incomplete change by accident. removed it. * Can now specify format/no format on subscriptions * Fix and move migration * default format rows to true in attachments * Ok, I think that should actually work for subscriptions. * Change endpoints to use format_rows instead of confusing format_export * format_rows everywhere * Fix more test failures * redef'd function had wrong signature * Make format export optional (FE part) (#40643) * Refactor download URL builder code Need to handle query `params` and request `body` separately * Export `useHover` from `metabase/ui` * Add unformatted export for dashboard cards * Add unformatted export for saved questions * Fix POST body encoding * Add unformatted export for ad-hoc questions * Ensure `format_export` is always false for Excel * Add unformatted export to public questions * Add unformatted export to embedded questions and dashboards * Fix behavior for PNG format * Add tests for `QueryDownloadPopover` * Fix e2e downloads helper (allow URL query params) * Rework alt key handling * Add e2e test * Switch to `format_rows` instead of `format_export` * Add unformatted export option to subscriptions * Fix `isHoldingAltKey` initial state * Rework e2e test to use Total column * Fix initial checkbox state for subscriptions * Use "Alt" in tooltip label for Windows/Linux * Show the subscriptions toggle only for CSV attachments --------- Co-authored-by:
adam-james <21064735+adam-james-v@users.noreply.github.com> * Address review feedback --------- Co-authored-by:
Anton Kulyk <kuliks.anton@gmail.com>
-
Jeff Bruemmer authored
-
Alex Yarosh authored
-
Oisin Coveney authored
-
Kamil Mielnik authored
* Fix warning about passing a ref to a function component - this didn't work and fortunately was not used (anymore) at all * Move comment where it belongs * Fix warning that functions cannot be react children
-
Alexander Polyankin authored
-
Oisin Coveney authored
Co-authored-by:
Aleksandr Lesnenko <alxnddr@users.noreply.github.com>
-
Oisin Coveney authored
-
dpsutton authored
if a previous run had an error, it will remain present but the state would be "indexed". We should just clear that error.
-
Oisin Coveney authored
Co-authored-by:
Aleksandr Lesnenko <alxnddr@users.noreply.github.com>
-
Oleg Gromov authored
-
Alexander Polyankin authored
-
Tim Macdonald authored
* Parse wildcards in native queries Add query_field.direct_reference * Do away with old Model refs in Card model test * Do not show stale cards with a select *
-
Mahatthana (Kelvin) Nomsawadi authored
-
Chris Truter authored
-
- Mar 27, 2024
-
-
Anton Kulyk authored
-
Chris Truter authored
-
Sloan Sparger authored
-
Ryan Laurie authored
-
Raphael Krut-Landau authored
-
Ryan Laurie authored
* wip - collection moving fix subcollection detection make stuff nice update e2e tests prettier new e2e coverage fix unit tests fix stacked modals cleanup less diff sneaky-ass modal wrappers fix some e2e tests * rebase rejigger * fix tricky e2e flake
-
Uladzimir Havenchyk authored
* Upgrade node to 18.20 * Trigger CI * Try 20 again * Revert "Try 20 again" This reverts commit 8f4b39e7a64f1fae7c60decfb91ea87aff81f587. * Revert change * Add nvmrc to the frontend_sources list
-
John Swanson authored
Fixes #40328 [Our documentation](https://www.metabase.com/docs/latest/people-and-groups/managing#group-managers) states that: > Group managers can: > > - View all people in the Admin settings > People tab. This fixes enforcement to be aligned with the documentation. This behavior makes sense, because as the docs also state, Group Managers should be allowed to *add* people to the group they manage, which they can only do if they can see those people! Initially, I also removed a faulty test, which was described as: ``` ;; Non-segmented users are allowed to ask for a list of all of the users in the Metabase instance. Pulse email lists ;; are an example usage of this. Segmented users should not have that ability. Instead they should only see ;; themselves. This test checks that GET /api/user for a segmented user only returns themselves ``` but actually failed to test this in a relevant way (because it was testing the `GET /api/user` endpoint rather than the `GET /api/user/recipients` endpoint). The test had continued to pass only because the user was the only member of the group they managed. I initially thought this behavior wasn't desired, but as it turns out, it *is* in fact documented behavior to disallow sandboxed users from seeing any email suggestions. Investigating, I found that a bug was allowing sandboxed users to see all users on the `/api/user/recipients` endpoint if the user-visibility setting was set to `:all`. Thus, the second commit fixes the bug and re-adds the (fixed) test. A sandboxed user now only sees their own user when hitting `/api/user/recipients`.
-
Oisin Coveney authored
-
Uladzimir Havenchyk authored
-
Noah Moss authored
-
Kamil Mielnik authored
* Deprecate entity hooks still in use * Remove unused entity hooks * Move entity framework hooks to a separate directory
-
Anton Kulyk authored
-
Oisin Coveney authored
-
Nemanja Glumac authored
* Trigger the query limit change on blur * Use named export * Add a unit test * Fix E2E tests * Fix unit tests * Additional E2E test fix * Address review comments
-
- Mar 26, 2024
-
-
Raphael Krut-Landau authored
* Revert "Remove Models from Browse data (#40108)" This reverts commit 45a2e868. * Make rtl friendly * Add 'no description' for blank-description models * Fix vertical position of collection header toggle * Move FixedSizeIcon into metabase/ui and increase height of empty state * Move FixedSizeIcon back into BrowseModels.styled.tsx * Localize 'No description' * Add comment * Fix type issue
-
Ryan Laurie authored
-
Denis Berezin authored
* Minimal SDK code * Fix viz, styles * Move SDK code to enterprise folder * Fix files structure * Clean-up * Review fixes * Review fixes * Review fixes * Remove elementid * Reuse some options from main webpack config * Actualize package.json * Actualize package.json
-
Alexander Polyankin authored
-
Nemanja Glumac authored
-
dpsutton authored
* Use expression fix on both pk-ref and value-ref The gist: inside the query expressions are referred to as [:expression "foo"]. But as a nested query, it's just another field, and the fact that it was an expression is irrelevant and should not leak from that stage. So "downstream" should just be [:field "foo" base-type]. Oddly, if you just fix one field or the other, the query would be "valid", would log an error, but no valid values would be returned. It seems like the invalid expression reference was just dropped so we only selected a single column and those were removed (we run `(filter valid-tuples?)` as we only want valid key/value pairs). So let's add a `(> (count values) 0)` which was failing previously. * Fix indexing error When updating the model index, it diffs the existing values vs the new values and deletes appropriate and adds the new values. But it was using the wrong column when updating the model index values. It used `pk_ref` but that table uses `model_pk`. This led to the following errors on stats: ```sql select pk_ref, value_ref, state, error from model_index where state = 'error' pk_ref,value_ref,state,error "[""field"",563028,null]","[""field"",563018,null]",error,"ERROR: column ""pk_ref"" does not exist Position: 68" "[""field"",534030,null]","[""field"",534037,null]",error,"ERROR: column ""pk_ref"" does not exist Position: 68" "[""field"",545945,null]","[""field"",545948,null]",error,"ERROR: column ""pk_ref"" does not exist Position: 68" ``` Now those errors will be fixed and the model indexes will correctly track the values * Bump indexing threshold to 25,000 Had been limited to 5,000 rows of model indexing. This was a made up number as we went into this endeavor. But it's proving to be far too small. Bumping to 25,000 * Parititon deletions and inserts With a higher limit need to ensure that we don't send too large of a query. ```clojure model-index=> (t2/insert! ModelIndexValue (map (fn [id] {:name (str (gensym "value")) :model_pk id :model_index_id 1}) (range 25000))) Execution error (PSQLException) at org.postgresql.jdbc.PgPreparedStatement/<init> (PgPreparedStatement.java:105). PreparedStatement can have at most 65,535 parameters. Please consider using arrays, or splitting the query in several ones, or using COPY. Given query has 75,000 parameters ``` * move comment and fix test failure explanation comment should be next to the number? check. and also need to use `mc/explain` which returns info rather than `mc/validate` which returns a bool: ```clojure ;; bad model-index-test=> (let [values [[1 "foo"] [2 "foo"] ["foo" "foo"]]] (-> (mc/validate [:sequential [:tuple number? string?]] values) (me/humanize))) nil ;; good model-index-test=> (let [values [[1 "foo"] [2 "foo"] ["foo" "foo"]]] (-> (mc/explain [:sequential [:tuple number? string?]] values) (me/humanize))) [nil nil [["should be a number"]]] ```
-