This project is mirrored from https://github.com/metabase/metabase.
Pull mirroring updated .
- Mar 13, 2023
-
-
Case Nelson authored
* Initial aggregation functions for metabase-lib * Remove comment for build? * Move defop to common * Add docstrings * Make eastwood happy
-
Aleksandr Lesnenko authored
* lint e2e specs on CI * update eslint to run on e2e specs
-
Cam Saul authored
* lib.equality * Better generation
-
Ryan Laurie authored
* only save changed dashboards * test early return from save action * remove problematic api wait for dashboard save * deeply compare cards and add better tests * update failing e2e test
-
Jeff Bruemmer authored
-
Mark Bastian authored
Updated kixi/stats lib from 0.44 to 0.5.5.
-
Nick Fitzpatrick authored
* Adding Show Total toggle, adding unit tests * adjusting unit test, fixing logic * Adding Static Viz test. PR Feedback
-
john-metabase authored
* Moves to actively-maintained clj-yaml and removes obsolete pinned deps * Adds discouraged namespace rule for clj-yaml (use metabase.util.yaml) Co-authored-by:
Braden Shepherdson <braden@metabase.com>
-
Ryan Laurie authored
* composite key object detail test * add tests for no primary keys * fix rebase * allow db sync to wait on the presence of a specific table
-
Nick Fitzpatrick authored
-
Alexander Polyankin authored
-
Cal Herries authored
* Add migration for deleting the abandonment email task * Start+stop scheduler around the migration * Update clj-kondo * Rename migration * Change to 46 * Fix define-migration * Add test * Update ns description * Remove stop-scheduler! from migration * Remove migration dependency on metabase.task * Restore mdb.connection -> mdb * Update custom-migrations ns docstring * Remove unused code * Fix comment
-
Cam Saul authored
* Cljc humanization * Add method for `:advanced` * Test fixes
-
- Mar 11, 2023
-
-
Ngoc Khuat authored
-
- Mar 10, 2023
-
-
adam-james authored
* WIP for better axes grouping in static viz. Double x-axis and single x-axis are different, but both can have situations where grouping might occur, so the implementation is a tad confusing. I'm trying to build test cases that represent both scenarios reasonably, and build an implementation that's not too confusing. * Fix reflection warnings in render test utils * Overlap calcs don't fail with BigDecimal inputs now. * Continuing to clean up overlaps calcs and impl for single/double in progress * WIP version that works for single-x multi-series and double-x multi There's a lot to think about here... But basically, handle rows of shape: double-x: [[x1 x2] [y]] and single-x: [[x] [y1 y2 y3]] * Single and Multi X axis now use same axes grouping strategy * Cover some overlap scoring cases. This may need improving in future still, but the overlap calculation is at least used for both single-x and multi-x axis scenarios now, which is a definitie improvement. * Missed these unused bindings in test let body * overlap calc won't fail if we pass in `[nil nil]` * Clean up grouping axes implementation addressing review feedback. - overlap and nearness split into two functions - add the fn 'axis-group-score' to call overlap/nearness appropriately, and handle condition checks (eg. nil vals) - removed old group-axes and now unnecessasry default-y-axis-pos fn -> handled by group-axes-at-once fn - axis group threshold not passed as arg anymore * Fixed some alignment mistakes
-
Natalie authored
-
Emmad Usmani authored
-
Aleksandr Lesnenko authored
-
dpsutton authored
* List all actions previously `api/action` required `?model-id=<model-id>`. This caused the FE to DOS the backend looping over each action. On stats I found 350 or so sequential requests, with app-db saturation leading to requests taking from 400ms near the beginning to 7seconds near the end. This makes `model-id` option and now returns actions on all models the user can see. ``` ❯ http GET "localhost:3000/api/action" Cookie:$SESSION -pb [ { "archived": false, "creator": {...}, "creator_id": 1, "database_id": 3, "dataset_query": {...}, "id": 1, "model_id": 1, "name": "source = foo", "parameter_mappings": null, "parameters": [...], ... } ... ] ``` * update frontend for action picker to support single action list endpoint * list actions tests * update actions e2e tests * Return empty vector if no results Running tests locally might return some extra actions not asserted on in the tests. And there you might expect a 200. But CI runs with an empty database and returns no response so you get a 204. Quite annoying and there's no good way to expect a "2xx" status code at the moment. So just return the empty vector so it's always a 200 code. * update actions endpoint unit test mocks * Simplify logic a little * docstring tweak * schema with better error message * update mocks to accept optional modelId * simplify sorting and grouping * make sort case-insensitive * simplify action api test mocks --------- Co-authored-by:
Ryan Laurie <iethree@gmail.com>
-
Jeff Bruemmer authored
-
dpsutton authored
* Handle models with joins We had been using the metadata from the query to get column names, and then `select (column-names) from persisted-table`. But joins affect how columns are emitted. For this tests, using orders join to products, selecting order.total and product.category. And the metadata from running this query uses the normal names `:name "total"`, and `:name "category"`. _BUT_ the emitted sql does not use these names: ```sql SELECT "public"."orders"."total" AS "total", "products"."category" AS "products__category" -- <-------- FROM "public"."orders" LEFT JOIN "public"."products" AS "products" ON "public"."orders"."product_id" = "products"."id" ``` When we persist, we do `create table as <(qp/compile query)> so we were creating a column named `products__category` _NOT_ "category". But later on we would select "category" and this would blow up. ```sql select "total", "category" -- <- category doesn't exist in this table from "metabase_cache_424a9_8"."model_1105_txbhmkrnoy" ``` Now a query of `{:source-table "card__<model-id>"}' emits the following query when the persisted cache is substituted: ```sql SELECT "source"."total" AS "total", "source"."products__category" AS "products__category" FROM (select * from "metabase_cache_424a9_8"."model_1152_lecqfzcjke") AS "source" LIMIT 1048575 ``` * Test and lint fixes
-
Jeff Bruemmer authored
-
Ngoc Khuat authored
* Exclude non-required PKs from implicit create actions
-
Ngoc Khuat authored
-
Mark Bastian authored
Added comments to org.mariadb.jdbc/mariadb-java-client and io.github.resilience4j/resilience4j-retry deps so we know what's blocking their upgrades.
-
Ngoc Khuat authored
-
- Mar 09, 2023
-
-
Mark Bastian authored
Updated both the slf4j api and impl jars.
-
Cam Saul authored
* MLv2 metadata overhaul, second try * Stricter linting for MLv2 * Address PR feedback * Revert fancy fn schema for now * Remove unused import * Test fixes
* Oops fix bad :require form * MLv2 mega metadata overhaul 2 of infinity * Test fixes * Cljc humanization * Misc MLv2 improvements from #28921 * Fix indentation * expression.non-integer-real * Remove debugging stuff * More cleanup * Add method for `:advanced` * non-integer-real * Test fixes * Test fixes: ::ref/field shouldn't fail if checked against a non-sequential object * MLv2 `define-mbql-clause` and `type-of` calculation * Continued [ci skip] * MLv2 overhaul :flex: * Address PR feedback * Merge type-of overhaul * Address PR feedback -
Cam Saul authored
* MLv2 `define-mbql-clause` and `type-of` calculation * Continued [ci skip] * MLv2 overhaul :flex:
-
Luis Paolini authored
-
Mark Bastian authored
Upgraded com.snowplowanalytics/snowplow-java-tracker from 0.12.0 to 1.0.0. This did require refactoring the `metabase.analytics.snowplow` ns to use the new fluent API as well as suppressing eastwood linting of the ns due to a classloader issue as described [here](https://github.com/jonase/eastwood/issues/444).
-
john-metabase authored
* Reorganizes serdes v2 namespaces and some functions/multimethods to simplify implementation * Updates serdes v2 to store/load :serdes/meta in YAML to remove ingestion path matching
-
Anton Kulyk authored
* Don't ignore manually entered parameters on clean * Validate options for numeric fields with dropdown input * Clear `valueOptions` when switching field and input types * Remove sample options for inputs with options * Rename `getValidationError` * Bring sample options back * Minor rename for clarity * Fix `InputOptionsMap` type * Keep `inputType` on field type change if possible * Extract `FieldValueOptions` type * Use less aggressive value options clean logic * Simplify tests * Test value options reset for option-less field types * Fix `OptionEditor` value gets out of sync
-
Nick Fitzpatrick authored
* pulling out column title logic and sharing with settings * Pivot Table Custom Column Names * removing cyclic dependency * adjusting tests
-
Ngoc Khuat authored
-
dpsutton authored
* Remove personal collections from collection detail page https://github.com/metabase/metabase/pull/28023 Added "sub collections" to the collection detail page. Makes sense. The problem is that personal collections started appearing in this view. We have traditionally treated personal collections as siblings to the "Our Analytics" root of collections. So this was an impedence mismatch. This PR just removes all personal collections from the items returned from `"api/collection/root/items"`. The personal collection is still visible in the sidebar (returned from `api/collection/tree?tree=true&exclude-other-user-collections=true&exclude-archived=true` . Furthermore, all personal collections are still visible from the "three dots" menu on the sidebar. * poke ci * remove last personal collections from tests * e2e tests don't include a personal collection in the details page. * off by one from removing personal collections * Can't select personal collections if they aren't there
-
Cal Herries authored
-
Cal Herries authored
* Remove retrieve-dashboard-card call * Have `update-dashboard-card!` return nil, not true
-
Anton Kulyk authored
-
Alexander Polyankin authored
-