Jesse Yang
76f9f185fb
refactor: optimize backend log payload ( #11927 )
2020-12-15 17:22:23 -08:00
Rob DiCiuccio
4d329071a1
feat(SIP-39): Async query support for charts ( #11499 )
...
* Generate JWT in Flask app
* Refactor chart data API query logic, add JWT validation and async worker
* Add redis stream implementation, refactoring
* Add chart data cache endpoint, refactor QueryContext caching
* Typing, linting, refactoring
* pytest fixes and openapi schema update
* Enforce caching be configured for async query init
* Async query processing for explore_json endpoint
* Add /api/v1/async_event endpoint
* Async frontend for dashboards [WIP]
* Chart async error message support, refactoring
* Abstract asyncEvent middleware
* Async chart loading for Explore
* Pylint fixes
* asyncEvent middleware -> TypeScript, JS linting
* Chart data API: enforce forced_cache, add tests
* Add tests for explore_json endpoints
* Add test for chart data cache enpoint (no login)
* Consolidate set_and_log_cache and add STORE_CACHE_KEYS_IN_METADATA_DB flag
* Add tests for tasks/async_queries and address PR comments
* Bypass non-JSON result formats for async queries
* Add tests for redux middleware
* Remove debug statement
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
* Skip force_cached if no queryObj
* SunburstViz: don't modify self.form_data
* Fix failing annotation test
* Resolve merge/lint issues
* Reduce polling delay
* Fix new getClientErrorObject reference
* Fix flakey unit tests
* /api/v1/async_event: increment redis stream ID, add tests
* PR feedback: refactoring, configuration
* Fixup: remove debugging
* Fix typescript errors due to redux upgrade
* Update UPDATING.md
* Fix failing py tests
* asyncEvent_spec.js -> asyncEvent_spec.ts
* Refactor flakey Python 3.7 mock assertions
* Fix another shared state issue in Py tests
* Use 'sub' claim in JWT for user_id
* Refactor async middleware config
* Fixup: restore FeatureFlag boolean type
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
2020-12-10 20:21:56 -08:00
Jesse Yang
9121482479
refactor: move enums to the beginning of utiuls/core.py ( #11883 )
2020-12-09 11:04:09 -08:00
Erik Ritter
77d362d306
fix: Remove expensive logs table migration ( #11920 )
2020-12-04 07:59:28 -08:00
Ville Brofeldt
327a2817d3
feat: add event and interval annotation support to chart data ep ( #11665 )
...
* feat: add event and interval annotation support to chart data ep
* add tests + refactor fixtures
* use chart dao
2020-12-04 14:40:31 +02:00
Maxime Beauchemin
0504cf1a00
chore: improve analytics ( #11714 )
...
* chore: improve analytics
* lint
* log more events, add note in UPDATING.md
* handling base class
* more events\!
* get ref through
* right before @expose
* fix context
* touchups
2020-11-25 08:45:02 -08:00
Daniel Vaz Gaspar
f27ebc4be5
feat: new reports scheduler ( #11711 )
...
* feat(reports): scheduler and delivery system
* working version
* improvements and fix grace_period
* add tests and fix bugs
* fix report API test
* test MySQL test fail
* delete-orphans
* fix MySQL tests
* address comments
* lint
2020-11-25 08:50:30 +00:00
Jesse Yang
4cfcaebb61
feat: rename TABLE_NAMES_CACHE_CONFIG to DATA_CACHE_CONFIG ( #11509 )
...
* feat: rename TABLE_NAMES_CACHE_CONFIG to DATA_CACHE_CONFIG
The corresponding cache will now also cache the query results.
* Slice use DATA_CACHE_CONFIG CACHE_DEFAULT_TIMEOUT
* Add test for default cache timeout
* rename FAR_FUTURE to ONE_YEAR_IN_SECS
2020-11-13 22:35:10 -08:00
Ville Brofeldt
2718909314
feat: add ECharts BoxPlot chart ( #11199 )
...
* feat: add ECharts BoxPlot chart
* lint
* fix cypress tests
* lint
* remove viz.py shim
* bump plugin package
* skip non-legacy plugin cypress dashboard tests
* fix cypress tests
* disable cypress tests for non-leagcy charts
* fix bad rebase
* use midpoint interpolation for quartile calculation
* bump packages and add support for no groupby
* whitespace
* whitespace
* linting
* fix tests
* xit mathjs load test
* bump mathjs to 8.0.1
* disable cypress filter test for v1 charts
2020-11-12 10:01:04 +02:00
Beto Dealmeida
45738ffc1d
chore: consolidate datasource import logic ( #11533 )
...
* Consolidate dash import logic
* WIP
* Add license
* Fix lint
* Retrigger tests
* Fix lint
2020-11-11 22:04:16 -08:00
Beto Dealmeida
4a070cfceb
chore: consolidate dashboard import logic ( #11529 )
...
* Consolidate dash import logic
* Fix lint
* Remove Slice.import_obj
* Remove unused import
* Fix log
2020-11-11 14:50:18 -08:00
Beto Dealmeida
cf868891be
chore: rename IMPORT_EXPORT_VERSION ( #11636 )
2020-11-10 09:45:45 -08:00
Beto Dealmeida
fd10c47bc6
chore: remove sanitize ( #11532 )
...
* chore: remove sanitize
* Fix lint
2020-11-02 15:13:44 -08:00
David Aaron Suddjian
18658f45be
feat(dashboards): Filter status indicators ( #10936 )
...
* Initial commit of new filters badge.
* refactor applied/rejected filters code
* finished filter indicators
* filter badge tested
* unnecessary imports
* formatting and types
* fixes
* license
* code quality tweaks
* state management for showing focused filter scope
* clean up filter key extraction code
* remove unnecessary styles
* temp css to demonstrate highlighting
* fix focused filter logic
* no more color badges
* new toys for highlighting dash components (#11144 )
* tweak style for the filter chart when filter is focused
* style: Filters p0 css2 (#11151 )
* nixing background tweak
* src paths
* another quick theme color
* src paths, adjusting pill icon color, changing icons, showing applied/busted counts
* linting stuff
* fixing and tweaking tests
* show filter indicator when filters are not active
* chart title bar cleanup
* open the right panel when popover opens
* unused import
* fix EditableTitle tests
* margin on dashboard header
* show the chart dropdown menu
* fix blur filter breaking dropdowns
* style tweak - no pointer events when irrelevant charts are blurred
* fix box shadow on filter highlight
* it's an array
* attempt fixing e2e
* style: filters p0 icon churn (#11215 )
* new filters icon
* icon styling
* bigger icons in list views
* better sizing of table actions and favStars
* more icon sizing...
* fixing more button size jankiness
* linting
* Filters performance (#11255 )
* fixing time filter "ok" button
* making unset filter menu collapsible
* sort alphabetically
* fix highlighting when removing items
* try a flex layout (for browser render perf)
* more specific transitioning
* temp: comment out some code as a test
* temp: comment out more code
* temp: remove possibly expensive computations from ChartHolder
* Revert "temp: comment out some code as a test"
This reverts commit 309b880e90 .
* Revert "temp: comment out more code"
This reverts commit 64c88b2cba .
* Revert "temp: remove possibly expensive computations from ChartHolder"
This reverts commit 37ce0214f0 .
* experiment: upgrade react-select to v3
* Revert "experiment: upgrade react-select to v3"
This reverts commit c3972ba486 .
* fix the damn problem
* remove code used for testing purposes
* awful hack to avoid adding a class to a container
* approaching infinity... and not beyond!
* fix ref forwarding
* add theme to tests as necessary
* fix(extra-filters): add logic for identifying applied extra filters (#11325 )
* fix: use dashboard id for stable cache key (#11293 )
* fix: button translations missing (#11187 )
* button translations missing
* blank space before text
* feat: update time_compare description and choices (#11294 )
* feat: update time_compare description and choices
* Update sections.jsx
* fix(extra-filters): add logic for identifying applied extra filters
* lint
Co-authored-by: Jesse Yang <jesse.yang@airbnb.com >
Co-authored-by: rubenSastre <ruben.sastre@decathlon.com >
Co-authored-by: Erik Ritter <erik.ritter@airbnb.com >
* address design feedback
* slight tweak to panel logic, keep panels open that user has opened
* rearrange code to be more graceful
* fix: bump superset-ui/core (#11385 )
* use is_dttm instead of is_temporal
* types, names
* only show unset filter panel if there are unset filters
* fix highlighting the filter control
* fix filterbox layout
* translations
* fix cypress
* actually add the test attribute
* Update superset-frontend/src/dashboard/components/DashboardBuilder.jsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* Update superset-frontend/src/dashboard/components/DashboardBuilder.jsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* formatting
* add link comment to hack
* Update superset-frontend/src/dashboard/components/gridComponents/ChartHolder.jsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* stop importing lodash
* Update superset-frontend/src/dashboard/components/gridComponents/ChartHolder.jsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* skip broken test
* Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* Update superset-frontend/src/dashboard/components/FiltersBadge/Styles.tsx
Co-authored-by: Evan Rusackas <evan@preset.io >
* adjust colors of titles
* linting
* no indicators when chart is loading
* support all time fields
* fix lock file
Co-authored-by: Natalie Ruhe <natalie@preset.io >
Co-authored-by: Evan Rusackas <evan@preset.io >
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
Co-authored-by: Jesse Yang <jesse.yang@airbnb.com >
Co-authored-by: rubenSastre <ruben.sastre@decathlon.com >
Co-authored-by: Erik Ritter <erik.ritter@airbnb.com >
Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com >
2020-10-28 15:46:24 -07:00
Ville Brofeldt
dcf12762b3
chore(prophet): ignore logged warning for missing plotly package ( #11334 )
...
* chore(prophet): ignore logged warning for missing plotly package
* reset log level after import
2020-10-22 07:27:02 +03:00
Beto Dealmeida
94e23bfc82
feat: export databases as a ZIP bundle ( #11229 )
...
* Export databases as Zip file
* Fix tests
* Address comments
* Implement mulexport for database
* Fix lint
* Fix lint
2020-10-16 11:10:39 -07:00
Jesse Yang
634676d467
refactor: use contextmanager for event_logger decorators ( #11222 )
2020-10-14 10:44:06 -07:00
Beto Dealmeida
7594161856
fix: do not import superset_config on tests ( #11193 )
...
* Do not import superset_config on tests
* Use strtobool
2020-10-14 07:54:31 -07:00
Jesse Yang
2c649ac20f
perf: cache dashboard bootstrap data ( #11234 )
2020-10-13 18:43:06 -07:00
Grace Guo
a10e86ab31
fix: revert eTag cache feature for dashboard ( #11203 )
...
* revert #11137
* revert #10963
2020-10-08 12:15:08 -07:00
Beto Dealmeida
9785667a0d
feat: add UUID column to ImportMixin ( #11098 )
...
* Add UUID column to ImportMixin
* Fix default value
* Fix lint
* Fix order of downgrade
* Add logging when downgrade fails
* Migrate position_json to contain UUIDs, and add schedule tables
* Save UUID when adding charts to dashboard
* Fix heads
* Rename migration file
* Fix dashboard serialization
* Fix migration script with Postgres
* Fix unique contraint name
* Handle UUID when exporting dashboard
* Fix Dataset PUT
* Add UUID JSON serialization
* Fix tests
* Simplify logic
* Try binary=True
2020-10-07 09:00:55 -07:00
Jesse Yang
38dccf9e12
fix: enable consistent etag across workers and force no-cache for dashboards ( #11137 )
...
* fix: enable consistent etag across workers
* Use CACHE_DEFAULT_TIMEOUT instead of 0
* Change timeout to 0 and set expires header even for no-cache
* Reduce number of if branches to appease Pylint
* Fix mypy error
2020-10-06 09:43:43 -07:00
ʈᵃᵢ
017e5acd14
style(listview): dynamic card size and grid spacing ( #11111 )
2020-10-01 15:44:42 -07:00
Kalyan
0bcc9d77a7
fix: Disabling timezone of dataframe before passing Prophet ( #11107 )
...
* fix: Disabling timezone of dataframe before passing Prophet
While running forecasting with Druid. Prophet throws the following exception. This PR removes the timezone info.
ValueError: Column ds has timezone specified, which is not supported. Remove timezone
https://github.com/apache/incubator-superset/issues/11106
@villebro
* Update pandas_postprocessing.py
* Update superset/utils/pandas_postprocessing.py
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
2020-09-30 21:38:37 +03:00
Grace Guo
6633409a15
feat: enable ETag header for dashboard GET requests ( #10963 )
...
* feat: add etag for dashboard load requests
* fix review comments
2020-09-29 10:57:16 -07:00
Ville Brofeldt
80e395559d
fix: echarts timeseries groupby ( #11103 )
...
* fix: echarts timeseries groupby
* address review comment
2020-09-29 14:25:38 +03:00
Kasia Kucharczyk
690e27e5fd
chore: updated utils with pylint rules ( #11062 )
...
* Updated pylint in cache.py in utils: unecessary bad-whitespace. Autoformatting
* Updated pylint in core.py in utils: E0202.
* Updated pylint in logging_configurator.py in utils: disable=no-member. Formatting
* Updated pylint in machine_auth.py in utils: unused-import
* Updated pylint in screenshots.py in utils: unused-import and import-error
* Updated pylint in webdriver.py in utils: unused-import
2020-09-28 14:32:06 -07:00
Ville Brofeldt
448a41a4e7
feat(row-level-security): add base filter type and filter grouping ( #10946 )
...
* feat(row-level-security): add filter type and group key
* simplify tests and add custom list widget
* address comments
* use enum value to ensure case sensitive value is used
2020-09-22 08:54:10 +03:00
Ville Brofeldt
3d8f757ac8
fix: simply is_adhoc_metric ( #10964 )
...
* fix: simply is_adhoc_metric
* address comment
2020-09-20 13:22:55 +03:00
John Bodley
b48dd4b7d9
chore: Using cache factory method ( #10887 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-09-15 12:48:19 -07:00
Bogdan
ac2937a6c5
fix: use nullpool in the celery workers ( #10819 )
...
* Use nullpool in the celery workers
* Address comments
Co-authored-by: bogdan kyryliuk <bogdankyryliuk@dropbox.com >
2020-09-10 13:29:57 -07:00
Bogdan
4572ebb600
chore: log cache keys to the logs ( #10678 )
...
* Log cache keys to the logs
* Add tests
* Use separate table for the cache keys
* Add migration for the cache lookup table
Co-authored-by: bogdan kyryliuk <bogdankyryliuk@dropbox.com >
2020-09-01 09:41:25 -07:00
henryyeh
a6101f72c9
fix: only call signal if executing on the main thread ( #10677 )
2020-08-25 16:57:58 -07:00
Ville Brofeldt
acb00f509c
fix(chart-data-api): assert referenced columns are present in datasource ( #10451 )
...
* fix(chart-data-api): assert requested columns are present in datasource
* add filter tests
* add column_names to AnnotationDatasource
* add assertion for simple metrics
* lint
2020-08-14 20:58:24 +03:00
Daniel Vaz Gaspar
4dd1d1df5e
fix(thumbnails): missing field, logging and new config var ( #10562 )
...
* fix(thumbnails): missing field, logging and new config var
* deprecate EMAIL_REPORTS_WEBDRIVER
* fix after merge and conflicts
* fix tests
* black
2020-08-14 14:12:44 +01:00
Craig Rueda
2aaa4d92d9
chore: Migrating reports to AuthWebdriverProxy ( #10567 )
...
* Migrating reports to AuthWebdriverProxy
* Extracting out webdriver proxy / Adding thumbnail tests to CI
* Adding license
* Adding license again
* Empty commit
* Adding thumbnail tests to CI
* Switching thumbnail test to Postgres
* Linting
* Adding mypy:ignore / removing thumbnail tests from CI
* Putting ignore statement back
* Updating docs
* First cut at authprovider
* First cut at authprovider mostly working - still needs more tests
* Auth provider tests added
* Linting
* Linting again...
* Linting again...
* Busting CI cache
* Reverting workflow change
* Fixing dataclasses
* Reverting back to master
* linting?
* Reverting installation.rst
* Reverting package-lock.json
* Addressing feedback
* Blacking
* Lazy logging strings
* UPDATING.md note
2020-08-12 13:28:41 -07:00
Ville Brofeldt
85c0cad816
fix: add None checking to cast_to_num ( #10584 )
...
* fix: add None checking to cast_to_num
* fix doctest
2020-08-12 19:58:14 +03:00
Daniel Vaz Gaspar
b7650b9f57
fix: disable false positive error ( #10576 )
2020-08-11 18:20:57 +01:00
Bogdan
101e5b670b
chore: clean up csv tests ( #10556 )
...
* Clean up csv tests
* Update tests/base_tests.py
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
* Update tests/base_tests.py
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
* import optional
* Fix mypy error
Co-authored-by: bogdan kyryliuk <bogdankyryliuk@dropbox.com >
Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com >
2020-08-10 11:22:38 -07:00
Ville Brofeldt
363abfa1a5
fix: remove unnecessary exception when exploring non-legacy viz plugins ( #10538 )
...
* fix: remove unnecessary exception when exploring non-legacy viz plugins
* lint
2020-08-07 08:41:39 +03:00
Erik Ritter
fd2d1c58c5
Revert "chore: Cleanup database sessions ( #10427 )" ( #10537 )
...
This reverts commit 7645fc85c3 .
2020-08-06 15:33:48 -07:00
Bogdan
62b873e3da
feat: welcome presto to the suite of tested databases ( #10498 )
...
* Add presto to the CI
Sample test data
Datetime conversion
Sample test data
Fix tests
* TODO to switch to timestamps
* Address feedback
* Update requirements
* Add TODOs
Co-authored-by: bogdan kyryliuk <bogdankyryliuk@dropbox.com >
2020-08-06 12:07:22 -07:00
Jason Davis
72ced53d2a
feat: make screenshot timeout configurable ( #10517 )
...
* made screenshot timeout configurable
* added default value to config and refractored use
* black
* updated config comment
* moves config variables to thumbnail section
Co-authored-by: Jason Davis <@dropbox.com>
2020-08-04 17:16:31 -07:00
John Bodley
7645fc85c3
chore: Cleanup database sessions ( #10427 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-07-30 23:07:56 -07:00
Jason Davis
7a329c25e9
feat: add test email functionality to SQL-based email alerts ( #10476 )
...
* added test email functionality
* formatting changes
* more formatting
* applied requested changes
* mypy
Co-authored-by: Jason Davis <@dropbox.com>
2020-07-30 13:27:22 -07:00
Jason Davis
c9cb723cab
made screenshot drivertype configurable ( #10472 )
...
Co-authored-by: Jason Davis <@dropbox.com>
2020-07-30 11:19:29 -07:00
Daniel Vaz Gaspar
0aad9c6f48
fix(log): log endpoint authentication ( #10435 )
...
* fix(log): log crashes if expired or not authenticated
* add auth to log endpoint
2020-07-29 09:32:10 +01:00
Erik Ritter
5fa4680447
feat: update timeout error UX ( #10274 )
2020-07-20 15:32:17 -07:00
Ville Brofeldt
7af8b2b3f8
feat: add optional prophet forecasting functionality to chart data api ( #10324 )
...
* feat: add prophet post processing operation
* add tests
* lint
* whitespace
* remove whitespace
* address comments
* add note to UPDATING.md
2020-07-20 18:46:51 +03:00
Ville Brofeldt
ac85aebe4a
chore: prefer allow/deny terminology ( #10320 )
...
* chore: prefer allow/deny terminology
* fix tests
* add PR reference
2020-07-15 19:22:46 +03:00