Sitelet https://github.com/metabase/metabase/tags
Skip to content

Tags: metabase/metabase

Tags

v0.63.14.3

Toggle v0.63.14.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80661)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

v0.63.14.x

Toggle v0.63.14.x's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80661)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

v0.63.x

Toggle v0.63.x's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80661)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

v0.62.17.3

Toggle v0.62.17.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80659)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

v0.62.17.x

Toggle v0.62.17.x's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80659)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

v0.62.x

Toggle v0.62.x's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80659)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

latest-oss

Toggle latest-oss's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80661)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

latest-ee

Toggle latest-ee's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Reject impersonation role equal to the driver default-r…

…ole sentinel" (#80661)

Reject impersonation role equal to the driver default-role sentinel (#80616)

Reject impersonation role attribute equal to the driver default-role sentinel

connection-impersonation-role now rejects a role attribute that (case-insensitively)
equals the driver's default-database-role sentinel (e.g. NONE / DEFAULT), which would
otherwise emit SET ROLE NONE and drop the connection to the base warehouse credential.

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>

v0.63.14.2

Toggle v0.63.14.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Backport "should run" CI decision family of PRs to v63 (#80330)

* Compile e2e CLJS in parallel with the uberjar build (backport #78017)

Add an `e2e-cljs` job that compiles CLJS alongside the uberjar and hands the
result to each e2e group as an artifact.

This branch keeps its `static-viz-files-changed` job; the two share a step
prefix, so both are spelled out in full.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Warn on PRs that grow the main app's initial bundle (backport #78652)

Generalize the SDK bundle-size check into a shared `bundle-size-check`
action and a `bundle-size` workflow that also covers the main app bundle.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Only run latest app db variants on PRs (backport #78755)

Add an `app-db-matrix` job that selects which app DB versions to test:
every version under force-run, latest-only otherwise.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Remove the redundant `skip` input from bundle-size step (backport #80070)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Decide whether jobs run at all before hitting the test-plan (#80091)

Add a `should-run` job whose verdict (force-run / force-skip / defer) gates
each test workflow before the test plan is consulted, and pass `force-run`
down to app-db, backend and drivers.

`drivers.yml` now takes `FORCE_RUN` from that input instead of computing it
from the ref, so a `ci:run-all` label reaches `mage driver-decisions`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Decide whether to build uberjar based on files changed (#80129)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* Explicitly exclude `old-migrations-test` tag (#80214)

* Fix SDK test concurrency collision (#78898)

* Compare a PR's bundle size against the base ref its uberjar was merged with (#79858)

* Record video on e2e re-run attempts (#79279)

* Match description from master

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Nicolò Pretto <info@npretto.com>
Co-authored-by: Romeo Van Snick <romeo@romeovansnick.be>
Co-authored-by: Fraser <fraser@metabase.com>

v0.62.17.2

Toggle v0.62.17.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
🤖 backported "Add validation and permission checks for content endpoi…

…nts" (#80474)

* Add validation and permission checks for content endpoints (#80277)

* Run full query-permission checks when compiling a native form (SEC-822)

POST /api/dataset/native compiled and returned the query after checking only
database-level native perms, so a referenced source card or card template tag
was resolved without a read check. Preprocess the query once (with inline
parameter compilation enabled), run the same check-query-permissions* checks
the run path uses (surfacing a permission failure as a 403), then compile the
preprocessed query. Also trim the response to :query and :params.

* Validate link-card entity ids on write for dashboard cards (SEC-836, SEC-832)

DashboardCard validated the link-card entity id only when building the read
query; nothing checked it on write, so a non-integer id could be stored and
would then break every hydration of the dashboard. Add a write-side check in
define-before-insert and a new define-before-update, and wrap the notification
link-card renderer in try/catch so one bad card degrades to a missing part
instead of failing the whole subscription. Adds regression tests.

* Require positive-integer entity ids in dependency backfill (SEC-830)

replace-dependencies! placed to_entity_id directly in the insert, and the
dashboard click_behavior extraction forwarded targetId with no type check. Add
an explicit pos-int? check at the insert where to-add is built (a runtime
check, not an mu/defn schema, which is stripped from prod builds), and filter
targetId to positive integers during extraction so bad ids drop rather than
making the backfill job throw. Adds regression tests.

* Validate click-behavior target ids on write for dashboard cards (SEC-830)

Review follow-up: the entity ids the dependency backfill consumes come from
dashcard click_behavior targetIds, so validate them at the write boundary as
well, keeping the deep guard in replace-dependencies! as defense in depth.
Covers both the top-level click_behavior and per-column column_settings ones,
on insert and update. Adds regression tests.

* Require positive-integer ids in document-deps extraction

The backported test asserts document smartLinks/card embeds with
non-integer ids are dropped, but the pos-int? guards landed on master
via #73244 which is not on this release branch. Port just the guards.

* Use metabase.util.performance/select-keys in qp api ns

Fixes the kondo discouraged-var warning on the backported select-keys
call; master's ns already refers the perf variant.

---------

Co-authored-by: Nicola Mometto <nicola.mometto@metabase.com>