This project is mirrored from https://github.com/metabase/metabase.
Pull mirroring updated .
- Mar 01, 2021
-
-
Tim Macdonald authored
-
Cam Saul authored
-
Kyle Doherty authored
* fix default SearcbResult item layout and icon shrinking * tweak text
-
- Feb 26, 2021
-
-
Jeff Evans authored
-
Luis Paolini authored
* Add an error from SQLite * Update docs/troubleshooting-guide/running.md Co-authored-by:
Jeff Bruemmer <jeff@metabase.com> * Added identification of users and processes and explained myself a bit more on the running metabase troubleshooting guide * Update docs/troubleshooting-guide/docker.md Co-authored-by:
Jeff Bruemmer <jeff@metabase.com> * Update docs/troubleshooting-guide/running.md Co-authored-by:
Jeff Bruemmer <jeff@metabase.com> * Update docs/troubleshooting-guide/docker.md Co-authored-by:
Jeff Bruemmer <jeff@metabase.com> Co-authored-by:
Jeff Bruemmer <jeff@metabase.com>
-
Luis Paolini authored
* Update 05-setting-permissions.md Adding a few words about raw query permissions * Update docs/administration-guide/05-setting-permissions.md Co-authored-by:
Jeff Bruemmer <jeff@metabase.com> Co-authored-by:
Jeff Bruemmer <jeff@metabase.com>
-
- Feb 25, 2021
-
-
Cam Saul authored
1. Rename optimize-datetime-filters middleware -> optimize-temporal-filters (it's more accurate, because this also optimizes date or time filter clauses) 2. optimize-temporal-filters middleware now optimizes relative-datetime clauses (which represent a moment in time relative to when the query is ran, e.g. "last month") in addition to absolute-datetime clauses (which represent an absolute moment in time, e.g. 2021-02-15T14:40:00-08:00) . This middleware rewrites queries so we filter against specific temporal ranges without casting the column itself, meaning we can leverage indexes on that column. See #11837 for more details 3. Added new validate-temporal-bucketing middleware that throws an Exception if you try to do something that makes no sense, e.g. bucket a DATE field by :time or a TIME field by :month. This is a better situation then running the query and waiting for the DB to complain. (In practice, I don't think the FE client would let you generate a query like this in the first place) 4. Fix random test failures for MySQL in task-history-cleanup-test
-
Jeff Evans authored
* Implement ssh tunnel reconnection From the connection-with-timezone method of execute, check whether an ssh tunnel that should be open actually is not, and if so, mark the entire pool as invalid (thereby forcing the connection code to rebuild the source and open a new tunnel) Fixing the create-pool! function so that the relevant ssh tunnel entries are kept (in addition to the :datasource) Adding test in ssh-test namespace, which will test that the tunnel is reestablished (for now, running with Postgres driver) * Responding to PR feedback from Dan * Fixing test by adding AcceptAllForwardingFilter forwardingFilter to the mock password server instance * Change with-driver to test-driver * Add ssh tunnel reconnect test that can run against H2 * Implement ssh tunnel reconnection From the connection-with-timezone method of execute, check whether an ssh tunnel that should be open actually is not, and if so, mark the entire pool as invalid (thereby forcing the connection code to rebuild the source and open a new tunnel) Fixing the create-pool! function so that the relevant ssh tunnel entries are kept (in addition to the :datasource) Adding test in ssh-test namespace, which will test that the tunnel is reestablished (for now, running with Postgres driver) * Responding to PR feedback from Dan * Fixing test by adding AcceptAllForwardingFilter forwardingFilter to the mock password server instance * Rebase again to fix merge conflict * Change test-driver to with-driver in hopes of making CodeCov finally happy * Adding new multimethod to ssh namespace, called incorporate-ssh-tunnel-details, for accounting for the Implementing incorporate-ssh-tunnel-details for h2 so update the URI string (:db key) to point to the tunnel entry point Pulled logic for :sql-jdbc implementation of connection-with-timezone out to a new fn, so it can be called elsewhere Updating H2 reconnection test imn light of the changes above Added "!" suffix to name of include-ssh-tunnel to reflect the fact that it does modify global state * Fixing NPE in incorporate-ssh-tunnel-details implementation for :h2 Moving multimethod declaration for incorporate-ssh-tunnel-details to driver namespace * Fix :h2 implementation again * Remove another errant extra line :( * Rebase onto master * Inline the private helper fn back into connection-with-timezone * Remove dead code
-
Cam Saul authored
Background The original version of MBQL (known as the "Structured Query" language at the time, which was a little confusing) just referred to all fields by integer ID. e.g. {:filter ["STARTS_WITH" 1 "abc"]} That made clauses like this ambiguous: {:filter ["=" 1 2]} ; is 2 a Field, or the number 2? To clear up ambiguity and to let you filter Fields against Fields, we added the :field-id clause to make it explicit that you were referring to a Field, not an Integer: {:filter [:= [:field-id 1] [:field-id 2]]} ; Field 1 == Field 2 We soon added a couple of new types of Field clauses, :fk-> and :datetime-field, both of which wrap the original :field-id: ;; refer to Field 2 from a different Table, use Field 1 from the current Table to perform the join [:fk-> [:field-id 1] [:field-id 2]] ;; bucket Field 3 by month [:datetime-field [:field 3] :month] So far things were still pretty reasonable, the worst you'd have to do is something like [:datetime-field [:fk-> [:field-id 1] [:field-id 2]] :month] Things started to get out-of-hand IMO when we continued to add more Field clause types that just wrapped everything else. We added :binning-strategy: [:binning-strategy <field> :num-buckets 10] then :field-literal, to refer to a Field from a nested native source query: [:field-literal "my_field" :type/Text] then we added :joined-field to specify the Table you're explicitly joining against that is the source of a Field: [:joined-field "my_join" [:field-id 4]] This ends up getting really hairy when you combine things. This is an actual real clause you can use right now: [:binning-strategy [:datetime-field [:joined-field "my_join" [:field-literal "my_field" :type/DateTimeWithLocalTZ]] :month] :num-bins 10] And even with all of those clauses, we still can't pass around arbitrary extra information in a way that would make it easy to implement performance optimizations. If we ever try to add another new clause, the whole house of cards is going to come crashing down. The proposal Combine all of the Field clauses into a single new :field clauses with the schema [:field id-or-name options-map] Here are some before & after examples: [:field-id 1] => [:field 1 nil] [:field-literal "my_field" :type/Text] => [:field "my_field" {:base-type :type/Text}] [:datetime-field [:field 1] :month] => [:field 1 {:temporal-unit :month}] [:binning-strategy [:field 1] :num-bins 10] => [:field 1 {:binning {:strategy :num-bins, :num-bins 10}}] [:joined-field "my_join" [:field 1]] => [:field 1 {:join-alias "my_join}] [:fk-> [:field 1] [:field 2]] => [:field 2 {:source-field 1}] [:binning-strategy [:datetime-field [:joined-field "my_join" [:field-literal "my_field" :type/DateTimeWithLocalTZ]] :month] :num-bins 10] => [:field "my_field" {:base-type :type/DateTimeWithLocalTZ, :join-alias "my_join", :binning {:strategy :num-bins, :num-bins 10}}]
-
Tim Macdonald authored
* Use dashboard count in search scoring [Fixes #14945] * Fix sorting priority bug (thanks, Dan!) * Show (hidden) scores in search results for debugging purposes * Bump memory limit for SQL Server on CI c.f. https://metaboat.slack.com/archives/C5XHN8GLW/p1614272426000400
-
Kyle Doherty authored
* basic no results styling * tweaks
-
Tim Macdonald authored
Per Kyle's suggestion
-
Ariya Hidayat authored
-
- Feb 24, 2021
-
-
Dalton authored
-
Tim Macdonald authored
* Refactor various bits of search * Prioritize pinned items in search results [Fixes #14936]
-
- Feb 23, 2021
-
-
Nemanja Glumac authored
Ports changes introduced in #14942 over to master branch This is a cherry-pick of 70ad97a4.
-
- Feb 22, 2021
-
-
Ariya Hidayat authored
* Use GitHub Actions to check for Dockerfile correctness * Wait for the health check API endpoint
-
Tim Macdonald authored
* Use SearchResult component Update the backend to return much richer match data [Fixes #14832] * Increase the memoization cache for search scoring by common subseq (#14894) * Increase the memoization cache for search scoring by common subseq Also limit the size of input it can get (Hopefully) [Fixes #14852] * Don't group search results by type (#14898) Respect the sorting done by the backend * Format metrics and segments in search results; DRY up the code * Add normalizedCollection(); show "Our Analytics" collection in search results * Use SearchResult for typeahead results too
-
Simon Belak authored
* Auto-retry ssh test * Add docstring * Randomize port * Let ServerSocket pick its port
-
Ariya Hidayat authored
-
Luis Paolini authored
* Update authenticating-with-jwt.md Add examples repo * Update authenticating-with-saml.md * Update docs/enterprise-guide/authenticating-with-jwt.md Co-authored-by:
Jeff Bruemmer <jeff@metabase.com> * Update docs/enterprise-guide/authenticating-with-saml.md Co-authored-by:
Jeff Bruemmer <jeff@metabase.com> Co-authored-by:
Jeff Bruemmer <jeff@metabase.com>
-
- Feb 19, 2021
-
-
Jeff Evans authored
Adding entry in public_settings.clj for ssh heartbeat interval, and referencing that from ssh.clj Adding the heartbeat interval to the existing log message when tunnel is established Adding mention of the env var to environment-variables.md
-
Jeff Evans authored
-
Jeff Evans authored
Extend the definition of sensitive-fields in the Database model to include any custom password type properties (#14712) Adding new utility function to determine sensitive fields for a driver, which lives in the driver.utility namespace Delegating all calls to what used to be the sensitive-fields var to use the new fn instead Adding new test to confirm that custom :password connection-properties are masked
-
Luis Paolini authored
* Update Dockerfile for parallel and 20% faster builds * Changes proposed by @ariya
-
Dalton authored
* Make 'esc' button work with full page modal * Rmv explicit bind
-
- Feb 18, 2021
-
-
Reza Lotun authored
-
Reza Lotun authored
Users should follow instructions in our SECURITY.md file instead.
-
- Feb 17, 2021
-
-
Cam Saul authored
* Don't generate initial projections for MongoDB * Massively streamlined MongoDB queries * Linter/test fixes
* Let's fix #13097 at the same time -
Dalton authored
* add copy action to saved question * Change text from "copy" to "duplicate" Co-authored-by:
Maz Ameli <maz@metabase.com> * move clone action above archive action * Use EntityCopyModal to dupe question * update duplicate question cy test * rmv unneeded line setting id to undefined Co-authored-by:
Maz Ameli <maz@metabase.com>
-
Cam Saul authored
Merge x.38.0 -> master
-
- Feb 16, 2021
-
-
Cam Saul authored
-
Nemanja Glumac authored
-
Cam Saul authored
-
Jeff Bruemmer authored
* clarify pivot tables only work with simple and custom questions * typo * Maz edit Co-authored-by:
Maz Ameli <maz@metabase.com> * picking your starting data Co-authored-by:
Maz Ameli <maz@metabase.com>
-
Cam Saul authored
* Revert test-data-loading tweaks for now * Test fix
* Test fix * Test fixes * Unskip repro for #14859 * Test fix Co-authored-by:Nemanja <31325167+nemanjaglumac@users.noreply.github.com>
-
Ariya Hidayat authored
-
-
Nemanja Glumac authored
#14854 Repro: Custom Expression using `case()` function fails when referencing the same column names [ci skip] (#14857)
-
dpsutton authored
-