* [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
* pass the request arg in the /caravel/slices/<slice_id>/ endpoint.
remove unused import.
* test that a single slice redirects rather than testing them all. update standalone redirect logic for Javascript 'false' instead of Python False
With gamma users saving the dashboard model would fail if they
are not owner of the dashboard.
So if that's not the case just disable the "Add a new slice to
the dashboard" and "Save the current positioning and CSS".
Refs #359
* Add Histogram as a visualization
The css and js file use the histogram code from https://bl.ocks.org/mbostock/3048450.
THe viz.py extends from BaseViz to create chart data only for one histogram
* using d3.layout.histogram
* CSS updated
The new css has been used from the d3 chart http://bl.ocks.org/mbostock/1933560
* bars are visible
* added semicolons
* histogram from http://bl.ocks.org/mbostock/1933560
It takes as input no of bins. The histogram cycles through
a set of colors for different lengths of the bar. It places a
y axis coordinate on top or on the upper end of the bar
whichever is suitable.
* update style changes
* Altering theme for more subtle alerts / labels / buttons
* Taking comments into account
* changed button-primary to more sober grey instead of brand-primary
* remove carousel from theme demo page and other useless items
* Forcing links to be gray
After ea8a7ec1ba creating a slice
started redirecting to druid datasource from sqlalchemy tables.
That's quite painful for sqlalchemy tables users.
Instead of hardcoding a choice just query the db, if we don't
have any druid datasource fallback to sqlalchemy tables.
Bonus points we remove hacky javascript and make the message
translatable.
While at it fix druid client test to not hardcode datasource id.
* caravel: fix visualization cache for python3
python3 wants bytes and not strings:
2016-07-22 10:36:09,474:INFO:root:Caching for the next 28800 seconds
2016-07-22 10:36:09,475:WARNING:root:Could not cache key 1eeb45f32960f0df0ad99a125bdaf199
2016-07-22 10:36:09,475:ERROR:root:'str' does not support the buffer interface
Traceback (most recent call last):
File "/home/rm/caraveltest/venv/lib/python3.4/site-packages/caravel/viz.py", line 306, in get_json
zlib.compress(self.json_dumps(payload)),
TypeError: 'str' does not support the buffer interface
Tested with memcached and pylibmc client library.
* docs: add note about using a proper memcached client library
* Preselect filters in filter boxes according to the get parameters
* Use the JSX version in dashboard.html
* Use default parameters in ES6 and fix the indent
* Added documentation of the health check endpoint
* Adding Minute and Second time grains for MySQL
* Fixed Migration script so that it doesn't break when new fields added to the models for Dashboards or Slices (using declarative base)
* Revert "Fixed Migration script so that it doesn't break when new fields added to the models for Dashboards or Slices (using declarative base)"
This reverts commit 0b6dd696d6.
* Code Cleanliness
* time format minor features added
* add description for datetime format input
* db version bug walkaround
* removed unecessary comments and fixed minor bug
* fixed code style
* minor fix
* fixed missing time format column in DruidDatasource
* Update models.py
Minor style fix
* Revert "Update models.py"
This reverts commit 6897c388e0.
* removed timestamp_format from druid and removed try catch in migration
* Using spaces, not tabs
* get the most updated migration and add the migration on the head of it
* remove vscode setting file
* use colunm based dttm_format
* modify dttm_converter
* modify datetime viz
* added comments and documents
* fixed some description and removed unnecessary import
* fix migration head
* minor style
* minor style
* deleted empty lines
* delete print statement
* add epoch converter
* error fixed
* fixed epoch parsing issue
* delete unnecessary lines
* fixed typo
* fix minor error
* fix styling issues
* fix styling error
* fixed typo
* support epoch_ms and did some refactoring
* fixed styling error
* fixed styling error
* add one more dataset to test dttm_format and db_expr
* add more slices
* styling
* specified String() lenght
* simple mapbox viz
use react-map-gl
superclustering of long/lat points
Added hook for map style, huge performance boost from bounding box fix, added count text on clusters
variable gradient size based on metric count
Ability to aggregate over any point property
This needed a change in the supercluster npm module, a PR was placed here:
https://github.com/mapbox/supercluster/pull/12
Aggregator function option in explore, tweaked visual defaults
better radius size management
clustering radius, point metric/unit options
scale cluster labels that don't fit, non-numeric labels for points
Minor fixes, label field affects points, text changes
serve mapbox apikey for slice
global opacity, viewport saves (hacky), bug in point labels
fixing mapbox-gl dependency
mapbox_api_key in config
expose row_limit, fix minor bugs
Add renderWhileDragging flag, groupby. Only show numerical columns for point radius
Implicitly group by lng/lat columns and error when label doesn't match groupby
'Fix' radius in miles problem, still some jankiness
derived fields cannot be typed as of now -> reverting numerical number change
better grouping error checking, expose count(*) for labelling
Custom colour for clusters/points + smart text colouring
Fixed bad positioning and overflow in explore view + small bugs + added thumbnail
* landscaping & eslint & use izip
* landscapin'
* address js code review
At the moment, when using the "Period Ratio" option, a percentage
formatting is forced on the Y Axis. This code pre-dates the `Y Axis
Format` option.
People may want to see a growth rate, in which case the current `.3p`
isn't what they want, or they may want only 2 digits of precision or
whatever else. This PR allows that.
* Flashed messaged should be flushed in every page
* Show error messages in AJAX style
* Introduce the decorator "api"
* Move toggleCheckbox() to the right place and trigger it in jQuery style
when using sql.html page to run sql directly, for any SELECT * sql, when click run! button for the second time,
the page will show error msg like: DataTables warning: table id={id} - Cannot reinitialise DataTable.
this can be fix by:https://datatables.net/manual/tech-notes/3#retrieve
* fixed
* basic implementation of the iframe embed popover
* remove unecessary comments
* remove public embed iframe
* remove debug print line and public access
* remove uncessary extra line and use better text explain
* maintain the style of airbnb/master
* fixed style
* re-run the test locally. Made sure it passed
* 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
* caravel: mark viz strings for translations
* caravel: mark templates string for translation
* caravel: make forms strings translatable
* Update translations
So that we can install caravel on postgresql:
```
2016-06-03 17:58:05,386:ERROR:flask_appbuilder.base:
Add Permission on Menu Error: (psycopg2.ProgrammingError) can't adapt type '_LazyString'
[SQL: 'SELECT ab_view_menu.id AS ab_view_menu_id, ab_view_menu.name AS
ab_view_menu_name \nFROM ab_view_menu \nWHERE ab_view_menu.name = %(name_1)s \n
LIMIT %(param_1)s'] [parameters: {'param_1': 1, 'name_1': l'Sources'}]
```
Other that translating names should be a recipe for disaster if
you switch language.
Fix#558