This project is mirrored from https://github.com/metabase/metabase.
Pull mirroring updated .
- Aug 15, 2024
-
-
Ngoc Khuat authored
-
- Aug 14, 2024
-
-
Cam Saul authored
* Add Kondo linter to disallow hardcoded driver names in tests * Fix all tests using hardcoded driver names * Test fixes
* Appease Kondo * Remove normal-drivers-except * Test fix * Test fixes * MongoDB test fixes -
lbrdnk authored
* Enable type info computation for fields coming from model source query * Add test * Add handling for fields coming from joins
-
- Aug 13, 2024
-
-
metamben authored
-
Alexander Polyankin authored
* Handle column matching errors * Fix test * Fix test * Fix test * Fix test * Fix test
-
metamben authored
-
- Aug 12, 2024
-
-
Alexander Polyankin authored
-
adam-james authored
* Add Timeseries insights even when Custom Columns exist WIP Fixes 46244 I don't know why it was (maybe still is) required that the :other columns be empty before providing insights. * might be a solution to changing trendlines when data doesn't change The insights code that powers the frontend trendline requires taking a sample of the dataset. This sampling has some randomness associated by design, and should maintain its randomness. But it makes some sense to use the exact same sample when the input has not changed at all, hence trying this memoize approach out. Might not be the final solution, but it's a start * add test to show that insights are computed * use java.util.random with a seed to keep insights stable
-
Duncan Mak authored
* Add testcase from https://github.com/metabase/metabase/issues/43915 * Try a custom formatter if the default formatter for OffsetDateTime doesn't work * Add testcase * Make auxillary formatter private * Catch a more specific exception * Throw IllegalArgumentException on invalid dates * Use strict resolver and fix test * Empty commit to assign credit where it's due --------- Co-authored-by:
Chris Truter <chris@metabase.com>
-
adam-james authored
* Dowload Row Limit Env Var Adds `MB_DOWNLOAD_ROW_LIMIT` to enable changing the row limit on downloads and alert/subscription attachments (not the rendered tables, but the .csv, etc.). Based on: #44982 (Thanks, @r-kot) Partially implements: #28144 The difference in this PR compared to #44982 is that the download limit applies to all downloads, the only exception being when the limit is above `qp.i/absolute-max-results` (1048575, based on Excel's limitation); in such a case, the user supplied limit is only used if the download is csv or json, and `qp.i/absolute-max-results` is used for xlsx. This PR also fixes alert/subscription attachment limits; prior to this, they were set to the in-app limit of 2000 rows, but now they will follow the user supplied download-row-limit. This PR also adds a test to the downloads-and-exports test namespace, confirming that they follow the supplied limit, or the max limit if none is supplied. * add test confirming the default limit works * fix test to use the download-row-limit * address review feedback * Update src/metabase/public_settings.clj Co-authored-by:
Cal Herries <39073188+calherries@users.noreply.github.com> * add test covering case where download-row-limit is unset --------- Co-authored-by:
Cal Herries <39073188+calherries@users.noreply.github.com>
-
Chris Truter authored
-
Alexander Solovyov authored
-
Alexander Solovyov authored
-
- Aug 09, 2024
-
-
adam-james authored
* Export Formatting Correctness WIP Several bugs exist around the correctness of export formatting, this aims to fix them. Fixes #27374 When a model has viz settings/metadata changed after save, the download won't incorporate said changes. At least it's clear that scale doesn't work. * number formatter merges settings from columns too * column formatting on aggregated cols works in xlsx now too * fixes 43040 by grabbing global-type-settings in csv formatter
-
Oleksandr Yakushev authored
-
- Aug 08, 2024
-
-
adam-james authored
* Last Used Param Value doesn't fill in with default value if cleared Fixes #46368 The Last used parameter value is cleared when the frontend sends `nil` as the parameter's value. This works except in cases where a user clears a parameter with a default value. In this case, we want to indicate that the parameter is cleared, so we store `nil` in the appdb in such a case. * Update src/metabase/query_processor/dashboard.clj Co-authored-by:
metamben <103100869+metamben@users.noreply.github.com> * add assertion showing that 'nil' with default is still stored --------- Co-authored-by:
metamben <103100869+metamben@users.noreply.github.com>
-
Case Nelson authored
Fixes: #46558 In #45575 we introduced casting uuid fields for drilldowns. However we failed to include a check that the rhs was itself another field of uuid type and so no casting should occur. This broke joins on models when the database_type of the field may not be known.
-
Alexander Polyankin authored
* Try without broken refs * Disable broken test * Disable broken test
-
Ngoc Khuat authored
-
Case Nelson authored
* fix: Handle tokens in strings when parsing params Fixes #38051 Fixes #36262 Fixes #11755 * Fix handling snippets with single quotes in name
-
- Aug 07, 2024
-
-
Alexander Polyankin authored
-
Dennis Schridde authored
== Goal == Prevent admins of Metabase Cloud instances with Metabase Cloud Storage from accidentally breaking their upload configuration, since in this scenario that is automatically managed by Metabase Cloud to use the attached data warehouse. == How to test == On a subscription with Metabase Cloud Storage: * The "Uploads" section in the left sidebar of `/admin/settings` does not show * A "not found" page is shown at `/admin/settings/uploads` where one would otherwise expect the "Uploads Settings" page * `PUT /api/setting` with an `uploads-settings` field in the body fails with `403 Forbidden` and the setting is not changed * `PUT /api/setting/uploads-settings` fails with `403 Forbidden` and the setting is not changed * `GET /api/setting` contains an element with `key: "uploads-settings"` and a value * `GET /api/setting/uploads-settings` responds with the value * `GET /api/session/properties` contains the `uploads-settings` field Closes: https://github.com/metabase/harbormaster/issues/5121 Co-authored-by:
Ryan Laurie <iethree@gmail.com>
-
Chris Truter authored
-
lbrdnk authored
* Add :relative-time-interval mbql function * Add relativeDateFilterPartsRelativeTimeInterval * Update display-name-method :relative-time-interval * Update desugar-relative-time-interval * Define relative-time-filter op * Add or update tests * Update tests * Update display-name-method * Update test * Fix positive relative-time-interval shift * Add checkins:1-per-day:60 dataset * Update var name * Bail out from optimization of relative-time-interval desugared filters * Update dataset kondo hook * Generate cache required for kondo hooks in kondo.sh * Rename dataset
-
- Aug 06, 2024
-
-
metamben authored
-
Chris Truter authored
-
Chris Truter authored
-
Oleksandr Yakushev authored
* perf: Optimize validation * Bump Malli version * perf: Optimize validation
-
- Aug 05, 2024
-
-
Ngoc Khuat authored
-
Chris Truter authored
### Description This change should fix some explosions in stats due to phantom fields, while also making things a bit more rigorous. - Record the table schema in query_field - especially useful for unknown tables - Allow null table names in query_field - they might be phantoms, or they might not - We still have the option to filter them out in tools we build on top - Tighten up matching logic to consider schema
-
- Aug 02, 2024
-
-
John Swanson authored
* Fix coll permissions for audit collection We've had a function in `models.collection` for a while that has taken a permissions set and returned a set of collection IDs that the user has permissions on. I refactored this recently, but didn't notice that it was actually doing the permissions checks slightly incorrectly. Specifically, because it only looks at the user's permissions and the collection IDs and doesn't use `mi/can-read?` or `mi/can-write?`, it's completely indifferent to whether a collection is an audit collection or not. This is arguably not a *permissions* issue: the two errors that could come about here are: - someone sees the audit collection even though the audit feature is disabled, or - someone is presented with the audit collection in a context where only writable collections should be present - when they try to actually write to it, it fails (since then we're doing the real permissions check). The primary motivation for this fix was to prevent audit dashboards and cards from appearing in the list of stale items. * Fix hardcoded collection ID We were creating a timeline in a fixed collection ID, that in tests happened to be the ID of the Metabase Analytics collection.
-
lbrdnk authored
* Update values-from-card-query * Add test * Update values-from-card-query * Add missing issue no
-
Chris Truter authored
-
Ngoc Khuat authored
-
- Aug 01, 2024
-
-
lbrdnk authored
* Avoid adding temporal-unit to lhs cols * Use :default temporal-unit * Simplify logic, update comments * Update substitute-field-filter-test * Update align-temporal-unit-with-param-type-test * Update field-filter-date-test * Use end-excludding gte lt filter for DateTime fields * Update substitute-field-filter-test * Update align-temporal-unit-with-param-type-test * Update field-filter-date-test * Update bigquery test + comment * Update date-str->qp-aware-offset-dt * Add guard for unexpected date string format This is just for the completeness, I haven't encountered it. * Address review remarks * Update comment
-
Chris Truter authored
* Squash * Clean up query modifier for validating card references (#46283) * Fixup bad git merge on test expectation * Tweak docstrings and de-densify logic
-
-
lbrdnk authored
* Add :relative-time-interval mbql function * Add relativeDateFilterPartsRelativeTimeInterval * Update display-name-method :relative-time-interval * Update desugar-relative-time-interval * Define relative-time-filter op * Add or update tests * Update tests * Update display-name-method * Update test * Fix positive relative-time-interval shift
-
Ngoc Khuat authored
-