* Sparkline dates aren't formatting in Time Series Table (#6976)
* Exclude venv for python linter to ignore
* Fix NaN error
* Fix the white background shown in SQL editor on drag (#7021)
This PR sets the background-color css property on `.ace_scroller` instead of `.ace_content` to prevent the white background shown during resizing of the SQL editor before drag ends.
* Show tooltip with time frame (#6979)
* Fix time filter control (#6978)
* Enhancement of query context and object. (#6962)
* added more functionalities for query context and object.
* fixed cache logic
* added default value for groupby
* updated comments and removed print
(cherry picked from commit d5b9795f87)
* [fix] /superset/slice/id url is too long (#6989)
(cherry picked from commit 6a4d507ab6)
* [WIP] fix user specified JSON metadata not updating dashboard on refresh (#7027)
(cherry picked from commit cc58f0e661)
* feat: add ability to change font size in big number (#7003)
* Add ability to change font sizes in Big Number
* rename big number to header
* Add comment to clarify font size values
* Allow LIMIT to be specified in parameters (#7052)
* [fix] Cursor jumping when editing chart and dashboard titles (#7038)
(cherry picked from commit fc1770f7b7)
* Changing time table viz to pass formatTime a date (#7020)
(cherry picked from commit 7f3c145b1f)
* [db-engine-spec] Aligning Hive/Presto partition logic (#7007)
(cherry picked from commit 05be866117)
* [fix] explore chart from dashboard missed slice title (#7046)
(cherry picked from commit a6d48d4052)
* fix inaccurate data calculation with adata rolling and contribution (#7035)
(cherry picked from commit 0782e831cd)
* Adding warning message for sqllab save query (#7028)
(cherry picked from commit ead3d48133)
* [datasource] Ensuring consistent behavior of datasource editing/saving. (#7037)
* Update datasource.py
* Update datasource.py
(cherry picked from commit c771625f10)
* [csv-upload] Fixing message encoding (#6971)
(cherry picked from commit 48431ab5b9)
* [sql-parse] Fixing LIMIT exceptions (#6963)
(cherry picked from commit 3e076cb60b)
* Adding custom control overrides (#6956)
* Adding extraOverrides to line chart
* Updating extraOverrides to fit with more cases
* Moving extraOverrides to index.js
* Removing webpack-merge in package.json
* Fixing metrics control clearing metric
(cherry picked from commit e6194051f4)
* [sqlparse] Fixing table name extraction for ill-defined query (#7029)
(cherry picked from commit 07c340cf82)
* [missing values] Removing replacing missing values (#4905)
(cherry picked from commit 61add606ca)
* [SQL Lab] Improved query and results tabs rendering reliability (#7082)
closes#7080
(cherry picked from commit 9b58e9f492)
* Fix filter_box migration PR #6523 (#7066)
* Fix filter_box migration PR #6523
* Fix druid-related bug
(cherry picked from commit b210742ad2)
* SQL editor layout makeover (#7102)
This PR includes the following layout and css tweaks:
- Using flex to layout the north and south sub panes of query pane so resizing works properly in both Chrome and Firefox
- Removal of necessary wrapper divs and tweaking of css in sql lab so we can scroll to the bottom of both the table list and the results pane
- Make sql lab's content not overflow vertically and layout the query result area to eliminate double scroll bars
- css tweaks on the basic.html page so the loading animation appears in the center of the page across the board
(cherry picked from commit 71f1bbd2ec)
* [forms] Fix handling of NULLs
(cherry picked from commit e83a07d3df)
* handle null column_name in sqla and druid models
(cherry picked from commit 2ff721ae07)
* Use metric name instead of metric in filter box (#7106)
(cherry picked from commit 003364e74e)
* Bump python lib croniter to an existing version (#7132)
Package maintainers should really never delete packages, but it appears
this happened with croniter and resulted in breaking our builds.
This PR bumps to a more recent existing version of the library
(cherry picked from commit 215ed392a1)
* Revert PR #6933 (#7162)
* Add decorator for etag cache
* Fetch charts with GET
* Small fixes
* Fix typo
* Compute correct cache key; fix logging
* Check perms on cached response
* Revert change
* If perms fail, return naked response
* Fix lint
* Compute cache key from all form data
* Pass extra_filters in GET request
* Fix pylint
* Fix flake8
* Use ETags even if no cache is set
* Handle adhoc filters
* Raise in debug mode
* Rename actions
* Fix integration tests
* Do POST request on new charts
* Set extra/adhoc filters only in GET requests
* Raise if check_perms fails
* Refactor auth
* Fix flake8
* Fix js unit tests
* Fix js unit tests that fail in lyftga
* Fix js
* Sparkline dates aren't formatting in Time Series Table (#6976)
* Exclude venv for python linter to ignore
* Fix NaN error
* Changing time table viz to pass formatTime a date (#7020)
(cherry picked from commit 7f3c145b1f)
* SQL editor layout makeover (#7102)
This PR includes the following layout and css tweaks:
- Using flex to layout the north and south sub panes of query pane so resizing works properly in both Chrome and Firefox
- Removal of necessary wrapper divs and tweaking of css in sql lab so we can scroll to the bottom of both the table list and the results pane
- Make sql lab's content not overflow vertically and layout the query result area to eliminate double scroll bars
- css tweaks on the basic.html page so the loading animation appears in the center of the page across the board
(cherry picked from commit 71f1bbd2ec)
* Add decorator for etag cache
* Fetch charts with GET
* Small fixes
* Fix typo
* Compute correct cache key; fix logging
* Check perms on cached response
* Revert change
* If perms fail, return naked response
* Fix lint
* Compute cache key from all form data
* Pass extra_filters in GET request
* Fix pylint
* Fix flake8
* Use ETags even if no cache is set
* Handle adhoc filters
* Raise in debug mode
* Rename actions
* Fix integration tests
* Do POST request on new charts
* Set extra/adhoc filters only in GET requests
* Raise if check_perms fails
* Refactor auth
* Fix flake8
* Fix js unit tests
* Fix js unit tests that fail in lyftga
* Fix js
* Fix bad merge
* Use far future when max_age=0
* revert: bignumber patch to prevent rendering regression in charts
* Revert "Fix rendering regression from the introduction of bignumber (#6937)"
* fix: consume the bignumber.js reversion -- apply the bignumber conversion in `actions/sqlLab.js` where it is needed (aka opt into bignumber.js).
* Revert "Fix deck.gl form data (#6953)" b/c formData now returns snake_cased properties for deck vizzes.
In superset-ui 0.8.0, we used bignumber.js to transform numbers in chartProps' payload from plain 64-bit floats to BigNumber instances. This causes a number of charts to render incorrectly when comparison functions in the rendering algorithms operate on BigNumber objects instead of floats. This PR uses the preTransformProps step in SuperChart to transform BigNumber instances back to floats so charts can render properly.
* setup plugin and add SuperChart
* Integrate SuperChart into Chart.jsx
* Add vizType as class name
* Remove .slice_container
* add snakeCase to sanitize class name
* Remove old code to load charts
* Fix supportedAnnotationTypes
* Update AnnotationTypes, remove unnecessary imports and dependency from VIZ_TYPES
* remove index.js and update unit test
* resolve tree map issue
* fix issue with annotation types
* fix proptypes
* add )
* address a few comments
* create bound functions
* bound more functions
* add reselect
* use reselect for chartprops
* improve performance with reselect
* remove unused props
* Remove getFilters() and update table test
* Remove unused code
* Delete adaptors
* switch to react-loadable
* Rewrite with reloadable
* Add timeout back
* remove loading
* update table unit test
* remove pastDelay
* [refactor] Migrate from Mocha+Chai to Jest
This change migrates all the existing unit tests
- to Jest's global expect and matchers from chai's imported expect, asserts and matchers.
- to Jest's describe/test from mocha's describe/it
The majority of the mechanical changes to tests are achieved through running jest-codemods. The only two note-worthy manual tweaks:
1. Setting a testURL of http://localhost in jest config and adjusting a few tests to leverage this value instead of relying on about:blank.
2. Re-enabling ExploreChartPanel_spec which was previously commented out as we cannot have empty tests with nothing in it with Jest. :)
This change also removes dependencies to Mocha and Chai.
* Remove the test:one command as it now does the same thing as test.
* Fixing lint errors. The diff looks large but is large done through `yarn run lint --fix`
The only noteworthy change is the one in eslintrc for tests. The env has been updated from mocha to jest.
* Adding eslint-plugin-jest and further modify tests.
- One small fix in sqllab's Timer Spec for a test that is not using the spy it created for testing.
- Deletion of a duplicated test caught by eslint-plugin-jest.
* - Make istanbul coverage work with Jest.
- Remove dependency on stand-alone istanbul and babel-istanbul as they're built-into jest. Yes!
* Attempt to fix dynamic imports in tests.
* run sequentially and log heap usage
* - tweaking maxworkers for travis and specifying coverageDirectory for codecov
- remove dynamic import in shim.js now that it is set in babelrc for tests only.
* Bumping react==16.4.1 & enzyme==3.3.0
The upgrade was pretty smooth except for a cryptic message coming
out of react-select around running multiple copies of React. It turns
out the `common` bundle had React and was conflicting with explore and
dashboard apps, only in 16.x. This somehow wasn't a problem in 15.x
outside of the wasted resources.
Running 16.4 should bring in all sorts of perf improvements and features
we've all been waiting for.
https://reactjs.org/blog/2017/09/26/react-v16.0.html
TODO: react-bootstrap-datetimepicker isn't compatible with React 16
* Trying to deprecate react-bootstrap-datetime
* Moving forward
* Reintroducing tests
* [perf] add webpack 4 + SplitChunks + lazy load visualizations (#5240)
* [webpack] setup lazy loading for all visualizations
* [lazy-load] push renderVis function to <Chart /> state
* no mapbox token
* [lazy loading] use native webpack import func to fix chunk names, add babel-plugin-syntax-dynamic-import, fix rebase bug.
* fix geojson import, undefined t, and fix async css bug
* [lazy load] actually add babel-plugin-syntax-dynamic-import
* [webpack] working dev version of webpack v4
* [webpack 4] fix url issues, use mini-css-extract-plugin and webpack-assets-manifest plugins
* [webpack 4] use splitchunks for all files, update templates to multi-file entrypoints
* [webpack 4] multiple theme entry files for markup vis css, don't uglify mapbox
* [webpack 4] lint python manifest changes, update yarn lock.
* [webpack 4] fix tests with babel-plugin-dynamic-import-node
* [webpack 4] only use 'dynamic-import-node' plugin in tests, update <Chart /> vis promise when vis type changes
* [webpack 4] clean up package.json and yarn.lock after rebase
* [webpack 4] lint?
* [webpack 4] lint for real
* [webpack 4][istanbul] ignore visualizations/index.js
* [webpack 4] fix rebase bug, update dashboard/deprecated/chart/Chart.jsx to use vis promises.
* [webpack 4] lint and test
* [webpack 4] yarn.lock
* [webpack] setup lazy loading for all visualizations
* [lazy-load] push renderVis function to <Chart /> state
* no mapbox token
* [lazy loading] use native webpack import func to fix chunk names, add babel-plugin-syntax-dynamic-import, fix rebase bug.
* fix geojson import, undefined t, and fix async css bug
* [lazy load] actually add babel-plugin-syntax-dynamic-import
* [webpack] working dev version of webpack v4
* [webpack 4] fix url issues, use mini-css-extract-plugin and webpack-assets-manifest plugins
* [webpack 4] use splitchunks for all files, update templates to multi-file entrypoints
* [webpack 4] multiple theme entry files for markup vis css, don't uglify mapbox
* [webpack 4] lint python manifest changes, update yarn lock.
* [webpack 4] fix tests with babel-plugin-dynamic-import-node
* [webpack 4] only use 'dynamic-import-node' plugin in tests, update <Chart /> vis promise when vis type changes
* [webpack 4] clean up package.json and yarn.lock after rebase
* [webpack 4] lint?
* [webpack 4] lint for real
* [webpack 4][istanbul] ignore visualizations/index.js
* [webpack] setup lazy loading for all visualizations
* [lazy-load] push renderVis function to <Chart /> state
* no mapbox token
* [lazy loading] use native webpack import func to fix chunk names, add babel-plugin-syntax-dynamic-import, fix rebase bug.
* fix geojson import, undefined t, and fix async css bug
* [lazy load] actually add babel-plugin-syntax-dynamic-import
* [webpack] working dev version of webpack v4
* [webpack 4] fix url issues, use mini-css-extract-plugin and webpack-assets-manifest plugins
* [webpack 4] use splitchunks for all files, update templates to multi-file entrypoints
* [webpack 4] multiple theme entry files for markup vis css, don't uglify mapbox
* [webpack 4] lint python manifest changes, update yarn lock.
* [webpack 4] fix tests with babel-plugin-dynamic-import-node
* [webpack 4] only use 'dynamic-import-node' plugin in tests, update <Chart /> vis promise when vis type changes
* [webpack 4] clean up package.json and yarn.lock after rebase
* [webpack 4] lint?
* [webpack 4] lint for real