* Query search page under SQL Lab tab
* Modifications based on comments
* Hash
* Added spec and endpoint test with modifications
based on second round comments
* Changed permission menu in https://github.com/airbnb/caravel/pull/1095/files
* Query search page under SQL Lab tab
* Modifications based on comments
* Hash
* Added spec and endpoint test with modifications
based on second round comments
* Changed permission menu in https://github.com/airbnb/caravel/pull/1095/files
* [FilterBox] dashboard date range filtering
* [filtering] define combo of slice/fields unafected by filtering
* adding an entry to the docs
* Addressed comments
* Generalize switch between different datasources.
* Fix previous migration since slice model changed
* Fix warm up cache and other small stuff
* Adding modules and datasources through config
* Replace tabs w/ spaces
* Fix other style issues
* Change add method for SliceModelView to pick the first non-empty ds
* Remove tests on slice add redirect
* Change way of db migration
* Fix styling
* Fix create slice
* Small fixes
* Fix code climate check
* Adding notes on how to create new datasource in CONTRIBUTING.md
* Fix last merge
* A commit just to trigger travis build again
* Add migration to merge two heads
* Fix codeclimate
* Simplify source_registry
* Fix codeclimate
* Remove all getter methods
* Handling timeouts
* Fixing timer on non-utc server
* Allowing async with results
* [bugfix] database is not selected
* Making sure the session is up and running
* Cleaning up query results and query objects
* Picking a groupby and metric field on visualize flow
* Showing local time in query history
* Using pull-left pull-right instead of grid layout for table metdata
Long column name were looking weird and icons were wrapping oddly
* Linting
* Eliminating east buttons under the sql editor
* Sort database dropdown by name
* Linting
* Allowing non-SELECT statements to run
* Adding a db config
* Making sqla checkout check cross-db
* move initialization of Database sqlalchemy_uri and password from DatabaseView.pre_add to utils.get_or_create_main_db.
Unit tests for mysql and postgres include username and password in the SQLALCHEMY_DATABASE_URI.
* modified test_testconn to work with sqlalchemy uri with a username and password.
* [SQL Lab] Adding DB options for SQL LAb
each db can be exposed or not in SQL Lab
CTAS is an option
target_schema placeholder (not hooked yet, but would force the CTAS to
target a specific schema)
* Addressing comments
* Carapal react mockup
This is really just a mock up written in React to try different
components. It could become scaffolding to build a prototype, or not.
* Merging in Alanna's theme tweaks for SQL lab
* Tweak the display of the alert message in navbar
* Sketching the middleware refresh for Queries
* Adjustments
* Implement timer sync.
* CTAS
* Refactor the queries to be stored as a dict. (#994)
* Download csv endpoint. (#992)
* CSV download engdpoint.
* Use lower case booleans.
* Replcate loop with the object lookup by key.
* First changes for the sync
* Address comments
* Fix query deletions. Update only the queries from the store.
* Sync queries using tmp_id.
* simplify
* Fix the tests in the carapal. (#1023)
* Sync queries using tmp_id.
* Fix the unit tests
* Bux fixes. Pass 2.
* Tweakin' & linting
* Adding alpha label to the SQL LAb navbar entry
* Fixing the python unit tests
* [panoramix] -> [dashed]
* merge from caravel/master
* Updated from airbnb
* Cleaning
* Rebase with upstream/master
* merge from caravel/master
* Updated from airbnb
* Cleaning
* Manual rebase
* Last pending change to rebase
* Convert date to datetime before serialization.
Approach choosen: transform data before serialize and keep just one way to serialize
* Unit test created
* stupid error :(
* remove uneeded code and rename test
* Avoid double type checking
Test updated
note: isinstance(<datetime>, <date>) == True, check order changed
* Increase coverage
* Fix assertRaises
* Add the new field "is_restricted" to SqlMetric and DruidMetric
* Add the access control on metrics
* Add the more descriptions on is_restricted
* Update docs/security.rst
* Update docs/security.rst
It looks like COUNT(*) returns a numpy.int64 value that the
default JSONEncoder does not handle.
While at if we get a type we are not handling make it easier to
debug the issue by throwing a TypeError exception with useful
data.
Fix#486