Superset v0.37.0 Release Notes

Release Date: 2020-08-01 // over 3 years ago
    • #10450 fix: excel sheet upload is not working (#10450) (@pphszx)
    • ๐Ÿ‘ #10389 feat: support non-numeric columns in pivot table (#10389) (@villebro)
    • #10432 fix(dashboard): chart rerender when switching tabs (#10432) (@ktmud)
    • #10421 fix: incorrect filter operator emitted by Filter Box (#10421) (@villebro)
    • #10400 fix: bump pivot-table and rose (#10400) (@villebro)
    • #10382 fix: treemap template literal (#10382) (@villebro)
    • #10344 fix: group by with timestamp granularity (#10344) (@dpgaspar)
    • #10340 fix: modified by column on charts and dashboards (#10340) (@dpgaspar)
    • #10359 fix: extra filters for chart data endpoint (#10359) (@villebro)
    • ๐Ÿ“Œ #10345 Pin slack client, breaking change (#10345) (@bkyryliuk)
    • #10336 fix: make __time an ok column name in SQL Lab (#10336) (@villebro)
    • #10325 fix(table-viz): value "undefined" for column.name (#10325) (@ktmud)
    • #10321 fix: humanised changed on UTC on dashboards and charts (#10321) (@dpgaspar)
    • #10317 chore: type welcome (#10317) (@etr2460)
    • #10278 chore: add typing to more sqllab components (#10278) (@etr2460)
    • #10282 chore: add typing to profile (#10282) (@etr2460)
    • #10310 fix: Bump FAB to 3.0.1 fix superset init (#10310) (@dpgaspar)
    • #10313 fix: leave null timestamp unformatted in view results table (#10313) (@villebro)
    • #10312 fix: fix csv and query result type and QueryObject schema (#10312) (@villebro)
    • #10300 fix(chart-data-api): improve chart data endpoint errors (#10300) (@villebro)
    • 0๏ธโƒฃ #10293 fix(table-viz): table chart time column should use default (#10293) (@ktmud)
    • #10299 fix(chart-data-api): case insensitive evaluation of filter op (#10299) (@villebro)
    • ๐Ÿ“š #10292 chore: improve release documentation (#10292) (@villebro)
    • #10281 logo gets the vertically-centered flexbox treatment in jinja template (#10281) (@rusackas)
    • ๐Ÿ’… #10178 style: new toast design closer to SIP-34 (#10178) (@lilykuang)
    • โšก๏ธ #10258 feat: update delete modal for dataset (#10258) (@lilykuang)
    • โšก๏ธ #10284 fix(explore): edit datasource does not update control states (#10284) (@ktmud)
    • #10279 chore: Releasing SQL Lab Celery results (#10279) (@john-bodley)
    • #10280 chore: Bumping Celery (#10280) (@john-bodley)
    • #10286 feat: add contribution operation and fix cache_key bug (#10286) (@villebro)
    • #10283 fix(explore): 'Edit Datasource' is missing from btn-dropdown (#10283) (@mistercrunch)
    • #10277 fix: deckgl dimension select missing options (#10277) (@ktmud)
    • ๐Ÿšš #10276 docs(fix): /swaggerview/v1 has moved to /swagger/v1 (#10276) (@mistercrunch)
    • #10273 fix(csv upload): hive params typo (#10273) (@serenajiang)
    • #10268 feat: show formatted dates instead of epoch on results (#10268) (@villebro)
    • ๐Ÿ›  #10269 fix: Fixed bug for issue #9967 (#10269) (@Nj-kol)
    • #10220 fix: dashboard endpoint sig changed (#10220) (@dpgaspar)
    • โšก๏ธ #10264 fix: optimize mapStateToProps for chart controls (#10264) (@ktmud)
    • #10263 feat: revised icons (#10263) (@rusackas)
    • #10262 fix: issue in getting filter_box config (#10262) (@graceguo-supercat)
    • #10259 chore: nixing requiresTime (#10259) (@rusackas)
    • 0๏ธโƒฃ #10260 [fix] disable search all options by default (#10260) (@graceguo-supercat)
    • #10257 feat: minor reorder SQL Lab Tab controls (#10257) (@graceguo-supercat)
    • #10255 feat(chart-data-api): make pivoted columns flattenable (#10255) (@villebro)
    • โšก๏ธ #10253 docs: update upgrading for FAB3 OAuth change (#10253) (@dpgaspar)
    • #10252 fix: datasets related objects, apply filter and openapi spec (#10252) (@dpgaspar)
    • #10250 fix(table-viz): JS error when sort time column (#10250) (@ktmud)
    • #10210 feat: Typeahead searchable filter_box for dashboard (#10210) (@graceguo-supercat)
    • #9964 feat(api): bump marshmallow and FAB to version 3 (#9964) (@dpgaspar)
    • #10248 chore: Cleaning up types and names for SQLA models (#10248) (@john-bodley)
    • #10237 chore: Revised logo (new color), w/CSS for vert alignment (#10237) (@rusackas)
    • #10235 feat: dataset api endpoint for charts and dashboards count (#10235) (@lilykuang)
    • ๐Ÿ‘ #10208 feat: support nulls in the csv uploads (#10208) (@bkyryliuk)
    • #9944 feat: Alerts! allowing users to set SQL-based email alerts with screenshots (#9944) (@mistercrunch)
    • โฌ‡๏ธ #10165 fix: downgrade sqlparse and add unit test (#10165) (@bkyryliuk)
    • ๐Ÿ›ฐ #10243 feat: support new errors payload in SQL Lab (#10243) (@etr2460)
    • #10118 feat: add database dropdown to dashboard import (#10118) (@mistercrunch)
    • ๐Ÿ”จ #10146 refactor: Using self.get_session in security manager (#10146) (@john-bodley)
    • โšก๏ธ #10197 [log] Updating form-data logic (#10197) (@john-bodley)
    • #10233 chore: Deprecating ENABLE_FLASK_COMPRESS (#10233) (@john-bodley)
    • ๐Ÿณ #10236 Removing node_modules volume in docker-compose.yml (#10236) (@craig-rueda)
    • #9825 Upload excel (#9825) (@blcksrx)
    • ๐Ÿšš #10222 fix: Remove double pickling for cached payloads (#10222) (@john-bodley)
    • #10234 fix(table-viz): format non-numeric metrics (#10234) (@ktmud)
    • #10226 chore: type ResultSet.tsx (#10226) (@etr2460)
    • #10223 fix(listview): use disableSortBy to disable sorting in table columns (#10223) (@nytai)
    • โšก๏ธ #10221 Update README.md (#10221) (@ceohockey60)
    • #10225 fix(table-vis): bump to v0.14.6 to fix missing anchor links (#10225) (@ktmud)
    • โšก๏ธ #10224 fix: chart validation error not cleared on control value update (#10224) (@ktmud)
    • ๐Ÿ‘ #10219 fix: better backward compatibility for table viz (#10219) (@ktmud)
    • ๐Ÿš€ #10192 docs: update release instructions for Github releases (#10192) (@etr2460)
    • ๐Ÿ“„ #10209 docs: added slack community guidelines (#10209) (@srinify)
    • #10211 fix: tooltips on nvd3 charts rendering in the wrong location (#10211) (@etr2460)
    • ๐Ÿ— #10206 build: enable Cypress tests for visualizations (#10206) (@ktmud)
    • #10205 fix: datatable dependencies for pivot-table in dev (#10205) (@ktmud)
    • ๐Ÿ”ง #10191 feat: add configuration for Presto cursor poll interval (#10191) (@etr2460)
    • #10195 s/assertEqual/assertEquals (#10195) (@bkyryliuk)
    • โœ… #10177 feat: Switch from nosetest to pytest (#10177) (@bkyryliuk)
    • #10174 added explore database for ctas/cvas (#10174) (@JasonD28)
    • ๐Ÿ— #10170 build: enable typescript for cypress (#10170) (@ktmud)
    • โšก๏ธ #10188 update to last pyathena >= 1.10.8, to fix athena CSV upload (#10188) (@thibault-ketterer)
    • #10187 fix: make time grain nullable in chart data endpoint (#10187) (@villebro)
    • #10172 fix: make auth for hive optional (#10172) (@0xBADBAC0N)
    • #10113 feat(viz): add query mode switch to table chart (#10113) (@ktmud)
    • ๐Ÿ”จ #10180 refactor: better naming for config flags (#10180) (@nytai)
    • #10179 fix: row count container alignment (#10179) (@etr2460)
    • #10175 Break some static methods out of superset.views.core.Superset (#10175) (@willbarrett)
    • โšก๏ธ #10155 chore: Updating UPDATING.md (#10155) (@john-bodley)
    • ๐Ÿ’… #10121 style: bring new SIP-34 palettes in controls (#10121) (@mistercrunch)
    • ๐Ÿ”ง #10164 feat: Added configuration to SQL Lab results "Explore" button (#10164) (@JasonD28)
    • #9210 Add maximize and minimize feature to charts (#9210) (@oashton)
    • ๐Ÿ”จ #10120 refactor: Fix lint on superset/utils/core.py (#10120) (@willbarrett)
    • #10171 fix: return slice owners for /user_slices ep (#10171) (@villebro)
    • ๐Ÿ— #10161 build: dont prefer ts for cypress tests (#10161) (@ktmud)
    • โฌ†๏ธ #10158 build: upgrade Cypress and re-enable visualization tests (#10158) (@ktmud)
    • #10128 fix: [search query view] edit link is broken (#10128) (@mistercrunch)
    • ๐Ÿ”จ #10106 refactor: Re-enable pylint on 5 files (#10106) (@willbarrett)
    • #10135 fix: implement legacy druid dashboard import (#10135) (@villebro)
    • #10160 feat: Add new timegrains and convert_dttm to Druid engine spec (#10160) (@villebro)
    • ๐Ÿ’… #10157 refactor: import emotion-theming methods from @superset-ui/style (#10157) (@ktmud)
    • ๐Ÿ”จ #10124 refactor: Re-enable lint for 3 files (#10124) (@willbarrett)
    • ๐Ÿ›  #10105 fix: Loading overlay bugfix and cleanup (#10105) (@rusackas)
    • โœ… #10154 fix: Fixed Attribute Error when running core_tests.py (#10154) (@JasonD28)
    • #10156 Fix alembic migrations order (#10156) (@bkyryliuk)
    • ๐Ÿ”’ #10130 fix(security): dbs/clusters perm (#10130) (@john-bodley)
    • #9794 Implement create view as functionality (#9794) (@bkyryliuk)
    • โœ… #10148 fix: refine shouldUseLegacyApi and add tests (#10148) (@villebro)
    • #10143 fix: FilterBox JS when no results (#10143) (@ktmud)
    • #10147 Fix CTAS explore flow (#10147) (@bkyryliuk)
    • โšก๏ธ #10034 chore(security): Updating assert logic (#10034) (@john-bodley)
    • ๐Ÿ’… #10094 style: listviews closer to SIP-34 (#10094) (@nytai)
    • #10104 feat: dataset add modal (#10104) (@lilykuang)
    • #10138 Break down Superset 101 Getting Started content (#10138) (@ceohockey60)
    • ๐Ÿ’ป #10112 chore: bump superset-ui to v0.14.1 (#10112) (@ktmud)
    • #10114 fix: dashboard filter scope bug (#10114) (@graceguo-supercat)
    • ๐ŸŒฒ #10080 [logging] add selected tab name into perf logging (#10080) (@graceguo-supercat)
    • #10127 chore: type src/addSlice (#10127) (@etr2460)
    • #10129 chore: fix add datasource help string (#10129) (@etr2460)
    • #10131 chore: extract translateable strings (#10131) (@etr2460)
    • #10117 chore: Bump sqlalchemy-utils and cachelib and refresh requirements.txt (#10117) (@villebro)
    • ๐Ÿ”’ #9751 feat: Add multiple table filters for Row Level Security (#9751) (@axelet)
    • ๐ŸŽ #10111 perf(datasets): improve datasets API performance for attr kind (#10111) (@dpgaspar)
    • ๐Ÿ’… #10123 style: replace broken glyphs with font-awesome (#10123) (@mistercrunch)
    • #10122 Add Nielsen to users list (#10122) (@amitNielsen)
    • #10119 chore(mypy): Fixing can_access_database types (#10119) (@john-bodley)
    • #10115 fix: dashboard should not add extra_filters onto chart annotation (#10115) (@graceguo-supercat)
    • #10092 fix: Visualization settings were lost when editing a datasource from Explore (#10092) (@willbarrett)
    • #10073 chore: type FilterableTable (#10073) (@etr2460)
    • ๐Ÿ’… #10056 style: push bootstrap theme towards SIP-34 styles (#10056) (@mistercrunch)
    • โฌ†๏ธ #10101 chore: Upgrade pylint to 2.5.3 and fix most new rules (#10101) (@willbarrett)
    • ๐Ÿšš #10077 chore(metricoption): remove metricoption and columntypelable dependency (#10077) (@pkdotson)
    • ๐Ÿ’… #10090 style: Change logo color to new branding (#10090) (@willbarrett)
    • #10035 fix: adds pagination/infinite scroll to owners select in DashboardList and ChartList (#10035) (@nytai)
    • ๐Ÿ”ง #9444 feat: implement dttm column configuration through db extra config (#9444) (@bkyryliuk)
    • ๐Ÿ”จ #10078 refactor: Break up superset/views/core.py (#10078) (@willbarrett)
    • #10068 chore: type src/dashboard/util/charts (#10068) (@etr2460)
    • #10076 fix(sqllab): table refresh API endpoint (#10076) (@ktmud)
    • #9810 feat: superset report slack integration (#9810) (@bkyryliuk)
    • ๐Ÿ™‹ #10071 docs: FAQ entry for 'Does Superset have an API' (#10071) (@mistercrunch)
    • #10079 fix: Ensuring queries route accepts float or int (#10079) (@john-bodley)
    • #10075 add GrowthSimple to list of users on readme (#10075) (@AnimeshAgrawal)
    • #10074 other: add TypeScript tracker generation script (#10074) (@etr2460)
    • #10043 feat: add more columns and icons to dataset listview (#10043) (@nytai)
    • ๐Ÿ’ป #10059 chore: bumping superset-ui theme version (#10059) (@rusackas)
    • ๐Ÿ“œ #10070 fix: use custom int parsing over flask int parsing in sqllab queries endpoint (#10070) (@nytai)
    • โšก๏ธ #10069 Update prefer_typescript.yml (#10069) (@etr2460)
    • ๐Ÿ— #10062 fix: chart export fails when buildQuery not present (#10062) (@villebro)
    • #10061 fix: caching on viz with relative time ranges and time compare (#10061) (@etr2460)
    • ๐Ÿ“„ #10065 docs: Add DouroECI to list of users on readme (#10065) (@nunohelibeires)
    • #10060 fix: dashboard export raises schema issues (#10060) (@mistercrunch)
    • #10041 feat: owners profile icon on dataset list view (#10041) (@lilykuang)
    • #10037 fix: native annotations (#10037) (@villebro)
    • #10046 fix: bump pydruid version (#10046) (@villebro)
    • ๐Ÿ— #10048 feat: add deafult buildQuery for V1 chart data requests (#10048) (@villebro)
    • ๐ŸŒฒ #10042 other: [logging] add dashboard is_published into perf logging (#10042) (@graceguo-supercat)
    • ๐Ÿ”’ #10031 chore(security): Renaming access methods (#10031) (@john-bodley)
    • #10030 chore(security): Renaming schemas_accessible_by_user (#10030) (@john-bodley)
    • ๐Ÿ”’ #10039 fix(security): can_access with None crashes on builtin roles (#10039) (@dpgaspar)
    • ๐Ÿ‘ #9971 [csv upload][hive] support other delimiters (#9971) (@serenajiang)
    • #10036 Fix chart annotation source type showing perpetual loading when re-selecting the same value. (#10036) (@nruhe)
    • #10033 fix: Resolves a regression from #9939 (#10033) (@john-bodley)
    • #10014 fix: bump pydruid to 0.6.0 (#10014) (@karen-pal)
    • #10025 feat: Add owners and physical/virtual status to Datasets API list endpoint (#10025) (@willbarrett)
    • #9982 feat: implement secondary navigation for datasets (#9982) (@lilykuang)
    • #9764 feat: add replace option to hive csv upload (#9764) (@etr2460)
    • ๐Ÿšฉ #9859 fix: raise error in sqllab when using reserved column name (#9859) (@villebro)
    • ๐Ÿ’ป #10018 chore: bump superset-ui to 0.13.27 (#10018) (@villebro)
    • ๐Ÿ”จ #9673 refactor(sql): optimize sql query parser (#9673) (@lilykuang)
    • ๐Ÿšš #9997 chore: remove markup from viz.py (#9997) (@villebro)
    • #10003 fix(SankeyViz): enforce source/target order (#10003) (@serenajiang)
    • #10021 fix: flaky test_copy_dash test in dashboard_tests.py (#10021) (@villebro)
    • ๐Ÿ‘ #10010 feat: add support for query offset (#10010) (@villebro)
    • #10015 Quick fix for bad regex in GH Workflow (#10015) (@craig-rueda)
    • ๐Ÿ’… #10001 style(mypy): Spit-and-polish pass (#10001) (@john-bodley)
    • ๐ŸŒฒ #10000 fix: [logging] fix render chart error type (#10000) (@graceguo-supercat)
    • ๐Ÿ’… #9939 style(mypy): Enforcing typing for superset.views (#9939) (@john-bodley)
    • ๐Ÿšš #9975 feat: finalize Word Cloud move to new chart data endpoint (#9975) (@villebro)
    • ๐Ÿšš #9989 fix: remove -1,-1 from owners request in charts, dashboards list and propertiesModal (#9989) (@nytai)
    • #9965 fix(api): Wrong parameter name on database openapi spec (#9965) (@dpgaspar)
    • ๐Ÿ“„ #9960 docs: add ELMO Cloud HR & Payroll to list of users on readme (#9960) (@rayzor65)
    • #9934 fix: display python_date_format in react views as well (#9934) (@bkyryliuk)
    • #9784 fix: fetch all owners for dashboard, chart listview filters and properties modal (#9784) (@nytai)
    • ๐Ÿ’… #9943 style(mypy): Enforcing typing for superset (#9943) (@john-bodley)
    • โš  #9886 feat: [dashboard] notification and warning for auto force refresh (#9886) (@graceguo-supercat)
    • #9973 fix(mypy): Resolves regression introducted in #9824 (#9973) (@john-bodley)
    • โž• #9456 fix #8302, disabling save button when can_add: false, can_overwrite: false (#9456) (@micimize)
    • #9954 fix: pinot select query logic (#9954) (@fx19880617)
    • #9888 feat: make CRUD annotations inline (#9888) (@mistercrunch)
    • โช #9969 Revert "[caching] Using request context rather than globals" (#9969) (@john-bodley)
    • ๐Ÿ’… #9970 style(mypy): Fix memoize watch type (#9970) (@john-bodley)
    • #9962 feat: implement new version of word cloud (#9962) (@villebro)
    • #9903 feat: expand new chart data endpoint coverage (#9903) (@villebro)
    • ๐Ÿ— #9901 build: add workflow preferring TypeScript files (#9901) (@etr2460)
    • #9952 [filter_box] disable instant_filtering by defult (#9952) (@graceguo-supercat)
    • #9940 fix: FilterBox Select should be Creatable (#9940) (@ktmud)
    • #9905 [mypy] Enforcing typing for superset.utils (#9905) (@john-bodley)
    • ๐Ÿ’… #9912 style(mypy): Enforcing mypy typing for views.chart (#9912) (@john-bodley)
    • ๐Ÿ’… #9920 style(mypy): Enforcing typing for views.database (#9920) (@john-bodley)
    • ๐Ÿ’… #9921 style(mypy): Enforcing typing for views.dashboard (#9921) (@john-bodley)
    • #9933 fix(react-select): FilterBox focus event and adhoc filter popup height (#9933) (@ktmud)
    • โช #9908 Revert "feat: bump superset-ui and implement queryFields in formData (#9908)" (#9931) (@villebro)
    • โœ… #9926 feat: bump sinon to latest (#9926) (@villebro)
    • #9915 fix: annotation layer json (#9915) (@etr2460)
    • #9890 css: beautify roles CRUD (#9890) (@mistercrunch)
    • ๐Ÿ’… #9919 fix: bump nvd3 plugin for annotation styles (#9919) (@etr2460)
    • โœ… #9916 feat: paired t testchart control migration (#9916) (@pkdotson)
    • ๐Ÿšš #9851 feat: remove para controls (#9851) (@pkdotson)
    • ๐Ÿ’ป #9908 feat: bump superset-ui and implement queryFields in formData (#9908) (@villebro)
    • #9891 fix: [dashboard] should not trigger chart refresh when filter not applicable (#9891) (@graceguo-supercat)
    • ๐Ÿ’… #9824 style: enforcing mypy typing for connectors (#9824) (@john-bodley)
    • #9826 chore(ts): convert base js files to typescript (#9826) (@etr2460)
    • #9895 Fix missing line break in Database 'extra' instructions (#9895) (@tooptoop4)
    • #9883 [mypy] Enforcing typing for superset.models (#9883) (@john-bodley)
    • #9884 fix: reenable table chart page length (#9884) (@ktmud)
    • #9881 fix: don't create examples db on 'superset init' (#9881) (@mistercrunch)
    • ๐Ÿ”ง #9734 feat: implement csv upload configuration func for the schema enforcement (#9734) (@bkyryliuk)
    • ๐Ÿ”Œ #9847 feat: tablechart plugin controls migration (#9847) (@pkdotson)
    • โšก๏ธ #9864 Update README Resources section (#9864) (@ceohockey60)
    • #9839 fix: chart datasource explore URL showing datasource name for druid (#9839) (@dpgaspar)
    • ๐Ÿ”จ #9820 refactor(frontend): move utils to TypeScript (#9820) (@ChristianMurphy)
    • #9865 only skip fossa on PRs (#9865) (@nytai)
    • โš  #9811 fix: Emit a warning message rather than an exception on query failure (#9811) (@willbarrett)
    • #9853 feat: Adding Emotion ThemeProviders for all React apps (#9853) (@rusackas)
    • โฌ†๏ธ #9848 upgrade plugins, remove unnecessary code (#9848) (@suddjian)
    • #9841 feat: Add new result formats and types to chart data API (#9841) (@villebro)
    • #9832 fix: Removing the logic to add timeseries_limit_metric to the data for table (#9832) (@michellethomas)
    • โช #9862 Revert "[sqllab] fix, strip comments before parsing statements" (#9862) (@john-bodley)
    • โšก๏ธ #9850 fix: Fix for updated cache dependency (#9850) (@craig-rueda)
    • ๐Ÿ›  #9816 fixes: limit no authorization error for sentry (#9816) (@lilykuang)
    • ๐Ÿ“„ #9846 docs: Disable sphinx-autodoc-typehints (#9846) (@john-bodley)
    • ๐Ÿ”Œ #9806 feat: markupchart plugin controls migration (#9806) (@pkdotson)
    • โฌ†๏ธ #9628 feat: upgrade react-select and make multi-select sortable (#9628) (@ktmud)
    • ๐Ÿ— #9814 build: conditionally run fossa check if dependency files change (#9814) (@nytai)
    • #9837 fix: issue with duplicated dependencies (#9837) (@craig-rueda)
    • #9817 [explore view] inline edit slice name should not overwrite (#9817) (@graceguo-supercat)
    • โšก๏ธ #9833 build: Updating the sphinx configuration (#9833) (@john-bodley)
    • #9829 fix: [filter_box] fix 2 issues in single value filter_box (#9829) (@graceguo-supercat)
    • โšก๏ธ #9834 Update the link to ClickHouse official website (#9834) (@blinkov)
    • #9768 feat: partitionchart controls migration (#9768) (@pkdotson)
    • ๐Ÿ’ป #9808 feat: bump superset-ui/time-format and big-number (#9808) (@ktmud)
    • #9835 fix: use snake_case for error_type (#9835) (@etr2460)
    • ๐Ÿ”จ #9831 refactor: simplify getExploreUrl functions (#9831) (@villebro)
    • ๐Ÿ— #9828 build: tox leveraging conditional factors (#9828) (@john-bodley)
    • #9819 feat(frontend): add ability to download dashboard and chart as image (#9819) (@ChristianMurphy)
    • ๐Ÿ— #9827 build: Add python 3.8 to the build matrix (#9827) (@etr2460)
    • ๐ŸŒ #9800 [mypy] Enforcing typing for translations (#9800) (@john-bodley)
    • #9789 FilterBox,BigNumber,WorldMap: Handle empty results - second attempt (#9789) (@elukey)
    • #9790 fix(babel): broken babel extract (#9790) (@dpgaspar)
    • โฌ†๏ธ #9774 upgrade migrated plugins, remove controlPanel configs (#9774) (@suddjian)
    • ๐ŸŒ #9803 fix: invalid JSON in FR and DE translations (#9803) (@villebro)
    • โช #9752 fix(mssql): reverts #9644 and displays a better error msg (#9752) (@dpgaspar)
    • โœ… #9775 tests(celery): improve celery tests infra (#9775) (@dpgaspar)
    • ๐Ÿ”’ #9796 feat: return security errors in the SIP-40 format (#9796) (@etr2460)
    • #9799 fix: construct SupersetErrors properly (#9799) (@etr2460)
    • #9798 fix: add flag for time series table (#9798) (@kristw)
    • #9342 Add extra configration to the email reports (#9342) (@bkyryliuk)
    • #9786 chore: bump python dependencies (#9786) (@villebro)
    • ๐Ÿ“„ #9795 docs: add whale.im to list of users (#9795) (@Fullstop000)
    • #9753 feat: convert backend chart errors to the new error type (#9753) (@etr2460)
    • ๐Ÿ— #9791 build: disable webpack progress for CI (#9791) (@ktmud)
    • ๐Ÿ‘• #9655 chore: add support for prlint: a commit msg linter (#9655) (@mistercrunch)
    • #9715 [caching] Using request context rather than globals (#9715) (@john-bodley)
    • ๐Ÿšš #9773 chore: move bullet string manipulation to frontend (#9773) (@villebro)
    • โœ… #9782 fix: make tests work individually (#9782) (@villebro)
    • โœ… #9779 tests: Fix, script to help run single tests (#9779) (@dpgaspar)
    • โœ… #9778 Add QueryContext deserialization test (#9778) (@villebro)
    • ๐Ÿ“„ #9767 [docs] Add SSL config options for postgres (#9767) (@nytai)
    • #9756 Fix SQL Lab schema permission checks (#9756) (@bkyryliuk)
    • #9691 fix: Catch db_engine_spec.get_function_names exceptions (#9691) (@bkyryliuk)
    • #9714 fix bug where error at import dashboard fails to show toast in "welcome" app (#9714) (@pkdotson)
    • #9771 use the builtin calendar control panel (#9771) (@suddjian)
    • #9770 use word cloud's built in control panel (#9770) (@suddjian)
    • โœ… #9761 test(frontend): use absolute path for src imports (#9761) (@ktmud)
    • ๐Ÿ“š #9766 [docs] add postgres documentation (#9766) (@nytai)
    • #9762 fix: implement force refresh in chart data request (#9762) (@villebro)
    • ๐Ÿ‘ #9710 Query the new chart data api for charts that support it (#9710) (@suddjian)
    • ๐Ÿ”Œ #9758 fix: removing controls from incubator-superset that are now in the plugin (#9758) (@rusackas)
    • ๐Ÿ— #9757 build: bump superset-ui to 0.13 (#9757) (@kristw)
    • โšก๏ธ #9731 Update README.md (#9731) (@ceohockey60)
    • โช #9671 Revert "FilterBox,BigNumber,WorldMap: Handle empty results (#9671)" (#9755) (@etr2460)
    • ๐ŸŒฒ #9745 [perf logging] Add extra logging for new/editMode dash (#9745) (@graceguo-supercat)
    • #9652 fix: adhoc filter 'equals' doesn't let you save (#9652) (@mistercrunch)
    • #9709 Use monospace (#9709) (@bkyryliuk)
    • #9740 feat: Add controlGroups to formData (#9740) (@villebro)
    • ๐ŸŽ #9739 perf(dataset): improve performance on get list (#9739) (@dpgaspar)
    • #9749 fix: Add force flag to QueryContext schema (#9749) (@villebro)
    • #9654 fix: autocomplete search in AdhocFilter operator dropdown (#9654) (@mistercrunch)
    • #9744 fix: re-add all time grain options to the new chart API (#9744) (@etr2460)
    • โšก๏ธ #9728 chore: update README screenshots (#9728) (@etr2460)
    • ๐Ÿ’ป #9733 [perf logging] Add timing event when browser tab is hidden (#9733) (@graceguo-supercat)
    • #9742 fix: css prop is now overwhelmed with emotion (#9742) (@suddjian)
    • ๐Ÿ“š #9724 docs(api): improve openapi documentation for dash, charts and queries (#9724) (@dpgaspar)
    • #9703 fix(dependencies): Bump FAB to 2.3.4 (#9703) (@dpgaspar)
    • ๐ŸŽ #9704 perf(dashboards): improve API performance for dashboards (#9704) (@dpgaspar)
    • โœ… #9735 Fix bad test (#9735) (@bkyryliuk)
    • #9671 FilterBox,BigNumber,WorldMap: Handle empty results (#9671) (@elukey)
    • ๐Ÿ“œ #9692 [sqllab] fix, strip comments before parsing statements (#9692) (@nytai)
    • #9716 [hive][csv upload] make INTs BIGINTs (#9716) (@serenajiang)
    • #9712 feat: add logging to warm_up_cache endpoint (#9712) (@etr2460)
    • #9695 Fix email reports (#9695) (@bkyryliuk)
    • #9707 migrate bignumber to use builtin controls (#9707) (@suddjian)
    • #9706 [table editor] hide Edit Datasource option when no onDatasourceSave (#9706) (@graceguo-supercat)
    • #9693 chore(ts): type getClientErrorObject (#9693) (@etr2460)
    • โœ… #9696 chore: Bump PyArrow to latest stable version (#9696) (@villebro)
    • ๐Ÿš€ #9694 [Helm] - Allow for customization of release name (#9694) (@craig-rueda)
    • โœ… #9702 tests(engine_specs): full bigquery engine coverage (#9702) (@dpgaspar)
    • ๐Ÿ”’ #9705 fix(security) Fixing regression in #9689 (#9705) (@john-bodley)
    • ๐ŸŽ #9619 perf(charts): improve performance on GET list (#9619) (@dpgaspar)
    • #9684 fix: migrate all slices off the old time grain format (#9684) (@etr2460)
    • #9649 [sql] Adding lighweight Table class (#9649) (@john-bodley)
    • ๐Ÿ’ป #9651 [Chart & Dashboard] improve listview filter ui and add expandable list support (#9651) (@nytai)
    • #9677 feat(errors): add client scaffolding for custom error messages (#9677) (@etr2460)
    • #9688 Make cache work again for annotations (#9688) (@bkyryliuk)
    • #9689 Fix ENABLE_ROW_LEVEL_SECURITY flag usage (#9689) (@bkyryliuk)
    • #9665 [debug] Debugging caching issue (#9665) (@john-bodley)
    • ๐Ÿ“‡ #9685 [fix] reduce table metadata fetch for latest_partition check (#9685) (@graceguo-supercat)
    • โœ… #9682 tests(engine_specs): full postgres engine coverage (#9682) (@dpgaspar)
    • โœ… #9679 fix(tests): custom filter flaky tests on dash and charts (#9679) (@dpgaspar)
    • #9637 [explore view] add partition as adhoc filter option (#9637) (@graceguo-supercat)
    • #9669 fix: catch viz exceptions (#9669) (@villebro)
    • ๐Ÿ—„ #9662 [logging] deprecation notices for SQLite (#9662) (@lilykuang)
    • #9676 gotta catch 'em all (#9676) (@rusackas)
    • #9666 [fix] Support APP_ICON_WIDTH configuration parameter in SPA menu (#9666) (@nruhe)
    • #9661 feat: Add geospatial post processing operations (#9661) (@villebro)
    • ๐Ÿ’ป #9624 [fix] Push browser history on pagination in react listviews (#9624) (@lilykuang)
    • ๐Ÿ”จ #9663 chore(ts): refactor and migrate StackTraceMessage to TypeScript (#9663) (@etr2460)
    • โœ… #9634 fix(database): test connection error message for module not found (#9634) (@dpgaspar)
    • #9644 fix(mssql): apply limit and set alias for functions (#9644) (@dpgaspar)
    • #9578 Controls cleanup pass (#9578) (@rusackas)
    • #9640 [dashboard] increase tab count limit (#9640) (@graceguo-supercat)
    • #9586 [mypy] Enforcing typing for a number of modules (#9586) (@john-bodley)
    • ๐Ÿšš #9639 docs: remove references to superset-ui-plugins (#9639) (@ktmud)
    • #9577 [datesets] feat: add statsd to datasets api (#9577) (@lilykuang)
    • #9572 [fix] Automatically add relevant Jinja methods to cache key if present (#9572) (@john-bodley)
    • #9643 Cast raw 'fetch_values_predicate' to Sqlalchemy Text (#9643) (@vnnw)
    • #9641 [fix] Fixing regression from #9161 (#9641) (@john-bodley)
    • โœ… #9599 chore: Improve chart data API + schemas + tests (#9599) (@villebro)
    • ๐ŸŽ #9612 [sql_lab] Improve performance, only use slow func when needed (#9612) (@dpgaspar)
    • ๐Ÿ’… #9605 use new @superset-ui/style package for theming (#9605) (@suddjian)
    • #9608 fix: change number format to original value to "~g" (#9608) (@ktmud)
    • #9613 fix: broken IS NULL and IS NOT NULL operator (#9613) (@villebro)
    • ๐Ÿšš #9592 fix: move docs image symlink to _static (#9592) (@villebro)
    • #9614 [statsd] Send time metrics in ms not seconds (#9614) (@dpgaspar)
    • #9346 improve helm chart (#9346) (@fbalicchia)
    • ๐Ÿ”’ #9587 [SQL Lab] Lock result set controls to be always visible (#9587) (@etr2460)
    • ๐Ÿ’ป #9530 [charts] adds new filters ui (#9530) (@nytai)
    • โœ… #9547 [tests] Helper script to run single tests (#9547) (@dpgaspar)
    • #9571 [charts] feat: add statsd to charts api (#9571) (@lilykuang)
    • ๐Ÿ’ป #9602 Bump superset-ui-connection to 0.12.22 (#9602) (@etr2460)
    • #9562 Add raw number/integer option to d3 number formats (#9562) (@ktmud)
    • ๐Ÿ“š #9569 Add documentation build to Github Actions (#9569) (@willbarrett)
    • ๐Ÿ— #9591 [Build] moves prettier check to separate script (#9591) (@nytai)
    • #9582 [fix] Fixing issue with Jinja filter_value (#9582) (@john-bodley)
    • ๐Ÿ“„ #9598 [docs] fix, elastic.co elasticsearch product location (#9598) (@dpgaspar)
    • ๐Ÿ›ฐ #9585 [config] Enable dashboard bootstrap payload reduction by default (#9585) (@etr2460)
    • #9443 Re-enable the AnnotationLayerModelView read API (#9443) (@etr2460)
    • #9583 [mypy] Enforcing typing for superset.migrations (#9583) (@john-bodley)
    • ๐Ÿ—„ #9579 fix: Add deprecated fields to QueryObject schema (#9579) (@villebro)
    • #9525 Migrating shared NVD3 controls to new module (#9525) (@rusackas)
    • #9570 doc: Add changelog for 0.36.0 (#9570) (@villebro)
    • ๐ŸŒ #9567 [pypi] Include compiled translations on Pypi pkg (#9567) (@dpgaspar)
    • ๐Ÿ“„ #9556 chore: Add OpenAPI docs to /api/v1/chart/data EP (#9556) (@villebro)
    • #9566 chore: Migrate unique FilterBox controls from controls.jsx (#9566) (@villebro)
    • ๐Ÿ— #9555 [Build] Collect frontend code coverage from Cypress tests (#9555) (@ktmud)
    • #9550 [fix] dashboard filter scope bug (#9550) (@graceguo-supercat)
    • #9560 [fix] warm up cache error handling (#9560) (@john-bodley)
    • #9519 [dashboard] New, add statsd metrics to the API (#9519) (@dpgaspar)
    • ๐Ÿ”Œ #9549 Bump @superset-ui/legacy-plugin-chart-table to 0.12.14 (#9549) (@ktmud)
    • #9548 Ditching travis config in favor of Github Actions (#9548) (@craig-rueda)
    • #9539 Bump copyright notice (#9539) (@villebro)
    • ๐Ÿณ #9536 docs: point our README the maintained Docker image (#9536) (@mistercrunch)
    • ๐Ÿ“œ #9523 Make email parsing more robust (#9523) (@bkyryliuk)
    • #9541 [copy] fix: Row Level Security get_rls_filters func SELECT statement (#9541) (@axelet)
    • #8947 [thumbnails] API and celery task for dashboards and charts (#8947) (@dpgaspar)
    • #9537 [list views] add work-break css for table layouts (#9537) (@nytai)
    • ๐Ÿ‘ท #9538 Run CI on all pushes / PR's (#9538) (@craig-rueda)
    • โœ… #9535 Disabling recording in Cypress tests (#9535) (@craig-rueda)
    • ๐Ÿ— #9517 [Build] Add Github workflows (#9517) (@ktmud)
    • #9533 Fix typo in viz.py (#9533) (@willbarrett)
    • ๐Ÿ’ป #9465 Importing validators module from superset-ui (#9465) (@rusackas)
    • ๐Ÿ”จ #9520 [api] refactor, remove unnecessary code, using command pattern now (#9520) (@dpgaspar)
    • โœ… #9521 [dashboard] Fix, improve test for custom filter (#9521) (@dpgaspar)
    • ๐Ÿ—„ #9366 deprecate groupby controls in query_obj (#9366) (@villebro)
    • #9522 Another attempt to fix a viz.py bug (#9522) (@willbarrett)
    • #9500 control to turn off table bar-chart backgrounds (#9500) (@rusackas)
    • #9507 chore: auto label issues based on the template chosen (#9507) (@mistercrunch)
    • #9462 [Dashboard] new listview filters & emotion infra (#9462) (@nytai)
    • ๐Ÿณ #9509 docker node_modules in its own volume (#9509) (@octaviancorlade)
    • #9492 [charts] New, custom filter for name OR description (#9492) (@dpgaspar)
    • #9503 Bump sqlalchemy and dremio deps (#9503) (@villebro)
    • #9370 Add visualization flow to the CTA queries (#9370) (@bkyryliuk)
    • #9427 feat: Add post processing to QueryObject (#9427) (@villebro)
    • #9496 fix: add lineWidth to Shared_DeckGL.jsx (#9496) (@villebro)
    • #9435 [dashboards] New, tittle and slug OR filter (#9435) (@dpgaspar)
    • โšก๏ธ #9484 [dashboards] Fix, update dashboard owners not propagating to charts oโ€ฆ (#9484) (@dpgaspar)
    • #9491 Bump FAB to 2.3.2 (#9491) (@dpgaspar)
    • #9479 [query] Migrate api v1 query to new location (#9479) (@dpgaspar)
    • #9495 fix: add explore control tabOverride at the section level (#9495) (@ktmud)
    • 0๏ธโƒฃ #9486 feat: change default time range in sql lab explore (#9486) (@ktmud)
    • โฌ†๏ธ #9493 Upgrade table chart plugin to 0.12.13 (#9493) (@ktmud)
    • ๐Ÿ‘• #9460 pylint: accept specific 2 character names by default (#9460) (@villebro)
    • ๐Ÿ”จ #9487 [tests] refactor, change datasets and charts to it's own folder (#9487) (@dpgaspar)
    • #9376 [sqllab] Add CUSTOM_TEMPLATE_PROCESSOR config (#9376) (@dandanhub)
    • #9480 Handle empty dataframes in TableViz (#9480) (@elukey)
    • #9337 Filter owners select by text input (#9337) (@suddjian)
    • #9437 [datasets] Add strict type annotation (#9437) (@dpgaspar)
    • #9418 [mypy] Enforcing typing for superset.dashboards (#9418) (@dpgaspar)
    • โšก๏ธ #9464 [Doc] Update installation doc for Dremio (#9464) (@narendrans)
    • #9455 Migrating shared DeckGL controls (#9455) (@rusackas)
    • #9469 [mypy] Enforcing typing for superset.examples (#9469) (@john-bodley)
    • #9403 [query] New, readonly API (#9403) (@dpgaspar)
    • #9472 Added dremio (#9472) (@narendrans)
    • ๐Ÿš€ #9451 release: Add support for ZSH in RELEASING and add tagging instructions (#9451) (@villebro)
    • #9378 chore: bump black to 19.10b0 and mypy to 0.770 (#9378) (@ktmud)
    • #9416 [mypy] Enforcing typing for some modules (#9416) (@john-bodley)
    • ๐Ÿ‘• #9466 Eslint prefer-object-spread (#9466) (@rusackas)
    • ๐Ÿ’… #9454 Migrating NVD3 Area's stacked_style config (#9454) (@rusackas)
    • #9445 Migrating unique NVD3 viz controls (#9445) (@rusackas)
    • #9440 Migrating unique bigNumber(total) controls (#9440) (@rusackas)
    • ๐Ÿ‘• #9356 Enforcing linting of LESS (#9356) (@rusackas)
    • #9446 migrating unique controls (#9446) (@rusackas)