Compare commits
219 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c0c9763975 | ||
|
|
0fcdfcfd8c | ||
|
|
663fb0f584 | ||
|
|
05367a0c10 | ||
|
|
f99c22af0f | ||
|
|
a1173f4346 | ||
|
|
91c5ce9080 | ||
|
|
16787ee8f8 | ||
|
|
7e082968dd | ||
|
|
9478291bf6 | ||
|
|
4ee0833b27 | ||
|
|
6e1d169d0f | ||
|
|
7922ccfddc | ||
|
|
0c87e23877 | ||
|
|
d6f1024d99 | ||
|
|
680bfc1b43 | ||
|
|
1e99f9eb95 | ||
|
|
e943c25790 | ||
|
|
21e495c1ef | ||
|
|
fa0aa33767 | ||
|
|
22d555b14e | ||
|
|
342180b263 | ||
|
|
d2d973153f | ||
|
|
5badec38e4 | ||
|
|
e0bbb0c77e | ||
|
|
db24cef03b | ||
|
|
4a6adb2f27 | ||
|
|
d85cd5a972 | ||
|
|
5305bdb267 | ||
|
|
ae7a9dc63d | ||
|
|
f9106f80fd | ||
|
|
4ff17ffc8d | ||
|
|
1769804ffd | ||
|
|
54d387598d | ||
|
|
5ab4915a1f | ||
|
|
387bf766d3 | ||
|
|
0480fa0121 | ||
|
|
6f1150fef4 | ||
|
|
2e172d77cf | ||
|
|
8fe1f8fb3f | ||
|
|
c4eba9e467 | ||
|
|
90d9616f2b | ||
|
|
803738436e | ||
|
|
f14c1bb593 | ||
|
|
31a0b6e5b0 | ||
|
|
27538386bc | ||
|
|
3b35ddf135 | ||
|
|
d5ab6c8d3d | ||
|
|
a4ecff4e23 | ||
|
|
19a0827d1f | ||
|
|
2d8a0cc6c9 | ||
|
|
2789385688 | ||
|
|
e965f95477 | ||
|
|
ad212272d1 | ||
|
|
6d37d97ba5 | ||
|
|
fdd42ef4b6 | ||
|
|
a616bf4082 | ||
|
|
a9e1e685ba | ||
|
|
d41418eaa0 | ||
|
|
1f8fccc0f9 | ||
|
|
75a2b4f610 | ||
|
|
133f98ad58 | ||
|
|
1a7ef4758b | ||
|
|
c77bab8160 | ||
|
|
724c3f48a4 | ||
|
|
073d56cb33 | ||
|
|
e4a95f9428 | ||
|
|
1b06140bde | ||
|
|
f8dcbf70c5 | ||
|
|
b9299d61ac | ||
|
|
2384ad4eb5 | ||
|
|
2b66eadee2 | ||
|
|
94d9337e0b | ||
|
|
a0621e10a8 | ||
|
|
b72d5b03dc | ||
|
|
914480ad3c | ||
|
|
ff2f85f39b | ||
|
|
9cf16a4ff2 | ||
|
|
b90c410c01 | ||
|
|
77d1e5d046 | ||
|
|
4bc5fe5495 | ||
|
|
2c72a7ae4f | ||
|
|
4b11f45f72 | ||
|
|
04ae004f43 | ||
|
|
29ef8c4af8 | ||
|
|
718230cdf2 | ||
|
|
8175e19f72 | ||
|
|
7b76356182 | ||
|
|
1c56319be4 | ||
|
|
36caca3244 | ||
|
|
5079b2aa95 | ||
|
|
cab8e7d22d | ||
|
|
85d137b20a | ||
|
|
a942f81dfd | ||
|
|
01043c9bf4 | ||
|
|
a9610e2886 | ||
|
|
5897d85f7a | ||
|
|
0367dce38b | ||
|
|
1ca1395382 | ||
|
|
2607e4be4d | ||
|
|
04680e5ff1 | ||
|
|
a7a6678d5c | ||
|
|
8069d6221d | ||
|
|
269f55c29a | ||
|
|
bca27b436b | ||
|
|
aecaa85905 | ||
|
|
7e36488f03 | ||
|
|
87c3e831a8 | ||
|
|
ee63ebc8ec | ||
|
|
5916291901 | ||
|
|
4b0f252170 | ||
|
|
9176a4072b | ||
|
|
0cb7c5e4a6 | ||
|
|
e182f7f962 | ||
|
|
23c98294bd | ||
|
|
22bdd9e324 | ||
|
|
b159e51787 | ||
|
|
d57012067b | ||
|
|
9364fb5b79 | ||
|
|
c49fb0aa9b | ||
|
|
b9af019567 | ||
|
|
e7f8143c3b | ||
|
|
c9e47f0bb3 | ||
|
|
686023c8dd | ||
|
|
d997a450cf | ||
|
|
9e053923d4 | ||
|
|
ef06a9d497 | ||
|
|
37205099db | ||
|
|
e498f2fcb6 | ||
|
|
f7c55270db | ||
|
|
0a6208296e | ||
|
|
bf4d3a0dff | ||
|
|
b227612f6e | ||
|
|
45686a1af6 | ||
|
|
82ed4878c4 | ||
|
|
6e1ec8347d | ||
|
|
f905726c24 | ||
|
|
69195f8d2d | ||
|
|
b4909f2d03 | ||
|
|
44e753d94d | ||
|
|
e4903e6dc6 | ||
|
|
d4e8d57fc4 | ||
|
|
281ae45495 | ||
|
|
ff4f9b4527 | ||
|
|
86f9087ea2 | ||
|
|
7cd9b85831 | ||
|
|
71e1eea9f4 | ||
|
|
1e79e9cd2a | ||
|
|
af7cdeba4d | ||
|
|
500e6256c0 | ||
|
|
e79d05fd77 | ||
|
|
fc85756c20 | ||
|
|
6081f7161a | ||
|
|
c21513fb8c | ||
|
|
ec752b1378 | ||
|
|
cf1d9ce1e6 | ||
|
|
6188d60fec | ||
|
|
dfc28f37eb | ||
|
|
23c834f04e | ||
|
|
c84211ec44 | ||
|
|
7d374428d3 | ||
|
|
3a2974f589 | ||
|
|
3ed8f5fc23 | ||
|
|
61755f0b7d | ||
|
|
0a3d2fccd4 | ||
|
|
0b40c8a26f | ||
|
|
81df7087db | ||
|
|
cb7c5aa70c | ||
|
|
5bc581fd44 | ||
|
|
5ee70b244b | ||
|
|
a26cf001c4 | ||
|
|
e02d35ed5c | ||
|
|
e98a1c3537 | ||
|
|
4404751a1d | ||
|
|
defe6789c0 | ||
|
|
823f306f24 | ||
|
|
72627b1761 | ||
|
|
1702b020be | ||
|
|
89f6ccc1c6 | ||
|
|
eff5952641 | ||
|
|
f10395b2f7 | ||
|
|
b2647567c0 | ||
|
|
028456572b | ||
|
|
84a7730f47 | ||
|
|
76a2f95231 | ||
|
|
9904593dc3 | ||
|
|
8f00e9e30b | ||
|
|
16ab696d7c | ||
|
|
1ce14df43d | ||
|
|
34d6618b2e | ||
|
|
abdd1d537f | ||
|
|
d9fda346cb | ||
|
|
6cbe0e6096 | ||
|
|
268edcfedd | ||
|
|
c5ddf57124 | ||
|
|
f9202ba179 | ||
|
|
17635e1a2b | ||
|
|
285197926e | ||
|
|
5466fab2a0 | ||
|
|
ed85032277 | ||
|
|
680e1cbb42 | ||
|
|
2d37dec5ff | ||
|
|
3f4c306bd6 | ||
|
|
ac432495d7 | ||
|
|
12fb7c1a62 | ||
|
|
feb15a30a2 | ||
|
|
eb0f3970cf | ||
|
|
b82d15af76 | ||
|
|
32b38ee2d6 | ||
|
|
1d702f2142 | ||
|
|
4ae77ba8af | ||
|
|
3c72e1f8fb | ||
|
|
4bfe08d7c3 | ||
|
|
3a7ed8d194 | ||
|
|
4d204b3b36 | ||
|
|
39ee33aeff | ||
|
|
831cd21737 | ||
|
|
a82bb588f4 | ||
|
|
a84bd5225c |
2
.gitignore
vendored
@@ -31,7 +31,7 @@ app.db
|
||||
*.entry.js
|
||||
*.js.map
|
||||
node_modules
|
||||
npm-debug.log
|
||||
npm-debug.log*
|
||||
yarn.lock
|
||||
superset/assets/version_info.json
|
||||
|
||||
|
||||
11
.travis.yml
@@ -10,7 +10,6 @@ cache:
|
||||
env:
|
||||
global:
|
||||
- TRAVIS_CACHE=$HOME/.travis_cache/
|
||||
- TRAVIS_NODE_VERSION="7.10.0"
|
||||
matrix:
|
||||
- TOX_ENV=flake8
|
||||
- TOX_ENV=javascript
|
||||
@@ -19,18 +18,14 @@ env:
|
||||
- TOX_ENV=py34-sqlite
|
||||
- TOX_ENV=py27-mysql
|
||||
- TOX_ENV=py27-sqlite
|
||||
before_install:
|
||||
- npm install -g npm@'>=5.4.1'
|
||||
before_script:
|
||||
- mysql -e 'drop database if exists superset; create database superset DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci' -u root
|
||||
- mysql -u root -e "DROP DATABASE IF EXISTS superset; CREATE DATABASE superset DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci"
|
||||
- mysql -u root -e "CREATE USER 'mysqluser'@'localhost' IDENTIFIED BY 'mysqluserpassword';"
|
||||
- mysql -u root -e "GRANT ALL ON superset.* TO 'mysqluser'@'localhost';"
|
||||
- psql -c 'create database superset;' -U postgres
|
||||
- psql -c "CREATE USER postgresuser WITH PASSWORD 'pguserpassword';" -U postgres
|
||||
- psql -U postgres -c "CREATE DATABASE superset;"
|
||||
- psql -U postgres -c "CREATE USER postgresuser WITH PASSWORD 'pguserpassword';"
|
||||
- export PATH=${PATH}:/tmp/hive/bin
|
||||
install:
|
||||
- pip install --upgrade pip
|
||||
- pip install tox tox-travis
|
||||
- pip install --upgrade flake8
|
||||
- rm -rf ~/.nvm && git clone https://github.com/creationix/nvm.git ~/.nvm && (cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`) && source ~/.nvm/nvm.sh && nvm install $TRAVIS_NODE_VERSION
|
||||
script: tox -e $TOX_ENV
|
||||
|
||||
146
CHANGELOG.md
@@ -1,5 +1,151 @@
|
||||
## Change Log
|
||||
|
||||
### 0.22.1
|
||||
Fixes 0.22.0
|
||||
|
||||
### 0.22.0
|
||||
Bad empty release
|
||||
|
||||
### 0.21.2 (2017/12/11 21:18 +00:00)
|
||||
- [#3974](https://github.com/apache/incubator-superset/pull/3974) [Bugfix] `_add_filters_from_pre_query` doesn't handle dim specs (#3974) (@Mogball)
|
||||
- [#4041](https://github.com/apache/incubator-superset/pull/4041) [API] Deprecate /update_role/ API endpoint (#4041) (@john-bodley)
|
||||
- [#4030](https://github.com/apache/incubator-superset/pull/4030) resolve python2 str() issue (#4030) (@timifasubaa)
|
||||
|
||||
### 0.21.1
|
||||
Bad-empty release
|
||||
|
||||
### 0.21.0 (2017/12/08 09:11 +00:00)
|
||||
- [#4031](https://github.com/apache/incubator-superset/pull/4031) apply custom css for dashboard initially load (#4031) (@graceguo-supercat)
|
||||
- [#3891](https://github.com/apache/incubator-superset/pull/3891) [BUGFIX]: Fixing dttm_sql_literal to use python_date_format when specified. (#3891) (@fabianmenges)
|
||||
- [#3947](https://github.com/apache/incubator-superset/pull/3947) Add fastdom js dependency (#3947) (@mistercrunch)
|
||||
- [#4015](https://github.com/apache/incubator-superset/pull/4015) Remove unused callbacks when setting state (#4015) (@betodealmeida)
|
||||
- [#4017](https://github.com/apache/incubator-superset/pull/4017) Fixed finding postaggregations (#4017) (@Mogball)
|
||||
- [#3941](https://github.com/apache/incubator-superset/pull/3941) New time_pivot visualization (#3941) (@mistercrunch)
|
||||
- [#3959](https://github.com/apache/incubator-superset/pull/3959) Add type MONEY as numeric type (#3959) (@mistercrunch)
|
||||
- [#3969](https://github.com/apache/incubator-superset/pull/3969) Add row_limit to heatmap controls (#3969) (@mistercrunch)
|
||||
- [#4019](https://github.com/apache/incubator-superset/pull/4019) Add support of another DatabaseError format (#4019) (@dmigo)
|
||||
- [#3975](https://github.com/apache/incubator-superset/pull/3975) asciifying http header for csv download; fixes #3952 (#3975) (@rumbin)
|
||||
- [#4001](https://github.com/apache/incubator-superset/pull/4001) Add has_access to import_dashboard (#4001) (@timifasubaa)
|
||||
- [#3999](https://github.com/apache/incubator-superset/pull/3999) [sql lab] fix position of 'save query' Popover (#3999) (@mistercrunch)
|
||||
- [#4003](https://github.com/apache/incubator-superset/pull/4003) Call props.onChange only when closing filter (#4003) (@betodealmeida)
|
||||
- [#3978](https://github.com/apache/incubator-superset/pull/3978) Adding YAML Import-Export for Datasources to CLI (#3978) (@fabianmenges)
|
||||
- [#4009](https://github.com/apache/incubator-superset/pull/4009) Rollback bulk-delete of table columns (#4009) (@alanmcruickshank)
|
||||
- [#4000](https://github.com/apache/incubator-superset/pull/4000) Add Datasource Name filter under slice list view (#4000) (@graceguo-supercat)
|
||||
- [#3997](https://github.com/apache/incubator-superset/pull/3997) Alternate PR to #3970 (#3997) (@mistercrunch)
|
||||
- [#3976](https://github.com/apache/incubator-superset/pull/3976) [doc] added setting X-Forwarded-Proto to https behind reverse proxy with ssl encryption; fixes #3655 (#3976) (@rumbin)
|
||||
- [#3991](https://github.com/apache/incubator-superset/pull/3991) Create CODE_OF_CONDUCT.md (#3991) (@mistercrunch)
|
||||
- [#3967](https://github.com/apache/incubator-superset/pull/3967) [Dashboard] fix a filter refresh bug and add Test (#3967) (@graceguo-supercat)
|
||||
- [#3965](https://github.com/apache/incubator-superset/pull/3965) [docs] making it clear sqlite shouldn't be used in a cluster (#3965) (@mistercrunch)
|
||||
- [#3957](https://github.com/apache/incubator-superset/pull/3957) [time series table] visual improvements (#3957) (@williaster)
|
||||
- [#3958](https://github.com/apache/incubator-superset/pull/3958) Improving speed of dashboard import (#3958) (@michellethomas)
|
||||
- [#3949](https://github.com/apache/incubator-superset/pull/3949) [Bugfix] Druid `run_query` dimensions part 3 + Unit tests (#3949) (@Mogball)
|
||||
- [#3946](https://github.com/apache/incubator-superset/pull/3946) [country_map] use Albers USA projection (#3946) (@mistercrunch)
|
||||
- [#3948](https://github.com/apache/incubator-superset/pull/3948) fix 'superset db history' (#3948) (@mistercrunch)
|
||||
- [#3951](https://github.com/apache/incubator-superset/pull/3951) Allow underscores in slugs (#3951) (@michellethomas)
|
||||
- [#3955](https://github.com/apache/incubator-superset/pull/3955) config: bring back sqlite default database (#3955) (@xrmx)
|
||||
- [#3940](https://github.com/apache/incubator-superset/pull/3940) Add an "Edit Mode" to Dashboard view (#3940) (@mistercrunch)
|
||||
- [#3920](https://github.com/apache/incubator-superset/pull/3920) Fixed branching condition with dimension spec (#3920) (@Mogball)
|
||||
- [#3643](https://github.com/apache/incubator-superset/pull/3643) Import CSV (#3643) (@timifasubaa)
|
||||
- [#3945](https://github.com/apache/incubator-superset/pull/3945) Fix call in Chart (#3945) (@mistercrunch)
|
||||
- [#3933](https://github.com/apache/incubator-superset/pull/3933) minor filter select enhancements (#3933) (@kkalyan)
|
||||
- [#3929](https://github.com/apache/incubator-superset/pull/3929) Make Table Columns & Metrics Bulk-deletable (#3929) (@alanmcruickshank)
|
||||
- [#3922](https://github.com/apache/incubator-superset/pull/3922) [travis] Standardizing before_install (#3922) (@john-bodley)
|
||||
- [#3923](https://github.com/apache/incubator-superset/pull/3923) Switched to span instead of textarea for copytoclipboard (#3923) (@Mogball)
|
||||
- [#3924](https://github.com/apache/incubator-superset/pull/3924) Moved percent metrics to its own row (#3924) (@Mogball)
|
||||
- [#3875](https://github.com/apache/incubator-superset/pull/3875) Revert "Filter out unavailable databases (#3875)" (#3918) (@mistercrunch)
|
||||
- [#3913](https://github.com/apache/incubator-superset/pull/3913) [bugfix] remove quotes from Postgres time grains (#3913) (@mistercrunch)
|
||||
- [#3915](https://github.com/apache/incubator-superset/pull/3915) Fix left padding in dashboard widgets (#3915) (@mistercrunch)
|
||||
- [#3916](https://github.com/apache/incubator-superset/pull/3916) [cosmetic] remove border from table viz (#3916) (@mistercrunch)
|
||||
- [#3912](https://github.com/apache/incubator-superset/pull/3912) When checking if you should renderTriggered make sure key exists in controls (#3912) (@michellethomas)
|
||||
- [#3906](https://github.com/apache/incubator-superset/pull/3906) fix the schema-fetching problem for impala in sql_lab (#3906) (@xiaoyugit)
|
||||
- [#3911](https://github.com/apache/incubator-superset/pull/3911) Add UK Metropolitan Districts and Isle of Man (#3911) (@alanmcruickshank)
|
||||
- [#3904](https://github.com/apache/incubator-superset/pull/3904) Bumping webpack related deps (#3904) (@mistercrunch)
|
||||
- [#3902](https://github.com/apache/incubator-superset/pull/3902) [bugfix] allow limiting word cloud (#3902) (@mistercrunch)
|
||||
|
||||
### 0.21.0rc2 (2017/11/20 17:18 +00:00)
|
||||
- [#3903](https://github.com/apache/incubator-superset/pull/3903) Fixes default hanlding in Altered slice tag (#3903) (@mistercrunch)
|
||||
- [#3910](https://github.com/apache/incubator-superset/pull/3910) Workaround pandas bug in datetimes with time zones (#3910) (@bolkedebruin)
|
||||
- [#3583](https://github.com/apache/incubator-superset/pull/3583) [3541] Augmenting datasources uniqueness constraints (#3583) (@john-bodley)
|
||||
- [#3895](https://github.com/apache/incubator-superset/pull/3895) [druid] Fixing issue 3894 multi-processing w/ Gunicorn (#3895) (@john-bodley)
|
||||
- [#3897](https://github.com/apache/incubator-superset/pull/3897) [druid] Catch IOError when fetching Druid datasource time boundary (#3897) (@john-bodley)
|
||||
- [#3899](https://github.com/apache/incubator-superset/pull/3899) [druid] Renaming refresh_async method (#3899) (@john-bodley)
|
||||
- [#3884](https://github.com/apache/incubator-superset/pull/3884) Add datasource to the SliceAddView modal (#3884) (#3900) (@alanmcruickshank)
|
||||
- [#3890](https://github.com/apache/incubator-superset/pull/3890) [dashboard bug]Instant control should take effect instantly (#3890) (@graceguo-supercat)
|
||||
- [#3879](https://github.com/apache/incubator-superset/pull/3879) Allow users to specify label->color mapping (#3879) (@mistercrunch)
|
||||
- [#3893](https://github.com/apache/incubator-superset/pull/3893) Only refreshing non instant filters on apply (#3893) (@michellethomas)
|
||||
|
||||
### 0.21.0rc1 (2017/11/17 17:33 +00:00)
|
||||
- [#3896](https://github.com/apache/incubator-superset/pull/3896) [druid] Fix datasource column enumeration (#3896) (@john-bodley)
|
||||
- [#3852](https://github.com/apache/incubator-superset/pull/3852) fix input height to match with react-select (#3852) (@graceguo-supercat)
|
||||
- [#3887](https://github.com/apache/incubator-superset/pull/3887) Fixing the build's linting errors (#3887) (@mistercrunch)
|
||||
- [#3851](https://github.com/apache/incubator-superset/pull/3851) A better looking favicon (#3851) (@mistercrunch)
|
||||
- [#3876](https://github.com/apache/incubator-superset/pull/3876) Fix slug function (#3876) (@mistercrunch)
|
||||
- [#3880](https://github.com/apache/incubator-superset/pull/3880) [table] show 'Time' column header instead of '__timestamp' (#3880) (@mistercrunch)
|
||||
- [#3771](https://github.com/apache/incubator-superset/pull/3771) DECKGL integration - Phase 1 (#3771) (@mistercrunch)
|
||||
- [#3843](https://github.com/apache/incubator-superset/pull/3843) Further refactoring around dashboards (#3843) (@mistercrunch)
|
||||
- [#3877](https://github.com/apache/incubator-superset/pull/3877) [dashboard bug] Fix standalone slice (#3877) (@graceguo-supercat)
|
||||
- [#3872](https://github.com/apache/incubator-superset/pull/3872) Add mailing list and move screenshot at the end of README (#3872) (@xrmx)
|
||||
- [#3875](https://github.com/apache/incubator-superset/pull/3875) Filter out unavailable databases (#3875) (@dmigo)
|
||||
|
||||
### 0.20.6 (2017/11/15 05:26 +00:00)
|
||||
- [#3865](https://github.com/apache/incubator-superset/pull/3865) [issue] Resolving issue 2530 (#3865) (@john-bodley)
|
||||
- [#3809](https://github.com/apache/incubator-superset/pull/3809) [cache] Fixing cache key w/ merged extra filters (#3809) (@john-bodley)
|
||||
- [#3869](https://github.com/apache/incubator-superset/pull/3869) Fixing an issue with stripping filter values (#3869) (@michellethomas)
|
||||
- [#3862](https://github.com/apache/incubator-superset/pull/3862) [flake8] Updaing CONTRIBUTING.md (#3862) (@john-bodley)
|
||||
- [#3866](https://github.com/apache/incubator-superset/pull/3866) [Dashboard bug] Fix merged filter param name (#3866) (@graceguo-supercat)
|
||||
- [#3858](https://github.com/apache/incubator-superset/pull/3858) Fix cachedDttm prop type (#3858) (@graceguo-supercat)
|
||||
- [#3847](https://github.com/apache/incubator-superset/pull/3847) [flake8] Resolving Q??? errors (#3847) (@john-bodley)
|
||||
- [#3856](https://github.com/apache/incubator-superset/pull/3856) adding support for getting list of foreign tables for PostgreSQL (#3856) (@mike-schiller)
|
||||
- [#3834](https://github.com/apache/incubator-superset/pull/3834) [Dashboard bug] Slice doesn't show loading icon when loading (#3834) (@graceguo-supercat)
|
||||
- [#3857](https://github.com/apache/incubator-superset/pull/3857) [Dashboard bug]Fix userId prop in Explore view Save_Modal (#3857) (@graceguo-supercat)
|
||||
- [#3850](https://github.com/apache/incubator-superset/pull/3850) [sql lab] minor cosmetic touchups on Run / Save buttons (#3850) (@mistercrunch)
|
||||
- [#3849](https://github.com/apache/incubator-superset/pull/3849) [sqllab] fix wrong error msg (#3849) (@mistercrunch)
|
||||
- [#3842](https://github.com/apache/incubator-superset/pull/3842) Add CHANGELOG.md entries for 0.20.0 to 0.20.5 (#3842) (@mistercrunch)
|
||||
- [#3846](https://github.com/apache/incubator-superset/pull/3846) [flake8] Resolving F5?? errors (#3846) (@john-bodley)
|
||||
- [#3841](https://github.com/apache/incubator-superset/pull/3841) [Dashboard bug] should reset chartAlert when start new query (#3841) (@graceguo-supercat)
|
||||
- [#3510](https://github.com/apache/incubator-superset/pull/3510) Update setup.py (#3510) (@joriewong)
|
||||
- [#3833](https://github.com/apache/incubator-superset/pull/3833) [Dashboard bug] Fix Cache status and dttm information display for each slice (#3833) (@graceguo-supercat)
|
||||
- [#3837](https://github.com/apache/incubator-superset/pull/3837) [Dashboard bug] should reset chartAlert when start new query (#3837) (@graceguo-supercat)
|
||||
- [#3836](https://github.com/apache/incubator-superset/pull/3836) run_tests.sh: call coveralls only on CI (#3836) (@xrmx)
|
||||
- [#3838](https://github.com/apache/incubator-superset/pull/3838) [slice] Removing deprecated argument (#3838) (@john-bodley)
|
||||
- [#3839](https://github.com/apache/incubator-superset/pull/3839) [viz] Fix payload force logic (#3839) (@john-bodley)
|
||||
- [#3668](https://github.com/apache/incubator-superset/pull/3668) [Explore] Altered Slice Tag (#3668) (@Mogball)
|
||||
- [#3813](https://github.com/apache/incubator-superset/pull/3813) [docs] add StatsD setup instructions (#3813) (@mistercrunch)
|
||||
- [#3814](https://github.com/apache/incubator-superset/pull/3814) [flake8] Resolving E3?? errors (#3814) (@john-bodley)
|
||||
- [#3831](https://github.com/apache/incubator-superset/pull/3831) Bump celery to 4.1.0 (#3831) (@mistercrunch)
|
||||
- [#3805](https://github.com/apache/incubator-superset/pull/3805) [flake8] Resolve E1?? errors (#3805) (@john-bodley)
|
||||
- [#3815](https://github.com/apache/incubator-superset/pull/3815) [docstring] Refining warm_up_cache comment (#3815) (@john-bodley)
|
||||
- [#3822](https://github.com/apache/incubator-superset/pull/3822) First time fetching chart should not force refresh. (#3822) (@graceguo-supercat)
|
||||
- [#3740](https://github.com/apache/incubator-superset/pull/3740) Basic German Translation (#3740) (@alanmcruickshank)
|
||||
- [#3816](https://github.com/apache/incubator-superset/pull/3816) [flake8] Resolving E7?? errors (#3816) (@john-bodley)
|
||||
- [#3817](https://github.com/apache/incubator-superset/pull/3817) [flake8] Resolving E4?? errors (#3817) (@john-bodley)
|
||||
- [#3819](https://github.com/apache/incubator-superset/pull/3819) Added /healthcheck endpoint for integrations with envoy (#3819) (@hughhhh)
|
||||
- [#3818](https://github.com/apache/incubator-superset/pull/3818) Fix typo in installation.rst (#3818) (@pswaminathan)
|
||||
- [#3825](https://github.com/apache/incubator-superset/pull/3825) Fix misleading SQL Lab timeout error message (#3825) (@mistercrunch)
|
||||
- [#3823](https://github.com/apache/incubator-superset/pull/3823) fix error message format when long query timeout (#3823) (@graceguo-supercat)
|
||||
- [#3810](https://github.com/apache/incubator-superset/pull/3810) Make overflow important to allow scrolling on dashboard (#3810) (@michellethomas)
|
||||
- [#3811](https://github.com/apache/incubator-superset/pull/3811) [flake8] Resolving F4?? errors (#3811) (@john-bodley)
|
||||
- [#3812](https://github.com/apache/incubator-superset/pull/3812) [flake8] Resolving E2?? errors (#3812) (@john-bodley)
|
||||
- [#3808](https://github.com/apache/incubator-superset/pull/3808) Making time table viz scrollable (#3808) (@michellethomas)
|
||||
- [#3581](https://github.com/apache/incubator-superset/pull/3581) Dashboard refactory (#3581) (@graceguo-supercat)
|
||||
- [#3801](https://github.com/apache/incubator-superset/pull/3801) Stamping version to 0.21.0dev (#3801) (@mistercrunch)
|
||||
- [#3433](https://github.com/apache/incubator-superset/pull/3433) Allowing Leading and Trailing spaces in connection (#3433) (@ishpreet-singh)
|
||||
- [#3796](https://github.com/apache/incubator-superset/pull/3796) Fixed single extraction dimension error (#3796) (@Mogball)
|
||||
- [#3787](https://github.com/apache/incubator-superset/pull/3787) [flake8] Resolving C??? errors (#3787) (@john-bodley)
|
||||
- [#3716](https://github.com/apache/incubator-superset/pull/3716) Update messages.json (#3716) (@magicansk)
|
||||
- [#3784](https://github.com/apache/incubator-superset/pull/3784) [flake8] Resolving W??? errors (#3784) (@john-bodley)
|
||||
- [#3797](https://github.com/apache/incubator-superset/pull/3797) [flake8] Resolve I??? errors (#3797) (@john-bodley)
|
||||
- [#3789](https://github.com/apache/incubator-superset/pull/3789) Add Lyft and Twitter to list of companies (#3789) (@mistercrunch)
|
||||
- [#3794](https://github.com/apache/incubator-superset/pull/3794) [time table] use sparkData values in tooltip (#3794) (@williaster)
|
||||
- [#3793](https://github.com/apache/incubator-superset/pull/3793) Adding back iso and correctly filtering iso from contrib total (#3793) (@michellethomas)
|
||||
- [#3788](https://github.com/apache/incubator-superset/pull/3788) Removing iso from data (#3788) (@michellethomas)
|
||||
- [#3778](https://github.com/apache/incubator-superset/pull/3778) [flake8] Resolving F8?? errors (#3778) (@john-bodley)
|
||||
- [#3785](https://github.com/apache/incubator-superset/pull/3785) Rename files to allow RPM build (#3785) (@SpyderRivera)
|
||||
- [#3783](https://github.com/apache/incubator-superset/pull/3783) [falke8] Resolving F6?? errors (#3783) (@john-bodley)
|
||||
- [#3529](https://github.com/apache/incubator-superset/pull/3529) [explore] using verbose_name in 'Time Column' control (#3529) (@mistercrunch)
|
||||
- [#3654](https://github.com/apache/incubator-superset/pull/3654) [Performance] VirtualizedSelect for SelectControl and FilterBox (#3654) (@Mogball)
|
||||
- [#3697](https://github.com/apache/incubator-superset/pull/3697) DI-1113. ADDENDUM. Authentication: Enable user impersonation for Superset to HiveServer2 using hive.server2.proxy.user (a.fernandez) (#3697) (@afernandez)
|
||||
|
||||
### 0.20.5 (2017/11/06 07:18 +00:00)
|
||||
- [#3776](https://github.com/apache/incubator-superset/pull/3776) [flake8] Enabling flake8 linting (#3776) (@john-bodley)
|
||||
- [#3774](https://github.com/apache/incubator-superset/pull/3774) [sql-lab] Fixing Run Query tooltip (#3774) (@john-bodley)
|
||||
|
||||
84
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,84 @@
|
||||
# Code of Conduct
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
A primary goal of Apache Superset is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof).
|
||||
|
||||
This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior.
|
||||
|
||||
We invite all those who participate in Apache Superset to help us create safe and positive experiences for everyone.
|
||||
|
||||
## 2. Open Source Citizenship
|
||||
|
||||
A supplemental goal of this Code of Conduct is to increase open source citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community.
|
||||
|
||||
Communities mirror the societies in which they exist and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society.
|
||||
|
||||
If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know.
|
||||
|
||||
## 3. Expected Behavior
|
||||
|
||||
The following behaviors are expected and requested of all community members:
|
||||
|
||||
* Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
|
||||
* Exercise consideration and respect in your speech and actions.
|
||||
* Attempt collaboration before conflict.
|
||||
* Refrain from demeaning, discriminatory, or harassing behavior and speech.
|
||||
* Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential.
|
||||
* Remember that community event venues may be shared with members of the public; please be respectful to all patrons of these locations.
|
||||
|
||||
## 4. Unacceptable Behavior
|
||||
|
||||
The following behaviors are considered harassment and are unacceptable within our community:
|
||||
|
||||
* Violence, threats of violence or violent language directed against another person.
|
||||
* Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
|
||||
* Posting or displaying sexually explicit or violent material.
|
||||
* Posting or threatening to post other people’s personally identifying information ("doxing").
|
||||
* Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
|
||||
* Inappropriate photography or recording.
|
||||
* Inappropriate physical contact. You should have someone’s consent before touching them.
|
||||
* Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
|
||||
* Deliberate intimidation, stalking or following (online or in person).
|
||||
* Advocating for, or encouraging, any of the above behavior.
|
||||
* Sustained disruption of community events, including talks and presentations.
|
||||
|
||||
## 5. Consequences of Unacceptable Behavior
|
||||
|
||||
Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated.
|
||||
|
||||
Anyone asked to stop unacceptable behavior is expected to comply immediately.
|
||||
|
||||
If a community member engages in unacceptable behavior, the community organizers may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event).
|
||||
|
||||
## 6. Reporting Guidelines
|
||||
|
||||
If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community organizer as soon as possible. dev@superset.incubator.apache.org .
|
||||
|
||||
|
||||
|
||||
Additionally, community organizers are available to help community members engage with local law enforcement or to otherwise help those experiencing unacceptable behavior feel safe. In the context of in-person events, organizers will also provide escorts as desired by the person experiencing distress.
|
||||
|
||||
## 7. Addressing Grievances
|
||||
|
||||
If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify Apache with a concise description of your grievance. Your grievance will be handled in accordance with our existing governing policies.
|
||||
|
||||
|
||||
|
||||
## 8. Scope
|
||||
|
||||
We expect all community participants (contributors, paid or otherwise; sponsors; and other guests) to abide by this Code of Conduct in all community venues–online and in-person–as well as in all one-on-one communications pertaining to community business.
|
||||
|
||||
This code of conduct and its related procedures also applies to unacceptable behavior occurring outside the scope of community activities when such behavior has the potential to adversely affect the safety and well-being of community members.
|
||||
|
||||
## 9. Contact info
|
||||
|
||||
dev@superset.incubator.apache.org
|
||||
|
||||
## 10. License and attribution
|
||||
|
||||
This Code of Conduct is distributed under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/).
|
||||
|
||||
Portions of text derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy).
|
||||
|
||||
Retrieved on November 22, 2016 from [http://citizencodeofconduct.org/](http://citizencodeofconduct.org/)
|
||||
@@ -2,7 +2,11 @@ recursive-include superset/data *
|
||||
recursive-include superset/migrations *
|
||||
recursive-include superset/static *
|
||||
recursive-exclude superset/static/docs *
|
||||
recursive-exclude superset/static/assets/docs *
|
||||
recursive-exclude superset/static/assets/visualizations *
|
||||
recursive-exclude superset/static/assets/images/viz_thumbnails_large *
|
||||
recursive-exclude superset/static/spec *
|
||||
recursive-exclude superset/static/images/viz_thumbnails_large *
|
||||
recursive-exclude superset/static/assets/node_modules *
|
||||
recursive-include superset/templates *
|
||||
recursive-include superset/translations *
|
||||
|
||||
@@ -6,7 +6,7 @@ Superset
|
||||
[](https://coveralls.io/github/apache/incubator-superset?branch=master)
|
||||
[](https://pypi.python.org/pypi/superset)
|
||||
[](https://requires.io/github/apache/incubator-superset/requirements/?branch=master)
|
||||
[](https://gitter.im/apache/incubator-superset?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
[](https://gitter.im/airbnb/superset?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
[](https://superset.incubator.apache.org)
|
||||
[](https://david-dm.org/apache/incubator-superset?path=superset/assets)
|
||||
|
||||
@@ -165,6 +165,8 @@ the world know they are using Superset. Join our growing community!
|
||||
- [Konfío](http://konfio.mx)
|
||||
- [Lyft](https://www.lyft.com/)
|
||||
- [Maieutical Labs](https://cloudschooling.it)
|
||||
- [PeopleDoc](https://www.people-doc.com)
|
||||
- [Ona](https://ona.io)
|
||||
- [Pronto Tools](http://www.prontotools.io)
|
||||
- [Qunar](https://www.qunar.com/)
|
||||
- [Shopee](https://shopee.sg)
|
||||
|
||||
@@ -2,6 +2,7 @@ codeclimate-test-reporter
|
||||
coveralls
|
||||
flake8
|
||||
flask_cors
|
||||
ipdb
|
||||
mock
|
||||
mysqlclient
|
||||
nose
|
||||
|
||||
29
docs/faq.rst
@@ -45,6 +45,13 @@ visualizations.
|
||||
https://github.com/airbnb/superset/issues?q=label%3Aexample+is%3Aclosed
|
||||
|
||||
|
||||
Can I upload and visualize csv data?
|
||||
------------------------------------
|
||||
|
||||
Yes, using the ``Upload a CSV`` button under the ``Sources``
|
||||
menu item. This brings up a form that allows you specify required information. After creating the table from CSV, it can then be loaded like any other on the ``Sources -> Tables``page.
|
||||
|
||||
|
||||
Why are my queries timing out?
|
||||
------------------------------
|
||||
|
||||
@@ -99,7 +106,7 @@ edit the ``JSON Metadata`` field, more specifically the
|
||||
never be affected by any dashboard level filtering.
|
||||
|
||||
|
||||
..code::
|
||||
..code:: json
|
||||
|
||||
{
|
||||
"filter_immune_slices": [324, 65, 92],
|
||||
@@ -134,7 +141,7 @@ to be refreshed - especially if some data is slow moving, or run heavy queries.
|
||||
slices from the timed refresh process, add the ``timed_refresh_immune_slices`` key to the dashboard
|
||||
``JSON Metadata`` field:
|
||||
|
||||
..code::
|
||||
..code:: json
|
||||
|
||||
{
|
||||
"filter_immune_slices": [],
|
||||
@@ -150,7 +157,7 @@ Slice refresh will also be staggered over the specified period. You can turn off
|
||||
by setting the ``stagger_refresh`` to ``false`` and modify the stagger period by setting
|
||||
``stagger_time`` to a value in milliseconds in the ``JSON Metadata`` field:
|
||||
|
||||
..code::
|
||||
..code:: json
|
||||
|
||||
{
|
||||
"stagger_refresh": false,
|
||||
@@ -221,3 +228,19 @@ When adding columns to a table, you can have Superset detect and merge the
|
||||
new columns in by using the "Refresh Metadata" action in the
|
||||
``Source -> Tables`` page. Simply check the box next to the tables
|
||||
you want the schema refreshed, and click ``Actions -> Refresh Metadata``.
|
||||
|
||||
Is there a way to force the use specific colors?
|
||||
------------------------------------------------
|
||||
|
||||
It is possible on a per-dashboard basis by providing a mapping of
|
||||
labels to colors in the ``JSON Metadata`` attribute using the
|
||||
``label_colors`` key.
|
||||
|
||||
..code:: json
|
||||
|
||||
{
|
||||
"label_colors": {
|
||||
"Girls": "#FF69B4",
|
||||
"Boys": "#ADD8E6"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,88 +2,88 @@ Gallery
|
||||
=======
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/line.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/bubble.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/table.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/pie.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/bar.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/world_map.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/sankey.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/word_cloud.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/filter_box.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/pivot_table.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/directed_force.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/compare.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/sunburst.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/area.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/big_number.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/big_number_total.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/bullet.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/dist_bar.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/heatmap.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/markup.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/para.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/iframe.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/box_plot.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/treemap.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/cal_heatmap.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/horizon.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/mapbox.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/separator.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/histogram.png
|
||||
:scale: 25 %
|
||||
:scale: 50 %
|
||||
|
||||
103
docs/import_export_datasources.rst
Normal file
@@ -0,0 +1,103 @@
|
||||
Importing and Exporting Datasources
|
||||
===================================
|
||||
|
||||
The superset cli allows you to import and export datasources from and to YAML.
|
||||
Datasources include both databases and druid clusters. The data is expected to be organized in the following hierarchy: ::
|
||||
|
||||
.
|
||||
├──databases
|
||||
| ├──database_1
|
||||
| | ├──table_1
|
||||
| | | ├──columns
|
||||
| | | | ├──column_1
|
||||
| | | | ├──column_2
|
||||
| | | | └──... (more columns)
|
||||
| | | └──metrics
|
||||
| | | ├──metric_1
|
||||
| | | ├──metric_2
|
||||
| | | └──... (more metrics)
|
||||
| | └── ... (more tables)
|
||||
| └── ... (more databases)
|
||||
└──druid_clusters
|
||||
├──cluster_1
|
||||
| ├──datasource_1
|
||||
| | ├──columns
|
||||
| | | ├──column_1
|
||||
| | | ├──column_2
|
||||
| | | └──... (more columns)
|
||||
| | └──metrics
|
||||
| | ├──metric_1
|
||||
| | ├──metric_2
|
||||
| | └──... (more metrics)
|
||||
| └── ... (more datasources)
|
||||
└── ... (more clusters)
|
||||
|
||||
|
||||
Exporting Datasources to YAML
|
||||
-----------------------------
|
||||
You can print your current datasources to stdout by running: ::
|
||||
|
||||
superset export_datasources
|
||||
|
||||
|
||||
To save your datasources to a file run: ::
|
||||
|
||||
superset export_datasources -f <filename>
|
||||
|
||||
|
||||
By default, default (null) values will be omitted. Use the ``-d`` flag to include them.
|
||||
If you want back references to be included (e.g. a column to include the table id
|
||||
it belongs to) use the ``-b`` flag.
|
||||
|
||||
Alternatively you can export datasources using the UI: ::
|
||||
|
||||
1. Open **Sources** -> **Databases** to export all tables associated to a single or multiple databases. (**Tables** for one or more tables, **Druid Clusters** for clusters, **Druid Datasources** for datasources)
|
||||
2. Select the items you would like to export
|
||||
3. Click **Actions** -> **Export to YAML**
|
||||
4. If you want to import an item that you exported through the UI, you will need to nest it inside its parent element, e.g. a `database` needs to be nested under `databases` a `table` needs to be nested inside a `database` element.
|
||||
|
||||
Exporting the complete supported YAML schema
|
||||
--------------------------------------------
|
||||
In order to obtain an exhaustive list of all fields you can import using the YAML import run: ::
|
||||
|
||||
superset export_datasource_schema
|
||||
|
||||
Again, you can use the ``-b`` flag to include back references.
|
||||
|
||||
|
||||
Importing Datasources from YAML
|
||||
-------------------------------
|
||||
In order to import datasources from a YAML file(s), run: ::
|
||||
|
||||
superset import_datasources -p <path or filename>
|
||||
|
||||
If you supply a path all files ending with ``*.yaml`` or ``*.yml`` will be parsed.
|
||||
You can apply additional flags e.g.: ::
|
||||
|
||||
superset import_datasources -p <path> -r
|
||||
|
||||
Will search the supplied path recursively.
|
||||
|
||||
The sync flag ``-s`` takes parameters in order to sync the supplied elements with
|
||||
your file. Be careful this can delete the contents of your meta database. Example:
|
||||
|
||||
superset import_datasources -p <path / filename> -s columns,metrics
|
||||
|
||||
This will sync all ``metrics`` and ``columns`` for all datasources found in the
|
||||
``<path / filename>`` in the Superset meta database. This means columns and metrics
|
||||
not specified in YAML will be deleted. If you would add ``tables`` to ``columns,metrics``
|
||||
those would be synchronised as well.
|
||||
|
||||
|
||||
If you don't supply the sync flag (``-s``) importing will only add and update (override) fields.
|
||||
E.g. you can add a ``verbose_name`` to the the column ``ds`` in the table ``random_time_series`` from the example datasets
|
||||
by saving the following YAML to file and then running the ``import_datasources`` command. ::
|
||||
|
||||
databases:
|
||||
- database_name: main
|
||||
tables:
|
||||
- table_name: random_time_series
|
||||
columns:
|
||||
- column_name: ds
|
||||
verbose_name: datetime
|
||||
|
||||
@@ -25,10 +25,10 @@ intelligence web application
|
||||
endorsed by the ASF.
|
||||
|
||||
Overview
|
||||
=======================================
|
||||
========
|
||||
|
||||
Features
|
||||
---------
|
||||
--------
|
||||
|
||||
- A rich set of data visualizations
|
||||
- An easy-to-use interface for exploring and visualizing data
|
||||
@@ -61,7 +61,7 @@ Features
|
||||
|
||||
|
||||
Contents
|
||||
---------
|
||||
--------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
@@ -53,6 +53,12 @@ the required dependencies are installed: ::
|
||||
|
||||
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev
|
||||
|
||||
**Ubuntu 16.04** If you have python3.5 installed alongside with python2.7, as is default on **Ubuntu 16.04 LTS**, run this command also
|
||||
|
||||
sudo apt-get install build-essential libssl-dev libffi-dev python3.5-dev python-pip libsasl2-dev libldap2-dev
|
||||
|
||||
otherwhise build for ``cryptography`` fails.
|
||||
|
||||
For **Fedora** and **RHEL-derivatives**, the following command will ensure
|
||||
that the required dependencies are installed: ::
|
||||
|
||||
@@ -148,7 +154,7 @@ around `gunicorn`, it doesn't expose all the options you may need,
|
||||
so you'll want to craft your own `gunicorn` command in your production
|
||||
environment. Here's an **async** setup known to work well: ::
|
||||
|
||||
gunicorn \
|
||||
gunicorn \
|
||||
-w 10 \
|
||||
-k gevent \
|
||||
--timeout 120 \
|
||||
@@ -167,6 +173,27 @@ work on Windows so the `superset runserver` command is not expected to work
|
||||
in that context. Also note that the development web
|
||||
server (`superset runserver -d`) is not intended for production use.
|
||||
|
||||
Flask-AppBuilder Permissions
|
||||
----------------------------
|
||||
|
||||
By default every time the Flask-AppBuilder (FAB) app is initialized the
|
||||
permissions and views are added automatically to the backend and associated with
|
||||
the ‘Admin’ role. The issue however is when you are running multiple concurrent
|
||||
workers this creates a lot of contention and race conditions when defining
|
||||
permissions and views.
|
||||
|
||||
To alleviate this issue, the automatic updating of permissions can be disabled
|
||||
by setting the :envvar:`SUPERSET_UPDATE_PERMS` environment variable to `0`.
|
||||
The value `1` enables it, `0` disables it. Note if undefined the functionality
|
||||
is enabled to maintain backwards compatibility.
|
||||
|
||||
In a production environment initialization could take on the following form:
|
||||
|
||||
export SUPERSET_UPDATE_PERMS=1
|
||||
superset init
|
||||
|
||||
export SUPERSET_UPDATE_PERMS=0
|
||||
gunicorn -w 10 ... superset:app
|
||||
|
||||
Configuration behind a load balancer
|
||||
------------------------------------
|
||||
@@ -181,6 +208,11 @@ If the load balancer is inserting X-Forwarded-For/X-Forwarded-Proto headers, you
|
||||
should set `ENABLE_PROXY_FIX = True` in the superset config file to extract and use
|
||||
the headers.
|
||||
|
||||
In case that the reverse proxy is used for providing ssl encryption,
|
||||
an explicit definition of the `X-Forwarded-Proto` may be required.
|
||||
For the Apache webserver this can be set as follows: ::
|
||||
|
||||
RequestHeader set X-Forwarded-Proto "https"
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
@@ -277,6 +309,8 @@ Here's a list of some of the recommended packages.
|
||||
| ClickHouse | ``pip install | ``clickhouse://`` |
|
||||
| | sqlalchemy-clickhouse`` | |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| Kylin | ``pip install kylinpy`` | ``kylin://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
|
||||
Note that many other database are supported, the main criteria being the
|
||||
existence of a functional SqlAlchemy dialect and Python driver. Googling
|
||||
@@ -315,6 +349,16 @@ For setting your timeouts, this is done in the Superset metadata and goes
|
||||
up the "timeout searchpath", from your slice configuration, to your
|
||||
data source's configuration, to your database's and ultimately falls back
|
||||
into your global default defined in ``CACHE_CONFIG``.
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
CACHE_CONFIG = {
|
||||
'CACHE_TYPE': 'redis',
|
||||
'CACHE_DEFAULT_TIMEOUT': 60 * 60 * 24, # 1 day default (in secs)
|
||||
'CACHE_KEY_PREFIX': 'superset_results',
|
||||
'CACHE_REDIS_URL': 'redis://localhost:6379/0',
|
||||
}
|
||||
|
||||
|
||||
|
||||
Deeper SQLAlchemy integration
|
||||
@@ -394,7 +438,7 @@ metadata from your Druid cluster(s)
|
||||
|
||||
|
||||
CORS
|
||||
-----
|
||||
----
|
||||
|
||||
The extra CORS Dependency must be installed:
|
||||
|
||||
@@ -498,6 +542,11 @@ look something like:
|
||||
RESULTS_BACKEND = RedisCache(
|
||||
host='localhost', port=6379, key_prefix='superset_results')
|
||||
|
||||
Note that it's important that all the worker nodes and web servers in
|
||||
the Superset cluster share a common metadata database.
|
||||
This means that SQLite will not work in this context since it has
|
||||
limited support for concurrency and
|
||||
typically lives on the local file system.
|
||||
|
||||
Also note that SQL Lab supports Jinja templating in queries, and that it's
|
||||
possible to overload
|
||||
|
||||
@@ -10,7 +10,7 @@ Provided Roles
|
||||
--------------
|
||||
Superset ships with a set of roles that are handled by Superset itself.
|
||||
You can assume that these roles will stay up-to-date as Superset evolves.
|
||||
Even though it's possible for ``Admin`` usrs to do so, it is not recommended
|
||||
Even though it's possible for ``Admin`` users to do so, it is not recommended
|
||||
that you alter these roles in any way by removing
|
||||
or adding permissions to them as these roles will be re-synchronized to
|
||||
their original values as you run your next ``superset init`` command.
|
||||
|
||||
@@ -48,17 +48,25 @@ Available macros
|
||||
|
||||
We expose certain modules from Python's standard library in
|
||||
Superset's Jinja context:
|
||||
|
||||
- ``time``: ``time``
|
||||
- ``datetime``: ``datetime.datetime``
|
||||
- ``uuid``: ``uuid``
|
||||
- ``random``: ``random``
|
||||
- ``relativedelta``: ``dateutil.relativedelta.relativedelta``
|
||||
- more to come!
|
||||
|
||||
`Jinja's builtin filters <http://jinja.pocoo.org/docs/dev/templates/>`_ can be also be applied where needed.
|
||||
|
||||
|
||||
.. autoclass:: superset.jinja_context.PrestoTemplateProcessor
|
||||
:members:
|
||||
|
||||
.. autofunction:: superset.jinja_context.url_param
|
||||
|
||||
Extending macros
|
||||
''''''''''''''''
|
||||
|
||||
As mentioned in the `Installation & Configuration <https://superset.incubator.apache.org/installation.html#installation-configuration>`_ documentation,
|
||||
it's possible for administrators to expose more more macros in their
|
||||
environment using the configuration variable ``JINJA_CONTEXT_ADDONS``.
|
||||
All objects referenced in this dictionary will become available for users
|
||||
to integrate in their queries in **SQL Lab**.
|
||||
|
||||
@@ -23,7 +23,7 @@ Under the **Sources** menu, select the *Databases* option:
|
||||
.. image:: _static/img/tutorial/tutorial_01_sources_database.png
|
||||
:scale: 70%
|
||||
|
||||
On the resulting page, click on the green plus sign, near the top left:
|
||||
On the resulting page, click on the green plus sign, near the top right:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_02_add_database.png
|
||||
:scale: 70%
|
||||
|
||||
40
setup.py
@@ -5,7 +5,7 @@ import subprocess
|
||||
from setuptools import find_packages, setup
|
||||
|
||||
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
|
||||
PACKAGE_DIR = os.path.join(BASE_DIR, 'superset', 'assets')
|
||||
PACKAGE_DIR = os.path.join(BASE_DIR, 'superset', 'static', 'assets')
|
||||
PACKAGE_FILE = os.path.join(PACKAGE_DIR, 'package.json')
|
||||
with open(PACKAGE_FILE) as package_file:
|
||||
version_string = json.load(package_file)['version']
|
||||
@@ -49,32 +49,38 @@ setup(
|
||||
'colorama==0.3.9',
|
||||
'cryptography==1.9',
|
||||
'flask==0.12.2',
|
||||
'flask-appbuilder==1.9.4',
|
||||
'flask-appbuilder==1.9.6',
|
||||
'flask-cache==0.13.1',
|
||||
'flask-migrate==2.0.3',
|
||||
'flask-script==2.0.5',
|
||||
'flask-migrate==2.1.1',
|
||||
'flask-script==2.0.6',
|
||||
'flask-sqlalchemy==2.1',
|
||||
'flask-testing==0.6.2',
|
||||
'flask-testing==0.7.1',
|
||||
'flask-wtf==0.14.2',
|
||||
'flower==0.9.1',
|
||||
'flower==0.9.2',
|
||||
'future>=0.16.0, <0.17',
|
||||
'python-geohash==0.8.5',
|
||||
'humanize==0.5.1',
|
||||
'gunicorn==19.7.1',
|
||||
'idna==2.5',
|
||||
'markdown==2.6.8',
|
||||
'pandas==0.20.3',
|
||||
'idna==2.6',
|
||||
'markdown==2.6.11',
|
||||
'pandas==0.22.0',
|
||||
'parsedatetime==2.0.0',
|
||||
'pydruid==0.3.1',
|
||||
'pathlib2==2.3.0',
|
||||
'polyline==1.3.2',
|
||||
'pydruid==0.4.1',
|
||||
'PyHive>=0.4.0',
|
||||
'python-dateutil==2.6.0',
|
||||
'requests==2.17.3',
|
||||
'simplejson==3.10.0',
|
||||
'six==1.10.0',
|
||||
'sqlalchemy==1.1.9',
|
||||
'sqlalchemy-utils==0.32.16',
|
||||
'sqlparse==0.2.3',
|
||||
'python-dateutil==2.6.1',
|
||||
'pyyaml>=3.11',
|
||||
'requests==2.18.4',
|
||||
'simplejson==3.13.2',
|
||||
'six==1.11.0',
|
||||
'sqlalchemy==1.2.2',
|
||||
'sqlalchemy-utils==0.32.21',
|
||||
'sqlparse==0.2.4',
|
||||
'thrift>=0.9.3',
|
||||
'thrift-sasl>=0.2.1',
|
||||
'unidecode>=0.04.21',
|
||||
'bleach==2.1.2',
|
||||
],
|
||||
extras_require={
|
||||
'cors': ['Flask-Cors>=2.0.0'],
|
||||
|
||||
@@ -22,6 +22,9 @@ from superset import utils, config # noqa
|
||||
APP_DIR = os.path.dirname(__file__)
|
||||
CONFIG_MODULE = os.environ.get('SUPERSET_CONFIG', 'superset.config')
|
||||
|
||||
if not os.path.exists(config.DATA_DIR):
|
||||
os.makedirs(config.DATA_DIR)
|
||||
|
||||
with open(APP_DIR + '/static/assets/backendSync.json', 'r') as f:
|
||||
frontend_config = json.load(f)
|
||||
|
||||
@@ -42,7 +45,7 @@ def parse_manifest_json():
|
||||
with open(MANIFEST_FILE, 'r') as f:
|
||||
manifest = json.load(f)
|
||||
except Exception:
|
||||
print('no manifest file found at ' + MANIFEST_FILE)
|
||||
pass
|
||||
|
||||
|
||||
def get_manifest_file(filename):
|
||||
@@ -149,7 +152,9 @@ appbuilder = AppBuilder(
|
||||
db.session,
|
||||
base_template='superset/base.html',
|
||||
indexview=MyIndexView,
|
||||
security_manager_class=app.config.get('CUSTOM_SECURITY_MANAGER'))
|
||||
security_manager_class=app.config.get('CUSTOM_SECURITY_MANAGER'),
|
||||
update_perms=utils.get_update_perms_flag(),
|
||||
)
|
||||
|
||||
sm = appbuilder.sm
|
||||
|
||||
@@ -160,4 +165,10 @@ module_datasource_map = app.config.get('DEFAULT_MODULE_DS_MAP')
|
||||
module_datasource_map.update(app.config.get('ADDITIONAL_MODULE_DS_MAP'))
|
||||
ConnectorRegistry.register_sources(module_datasource_map)
|
||||
|
||||
# Hook that provides administrators a handle on the Flask APP
|
||||
# after initialization
|
||||
flask_app_mutator = app.config.get('FLASK_APP_MUTATOR')
|
||||
if flask_app_mutator:
|
||||
flask_app_mutator(app)
|
||||
|
||||
from superset import views # noqa
|
||||
|
||||
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 8.8 KiB |
|
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 9.9 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 55 KiB After Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 398 KiB After Width: | Height: | Size: 38 KiB |
|
Before Width: | Height: | Size: 253 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 296 KiB After Width: | Height: | Size: 40 KiB |
BIN
superset/assets/images/viz_thumbnails/deck_arc.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
superset/assets/images/viz_thumbnails/deck_geojson.png
Normal file
|
After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 2.0 MiB After Width: | Height: | Size: 140 KiB |
|
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 83 KiB |
BIN
superset/assets/images/viz_thumbnails/deck_multi.png
Normal file
|
After Width: | Height: | Size: 104 KiB |
BIN
superset/assets/images/viz_thumbnails/deck_path.png
Normal file
|
After Width: | Height: | Size: 74 KiB |
BIN
superset/assets/images/viz_thumbnails/deck_polygon.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 777 KiB After Width: | Height: | Size: 117 KiB |
|
Before Width: | Height: | Size: 578 KiB After Width: | Height: | Size: 75 KiB |
|
Before Width: | Height: | Size: 242 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 8.5 KiB |
|
Before Width: | Height: | Size: 162 KiB After Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 8.3 KiB |
|
Before Width: | Height: | Size: 425 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 161 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 738 KiB After Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 314 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 220 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 222 KiB After Width: | Height: | Size: 23 KiB |
BIN
superset/assets/images/viz_thumbnails/multi.png
Normal file
|
After Width: | Height: | Size: 106 KiB |
|
Before Width: | Height: | Size: 230 KiB After Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 460 KiB After Width: | Height: | Size: 51 KiB |
|
Before Width: | Height: | Size: 194 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 270 KiB After Width: | Height: | Size: 53 KiB |
BIN
superset/assets/images/viz_thumbnails/rose.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 200 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 99 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 170 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 107 KiB After Width: | Height: | Size: 22 KiB |
BIN
superset/assets/images/viz_thumbnails/time_pivot.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 94 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 133 KiB After Width: | Height: | Size: 28 KiB |
BIN
superset/assets/images/viz_thumbnails_large/area.png
Normal file
|
After Width: | Height: | Size: 103 KiB |
BIN
superset/assets/images/viz_thumbnails_large/bar.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
superset/assets/images/viz_thumbnails_large/big_number.png
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
superset/assets/images/viz_thumbnails_large/big_number_total.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
superset/assets/images/viz_thumbnails_large/box_plot.png
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
superset/assets/images/viz_thumbnails_large/bubble.png
Normal file
|
After Width: | Height: | Size: 132 KiB |
BIN
superset/assets/images/viz_thumbnails_large/bullet.png
Normal file
|
After Width: | Height: | Size: 8.6 KiB |
BIN
superset/assets/images/viz_thumbnails_large/cal_heatmap.png
Normal file
|
After Width: | Height: | Size: 31 KiB |
BIN
superset/assets/images/viz_thumbnails_large/chord.png
Normal file
|
After Width: | Height: | Size: 398 KiB |
BIN
superset/assets/images/viz_thumbnails_large/compare.png
Normal file
|
After Width: | Height: | Size: 253 KiB |
BIN
superset/assets/images/viz_thumbnails_large/country_map.png
Normal file
|
After Width: | Height: | Size: 296 KiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_arc.png
Normal file
|
After Width: | Height: | Size: 225 KiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_geojson.png
Normal file
|
After Width: | Height: | Size: 177 KiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_grid.png
Normal file
|
After Width: | Height: | Size: 2.0 MiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_hex.png
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_multi.png
Normal file
|
After Width: | Height: | Size: 968 KiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_path.png
Normal file
|
After Width: | Height: | Size: 511 KiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_polygon.png
Normal file
|
After Width: | Height: | Size: 433 KiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_scatter.png
Normal file
|
After Width: | Height: | Size: 777 KiB |
BIN
superset/assets/images/viz_thumbnails_large/deck_screengrid.png
Normal file
|
After Width: | Height: | Size: 578 KiB |
BIN
superset/assets/images/viz_thumbnails_large/directed_force.png
Normal file
|
After Width: | Height: | Size: 242 KiB |
BIN
superset/assets/images/viz_thumbnails_large/dist_bar.png
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
superset/assets/images/viz_thumbnails_large/dual_line.png
Executable file
|
After Width: | Height: | Size: 162 KiB |
BIN
superset/assets/images/viz_thumbnails_large/event_flow.png
Normal file
|
After Width: | Height: | Size: 106 KiB |
BIN
superset/assets/images/viz_thumbnails_large/filter_box.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
superset/assets/images/viz_thumbnails_large/heatmap.png
Normal file
|
After Width: | Height: | Size: 425 KiB |
BIN
superset/assets/images/viz_thumbnails_large/histogram.png
Normal file
|
After Width: | Height: | Size: 63 KiB |
BIN
superset/assets/images/viz_thumbnails_large/horizon.png
Normal file
|
After Width: | Height: | Size: 161 KiB |
BIN
superset/assets/images/viz_thumbnails_large/iframe.png
Normal file
|
After Width: | Height: | Size: 738 KiB |
BIN
superset/assets/images/viz_thumbnails_large/line.png
Normal file
|
After Width: | Height: | Size: 314 KiB |
BIN
superset/assets/images/viz_thumbnails_large/mapbox.png
Normal file
|
After Width: | Height: | Size: 220 KiB |
BIN
superset/assets/images/viz_thumbnails_large/markup.png
Normal file
|
After Width: | Height: | Size: 222 KiB |