Joe Li
dcfb70d1bd
test(reports): mock get_channels_with_search in slack token-callable test
...
With ALERT_REPORT_SLACK_V2 now defaulting to True, a SLACK recipient's
first send triggers the v1->v2 auto-upgrade, which calls
get_channels_with_search to resolve channel names to channel IDs. The
existing test mocked WebClient.conversations_list to return a plain dict
that lacked the `.data` attribute the upgrade path reads, so the
upgrade raised "'dict' object has no attribute 'data'" and the test
errored.
Patch get_channels_with_search directly (matching the pattern already
used by the other v2-conversion tests in this file) so the upgrade can
resolve channels without going through the WebClient mock plumbing.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-06 16:02:37 -07:00
Joe Li
909acdbae4
chore(reports): deprecate Slack v1, default ALERT_REPORT_SLACK_V2 to True, harden v2 tests
...
Flips the ALERT_REPORT_SLACK_V2 feature flag default to True so the v2
auto-upgrade path runs out of the box, and adds one-shot DeprecationWarning
+ logger.warning emissions when v1 still runs (flag explicitly off, or bot
missing the channels:read scope). Slack retired the legacy files.upload
endpoint in 2025, so v1 file uploads are already broken at the API level —
only text-only chat_postMessage sends still succeed via the legacy path.
The bulk of the change is bulletproof unit-test coverage for SlackV2Notification
ahead of v1 removal in the next major:
- files_upload_v2 invocation with PNG (single + multiple), CSV, and PDF,
asserting channel, file, title, filename, and initial_comment kwargs
- multi-channel fan-out (3 channels x 2 files = 6 uploads) and text-only
multi-channel chat_postMessage
- inline-file precedence (CSV beats screenshots beats PDF)
- parametrized exception mapping across 7 slack_sdk error types -> the
4 NotificationException subclasses
- statsd .ok and .warning gauge emission via the @statsd_gauge decorator
- execution_id propagation from g.logs_context to the success log, plus
the falsy g.logs_context fallback path
- end-to-end auto-upgrade round-trip: v1 SLACK recipient with channel
names raises SlackV1NotificationError -> update_report_schedule_slack_v2
rewrites the row to channel IDs -> SlackV2Notification fast-paths the
next send with no further channel resolution
- should_use_v2_api() warning behavior: deprecation warning emitted exactly
once across multiple calls in both the flag-off and scope-missing paths,
with the scope-missing logger.warning continuing to fire each call so
operators see the actionable scope hint in their report-execution logs
Also locks in current behavior of the @backoff.on_exception(SlackApiError, ...)
decorator on send(): because send() catches every SlackApiError internally
and re-raises as NotificationUnprocessableException, backoff never sees the
target exception type and no retries actually fire. Test asserts call_count
== 1 with a docstring marking this as a known design issue to address
separately.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-06 12:41:28 -07:00
bialkou
4aa4415d8f
fix(i18n): update Russian translations ( #39589 )
...
Co-authored-by: bito-code-review[bot] <188872107+bito-code-review[bot]@users.noreply.github.com>
2026-05-06 13:05:23 -04:00
Sebastian Mohr
e667ceb6cf
feat(themes): expose active theme mode via data-theme-mode attribute ( #39063 )
2026-05-06 18:17:54 +03:00
Enzo Martellucci
9aaa12c7d4
fix(reports): preserve urlParams in multi-tab report fan-out ( #39884 )
2026-05-06 16:29:45 +02:00
Alexandru Soare
adfbbf1433
fix(sql): quote identifiers in transpile_to_dialect to fix case-sensitive column filters ( #39521 )
2026-05-06 10:53:09 +03:00
dependabot[bot]
d7663a9a1c
chore(deps-dev): update denodo-sqlalchemy requirement from ~=1.0.6 to >=1.0.6,<2.1.0 ( #39832 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 22:17:21 -07:00
dependabot[bot]
7290d3c452
chore(deps-dev): update pyathena requirement from <3,>=2 to >=2,<4 ( #39830 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 22:17:00 -07:00
dependabot[bot]
d7beffcec1
chore(deps-dev): bump eslint-plugin-react-you-might-not-need-an-effect from 0.9.3 to 0.10.0 in /superset-frontend ( #39853 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 22:15:10 -07:00
dependabot[bot]
f018b67895
chore(deps-dev): update sqlalchemy-vertica-python requirement from <0.6,>=0.5.9 to >=0.5.9,<0.7 ( #39831 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 22:14:08 -07:00
dependabot[bot]
5e2c6d8c9e
chore(deps): bump nanoid from 5.1.9 to 5.1.11 in /superset-frontend ( #39820 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 22:13:52 -07:00
dependabot[bot]
b305c8681c
chore(deps-dev): update impyla requirement from <0.17,>0.16.2 to >0.16.2,<0.23 ( #39833 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 22:09:37 -07:00
dependabot[bot]
d578fa1949
chore(deps): bump @deck.gl/mapbox from 9.3.1 to 9.3.2 in /superset-frontend ( #39814 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Đỗ Trọng Hải <41283691+hainenber@users.noreply.github.com >
2026-05-05 22:09:33 -07:00
dependabot[bot]
14d28c34fd
chore(deps-dev): update cx-oracle requirement from <8.1,>8.0.0 to >8.0.0,<8.4 ( #39753 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 22:05:54 -07:00
dependabot[bot]
c06aee8513
chore(deps-dev): bump jsdom from 29.1.0 to 29.1.1 in /superset-frontend ( #39815 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Đỗ Trọng Hải <41283691+hainenber@users.noreply.github.com >
2026-05-05 22:04:47 -07:00
dependabot[bot]
d0ef19953a
chore(deps): bump memoize-one from 5.2.1 to 6.0.0 in /superset-frontend/plugins/plugin-chart-ag-grid-table ( #37910 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@rusackas.com >
2026-05-05 21:38:49 -07:00
Vitor Avila
3745e37182
fix(OAuth2): Support OAuth2 exception with legacy endpoint ( #39897 )
2026-05-05 21:21:48 -03:00
Joe Li
4b17ac2629
fix(explore): add matrixify_enable guard to prevent stale validators on pre-revamp charts ( #38765 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-05 16:45:38 -07:00
Amin Ghadersohi
4a21a5365f
fix(mcp): validate column refs in generate_explore_link, update_chart_preview, and update_chart ( #39797 )
2026-05-05 19:12:31 -04:00
Richard Fogaca Nienkotter
9459bc7bf4
fix(mcp): warn on invalid chart preview form data key ( #39891 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-05-05 16:40:00 -03:00
Beto Dealmeida
cb53745d43
feat: semantic layer extension ( #37815 )
2026-05-05 12:07:46 -04:00
jesperct
9e91ae8cff
fix(colors): reassign colliding series when dashboard locks shared dimension color ( #39297 )
...
Co-authored-by: codeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com>
2026-05-05 08:38:19 -07:00
jesperct
5b5f23d127
test(plugin-chart-echarts): regression guards for temporal x-axis labels on timeseries charts ( #39208 )
2026-05-05 08:37:35 -07:00
Mehmet Salih Yavuz
8173cfe9e3
fix(CollectionControl): assign stable ids to keyless items ( #39862 )
2026-05-05 17:52:36 +03:00
Mehmet Salih Yavuz
586de12a05
fix(embedded): prevent duplicate React root on rehandshake ( #39860 )
2026-05-05 17:52:01 +03:00
dependabot[bot]
d6188374b4
chore(deps): bump docusaurus-theme-openapi-docs from 5.0.1 to 5.0.2 in /docs ( #39846 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 09:16:53 +07:00
dependabot[bot]
2edae162f0
chore(deps): bump baseline-browser-mapping from 2.10.24 to 2.10.27 in /docs ( #39848 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-05 09:16:33 +07:00
dependabot[bot]
e80207218b
chore(deps-dev): bump eslint from 10.2.1 to 10.3.0 in /superset-websocket ( #39843 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-04 17:02:27 -07:00
Beto Dealmeida
76955017eb
chore: bump shillelagh to 1.4.4 ( #39870 )
2026-05-04 19:39:38 -04:00
Beto Dealmeida
5325b87e73
fix(clickhouse): prevent expensive table scan ( #39867 )
2026-05-04 19:39:10 -04:00
Đỗ Trọng Hải
e76318633e
fix(helm): allow chart to work out-of-the-box with legacy Bitnami images ( #39839 )
...
Signed-off-by: hainenber <dotronghai96@gmail.com >
superset-helm-chart-0.15.5
2026-05-04 15:54:01 -07:00
Sam Firke
c2725e86f3
fix(markdown): Allow "target" attribute ( #39868 )
2026-05-04 18:27:43 -04:00
dependabot[bot]
2f605724e7
chore(deps-dev): bump globals from 17.5.0 to 17.6.0 in /superset-websocket ( #39844 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-04 15:09:36 -07:00
dependabot[bot]
ebb02d0ecf
chore(deps): bump @swc/core from 1.15.32 to 1.15.33 in /docs ( #39845 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-04 15:09:21 -07:00
dependabot[bot]
319b8a1124
chore(deps-dev): bump globals from 17.5.0 to 17.6.0 in /docs ( #39847 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-04 15:08:59 -07:00
dependabot[bot]
2be971ce77
chore(deps): bump docusaurus-plugin-openapi-docs from 5.0.1 to 5.0.2 in /docs ( #39849 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-04 15:08:10 -07:00
dependabot[bot]
812f4ae080
chore(deps): update zod requirement from ^4.4.1 to ^4.4.3 in /superset-frontend/plugins/plugin-chart-echarts ( #39850 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-04 15:07:55 -07:00
dependabot[bot]
af8d15fdfc
chore(deps): bump yeoman-generator from 8.1.2 to 8.2.2 in /superset-frontend ( #39852 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-04 15:07:41 -07:00
Amin Ghadersohi
673634f7af
fix(mcp): point get_dataset_info url to explore view instead of legacy tablemodelview edit ( #39838 )
2026-05-04 13:39:05 -04:00
Mehmet Salih Yavuz
41a22d7918
chore: Upgrade to React 18 ( #38563 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Evan Rusackas <evan@preset.io >
2026-05-04 19:19:36 +03:00
Amin Ghadersohi
28239c18d4
feat(mcp): warn when execute_sql template_params used with templating disabled ( #39858 )
2026-05-04 12:14:44 -04:00
dependabot[bot]
6205afbaa0
chore(deps-dev): bump webpack-sources from 3.4.0 to 3.4.1 in /superset-frontend ( #39851 )
2026-05-04 22:25:31 +07:00
EMMANUELA OPURUM
dc1c0f6ba1
docs: add user-facing Handlebars chart page with full helpers reference ( #39591 )
...
Co-authored-by: Emmanuela Opurum <youremail@example.com >
2026-05-02 13:16:39 -04:00
dependabot[bot]
ad73395c89
chore(deps-dev): bump yeoman-test from 11.3.1 to 11.4.2 in /superset-frontend ( #39816 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-02 13:46:47 +07:00
Evan Rusackas
867e173427
chore(deps): drop stale legacy-plugin-chart-map-box lockfile entry ( #39825 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-02 13:35:25 +07:00
dependabot[bot]
c90c8612ad
chore(deps): bump @docusaurus/faster from 3.10.0 to 3.10.1 in /docs ( #39804 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Signed-off-by: hainenber <dotronghai96@gmail.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: hainenber <dotronghai96@gmail.com >
2026-05-02 13:32:37 +07:00
Abdul Rehman
b14cca15f6
fix(table): preserve decimals in totals row when Time Comparison is enabled ( #39747 )
2026-05-02 13:31:54 +07:00
dependabot[bot]
9d4384e49e
chore(deps-dev): bump @babel/preset-env from 7.29.2 to 7.29.3 in /superset-frontend ( #39822 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-02 12:38:54 +07:00
jesperct
d8dd2d99b3
fix(time-comparison): use chart row_limit instead of instance config in offset queries ( #39490 )
2026-05-01 16:24:59 -07:00
dependabot[bot]
dbe26d81ce
chore(deps-dev): bump baseline-browser-mapping from 2.10.21 to 2.10.24 in /superset-frontend ( #39759 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-01 16:24:23 -07:00