Commit Graph

18844 Commits

Author SHA1 Message Date
Evan Rusackas
ee29590063 feat(changesets): configure workspace protocol and private packages
- Convert file: references to workspace:* protocol for monorepo deps
- Add eslint-rules/* to workspaces for workspace:* resolution
- Mark eslint plugins as private to prevent accidental publishing
- Add eslint plugins to changeset ignore list
- Changeset dry-run now works correctly

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-11 00:58:10 -08:00
Evan Rusackas
1ab5265d4e fix(build): resolve production build errors with Bun
- Add missing @types packages to root for Bun hoisting (@types/react-table,
  @types/jquery, @types/urijs)
- Add d3 dependency for legacy-plugin-chart-calendar
- Configure ForkTsCheckerWebpackPlugin to exclude test files from production
  type checking (test files have history@5/react-router@5 type mismatch)
- Add geostyler-cql-parser to ESM fullySpecified:false webpack rule

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-11 00:45:07 -08:00
Evan Rusackas
373f121421 fix(types): add missing @types packages and fix TS2742 errors for Bun
Bun's module resolution uses .bun/ symlinks which TypeScript can't
reference portably in declaration files. This causes TS2742 errors
when building packages.

Fixes:
- Add explicit return types to avoid TS2742 inference issues
- Add missing @types packages to root package.json:
  - @types/lodash, @types/prop-types
  - @types/d3-array, @types/d3-cloud, @types/d3-color
  - @types/d3-hierarchy, @types/d3-interpolate, @types/d3-scale, @types/d3-time
- Fix ScaleLinear type compatibility with newer @types/d3-scale
  (add third 'never' type parameter)

Files updated:
- packages/superset-core/src/ui/testing.tsx
- packages/superset-ui-core/src/spec/index.tsx
- packages/superset-ui-core/src/components/DatePicker/index.tsx
- packages/superset-ui-core/src/components/SafeMarkdown/SafeMarkdown.tsx
- packages/superset-ui-core/src/components/Tabs/Tabs.tsx
- plugins/legacy-preset-chart-deckgl/src/utils.ts
- plugins/legacy-preset-chart-deckgl/src/layers/common.tsx
- plugins/legacy-preset-chart-deckgl/src/layers/Heatmap/Heatmap.tsx

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-11 00:15:01 -08:00
Evan Rusackas
d605e49194 perf(build): remove thread-loader from webpack config
thread-loader was added in Dec 2024 when we used Babel for transpilation.
After migrating to SWC (Nov 2025), it became unnecessary overhead:

- SWC is Rust-native and 20-70x faster than Babel
- thread-loader spawns CPU_COUNT-1 Node.js worker processes
- Each worker has significant memory overhead
- The parallelization benefit no longer outweighs the cost

This should reduce memory usage during production builds.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-11 00:00:31 -08:00
Evan Rusackas
85764701f5 docs(ci): complete bun/turborepo/changesets migration docs and workflows
- Update all CI workflows (pre-commit, tech-debt) to use Bun
- Update build scripts (js_build.sh, cypress_build.sh, eslint.sh) for Bun
- Add sync-package-versions.js script for release version alignment
- Simplify package.json scripts (build:packages, publish:packages)
- Add gitTag: false to changesets config to avoid repo tag clutter
- Remove obsolete Lerna scripts (build.js, lernaVersion.sh)
- Update RELEASING/README.md with comprehensive npm publishing guide
- Update all developer documentation for Bun usage
- Update LLM instruction files (AGENTS.md, dev-standard.mdc)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 23:20:33 -08:00
Evan Rusackas
aa94a8eebd feat(docker/ci): migrate Docker and CI from npm to bun
Docker changes:
- Use oven/bun:1-debian as base image instead of node:20-trixie-slim
- Replace npm ci with bun install --frozen-lockfile
- Replace npm run commands with bun run
- Mount bun.lock instead of package-lock.json
- Update cache paths for Bun's cache directory
- Rename NPM_RUN_PRUNE env var to BUN_RUN_PRUNE

CI workflow changes:
- Update bashlib.sh npm-install function to use bun
- Update superset-frontend.yml to use bun run commands
- Update release.yml to use setup-bun action and changesets
- Update superset-e2e.yml to use setup-bun action
- Update superset-playwright.yml to use setup-bun action
- Update superset-translations.yml to use setup-bun action

Note: superset-embedded-sdk and superset-websocket remain on npm
as they are separate packages with their own lockfiles.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 11:46:21 -08:00
Evan Rusackas
a44372d994 fix(turbo): add explicit task dependencies for core packages
Turborepo's `^build` dependency resolution only uses dependencies and
devDependencies, not peerDependencies. This caused plugins to build
before their dependencies (@superset-ui/core, @apache-superset/core,
@superset-ui/chart-controls) were ready.

Added explicit task dependencies to ensure correct build order:
1. @superset-ui/core and @apache-superset/core build first (no deps)
2. @superset-ui/chart-controls builds after core packages
3. All other packages build after chart-controls

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 11:11:53 -08:00
Evan Rusackas
198c7598cf feat(frontend): migrate from npm/lerna to bun/turborepo/changesets
- Replace lerna with changesets for version management and npm publishing
- Migrate from npm to bun as the package manager
- Add bun.lock and remove package-lock.json
- Add changeset scripts: changeset:add, changeset:version, changeset:publish
- Delete lerna.json
- Update .gitignore to exclude package-lock.json

Benefits of this migration:
- Bun: ~10x faster package installs, native TypeScript support
- Turborepo: Intelligent caching for builds (already added)
- Changesets: Cleaner workflow for version management and publishing

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 10:45:08 -08:00
Evan Rusackas
d0575ceb29 feat(build): POC - add Turborepo for cached package builds
This PR adds Turborepo as a build orchestration tool for the frontend
monorepo, providing intelligent caching for package builds.

Changes:
- Add turbo.json with task pipeline configuration
- Add turbo devDependency to root package.json
- Add packageManager field for Turborepo compatibility
- Add build/clean/type-check scripts to all packages and plugins
- Add .turbo to .gitignore

New scripts:
- npm run turbo:build - Build all packages with caching
- npm run turbo:build:force - Build without cache
- npm run turbo:type-check - Type check all packages
- npm run turbo:clean - Clean all build artifacts

Benefits:
- Cached builds: 5s → 314ms (16x faster) on unchanged packages
- Parallel builds across packages
- Only rebuilds what changed
- Local-only caching (no cloud dependencies)

Note: Lerna is preserved for versioning and publishing. Turborepo
handles build orchestration, not package publishing.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 10:25:06 -08:00
Kamil Gabryjelski
7ec5f1d7ec fix(native-filters): Filters with select first value not restored correctly from url (#37855) 2026-02-10 18:54:42 +01:00
Đỗ Trọng Hải
76aa91f5ea fix(deps): pin react-error-boundary to 6.0.0 for React 17 peer dep constraint (#37706)
Signed-off-by: hainenber <dotronghai96@gmail.com>
2026-02-10 23:22:14 +07:00
Michael S. Molina
c41942a38a chore(deps): Upgrade sqlglot from 27.15.2 to 28.10.0 (#37841) 2026-02-10 13:13:11 -03:00
Alexandru Soare
ae8d671fea fix(sql): fix sql suggestions (#37699) 2026-02-10 17:30:17 +02:00
Enzo Martellucci
c59d0a73d4 fix: Prevent table rows from overlapping pagination in table view (#37174)
Co-authored-by: Diego Pucci <diegopucci.me@gmail.com>
2026-02-10 16:01:39 +01:00
Ville Brofeldt
0f1278fa61 fix(gtf): set dedup_key on atomic sql (#37820) 2026-02-10 06:56:14 -08:00
dependabot[bot]
948b1d613b chore(deps-dev): bump typescript-eslint from 8.54.0 to 8.55.0 in /docs (#37825)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 21:52:30 +07:00
dependabot[bot]
3af795af36 chore(deps-dev): bump @typescript-eslint/eslint-plugin from 8.54.0 to 8.55.0 in /superset-websocket (#37822)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 21:36:12 +07:00
dependabot[bot]
1cba53a043 chore(deps-dev): bump @typescript-eslint/parser from 8.54.0 to 8.55.0 in /superset-websocket (#37823)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 01:09:19 -08:00
dependabot[bot]
8c6bc3eaea chore(deps): bump antd from 6.2.3 to 6.3.0 in /docs (#37824)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 01:08:58 -08:00
dependabot[bot]
4d8ff84587 chore(deps-dev): bump @playwright/test from 1.58.1 to 1.58.2 in /superset-frontend (#37826)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 01:07:55 -08:00
dependabot[bot]
f370da5a87 chore(deps-dev): bump @typescript-eslint/parser from 8.54.0 to 8.55.0 in /docs (#37827)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 01:07:36 -08:00
dependabot[bot]
2df60f9caf chore(deps): bump immer from 11.1.3 to 11.1.4 in /superset-frontend (#37830)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 01:07:08 -08:00
dependabot[bot]
d078f18ff8 chore(deps-dev): bump @types/node from 25.2.1 to 25.2.2 in /superset-websocket (#37796)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 01:06:17 -08:00
dependabot[bot]
6ca028dee9 chore(deps): bump axios from 1.12.2 to 1.13.5 in /docs (#37814)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-10 01:05:54 -08:00
Tu Shaokun
76351ff12c fix(i18n): ensure language pack loads before React renders (#36893) 2026-02-10 00:29:04 -08:00
Joe Li
f6f96ecc49 test(chart-list): migrate Chart List tests from Cypress to RTL (#37813)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 16:25:49 -08:00
Ville Brofeldt
59dd2fa385 feat: add global task framework (#36368) 2026-02-09 10:45:56 -08:00
Michael S. Molina
6984e93171 fix: SQL Lab improvements and bug fixes (#37760) 2026-02-09 14:29:08 -03:00
Kamil Gabryjelski
f25d95be41 fix: Vertical lines in the middle of Treemap categories (#37808) 2026-02-09 17:44:59 +01:00
Đỗ Trọng Hải
5125a67002 build(dev-deps): remove npm from @apache-superset/core (#37774)
Signed-off-by: hainenber <dotronghai96@gmail.com>
2026-02-09 13:00:40 -03:00
dependabot[bot]
059b57d784 chore(deps-dev): bump @types/node from 25.2.1 to 25.2.2 in /superset-frontend (#37801)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 22:47:12 +07:00
Đỗ Trọng Hải
a1d65c7529 feat(deps): significant npm audit fix to trim off inadvertently runtime dep from upstream libraries (#37220)
Signed-off-by: hainenber <dotronghai96@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-09 22:13:57 +07:00
Amin Ghadersohi
15b3c96f8e fix(security): Add table blocklist and fix MCP SQL validation bypass (#37411) 2026-02-09 14:12:06 +01:00
Alexandru Soare
2b411b32ba fix(scatter): Fix ad-hoc metric for pointsize (#37669) 2026-02-09 11:13:06 +02:00
Nikhil
cebdb9e0b7 fix(ListView): add tooltip for layout toggle buttons (#37581)
Co-authored-by: root <root@DESKTOP-LUKSKD7.localdomain>
Co-authored-by: codeant-ai-for-open-source[bot] <244253245+codeant-ai-for-open-source[bot]@users.noreply.github.com>
2026-02-09 02:37:53 -05:00
dependabot[bot]
ce872ddaf0 chore(deps-dev): bump @swc/core from 1.14.0 to 1.15.11 in /superset-frontend (#37511)
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>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-09 02:27:45 -05:00
dependabot[bot]
29aa69b779 chore(deps): update @luma.gl/engine requirement from ~9.2.5 to ~9.2.6 in /superset-frontend/plugins/legacy-preset-chart-deckgl (#37762)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 01:28:59 -05:00
Evan Rusackas
ebee9bb3f9 refactor(types): consolidate shared table types and fix Funnel enum typo (#37768)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-09 01:14:34 -05:00
Vinícius Borges Alencar
82d6076804 refactor(charts): filter saved metrics by key and label (#37136) 2026-02-09 07:29:32 +03:00
Đỗ Trọng Hải
3b75af9ac3 docs(dev_portal/test): remove refs of testing tools not used in project (#37786)
Signed-off-by: hainenber <dotronghai96@gmail.com>
2026-02-08 16:46:31 +07:00
Đỗ Trọng Hải
563d9f1a3f chore(lint): migrate Jest lint rules from eslint to oxlint (#37787)
Signed-off-by: hainenber <dotronghai96@gmail.com>
2026-02-08 16:44:42 +07:00
Đỗ Trọng Hải
c4d2d42b3b build(dev-deps): move Webpack-dedicated js-yaml-loader to dev deps section (#37788)
Signed-off-by: hainenber <dotronghai96@gmail.com>
2026-02-08 01:37:12 -08:00
dependabot[bot]
7580bd1401 chore(deps-dev): bump timezone-mock from 1.3.6 to 1.4.0 in /superset-frontend (#37333)
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>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-07 23:07:29 -08:00
SBIN2010
c4e7c3b03b refactor: consolidating ColorSchemeEnum settings into one place (#37591) 2026-02-07 23:04:20 -08:00
dependabot[bot]
3521f191b2 chore(deps): bump webpack from 5.96.1 to 5.105.0 in /superset-frontend/cypress-base (#37775)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-07 10:18:47 -08:00
Rini Misini
f4708a5648 fix(db): prevent long database error messages from overflowing UI (#37709)
Co-authored-by: RiniMisini12 <misinirini@gmail.com>
2026-02-07 21:13:09 +07:00
dependabot[bot]
b9ab03994a chore(deps-dev): bump jsdom from 27.4.0 to 28.0.0 in /superset-frontend (#37688)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-07 15:32:38 +07:00
dependabot[bot]
df253f6aa4 chore(deps-dev): bump @babel/plugin-transform-runtime from 7.28.5 to 7.29.0 in /superset-frontend (#37631)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-07 00:12:35 -08:00
dependabot[bot]
5cea4fb7fe chore(deps): update @luma.gl/shadertools requirement from ~9.2.5 to ~9.2.6 in /superset-frontend/plugins/legacy-preset-chart-deckgl (#37763)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-06 23:55:22 -08:00
dependabot[bot]
76a27d5360 chore(deps): bump d3-format from 1.4.5 to 3.1.2 in /superset-frontend/packages/superset-ui-core (#37442)
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>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 23:42:39 -08:00