Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Dec 13, 2022
  2. Dec 12, 2022
  3. Dec 09, 2022
  4. Dec 08, 2022
    • Cam Saul's avatar
      Add import and export (SerDes v2) commands (#26984) · 3d5ddd9c
      Cam Saul authored
      * Add import and export (SerDes v2) commands
      
      * Allow use of deprecated dump/load in EE tests
      Unverified
      3d5ddd9c
    • metamben's avatar
      Store DBMS version in Database (#26983) · f4901387
      metamben authored
      * Store DBMS version in Database
      * Add DBMS version to anonymous stats
      * Add dbms_version sync tests
      * Add test for DBMS versions in anonymous stats
      Unverified
      f4901387
    • Bryan Maass's avatar
      only query for db-metadata once per sync operation + scan each table for its PKs (#26810) · d3a98472
      Bryan Maass authored
      * memoize snowflake describe-database w/ 5 min ttl
      
      * pass in db-metadata where it is used,
      
      - rather than querying for it in random functions
      
      * update callsite of sync-tables-and-database!
      
      * let sync-metabase-metadata! look up db-metadata
      
      - only when needed
      
      * pass catalog (db), and schema to .getPrimaryKeys
      
      * let describe-table* add in the nil table-name
      
      * cleanup
      
      * use :snowflake instead of driver for inheritance
      
      * concurrent-sync-test should call describe-database once
      
      * cleaning up
      
      * call add-table-pks with 3 args
      
      * call add-table-pks with 3 args
      
      * try escaping entity names to appease Oracle Driver
      
      - Oracle wants the table-name to be escaped
      - escape is usually a no-op
      
      * pass driver to escape entity
      
      * pull get-table-pks into a multimethod,
      
      - handle the discrepancy directly in Oracle driver
      
      * remove inline def
      
      * fix colliding consistent-namespace linting
      
      - metabase.driver.sql-jdbc.common and
        metabase.driver.sql-jdbc.sync.common were
        mapped to sql-jdbc.common
      - metabase.driver.sql-jdbc.sync.common is now
        mapped to sql-jdbc.sync.common
      
      * fix reflection warnings
      
      * apply fix for getting oracle pks
      
      * nix an unused arg
      Unverified
      d3a98472
    • metamben's avatar
      Fingerprint bigquery by previewing tables (#26962) · 1c588b60
      metamben authored
      * Fingerprint bigquery by previewing tables
      * Address review comments
      Unverified
      1c588b60
    • Cam Saul's avatar
      Support standard deviation aggregations for MongoDB (#27025) · c39f17fe
      Cam Saul authored
      * MongoDB test data config should not hardcode the user and password we use in CI
      
      * Minor test data interface dox improvements
      
      * Support standard deviation and variance for MongoDB
      
      * Oops I got :expressions mixed up with :expression-aggregations
      
      * Note about calculating variance
      
      * `connection-type` instead of `db-or-server`
      Unverified
      c39f17fe
  5. Dec 07, 2022
  6. Dec 06, 2022
  7. Dec 05, 2022
  8. Dec 02, 2022
  9. Dec 01, 2022
    • Mahatthana (Kelvin) Nomsawadi's avatar
      Respect chart orders in static viz (#26797) · 95bc8834
      Mahatthana (Kelvin) Nomsawadi authored
      
      * Refactor so static combo chart is ready for reordering
      
      * Correct test names
      
      * Clean up static viz combo chart BE API
      
      * sort static combo chart
      
      * Order static funnel chart
      
      * Remove unused import and function
      
      * Fix BE tests
      
      * Remove custom column name tests since logic is moved to FE
      
      * Remove graph.series_order when changing dimensions (#26842)
      
      * review
      
      Co-authored-by: default avatarNick Fitzpatrick <nick@metabase.com>
      Co-authored-by: default avatarAleksandr Lesnenko <alxnddr@gmail.com>
      Unverified
      95bc8834
    • Cal Herries's avatar
      now function (#26548) · fe0b8e90
      Cal Herries authored
      
      * Implement now for sql drivers
      
      * Remove unused import
      
      * Add tests
      
      * Add more tests
      
      * Implement bigquery, mysql, postgres
      
      * Test now as argument
      
      * Fix FE type inferencer
      
      * Change feature flag to date-arithmetics
      
      * Implement h2 driver
      
      * Fix tests for sqlite
      
      * Add snowflake implementation
      
      * Remove type test
      
      * Fix test for sqlite
      
      * Update how we handle autocomplete and format for zero-arity functions in ExpressionEditor (#26563)
      
      * Update suggestionText function
      
      * Suggest with closing parens if zero-arity
      
      * Format zero-arity functions with ()
      
      * Refactor formatFunction
      
      * Remove unused imports
      
      * Add presto implementation
      
      * Add sqlserver implementation
      
      * Test in multiple timezones
      
      * Remove setting test driver
      
      * Add sparksql implementation
      
      * Fix count() fe unit test
      
      * Add fe MBQL unit test for now()
      
      * Fix sparksql implementation
      
      * Add vertica implementation
      
      * Add oracle implementation
      
      * Add vertica implementation
      
      * Remove accidental form
      
      * Fix vertica implementation for report timezones
      
      * Remove unused multimethod
      
      * Remove unused feature
      
      * Update sparksql
      
      * Fix fe unit tests
      
      * Fix fe unit tests
      
      * Update hive implementation
      
      * Revert "Fix fe unit tests"
      
      This reverts commit fde4dd0d.
      
      * Revert "Fix fe unit tests"
      
      This reverts commit 7b7429ea.
      
      * Revert "Fix count() fe unit test"
      
      This reverts commit c5c6f6f9.
      
      * Revert "Refactor formatFunction"
      
      This reverts commit ac50e73e.
      
      * Revert "Update how we handle autocomplete and format for zero-arity functions in ExpressionEditor (#26563)"
      
      This reverts commit cf39634e.
      
      * Update hive
      
      * snowflake: convert type to timestamptz
      
      * sqlserver: rename date-trunc to zeroed-date-part
      
      * Wrap with database type info
      
      * Change fe unit test back to now without parens
      
      * Change MBQL clauses config for now to return type "datetime"
      
      * Fix presto
      
      * Add some fe unit tests for parsing and resolving
      
      * Update helper-text-strings
      
      * Change from second to millisecond precision
      
      * Remove test for second precision
      
      * presto: Change from second to millisecond precision
      
      * vertica: Change from second to millisecond precision
      
      * vertica: Change from second to millisecond precision
      
      * Change feature flag from date-arithmetics to now
      
      * Change feature flag from date-arithmetics to now, mbql schema
      
      * Allow now to be used in filter clauses
      
      * Add test for filter
      
      * Implement driver/database-supports? for each driver that implements :now
      
      * Tidy tests
      
      * Add back default sql implementation
      
      * Add sqlite feature flag
      
      * Add mongo implementation
      
      * Fix mongo
      
      * Format rows
      
      * Change vertica to return timestamp with time zone
      
      * Fix presto tests
      
      * Remove unused require
      
      * Update h2 function to return timestamp with time zone
      
      * mongo: calculate now during query execution, not processing, for versions >=4.2 (#26822)
      
      * replace with $$NOW
      
      * Remove unused import
      
      * Add back previous now implementation for versions <4.2
      
      * Throw an error if version is <4.2
      
      * Add i18n
      
      * Ignore patch version
      
      * Clean up `SchedulePicker` component (#26839)
      
      * Move `SchedulePicker` to its own directory
      
      * Sort imports
      
      * Do basic clean up
      
      * Extract `DEFAULT_DAY` to a constant
      
      * Extract styled components
      
      * Convert `SchedulePicker` to TypeScript
      
      * Add `SchedulePicker` container
      
      * Export `SchedulePicker` options
      
      * Add basic `SchedulePicker` story
      
      * Fix `SchedulePicker` crashes Storybook
      
      * Tweak Storybook file
      
      * Build datetime filters as datetime before question is saved (#26679)
      
      * Revert "Update h2 function to return timestamp with time zone"
      
      This reverts commit f7cce3ea7ccbbfc886d0942d66b1f8f60feb6aba.
      
      Co-authored-by: default avatarGustavo Saiani <gus@metabase.com>
      Co-authored-by: default avatarAnton Kulyk <kuliks.anton@gmail.com>
      Unverified
      fe0b8e90
    • Noah Moss's avatar
      Extract sample DB to plugins directory on startup (#26828) · 726b659f
      Noah Moss authored
      * initial implementation
      
      * some refactor and improved error handling
      
      * another refactor
      
      * fix reflection warning
      
      * add test and more refactor
      
      * another test
      
      * misc comment improvements and formatting
      
      * fix tests
      
      * small refactor
      
      * fix function call
      
      * address tamas's comments
      Unverified
      726b659f
    • Braden Shepherdson's avatar
      Serdes v2: Rebuild the directory structure to be more human-friendly (#26793) · f0655fc2
      Braden Shepherdson authored
      There are now three top-level trees:
      
      - regular `collections/path/to/collection/...`
      - `:namespace :snippet` collections in `snippets/path/to/collection/...`
      - `databases/mydb/schemas/PUBLIC/tables/customers/fields/name.yaml`
      
      The path for any given entity is determined by the
      `serdes.base/storage-path` multimethod.
      
      On the ingestion side, things are a bit tricky because the paths don't
      map directly to `:serdes/meta` hierarchies anymore. Instead each model
      registers a function to turn a file path into either a `:serdes/meta`
      hierarcy or nil for a bad match.
      
      Ingestion will fetch all these functions once and then try them all in
      arbitrary order until one matches.
      Unverified
      f0655fc2
    • Ngoc Khuat's avatar
      Make sure the new datetime functions work with literal (#26706) · 8a49c283
      Ngoc Khuat authored
      * datetime-add, datetime-subtract, temporal-extract, convert-timezone now can takes datetime literal as argument
      
      * fix vertica
      Unverified
      8a49c283
  10. Nov 30, 2022
  11. Nov 29, 2022
    • Cam Saul's avatar
      Athena driver (#26301) · a32bb77b
      Cam Saul authored
      * Include Amazon Athena support for dacort/metabase-athena-driver
      
      * Use Metabase Maven repo to fetch Athena driver
      
      * Copy test extensions from Damon's Athena driver repo
      
      * Some code cleanup.
      
      * Move namespaces => metabase.driver.athena
      
      * Clean up the test extensions namespace
      
      * 42 failures, 16 errors
      
      * Fix regex support; disable a few tests
      
      * Minor tweaks
      
      * Fix data-source-name
      
      * Fix :week and :day-of-week impls (mostly): 2 failures, 3 errors
      
      * Fix OFFSET, :week-of-year; skip test that has TIME column
      
      * Add Athena to CircleCI config. Don't wait for Java 11 tests to finish before driver tests.
      
      * ALL TESTS ARE PASSING! <3
      
      * Copy fixes for https://github.com/dacort/metabase-athena-driver/issues/115;
      
       add test
      
      * We don't need to prep source files or fetch dependencies before running backend tests.
      
      * Fix Eastwood error.
      
      * Tweak CircleCI config.
      
      * Fix TIMESTAMP WITH TIME ZONE
      
      * Include the Athena/Redshift repos in the build-drivers deps.edn
      
      * Build and release scripts need to have the :mvn/repos as well
      
      * Revert change that enabled test for Presto
      
      * Un-enable failing test for Snowflake as well.
      
      * moves all is clauses into the test
      
      - previously only the first few tests were being run
      
      * Sort ns in `metabase.driver.athena-test`
      
      * Prevent athena's log4j2.properties file from becoming log config
      
      athena includes log4j2.properties top-level with the properties:
      
      ```
      status = debug
      rootLogger.level=debug
      ```
      
      And this kills our beautifully crafted logging. Set
      "log4j2.configurationFile" in bootstrap to our own log4j2.xml.
      
      Log4j2 looks in a few places for its logging config, the first of which
      is the properties file. So when the jar is loaded, log4j2 considers this
      a logging config change and we lose our logging.
      
      Co-authored-by: default avatarDamon P. Cortesi <d.lifehacker@gmail.com>
      Co-authored-by: default avatarBryan Maass <bryan.maass@gmail.com>
      Co-authored-by: default avatardan sutton <dan@dpsutton.com>
      Unverified
      a32bb77b
    • Braden Shepherdson's avatar
    • Mahatthana (Kelvin) Nomsawadi's avatar
      Match static combo chart colors and legends with app viz colors (#26211) · c6e41b75
      Mahatthana (Kelvin) Nomsawadi authored
      * Match static combo chart colors with app viz colors
      
      * Match colors when individual series color is set
      
      * Remove tests that test colors
      
      Since colors is now determined in FE
      
      * Fix static viz Series type
      
      * Match static progress bar colors with app viz colors
      
      * Simplify Clojure code, makes it more idiomatic
      
      * Fix certain combo charts don't respect whitelabel colors
      
      * Make Clojure code more idiomatic
      
      * Fix Series type
      
      * Add colors back to static internal page
      
      * Simplify type predicate
      
      * fix colors matching for multiple series with mulitple metrics or dimensions
      
      * Handle legends not formatted in static viz in some cases
      
      * Fix failed BE tests after BE API changed
      
      * Fix failed BE tests after BE API changed
      
      * Add multiple series dashcard test to `getSeriesWithColors` test
      
      * Add `getSeriesWithLegends` tests
      
      * Fix URL `/_internal/static-viz` not loading due to API change
      
      * Correctly render legend when having dashcard title set
      
      * Simplify combo-chart API
      
      don't really need `settings-seqs` yet
      
      * Make static combo chart component type easier to understand
      
      * Address review: refactor `render-multiple-lab-chart`
      
      * Make variable names easier to understand
      
      * Simplify color API
      
      * Address review on `body.clj`
      
      * Address review, make parameter name more consistent
      
      * Fix multiple scalars not rendering
      
      * Remove unused imports
      Unverified
      c6e41b75
  12. Nov 28, 2022
  13. Nov 22, 2022
  14. Nov 18, 2022
    • adam-james's avatar
      Group Axes for Multi-series static viz (#26145) · 03373a33
      adam-james authored
      * First pass at grouping axes
      
      This PR uses the results_metadata key to look at fingerprints for numerical axes to try determine if each series on
      the Y axis can be sanely represented on the same axis.
      
      This is done by calculating an overlap (some value between 0 and 1) and grouping all axes on the LEFT if they pass the threshold, which is
      some value between 0 and 1. The overlap is always calculated when there is SOME overlap between the ranges of each
      axis, and is calculated as:
      
      ```clojure
      (/ (- (max maximums) (min minimums))
         (- (min maxiumums) (max minimums)))
      ```
      
      This is done to try catch situations where one column's range is entirely inside the other, but is much smaller (- max
      min); such a case would have a small percent overlap by the above calculation, and implies that it might be better to
      split the axes.
      
      * Address feedback.
      
      * Fix shape of data in tests of 2 private fns
      
      * Add test for split axes
      
      * Fixed error in test util
      
      * render-utils does with-redef, disallows parallel tests. Makes sense
      Unverified
      03373a33
    • Braden Shepherdson's avatar
      Serdes v2: Add more human-friendly labels to more models (#26508) · 622b5e6d
      Braden Shepherdson authored
      Card, Dashboard, Dimension, Metric, NativeQuerySnippet, Segment and
      Timeline all now using their `:name` fields for the file label.
      
      File names should now be more human-friendly.
      Unverified
      622b5e6d
  15. Nov 17, 2022
Loading