Claude Code
ae1838814f
chore(tags): stop auto-generating type:/editor:/favorited_by: tags
...
villebro noted on #43390 that these system-generated tags appear to be
unused. Confirmed: every tags list and filter in the frontend explicitly
excludes non-custom tags (ChartList, DashboardList, SavedQueryList, the
chart PropertiesModal, the dashboard Header), so nothing ever surfaced
them to a user. What remained was pure write-side overhead: 13
SQLAlchemy event listeners across 5 models firing on every chart/
dashboard/query/dataset save and every favorite/unfavorite, plus a whole
performance-optimization mixin (CustomTagsOptimizationMixin,
DASHBOARD_LIST_CUSTOM_TAGS_ONLY) that existed purely to strip the
resulting noise back out of dashboard-list responses.
This removes the generation:
- superset/tags/models.py: drop ObjectUpdater's editor:/type: generation
(after_insert/after_update) and FavStarUpdater's favorited_by:
generation entirely. Keeps after_delete (tagged_object cleanup applies
to every tag, custom included, and nothing else removes those rows
since tagged_object.object_id has no FK - see its column comment).
- superset/tags/core.py: only registers the delete-cleanup listeners now.
- superset/common/tags.py + the `sync_tags` CLI command: removed (the
backfill path for the generation this removes).
- superset/views/custom_tags_api_mixin.py, DASHBOARD_LIST_CUSTOM_TAGS_ONLY,
Dashboard.custom_tags, and the schema/API plumbing built around them:
removed - nothing left to optimize away once implicit tags stop
accumulating.
Kept for backward compatibility, since MCP's list_tags/get_tag_info tools
document these tag types and upgraded deployments may already have rows
of these types: the TagType enum values, the custom_tag API filter,
and bulk-delete protection for non-custom tags. Docstrings updated to
say these are legacy/no longer generated rather than actively implicit.
Also fixes a real, currently-broken import in superset/daos/tag.py
(current_user_can_modify_object doesn't live in
superset.commands.tag.utils, only in superset.commands.utils) that
otherwise blocks every test in this area from running at all. Filed and
fixed separately as #43467 ; this commit will collapse away on rebase
once that merges.
Follow-up to #43390 .
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-08-24 13:44:55 -07:00
Enzo Martellucci
c3ed8b312d
fix(security): surface extra_editors in dashboard/chart lists ( #43392 )
2026-08-24 11:49:29 +02:00
65893113fe
fix(import): tighten ownership and validation checks across asset importers ( #43393 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
2026-08-21 12:35:33 -07:00
2b6044b624
fix: tighten SSRF validation, executor resolution, and cache scoping across reports/thumbnails ( #43395 )
...
Co-authored-by: Superset Dev <dev@superset.apache.org >
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
2026-08-21 12:34:37 -07:00
Mehmet Salih Yavuz
cfd40bdd0d
fix(dashboard): derive filter scope on read instead of serving a stale cache ( #43252 )
2026-08-17 19:23:19 +03:00
8014f782d3
feat: bump SQLAlchemy to 2.0 and flask-sqlalchemy to 3.1.1 ( #42803 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
Co-authored-by: Superset Dev <dev@superset.apache.org >
2026-08-12 19:55:14 -07:00
Shaitan and Claude Opus 4.8
0d57c5ab50
fix(dashboard): consistently apply the datasource-access check when serializing member charts and datasets ( #42716 )
...
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-11 21:47:47 +01:00
4f2147009f
feat(dashboard): expand all chart descriptions ( #32958 )
...
Co-authored-by: Urban Pettersson <urban.pettersson@alteryx.com >
Co-authored-by: rusackas <evan@rusackas.com >
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-06 14:47:30 -07:00
Evan Rusackas and Claude Opus 4.8
d0503c1b98
fix(dashboard): keep refresh_frequency set via the Advanced JSON editor ( #42116 ) ( #42142 )
...
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-08-03 12:00:39 -07:00
Hugh A. Miles II
00cb3037e7
feat(dashboard): export dashboard chart data to Excel (async, S3 + email) ( #41133 )
2026-07-21 12:17:00 -04:00
Ville Brofeldt
33f0fc93ed
feat: introduce Subject model and entity editors/viewers ( #38831 )
2026-07-08 11:00:03 -07:00
bed1034c2f
refactor(frontend): centralize subdirectory URL prefixing behind nav helpers ( #39925 )
...
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
Co-authored-by: Evan <evan@preset.io >
2026-07-01 11:20:13 -07:00
Grégoire Gailly
cc9c20fcb6
feat(dashboard): Edit dashboard description from ui (and api) and show tooltip on dashboard list view ( #36071 )
2026-06-19 08:49:14 -07:00
Cezar and Cursor
df0668eda5
feat(api): return uuid in POST response for dataset, chart, and dashboard ( #37806 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-13 16:53:08 -07:00
a41869ec7d
fix(dashboard): build example-export sample data through the dataset query path ( #40976 )
...
Co-authored-by: sha174n <pedro.sousa@preset.io >
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-13 19:01:35 +01:00
Evan Rusackas and Claude Code
507cf93687
test(dashboard): API-created dashboards should link charts from position_json ( #32966 ) ( #40816 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-06-08 10:51:25 -07:00
Shaitan and Claude Sonnet 4
77c2bed5f7
fix(dashboards): narrow datasets payload to callers with read access ( #40396 )
...
Co-authored-by: Claude Sonnet 4 <noreply@anthropic.com >
2026-06-03 12:55:57 +01:00
Evan Rusackas and Claude Code
453f49ce33
test(api): regression test for Admin empty dashboard/chart list ( #25890 ) ( #40202 )
...
Co-authored-by: Claude Code <noreply@anthropic.com >
2026-05-18 07:20:37 -07:00
Beto Dealmeida
edf4d03218
chore: bump rison to 2.0.0 ( #39529 )
2026-04-24 15:52:42 -04:00
Kamil Gabryjelski and Claude Opus 4.6
f5a5a804e2
perf(dashboard): skip thumbnail_url computing on single dashboard endpoint ( #38015 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-19 18:15:20 +01:00
Evan Rusackas and Claude
dee063a4c5
feat(examples): Modernize example data loading with Parquet and YAML configs ( #36538 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-01-21 12:42:15 -08:00
Damian Pendrak
35ac4c74fd
feat(dashboard): chart customizations modal and plugins ( #36062 )
2026-01-14 17:00:18 +01:00
Antonio Rivero
c966dd4f9e
feat(dashboards): Add config to filter implicit tags in list API ( #36246 )
2025-11-25 11:57:53 +01:00
966e231f94
feat: Add Dashboard Filter Support for Alert Reports ( #32196 )
...
Co-authored-by: Elizabeth Thompson <eschutho@gmail.com >
Co-authored-by: Hugh A Miles II <hugh@Mac.home >
2025-09-16 10:52:28 -04:00
Vitor Avila
ce74ae095d
feat: Use dashboard name for screenshot download ( #34988 )
2025-09-05 02:16:45 -03:00
Maxime Beauchemin and Claude
4695be5cc5
fix: complete theme management system import/export ( #34850 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-09-01 15:44:01 -07:00
Danylo Korostil
31e2143c84
feat(api): Added uuid filed support to dataset, chart, dashboard API ( #29573 )
2025-08-18 13:05:16 -07:00
Maxime Beauchemin and Claude
cb27d5fe8d
chore: proper current_app.config proxy usage ( #34345 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-07-31 19:27:42 -07:00
Maxime Beauchemin and Mehmet Salih Yavuz
e741a3167f
feat: add a theme CRUD page to manage themes ( #34182 )
...
Co-authored-by: Mehmet Salih Yavuz <salih.yavuz@proton.me >
2025-07-25 13:26:41 -07:00
Vitor Avila
733f112142
fix: Support metric currency as dict during import ( #34080 )
2025-07-07 14:00:56 -03:00
Kamil Gabryjelski
b92909d621
feat: Enable passing a permalink to cache_dashboard_screenshot endpoint ( #32900 )
2025-03-31 10:40:36 +02:00
Evan Rusackas
90651dfe3e
fix(dev/ci): pre-commit fixes galore ( #32352 )
2025-02-24 11:26:45 -07:00
Jack and Kamil Gabryjelski
7db0589340
fix(thumbnail cache): Enabling force parameter on screenshot/thumbnail cache ( #31757 )
...
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com >
2025-01-31 19:22:31 +01:00
Vitor Avila
9661afff16
fix(Embedded): Skip CSRF validation for dashboard download endpoints ( #31798 )
2025-01-13 16:50:24 -03:00
Maxime Beauchemin and Elizabeth Thompson
e51b95ffa8
chore: enforce more ruff rules ( #31447 )
...
Co-authored-by: Elizabeth Thompson <eschutho@gmail.com >
2024-12-18 17:41:34 -08:00
Geido
e1f98e246f
fix(Dashboard): Sync color configuration via dedicated endpoint ( #31374 )
2024-12-13 15:58:02 +02:00
Geido
90572be95a
fix(Dashboard): Retain colors when color scheme not set ( #30646 )
2024-11-21 19:58:32 +02:00
3e29777526
fix(Dashboard): Sync/Async Dashboard Screenshot Generation and Default Cache ( #30755 )
...
Co-authored-by: Michael S. Molina <michael.s.molina@gmail.com >
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com >
2024-11-01 11:39:43 +02:00
Geido
d9a1db044a
refactor(Dashboard): Native filters form update endpoint ( #30609 )
2024-10-21 14:11:22 +03:00
Maxime Beauchemin
a849c29288
chore: enable lint PT009 'use regular assert over self.assert.*' ( #30521 )
2024-10-07 13:17:27 -07:00
Elizabeth Thompson
96b0bcfd78
chore: add logging for dashboards/get warnings ( #30365 )
2024-09-27 11:08:04 -07:00
Beto Dealmeida
61c0970968
fix: create permissions on DB import ( #29802 )
2024-08-06 12:09:21 -04:00
Beto Dealmeida
b66c0f8d30
fix: schemas for upload API ( #29604 )
2024-07-16 15:53:25 -04:00
Vitor Avila
33b934cbb3
fix(Tags filter): Filter assets by tag ID ( #29412 )
2024-07-11 12:26:36 -03:00
Edgar Ulloa and Diego Pucci
d89648147f
feat(dashboard): add API endpoints for generating and downloading screenshots ( #29187 )
...
Co-authored-by: Diego Pucci <diegopucci.me@gmail.com >
2024-07-08 12:52:23 +03:00
Jack
a5355d86fc
feat: Dashboard tabs api endpoint ( #27962 )
2024-06-20 18:40:54 +02:00
Eyal Ezer and Eyal Ezer
07b2449bd7
refactor: Unify all json.(loads|dumps) usage to utils.json ( #28702 )
...
Co-authored-by: Eyal Ezer <eyal.ezer@ge.com >
2024-05-28 14:17:41 -07:00
Vitor Avila
0fdb4b7c23
chore(tags): Handle tagging as part of asset update call ( #28570 )
2024-05-28 11:41:31 -04:00
JUST.in DO IT
02478e5b95
feat(dashboard): Add metadata bar to the header ( #27857 )
2024-05-10 10:28:57 -07:00
Maxime Beauchemin
2d63722150
chore: set up ruff as a new linter/formatter ( #28158 )
2024-04-24 17:19:53 -07:00