Maxime Beauchemin
ef4cf2b430
remove --max-fail 1 on integration tests to iterate faster
2025-07-29 22:36:12 -07:00
Maxime Beauchemin
48d8c91b19
feat: migrate examples from Python to YAML format with enhanced CLI
...
Migrates Superset's example data system from Python-based scripts to YAML configuration files, providing a cleaner, more maintainable approach to managing example datasets, charts, and dashboards.
- Converted 9 Python example modules to YAML configurations
- Exported existing examples from database and added as YAML files:
- 11 dashboards (USA Births Names, World Bank's Data, etc.)
- 115 charts
- 25 datasets
- Moved test-specific fixtures to `tests/fixtures/examples/`
- Removed theme_id from dashboard exports for compatibility
- **New command group**: `superset examples` with subcommands:
- `load` - Load example data (replaces `load-examples`)
- `clear-old` - Remove old Python-based examples
- `clear` - Placeholder for future YAML clearing
- `reload` - Clear and reload in one command
- **Backwards compatibility**: `superset load-examples` still works with deprecation warning
- **Safety mechanism**: Detects old examples and preserves them to avoid data loss
- Fixed JSON data loading - examples can now load `.json.gz` files from CDN
- Fixed Docker compose configuration for isolated development
- Fixed webpack WebSocket configuration for different ports
- Import operations now log what's being created vs updated:
- "Creating new dashboard: Sales Dashboard"
- "Updating existing chart: World's Population"
- Provides clear visibility into the import process
- Moved import logging to individual import functions (DRY principle)
- Non-destructive migration approach - no user data is deleted
- Deterministic UUID generation for consistent example data
- Tested migration from old Python examples to new YAML format
- Verified safety mechanism prevents accidental data overwrites
- Confirmed backwards compatibility with deprecated command
- All pre-commit checks pass
- Updated installation docs to use new CLI commands
- Added deprecation notice to UPDATING.md
- Updated development documentation
None - the old `load-examples` command continues to work with a deprecation warning.
For users with existing Python-based examples:
1. Run `superset examples clear-old --confirm` to remove old examples
2. Run `superset examples load` to load new YAML-based examples
2025-07-29 22:23:52 -07:00
Maxime Beauchemin
bf967d6ba4
fix(charts): Fix unquoted 'Others' literal in series limit GROUP BY clause ( #34390 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-07-29 17:36:10 -07:00
Beto Dealmeida
32626ab707
fix: use catalog name on generated queries ( #34360 )
2025-07-29 12:30:46 -04:00
Beto Dealmeida
122bb68e5a
fix: subquery alias in RLS ( #34374 )
2025-07-28 22:58:15 -04:00
Beto Dealmeida
914ce9aa4f
feat: read column metadata ( #34359 )
2025-07-28 22:57:57 -04:00
Maxime Beauchemin
1be2287b3a
feat(timeseries): enhance 'Series Limit' to support grouping the long tail ( #34308 )
2025-07-25 16:26:32 -07:00
Maxime Beauchemin
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
Beto Dealmeida
b794b192d1
fix: return 422 on invalid SQL ( #34303 )
2025-07-24 16:40:56 -04:00
Maxime Beauchemin
3f8472ca7b
chore: move some rules from ruff -> pylint ( #34292 )
2025-07-24 09:40:49 -07:00
LisaHusband
7a1c056374
fix(charting): correctly categorize numeric columns with NULL values ( #34213 )
2025-07-24 15:46:58 +03:00
Michael S. Molina
1e5a4e9bdc
fix: Saved queries list break if one query can't be parsed ( #34289 )
2025-07-24 08:30:04 -03:00
Ahmed Habeeb
43775e9373
fix(sqllab_export): manually encode CSV output to support utf-8-sig ( #34235 )
2025-07-23 18:44:56 -07:00
Maxime Beauchemin
2db8f809ba
fix: proper handling of boolean filters with snowflake ( #34199 )
...
Co-authored-by: Beto Dealmeida <roberto@dealmeida.net >
2025-07-18 12:13:52 -07:00
Maxime Beauchemin
1958df6b83
fix: dataset endpoint /rowlevelsecurity/related/tables doesn't apply filters as expected ( #34192 )
2025-07-17 15:51:03 -07:00
Mehmet Salih Yavuz
16f4516903
chore(Oracle): Update oracle column length to 128 ( #34179 )
2025-07-16 14:58:19 +03:00
Gabriel Torres Ruiz
42d9a78777
feat(theming): Introduce bootstrap-driven Superset theme configurations ( #34144 )
2025-07-15 09:43:08 -07:00
Maxime Beauchemin
c42be77c25
feat(i18n): load language pack asynchronously ( #34119 )
2025-07-14 10:59:29 -07:00
Beto Dealmeida
68b84acd93
feat: improve Doris catalog support ( #34140 )
2025-07-14 12:01:08 -04:00
Richard Fogaca Nienkotter
85034b9748
feat(deck-gl): Enable individual deck.gl layer selection in FilterScope tree ( #33769 )
...
Co-authored-by: richardfn <richard.fogaca@appsilon.com >
Co-authored-by: amaannawab923 <amaannawab923@gmail.com >
2025-07-08 18:37:47 +03:00
Vitor Avila
733f112142
fix: Support metric currency as dict during import ( #34080 )
2025-07-07 14:00:56 -03:00
Đỗ Trọng Hải
1a54b761c1
feat(db): remove Rockset DB support ( #33929 )
2025-06-27 23:12:54 +07:00
Fredrik Hyyrynen
eec563b0b4
fix: add suffix to Drill labels to avoid collision ( #32857 )
...
Co-authored-by: Fredrik Hyyrynen <fredrik.hyyrynen@ngm.se >
Co-authored-by: Evan Rusackas <evan@rusackas.com >
Co-authored-by: pre-commit <pre-commit@users.noreply.github.com >
2025-06-26 11:28:05 -07:00
Vitor Avila
a56d7252c2
fix: Consider default catalog when getting tables and view lists ( #33916 )
2025-06-26 13:55:10 -03:00
Mehmet Salih Yavuz
a13a590796
feat(User Registrations): Migrate user registrations fab view ( #33631 )
2025-06-25 14:26:21 +02:00
Maxime Beauchemin
dd129fa403
feat(theming): land Ant Design v5 overhaul — dynamic themes, real dark mode + massive styling refactor ( #31590 )
...
Co-authored-by: Enzo Martellucci <52219496+EnxDev@users.noreply.github.com >
Co-authored-by: Diego Pucci <diegopucci.me@gmail.com >
Co-authored-by: Mehmet Salih Yavuz <salih.yavuz@proton.me >
Co-authored-by: Geido <60598000+geido@users.noreply.github.com >
Co-authored-by: Alexandru Soare <37236580+alexandrusoare@users.noreply.github.com >
Co-authored-by: Damian Pendrak <dpendrak@gmail.com >
Co-authored-by: Pius Iniobong <67148161+payose@users.noreply.github.com >
Co-authored-by: Enzo Martellucci <enzomartellucci@gmail.com >
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com >
2025-06-20 13:38:58 -07:00
Beto Dealmeida
404f7c1043
feat: initial Dremio sqlglot dialect ( #33847 )
2025-06-20 12:05:45 -07:00
Beto Dealmeida
21d8d57380
fix: select star ( #33763 )
2025-06-13 14:59:52 -04:00
Vitor Avila
86e7139245
fix: Dataset currency ( #33682 )
2025-06-09 22:47:14 -03:00
Le Xich Long
fc7ba060c1
feat(clickhouse): allow dynamic schema ( #32610 )
2025-06-09 16:18:05 -06:00
Kasper Mol
cc3460832f
fix(template_processing): get_filters now works for IS_NULL and IS_NOT_NULL operators ( #33296 )
2025-06-05 00:46:33 -03:00
Beto Dealmeida
edc60914f6
chore: 100% test coverage for SQL parsing ( #33568 )
2025-06-04 22:18:09 -04:00
Vitor Avila
c9518485ba
fix: Do not convert dataset changed_on to UTC ( #33693 )
2025-06-04 22:24:18 -03:00
Beto Dealmeida
a26e1d822a
chore: remove sqlparse ( #33564 )
2025-06-04 19:31:41 -04:00
arafoperata
ff34e3c81e
fix: optimize catalog permission sync when importing dashboards ( #33679 )
2025-06-04 13:21:17 -04:00
Enzo Martellucci
20519158d2
feat(UserInfo): Migrate User Info FAB to React ( #33620 )
2025-06-03 19:24:22 +02:00
Vitor Avila
cacf1e06d6
fix: Update dataset's last modified date from column/metric update ( #33626 )
2025-06-03 12:20:38 -03:00
Adalbert Makarovych
ade85daee2
feat(database): add SingleStore engine specification ( #32887 )
...
Co-authored-by: Adalbert Makarovych <amakarovych0ua@singlestore.com >
Co-authored-by: Evan Rusackas <evan@preset.io >
2025-06-02 11:50:12 -06:00
Pat Buxton
2d26af25c1
feat: Python 3.12 support ( #33434 )
2025-06-02 10:00:37 -07:00
Beto Dealmeida
401ce56fa1
feat: use sqlglot to validate adhoc subquery ( #33560 )
2025-05-30 18:09:19 -04:00
Beto Dealmeida
cf315388f2
feat(sqllab): use sqlglot instead of sqlparse ( #33542 )
2025-05-30 17:08:19 -04:00
Beto Dealmeida
f219dc1794
chore: make DB syntax errors 400 ( #33619 )
2025-05-30 13:04:04 -04:00
Vitor Avila
ed20d2a917
fix(Security): Apply permissions to the AllEntities list/get_objects API endpoint ( #33577 )
2025-05-30 13:39:18 -03:00
Vitor Avila
fdea4e21b0
feat: current_user_rls_rules Jinja macro ( #33614 )
2025-05-29 11:58:40 -03:00
Daniel Vaz Gaspar
a4bb11c755
chore: bump FAB to 4.7.0 ( #33607 )
2025-05-29 08:34:00 +01:00
Beto Dealmeida
ea5a609d0b
feat: implement CVAS/CTAS in sqlglot ( #33525 )
2025-05-28 09:45:59 -04:00
Beto Dealmeida
0abe6eed89
feat: implement RLS in sqlglot ( #33524 )
2025-05-28 09:10:45 -04:00
Beto Dealmeida
e205846845
feat: implement CTEs logic in sqlglot ( #33518 )
2025-05-28 08:38:00 -04:00
Enzo Martellucci
deef923825
feat(Action Logs): Migrate Action Log FAB to React ( #33298 )
2025-05-28 14:08:00 +02:00
Beto Dealmeida
0fa3feb088
chore: remove parse_sql ( #33474 )
2025-05-27 18:03:55 -04:00