Claude Code
e7a863b016
fix(extensions): address review on hot-reload watcher
...
Per @codeant-ai's and @bito's review on #40084 :
1. First-edit dropped on startup. Pre-populate baseline hashes from
existing files in watched `dist` dirs via `prime_baseline()`, called
once at watcher startup. Real edits now diff against the on-disk
baseline instead of being silently swallowed as "first observation".
2. Move events used src_path. Atomic-build workflows (webpack tmp +
rename into `dist`) mean `src_path` may point outside the watched
tree. Use `dest_path` for `FileMovedEvent`, falling back to
`src_path`.
3. Moves trigger regardless of content match. A move into/out of `dist`
is itself the signal — don't gate it on hashing the (potentially
missing) source.
4. Leading-edge debounce replaced with trailing debounce via
`threading.Timer`. Each event resets the timer so the reload fires
once after the build settles, instead of triggering immediately and
dropping the writes that finish the build.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-19 00:23:40 -05:00
Amin Ghadersohi
4381fd97ea
fix(extensions): make LOCAL_EXTENSIONS hot reload reliable in Docker
...
The local-extensions watcher previously surfaced spurious reloads under Docker on macOS (VirtioFS / osxfs generates inotify events on every read, not just writes), and rebuilds that wrote many files at once produced one restart per file. It also touched superset/__init__.py to trigger Flask's reloader, which then meant any Python read of that file also looked like a change and recursed.
Changes:
- Watcher only acts on FileCreated/Modified/Moved events, verifies the file content actually changed via SHA-256, and debounces to one trigger per second.
- Use a dedicated sentinel file (superset/extensions/.reload_trigger) that Python never reads, registered with Flask via --extra-files. The watcher ensures the sentinel exists on startup.
- Bootstrap excludes superset/__init__.py from the file watcher so the old trigger path can't reintroduce the loop.
- docker-compose mounts ./local_extensions:/app/local_extensions so the bind path matches LOCAL_EXTENSIONS in the dev superset_config.
- Extension content endpoint and FRONTEND_REGEX accept nested paths inside frontend/dist so extensions can serve worker / WASM / chunk subfolders.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-12 21:19:57 -07:00
Evan Rusackas
e2a8a88d36
docs: Update documentation link for ENABLE_SUPERSET_META_DB ( #40076 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-12 20:39:39 -07:00
dependabot[bot]
0d9ecb7664
chore(deps-dev): update @types/node requirement from ^25.6.0 to ^25.7.0 in /superset-frontend/packages/superset-ui-core ( #40059 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude <claude@anthropic.com >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-12 20:34:10 -07:00
dependabot[bot]
1d220f7172
chore(deps-dev): update fs-extra requirement from ^11.3.4 to ^11.3.5 in /superset-frontend/packages/generator-superset ( #39930 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude <claude@anthropic.com >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-12 20:33:47 -07:00
Ville Brofeldt
af4dc3a9aa
fix(re-encrypt): handle non-id PKs and make command idempotent ( #40079 )
2026-05-12 17:59:52 -07:00
Richard Fogaca Nienkotter
fa06989ed7
fix(mcp): return requested update chart previews ( #40077 )
2026-05-12 21:23:49 -03:00
dependabot[bot]
4d0cc1d7a6
chore(deps): bump zod from 4.4.1 to 4.4.3 in /superset-frontend ( #39904 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 17:23:14 -07:00
dependabot[bot]
d8b2c5872b
chore(deps-dev): bump @swc/core from 1.15.32 to 1.15.33 in /superset-frontend ( #39935 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 17:22:58 -07:00
Elizabeth Thompson
86ba63b072
fix(dashboard): prevent duplicate subdirectory prefix when toggling fullscreen ( #39534 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-12 16:51:37 -07:00
dependabot[bot]
4c14e16e58
chore(deps): bump @babel/plugin-transform-modules-systemjs from 7.20.11 to 7.29.4 in /superset-frontend/cypress-base ( #39982 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 16:25:28 -07:00
dependabot[bot]
fe22e06011
chore(deps): bump mermaid from 11.10.0 to 11.15.0 in /docs ( #40038 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 16:25:09 -07:00
dependabot[bot]
9160da0d27
chore(deps-dev): bump yeoman-test from 11.3.1 to 11.5.2 in /superset-frontend ( #40058 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 16:24:55 -07:00
dependabot[bot]
43a89f8710
chore(deps-dev): bump terser-webpack-plugin from 5.5.0 to 5.6.0 in /superset-frontend ( #40061 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-12 16:24:37 -07:00
Varun Chawla
a77fec68d4
fix(drill-detail): make page-size selector functionally adjustable ( #37975 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
Co-authored-by: Evan Rusackas <evan@preset.io >
2026-05-12 13:39:41 -07:00
Abdul Rehman
e94465208f
fix(bar-chart): cap bar width so a single data point doesn't stretch across the chart ( #39588 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-05-12 13:24:46 -07:00
Abdul Rehman
f2eee4ef46
fix(frontend): prevent LanguagePicker crash when locale is missing from LANGUAGES config ( #39585 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-05-12 13:22:36 -07:00
yeaight
7445105735
fix(explore): explain disabled chart overwrite option ( #39796 )
2026-05-12 12:53:59 -07:00
innovark
2392c8e624
fix(Select): fix Russian translations for Select ( #35751 )
...
Co-authored-by: Evan Rusackas <evan@preset.io >
Co-authored-by: Sam Firke <sfirke@users.noreply.github.com >
2026-05-12 13:48:42 -04:00
Arpit Jain
39ad6b200f
docs(update): fix typos in UPDATING.md ( #40068 )
2026-05-12 23:40:22 +07:00
Igor Khrol
3363b48180
fix(spark): register Spark SQLAlchemy dialect so spark:// URIs resolve to SparkEngineSpec ( #38299 )
...
Co-authored-by: Joe Li <joe@preset.io >
2026-05-12 12:33:17 -04:00
dependabot[bot]
c9fb1bc10f
chore(deps-dev): bump @typescript-eslint/parser from 8.59.2 to 8.59.3 in /superset-frontend ( #40057 )
...
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-12 22:27:58 +07:00
Evan Rusackas
658907a0a6
fix(gha): use sound condition gating for latest-tag step ( #40035 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-12 22:27:26 +07:00
Đỗ Trọng Hải
4a79896bb2
chore(build): replace replaceable jest-mock-console with native Jest spies ( #38643 )
...
Signed-off-by: hainenber <dotronghai96@gmail.com >
2026-05-12 21:32:08 +07:00
Đỗ Trọng Hải
b0c5b061c5
fix(sqllab): display horizontal scrollbar in data preview modal ( #39799 )
...
Signed-off-by: hainenber <dotronghai96@gmail.com >
2026-05-12 21:30:54 +07:00
Kasia
c394405fc1
fix(explore): restore spacing between tabs and content in control popovers ( #40023 )
2026-05-12 14:30:41 +02:00
Kasia
d2ae5fb275
fix(ux): remove CSS-forced uppercase from button labels ( #40049 )
2026-05-12 14:28:39 +02:00
Amin Ghadersohi
460992d89b
fix(mcp): improve not-found errors to suggest corresponding list_* tools ( #39919 )
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-05-12 02:38:10 -04:00
Amin Ghadersohi
85935b0b88
fix(mcp): handle SSL connection drop during pre-call session teardown ( #39917 )
2026-05-12 02:32:14 -04:00
innovark
fa168fcc8a
fix(Label): use correct color for label component ( #38707 )
2026-05-11 21:40:31 -07:00
Andy
a6ad0bf169
fix(re-encrypt-secrets): use db.Model.metadata to discover encrypted … ( #39390 )
...
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-11 21:16:41 -07:00
Abdul Rehman
fed29b3017
fix(deploy): prevent double-prefix of logo URL in subdirectory deployments ( #39472 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-05-11 21:13:26 -07:00
Nitish Agarwal
24d76b4249
fix(sunburst): remove label text outline in dark theme ( #39774 )
2026-05-11 20:24:25 -07:00
Evan Rusackas
5ab8583cd0
chore(gha): pin github/codeql-action to a SHA ( #40043 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-11 20:18:55 -07:00
Evan Rusackas
e66fbc91c2
chore(gha): pass commenter login through env in claude.yml ( #40042 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-11 20:00:27 -07:00
Mafi
187bb416e7
fix(plugin-chart-ag-grid-table): use display text for filter and sort on HTML cells ( #39885 )
...
Co-authored-by: Richard Fogaca Nienkotter <63572350+richardfogaca@users.noreply.github.com >
2026-05-11 20:29:16 -03:00
Evan Rusackas
cfb704dbeb
test(sqllab): stabilize SaveDatasetModal overwrite-flow test helper ( #40036 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-11 15:48:10 -07:00
Evan Rusackas
e77f6ece92
fix(ci): serialize Docs Deployment runs to avoid push races ( #40030 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-11 11:25:31 -07:00
Evan Rusackas
785a08c7d5
chore(frontend): export typed useAppDispatch / useAppSelector hooks ( #40027 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-11 11:01:57 -07:00
Maxime Beauchemin
d90d3a2dea
fix(importexport): honor overwrite flag on /api/v1/assets/import ( #39502 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-11 10:24:42 -07:00
Maxime Beauchemin
6ee4d694bc
fix(sqllab): include template_params when overwriting a dataset ( #39501 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-11 10:24:15 -07:00
Evan Rusackas
006a1800be
chore(lint): convert react-pivottable components to function components ( #39453 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-11 10:19:05 -07:00
Evan Rusackas
2fe6269c22
chore(lint): convert ChartDataProvider and StatefulChart to function components ( #39456 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-11 09:55:27 -07:00
Evan Rusackas
26ef4b7ed3
fix(sqla): pass catalog and schema to get_sqla_engine in values_for_column ( #38681 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Co-authored-by: Claude <claude@anthropic.com >
2026-05-11 09:54:48 -07:00
Evan Rusackas
a7aa854968
fix(big-number): guard against null colorPicker in transformProps ( #39110 )
...
Co-authored-by: Amin Ghadersohi <amin.ghadersohi@gmail.com >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-11 09:54:08 -07:00
Evan Rusackas
db0c5b32da
chore(lint): convert SuperChart and SuperChartCore to function components ( #39457 )
...
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-11 09:51:52 -07:00
Evan Rusackas
96ad20318d
chore(superset-core): forward-compat fixes for TypeScript 6.0 - Phase C ( #39537 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
2026-05-11 09:50:07 -07:00
Evan Rusackas
516bb19e10
feat(frontend): enable React StrictMode at root ( #39893 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-11 09:48:54 -07:00
Evan Rusackas
2cc20d3284
perf(explore): use useDeferredValue for explore menu search and JS editor parse ( #39975 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-11 09:48:07 -07:00
Evan Rusackas
3e3c5c36c3
perf(explore): use useDeferredValue for datasource panel search ( #39970 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-11 09:47:50 -07:00