# Release Notes for Superset 0.38 ## What's new - [New features](#new-features) - [Bugfixes](#bugfixes) - [Breaking Changes](#breaking-changes) - [Complete Changelog](#complete-changelog) ### New features **DATABASES, DATASETS, QUERIES** [SIP-40] Proposal for Custom Error Messages #9194 ([SIP](https://github.com/apache/superset/issues/9194)) - feat: improve presto query perf (#[11069](https://github.com/apache/superset/pull/11069)) - feat: more specific presto error messages (#[11099](https://github.com/apache/superset/pull/11099)) - feat: refactor error components and add database issue code (#[10473](https://github.com/apache/superset/pull/10473)) - feat: welcome presto to the suite of tested databases (#[10498](https://github.com/apache/superset/pull/10498)) Certification of Data Entities ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/73)) - feat: add certification to metrics (#[10630](https://github.com/apache/superset/pull/10630)) - feat: add extra column to tables and sql_metrics (#[10592](https://github.com/apache/superset/pull/10592)) - feat: bump superset-ui for certified tag (#[10650](https://github.com/apache/superset/pull/10650)) Database CRUD screen refactor/redesign ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/14)) - feat: add/edit database modal form sections UI (#[10745](https://github.com/apache/superset/pull/10745)) - feat: base tabbed modal for new database CRUD UI (#[10668](https://github.com/apache/superset/pull/10668)) Database list view refactor/redesign ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/55)) - feat: database delete warning (#[10800](https://github.com/apache/superset/pull/10800))\ 10800 - feat: filters for database list view (#[10772](https://github.com/apache/superset/pull/10772)) - feat: SIP-34 table list view for databases (#[10705](https://github.com/apache/superset/pull/10705)) Database list view refactor/redesign #55 ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/55)) - feat(api): database schemas migration to new API (#[10436](https://github.com/apache/superset/pull/10436)) - feat(database): POST, PUT, DELETE API endpoints (#[10741](https://github.com/apache/superset/pull/10741)) - feat(databases): test connection api (#[10723](https://github.com/apache/superset/pull/10723)) Datasets CRUD screen refactor/redesign ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/13)) - feat: dataset editor improvements (#[10444](https://github.com/apache/superset/pull/10444))\ 10444 Datasets CRUD screen refactor/redesign #13 ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/13)) - feat(datasource): remove deleted columns and update column type on metadata refresh (#[10619](https://github.com/apache/superset/pull/10619))\ 10619 Datasets list view refactor/redesign #12 ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/12)) - feat: update dataset editor modal (#[10347](https://github.com/apache/superset/pull/10347))\ 10347 - feat(datasets): REST API bulk delete (#[11237](https://github.com/apache/superset/pull/11237)) Saved queries CRUD screen + list view refactor/redesign #15 ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/15)) - feat: CRUD REST API for saved queries (#[10777](https://github.com/apache/superset/pull/10777)) - feat: saved query list actions (#[11109](https://github.com/apache/superset/pull/11109))\ 11109 - feat: saved query list view + sort/filters (#[11005](https://github.com/apache/superset/pull/11005)) - feat: SavedQuery REST API for bulk delete and new API fields (#[10793](https://github.com/apache/superset/pull/10793)) - feat: update saved query backend routing + add savedquery list (#[10922](https://github.com/apache/superset/pull/10922)) - feat(saved_queries): add custom api filter for all string & text fields (#[11031](https://github.com/apache/superset/pull/11031)) Other features - feat: dataset REST API for distinct values (#[10595](https://github.com/apache/superset/pull/10595)) **EXPLORE, CHARTS, DASHBOARDS** [SIP-40] Proposal for Custom Error Messages #9194 ([SIP](https://github.com/apache/superset/issues/9194)) - feat: add download as image button to explore (#[10297](https://github.com/apache/superset/pull/10297))\ 10297 [SIP-34] Proposal to establish a new design direction, system, and process for Superset ([SIP](https://github.com/apache/superset/issues/8976)) - feat: SIP-34 explore save modal (#[10355](https://github.com/apache/superset/pull/10355))\ 10355 Charts list view refactor/redesign ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/47)) - feat(charts): modify custom api filter to include more fields (#[11054](https://github.com/apache/superset/pull/11054)) Echarts integration ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/48)) - feat: add linear color scale to sunburst chart (#[10474](https://github.com/apache/superset/pull/10474))\ 10474 - feat: add optional prophet forecasting functionality to chart data api (#[10324](https://github.com/apache/superset/pull/10324)) - feat(viz): add ECharts Timeseries chart (#[10752](https://github.com/apache/superset/pull/10752))\ 10752 Improvements to cache handling #74 ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/74)) - feat: add ECharts Pie chart (#[10966](https://github.com/apache/superset/pull/10966))\ 10966 - feat: implement cache invalidation api (#[10761](https://github.com/apache/superset/pull/10761)) - feat: Adding extra_filters to warm_up_cache (#[10675](https://github.com/apache/superset/pull/10675)) [SIP-34] Proposal to establish a new design direction, system, and process for Superset ([SIP](https://github.com/apache/superset/issues/8976)) - feat: add favorite star to dashboard and chart lists (#[10510](https://github.com/apache/superset/pull/10510))\ 10510 - feat: use svg for checkbox component (#[10799](https://github.com/apache/superset/pull/10799))\ 10799 Other features - feat(table-viz): translation and metric column header align right (#[10549](https://github.com/apache/superset/pull/10549)) - feat: adding dashboard toggle fullscreen button (#[10840](https://github.com/apache/superset/pull/10840))\ 10840 - feat: enable ETag header for dashboard GET requests (#[10963](https://github.com/apache/superset/pull/10963)) - feat: move ace-editor and mathjs to async modules (#[10837](https://github.com/apache/superset/pull/10837)) - feat: server side dashboard css for less repaint (#[10850](https://github.com/apache/superset/pull/10850)) - feat: use shorten url in standalone iframe (#[10651](https://github.com/apache/superset/pull/10651)) **SQL LAB** - feat: Adding table comment and columns comment for SQLLab (#[10844](https://github.com/apache/superset/pull/10844)) **SYSTEM, OTHER** - feat: add TXT as default CSV extension (#[10371](https://github.com/apache/superset/pull/10371)) [SIP-34] Proposal to establish a new design direction, system, and process for Superset ([SIP](https://github.com/apache/superset/issues/8976)) - feat: card view bulk select (#[10607](https://github.com/apache/superset/pull/10607)) - feat: custom favorite filter for dashboards, charts and saved queries (#[11083](https://github.com/apache/superset/pull/11083)) - feat: SIP-34 card/grid views for dashboards and charts (#[10526](https://github.com/apache/superset/pull/10526)) - feat(listviews): SIP-34 Bulk Select (#[10298](https://github.com/apache/superset/pull/10298)) - feat(listviews): SIP-34 filters for charts, dashboards, datasets (#[10335](https://github.com/apache/superset/pull/10335)) [SIP-40] Proposal for Custom Error Messages #9194 ([SIP](https://github.com/apache/superset/issues/9194)) - feat: update timeout error UX (#[10274](https://github.com/apache/superset/pull/10274)) Alerts (send notification when a condition is met) ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/54)) - feat: add test email functionality to SQL-based email alerts (#[10476](https://github.com/apache/superset/pull/10476)) - feat: refractored SQL-based alerting framework (#[10605](https://github.com/apache/superset/pull/10605)) [SIP-34] Proposal to establish a new design direction, system, and process for Superset ([SIP](https://github.com/apache/superset/issues/8976)) - feat: adding all icons from the design system to the codebase (#[11033](https://github.com/apache/superset/pull/11033)) - feat: storybook for Icon component (#[10515](https://github.com/apache/superset/pull/10515)) [SIP-48] Using Ant Design as our primary component library ([SIP](https://github.com/apache/superset/issues/10254)) - feat: Add antd to the codebase (#[10508](https://github.com/apache/superset/pull/10508)) Alerts (send notification when a condition is met) ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/54)) - feat: updated email format for SQL-based email alerts (#[10512](https://github.com/apache/superset/pull/10512)) Superset Component library - Phase 1 ([Roadmap](https://github.com/apache-superset/superset-roadmap/issues/23)) - feat: adding Storybook to Superset (#[10383](https://github.com/apache/superset/pull/10383)) Other - feat: Allow tests files in /src (plus Label component tests) (#[10634](https://github.com/apache/superset/pull/10634)) - feat: Getting fancier with Storybook (#[10647](https://github.com/apache/superset/pull/10647)) ### Bugfixes - fix(permissions): alpha role has all full features (#[10241](https://github.com/apache/superset/pull/10241)) - fix: broken glyphicons used in react-json-schema (#[10267](https://github.com/apache/superset/pull/10267)) - fix: add additional ui tweaks (#[10275](https://github.com/apache/superset/pull/10275)) - fix: saving custom CSS correctly (#[10289](https://github.com/apache/superset/pull/10289)) - fix: fetch datasets list after dataset created successfully (#[10290](https://github.com/apache/superset/pull/10290)) - fix: update community Slack link (#[10360](https://github.com/apache/superset/pull/10360)) - fix: allow creating table option and remove schema requirement in dataset add modal (#[10369](https://github.com/apache/superset/pull/10369)) - fix(datasets): sort and humanized modified by (#[10380](https://github.com/apache/superset/pull/10380)) - fix(api): fixes perf on charts and introduces sorting by database on datasets (#[10392](https://github.com/apache/superset/pull/10392)) - fix(api): fixes openapi spec errors and adds a test to validate all spec (#[10393](https://github.com/apache/superset/pull/10393)) - fix(charts): disable CSRF for chart data endpoint (#[10397](https://github.com/apache/superset/pull/10397)) - fix: dataset list filters bug (#[10398](https://github.com/apache/superset/pull/10398)) - fix: remove FAB rendered menu in favor of react based one (#[10401](https://github.com/apache/superset/pull/10401)) - fix: show label for filters in filter box in explore (#[10412](https://github.com/apache/superset/pull/10412)) - fix: Implement updates to SQL-based email alerts (#[10454](https://github.com/apache/superset/pull/10454)) - fix(presto): Handle ROW data stored as string (#[10456](https://github.com/apache/superset/pull/10456)) - fix: change "add new slice" copy to "add new chart" (#[10457](https://github.com/apache/superset/pull/10457)) - fix(sqllab): button width isn't wide enough for 'Run Selection' (#[10461](https://github.com/apache/superset/pull/10461)) - fix: timeout error message (#[10478](https://github.com/apache/superset/pull/10478)) - fix: enforce mandatory chart name on save and edit (#[10482](https://github.com/apache/superset/pull/10482)) - fix: More tweaks needed after adding Doctype tag (#[10504](https://github.com/apache/superset/pull/10504)) - fix: explore panel missing padding (#[10505](https://github.com/apache/superset/pull/10505)) - fix: refactored SQL-based alerts to not pass sqlalchemy objects as args (#[10506](https://github.com/apache/superset/pull/10506)) - fix(sqllab): Handle long table names in SQL Lab (#[10518](https://github.com/apache/superset/pull/10518)) - fix: make SQL-based alert email links user friendly (#[10519](https://github.com/apache/superset/pull/10519)) - fix(dashboard): changing the chart title, except not (#[10527](https://github.com/apache/superset/pull/10527)) - fix: misaligned LimitControl buttons and port jsx->tsx (#[10529](https://github.com/apache/superset/pull/10529)) - fix: Resolves #10535 (#[10536](https://github.com/apache/superset/pull/10536)) - fix: add retry to SQL-based alerting celery task (#[10542](https://github.com/apache/superset/pull/10542)) - fix: Updating Dockerfile to work with updated python requirements. (#[10550](https://github.com/apache/superset/pull/10550)) - fix(thumbnails): missing field, logging and new config var (#[10562](https://github.com/apache/superset/pull/10562)) - fix: add translate for dropdown menu (#[10573](https://github.com/apache/superset/pull/10573)) - fix: error message modal overflow (#[10580](https://github.com/apache/superset/pull/10580)) - fix: add None checking to cast_to_num (#[10584](https://github.com/apache/superset/pull/10584)) - fix: removing unsupported modal sizes (#[10625](https://github.com/apache/superset/pull/10625)) - fix: remove duplicated params and cache_timeout from list_columns; add viz_type to list_columns (#[10643](https://github.com/apache/superset/pull/10643)) - fix: controls scroll issue (#[10644](https://github.com/apache/superset/pull/10644)) - fix(db_engine_specs): improve Presto column type matching (#[10658](https://github.com/apache/superset/pull/10658)) - fix(db_engine_specs): mysql longtext type should not be numeric (#[10661](https://github.com/apache/superset/pull/10661)) - fix: change public role like gamma procedure (#[10674](https://github.com/apache/superset/pull/10674)) - fix(sqllab): log exceptions caused by the user as debug and not error (#[10676](https://github.com/apache/superset/pull/10676)) - fix: only call signal if executing on the main thread (#[10677](https://github.com/apache/superset/pull/10677)) - fix: layout flexiness (#[10681](https://github.com/apache/superset/pull/10681)) - fix: SubMenu css (#[10682](https://github.com/apache/superset/pull/10682)) - fix: dashboard extra filters (#[10692](https://github.com/apache/superset/pull/10692)) - fix: shorten url with extra request parameters (#[10693](https://github.com/apache/superset/pull/10693)) - fix: card view failed cypress tests (#[10699](https://github.com/apache/superset/pull/10699)) - fix: deprecation warnings due to invalid escape sequences. (#[10710](https://github.com/apache/superset/pull/10710)) - fix: move menu reorg logic from crud app into Menu component (#[10717](https://github.com/apache/superset/pull/10717)) - fix: local docker deployment (#[10738](https://github.com/apache/superset/pull/10738)) - Fix: Rejiggering some dependencies, trying to get CI to pass (#[10747](https://github.com/apache/superset/pull/10747)) - fix(presto): default unknown types to string type (#[10753](https://github.com/apache/superset/pull/10753)) - fix: add validator information to email/slack alerts (#[10762](https://github.com/apache/superset/pull/10762)) - fix: re-installing local superset in cache image (#[10766](https://github.com/apache/superset/pull/10766)) - fix: can not type `0.05` in `TextControl` (#[10778](https://github.com/apache/superset/pull/10778)) - fix: MVC show saved query (#[10781](https://github.com/apache/superset/pull/10781)) - fix: disable domain sharding on explore view (#[10787](https://github.com/apache/superset/pull/10787)) - fix: Database API missing allow none on fields (#[10795](https://github.com/apache/superset/pull/10795)) - fix: bump node version on Dockerfile to be on par with docker-compose (#[10813](https://github.com/apache/superset/pull/10813)) - fix(tests): export dataset tests fails with presto (#[10818](https://github.com/apache/superset/pull/10818)) - fix: use nullpool in the celery workers (#[10819](https://github.com/apache/superset/pull/10819)) - fix: Making the database read-only (#[10823](https://github.com/apache/superset/pull/10823)) - fix(databases): test connection api endpoint (#[10824](https://github.com/apache/superset/pull/10824)) - fix: update the time filter for 'Last Year' option in explore (#[10829](https://github.com/apache/superset/pull/10829)) - fix(test): missing auth on tests (#[10842](https://github.com/apache/superset/pull/10842)) - fix(cypress): wait for filterValues request (#[10884](https://github.com/apache/superset/pull/10884)) - fix: superset alerting misc fixes (#[10891](https://github.com/apache/superset/pull/10891)) - fix(cypress): prevent CI failure on codecov failure (#[10892](https://github.com/apache/superset/pull/10892)) - fix: front end CI tests and test runner (#[10897](https://github.com/apache/superset/pull/10897)) - fix: babel script broken by format string (#[10902](https://github.com/apache/superset/pull/10902)) - fix: several disabled pylint rules in models/helpers.py (#[10909](https://github.com/apache/superset/pull/10909)) - fix: spelling in docs homepage (#[10912](https://github.com/apache/superset/pull/10912)) - fix: address all disabled pylint checks in charts/api.py (#[10932](https://github.com/apache/superset/pull/10932)) - fix: use nullpool even for user lookup in the celery (#[10938](https://github.com/apache/superset/pull/10938)) - fix: update pylint disabled checks in common/query_context.py (#[10941](https://github.com/apache/superset/pull/10941)) - fix: setting specific exceptions common/query_context.py (#[10942](https://github.com/apache/superset/pull/10942)) - fix: re-enabling several globally disabled lint rules (#[10957](https://github.com/apache/superset/pull/10957)) - fix: removed disabled lint rule `too-many-locals` in connectors/base/models.py (#[10958](https://github.com/apache/superset/pull/10958)) - fix: typo in prefer typescript (#[10959](https://github.com/apache/superset/pull/10959)) - fix: pylint checks in connectors/sqla/models.py (#[10974](https://github.com/apache/superset/pull/10974)) - fix: pylint disabled rules in dashboard/api.py (#[10976](https://github.com/apache/superset/pull/10976)) - fix: changes a pylint check in dashboard module (#[10978](https://github.com/apache/superset/pull/10978)) - fix: changed disabled rules in datasets module (#[10979](https://github.com/apache/superset/pull/10979)) - fix: Add Item Overflow on Dataset Editor (#[10983](https://github.com/apache/superset/pull/10983)) - fix: enable pylint rules in db_engine_specs module (#[10998](https://github.com/apache/superset/pull/10998)) - fix: enable several pylint rules partially in db_engines_specs module (#[11000](https://github.com/apache/superset/pull/11000)) - fix: unbreak ci (#[11003](https://github.com/apache/superset/pull/11003)) - fix: timer component, fixes #10849, closes #11002 (#[11004](https://github.com/apache/superset/pull/11004)) - fix: menu shows a 0 when there are not settings (#[11009](https://github.com/apache/superset/pull/11009)) - fix: reenable pylint rule `unused-import` in charts and connectors modules (#[11014](https://github.com/apache/superset/pull/11014)) - fix: query search low privileged user search access denied (#[11017](https://github.com/apache/superset/pull/11017)) - fix(api): unable to delete virtual dataset, wrong permission name (#[11019](https://github.com/apache/superset/pull/11019)) - fix: [dashboard] should not show edit button when user has no edit permit (#[11024](https://github.com/apache/superset/pull/11024)) - fix: dashboard edit button (again) (#[11029](https://github.com/apache/superset/pull/11029)) - fix: sql lab autocomplete width (#[11063](https://github.com/apache/superset/pull/11063)) - fix: fix table existence validation function (#[11066](https://github.com/apache/superset/pull/11066)) - fix: database list checkboxes (#[11068](https://github.com/apache/superset/pull/11068)) - fix: Adding timeout to flaky cypress test, to wait for animation to complete (#[11074](https://github.com/apache/superset/pull/11074)) - fix: surface connection error messages on the client (#[11077](https://github.com/apache/superset/pull/11077)) - fix(jest): using UTC mock date (#[11079](https://github.com/apache/superset/pull/11079)) - fix: double scroll bars on dataset editor (#[11095](https://github.com/apache/superset/pull/11095)) - fix: echarts timeseries groupby (#[11103](https://github.com/apache/superset/pull/11103)) - fix: Disabling timezone of dataframe before passing Prophet (#[11107](https://github.com/apache/superset/pull/11107)) - fix(chart-data-api): ignore missing filters (#[11112](https://github.com/apache/superset/pull/11112)) - fix: alembic migration error msg trying to delete constraint on tables (#[11115](https://github.com/apache/superset/pull/11115)) - fix: remove extra flash import (#[11121](https://github.com/apache/superset/pull/11121)) - fix: Revert "Replace reactable with DataTable from superset-ui in QueryTable (#10981)" (#[11125](https://github.com/apache/superset/pull/11125)) - fix: SpatialControl popover won't open (#[11127](https://github.com/apache/superset/pull/11127)) - fix: Alembic migration 18532d70ab98 (#[11136](https://github.com/apache/superset/pull/11136)) - fix(examples): missing expressions in birth_names (#[11141](https://github.com/apache/superset/pull/11141)) - fix: Fix Time Column dropdown for date filter (#[11149](https://github.com/apache/superset/pull/11149)) - fix(dataset): update user list endpoint (#[11221](https://github.com/apache/superset/pull/11221)) - fix(crud): set default extra value (#[11262](https://github.com/apache/superset/pull/11262)) - fix(sqla): allow 'unknown' type queries in explore view (#[11365](https://github.com/apache/superset/pull/11365)) - fix: prior npm font source had a glitch (#[11724](https://github.com/apache/superset/pull/11724)) ## Breaking Changes [List of backwards incompatible changes](https://github.com/apache/superset/blob/master/UPDATING.md#0380) ## Complete Changelog For the complete changelog please see [apache/superset/CHANGELOG.md](https://github.com/apache/superset/blob/master/CHANGELOG.md)