Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/metabase/metabase. Pull mirroring updated .
  1. Jun 06, 2024
    • Nick Fitzpatrick's avatar
      Add events to measure search performance (#43135) · 6d0f5e69
      Nick Fitzpatrick authored
      * new_search_query event
      
      * Filters in object, search click event
      
      * updating event schema
      
      * type and event schema adjustments
      
      * delete comments BE code
      
      * adjusting tests
      
      * PR feedback
      
      * typos and spacing
      Unverified
      6d0f5e69
    • Sloan Sparger's avatar
      Add ts-pattern library (#43752) · c7048cf8
      Sloan Sparger authored
      Unverified
      c7048cf8
    • SakuragiYoshimasa's avatar
      Fix remaining `tinyint` booleans in MySQL (#43296) · 49b126ef
      SakuragiYoshimasa authored
      
      * Correct type for `report_card.dataset`
      
      This was missed in the original migration of boolean types to
      ${boolean.type} in MySQL/MariaDB, and then missed again by me when I
      migrated `collection_preview` over a week ago.
      
      * Change all boolean types to `bit(1)` in MySQL
      
      Liquibase changed their boolean type in MySQL from `bit(1)` to
      `tinyint(4)` in version 4.25.1. Our JDBC driver does not recognize these
      as booleans, so we needed to migrate them to `bit(1)`s.
      
      As discussed [here](#36964), we
      changed all existing `boolean` types that were in the
      `001_update_migrations.yml` but not the SQL initialization file.
      
      For new installations, this works: things in the SQL initialization file
      get created with the `bit(1)` type.
      
      However, for existing installations, there's a potential issue. Say I'm
      on v42 and am upgrading to v49. In v43, a new `boolean` was added.
      
      In this case, I'll get the `boolean` from the liquibase migration rather
      than from the SQL initialization file, and it need to be changed to a
      `bit(1)`.
      
      I installed Metabase v41 with MySQL, migrated the database, and then
      installed Metabase v49 and migrated again. I made a list of all the
      columns that had the type `tinyint`:
      
      ```
      mysql> SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_TYPE,        COLUMN_DEFAULT, IS_NULLABLE FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_TYPE = 'tinyint' AND TABLE_SCHEMA='metabase_test';
      +---------------+------------------------------+-------------------+-------------+----------------+-------------+
      | TABLE_SCHEMA  | TABLE_NAME                   | COLUMN_NAME       | COLUMN_TYPE | COLUMN_DEFAULT | IS_NULLABLE |
      +---------------+------------------------------+-------------------+-------------+----------------+-------------+
      | metabase_test | core_user                    | is_datasetnewb    | tinyint     | 1              | NO          |
      | metabase_test | metabase_field               | database_required | tinyint     | 0              | NO          |
      | metabase_test | metabase_fieldvalues         | has_more_values   | tinyint     | 0              | YES         |
      | metabase_test | permissions_group_membership | is_group_manager  | tinyint     | 0              | NO          |
      | metabase_test | persisted_info               | active            | tinyint     | 0              | NO          |
      | metabase_test | report_card                  | dataset           | tinyint     | 0              | NO          |
      | metabase_test | timeline                     | archived          | tinyint     | 0              | NO          |
      | metabase_test | timeline                     | default           | tinyint     | 0              | NO          |
      | metabase_test | timeline_event               | archived          | tinyint     | 0              | NO          |
      | metabase_test | timeline_event               | time_matters      | tinyint     | NULL           | NO          |
      +---------------+------------------------------+-------------------+-------------+----------------+-------------+
      10 rows in set (0.01 sec)
      ```
      
      Then wrote migrations. For each column, we:
      
      - turn it into a `bit(1)`,
      
      - re-set the previously existing default value, and
      
      - re-add the NOT NULL constraint, if applicable.
      
      * Change author and add missing `dbms`
      
      ---------
      
      Co-authored-by: default avatarJohn Swanson <john.swanson@metabase.com>
      Unverified
      49b126ef
    • Nemanja Glumac's avatar
      Remove old repro for 39150 (#43749) · 2473fa2f
      Nemanja Glumac authored
      Unverified
      2473fa2f
    • Phoomparin Mano's avatar
      Highlight the table cell data in dashboards when the cell is an ID column (#43728) · ea2d0a7e
      Phoomparin Mano authored
      
      * highlight id cell column
      
      * add simpletable stories
      
      * add simple table test data
      
      * add loki reference image
      
      * Update frontend/src/metabase/visualizations/components/TableSimple/TableCell.styled.tsx
      
      Co-authored-by: default avatarDenis Berezin <denis.berezin@metabase.com>
      
      ---------
      
      Co-authored-by: default avatarDenis Berezin <denis.berezin@metabase.com>
      Unverified
      ea2d0a7e
    • Ryan Laurie's avatar
      Combine search e2e specs (#43718) · 8cb8d640
      Ryan Laurie authored
      Unverified
      8cb8d640
    • Raphael Krut-Landau's avatar
      Remove dead code (#43603) · df62bb0c
      Raphael Krut-Landau authored
      Unverified
      df62bb0c
    • Raphael Krut-Landau's avatar
    • lbrdnk's avatar
      Move database role to url parameters from connection properties on Snowflake (#43602) · 4a88a0c8
      lbrdnk authored
      * Move role to url parameters from connection properties
      
      * Fix test
      Unverified
      4a88a0c8
    • Ryan Laurie's avatar
      Update translations for v50 and add Danish Language Support (#43314) · 2cdae6bc
      Ryan Laurie authored
      * update translations for v50
      
      * add Danish
      
      * update translations for v50 release
      
      * alphabetical order is nice
      Unverified
      2cdae6bc
    • Ryan Laurie's avatar
      Consolidate joins specs (#43717) · 7a9767e1
      Ryan Laurie authored
      Unverified
      7a9767e1
    • Ryan Laurie's avatar
      Consolidate dashboard-card specs (#43716) · 3d1cbd3b
      Ryan Laurie authored
      Unverified
      3d1cbd3b
    • metamben's avatar
      Hydrate can_run_adhoc_query and address review comments (#43747) · 8eeacc60
      metamben authored
      This is a followup on #43625.
      Unverified
      8eeacc60
    • adam-james's avatar
      Multi Series Dashcards Render with Filters Applied To All Series (#43428) · b8907454
      adam-james authored
      
      * Multi Series Dashcards Render with Filters Applied To All Series
      
      Fixes: #39083
      
      Multi-series dashcards now properly render when a subscription is set up with filters that impact the values of each
      card in the multi-series card.
      
      * Small refactor for executing dashcards in a pulse context.
      
      - move execute-dashboard-subscription to pulse.util
      - this fn now will also execute all card series cards
        and put those results into a list on the key :series-results in the dashcard
        which is then used in the render multimethod to send the correct data to the javascript context
      
      A small todo was taken care of as well, we can now use :dashboard-subscription in the :context key
      
      * Fix up render fn
      
      The shape of hte data going into the javascript was a bit unclear before. This keeps things a little more
      understandable.
      
      Next step is probably to create some Malli schemas inside the js_svg namespace to document and enforce the needed data shapes
      
      * pull :data up a level from :result in the series cards
      
      * Update src/metabase/pulse/render/body.clj
      
      Co-authored-by: default avatarNgoc Khuat <qn.khuat@gmail.com>
      
      * Remove unneeded let
      
      * set/rename-keys won't work here because we raise the :data key
      
      I've realised a suggested change to just use set/rename-keys won't do what we need. We need instead to raise :data
      from within the result key up to the same level (and dissoc result).
      
      I've renamed the helper function to make its purpose a bit clearer
      
      ---------
      
      Co-authored-by: default avatarNgoc Khuat <qn.khuat@gmail.com>
      Unverified
      b8907454
    • Alex Yarosh's avatar
      update list of releases (#43754) · 60bb8d61
      Alex Yarosh authored
      Unverified
      60bb8d61
    • Ryan Laurie's avatar
      use correct github api for CI (#43750) · 5a481f98
      Ryan Laurie authored
      Unverified
      5a481f98
    • Sloan Sparger's avatar
      Upgrade to TypeScript v5.4 (#43736) · 18d5388d
      Sloan Sparger authored
      Unverified
      18d5388d
    • Raphael Krut-Landau's avatar
    • Aleksandr Lesnenko's avatar
      make compact formatting consistent across all series (#43472) · b9c10c51
      Aleksandr Lesnenko authored
      * make compact formatting consistent across all series
      
      * fix rebase
      Unverified
      b9c10c51
    • metamben's avatar
      Batch load card metadata (#43625) · 2bfaab28
      metamben authored
      Unverified
      2bfaab28
    • github-automation-metabase's avatar
    • Mahatthana (Kelvin) Nomsawadi's avatar
    • Ngoc Khuat's avatar
    • Alexander Solovyov's avatar
    • Jeff Bruemmer's avatar
      docs - models and caching (#43681) · 18581104
      Jeff Bruemmer authored
      Unverified
      18581104
    • Ryan Laurie's avatar
      Backport reminder bot (#43637) · 01840901
      Ryan Laurie authored
      * WIP backport reminder bot
      
      * polish and automate backport reminder
      
      * do better english
      Unverified
      01840901
    • Ryan Laurie's avatar
      Fix OSS tests in CI (#43660) · 4b66bdba
      Ryan Laurie authored
      * fix OSS tests in CI
      
      * update tests that went on vacation for a while
      
      * do safer cypress things
      
      * better helper name
      Unverified
      4b66bdba
    • Oisin Coveney's avatar
    • Alexander Polyankin's avatar
      Fetch ad-hoc query metadata on the BE (#43675) · 855c840b
      Alexander Polyankin authored
      * adhoc-query-metadata
      
      * Get ad-hoc query metadata from the BE
      
      * Fix broken ad-hoc queries
      
      * Fix broken ad-hoc queries
      
      * Fix tests
      
      * Add a test
      
      * Add tests
      
      * Add tests
      
      * Fix whitespace
      
      * Fix whitespace
      
      * Fix tests
      Unverified
      855c840b
    • Kamil Mielnik's avatar
      Analytic events for time-over-time comparison (#43589) · 49360f68
      Kamil Mielnik authored
      
      * Sort functions
      
      * Add boilerplate for aggregateOffset and tests
      
      * Simplify assertion
      
      * Make basic case work
      
      * Handle name generation
      
      * Do not require "lib/uuid" attribute to be present since MLv2 will normalize it under the hood anyway
      
      * Fix typing
      
      * Group tests
      
      * Refactor offsetClause to return a new clause instead of a new query
      - Move offsetClause to expressions.ts
      - Add assertion
      
      * Revert "Sort functions"
      
      This reverts commit ab9ce2b24ea6bdad5ff7e9bed8ef38d4b5923f00.
      
      * Move tests
      
      * Handle names dynamically
      
      * Shorten a test
      
      * Update comment
      
      * Add TODO
      
      * Update expression types
      
      * Add diffOffsetClause & percentDiffOffsetClause
      
      * Add a test for diffOffsetClause
      
      * Add TODOs
      
      * Add tests for diffOffsetClause and percentDiffOffsetClause
      
      * Unwrap tests
      
      * Add skeleton for new tests
      
      * Refactor first offsetClause tests
      
      * Add tests for names
      
      * Fix case of non-datetime columns
      
      * Handle a case with offset < 1 and no breakouts
      
      * Handle a case with offset < 1 and breakouts on non-datetime column
      
      * Handle a case with offset < 1 and breakouts binned datetime column
      
      * Handle a case with offset < 1 and breakout on non-binned datetime column
      
      * Refactor
      
      * Refactor
      
      * Remove TODO
      
      * Add tests for diffOffsetClause
      
      * Add tests for percentDiffOffsetClause
      
      * Move offset stuff to offset.ts and offset.unit.spec.ts
      
      * Use template string for prefixes
      
      * Use breakoutColumn + isDate to check column type
      
      * Refactor
      
      * Fix error message
      
      * Add boilerplate for CompareAggregations
      
      * Fix title
      
      * Render aggregations list
      
      * Style AccordionList
      
      * Sort props
      
      * Fix bucket name
      
      * Use displayName instead shortName
      
      * Support parseValue prop in NumberInput
      
      * Add period input accepting integers only
      
      * Accept non-negative values only
      
      * Do not accept zeros
      
      * Add state
      
      * Add submit button
      
      * Export offset functions via Lib
      
      * Make it possible to skip rightSection
      
      * Add column picker
      
      * Map offset user input to api input (negative value)
      
      * Add label
      
      * Fix crash
      
      * Extract shouldCreate
      
      * Make onSelect in AggregationPicker support multiple values
      
      * Extract ReferenceAggregationPicker
      
      * Extract ColumnPicker
      
      * Extract getAggregations
      
      * Rename
      
      * Add custom items
      
      * Refactor item component
      
      * Extract OffsetInput
      
      * Remove unused data-testid
      
      * Style OffsetInput
      
      * Generate titles according to specs
      
      * Generate label
      
      * Generate help
      
      * Extract utils
      
      * Use different width for the 1st step
      
      * Format code
      
      * Use MultiSelect directly
      
      * Avoid custom parseValue
      
      * Revert MultiaAutocomplete changes
      
      * Improve typing in describeTemporalInterval and
       describeRelativeDatetime
      
      * Use describeTemporalUnit to pluralize
      
      * Use interface
      
      * Avoid setting value as DOM attribute
      
      * Fix test
      
      * Add onAdd prop to AggregationPicker and revert the change to have onSelect pass multiple aggregations
      
      * Reduce number of props
      
      * Render checkboxes in custom items
      
      * Introduce and use --mb-color-brand-lighter
      
      * Avoid !important
      
      * Remove redundant prop
      
      * Rename ExtractColumn to ExtractColumnAction
      
      * Add lines.svg
      
      * Fix positioning in case dir attribute is not present in any parent component
      
      * Add CompareAggregationsAction
      
      * Fix warning about isSelected being used as DOM attribute
      
      * Fix positioning in case dir attribute is not present in any parent component
      
      * Remove redundant Box
      
      * Compute the title
      
      * Add compareAggregationsDrill boilerplate
      
      * Add compare-aggregations drill stub
      
      * Update comment
      
      * Compute title and aggregation
      
      * Add TODO
      
      * Use proper title when there's only 1 aggregation
      
      * Show visualization on submit
      
      * Limit aggregation choice to 1 in compare aggregations drill
      
      * Redirect to chart upon submission
      
      * Do not navigate to chart view
      
      * Do not navigate to chart view
      
      * Make drill-thru tests expect the new compare-aggregations drill
      
      * Add type attribute to all ListItems
      
      * Add aggregationIndex to drillInfo
      
      * Add aggregationDrillDetails and wire it up
      
      * Add tracking helpers
      
      * Add new schema
      
      * Add tracking in column header
      
      * Add tracking in plus modal
      
      * Add tracking in aggregation picker
      
      * Fix destructuring
      
      * Add functionsUsedByExpression
      
      * Fix schema number
      
      * Add tests boilerplate
      
      * Implement test for notebook editor
      
      * Add test for column header
      
      * Add a test for summarize sidebar
      
      * Add a test for the plus button
      
      * Add expectNoBadSnowplowEvents call in afterEach
      
      * Format code
      
      * Add missing redux store state in tests
      
      ---------
      
      Co-authored-by: default avatarBraden Shepherdson <braden@metabase.com>
      Unverified
      49360f68
    • Kamil Mielnik's avatar
      Time-over-time comparison - Unit tests (#43653) · 54d9fb22
      Kamil Mielnik authored
      * Use createQueryWithClauses in createQueryWithCountAggregation
      
      * Support column-specific aggregations in createQueryWithClauses
      
      * Add tests for compare option presence
      
      * Fix case
      
      * Add a test for onAdd
      
      * Split tests
      
      * Rename tests
      
      * Add boilerplate for CompareAggregations unit tests
      
      * Fix assertion
      
      * Add more tests
      
      * Add offset input tests
      
      * Add tests
      
      * Update frontend/src/metabase/query_builder/components/CompareAggregations/CompareAggregations.unit.spec.tsx
      
      * Update tests after merge
      
      * Use constants instead of factory functions
      Unverified
      54d9fb22
    • Mahatthana (Kelvin) Nomsawadi's avatar
      Followed-up tasks for changelog generation (#43656) · ac6bb7b4
      Mahatthana (Kelvin) Nomsawadi authored
      * Check git tag for an exact match
      
      * Set npm publish to dry run, so I can test
      
      * Uses new github automation account for creating a PR
      
      * Remove unnecessary step
      
      * Automatically set `no-backport` on the SDK doc version bump PR
      
      * Fix step to edit PR with correct permission
      
      * Remove npm dry run after finished testing
      Unverified
      ac6bb7b4
  2. Jun 05, 2024
Loading