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
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
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
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
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
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
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
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
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
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
Erik Ritter
5fa4680447
feat: update timeout error UX ( #10274 )
2020-07-20 15:32:17 -07:00
Ville Brofeldt
14260f9843
feat: add contribution operation and fix cache_key bug ( #10286 )
...
* feat: add contribution operation and fix cache_key_bug
* Add contribution schema
2020-07-10 17:06:05 +03:00
Maxime Beauchemin
318e5347bc
feat: Alerts! allowing users to set SQL-based email alerts with screenshots ( #9944 )
...
* feat: add support for alerts
* Add ModelViews
* First pass at adding scheduled Alert support
* Fix syntax errors
* Add log_retention and database to model
* Improving screenshots
* Still refactoring screenshots
* Pass down thumb_size properly
* Progress on screenshot endpoint
* Add alerts.last_eval_dttm and alert query logic
* Getting ready to split compute_screenshot and screenshot/{SHA}
* split the endpoints
* Improving alerting loop
* empty methods
* Add CLI command 'superset alert' that runs a sched loop
* Getting things to work
* email delivery
* A working email\!
* Add feature flag
* Add some description_columns to AlertModelView
* Little tweaks
* Use database.get_df, eval cells for truthiness
* Migrate thumbnail/screenshot functions to use new arg pattern
* Addressing PR feedback
* Update alerts DB migration down_revision
* Resolve _deliver_email arg conflict
* Make mypy happy
* Make isort happy
* Make pylint happy
Co-authored-by: Rob DiCiuccio <rob.diciuccio@gmail.com >
2020-07-06 13:12:27 -07:00
Jesse Yang
9bdfa055ac
feat(viz): add query mode switch to table chart ( #10113 )
...
1, Replace table chart rendering from jquery.DataTables to react-table: apache-superset/superset-ui#623
2. Rearrange the control panel, replace GROUP BY and NOT GROUP BY with a "Query Mode" switch: apache-superset/superset-ui#609
2020-06-28 21:37:04 -07:00
Will Barrett
df71fac1e0
refactor: Fix lint on superset/utils/core.py ( #10120 )
...
* Fix lint on superset/utils/core.py
* black
* mypy
* Fix some missing renames
2020-06-26 08:49:12 -07:00
Ville Brofeldt
b205ce32b0
feat: Add new timegrains and convert_dttm to Druid engine spec ( #10160 )
...
* feat: Add new timegrains and convert_dttm to Druid engine spec
* Add TemporalType enum and fix test case
* Remove DATETIME for athena (original spec)
2020-06-25 12:18:37 +03:00
John Bodley
91517a56a3
style(mypy): Spit-and-polish pass ( #10001 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-06-07 08:53:46 -07:00
John Bodley
ee777acd57
fix(mypy): Resolves regression introducted in #9824 ( #9973 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-06-03 00:20:34 -07:00
John Bodley
15f267d586
style(mypy): Fix memoize watch type ( #9970 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-06-02 16:02:07 -07:00
Ville Brofeldt
38a6bd79da
feat: expand new chart data endpoint coverage ( #9903 )
...
* feat: implement new chart API for additional components
* Fix python tests
* Fix tests
* Fix lint
* fix camel case error in requestParams
* lint
* fix samples row limit
* Add samples row limit to config
* remove unnecessary code
* lint
* Address review comments
2020-06-02 10:47:28 +03:00
John Bodley
b296a0f250
[mypy] Enforcing typing for superset.utils ( #9905 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-05-27 22:57:30 -07:00
John Bodley
7f6dbf838e
style: enforcing mypy typing for connectors ( #9824 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-05-25 12:32:49 -07:00
John Bodley
e789a35558
[mypy] Enforcing typing for superset.models ( #9883 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-05-22 20:31:21 -07:00
Ville Brofeldt
a43a1d6303
feat: Add new result formats and types to chart data API ( #9841 )
...
* feat: Add new result formats and types to chart data API
* lint
* Linting
* Add language to query payload
* Fix tests
* simplify tests
2020-05-20 21:36:14 +03:00
Daniel Vaz Gaspar
3cc540019f
fix(mssql): reverts #9644 and displays a better error msg ( #9752 )
2020-05-14 17:00:02 +01:00
John Bodley
1c656feb95
[mypy] Enforcing typing for a number of modules ( #9586 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-04-24 10:07:35 -07:00
Ville Brofeldt
85778f5bec
fix: broken IS NULL and IS NOT NULL operator ( #9613 )
...
* fix: broken is null and is not null operator
* add unit tests
* Rename filter operator enum
2020-04-22 19:11:45 +03:00
Daniel Vaz Gaspar
cba82cfd03
[statsd] Send time metrics in ms not seconds ( #9614 )
2020-04-22 16:46:38 +01:00
Ville Brofeldt
8e439b1115
chore: Add OpenAPI docs to /api/v1/chart/data EP ( #9556 )
...
* Add OpenAPI docs to /api/v1/chart/data EP
* Add missing fields to QueryObject, fix linting and unit test errors
* Fix unit test errors
* abc
* Fix errors uncovered by schema validation and add unit test for invalid payload
* Add schema for response
* Remove unnecessary pylint disable
2020-04-17 16:44:16 +03:00
Daniel Vaz Gaspar
7b11b44abe
[dashboard] New, add statsd metrics to the API ( #9519 )
2020-04-16 10:54:45 +01:00
Bogdan
3574a3a4fb
Make email parsing more robust ( #9523 )
...
* Make email parsing more robust
* Address comment
Co-authored-by: bogdan kyryliuk <bogdankyryliuk@dropbox.com >
2020-04-15 16:58:03 +03:00
Daniel Vaz Gaspar
d81f720502
[thumbnails] API and celery task for dashboards and charts ( #8947 )
2020-04-15 09:40:14 +01:00
Ville Brofeldt
980dd2fd41
pylint: accept specific 2 character names by default ( #9460 )
...
* lint: accept 2 letter names by default
* Address review comments
* Remove e and d from good-names
2020-04-08 20:32:26 +03:00
John Bodley
dcb7b8350e
[mypy] Enforcing typing for superset.examples ( #9469 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-04-06 09:11:49 -07:00
Jianchao Yang
801e2f1777
chore: bump black to 19.10b0 and mypy to 0.770 ( #9378 )
...
* Bump black to 19.10b0
* Upgrade mypy to 0.770
* Update how inline type is defined
2020-04-04 13:23:18 -07:00
John Bodley
5e55e09e3e
[mypy] Enforcing typing for some modules ( #9416 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-04-04 12:45:14 -07:00
John Bodley
ec795a4711
[mypy] Enforcing typing for charts ( #9411 )
...
Co-authored-by: John Bodley <john.bodley@airbnb.com >
2020-03-29 13:39:36 -07:00
Ville Brofeldt
499f9c8fca
feat: add SSL certificate validation for Druid ( #9396 )
...
* feat: add SSL certificate feature
* Address comments
* don't mutate extras
* Address comments and add polish
* Add further polish
2020-03-27 19:07:07 +02:00
Maxime Beauchemin
98a71be80b
feat: [explore] don't save filters inherited from a dashboard ( #9340 )
...
* feat: [explore] don't save filters inherited from a dashboard
When navigating to explore from a dashboard context, the current
dashboard filter(s) are passed along to explore so that the context is
kept. So say you're filtering on "country=Romania", in your dashboard
and pivot to explore, that filter is still there and keep on exploring.
Now a common issue is that you'll want to make some tweak to your chart
that are unrelated to the filter, say toggling the legend off for
instance, and then save it. Now you back to your dashboard and even
though you started with an "all countries" dashboard, with a global
filter on country, now that one chart is stuck on "Romania". Typically
you notice this when filtering on something else, say "Italy" and then
that one chart now has two mutually exclusive filters, and show "No data".
Now, the fix is to flag the filter as "extra" (that's the not-so-good internal
name we use for these inherited filters) and make it clear that that
specific filter is special and won't be saved when saving the chart.
* fix build
2020-03-23 23:05:00 -07:00
Erik Ritter
f80fadff0e
Reduce dashboard bootstrap payload ( #9284 )
2020-03-13 12:18:22 -07:00
Ville Brofeldt
7a91498cf1
fix: share column type matching between model and result set ( #9161 )
...
* Share column type matching between model and result set
* Address comments
2020-03-04 16:33:22 +02:00
John Bodley
141570636e
[fix] SQL query source ( #9173 )
2020-02-20 11:15:12 -08:00
John Bodley
9f5f8e5d92
[mypy] Enforcing typing for db_engine_specs ( #9138 )
2020-02-17 23:08:11 -08:00
Craig Rueda
607cfd1f29
Moving away from using the root logger everywhere ( #9099 )
...
* Moving away from using the root logger everywhere
* self.logger -> logger
2020-02-07 23:38:48 -08:00
John Bodley
7364024bba
[fix] Ensure that is_adhoc_metric returns a boolean ( #9062 )
2020-01-31 17:39:30 -08:00