This project is mirrored from https://github.com/metabase/metabase.
Pull mirroring updated .
- Nov 14, 2023
-
-
bryan authored
* remove internal user on rollback + test * fix naming + add newline * fix typo * rollback change to migration changeset ID - since it would alter the checksum for it
-
Nemanja Glumac authored
-
Nemanja Glumac authored
-
Cal Herries authored
-
Roman Abdulmanov authored
-
Ryan Laurie authored
-
Ngoc Khuat authored
-
Ryan Laurie authored
This reverts commit adfda064 now that #35621 has fixed the underlying issue.
-
Cal Herries authored
-
- Nov 13, 2023
-
-
bryan authored
* respect MB_PLUGINS_DIR on serialization load * respect MB_PLUGINS_DIR on serialization load
-
bryan authored
-
Jesse Devaney authored
* refactor use-list-select hook - toggleAll(items) felt unintuitive as some items could be selected while simultaneously unselecting others - switched to selectOnlyTheseItems(items) to be more explicit on what the function is doing - updated consumers of useListSelect to use the new API * convert to functional component * convert HoC ListSelect to hook useListSelect * convert redux connects to useSelectors * refactor ArchiveApp and improve types * hide read only items in the archive * verify desired behavior * refactor beforeEach * remove unused eslint disable line * refactor item can_write accessor logic * Add :can_write key into the search data response. uses `mi/can-write?` * update archive app for archived search changes * refactor filtering of list * replace hard-coded collection ids in spec * move specific helper outside of generic helpers file * remove admin gets unfiltered data * BE sends only can_write true results when search with archived?=true This change modifies the `check-permissions-for-model` method to check for write access if the SearchContext has archived true. This means that the only results sent to the frontend are those results that the user can take actions on, namely, unarchiving them. * reomve unused require * update FE to account for BE changes --------- Co-authored-by:
adam-james <21064735+adam-james-v@users.noreply.github.com>
-
bryan authored
-
bryan authored
* Audit db sync cannot happen - disable all job scheduling for audit db - make syncing/scanning auditdb a noop in prod (throws otherwise) * better name for job-data -> jobs-to-create * test no scheduling and no running audit db sync * sort ns * fix trivial check in test * use metabase.task/scheduler-info intead qrtz table * sort ns
-
Nemanja Glumac authored
-
Noah Moss authored
* tweak wording in config file docs * Update docs/configuring-metabase/config-file.md Co-authored-by:
Jeff Bruemmer <jeff.bruemmer@gmail.com> * add period --------- Co-authored-by:
Jeff Bruemmer <jeff.bruemmer@gmail.com>
-
Nemanja Glumac authored
-
Jeff Bruemmer authored
* command page * formatting * command updates
-
Jeff Bruemmer authored
-
Noah Moss authored
-
Braden Shepherdson authored
The QP returns "large int" IDs like FKs as string, since JS doubles only guarantee 51 bits of mantissa and a 64-bit ID might get rounded. However NULL IDs were getting returned as `""` empty strings. This fixes the QP middleware to return `nil` (JS `null`). In addition, the drill-thru logic in the FE and MLv2 was trying to filter incorrectly with a NULL value. This PR prevents the FK filter drill from returning anything in that case. I filed #35561 to track the fact that would be useful to drill thru to all rows with a NULL for some FK, but it's low priority. Fixes #13957.
-
Ryan Laurie authored
-
Nemanja Glumac authored
Follow up after #34892 * Include E2E workflow in file-path triggers * Adjust the glob for "actions" directories
-
Nicolò Pretto authored
* avoid calling fetchCardData in undoRemoveCardFromDashboard for virtual dashcards * test: adds basic e2e test for text card
-
Nemanja Glumac authored
* Fix flake for repro 20393 * Fix flake for repro 22524 [ci skip]
-
Nemanja Glumac authored
[ci skip]
-
- Nov 12, 2023
-
-
Braden Shepherdson authored
This reverts commit d140d676. Co-authored-by:
Case Nelson <case@metabase.com>
-
- Nov 11, 2023
-
-
Noah Moss authored
-
- Nov 10, 2023
-
-
Mark Bastian authored
It appears the code fails when run in parallel due to the `metabot-settings/enum-cardinality-threshold` value. To demonstrate, I ran: ```clojure (frequencies (pmap (fn [_] (clojure.test/run-test inner-query-name-collisions-test)) (range 1000))) ``` and got: ``` {{:test 1, :pass 12, :fail 0, :error 0, :type :summary} 414, {:test 1, :pass 11, :fail 1, :error 0, :type :summary} 586} ``` Running with a simple sequential map produced no errors. Wrapping the second test in `tu/with-temporary-setting-values [metabot-settings/enum-cardinality-threshold 10]` reduced the error count dramatically (in the teens for 1000 samples), but still wasn't bulletproof. I'm guessing the two `testing` directives in the test are run in parallel and the setting is not thread safe. By adding the explicit threshold to the test and breaking it out into a standalone test the error count drops dramatically. ``` (frequencies (pmap (fn [_] (clojure.test/run-test inner-query-name-collisions-with-joins-test)) (range 1000))) ;=> {{:test 1, :pass 6, :fail 0, :error 0, :type :summary} 998, {:test 1, :pass 5, :fail 1, :error 0, :type :summary} 2} ``` I'm still not sure why this fails (only twice in 1000 runs), but apparently something about this operation is not thread safe. However, given the additional isolation added by this PR we go from a 60ish percent failure rate down to a 0.2% failure rate locally. Hopefully this is adequate enough to prevent any substantial level of future flakes.
-
Jerry Huang authored
-
Ryan Laurie authored
-
Jeff Bruemmer authored
-
John Swanson authored
* Audit log CRUD permission failures When we run `metabase.api.common/*-check` functions like `update-check` or `create-check`, publish an event when the check fails, along with enough context that, on the other side, the audit log handler can record the relevant event. Note that we won't fire events for a `read-check` failure. Eventually we will and these events will be handled by the "read log" instead of the audit log. If we throw an event that isn't derived from `:metabase/event` it will throw an exception. That `derive` no longer belongs in the audit log code, and until we have the view log there's not really a logical place to put it. For now, I just commented out the `publish-event!` call, with the assumption that the view log is coming very soon. Otherwise we can just delete it and add it back in when it's needed. Some tangentially related required changes here to make this work include: * allow `audit-log/model-name` to work with RootCollections `(t2/model root-collection)` returns a Class rather than a keyword - `name` doesn't work here, so we'll use `getSimpleName` instead. * add a default model-details clause for dashboards If the event-type is not one that we've explicitly delineated, just return an empty map for the model details. * Migration to fit longer model names in `activity.model` The `NativeQuerySnippet` or `PermissionsGroupMembership` models, for example, were too long to fit in `VARCHAR(16)`. I'm doubling the length of this column to fit the longest model I see, with a little extra room.
-
Uladzimir Havenchyk authored
-
Nemanja Glumac authored
Follow up after #34209
-
Noah Moss authored
Co-authored-by:
bryan <bryan.maass@gmail.com>
-
Nemanja Glumac authored
-
Ryan Laurie authored
-
Jesse Devaney authored
-
John Swanson authored
When a card or dashboard is pinned, the entity itself is not changing, so let's not send the `:event/card-update` or `:event/dashboard-update` events in these cases.
-