Compare commits
698 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
763a41bcdc | ||
|
|
28611108d7 | ||
|
|
ff4b103025 | ||
|
|
4ecd95a318 | ||
|
|
f3778c3c81 | ||
|
|
cefc206a36 | ||
|
|
875d0b5ad2 | ||
|
|
e8b25988e2 | ||
|
|
21967f40e7 | ||
|
|
a9d7fafd9f | ||
|
|
f6117973e9 | ||
|
|
0511d1f38d | ||
|
|
7dbb45e5fb | ||
|
|
6c3e469154 | ||
|
|
ae50845843 | ||
|
|
459267785f | ||
|
|
d38315a307 | ||
|
|
1aced9b562 | ||
|
|
c18ef89034 | ||
|
|
e30215c3d8 | ||
|
|
42d0597b90 | ||
|
|
3207116535 | ||
|
|
1aaa73b548 | ||
|
|
05061a73ce | ||
|
|
d322e48c57 | ||
|
|
fa3e4e23b3 | ||
|
|
17d6464aa9 | ||
|
|
4c44223234 | ||
|
|
b8aeb1a825 | ||
|
|
b312cdad2f | ||
|
|
973c661501 | ||
|
|
459cb701fb | ||
|
|
a746fce383 | ||
|
|
0e1fb62db2 | ||
|
|
ce0011e5fc | ||
|
|
1c9474b4ff | ||
|
|
9f66dae328 | ||
|
|
5505c116ba | ||
|
|
63115fbb87 | ||
|
|
f52f7aa7cf | ||
|
|
5a64b3f577 | ||
|
|
2ba929ac9e | ||
|
|
2bf53dad98 | ||
|
|
cf374efb3f | ||
|
|
e72c9cded3 | ||
|
|
c2eae96327 | ||
|
|
7b427d7ee0 | ||
|
|
b839608c32 | ||
|
|
7a4a89b195 | ||
|
|
ce710f8c8f | ||
|
|
b391676544 | ||
|
|
071c6a6c03 | ||
|
|
2c5200affd | ||
|
|
ad4912d601 | ||
|
|
7d5195aae3 | ||
|
|
b75942daa5 | ||
|
|
6720255868 | ||
|
|
a8514b267b | ||
|
|
8591319bde | ||
|
|
af4dd59661 | ||
|
|
94249ed20c | ||
|
|
918399d4e2 | ||
|
|
e29beba023 | ||
|
|
75df3d0f8e | ||
|
|
18e67f93de | ||
|
|
65c4499bef | ||
|
|
45ffed9976 | ||
|
|
374482bcde | ||
|
|
f21ba1aba7 | ||
|
|
415d1c092b | ||
|
|
a60d577b7d | ||
|
|
d87504cb42 | ||
|
|
ab958c67e6 | ||
|
|
89333657d8 | ||
|
|
f5b63679e0 | ||
|
|
58a02bba43 | ||
|
|
52a6bd1c7e | ||
|
|
440fb77df5 | ||
|
|
e2d5c33638 | ||
|
|
976e43e681 | ||
|
|
5d6e59aa8a | ||
|
|
e213ccd438 | ||
|
|
fa4acb1bda | ||
|
|
5f6a1cea47 | ||
|
|
13da5a8742 | ||
|
|
9c53323c93 | ||
|
|
8c94e1f710 | ||
|
|
e1d2150391 | ||
|
|
3c7feb770a | ||
|
|
709a71b89a | ||
|
|
31f426664c | ||
|
|
d533ce0967 | ||
|
|
caa72675a5 | ||
|
|
0a953714ac | ||
|
|
510ae84b3b | ||
|
|
f3d756016e | ||
|
|
3f48c005df | ||
|
|
fa3da8c888 | ||
|
|
17ae9ec3a8 | ||
|
|
7139f1e863 | ||
|
|
7193a4719d | ||
|
|
2cd016f11c | ||
|
|
5927e7dfe6 | ||
|
|
590e3462d6 | ||
|
|
370d8a2bbe | ||
|
|
937a5bc85c | ||
|
|
66fcf9b687 | ||
|
|
89347172d2 | ||
|
|
c92b56e2f6 | ||
|
|
e88b0b6c4c | ||
|
|
860a4d9123 | ||
|
|
a98c3cfdef | ||
|
|
a14dc26042 | ||
|
|
e47d8a59a4 | ||
|
|
eac97ce9f2 | ||
|
|
44c2d5bdab | ||
|
|
c0db6dbb57 | ||
|
|
2900ca345d | ||
|
|
3b18fbf9e3 | ||
|
|
23a3365cd1 | ||
|
|
8669874ec6 | ||
|
|
4c268ec678 | ||
|
|
daf9a3bfb5 | ||
|
|
fd84fd89ce | ||
|
|
2f5cff7d9f | ||
|
|
6fd4ff45ea | ||
|
|
b04359003e | ||
|
|
2a95d203ad | ||
|
|
683fb6c251 | ||
|
|
07a5f47c75 | ||
|
|
ae7e114621 | ||
|
|
dadc0574b8 | ||
|
|
725b8f94c9 | ||
|
|
e96590744f | ||
|
|
20f46eede5 | ||
|
|
3c29ca79ae | ||
|
|
adf9ec0bb1 | ||
|
|
7f1d7543d0 | ||
|
|
02a9e37f04 | ||
|
|
1627fd096b | ||
|
|
14bf45da7c | ||
|
|
1e7a294c1f | ||
|
|
64459efebd | ||
|
|
9bbe50f2f6 | ||
|
|
47c085fd00 | ||
|
|
41c158edac | ||
|
|
17e673ec87 | ||
|
|
ee15fc8aa8 | ||
|
|
627bdb2eb3 | ||
|
|
bd2cb9aada | ||
|
|
4f2c2069f1 | ||
|
|
426c34ee86 | ||
|
|
1a26485da4 | ||
|
|
91366799d3 | ||
|
|
59cabe7d8f | ||
|
|
92230b8535 | ||
|
|
df4ff05441 | ||
|
|
68999b1407 | ||
|
|
adda30bf66 | ||
|
|
3b7e0a951a | ||
|
|
9a79d33e0d | ||
|
|
7a497e2f6b | ||
|
|
f6fe11f76e | ||
|
|
aa4173dc81 | ||
|
|
8be0bde683 | ||
|
|
68bfcefb27 | ||
|
|
969ff0ce39 | ||
|
|
ab7ba20009 | ||
|
|
1ef856e57a | ||
|
|
e0f541f486 | ||
|
|
11c9e67ebb | ||
|
|
221b35f36d | ||
|
|
069d61c53f | ||
|
|
b3442a7b53 | ||
|
|
e25535c693 | ||
|
|
d49a0e7958 | ||
|
|
29678680ee | ||
|
|
ed9a56b4ab | ||
|
|
9ee78d16d4 | ||
|
|
f952ec2f06 | ||
|
|
68dec24542 | ||
|
|
7e1b6b7363 | ||
|
|
485b0c275e | ||
|
|
d8d860facc | ||
|
|
8dd052de4b | ||
|
|
f510956da2 | ||
|
|
deb211154d | ||
|
|
f9d85bd2e1 | ||
|
|
52b925fee8 | ||
|
|
336a1064d6 | ||
|
|
4ec82582c6 | ||
|
|
097a37a1a1 | ||
|
|
9abc5c724f | ||
|
|
00cab7e107 | ||
|
|
76394d3f8f | ||
|
|
f11cde9eb8 | ||
|
|
b24a6fd4b5 | ||
|
|
73f7f817d3 | ||
|
|
d427f6a322 | ||
|
|
b9965230df | ||
|
|
ec069676fd | ||
|
|
33aa976e3d | ||
|
|
fc47729233 | ||
|
|
1435840e38 | ||
|
|
8942436ece | ||
|
|
ed9867c0cc | ||
|
|
5c98f5642b | ||
|
|
ba9379b949 | ||
|
|
83f8f98ae3 | ||
|
|
e9b5b1a305 | ||
|
|
97afcd5809 | ||
|
|
3f1dfb3173 | ||
|
|
6875868cf6 | ||
|
|
b906fece68 | ||
|
|
93ec76f757 | ||
|
|
da842f113a | ||
|
|
7da164d386 | ||
|
|
1e0bcba568 | ||
|
|
e2bd40c89f | ||
|
|
7c5bc8d90c | ||
|
|
36fa6cd7df | ||
|
|
7089344623 | ||
|
|
86a03d1dc8 | ||
|
|
3371c8bd5c | ||
|
|
95a9b046f8 | ||
|
|
4250e239a2 | ||
|
|
4e494b264b | ||
|
|
de4409835e | ||
|
|
037c04102f | ||
|
|
1d0ec9fe6e | ||
|
|
882921825c | ||
|
|
9604e1dd14 | ||
|
|
8951990d6e | ||
|
|
26257d94f5 | ||
|
|
2bc089ef8d | ||
|
|
ff41f40721 | ||
|
|
ee073eee23 | ||
|
|
1d27fb30ff | ||
|
|
e1af421f0c | ||
|
|
f9881101ee | ||
|
|
1647004486 | ||
|
|
c6af4882cd | ||
|
|
d522292b01 | ||
|
|
34a081b926 | ||
|
|
4ffc56f1c9 | ||
|
|
c85eea3037 | ||
|
|
3fbadd68a4 | ||
|
|
b512da8002 | ||
|
|
402c7ddb26 | ||
|
|
9edbd64c5d | ||
|
|
42ebcaad40 | ||
|
|
9ad50c9d55 | ||
|
|
31a995714d | ||
|
|
d494c82930 | ||
|
|
0dfa3b99dd | ||
|
|
826d0631e0 | ||
|
|
1e8cd0e61e | ||
|
|
369f652bfc | ||
|
|
b63dc91cd1 | ||
|
|
d817b8ddbb | ||
|
|
ef4e5ecedf | ||
|
|
01e0a2f071 | ||
|
|
2e780e4034 | ||
|
|
71d7196137 | ||
|
|
150768ee30 | ||
|
|
06c5077691 | ||
|
|
2c5adb6dc3 | ||
|
|
6e0ece76a0 | ||
|
|
48430a1918 | ||
|
|
b01a9bba1f | ||
|
|
007ad351cf | ||
|
|
4f7258aaca | ||
|
|
413585448e | ||
|
|
41defdceaa | ||
|
|
2637d3d5e2 | ||
|
|
79bb54a173 | ||
|
|
3a58dc7ecf | ||
|
|
7440d34936 | ||
|
|
764a92cd10 | ||
|
|
849a2cecee | ||
|
|
264822b1ee | ||
|
|
404e2d552a | ||
|
|
8626793655 | ||
|
|
c2b42c49c6 | ||
|
|
83524f97d7 | ||
|
|
bcca1717f2 | ||
|
|
11ea83ecf1 | ||
|
|
56f65158a2 | ||
|
|
2932585c65 | ||
|
|
d57a37e341 | ||
|
|
ff685db4d9 | ||
|
|
094eb71f86 | ||
|
|
e112e4417c | ||
|
|
8aac63e74c | ||
|
|
cacf53c92e | ||
|
|
5830846060 | ||
|
|
0eecec10cd | ||
|
|
a373db24f0 | ||
|
|
c3176579e0 | ||
|
|
d4a2f4ef36 | ||
|
|
b60965b8fa | ||
|
|
5c35a2d210 | ||
|
|
c336fe5707 | ||
|
|
177d7c07e6 | ||
|
|
5768a1fe5e | ||
|
|
d6c197f8ac | ||
|
|
f46bb533cb | ||
|
|
15aa0c5cdd | ||
|
|
88e91e6d8f | ||
|
|
dc48673647 | ||
|
|
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 | ||
|
|
f0acc11249 | ||
|
|
fa35d7d2f4 | ||
|
|
e65aba3c46 | ||
|
|
fab7b1083b | ||
|
|
d9161fb76a | ||
|
|
85b18ff5e7 | ||
|
|
3a8af5d0b0 | ||
|
|
1c545d3a2d | ||
|
|
120a5d08f9 | ||
|
|
b586cb0ba7 | ||
|
|
ae2205aeb5 | ||
|
|
2e25fc4161 | ||
|
|
ba89b2d091 | ||
|
|
aee8438924 | ||
|
|
a6ba841e57 | ||
|
|
8643228b51 | ||
|
|
de869973c7 | ||
|
|
ac57780607 | ||
|
|
630604bc6b | ||
|
|
eb5d220b5e | ||
|
|
3f076b00cd | ||
|
|
514f9452f3 | ||
|
|
068c343be0 | ||
|
|
500455fc72 | ||
|
|
1b4f128f55 | ||
|
|
1a3a8daf49 | ||
|
|
7fce8eab3a | ||
|
|
b4c9402737 | ||
|
|
8459347bdc | ||
|
|
f7bf17290c | ||
|
|
d908e48d61 | ||
|
|
a3a4687ebf | ||
|
|
4d48d5d854 | ||
|
|
83e6807fa0 | ||
|
|
ba96984048 | ||
|
|
591e5ec32e | ||
|
|
690de862e8 | ||
|
|
35810ce2bf | ||
|
|
6c52f2ff72 | ||
|
|
d663bea5e6 | ||
|
|
1ea4521d0c | ||
|
|
c4153c0bbe | ||
|
|
ae8b249dc2 | ||
|
|
9500f0aae3 | ||
|
|
be3da6396f | ||
|
|
330926c167 | ||
|
|
cbcc00c929 | ||
|
|
d03b74f754 | ||
|
|
ec21d5af21 | ||
|
|
70c7315ae0 | ||
|
|
4fa1f0ab17 | ||
|
|
39e502faae | ||
|
|
0280bc52e0 | ||
|
|
dee47864c4 | ||
|
|
17623f71d4 | ||
|
|
7453131858 | ||
|
|
e822fb50d8 | ||
|
|
e2bca47421 | ||
|
|
7987cb794b | ||
|
|
7483e2c942 | ||
|
|
e6129eb492 | ||
|
|
b10aca2de1 | ||
|
|
02cbad59de | ||
|
|
ccb87d337c | ||
|
|
63a49983eb | ||
|
|
81dd622fdb | ||
|
|
9a49b1c41d | ||
|
|
b059506afa | ||
|
|
13c17e1526 | ||
|
|
8e3217a921 | ||
|
|
aed7c7436a | ||
|
|
7f3edad119 | ||
|
|
7fd9c82ae8 | ||
|
|
f3c7052f30 | ||
|
|
326d90a5e4 | ||
|
|
cccc47311b | ||
|
|
5c03167948 | ||
|
|
87b6d76c32 | ||
|
|
abfa03474c | ||
|
|
5bc734b2e5 | ||
|
|
814b70ffd8 | ||
|
|
1e18bfdea4 | ||
|
|
200b66d088 | ||
|
|
cbd01074ba | ||
|
|
1582fa1964 | ||
|
|
a9b6d11ade | ||
|
|
c4b6324e74 | ||
|
|
9432ea80be | ||
|
|
f412b4c158 | ||
|
|
547a3bf4e7 | ||
|
|
e97dc9d3cb | ||
|
|
efae14592e | ||
|
|
1d06495629 | ||
|
|
ffdfdb94ab | ||
|
|
8d7e97a26e | ||
|
|
f8b8f6a343 | ||
|
|
4967342362 | ||
|
|
9893847991 | ||
|
|
18e9640d99 | ||
|
|
58ea736ed6 | ||
|
|
b4bdc45a6b | ||
|
|
fa07b8d51b | ||
|
|
e121a8585e | ||
|
|
adef519583 | ||
|
|
08f09b4761 | ||
|
|
2a89c90e0b | ||
|
|
ce5fa379ec | ||
|
|
d4d4a9b1f1 | ||
|
|
d0b5b449b2 | ||
|
|
bad6938d1a | ||
|
|
48e28eff9b | ||
|
|
f87163413b | ||
|
|
52a9f2742b | ||
|
|
7f07fbefbc | ||
|
|
93660c6838 | ||
|
|
3ebadbcda9 | ||
|
|
3df3e0d681 | ||
|
|
4a3c09187a | ||
|
|
76f8d33d81 | ||
|
|
6cc6637454 | ||
|
|
d7f8a7fde3 | ||
|
|
80eb9c2c64 | ||
|
|
bd45e3b19a | ||
|
|
b866b33dee | ||
|
|
8994bdacbd | ||
|
|
f3b403d346 | ||
|
|
5ad4167512 | ||
|
|
ca67a7a4e9 | ||
|
|
64ef8b14b4 | ||
|
|
912c6f6231 | ||
|
|
6f1351fbbb | ||
|
|
f75dc0271d | ||
|
|
1fb8716231 | ||
|
|
ed212440b5 | ||
|
|
1528288b59 | ||
|
|
7c936e7f60 | ||
|
|
ff268a7526 | ||
|
|
e9804aedff | ||
|
|
e95132ddc3 | ||
|
|
bb0f69d074 | ||
|
|
645de384e3 | ||
|
|
15ecdeb3ba | ||
|
|
04ea3addc4 | ||
|
|
7e64f2e988 | ||
|
|
40fbf1c761 | ||
|
|
a85968eadb | ||
|
|
efc63669a6 | ||
|
|
076f9cd095 | ||
|
|
fdbc936dc9 | ||
|
|
18e459e19e | ||
|
|
064363df78 | ||
|
|
f8cc05b54e | ||
|
|
9baca6758d | ||
|
|
b39d165913 | ||
|
|
bc3ad64619 | ||
|
|
0bd2ac5353 | ||
|
|
03e2af8bd9 | ||
|
|
82b85d1d6c | ||
|
|
17c7ca239a | ||
|
|
ef59b6b650 | ||
|
|
d1a7a7b85c | ||
|
|
3d72eb475a | ||
|
|
b50489eb96 | ||
|
|
8773e32cd6 | ||
|
|
f438ccbcb1 | ||
|
|
f829b486d1 | ||
|
|
06e52e600e | ||
|
|
f0636b8748 | ||
|
|
c629282ec4 | ||
|
|
7d934e7246 | ||
|
|
8efcaeb768 | ||
|
|
cf0b670932 | ||
|
|
3949d39478 | ||
|
|
5718d6bbaf | ||
|
|
f3146ef6f9 | ||
|
|
255ea69977 | ||
|
|
9af34ba51c |
@@ -1,40 +0,0 @@
|
||||
engines:
|
||||
csslint:
|
||||
enabled: false
|
||||
duplication:
|
||||
enabled: false
|
||||
eslint:
|
||||
enabled: true
|
||||
checks:
|
||||
import/extensions:
|
||||
enabled: false
|
||||
import/no-extraneous-dependencies:
|
||||
enabled: false
|
||||
config:
|
||||
config: superset/assets/.eslintrc
|
||||
pep8:
|
||||
enabled: true
|
||||
fixme:
|
||||
enabled: false
|
||||
radon:
|
||||
enabled: true
|
||||
checks:
|
||||
Complexity:
|
||||
enabled: false
|
||||
ratings:
|
||||
paths:
|
||||
- "**.py"
|
||||
- "superset/assets/**.js"
|
||||
- "superset/assets/**.jsx"
|
||||
exclude_paths:
|
||||
- ".*"
|
||||
- "**.pyc"
|
||||
- "**.gz"
|
||||
- "env/"
|
||||
- "tests/"
|
||||
- "superset/assets/images/"
|
||||
- "superset/assets/vendor/"
|
||||
- "superset/assets/node_modules/"
|
||||
- "superset/assets/javascripts/dist/"
|
||||
- "superset/migrations"
|
||||
- "docs/"
|
||||
@@ -1 +0,0 @@
|
||||
repo_token: 4P9MpvLrZfJKzHdGZsdV3MzO43OZJgYFn
|
||||
8
.gitignore
vendored
@@ -11,6 +11,7 @@ _images
|
||||
_modules
|
||||
superset/bin/supersetc
|
||||
env_py3
|
||||
envpy3
|
||||
.eggs
|
||||
build
|
||||
*.db
|
||||
@@ -26,14 +27,17 @@ app.db
|
||||
*.sqllite
|
||||
.vscode
|
||||
.python-version
|
||||
.tox
|
||||
dump.rdb
|
||||
|
||||
# Node.js, webpack artifacts
|
||||
*.entry.js
|
||||
*.js.map
|
||||
node_modules
|
||||
npm-debug.log
|
||||
yarn.lock
|
||||
npm-debug.log*
|
||||
superset/assets/version_info.json
|
||||
|
||||
# IntelliJ
|
||||
*.iml
|
||||
venv
|
||||
@eaDir/
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
doc-warnings: yes
|
||||
test-warnings: no
|
||||
strictness: medium
|
||||
max-line-length: 90
|
||||
uses:
|
||||
- flask
|
||||
autodetect: yes
|
||||
pylint:
|
||||
disable:
|
||||
- cyclic-import
|
||||
- invalid-name
|
||||
- logging-format-interpolation
|
||||
options:
|
||||
docstring-min-length: 10
|
||||
pep8:
|
||||
full: true
|
||||
ignore-paths:
|
||||
- docs
|
||||
- superset/migrations/env.py
|
||||
ignore-patterns:
|
||||
- ^example/doc_.*\.py$
|
||||
- (^|/)docs(/|$)
|
||||
@@ -1,2 +0,0 @@
|
||||
[pycodestyle]
|
||||
max-line-length = 90
|
||||
10
.pylintrc
@@ -65,7 +65,7 @@ confidence=
|
||||
# --enable=similarities". If you want to run only the classes checker, but have
|
||||
# no Warning level messages displayed, use"--disable=all --enable=classes
|
||||
# --disable=W"
|
||||
disable=standarderror-builtin,long-builtin,dict-view-method,intern-builtin,suppressed-message,no-absolute-import,unpacking-in-except,apply-builtin,delslice-method,indexing-exception,old-raise-syntax,print-statement,cmp-builtin,reduce-builtin,useless-suppression,coerce-method,input-builtin,cmp-method,raw_input-builtin,nonzero-method,backtick,basestring-builtin,setslice-method,reload-builtin,oct-method,map-builtin-not-iterating,execfile-builtin,old-octal-literal,zip-builtin-not-iterating,buffer-builtin,getslice-method,metaclass-assignment,xrange-builtin,long-suffix,round-builtin,range-builtin-not-iterating,next-method-called,dict-iter-method,parameter-unpacking,unicode-builtin,unichr-builtin,import-star-module-level,raising-string,filter-builtin-not-iterating,old-ne-operator,using-cmp-argument,coerce-builtin,file-builtin,old-division,hex-method,invalid-unary-operand-type
|
||||
disable=standarderror-builtin,long-builtin,dict-view-method,intern-builtin,suppressed-message,no-absolute-import,unpacking-in-except,apply-builtin,delslice-method,indexing-exception,old-raise-syntax,print-statement,cmp-builtin,reduce-builtin,useless-suppression,coerce-method,input-builtin,cmp-method,raw_input-builtin,nonzero-method,backtick,basestring-builtin,setslice-method,reload-builtin,oct-method,map-builtin-not-iterating,execfile-builtin,old-octal-literal,zip-builtin-not-iterating,buffer-builtin,getslice-method,metaclass-assignment,xrange-builtin,long-suffix,round-builtin,range-builtin-not-iterating,next-method-called,dict-iter-method,parameter-unpacking,unicode-builtin,unichr-builtin,import-star-module-level,raising-string,filter-builtin-not-iterating,old-ne-operator,using-cmp-argument,coerce-builtin,file-builtin,old-division,hex-method,invalid-unary-operand-type,missing-docstring,too-many-lines,duplicate-code
|
||||
|
||||
|
||||
[REPORTS]
|
||||
@@ -102,7 +102,7 @@ evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / stateme
|
||||
good-names=i,j,k,ex,Run,_,d,e,v,o,l,x,ts
|
||||
|
||||
# Bad variable names which should always be refused, separated by a comma
|
||||
bad-names=foo,bar,baz,toto,tutu,tata
|
||||
bad-names=foo,bar,baz,toto,tutu,tata,d,fd
|
||||
|
||||
# Colon-delimited sets of names that determine each other's naming style when
|
||||
# the name regexes allow several styles.
|
||||
@@ -277,12 +277,12 @@ ignore-mixin-members=yes
|
||||
# (useful for modules/projects where namespaces are manipulated during runtime
|
||||
# and thus existing member attributes cannot be deduced by static analysis. It
|
||||
# supports qualified module names, as well as Unix pattern matching.
|
||||
ignored-modules=numpy,pandas,alembic.op,sqlalchemy,alembic.context,flask_appbuilder.security.sqla.PermissionView.role,flask_appbuilder.Model.metadata,flask_appbuilder.Base.metadata
|
||||
ignored-modules=numpy,pandas,alembic.op,sqlalchemy,alembic.context,flask_appbuilder.security.sqla.PermissionView.role,flask_appbuilder.Model.metadata,flask_appbuilder.Base.metadata,distutils
|
||||
|
||||
# List of class names for which member attributes should not be checked (useful
|
||||
# for classes with dynamically set attributes). This supports the use of
|
||||
# qualified names.
|
||||
ignored-classes=optparse.Values,thread._local,_thread._local
|
||||
ignored-classes=optparse.Values,thread._local,_thread._local,sqlalchemy.orm.scoping.scoped_session
|
||||
|
||||
# List of members which are set dynamically and missed by pylint inference
|
||||
# system, and so shouldn't trigger E1101 when accessed. Python regular
|
||||
@@ -292,7 +292,7 @@ generated-members=
|
||||
# List of decorators that produce context managers, such as
|
||||
# contextlib.contextmanager. Add to this list to register other decorators that
|
||||
# produce valid context managers.
|
||||
contextmanager-decorators=contextlib.contextmanager
|
||||
contextmanager-decorators=contextlib.contextmanager,contextlib2.contextmanager
|
||||
|
||||
|
||||
[VARIABLES]
|
||||
|
||||
64
.travis.yml
@@ -1,34 +1,46 @@
|
||||
language: python
|
||||
python:
|
||||
- 2.7
|
||||
- 3.6
|
||||
services:
|
||||
- redis-server
|
||||
addons:
|
||||
code_climate:
|
||||
repo_token: 5f3a06c425eef7be4b43627d7d07a3e46c45bdc07155217825ff7c49cb6a470c
|
||||
- mysql
|
||||
- postgres
|
||||
- redis-server
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.wheelhouse/
|
||||
env:
|
||||
global:
|
||||
- TRAVIS_CACHE=$HOME/.travis_cache/
|
||||
- TRAVIS_NODE_VERSION="7.10.0"
|
||||
matrix:
|
||||
- TOX_ENV=javascript
|
||||
- TOX_ENV=pylint
|
||||
- TOX_ENV=py34-postgres
|
||||
- TOX_ENV=py34-sqlite
|
||||
- TOX_ENV=py27-mysql
|
||||
- TOX_ENV=py27-sqlite
|
||||
before_install:
|
||||
- npm install -g npm@'>=5.4.1'
|
||||
- pip
|
||||
matrix:
|
||||
include:
|
||||
- python: 2.7
|
||||
env: TOXENV=flake8
|
||||
- python: 2.7
|
||||
env: TOXENV=py27-mysql
|
||||
- python: 2.7
|
||||
env: TOXENV=py27-sqlite
|
||||
- python: 2.7
|
||||
env: TOXENV=pylint
|
||||
- python: 3.6
|
||||
env: TOXENV=flake8
|
||||
- python: 3.6
|
||||
env: TOXENV=javascript
|
||||
- python: 3.6
|
||||
env: TOXENV=py36-postgres
|
||||
- python: 3.6
|
||||
env: TOXENV=py36-sqlite
|
||||
- python: 3.6
|
||||
env: TOXENV=pylint
|
||||
exclude:
|
||||
- python: 2.7
|
||||
- python: 3.6
|
||||
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
|
||||
- export PATH=${PATH}:/tmp/hive/bin
|
||||
- psql -U postgres -c "CREATE DATABASE superset;"
|
||||
- psql -U postgres -c "CREATE USER postgresuser WITH PASSWORD 'pguserpassword';"
|
||||
install:
|
||||
- pip install --upgrade pip
|
||||
- pip install tox tox-travis
|
||||
- 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
|
||||
- pip install codecov tox
|
||||
script:
|
||||
- tox
|
||||
after_success:
|
||||
- codecov
|
||||
|
||||
932
CHANGELOG.md
@@ -1,6 +1,936 @@
|
||||
## Change Log
|
||||
|
||||
## Change Log
|
||||
### 0.25.0 (2018/05/08 05:20 +00:00)
|
||||
- [#4942](https://github.com/apache/incubator-superset/pull/4942) [docs] add entry for Hive in installation.rst (#4942) (@mistercrunch)
|
||||
- [#4928](https://github.com/apache/incubator-superset/pull/4928) [sql lab] handle query stop race condition (#4928) (@mistercrunch)
|
||||
- [#4930](https://github.com/apache/incubator-superset/pull/4930) Update installation.rst (#4930) (@vihar)
|
||||
- [#4833](https://github.com/apache/incubator-superset/pull/4833) Merge pull request #4833 from timifasubaa/help_sqllab_forget_the_past (@timifasubaa)
|
||||
- [ab958c6](https://github.com/apache/incubator-superset/commit/ab958c67e6b7fde14e3d79c535045ca87fc5b732) make queries older than 6 hours timeout (@timifasubaa)
|
||||
- [#4939](https://github.com/apache/incubator-superset/pull/4939) Add Portugal to country_map visualization (#4939) (@joaomg)
|
||||
- [#4938](https://github.com/apache/incubator-superset/pull/4938) add Airboxlab to Superset users list (#4938) (@antoine-galataud)
|
||||
- [#4940](https://github.com/apache/incubator-superset/pull/4940) Add Windsor.ai to the list of organizations (#4940) (@octaviancorlade)
|
||||
- [#4899](https://github.com/apache/incubator-superset/pull/4899) rm-slices (#4899) (@hughhhh)
|
||||
- [#4887](https://github.com/apache/incubator-superset/pull/4887) [druid] Updating Druid refresh metadata tests (#4887) (@john-bodley)
|
||||
- [#4900](https://github.com/apache/incubator-superset/pull/4900) Hide restricted ui elements, remove <br> from error message (#4900) (@jasnovak)
|
||||
- [#4923](https://github.com/apache/incubator-superset/pull/4923) Install superset in Kubernetes with helm chart (#4923) (@cychiang)
|
||||
- [#4925](https://github.com/apache/incubator-superset/pull/4925) Support Apache Kylin in EngineSpec (#4925) (@zhaoyongjie)
|
||||
- [#4921](https://github.com/apache/incubator-superset/pull/4921) [bufix] filtered column was removed (#4921) (@mistercrunch)
|
||||
- [#4917](https://github.com/apache/incubator-superset/pull/4917) Add doc entry for BigQuery support (#4917) (@mistercrunch)
|
||||
- [#4918](https://github.com/apache/incubator-superset/pull/4918) Fix typos from linting (#4918) (@mistercrunch)
|
||||
- [#4911](https://github.com/apache/incubator-superset/pull/4911) Fix for week_start_sunday and week_ending_saturday (#4911) (@betodealmeida)
|
||||
- [#4908](https://github.com/apache/incubator-superset/pull/4908) Replace NaN/Infinity with null (#4908) (@betodealmeida)
|
||||
- [#4913](https://github.com/apache/incubator-superset/pull/4913) Fix country_map visualization URL (#4913) (@mistercrunch)
|
||||
- [#4883](https://github.com/apache/incubator-superset/pull/4883) Add note about 0.25.0 upgrade in UPDATING.md (#4883) (@mistercrunch)
|
||||
- [#4897](https://github.com/apache/incubator-superset/pull/4897) Heatmap improvements (#4897) (@mistercrunch)
|
||||
- [#4906](https://github.com/apache/incubator-superset/pull/4906) requirements: bump gunicorn to 19.8.0 (#4906) (@xrmx)
|
||||
- [#4907](https://github.com/apache/incubator-superset/pull/4907) translations: rename pt_BR gettext files (#4907) (@xrmx)
|
||||
- [#4884](https://github.com/apache/incubator-superset/pull/4884) [pylint] prepping for enabling pylint for non-errors (#4884) (@john-bodley)
|
||||
- [#4901](https://github.com/apache/incubator-superset/pull/4901) Fix 'Uncaught TypeError: pe.clamp is not a function' (#4901) (@mistercrunch)
|
||||
- [#4896](https://github.com/apache/incubator-superset/pull/4896) [sql lab] allow stoping 'pending' queries (#4896) (@mistercrunch)
|
||||
- [#4886](https://github.com/apache/incubator-superset/pull/4886) remove hard code http scheme of short url #4656 (#4886) (@ripoul)
|
||||
- [#4891](https://github.com/apache/incubator-superset/pull/4891) Allow limiting rows on Pivot Table (#4891) (@mistercrunch)
|
||||
- [#4890](https://github.com/apache/incubator-superset/pull/4890) [bugfix] temporal columns with expression fail (#4890) (@mistercrunch)
|
||||
- [#4882](https://github.com/apache/incubator-superset/pull/4882) Implement Snowflake engine with supported time grains (#4882) (@villebro)
|
||||
- [#4841](https://github.com/apache/incubator-superset/pull/4841) Move a few JS files (#4841) (@mistercrunch)
|
||||
- [#4872](https://github.com/apache/incubator-superset/pull/4872) Remove spurious "has" from README (#4872) (@davidthewatson)
|
||||
- [#4869](https://github.com/apache/incubator-superset/pull/4869) remove DISTINCT ON statement (#4869) (@stillmatic)
|
||||
- [#4866](https://github.com/apache/incubator-superset/pull/4866) [axis formatting] Override the valueformat to be percentage when contribution is selected (#4866) (@conglei)
|
||||
- [#4836](https://github.com/apache/incubator-superset/pull/4836) Refactoring on exploreReducer.js (#4836) (@hughhhh)
|
||||
- [#4856](https://github.com/apache/incubator-superset/pull/4856) Fix 'pip install .' (#4856) (@mistercrunch)
|
||||
- [#4842](https://github.com/apache/incubator-superset/pull/4842) Safely passing data to d3.html (#4842) (@michellethomas)
|
||||
- [#4867](https://github.com/apache/incubator-superset/pull/4867) Add Astronomer to list of organizations using Apache Superset (#4867) (@ryw)
|
||||
- [#4843](https://github.com/apache/incubator-superset/pull/4843) [formats] add better defaults for time + number formatting (#4843) (@williaster)
|
||||
- [#4853](https://github.com/apache/incubator-superset/pull/4853) [sql] Using read_sql_query instead of read_sql (#4853) (@john-bodley)
|
||||
- [#4854](https://github.com/apache/incubator-superset/pull/4854) correct config language key to pt_BR (#4854) (@pld)
|
||||
- [#4850](https://github.com/apache/incubator-superset/pull/4850) Remove obsolete TODO.md (#4850) (@mistercrunch)
|
||||
- [#4844](https://github.com/apache/incubator-superset/pull/4844) [docs] minor file name and format fix for the setup document (#4844) (@sekikn)
|
||||
- [#4821](https://github.com/apache/incubator-superset/pull/4821) Fix time granularity-related issues (#4821) (@mistercrunch)
|
||||
- [#4829](https://github.com/apache/incubator-superset/pull/4829) ensure directory exists before saving csv file (#4829) (@timifasubaa)
|
||||
- [e47d8a5](https://github.com/apache/incubator-superset/commit/e47d8a59a4773f29e62d9b33d7ad6ad2b343abdd) help sqllab forget the past (@timifasubaa)
|
||||
- [#4651](https://github.com/apache/incubator-superset/pull/4651) [explore] proper filtering of NULLs and '' (#4651) (@mistercrunch)
|
||||
- [#4835](https://github.com/apache/incubator-superset/pull/4835) [setup] Dropping 3.4 and adding 3.6 (#4835) (@john-bodley)
|
||||
- [#4820](https://github.com/apache/incubator-superset/pull/4820) Moving some JS folders (#4820) (@mistercrunch)
|
||||
- [#4828](https://github.com/apache/incubator-superset/pull/4828) [travis] Fixing environments (#4828) (@john-bodley)
|
||||
- [#4831](https://github.com/apache/incubator-superset/pull/4831) db_engine_specs: use correct sqlite week time grain (#4831) (@xrmx)
|
||||
- [#4825](https://github.com/apache/incubator-superset/pull/4825) Update README with fresher screenshots (#4825) (@mistercrunch)
|
||||
- [#4736](https://github.com/apache/incubator-superset/pull/4736) [Explore] Adding custom expressions to adhoc metrics (#4736) (@GabeLoins)
|
||||
- [#4817](https://github.com/apache/incubator-superset/pull/4817) [docs] many improvements to the documentation / cleanup (#4817) (@mistercrunch)
|
||||
- [#4823](https://github.com/apache/incubator-superset/pull/4823) docs: use proper dialect for redshift (#4823) (@xrmx)
|
||||
- [#4702](https://github.com/apache/incubator-superset/pull/4702) RFC: add logger that logs into browser console (#4702) (@betodealmeida)
|
||||
- [#4798](https://github.com/apache/incubator-superset/pull/4798) [DeckGL] Added fixtures and Deck test (#4798) (@hughhhh)
|
||||
- [#4800](https://github.com/apache/incubator-superset/pull/4800) Improve the calendar heatmap (#4800) (@mistercrunch)
|
||||
- [#4746](https://github.com/apache/incubator-superset/pull/4746) Filtering out SQLLab views out of table list view by default (#4746) (@mistercrunch)
|
||||
- [#4815](https://github.com/apache/incubator-superset/pull/4815) [migrations] Fixing issue #4810 (#4815) (@john-bodley)
|
||||
- [#4807](https://github.com/apache/incubator-superset/pull/4807) Make the bottom margin a bit taller (#4807) (@mistercrunch)
|
||||
- [#4801](https://github.com/apache/incubator-superset/pull/4801) [bugfix] dedup groupby columns in Deck visualizations (#4801) (@mistercrunch)
|
||||
- [#4803](https://github.com/apache/incubator-superset/pull/4803) [explore] set working default for MetricsControl (#4803) (@mistercrunch)
|
||||
- [#4806](https://github.com/apache/incubator-superset/pull/4806) [tests] cleaning up test configuration (#4806) (@john-bodley)
|
||||
- [#4659](https://github.com/apache/incubator-superset/pull/4659) Adding tests for the time table viz (#4659) (@michellethomas)
|
||||
- [#3658](https://github.com/apache/incubator-superset/pull/3658) BugFix(#3658) (#4133) (@hidetoshiito)
|
||||
- [#4804](https://github.com/apache/incubator-superset/pull/4804) call next() the right way (#4804) (@timifasubaa)
|
||||
- [#4808](https://github.com/apache/incubator-superset/pull/4808) filter recently viewed to just have explore and dashboard types (#4808) (@hughhhh)
|
||||
- [#4525](https://github.com/apache/incubator-superset/pull/4525) adding option for multiple metrics, group by, opacity, legends (#4525) (@ArielStv)
|
||||
- [#4587](https://github.com/apache/incubator-superset/pull/4587) [logs] Dropping dt column (#4587) (@john-bodley)
|
||||
- [#4802](https://github.com/apache/incubator-superset/pull/4802) [homepage] Fix Favorites chart list (#4802) (@graceguo-supercat)
|
||||
- [#4552](https://github.com/apache/incubator-superset/pull/4552) [travis/tox] Restructuring configuration (#4552) (@john-bodley)
|
||||
- [#4799](https://github.com/apache/incubator-superset/pull/4799) [bugfix] when num_period_compare is not set (#4799) (@mistercrunch)
|
||||
- [#4756](https://github.com/apache/incubator-superset/pull/4756) Improve xAxis ticks, thinner bottom margin (#4756) (@mistercrunch)
|
||||
- [#4792](https://github.com/apache/incubator-superset/pull/4792) Add Ascendica Development in organizations list who use Superset (#4792) (@davidhassan)
|
||||
- [#4774](https://github.com/apache/incubator-superset/pull/4774) [explore] forcing .1% number format when using 'Period Ratio' (#4774) (@mistercrunch)
|
||||
- [#4647](https://github.com/apache/incubator-superset/pull/4647) Add play slider to screengrid (#4647) (@betodealmeida)
|
||||
- [#4781](https://github.com/apache/incubator-superset/pull/4781) Rename UPDATING.MD to UPDATING.md (#4781) (@john-bodley)
|
||||
- [#4765](https://github.com/apache/incubator-superset/pull/4765) [line] fix verbose names in time shift (#4765) (@mistercrunch)
|
||||
- [#4777](https://github.com/apache/incubator-superset/pull/4777) [doc] module header for controls.jsx and visTypes.jsx (#4777) (@mistercrunch)
|
||||
- [#4772](https://github.com/apache/incubator-superset/pull/4772) [dashboard] open in edit mode when adding a chart (#4772) (@mistercrunch)
|
||||
- [#4768](https://github.com/apache/incubator-superset/pull/4768) [Bug fix] Resolving key conflicts in Timeseries Annotation Layer when key is a string (#4768) (@EvelynTurner)
|
||||
- [#4767](https://github.com/apache/incubator-superset/pull/4767) Improve controls layout for Table visualization (#4767) (@mistercrunch)
|
||||
- [#4755](https://github.com/apache/incubator-superset/pull/4755) Pass granularity from backend to frontend as ISO duration (#4755) (@betodealmeida)
|
||||
- [#4773](https://github.com/apache/incubator-superset/pull/4773) Fix brush with annotations (#4773) (@betodealmeida)
|
||||
- [#4778](https://github.com/apache/incubator-superset/pull/4778) Add notes to contrib file about testing and code coverage (#4778) (@ttannis)
|
||||
- [#4766](https://github.com/apache/incubator-superset/pull/4766) [explore] set control default for *showminmax = false (#4766) (@mistercrunch)
|
||||
- [#4673](https://github.com/apache/incubator-superset/pull/4673) Add context to templates / respect slice timeout (#4673) (@daoready)
|
||||
- [#4761](https://github.com/apache/incubator-superset/pull/4761) [druid] Excluding refreshing verbose name (#4761) (@john-bodley)
|
||||
- [#4754](https://github.com/apache/incubator-superset/pull/4754) [deck_multi] fixing issues with deck_multi (#4754) (@mistercrunch)
|
||||
- [#4741](https://github.com/apache/incubator-superset/pull/4741) Set longer CSRF token duration (one week) (#4741) (@mistercrunch)
|
||||
- [#4742](https://github.com/apache/incubator-superset/pull/4742) [sql lab] preserve schema through visualize flow (#4742) (@mistercrunch)
|
||||
- [#4005](https://github.com/apache/incubator-superset/pull/4005) [BUGFIX]: JavaScripts max int is 2^53 - 1, longs are bigger (#4005) (@fabianmenges)
|
||||
- [#4728](https://github.com/apache/incubator-superset/pull/4728) [sql_lab]Disabled run query button if sql query editor is empty (#4728) (@lprashant-94)
|
||||
- [#4726](https://github.com/apache/incubator-superset/pull/4726) [bugfix] convert metrics to numeric in dataframe (#4726) (@mistercrunch)
|
||||
- [#4648](https://github.com/apache/incubator-superset/pull/4648) Pass timezone to Druid Query granularity (#4648) (@ktong)
|
||||
- [#4646](https://github.com/apache/incubator-superset/pull/4646) [BugFix] Allowing limit ordering by post-aggregation metrics (#4646) (@jeffreythewang)
|
||||
- [#4603](https://github.com/apache/incubator-superset/pull/4603) [flask-appbuilder] Bumping version to 1.10.0 (#4603) (@john-bodley)
|
||||
- [#4730](https://github.com/apache/incubator-superset/pull/4730) Fix deep equality logic (#4730) (@mistercrunch)
|
||||
- [#4654](https://github.com/apache/incubator-superset/pull/4654) Expose metrics to JS (#4654) (@betodealmeida)
|
||||
- [#4718](https://github.com/apache/incubator-superset/pull/4718) including auto generated avg metrics in druid (#4718) (@GabeLoins)
|
||||
- [#4738](https://github.com/apache/incubator-superset/pull/4738) easier tab closing in sqllab (#4738) (@GabeLoins)
|
||||
- [#4729](https://github.com/apache/incubator-superset/pull/4729) [explore] don't prompt to 'Run Query' on viewport change (#4729) (@mistercrunch)
|
||||
- [#4720](https://github.com/apache/incubator-superset/pull/4720) Add '.1%' to number format options (#4720) (@mistercrunch)
|
||||
- [#4717](https://github.com/apache/incubator-superset/pull/4717) [sqllab] fix data grid's instant search function (#4717) (@mistercrunch)
|
||||
- [#4451](https://github.com/apache/incubator-superset/pull/4451) [cli] Deprecating gunicorn/flower dependencies (#4451) (@john-bodley)
|
||||
- [#4689](https://github.com/apache/incubator-superset/pull/4689) Remove redundant has_access definition in superset (#4689) (@timifasubaa)
|
||||
- [#4669](https://github.com/apache/incubator-superset/pull/4669) [sqllab] Using app context for Celery task (#4669) (@john-bodley)
|
||||
- [#4693](https://github.com/apache/incubator-superset/pull/4693) Use 3 letters month prefix in default date format (#4693) (@mistercrunch)
|
||||
- [#4719](https://github.com/apache/incubator-superset/pull/4719) [sql lab] ctrl-r hotkey should run latest SQL (#4719) (@mistercrunch)
|
||||
- [#4714](https://github.com/apache/incubator-superset/pull/4714) Add missing perms to sql_lab role (#4714) (@mistercrunch)
|
||||
- [#4709](https://github.com/apache/incubator-superset/pull/4709) Remove trailing '/' from Mailing list link in README file (#4709) (@Alagappan)
|
||||
- [#4663](https://github.com/apache/incubator-superset/pull/4663) [Explore] Streamlined metric definitions for SQLA and Druid (#4663) (@GabeLoins)
|
||||
- [#4703](https://github.com/apache/incubator-superset/pull/4703) Rename no_reload (#4703) (@betodealmeida)
|
||||
- [#4700](https://github.com/apache/incubator-superset/pull/4700) Fixing label issue when columnType is null (#4700) (@michellethomas)
|
||||
- [#4687](https://github.com/apache/incubator-superset/pull/4687) i18n(es_es) (#4687) (@joebordes)
|
||||
- [#4565](https://github.com/apache/incubator-superset/pull/4565) [security] Refactor security code into SupersetSecurityManager (#4565) (@timifasubaa)
|
||||
- [#4680](https://github.com/apache/incubator-superset/pull/4680) Hotkeys in SQL Lab (#4680) (@mistercrunch)
|
||||
- [#4697](https://github.com/apache/incubator-superset/pull/4697) Docs on how to package a release + CHANGELOG for 0.24.0 (#4697) (@mistercrunch)
|
||||
### 0.24.0 (2018/03/27 06:50 +00:00)
|
||||
- [#4655](https://github.com/apache/incubator-superset/pull/4655) [druid] Updating refresh logic (#4655) (@john-bodley)
|
||||
- [#4683](https://github.com/apache/incubator-superset/pull/4683) Fix bug with sorting columns in group by using time shift (#4683) (@michellethomas)
|
||||
- [#4645](https://github.com/apache/incubator-superset/pull/4645) CRUD hints around SQL expressions (#4645) (@mistercrunch)
|
||||
- [#4686](https://github.com/apache/incubator-superset/pull/4686) Preprocess SQL Lab query prior to checking syntax (#4686) (@villebro)
|
||||
- [#4684](https://github.com/apache/incubator-superset/pull/4684) Fix up the Lyft color scheme (#4684) (@mistercrunch)
|
||||
- [#4682](https://github.com/apache/incubator-superset/pull/4682) Add lyftColor to the game 💯 (#4682) (@hughhhh)
|
||||
- [#4679](https://github.com/apache/incubator-superset/pull/4679) add yarn lock info to contributing.md (#4679) (@timifasubaa)
|
||||
- [#4639](https://github.com/apache/incubator-superset/pull/4639) forms: make csv import parse dates accepts a list of columns (#4639) (@xrmx)
|
||||
- [#4674](https://github.com/apache/incubator-superset/pull/4674) add yarn.lock (#4674) (@timifasubaa)
|
||||
- [#4676](https://github.com/apache/incubator-superset/pull/4676) Fix setup.py, comma makes download_url a tuple (#4676) (@mistercrunch)
|
||||
- [#4630](https://github.com/apache/incubator-superset/pull/4630) [Bug fix] Fixed/Refactored annotation layer code so that non-timeseries annotations are applied based on the updated chart object after adding all data (#4630) (@EvelynTurner)
|
||||
- [#4670](https://github.com/apache/incubator-superset/pull/4670) Update messages.po (#4670) (@aleksi75)
|
||||
- [#4664](https://github.com/apache/incubator-superset/pull/4664) fix: epoch_s and epoch_ms to date time (#4664) (@deatheyes)
|
||||
- [#4660](https://github.com/apache/incubator-superset/pull/4660) Better default for MAPBOX_API_KEY (#4660) (@betodealmeida)
|
||||
- [#4633](https://github.com/apache/incubator-superset/pull/4633) Cache the query string (#4633) (@jeffreythewang)
|
||||
- [#4628](https://github.com/apache/incubator-superset/pull/4628) [sql lab] search to use fist&last name instead of username (#4628) (@mistercrunch)
|
||||
- [#4608](https://github.com/apache/incubator-superset/pull/4608) Set filter_select_enabled default to True for Druid (#4608) (@mistercrunch)
|
||||
- [#4555](https://github.com/apache/incubator-superset/pull/4555) [examples] let's not use 'date' as a col name (#4555) (@mistercrunch)
|
||||
- [#4606](https://github.com/apache/incubator-superset/pull/4606) Use 'count' as the default metric when available (#4606) (@mistercrunch)
|
||||
- [#4629](https://github.com/apache/incubator-superset/pull/4629) Fix sqllab numpy array (#4629) (@michellethomas)
|
||||
- [#4601](https://github.com/apache/incubator-superset/pull/4601) Only show overlay if container is set (#4601) (@betodealmeida)
|
||||
- [#4638](https://github.com/apache/incubator-superset/pull/4638) [cosmetic] removing table border in ModelView list (#4638) (@mistercrunch)
|
||||
- [#4641](https://github.com/apache/incubator-superset/pull/4641) part1 (#4641) (@hughhhh)
|
||||
- [#4632](https://github.com/apache/incubator-superset/pull/4632) Adding to list of generated-members to fix pylint errors (#4632) (@michellethomas)
|
||||
- [#4566](https://github.com/apache/incubator-superset/pull/4566) Adding column type label to dropdowns (#4566) (@michellethomas)
|
||||
- [#4627](https://github.com/apache/incubator-superset/pull/4627) Merge pull request #4627 from mistercrunch/fix_run_extra (@mistercrunch)
|
||||
- [b906fec](https://github.com/apache/incubator-superset/commit/b906fece68bee8ccfba4d1f46da2221c37b5d0fa) Move run_extra_queries outsize of BaseViz init (@mistercrunch)
|
||||
- [#4593](https://github.com/apache/incubator-superset/pull/4593) [sql lab] reduce the number of metadata calls when loading a table (#4593) (@mistercrunch)
|
||||
- [#4620](https://github.com/apache/incubator-superset/pull/4620) Fix function name (#4620) (@betodealmeida)
|
||||
- [#4622](https://github.com/apache/incubator-superset/pull/4622) Remove group by from deck.gl viz (#4622) (@betodealmeida)
|
||||
- [#4617](https://github.com/apache/incubator-superset/pull/4617) Allowing config flag to turn off flask-compress (#4617) (@mistercrunch)
|
||||
- [#4194](https://github.com/apache/incubator-superset/pull/4194) [bug fixes] annotations x domains, zeros in text (#4194) (@williaster)
|
||||
- [#4621](https://github.com/apache/incubator-superset/pull/4621) fix mapbox viz (#4621) (@graceguo-supercat)
|
||||
- [#4616](https://github.com/apache/incubator-superset/pull/4616) [contributing] Removing obsolete code climate reference (#4616) (@john-bodley)
|
||||
- [#4572](https://github.com/apache/incubator-superset/pull/4572) Legend for deck.gl scatterplot (#4572) (@betodealmeida)
|
||||
- [#4604](https://github.com/apache/incubator-superset/pull/4604) Show "Range Filter" by default (#4604) (@betodealmeida)
|
||||
- [#4609](https://github.com/apache/incubator-superset/pull/4609) overriding annotation and layers control tab (#4609) (@GabeLoins)
|
||||
- [#4607](https://github.com/apache/incubator-superset/pull/4607) [slice_json] pass slice id to get_form_data() (#4607) (@williaster)
|
||||
- [#4590](https://github.com/apache/incubator-superset/pull/4590) Merge pull request #4590 from michellethomas/fixing_double_escape_presto (@michellethomas)
|
||||
- [#4579](https://github.com/apache/incubator-superset/pull/4579) Merge pull request #4579 from michellethomas/removing_title_label (@michellethomas)
|
||||
- [#4573](https://github.com/apache/incubator-superset/pull/4573) Merge pull request #4573 from john-bodley/john-bodley-cache-fix-datasource-uid (@john-bodley)
|
||||
- [#4602](https://github.com/apache/incubator-superset/pull/4602) Merge pull request #4602 from john-bodley/john-bodley-druid-sync-fix-filter (@john-bodley)
|
||||
|
||||
### 0.23.3 (2018/03/13 17:14 +00:00)
|
||||
- [#4581](https://github.com/apache/incubator-superset/pull/4581) timeseries_limit should not be required for phase 2 (#4581) (@michellethomas)
|
||||
- [8829218](https://github.com/apache/incubator-superset/commit/882921825ca6508b598dee52c9dea73e54982b1b) Changing the title for explore pages (@michellethomas)
|
||||
- [9604e1d](https://github.com/apache/incubator-superset/commit/9604e1dd1466521c0de4e81b53f2b1ae61b88942) [druid] Adding cluster filter for refresh
|
||||
- [#4597](https://github.com/apache/incubator-superset/pull/4597) [BugFix] Resizing widgets problem #4596 (#4597) (@oxydash)
|
||||
- [26257d9](https://github.com/apache/incubator-superset/commit/26257d94f5f43a5d3b745c1b08a29cc40980f211) [cache] Ensuring that the datasource UID is defined
|
||||
- [#4514](https://github.com/apache/incubator-superset/pull/4514) Added new exception class and start of better exception/error handling (#4514) (@hughhhh)
|
||||
- [#4599](https://github.com/apache/incubator-superset/pull/4599) Add ignore git @eaDir Synology directory (#4599) (@oxydash)
|
||||
- [#4591](https://github.com/apache/incubator-superset/pull/4591) Add Aktia Bank in organizations list who use Superset (#4591) (@villebro)
|
||||
- [#4594](https://github.com/apache/incubator-superset/pull/4594) docs: fixup code blocks rendering (#4594) (@xrmx)
|
||||
- [e1af421](https://github.com/apache/incubator-superset/commit/e1af421f0c7426391e7124d1bae5aae9f8a49792) Removing escape_sql so we dont double escape (@michellethomas)
|
||||
- [#4532](https://github.com/apache/incubator-superset/pull/4532) histograms: fixup left margin assigment (#4532) (@xrmx)
|
||||
- [#4504](https://github.com/apache/incubator-superset/pull/4504) Return time in Druid scan (#4504) (@betodealmeida)
|
||||
- [#4584](https://github.com/apache/incubator-superset/pull/4584) [sqllab] Added share button to bottom menu (#4584) (@hughhhh)
|
||||
- [#4551](https://github.com/apache/incubator-superset/pull/4551) [sql lab] option to disable cross schema search (#4551) (@mistercrunch)
|
||||
- [#4585](https://github.com/apache/incubator-superset/pull/4585) [sql lab] comment injection hook (#4585) (@mistercrunch)
|
||||
- [#4586](https://github.com/apache/incubator-superset/pull/4586) [Translate] Added Full Russian Translation (#4586) (@oxydash)
|
||||
- [#4582](https://github.com/apache/incubator-superset/pull/4582) Merge pull request #4582 from john-bodley/john-bodley-javascript-codecov (@john-bodley)
|
||||
- [3fbadd6](https://github.com/apache/incubator-superset/commit/3fbadd68a471e4dcbdc8f0d37352af9c556e4e94) [code-climate] Deprecating Code Climate from JavaScript tests
|
||||
- [#4570](https://github.com/apache/incubator-superset/pull/4570) Adding option to visualize negative values in Table view (#4570) (@tanvach)
|
||||
- [402c7dd](https://github.com/apache/incubator-superset/commit/402c7ddb26399d4ef984bcf786e2514eaeb7f355) Removing [dashboard] and [slice] titles to show name (@michellethomas)
|
||||
- [#4578](https://github.com/apache/incubator-superset/pull/4578) [Explore] Save custom url parameters when user save slices (#4578) (@graceguo-supercat)
|
||||
- [#4550](https://github.com/apache/incubator-superset/pull/4550) Evelynturner/annotation timezone fix2 (#4550) (@EvelynTurner)
|
||||
- [#4472](https://github.com/apache/incubator-superset/pull/4472) Basic Portuguese Brazilian Translation (#4472) (@AcNeidert)
|
||||
- [#4562](https://github.com/apache/incubator-superset/pull/4562) [bug] Fix CSV upload feature for DB with password (#4562) (@ktravis)
|
||||
- [#4563](https://github.com/apache/incubator-superset/pull/4563) [landscape.io] Deprecating .landscape.yml (#4563) (@john-bodley)
|
||||
- [#4564](https://github.com/apache/incubator-superset/pull/4564) [requires.io] Removing obsolete requires.io link (#4564) (@john-bodley)
|
||||
- [#4567](https://github.com/apache/incubator-superset/pull/4567) Merge pull request #4567 from john-bodley/john-bodley-payload-error-status-code (@john-bodley)
|
||||
- [1e8cd0e](https://github.com/apache/incubator-superset/commit/1e8cd0e61e7bb442af7eab9997da487a82c91673) [payload] Set status code on error rather than query status
|
||||
- [#4560](https://github.com/apache/incubator-superset/pull/4560) [bug] fix shortener url (#4560) (@graceguo-supercat)
|
||||
- [#4505](https://github.com/apache/incubator-superset/pull/4505) Expose hook to inject database connection logic on the fly (#4505) (@mistercrunch)
|
||||
- [#4543](https://github.com/apache/incubator-superset/pull/4543) Setting up compression using flask-compress (#4543) (@mistercrunch)
|
||||
- [#4549](https://github.com/apache/incubator-superset/pull/4549) [bugfix] Fixing regression from #4500 (#4549) (@john-bodley)
|
||||
- [#4553](https://github.com/apache/incubator-superset/pull/4553) [landing] Making Dashboards the first/default tab (#4553) (@john-bodley)
|
||||
- [#4542](https://github.com/apache/incubator-superset/pull/4542) Removing files from MANIFEST.in (#4542) (@mistercrunch)
|
||||
- [#4533](https://github.com/apache/incubator-superset/pull/4533) Merge pull request #4533 from john-bodley/john-bodley-replace-coveralls-with-codecov (@john-bodley)
|
||||
- [#4530](https://github.com/apache/incubator-superset/pull/4530) [presto] Removing patched presto (#4530) (@john-bodley)
|
||||
- [#4536](https://github.com/apache/incubator-superset/pull/4536) [dump.rdb] Removing rouge file (#4536) (@john-bodley)
|
||||
- [#4541](https://github.com/apache/incubator-superset/pull/4541) Add ScopeAI (#4541) (@lucianoiscool)
|
||||
|
||||
### 0.23.1 (2018/03/06 06:41 +00:00)
|
||||
- [#4534](https://github.com/apache/incubator-superset/pull/4534) Merge pull request #4534 from john-bodley/john-bodley-setup-url (@john-bodley)
|
||||
|
||||
### 0.23.0 (2018/03/06 00:59 +00:00)
|
||||
- [#4500](https://github.com/apache/incubator-superset/pull/4500) Merge pull request #4500 from john-bodley/john-bodley-fix-pr-4396 (@john-bodley)
|
||||
- [b01a9bb](https://github.com/apache/incubator-superset/commit/b01a9bba1f2043435e6fc1b189661e27b7dbbaea) [setup] Fixing URLs
|
||||
- [#4538](https://github.com/apache/incubator-superset/pull/4538) Pass datasource as form_data param (#4538) (@Pek1s)
|
||||
- [4f7258a](https://github.com/apache/incubator-superset/commit/4f7258aacaa5acf37c64769fa18da57f7dbd606e) [coverage] Replacing coveralls with codecov
|
||||
- [#4513](https://github.com/apache/incubator-superset/pull/4513) Superset issue #4512: fixing histogram (#4513) (@ArielStv)
|
||||
- [#4511](https://github.com/apache/incubator-superset/pull/4511) Fix how the annotation layer interpretes the timestamp string without timezone info; use it as UTC (#4511) (@EvelynTurner)
|
||||
- [#4515](https://github.com/apache/incubator-superset/pull/4515) [dashboard] (#4515) (@graceguo-supercat)
|
||||
- [#4482](https://github.com/apache/incubator-superset/pull/4482) chart style options get their own tab (#4482) (@GabeLoins)
|
||||
- [#4487](https://github.com/apache/incubator-superset/pull/4487) Make margin width based on container width instead of slice width (#4487) (@jeffreythewang)
|
||||
- [7440d34](https://github.com/apache/incubator-superset/commit/7440d34936784283f692a39402bcb11a9eeaa6a3) [payload] Fixing regression introducted in ##4396
|
||||
- [#4486](https://github.com/apache/incubator-superset/pull/4486) [Explore] applying refresh chart overlay when chart is stale (#4486) (@GabeLoins)
|
||||
- [#4480](https://github.com/apache/incubator-superset/pull/4480) Add https support for Druid (#4480) (@mistercrunch)
|
||||
- [#4491](https://github.com/apache/incubator-superset/pull/4491) Introduce an onInit method for when a new viz_type is selected (#4491) (@mistercrunch)
|
||||
- [#4488](https://github.com/apache/incubator-superset/pull/4488) fixes to csv - hive upload (#4488) (@timifasubaa)
|
||||
- [#4469](https://github.com/apache/incubator-superset/pull/4469) check for access before requesting access (#4469) (@timifasubaa)
|
||||
- [#4496](https://github.com/apache/incubator-superset/pull/4496) Change limit form 50k to 10k (#4496) (@mistercrunch)
|
||||
- [#4490](https://github.com/apache/incubator-superset/pull/4490) [WiP] Cleanup & fix URL scheme for the explore view (#4490) (@mistercrunch)
|
||||
- [#4485](https://github.com/apache/incubator-superset/pull/4485) [dashboard] Fix JS error when position_json data is empty (#4485) (@graceguo-supercat)
|
||||
- [#4463](https://github.com/apache/incubator-superset/pull/4463) New Landing Page v1.0 (#4463) (@hughhhh)
|
||||
- [#4459](https://github.com/apache/incubator-superset/pull/4459) [Explore] highlighting run query when chart is stale on explore view (#4459) (@GabeLoins)
|
||||
- [#4467](https://github.com/apache/incubator-superset/pull/4467) [geo] add controls for minRadiusPixels and maxRadiusPixels in deck_scatter (#4467) (@mistercrunch)
|
||||
- [#4477](https://github.com/apache/incubator-superset/pull/4477) [flake8] Adding flake8-coding (#4477) (@john-bodley)
|
||||
- [#4478](https://github.com/apache/incubator-superset/pull/4478) add organization (#4478) (@ailurus1991)
|
||||
- [#4466](https://github.com/apache/incubator-superset/pull/4466) [FilterBox] Make filterbox localizable (#4466) (@raffas)
|
||||
- [#4476](https://github.com/apache/incubator-superset/pull/4476) [flake8] Adding future-import check (#4476) (@john-bodley)
|
||||
- [#4474](https://github.com/apache/incubator-superset/pull/4474) [flake8] Fixing additional flake8 issue w/ the presence of ignore (#4474) (@john-bodley)
|
||||
- [#4475](https://github.com/apache/incubator-superset/pull/4475) Pass param of limit for recent activity (#4475) (@hughhhh)
|
||||
- [#4461](https://github.com/apache/incubator-superset/pull/4461) [hotfix] resolve utf-8 encoding issue in db migration (#4461) (@timifasubaa)
|
||||
- [#4457](https://github.com/apache/incubator-superset/pull/4457) [explore] allow URL shortner even if no slice exist (#4457) (@mistercrunch)
|
||||
- [#4400](https://github.com/apache/incubator-superset/pull/4400) Allowing config flag to turn off javascript controls (#4400) (@mistercrunch)
|
||||
- [#4449](https://github.com/apache/incubator-superset/pull/4449) Make instant controls store state in URL (#4449) (@betodealmeida)
|
||||
- [#4454](https://github.com/apache/incubator-superset/pull/4454) Make npm run dev-fast the default (#4454) (@mistercrunch)
|
||||
- [#4456](https://github.com/apache/incubator-superset/pull/4456) [gitignore] Adding venv to .gitignore (#4456) (@GabeLoins)
|
||||
- [#4444](https://github.com/apache/incubator-superset/pull/4444) A collection of bug fixes (#4444) (@mistercrunch)
|
||||
- [#4455](https://github.com/apache/incubator-superset/pull/4455) fixing spacing issue on internationalization dropdown (#4455) (@GabeLoins)
|
||||
- [#4452](https://github.com/apache/incubator-superset/pull/4452) [bugfix] address issue 4206 (#4452) (@mistercrunch)
|
||||
- [#4446](https://github.com/apache/incubator-superset/pull/4446) for 48 columns layout, adjust default size and layout for newly added slices (#4446) (@graceguo-supercat)
|
||||
- [#4413](https://github.com/apache/incubator-superset/pull/4413) Remove comments from queries in SQL Lab that break Explore view (#4413) (@villebro)
|
||||
- [#4450](https://github.com/apache/incubator-superset/pull/4450) fix typo. "グルプ分け可能" => "グループ分け可能" (#4450) (@m4neda)
|
||||
- [#4447](https://github.com/apache/incubator-superset/pull/4447) remove html tag in timeout error message (#4447) (@graceguo-supercat)
|
||||
- [#4442](https://github.com/apache/incubator-superset/pull/4442) Improve default placeholder text on SelectControl (#4442) (@mistercrunch)
|
||||
- [#4448](https://github.com/apache/incubator-superset/pull/4448) Removed double call to ConnectorRegistry.sources (#4448) (@villebro)
|
||||
- [#4408](https://github.com/apache/incubator-superset/pull/4408) Add link on how to get permission to permission error (#4408) (@timifasubaa)
|
||||
- [#4434](https://github.com/apache/incubator-superset/pull/4434) Added Example snippet for setting up Redis cache (#4434) (@hughhhh)
|
||||
- [#4336](https://github.com/apache/incubator-superset/pull/4336) Play scrubber (#4336) (@betodealmeida)
|
||||
- [#4430](https://github.com/apache/incubator-superset/pull/4430) Change current thumbnails to smaller ones. (#4430) (@mistercrunch)
|
||||
- [#4436](https://github.com/apache/incubator-superset/pull/4436) Pass in cache timeout for async queries (#4436) (@jeffreythewang)
|
||||
- [#4437](https://github.com/apache/incubator-superset/pull/4437) Fix separator visualization by propagating header height (#4437) (@jaylindquist)
|
||||
- [#4438](https://github.com/apache/incubator-superset/pull/4438) Make chart title backgrounds transparent to prevent buttonface color in IE (#4438) (@jaylindquist)
|
||||
- [#4416](https://github.com/apache/incubator-superset/pull/4416) [dashboard] more granular grid layout (#4416) (@mistercrunch)
|
||||
- [#4432](https://github.com/apache/incubator-superset/pull/4432) Added check cache key util (#4432) (@hughhhh)
|
||||
- [#4418](https://github.com/apache/incubator-superset/pull/4418) Updated Italian Translation (#4418) (@raffas)
|
||||
- [#4431](https://github.com/apache/incubator-superset/pull/4431) Add .1s option to D3 Format dropdown (#4431) (@raffas)
|
||||
- [#4405](https://github.com/apache/incubator-superset/pull/4405) Disable user access request (#4405) (@timifasubaa)
|
||||
- [#4427](https://github.com/apache/incubator-superset/pull/4427) Bump dependencies with security issues (#4427) (@xrmx)
|
||||
- [#3993](https://github.com/apache/incubator-superset/pull/3993) [Explore view] Use POST method for charting requests (#3993) (@graceguo-supercat)
|
||||
- [#4410](https://github.com/apache/incubator-superset/pull/4410) Unset 'series limit' default from 50 to null (#4410) (@mistercrunch)
|
||||
- [#4411](https://github.com/apache/incubator-superset/pull/4411) use full path in case of there are query params (#4411) (@Chun-LingChen)
|
||||
- [#4389](https://github.com/apache/incubator-superset/pull/4389) [geo] introduce "Auto Zoom" control (#4389) (@mistercrunch)
|
||||
- [#4401](https://github.com/apache/incubator-superset/pull/4401) [SqlLab] Fix a few UI issues (#4401) (@graceguo-supercat)
|
||||
- [#4404](https://github.com/apache/incubator-superset/pull/4404) Check class name string instead of checking the instance (#4404) (@mxmzdlv)
|
||||
- [#4380](https://github.com/apache/incubator-superset/pull/4380) [error handling] 'Time Comparison' query returns no data (#4380) (@mistercrunch)
|
||||
- [#4383](https://github.com/apache/incubator-superset/pull/4383) Typo fix: dashbaord -> dashboard. (#4383) (@xiaohanyu)
|
||||
- [#4396](https://github.com/apache/incubator-superset/pull/4396) Fix markup broken since cache related changes (#4396) (@mistercrunch)
|
||||
- [#4178](https://github.com/apache/incubator-superset/pull/4178) Add PeopleDoc in organizations list who use superset (#4178) (@rodo)
|
||||
- [#4390](https://github.com/apache/incubator-superset/pull/4390) Fix 4 security vulnerabilities (#4390) (@ddworken-sc)
|
||||
- [#4349](https://github.com/apache/incubator-superset/pull/4349) Minor fixes to sunburst (#4349) (@mistercrunch)
|
||||
- [#4346](https://github.com/apache/incubator-superset/pull/4346) Add permission checks to save_or_overwrite_slice (#4346) (@jaylindquist)
|
||||
- [#4388](https://github.com/apache/incubator-superset/pull/4388) Remove permission check for frontend logging API (#4388) (@graceguo-supercat)
|
||||
- [#4353](https://github.com/apache/incubator-superset/pull/4353) Superset issue #4323 (#4353) (@maver1ck)
|
||||
- [#4377](https://github.com/apache/incubator-superset/pull/4377) Bump pydruid to 0.4.1 (#4377) (@mistercrunch)
|
||||
- [#4359](https://github.com/apache/incubator-superset/pull/4359) [revert] Reverting PR #4062 (#4359) (@john-bodley)
|
||||
- [#4316](https://github.com/apache/incubator-superset/pull/4316) Fix caching issues (#4316) (@mistercrunch)
|
||||
- [#4372](https://github.com/apache/incubator-superset/pull/4372) Set default row_limit to 50k (#4372) (@mistercrunch)
|
||||
- [#4363](https://github.com/apache/incubator-superset/pull/4363) [line] improve feature (#4363) (@mistercrunch)
|
||||
- [#4373](https://github.com/apache/incubator-superset/pull/4373) Remove dangerouslySetInnerHTML in StackTraceMessage component (#4373) (@mistercrunch)
|
||||
- [#4341](https://github.com/apache/incubator-superset/pull/4341) Bump python dependencies (#4341) (@mistercrunch)
|
||||
- [#4333](https://github.com/apache/incubator-superset/pull/4333) Add hour grain to Sqlite (#4333) (@betodealmeida)
|
||||
- [#4358](https://github.com/apache/incubator-superset/pull/4358) [druid] fix bug around handling NULLs (#4358) (@mistercrunch)
|
||||
- [#4368](https://github.com/apache/incubator-superset/pull/4368) Add ipdb to dev dependencies. (#4368) (@xiaohanyu)
|
||||
- [#4319](https://github.com/apache/incubator-superset/pull/4319) convert postgresql date_trunc() to UTC to prevent pandas error (#4319) (@habalux)
|
||||
- [#4367](https://github.com/apache/incubator-superset/pull/4367) Remove useless empty npm-debug.log (#4367) (@xiaohanyu)
|
||||
- [#4364](https://github.com/apache/incubator-superset/pull/4364) New options for european time format in in D3_TIME_FORMAT_OPTIONS (#4364) (@raffas)
|
||||
- [#4344](https://github.com/apache/incubator-superset/pull/4344) Adding dashboard add view (#4344) (@michellethomas)
|
||||
- [#4345](https://github.com/apache/incubator-superset/pull/4345) fix uri form data' (#4345) (@timifasubaa)
|
||||
- [#4337](https://github.com/apache/incubator-superset/pull/4337) read query params for json in dashboard endpoint (#4337) (@hughhhh)
|
||||
- [#4339](https://github.com/apache/incubator-superset/pull/4339) 1. fix check filters change logic (#4339) (@graceguo-supercat)
|
||||
- [#4338](https://github.com/apache/incubator-superset/pull/4338) Fix the bug of charts/slices cannot be filtered by datasource name. (#4338) (@liutgnu)
|
||||
- [#4298](https://github.com/apache/incubator-superset/pull/4298) Refactor import csv (#4298) (@timifasubaa)
|
||||
- [#3676](https://github.com/apache/incubator-superset/pull/3676) [New Viz] Nightingale Rose Chart (#3676) (@Mogball)
|
||||
- [#4241](https://github.com/apache/incubator-superset/pull/4241) [cli] permission cleanup on 'superset init' (#4241) (@mistercrunch)
|
||||
- [#4224](https://github.com/apache/incubator-superset/pull/4224) [BugFix]: Creating a PostgresBaseEngineSpec so changes to the Postgre… (#4224) (@fabianmenges)
|
||||
- [#4325](https://github.com/apache/incubator-superset/pull/4325) Bump pyrdruid to 0.4.0 (#4325) (@mistercrunch)
|
||||
- [#4326](https://github.com/apache/incubator-superset/pull/4326) [explore] fix missing CacheLabel (#4326) (@mistercrunch)
|
||||
- [#4321](https://github.com/apache/incubator-superset/pull/4321) Update installation.rst for Ubuntu 16.04 LTS (#4321) (@raffas)
|
||||
- [#4322](https://github.com/apache/incubator-superset/pull/4322) [Bug] Resize should trigger chart re-render (#4322) (@graceguo-supercat)
|
||||
- [#4301](https://github.com/apache/incubator-superset/pull/4301) [Explore] Fix Stop Query Button behavior (#4301) (@graceguo-supercat)
|
||||
- [#4293](https://github.com/apache/incubator-superset/pull/4293) Refactoring deckgl (#4293) (@betodealmeida)
|
||||
- [#4226](https://github.com/apache/incubator-superset/pull/4226) add frontend logging utility function (#4226) (@graceguo-supercat)
|
||||
- [#4242](https://github.com/apache/incubator-superset/pull/4242) Added Path, Polygon, and Arcs to deckGL example dashboard (#4242) (@hughhhh)
|
||||
- [#4260](https://github.com/apache/incubator-superset/pull/4260) Use the query_obj as the basis for the cache key (#4260) (@mistercrunch)
|
||||
- [#4299](https://github.com/apache/incubator-superset/pull/4299) Bump sqlalchemy to 1.2.2 (#4299) (@xrmx)
|
||||
- [#4303](https://github.com/apache/incubator-superset/pull/4303) Reverts apache/incubator-superset#4244 (#4303) (@mistercrunch)
|
||||
- [#4291](https://github.com/apache/incubator-superset/pull/4291) Fixing json decode error on druiddatasourcemodelview/api/read (#4291) (@michellethomas)
|
||||
- [#4272](https://github.com/apache/incubator-superset/pull/4272) [geo] Add JS controls to remaining layers (#4272) (@hughhhh)
|
||||
- [#4261](https://github.com/apache/incubator-superset/pull/4261) Set point size control's default for deck_scatter viz (#4261) (@mistercrunch)
|
||||
- [#4270](https://github.com/apache/incubator-superset/pull/4270) deck_multi to pass down filters to layers (#4270) (@mistercrunch)
|
||||
- [#4275](https://github.com/apache/incubator-superset/pull/4275) Handle 'pd.Timestamp' when jsonifying (#4275) (@mistercrunch)
|
||||
- [#4276](https://github.com/apache/incubator-superset/pull/4276) Prevent FilterBox extra query (#4276) (@mistercrunch)
|
||||
- [#4277](https://github.com/apache/incubator-superset/pull/4277) Fix SUPERSET_WEBSERVER_TIMEOUT in VisualizeModal (#4277) (@mistercrunch)
|
||||
- [#4262](https://github.com/apache/incubator-superset/pull/4262) [geo] JS function to receive the whole data array instead of individual object (#4262) (@mistercrunch)
|
||||
- [#4265](https://github.com/apache/incubator-superset/pull/4265) Fix click on now in DateFilterControl (#4265) (@mistercrunch)
|
||||
- [#4273](https://github.com/apache/incubator-superset/pull/4273) [explore] fix empty query message in 'View Query' (#4273) (@mistercrunch)
|
||||
- [#4279](https://github.com/apache/incubator-superset/pull/4279) Always use fluid container for navbar. (#4279) (@xiaohanyu)
|
||||
- [#4108](https://github.com/apache/incubator-superset/pull/4108) [BUGFIX]: Check datatype of results before converting to DataFrame (#4108) (@marcusianlevine)
|
||||
- [#4243](https://github.com/apache/incubator-superset/pull/4243) Use json for imports and exports, not pickle (#4243) (@timifasubaa)
|
||||
- [#4251](https://github.com/apache/incubator-superset/pull/4251) Using a NullPool for external connections by default (#4251) (@mistercrunch)
|
||||
- [#4264](https://github.com/apache/incubator-superset/pull/4264) Set 'Range Filter' default to false (#4264) (@mistercrunch)
|
||||
- [#4268](https://github.com/apache/incubator-superset/pull/4268) Fix heatmap tooltip disappears under the slice's header (#4268) (@abotero)
|
||||
- [#4263](https://github.com/apache/incubator-superset/pull/4263) Bump flower==0.9.2 (#4263) (@mistercrunch)
|
||||
- [#4240](https://github.com/apache/incubator-superset/pull/4240) [cache] Fixing json.dumps for timestamp (#4240) (@john-bodley)
|
||||
- [#4246](https://github.com/apache/incubator-superset/pull/4246) [Sql Lab] Fix query results display at the bottom of screen (#4246) (@graceguo-supercat)
|
||||
- [#4244](https://github.com/apache/incubator-superset/pull/4244) [Sql Lab] Fix Autorefresh component pulling not stopped. (#4244) (@graceguo-supercat)
|
||||
- [#4237](https://github.com/apache/incubator-superset/pull/4237) Fix 'argument to reversed() must be a sequence' (#4237) (@mistercrunch)
|
||||
- [#4227](https://github.com/apache/incubator-superset/pull/4227) Added DeckGL.Polygon Layer w/ JS controls (#4227) (@hughhhh)
|
||||
- [#4235](https://github.com/apache/incubator-superset/pull/4235) remove setting spatial in DeckPathViz class (#4235) (@hughhhh)
|
||||
- [#4229](https://github.com/apache/incubator-superset/pull/4229) Don't cache if there's no cache key (#4229) (@michellethomas)
|
||||
- [#4234](https://github.com/apache/incubator-superset/pull/4234) add Ona as a user (#4234) (@pld)
|
||||
- [#4220](https://github.com/apache/incubator-superset/pull/4220) Improve deck.gl GeoJSON visualization (#4220) (@mistercrunch)
|
||||
- [#4221](https://github.com/apache/incubator-superset/pull/4221) [bugfix] time_pivot entry got missing in merge conflict (#4221) (@mistercrunch)
|
||||
- [#4225](https://github.com/apache/incubator-superset/pull/4225) [bugfix] markup and iframe viz raise 'Empty query' (#4225) (@mistercrunch)
|
||||
- [#4215](https://github.com/apache/incubator-superset/pull/4215) Fix tutorial doesn't match the current interface #4138 (#4215) (@zhaoyongjie)
|
||||
- [#4217](https://github.com/apache/incubator-superset/pull/4217) templates: open code and documentation on a new tab (#4217) (@xrmx)
|
||||
- [#4207](https://github.com/apache/incubator-superset/pull/4207) Adding limit to time_table viz to get druid query to work (#4207) (@michellethomas)
|
||||
- [#4202](https://github.com/apache/incubator-superset/pull/4202) [line chart] fix time shift color (#4202) (@mistercrunch)
|
||||
- [#4016](https://github.com/apache/incubator-superset/pull/4016) [cache] Using the query as the basis of the cache key (#4016) (@john-bodley)
|
||||
- [#4203](https://github.com/apache/incubator-superset/pull/4203) [druid] fix 2 phases queries that specify 'Sort By' on 'Series limit' (#4203) (@mistercrunch)
|
||||
- [#4200](https://github.com/apache/incubator-superset/pull/4200) [bugfix] dealing with DBAPIs that return unserilizable types (#4200) (@mistercrunch)
|
||||
- [#4134](https://github.com/apache/incubator-superset/pull/4134) [Geo] Added DeckGL Arc Layer and Refactor on BaseDeckGL class (#4134) (@hughhhh)
|
||||
- [#4126](https://github.com/apache/incubator-superset/pull/4126) Hanization (#4126) (@asdf2014)
|
||||
- [#4114](https://github.com/apache/incubator-superset/pull/4114) Superset was using undefined metrics for specifying limits (#4114) (@bolkedebruin)
|
||||
- [#4173](https://github.com/apache/incubator-superset/pull/4173) Using user-defined Javascript to customize geospatial visualization (#4173) (@mistercrunch)
|
||||
- [#4183](https://github.com/apache/incubator-superset/pull/4183) [datasource editor] click checkbox creates metrics instantly (#4183) (@mistercrunch)
|
||||
- [#4201](https://github.com/apache/incubator-superset/pull/4201) [explore] fix json highlighting for Druid queries (#4201) (@mistercrunch)
|
||||
- [#4186](https://github.com/apache/incubator-superset/pull/4186) Sort out dependencies in travis/tox (#4186) (@mistercrunch)
|
||||
- [#4184](https://github.com/apache/incubator-superset/pull/4184) Enable SQL syntax highlighting in View Query (#4184) (@betodealmeida)
|
||||
- [#4187](https://github.com/apache/incubator-superset/pull/4187) [annotations] Fixing migration for annotation layers (#4187) (@john-bodley)
|
||||
- [#4176](https://github.com/apache/incubator-superset/pull/4176) fix since or until is empty value #4170 (#4176) (@zhaoyongjie)
|
||||
- [#4182](https://github.com/apache/incubator-superset/pull/4182) Moving the custom_password_store out of Database class (#4182) (@fabianmenges)
|
||||
- [#4180](https://github.com/apache/incubator-superset/pull/4180) [security] Adding all derived FAB UserModelView views to admin only (#4180) (@john-bodley)
|
||||
- [#4101](https://github.com/apache/incubator-superset/pull/4101) Don't use fully qualified column names in metric definitions (#4101) (@mistercrunch)
|
||||
- [#4172](https://github.com/apache/incubator-superset/pull/4172) [FAB] configuring updating of permissions (#4172) (@john-bodley)
|
||||
- [#4164](https://github.com/apache/incubator-superset/pull/4164) Allow alpha role import csv (#4164) (@timifasubaa)
|
||||
- [#4147](https://github.com/apache/incubator-superset/pull/4147) Make Welcome page into a simple React app (#4147) (@mistercrunch)
|
||||
- [#4156](https://github.com/apache/incubator-superset/pull/4156) Fix chart rendering error in time series table (#4156) (@graceguo-supercat)
|
||||
- [#4157](https://github.com/apache/incubator-superset/pull/4157) [Bug] Closing change datasource modal throws JS error (#4157) (@graceguo-supercat)
|
||||
- [#4162](https://github.com/apache/incubator-superset/pull/4162) Check for non-None database before using. (#4162) (@atronchi)
|
||||
- [#4163](https://github.com/apache/incubator-superset/pull/4163) Druid support via SQLAlchemy (#4163) (@betodealmeida)
|
||||
- [#4125](https://github.com/apache/incubator-superset/pull/4125) Fix invaild gitter url (#4125) (@asdf2014)
|
||||
- [#4148](https://github.com/apache/incubator-superset/pull/4148) Adding Apache Kylin datasource for documentation (#4148) (@zhaoyongjie)
|
||||
- [#4143](https://github.com/apache/incubator-superset/pull/4143) Create DATA_DIR after importing config (#4143) (@leorochael)
|
||||
- [#4121](https://github.com/apache/incubator-superset/pull/4121) Fix USA's state geojson for 'Country Map' visualization (#4121) (@mistercrunch)
|
||||
- [#4139](https://github.com/apache/incubator-superset/pull/4139) fix variable name (#4139) (@timifasubaa)
|
||||
- [#4130](https://github.com/apache/incubator-superset/pull/4130) Remedy for dual axis annotation (#4130) (@Mogball)
|
||||
- [#4104](https://github.com/apache/incubator-superset/pull/4104) [explore] add datasource metadata (#4104) (@mistercrunch)
|
||||
- [#4135](https://github.com/apache/incubator-superset/pull/4135) better thumbnail for deck_geojson (#4135) (@hughhhh)
|
||||
- [#4124](https://github.com/apache/incubator-superset/pull/4124) Added guard statement for spatial controls (#4124) (@hughhhh)
|
||||
- [#4096](https://github.com/apache/incubator-superset/pull/4096) Multi layers DECK.GL visualization (#4096) (@mistercrunch)
|
||||
- [#4116](https://github.com/apache/incubator-superset/pull/4116) Fix rst grammar problems (#4116) (@asdf2014)
|
||||
- [#4118](https://github.com/apache/incubator-superset/pull/4118) Update UserInfo.jsx and set additional properties for react-gravatar (#4118) (@jpesculis)
|
||||
- [#4097](https://github.com/apache/incubator-superset/pull/4097) [geo] Added DeckGL GeoJson layer (#4097) (@hughhhh)
|
||||
- [#4076](https://github.com/apache/incubator-superset/pull/4076) Introduce Javascript controls (#4076) (@mistercrunch)
|
||||
- [#4042](https://github.com/apache/incubator-superset/pull/4042) [Bugfix] Issues with merge_extra_filters (#4042) (#4091) (@nbonnotte)
|
||||
- [#3996](https://github.com/apache/incubator-superset/pull/3996) [sql lab] deeper support for templating (#3996) (@mistercrunch)
|
||||
- [#4067](https://github.com/apache/incubator-superset/pull/4067) [geo] add support for deck.gl's path layer (#4067) (@mistercrunch)
|
||||
- [#4090](https://github.com/apache/incubator-superset/pull/4090) Using TextAreaControl for WHERE and HAVING clause section (#4090) (@mistercrunch)
|
||||
- [#4071](https://github.com/apache/incubator-superset/pull/4071) Fix for SQL editor throwing can't deserialize google.cloud.bigquery._helpers.Row with BigQuery (#4071) (@kuriancheeramelil)
|
||||
- [#4089](https://github.com/apache/incubator-superset/pull/4089) Bugfix: Druid having filters are broken (#4089) (@fabianmenges)
|
||||
- [#4083](https://github.com/apache/incubator-superset/pull/4083) Event annotation should have min width (#4083) (@fabianmenges)
|
||||
- [#4082](https://github.com/apache/incubator-superset/pull/4082) [bugfix] iframe and markup are broken (#4082) (@mistercrunch)
|
||||
- [#4072](https://github.com/apache/incubator-superset/pull/4072) DB migration of annotation_layers on slice objects and slimming down annotation object. (#4072) (@fabianmenges)
|
||||
- [#4073](https://github.com/apache/incubator-superset/pull/4073) [Bugfix] Issues with table filtering (#4073) (@Mogball)
|
||||
- [#3530](https://github.com/apache/incubator-superset/pull/3530) [Feature] enhanced memoized on get_sqla_engine and other functions (#3530) (@Mogball)
|
||||
- [#3518](https://github.com/apache/incubator-superset/pull/3518) Full Annotation Framework (#3518) (@fabianmenges)
|
||||
- [#4065](https://github.com/apache/incubator-superset/pull/4065) #4058 Fix Oracle timestamps (Oracle "ORA-00907: missing right parenthesis" error) (#4065) (@nichobbs)
|
||||
- [#4066](https://github.com/apache/incubator-superset/pull/4066) [geo] turn off renderTrigger on viewport control (#4066) (@mistercrunch)
|
||||
- [#4062](https://github.com/apache/incubator-superset/pull/4062) [health] Adding DB check to /health (#4062) (@john-bodley)
|
||||
- [#4059](https://github.com/apache/incubator-superset/pull/4059) Adding rowcount label to explore view header (#4059) (@mistercrunch)
|
||||
- [#4032](https://github.com/apache/incubator-superset/pull/4032) [geo] provide more flexible Spatial controls (#4032) (@mistercrunch)
|
||||
- [#4063](https://github.com/apache/incubator-superset/pull/4063) Add db_engine_spec for Druid (#4063) (@mistercrunch)
|
||||
- [#4048](https://github.com/apache/incubator-superset/pull/4048) Bump dev version on trunk (#4048) (@mistercrunch)
|
||||
- [#4045](https://github.com/apache/incubator-superset/pull/4045) Changelog for 0.21.0 (#4045) (@mistercrunch)
|
||||
- [#4047](https://github.com/apache/incubator-superset/pull/4047) Fix the pypi build (#4047) (@mistercrunch)
|
||||
- [#4049](https://github.com/apache/incubator-superset/pull/4049) Change reference for slices to chart (#4049) (@hughhhh)
|
||||
|
||||
### 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)
|
||||
- [#3773](https://github.com/apache/incubator-superset/pull/3773) Fix dashboard export download (#3773) (@michellethomas)
|
||||
- [#3767](https://github.com/apache/incubator-superset/pull/3767) [time table] add tooltip to sparkline (#3767) (@williaster)
|
||||
- [#3748](https://github.com/apache/incubator-superset/pull/3748) Update to reflect new version of cryptography (#3748) (@SpyderRivera)
|
||||
- [#3763](https://github.com/apache/incubator-superset/pull/3763) docs: reword the FAQ regarding table changes (#3763) (@xrmx)
|
||||
- [#3764](https://github.com/apache/incubator-superset/pull/3764) add stackoverflow tag (#3764) (@dmigo)
|
||||
- [#3759](https://github.com/apache/incubator-superset/pull/3759) Add dummy file to fix symlink (#3759) (@mistercrunch)
|
||||
- [#3751](https://github.com/apache/incubator-superset/pull/3751) fix https://github.com/apache/incubator-superset/pull/3726 (#3751) (@graceguo-supercat)
|
||||
- [#3750](https://github.com/apache/incubator-superset/pull/3750) Consolidate all translation config (#3750) (@alanmcruickshank)
|
||||
- [#3726](https://github.com/apache/incubator-superset/pull/3726) Bumping react-select to rc10 (#3726) (@mistercrunch)
|
||||
- [#3741](https://github.com/apache/incubator-superset/pull/3741) Fix has_table method (#3741) (@mxmzdlv)
|
||||
- [#3736](https://github.com/apache/incubator-superset/pull/3736) Escape columns names for time grains - postgres (#3736) (@Ryanthegiantlion)
|
||||
- [#3739](https://github.com/apache/incubator-superset/pull/3739) Fix 3657 (#3739) (@baldoalessandro)
|
||||
- [#3733](https://github.com/apache/incubator-superset/pull/3733) Using indexOf instead of includes for isXAxisString (#3733) (@michellethomas)
|
||||
- [#3723](https://github.com/apache/incubator-superset/pull/3723) bump react-bootstrap version (#3723) (@graceguo-supercat)
|
||||
- [#3721](https://github.com/apache/incubator-superset/pull/3721) Add CRUD action to refresh table metadata (#3721) (@mistercrunch)
|
||||
- [#3720](https://github.com/apache/incubator-superset/pull/3720) Validate JSON in slice's params on save (#3720) (@mistercrunch)
|
||||
- [#3722](https://github.com/apache/incubator-superset/pull/3722) Fix box_plot NaN issue (#3722) (@mistercrunch)
|
||||
- [#3715](https://github.com/apache/incubator-superset/pull/3715) Update messages.po (#3715) (@magicansk)
|
||||
- [#3686](https://github.com/apache/incubator-superset/pull/3686) Missing the data of one province and two regions of China (#3686) (@roganw)
|
||||
- [#3685](https://github.com/apache/incubator-superset/pull/3685) Fix the ISO code description of region/province/department (#3685) (@roganw)
|
||||
- [#3662](https://github.com/apache/incubator-superset/pull/3662) Set logging level to debug for DummyStatsLogger (#3662) (@mistercrunch)
|
||||
- [#3692](https://github.com/apache/incubator-superset/pull/3692) fixes for bugs in #3689 (#3692) (@Mogball)
|
||||
- [#3703](https://github.com/apache/incubator-superset/pull/3703) add VIPKID to the orgs. (#3703) (@killpanda)
|
||||
- [#3696](https://github.com/apache/incubator-superset/pull/3696) changed metric heading from h1 to h3 (#3696) (@Mogball)
|
||||
- [#3713](https://github.com/apache/incubator-superset/pull/3713) [translation] added japanese support (#3713) (@xiaoyugit)
|
||||
- [#3663](https://github.com/apache/incubator-superset/pull/3663) [minor] fix label showing description in time_table's URL (#3663) (@mistercrunch)
|
||||
- [#3711](https://github.com/apache/incubator-superset/pull/3711) fix the slice permission issue after user click-edit new slice title (#3711) (@graceguo-supercat)
|
||||
- [#3701](https://github.com/apache/incubator-superset/pull/3701) [form-data] Quoting form data (#3701) (@john-bodley)
|
||||
- [#3698](https://github.com/apache/incubator-superset/pull/3698) fixing the datasource inconsistence but in visualize flow (#3698) (@graceguo-supercat)
|
||||
- [#3683](https://github.com/apache/incubator-superset/pull/3683) [cleanup] removing print() artefacts (#3683) (@mistercrunch)
|
||||
- [#3702](https://github.com/apache/incubator-superset/pull/3702) Add support for IE 11 for markup slices (#3702) (@jaylindquist)
|
||||
- [#3693](https://github.com/apache/incubator-superset/pull/3693) defaultSort should be false when no sort is necessary (#3693) (@michellethomas)
|
||||
- [#3586](https://github.com/apache/incubator-superset/pull/3586) [Feature] Percentage columns in Table Viz (#3586) (@Mogball)
|
||||
- [#3652](https://github.com/apache/incubator-superset/pull/3652) DI-1113. Authentication: Enable user impersonation for Superset to HiveServer2 using hive.server2.proxy.user (a.fernandez) (#3652) (@afernandez)
|
||||
- [#3664](https://github.com/apache/incubator-superset/pull/3664) [minor] fix padding in Time Table (#3664) (@mistercrunch)
|
||||
- [#3678](https://github.com/apache/incubator-superset/pull/3678) unit tests for OptionDescription component (#3678) (@Mogball)
|
||||
- [#3679](https://github.com/apache/incubator-superset/pull/3679) Avoid dividing by zero for sparkline in time table viz (#3679) (@michellethomas)
|
||||
- [#3680](https://github.com/apache/incubator-superset/pull/3680) Sqllab error troubleshooting (#3680) (@timifasubaa)
|
||||
- [#3653](https://github.com/apache/incubator-superset/pull/3653) Add a ColorPickerControl (#3653) (@mistercrunch)
|
||||
- [#3642](https://github.com/apache/incubator-superset/pull/3642) [New Viz] Partition Diagram (#3642) (@Mogball)
|
||||
- [#3665](https://github.com/apache/incubator-superset/pull/3665) Add description for running specific test (#3665) (@timifasubaa)
|
||||
- [#3661](https://github.com/apache/incubator-superset/pull/3661) Making the sort order for metrics pull from fd for time table viz (#3661) (@michellethomas)
|
||||
- [#3417](https://github.com/apache/incubator-superset/pull/3417) Make columns that return an exception on click unsortable. (#3417) (@aliavni)
|
||||
- [#3651](https://github.com/apache/incubator-superset/pull/3651) Adding sort time table (#3651) (@michellethomas)
|
||||
- [#3647](https://github.com/apache/incubator-superset/pull/3647) added aihello as superset user. (#3647) (@ganeshkrishnan1)
|
||||
- [#3646](https://github.com/apache/incubator-superset/pull/3646) Fix #3612 - reverse sign in difference calculation (#3646) (@mistercrunch)
|
||||
- [#3648](https://github.com/apache/incubator-superset/pull/3648) Fixing some warnings during tests (#3648) (@dennybiasiolli)
|
||||
|
||||
### 0.20.4 (2017/10/12 04:04 +00:00)
|
||||
- [#3645](https://github.com/apache/incubator-superset/pull/3645) [Translations] Restored lost French translations (#3645) (@Mogball)
|
||||
- [#3644](https://github.com/apache/incubator-superset/pull/3644) [sql lab] fix impersonation + template issue (#3644) (@mistercrunch)
|
||||
- [#3641](https://github.com/apache/incubator-superset/pull/3641) Pin moment.js library since 2.19.0 creates problem (#3641) (@mistercrunch)
|
||||
- [#3600](https://github.com/apache/incubator-superset/pull/3600) [time_table] adding support for URLs / links (#3600) (@mistercrunch)
|
||||
- [#3626](https://github.com/apache/incubator-superset/pull/3626) Set tooltip to show extent of sparkData (#3626) (@michellethomas)
|
||||
- [#3631](https://github.com/apache/incubator-superset/pull/3631) add explicit message display for 'Fetching Annotation Layer' error (#3631) (@graceguo-supercat)
|
||||
- [#3637](https://github.com/apache/incubator-superset/pull/3637) [bugfix] Template rendering failed: '_AppCtxGlobals' object has no attribute 'user' (#3637) (@mistercrunch)
|
||||
- [#3638](https://github.com/apache/incubator-superset/pull/3638) fix long title text wrapping in editable-title component (#3638) (@graceguo-supercat)
|
||||
- [#3625](https://github.com/apache/incubator-superset/pull/3625) [minor] proper tooltip on ControlHeader's instant re-render trigger (#3625) (@mistercrunch)
|
||||
- [#3634](https://github.com/apache/incubator-superset/pull/3634) add annotation option and a linear color map for heatmap viz. (#3634) (@xiaoyugit)
|
||||
- [#3633](https://github.com/apache/incubator-superset/pull/3633) [bugfix] empty From date filter NoneType error (#3633) (@mistercrunch)
|
||||
- [#3621](https://github.com/apache/incubator-superset/pull/3621) remove unused imports (#3621) (@xrmx)
|
||||
- [#3611](https://github.com/apache/incubator-superset/pull/3611) fixing date/time filter keys (#3611) (@Mogball)
|
||||
|
||||
### 0.20.2 (2017/10/06 07:46 +00:00)
|
||||
- [#3606](https://github.com/apache/incubator-superset/pull/3606) [bugfix] #3593 'Chart Options' panel is missing (#3606) (@mistercrunch)
|
||||
- [#3601](https://github.com/apache/incubator-superset/pull/3601) Removing git artifact (#3601) (@mistercrunch)
|
||||
- [#3599](https://github.com/apache/incubator-superset/pull/3599) [hotfix] fixing issues around new time_table viz (#3599) (@mistercrunch)
|
||||
- [#3598](https://github.com/apache/incubator-superset/pull/3598) [hofix] work around circular deps (#3598) (@mistercrunch)
|
||||
- [#3597](https://github.com/apache/incubator-superset/pull/3597) [time table] fix reversed ratio (#3597) (@mistercrunch)
|
||||
- [#3508](https://github.com/apache/incubator-superset/pull/3508) [Feature/Bugfix] Datepicker and time granularity options to dashboard filters (#3508) (@Mogball)
|
||||
- [#3596](https://github.com/apache/incubator-superset/pull/3596) updating react-alert dependency to v2.3.0 (#3596) (@dennybiasiolli)
|
||||
- [#3577](https://github.com/apache/incubator-superset/pull/3577) [translations] generating missing strings (#3577) (@mistercrunch)
|
||||
- [#3478](https://github.com/apache/incubator-superset/pull/3478) [Bugfix/Feature] Fixed slice render staggering on dashboard first load (#3478) (@Mogball)
|
||||
- [#3543](https://github.com/apache/incubator-superset/pull/3543) New "Time Series - Table" visualization (#3543) (@mistercrunch)
|
||||
- [#3587](https://github.com/apache/incubator-superset/pull/3587) [sql lab] fix numeric sort in data table (#3587) (@mistercrunch)
|
||||
- [#3594](https://github.com/apache/incubator-superset/pull/3594) Fxing bug in label generation for multiple groupbys (#3594) (@fabianmenges)
|
||||
- [#3591](https://github.com/apache/incubator-superset/pull/3591) update immutable.js to v3.8.2 (MIT license) (#3591) (@naoyak)
|
||||
- [#3571](https://github.com/apache/incubator-superset/pull/3571) [Feature] Copy-to-clipboard button in View Query (#3571) (@Mogball)
|
||||
- [#3585](https://github.com/apache/incubator-superset/pull/3585) Allow users to see query string when query returns no data (#3585) (@Mogball)
|
||||
- [#3582](https://github.com/apache/incubator-superset/pull/3582) [Bugfix]: Explore view does not respect custom timeout. (#3582) (@fabianmenges)
|
||||
- [#3584](https://github.com/apache/incubator-superset/pull/3584) Fixed creating new filter options in FilterBox (#3584) (@Mogball)
|
||||
- [#3562](https://github.com/apache/incubator-superset/pull/3562) Added custom pasteSelect to handle paste events (#3562) (@Mogball)
|
||||
- [#3569](https://github.com/apache/incubator-superset/pull/3569) Bumping React to 15.6.2 (MIT license) (#3569) (@mistercrunch)
|
||||
|
||||
### 0.20.1 (2017/10/03 07:04 +00:00)
|
||||
- [#3576](https://github.com/apache/incubator-superset/pull/3576) v0.20.1 (#3576) (@mistercrunch)
|
||||
- [#3572](https://github.com/apache/incubator-superset/pull/3572) After saving slice fixing redirect (#3572) (@michellethomas)
|
||||
- [#3565](https://github.com/apache/incubator-superset/pull/3565) Added label+percent and label+value display options to pie chart (#3565) (@Mogball)
|
||||
- [#3567](https://github.com/apache/incubator-superset/pull/3567) Removing yarn warnings during install (#3567) (@dennybiasiolli)
|
||||
- [#3563](https://github.com/apache/incubator-superset/pull/3563) [nvd3] fix single metric showing up in legend (#3563) (@mistercrunch)
|
||||
- [#3558](https://github.com/apache/incubator-superset/pull/3558) Add Pronto Tools to user list (#3558) (@zkan)
|
||||
- [#3553](https://github.com/apache/incubator-superset/pull/3553) Minor documentation fix (#3553) (@gaborhermann)
|
||||
- [#3545](https://github.com/apache/incubator-superset/pull/3545) CHANGELOG for 0.20.0 (#3545) (@mistercrunch)
|
||||
- [#3534](https://github.com/apache/incubator-superset/pull/3534) Explore update button labels (#3534) (@timifasubaa)
|
||||
- [#3547](https://github.com/apache/incubator-superset/pull/3547) Fixing missing messages.json file (#3547) (@mistercrunch)
|
||||
|
||||
### 0.20.0 (2017/09/28 04:26 +00:00)
|
||||
- [#3528](https://github.com/apache/incubator-superset/pull/3528) try to fix problem that chrome window not opening after ajax requrest (#3528) (@graceguo-supercat)
|
||||
- [#3521](https://github.com/apache/incubator-superset/pull/3521) Time Series Annotation Layers (#3521) (@graceguo-supercat)
|
||||
- [#3526](https://github.com/apache/incubator-superset/pull/3526) [explore] fix cached tooltip (#3526) (@mistercrunch)
|
||||
- [#3544](https://github.com/apache/incubator-superset/pull/3544) v0.20.0 (#3544) (@mistercrunch)
|
||||
- [#3506](https://github.com/apache/incubator-superset/pull/3506) setup: bump pandas to 0.20.3 (#3506) (@xrmx)
|
||||
- [#3066](https://github.com/apache/incubator-superset/pull/3066) Add support for column specific fillna to viz (#3066) (@xrmx)
|
||||
- [#3537](https://github.com/apache/incubator-superset/pull/3537) docs: QUERY_TIMEOUT_THRESHOLD is gone (#3537) (@xrmx)
|
||||
- [#3531](https://github.com/apache/incubator-superset/pull/3531) [style] no bold on dashboard widget headers (#3531) (@mistercrunch)
|
||||
- [#3532](https://github.com/apache/incubator-superset/pull/3532) Break word on InfoTooltip (#3532) (@michellethomas)
|
||||
- [#3473](https://github.com/apache/incubator-superset/pull/3473) Feature: Paired t-test table visualization (#3473) (@Mogball)
|
||||
- [#3513](https://github.com/apache/incubator-superset/pull/3513) Feature: query string API endpoint (#3513) (@Mogball)
|
||||
- [#3504](https://github.com/apache/incubator-superset/pull/3504) Feature: Display the verbose name for metrics within Charts and legend. (#3504) (@fabianmenges)
|
||||
- [#3527](https://github.com/apache/incubator-superset/pull/3527) Druid refresh metadata performance improvements (#3527) (@Mogball)
|
||||
- [#3466](https://github.com/apache/incubator-superset/pull/3466) Allow user update slice title in visualize flow (#3466) (@graceguo-supercat)
|
||||
- [#3467](https://github.com/apache/incubator-superset/pull/3467) allow user update slice name in dashboard view (#3467) (@graceguo-supercat)
|
||||
- [#3509](https://github.com/apache/incubator-superset/pull/3509) Add Table performance improvements (#3509) (@Mogball)
|
||||
- [#3499](https://github.com/apache/incubator-superset/pull/3499) Add metric warning (#3499) (@michellethomas)
|
||||
- [#3390](https://github.com/apache/incubator-superset/pull/3390) js translation -- performance improvment (#3390) (@graceguo-supercat)
|
||||
- [#3491](https://github.com/apache/incubator-superset/pull/3491) Remove repeated line (#3491) (@timifasubaa)
|
||||
- [#3497](https://github.com/apache/incubator-superset/pull/3497) Fix idna requirement (#3497) (@timifasubaa)
|
||||
- [#3495](https://github.com/apache/incubator-superset/pull/3495) update contributing.md (#3495) (@timifasubaa)
|
||||
- [#3500](https://github.com/apache/incubator-superset/pull/3500) Removing super() call from refactor (#3500) (@mistercrunch)
|
||||
- [#3493](https://github.com/apache/incubator-superset/pull/3493) Adding missing future imports (#3493) (@mistercrunch)
|
||||
- [#3494](https://github.com/apache/incubator-superset/pull/3494) Removing dependency on pythrifthiveapi (#3494) (@mistercrunch)
|
||||
- [#3474](https://github.com/apache/incubator-superset/pull/3474) [heatmap] account for bounds = 0 (#3474) (@mistercrunch)
|
||||
- [#3480](https://github.com/apache/incubator-superset/pull/3480) Improve code quality (#3480) (@timifasubaa)
|
||||
- [#3434](https://github.com/apache/incubator-superset/pull/3434) Feature/Fix: Get a full times_series for your filter instead of Topn for each point in time (#3434) (@fabianmenges)
|
||||
- [#3486](https://github.com/apache/incubator-superset/pull/3486) Getting datatype with its dialect (#3486) (@datinho)
|
||||
- [#3404](https://github.com/apache/incubator-superset/pull/3404) Feature: "Impersonate user" setting on Datasource (#3404) (@dmigo)
|
||||
- [#3484](https://github.com/apache/incubator-superset/pull/3484) Create CsvResponse to manage csv exports encoding (#3484) (@JulieRossi)
|
||||
- [#3469](https://github.com/apache/incubator-superset/pull/3469) Better installation docs (#3469) (@mistercrunch)
|
||||
- [#3475](https://github.com/apache/incubator-superset/pull/3475) viz: fix reversed stats_logger label (#3475) (@xrmx)
|
||||
- [#3477](https://github.com/apache/incubator-superset/pull/3477) docs: athena can be installed from pypi (#3477) (@xrmx)
|
||||
- [#3476](https://github.com/apache/incubator-superset/pull/3476) Miscvizcleanups (#3476) (@xrmx)
|
||||
- [#3435](https://github.com/apache/incubator-superset/pull/3435) Adding hook for CSRF exempting flask views. (#3435) (@fabianmenges)
|
||||
- [#3409](https://github.com/apache/incubator-superset/pull/3409) bugfix/3321 Ensure text appears on buttons inside tables (#3409) (@jeffcarey)
|
||||
- [#3415](https://github.com/apache/incubator-superset/pull/3415) Simple grammar and update to link (#3415) (@SpyderRivera)
|
||||
- [#3441](https://github.com/apache/incubator-superset/pull/3441) config: allow changing default options for writting csv (#3441) (@JulieRossi)
|
||||
- [#3425](https://github.com/apache/incubator-superset/pull/3425) Add shopee to user list. (#3425) (@xiaohanyu)
|
||||
- [#3458](https://github.com/apache/incubator-superset/pull/3458) Fixed filter removal bug (#3458) (@Mogball)
|
||||
- [#3424](https://github.com/apache/incubator-superset/pull/3424) fix encoding error in sql lab logging (#3424) (@graceguo-supercat)
|
||||
- [#3459](https://github.com/apache/incubator-superset/pull/3459) Sqllab dont send empty queries to db (#3459) (@timifasubaa)
|
||||
- [#3461](https://github.com/apache/incubator-superset/pull/3461) Fixed dashboard filters carrying over to explore slice (#3461) (@Mogball)
|
||||
- [#3436](https://github.com/apache/incubator-superset/pull/3436) Adding hook for external password store for databases (#3436) (@fabianmenges)
|
||||
- [#3460](https://github.com/apache/incubator-superset/pull/3460) Allow specifying sort criteria on Table viz (#3460) (@mistercrunch)
|
||||
- [#3456](https://github.com/apache/incubator-superset/pull/3456) [heatmap] numerous improvements (#3456) (@mistercrunch)
|
||||
- [#3431](https://github.com/apache/incubator-superset/pull/3431) fix https://github.com/apache/incubator-superset/issues/3430 (#3431) (@graceguo-supercat)
|
||||
- [#3440](https://github.com/apache/incubator-superset/pull/3440) fix https://github.com/apache/incubator-superset/issues/3422 (#3440) (@graceguo-supercat)
|
||||
- [#3439](https://github.com/apache/incubator-superset/pull/3439) Adding order_desc flag to explore endpoint (#3439) (@fabianmenges)
|
||||
- [#2937](https://github.com/apache/incubator-superset/pull/2937) Handling pandas ExtensionDtypes (#2937) (@fabianmenges)
|
||||
- [#3444](https://github.com/apache/incubator-superset/pull/3444) [postgres] adding support to serialized timedelta (#3444) (@mistercrunch)
|
||||
- [#3453](https://github.com/apache/incubator-superset/pull/3453) [explore] show validation error on control panel header (#3453) (@mistercrunch)
|
||||
- [#3450](https://github.com/apache/incubator-superset/pull/3450) [heatmap] fix default sorting (#3450) (@mistercrunch)
|
||||
- [#3452](https://github.com/apache/incubator-superset/pull/3452) Fix off-by-one error with linear color scales (#3452) (@mistercrunch)
|
||||
- [#3454](https://github.com/apache/incubator-superset/pull/3454) [explore] checkbox control won't uncheck (#3454) (@mistercrunch)
|
||||
- [#3446](https://github.com/apache/incubator-superset/pull/3446) Ignore intellij files (#3446) (@fabianmenges)
|
||||
- [#3445](https://github.com/apache/incubator-superset/pull/3445) Fixing the build (#3445) (@mistercrunch)
|
||||
- [#3405](https://github.com/apache/incubator-superset/pull/3405) setup: Bump sqlalchemy-utils to 0.32.16 (#3405) (@xrmx)
|
||||
- [#3403](https://github.com/apache/incubator-superset/pull/3403) [hotfix] user dashboard says '150 weeks' (#3403) (@mistercrunch)
|
||||
- [#3401](https://github.com/apache/incubator-superset/pull/3401) [hotfix] fix slices where since/until = None (#3401) (@mistercrunch)
|
||||
- [#3391](https://github.com/apache/incubator-superset/pull/3391) [dashboard] adding an option to duplicate slices when "Saving AS" (#3391) (@mistercrunch)
|
||||
- [#3399](https://github.com/apache/incubator-superset/pull/3399) Fix copypasta control label error 'Until' -> 'Since' (#3399) (@mistercrunch)
|
||||
- [#3397](https://github.com/apache/incubator-superset/pull/3397) [line chart] add 'min_periods' control related to rolling windows (#3397) (@mistercrunch)
|
||||
- [#3394](https://github.com/apache/incubator-superset/pull/3394) [hive] fix date casting in explore view (#3394) (@mistercrunch)
|
||||
- [#3396](https://github.com/apache/incubator-superset/pull/3396) [hotfix] backward compatibility on date expressions (#3396) (@mistercrunch)
|
||||
- [#3395](https://github.com/apache/incubator-superset/pull/3395) Add Capital Service to organizations list (#3395) (@pkonarzewski)
|
||||
- [#3377](https://github.com/apache/incubator-superset/pull/3377) Fix datatable scroll height when using filter or pagination (#3377) (@mxmzdlv)
|
||||
- [#3392](https://github.com/apache/incubator-superset/pull/3392) fix date picker Select alignment (#3392) (@graceguo-supercat)
|
||||
- [#3378](https://github.com/apache/incubator-superset/pull/3378) Build optimizations (#3378) (@mistercrunch)
|
||||
- [#3379](https://github.com/apache/incubator-superset/pull/3379) [dashboard] load list of slices at modal enter time (#3379) (@mistercrunch)
|
||||
- [#3371](https://github.com/apache/incubator-superset/pull/3371) [explore] Improved time filters controls (#3371) (@mistercrunch)
|
||||
- [#3363](https://github.com/apache/incubator-superset/pull/3363) [sql lab] using react-split-pane (#3363) (@mistercrunch)
|
||||
|
||||
### 0.19.1 (2017/08/26 22:07 +00:00)
|
||||
- [#3376](https://github.com/apache/incubator-superset/pull/3376) v1.9.1 (#3376) (@mistercrunch)
|
||||
- [#3373](https://github.com/apache/incubator-superset/pull/3373) Apply advanced analytics processing to comparison time series (#3373) (@mxmzdlv)
|
||||
- [#3362](https://github.com/apache/incubator-superset/pull/3362) [webpack] add a 'npm run dev-fast' command that is much faster (#3362) (@mistercrunch)
|
||||
- [#3366](https://github.com/apache/incubator-superset/pull/3366) bugfix for addTotalValues with negative values (#3366) (@hajdbo)
|
||||
- [#3339](https://github.com/apache/incubator-superset/pull/3339) [explore] Fix and test slice id logging issue (#3339) (@timifasubaa)
|
||||
- [#3364](https://github.com/apache/incubator-superset/pull/3364) Bump fab to 1.9.4 (#3364) (@mistercrunch)
|
||||
- [#3242](https://github.com/apache/incubator-superset/pull/3242) Revert "[sql lab] Make sql editor resizable (#3242)" (#3360) (@mistercrunch)
|
||||
- [#3357](https://github.com/apache/incubator-superset/pull/3357) [dist_bar] break down control groups (#3357) (@mistercrunch)
|
||||
- [#3356](https://github.com/apache/incubator-superset/pull/3356) delete unused csv file (#3356) (@timifasubaa)
|
||||
- [#3358](https://github.com/apache/incubator-superset/pull/3358) [hotfix] react-select dropdown autocomplete are invisible (#3358) (@mistercrunch)
|
||||
- [#3354](https://github.com/apache/incubator-superset/pull/3354) Collapsible Control sections (#3354) (@mistercrunch)
|
||||
- [#3353](https://github.com/apache/incubator-superset/pull/3353) [bugfix] `Y bounds` in line chart (#3353) (@mistercrunch)
|
||||
- [#3351](https://github.com/apache/incubator-superset/pull/3351) [css] react-select only in theme (#3351) (@mistercrunch)
|
||||
- [#3352](https://github.com/apache/incubator-superset/pull/3352) fix multi-value react select style (#3352) (@graceguo-supercat)
|
||||
- [#3345](https://github.com/apache/incubator-superset/pull/3345) Better looking checkboxes (#3345) (@mistercrunch)
|
||||
- [#3338](https://github.com/apache/incubator-superset/pull/3338) [hotfix] self-immune filter_box fix (#3338) (@mistercrunch)
|
||||
- [#3242](https://github.com/apache/incubator-superset/pull/3242) [sql lab] Make sql editor resizable (#3242) (@dmigo)
|
||||
- [#3308](https://github.com/apache/incubator-superset/pull/3308) [sql lab] improve error messages (#3308) (@mistercrunch)
|
||||
- [#3329](https://github.com/apache/incubator-superset/pull/3329) Syncing the timeout param from backend (#3329) (@mistercrunch)
|
||||
- [#3335](https://github.com/apache/incubator-superset/pull/3335) [dashboard] re-enabling cascading filters (#3335) (@mistercrunch)
|
||||
- [#3332](https://github.com/apache/incubator-superset/pull/3332) [nvd3] fix bubble axis (#3332) (@mistercrunch)
|
||||
- [#3333](https://github.com/apache/incubator-superset/pull/3333) [hotfix] hotfixing the hotfix (#3333) (@mistercrunch)
|
||||
- [#3331](https://github.com/apache/incubator-superset/pull/3331) Unnecessary to specify order_columns for DatasourceModelView (#3331) (@RoganW)
|
||||
- [#3328](https://github.com/apache/incubator-superset/pull/3328) disable immediately re-render for color scheme change (#3328) (@graceguo-supercat)
|
||||
- [#3330](https://github.com/apache/incubator-superset/pull/3330) [hotfix] dashboard widget resize is broken (#3330) (@mistercrunch)
|
||||
- [#3322](https://github.com/apache/incubator-superset/pull/3322) docs: add references to Flask-Appbuilder Security documentation (#3322) (@xrmx)
|
||||
- [#3315](https://github.com/apache/incubator-superset/pull/3315) Use react-alert for backend message flashing (#3315) (@mistercrunch)
|
||||
- [#3295](https://github.com/apache/incubator-superset/pull/3295) Allow for multiple color schemes (#3295) (@graceguo-supercat)
|
||||
- [#3313](https://github.com/apache/incubator-superset/pull/3313) French translation (#3313) (@invenis-paris)
|
||||
- [#3305](https://github.com/apache/incubator-superset/pull/3305) [hive] improve error messages (#3305) (@mistercrunch)
|
||||
- [#3309](https://github.com/apache/incubator-superset/pull/3309) Fix styles in Separator widget (#3309) (@mistercrunch)
|
||||
- [#3310](https://github.com/apache/incubator-superset/pull/3310) [sql lab] run button shortcut tooltip (#3310) (@mistercrunch)
|
||||
- [#3291](https://github.com/apache/incubator-superset/pull/3291) [bugfix] Presto KeyError 'errorLocation' (#3291) (@mistercrunch)
|
||||
- [#3292](https://github.com/apache/incubator-superset/pull/3292) [sql lab] add pending to the list of searchable statuses (#3292) (@mistercrunch)
|
||||
- [#3293](https://github.com/apache/incubator-superset/pull/3293) [mapbox] fix viewport alterations (#3293) (@mistercrunch)
|
||||
- [#3298](https://github.com/apache/incubator-superset/pull/3298) Fix raise error when query datasource (#3298) (@RoganW)
|
||||
- [#3296](https://github.com/apache/incubator-superset/pull/3296) [docs] document how to compile/publish docs (#3296) (@mistercrunch)
|
||||
- [#3280](https://github.com/apache/incubator-superset/pull/3280) [dashboard] add link to export CSV from dashboard (#3280) (@mistercrunch)
|
||||
- [#3282](https://github.com/apache/incubator-superset/pull/3282) FAQ entry for backend support (#3282) (@mistercrunch)
|
||||
- [#3286](https://github.com/apache/incubator-superset/pull/3286) [sql lab] fix sluggish backspace in editor (#3286) (@mistercrunch)
|
||||
- [#3287](https://github.com/apache/incubator-superset/pull/3287) Fix Chart Error Message Display (#3287) (@graceguo-supercat)
|
||||
- [#3284](https://github.com/apache/incubator-superset/pull/3284) [dashboard] fix standalone mode that hides the navbar (#3284) (@mistercrunch)
|
||||
- [#3031](https://github.com/apache/incubator-superset/pull/3031) Improve superset list view content layout (#3031) (@graceguo-supercat)
|
||||
- [#3281](https://github.com/apache/incubator-superset/pull/3281) [markup] fix CSS, remove scrollbar (#3281) (@mistercrunch)
|
||||
- [#2033](https://github.com/apache/incubator-superset/pull/2033) Fix returned time parse_human_datetime (#2033) (@0x0ece)
|
||||
- [#3032](https://github.com/apache/incubator-superset/pull/3032) Add translatable columns in label_columns of the view (#3032) (@RoganW)
|
||||
- [#3211](https://github.com/apache/incubator-superset/pull/3211) [security] prevent XSS markup viz (#3211) (@mistercrunch)
|
||||
- [#3034](https://github.com/apache/incubator-superset/pull/3034) add `_()` to Exception messages (#3034) (@RoganW)
|
||||
- [#3275](https://github.com/apache/incubator-superset/pull/3275) display the verbose_name of columns in list view, just like in the metrics list (#3275) (@RoganW)
|
||||
- [#3274](https://github.com/apache/incubator-superset/pull/3274) add placeholder to Select components (#3274) (@RoganW)
|
||||
- [#3277](https://github.com/apache/incubator-superset/pull/3277) Added Konfio to 'Who uses Superset' list. (#3277) (@luis-rodriguez)
|
||||
- [#3278](https://github.com/apache/incubator-superset/pull/3278) Fix celery worker (#3278) (@saguziel)
|
||||
- [#3183](https://github.com/apache/incubator-superset/pull/3183) [add] Save filters to dashboard (#3183) (@RoganW)
|
||||
- [#3110](https://github.com/apache/incubator-superset/pull/3110) Explore view save modal spec (#3110) (@graceguo-supercat)
|
||||
- [#3279](https://github.com/apache/incubator-superset/pull/3279) [explore] fixed padding bug on filter section (#3279) (@timifasubaa)
|
||||
- [#3088](https://github.com/apache/incubator-superset/pull/3088) [explore] Split large reducer logic in ExploreViewContainer (#3088) (@graceguo-supercat)
|
||||
- [#3267](https://github.com/apache/incubator-superset/pull/3267) Use sane Celery defaults to prevent tasks from being delayed (#3267) (@saguziel)
|
||||
- [#3268](https://github.com/apache/incubator-superset/pull/3268) [bugfix] preserve order in groupby (#3268) (@mistercrunch)
|
||||
- [#3266](https://github.com/apache/incubator-superset/pull/3266) Set default ports Druid (#3266) (@Fokko)
|
||||
- [#3262](https://github.com/apache/incubator-superset/pull/3262) [webpack] break CSS and JS files while webpackin' (#3262) (@mistercrunch)
|
||||
- [#3241](https://github.com/apache/incubator-superset/pull/3241) Improve the chart type of Visualize in sqllab (#3241) (@eeve)
|
||||
- [#3256](https://github.com/apache/incubator-superset/pull/3256) Modernize SQLA pessimistic handling (#3256) (@mistercrunch)
|
||||
- [#3252](https://github.com/apache/incubator-superset/pull/3252) Explicitly add Flask as dependancy (#3252) (@Fokko)
|
||||
- [#3261](https://github.com/apache/incubator-superset/pull/3261) Relying on FAB for font-awesome.min.css (#3261) (@mistercrunch)
|
||||
- [#3264](https://github.com/apache/incubator-superset/pull/3264) import logging (#3264) (@cclauss)
|
||||
- [#3244](https://github.com/apache/incubator-superset/pull/3244) [explore] make edit datasource a basic link (#3244) (@mistercrunch)
|
||||
- [#3254](https://github.com/apache/incubator-superset/pull/3254) [bugfix] wrong 'Cant have overlap between Series and Breakdowns' (#3254) (@mistercrunch)
|
||||
- [#3249](https://github.com/apache/incubator-superset/pull/3249) Fix Yahoo's website link (#3249) (@pedro-valentim)
|
||||
- [#3246](https://github.com/apache/incubator-superset/pull/3246) Fix typo (#3246) (@zeeshanu)
|
||||
- [#3235](https://github.com/apache/incubator-superset/pull/3235) docs: use yarn in making your own build (#3235) (@xrmx)
|
||||
- [#3067](https://github.com/apache/incubator-superset/pull/3067) explore: redraw chart on width change too (#3067) (@xrmx)
|
||||
- [#3225](https://github.com/apache/incubator-superset/pull/3225) Add basic Impala engine spec (#3225) (@mistercrunch)
|
||||
- [#3237](https://github.com/apache/incubator-superset/pull/3237) Treemap vis verbose metric name (#3237) (@RichRadics)
|
||||
- [#3240](https://github.com/apache/incubator-superset/pull/3240) [bug fix] Fix to #3137 and #3239 (#3240) (@FrederichCheng)
|
||||
- [#3238](https://github.com/apache/incubator-superset/pull/3238) SUPERSET_HOME enviroment variable (#3238) (@RichRadics)
|
||||
- [#3236](https://github.com/apache/incubator-superset/pull/3236) Handle Time at query_obj generation time (#3236) (@mistercrunch)
|
||||
- [#3230](https://github.com/apache/incubator-superset/pull/3230) [pivot] add support for in Pivot on Druid (#3230) (@mistercrunch)
|
||||
- [#3229](https://github.com/apache/incubator-superset/pull/3229) Allowing to integrate time as a groupby value (#3229) (@mistercrunch)
|
||||
- [#3227](https://github.com/apache/incubator-superset/pull/3227) 0.19.0 (#3227) (@mistercrunch)
|
||||
- [#2974](https://github.com/apache/incubator-superset/pull/2974) Allow 'refresh_immune_slices' (#2974) (@RichRadics)
|
||||
- [#3111](https://github.com/apache/incubator-superset/pull/3111) sql_lab: re-raise exception in get_sql_results (#3111) (@xrmx)
|
||||
|
||||
### 0.19.0 (2017/08/02 05:16 +00:00)
|
||||
- [#3210](https://github.com/apache/incubator-superset/pull/3210) [explore] DatasourceControl to pick datasource in modal (#3210) (@mistercrunch)
|
||||
- [#3214](https://github.com/apache/incubator-superset/pull/3214) [sqllab] fix UI shows 'The query returned no results' momentarily (#3214) (@mistercrunch)
|
||||
- [#3197](https://github.com/apache/incubator-superset/pull/3197) [explore] nvd3 sort values in rich tooltip (#3197) (@mistercrunch)
|
||||
- [#3222](https://github.com/apache/incubator-superset/pull/3222) [sqllab/cosmetics] add margin-top for labels in query history (#3222) (@mistercrunch)
|
||||
- [#3212](https://github.com/apache/incubator-superset/pull/3212) [docs] update url in CONTRIBUTING.md (#3212) (@diggzhang)
|
||||
- [#3213](https://github.com/apache/incubator-superset/pull/3213) [bugfix] capture Hive job_id pre-url transformation (#3213) (@mistercrunch)
|
||||
- [#3205](https://github.com/apache/incubator-superset/pull/3205) fix issue 3204 (#3205) (@diggzhang)
|
||||
- [#3203](https://github.com/apache/incubator-superset/pull/3203) Speed up JS build time (#3203) (@mistercrunch)
|
||||
- [#2929](https://github.com/apache/incubator-superset/pull/2929) Autofocus search input in VizTypeControl modal onEnter (#2929) (@pariser)
|
||||
- [#3086](https://github.com/apache/incubator-superset/pull/3086) add combine config for metrics in pivot table (#3086) (@RoganW)
|
||||
- [#3146](https://github.com/apache/incubator-superset/pull/3146) [druid] Allow custom druid postaggregators (#3146) (@brianwolfe)
|
||||
- [#3194](https://github.com/apache/incubator-superset/pull/3194) Adding 'apache' to docs (#3194) (@mistercrunch)
|
||||
- [#3196](https://github.com/apache/incubator-superset/pull/3196) [bugfix] fix merge conflict that broke Hive support (#3196) (@mistercrunch)
|
||||
- [#3193](https://github.com/apache/incubator-superset/pull/3193) Add BigQuery engine specifications (#3193) (@mistercrunch)
|
||||
- [#3187](https://github.com/apache/incubator-superset/pull/3187) [sqllab] improve Hive support (#3187) (@mistercrunch)
|
||||
- [#3186](https://github.com/apache/incubator-superset/pull/3186) Escaping the user's SQL in the explore view (#3186) (@mistercrunch)
|
||||
- [#3065](https://github.com/apache/incubator-superset/pull/3065) Bump cryptography to 1.9 (#3065) (@xrmx)
|
||||
- [#3174](https://github.com/apache/incubator-superset/pull/3174) Fix the segment interval for pulling metadata (#3174) (@Fokko)
|
||||
- [#3181](https://github.com/apache/incubator-superset/pull/3181) [bugfix] visualize flow error: 'Metric x is not valid' (#3181) (@mistercrunch)
|
||||
- [#3180](https://github.com/apache/incubator-superset/pull/3180) [bugfix] fix bar order (#3180) (@mistercrunch)
|
||||
- [#3169](https://github.com/apache/incubator-superset/pull/3169) docs: fixup installation examples code indentation (#3169) (@xrmx)
|
||||
- [#3171](https://github.com/apache/incubator-superset/pull/3171) add Zalando to the list of organizations (#3171) (@dmigo)
|
||||
- [#2968](https://github.com/apache/incubator-superset/pull/2968) fix hive.fetch_logs (#2968) (@timfeirg)
|
||||
- [#3036](https://github.com/apache/incubator-superset/pull/3036) [bugfix] numeric value for date fields in table viz (#3036) (@mistercrunch)
|
||||
- [#3101](https://github.com/apache/incubator-superset/pull/3101) Add 'show/hide totals' option to pivot table vis (#3101) (@RichRadics)
|
||||
- [#3045](https://github.com/apache/incubator-superset/pull/3045) add title description to model view (#3045) (@RoganW)
|
||||
- [#3035](https://github.com/apache/incubator-superset/pull/3035) Datasource cannot be empty (#3035) (@RoganW)
|
||||
- [#3105](https://github.com/apache/incubator-superset/pull/3105) [bugfix] only filterable columns should show up in FilterBox list (#3105) (@mistercrunch)
|
||||
- [#3179](https://github.com/apache/incubator-superset/pull/3179) Fixing the damn build (#3179) (@mistercrunch)
|
||||
- [#3102](https://github.com/apache/incubator-superset/pull/3102) Add event-flow visualization (#3102) (@williaster)
|
||||
- [#3163](https://github.com/apache/incubator-superset/pull/3163) Prevent people from deleting datasources that have associate slices (#3163) (@mistercrunch)
|
||||
- [#3164](https://github.com/apache/incubator-superset/pull/3164) More logging to csv endpoint (#3164) (@mistercrunch)
|
||||
- [#3159](https://github.com/apache/incubator-superset/pull/3159) [bugfix] SQLA instance has been deleted (#3159) (@mistercrunch)
|
||||
- [#3157](https://github.com/apache/incubator-superset/pull/3157) add douban to the orgs. (#3157) (@luchuan)
|
||||
- [#3150](https://github.com/apache/incubator-superset/pull/3150) [docs] use yarn in CONTRIBUTING.md (#3150) (@mistercrunch)
|
||||
- [#3155](https://github.com/apache/incubator-superset/pull/3155) [bugfix] fails on None view_menu (#3155) (@mistercrunch)
|
||||
- [#3112](https://github.com/apache/incubator-superset/pull/3112) allow user press Enter key to end editing title (#3112) (@graceguo-supercat)
|
||||
- [#3116](https://github.com/apache/incubator-superset/pull/3116) [minor] change tooltip on 'Edit slice properties' (#3116) (@mistercrunch)
|
||||
- [#3133](https://github.com/apache/incubator-superset/pull/3133) Prevent SQLA warning related to SQLALCHEMY_TRACK_MODIFICATION (#3133) (@mistercrunch)
|
||||
- [#3138](https://github.com/apache/incubator-superset/pull/3138) [#3137] Use state.datasource.type instead of state.datasource_type when rendering ControlPanelsContainer (#3138) (@FrederichCheng)
|
||||
- [#3119](https://github.com/apache/incubator-superset/pull/3119) [heatmap] basic non empty validation (#3119) (@mistercrunch)
|
||||
- [#3135](https://github.com/apache/incubator-superset/pull/3135) Fixes #3134 by correct response content-type of /testconn (#3135) (@shawnzhu)
|
||||
- [#3126](https://github.com/apache/incubator-superset/pull/3126) [Celery] fix the celery worker concurrency settings (#3126) (@dingguitao)
|
||||
- [#3118](https://github.com/apache/incubator-superset/pull/3118) [CLI] Improve the missing perm creation logic (#3118) (@mistercrunch)
|
||||
- [#3120](https://github.com/apache/incubator-superset/pull/3120) Using yarn instead of npm install (#3120) (@mistercrunch)
|
||||
- [#3044](https://github.com/apache/incubator-superset/pull/3044) clarify Superset different timeout config (#3044) (@graceguo-supercat)
|
||||
- [3d136aa](https://github.com/apache/incubator-superset/commit/3d136aa0a4d3c6ebb26821e1b308b6eff4c2fd8f) Update docs links on README (@mistercrunch)
|
||||
- [#3042](https://github.com/apache/incubator-superset/pull/3042) fix default checkbox alignment (#3042) (@graceguo-supercat)
|
||||
- [#3013](https://github.com/apache/incubator-superset/pull/3013) New chart type : Chord Diagrams (#3013) (@mistercrunch)
|
||||
- [#3041](https://github.com/apache/incubator-superset/pull/3041) [bugfix] issue creating separators & markup slices (#3041) (@mistercrunch)
|
||||
- [#3011](https://github.com/apache/incubator-superset/pull/3011) Bug fix: Datasource -> Slice relationship (#3011) (@fabianmenges)
|
||||
|
||||
### 0.18.5 (2017/06/22 22:46 +00:00)
|
||||
- [fdbb569](https://github.com/apache/incubator-superset/commit/fdbb569c3e2842fdfc80e0418f5817593e5c64fb) 0.18.5 (@mistercrunch)
|
||||
- [cc3e63f](https://github.com/apache/incubator-superset/commit/cc3e63f1de0a6e5c2fd68464297620ac878fe2a0) [docs] adding info on how to create new viz (@mistercrunch)
|
||||
- [#3022](https://github.com/apache/incubator-superset/pull/3022) add test coverage for sql lab components (#3022) (@graceguo-supercat)
|
||||
- [6eba6ca](https://github.com/apache/incubator-superset/commit/6eba6cac0b49a06172ba3dc817eb7aeef7cd310c) [hotfix] xAxis broken on time series viz (@mistercrunch)
|
||||
- [bd706eb](https://github.com/apache/incubator-superset/commit/bd706ebbd17e6d147962df5f20dabdf3af3a6730) Fixing image sizes for horizon and country_map (@mistercrunch)
|
||||
- [abbf138](https://github.com/apache/incubator-superset/commit/abbf138cfb6149277cbbfd1b38aa65a1e0170f3c) Bumping SQLLAB_ASYNC_TIME_LIMIT_SEC default config to 6 hours (@mistercrunch)
|
||||
- [#3021](https://github.com/apache/incubator-superset/pull/3021) CONTRIBUTING: add python unittes setup (#3021) (@graceguo-supercat)
|
||||
- [#3014](https://github.com/apache/incubator-superset/pull/3014) A set of minor fixes (#3014) (@mistercrunch)
|
||||
- [5344a80](https://github.com/apache/incubator-superset/commit/5344a805359fe6b72bcc7a4298b22f0dfb0cccfa) Bumping flask-appbuilder to 1.9.1 (@mistercrunch)
|
||||
- [0b09a74](https://github.com/apache/incubator-superset/commit/0b09a74d37874f9c6aa101c9566257873a6e41a0) Downgrading celery to 3.1.25 (@mistercrunch)
|
||||
- [#3017](https://github.com/apache/incubator-superset/pull/3017) CONTRIBUTING: ask to quote python stacktraces (#3017) (@xrmx)
|
||||
- [#3009](https://github.com/apache/incubator-superset/pull/3009) [bugfix] fix metrics/metric control default (#3009) (@mistercrunch)
|
||||
- [53dead9](https://github.com/apache/incubator-superset/commit/53dead9c2983ca9e3f940354e1fecb3d85f62b2b) Revert "Bumping FAB to 1.9.1" (@mistercrunch)
|
||||
- [f64e2ba](https://github.com/apache/incubator-superset/commit/f64e2ba7d52c442461b59ee1230476eae6b9ff22) Bumping FAB to 1.9.1 (@mistercrunch)
|
||||
- [#3012](https://github.com/apache/incubator-superset/pull/3012) Revert change in npm run build command (#3012) (@yolken)
|
||||
- [#3008](https://github.com/apache/incubator-superset/pull/3008) Adding missing dependency and linting webpack.js (#3008) (@mistercrunch)
|
||||
- [#2981](https://github.com/apache/incubator-superset/pull/2981) Stabilizing Celery / SQL Lab (#2981) (@mistercrunch)
|
||||
- [#2994](https://github.com/apache/incubator-superset/pull/2994) Misc. tweaks to improve webpack performance (#2994) (@yolken)
|
||||
- [#2990](https://github.com/apache/incubator-superset/pull/2990) translations extracted by pybabel (#2990) (@RoganW)
|
||||
- [#2983](https://github.com/apache/incubator-superset/pull/2983) Fix importing config from env var (#2983) (@andrewmchen)
|
||||
- [#2988](https://github.com/apache/incubator-superset/pull/2988) Improving TextAreaControl to support code and modal (#2988) (@mistercrunch)
|
||||
- [#2957](https://github.com/apache/incubator-superset/pull/2957) [pivot viz] fix formatting and verbose names (#2957) (@mistercrunch)
|
||||
- [#2927](https://github.com/apache/incubator-superset/pull/2927) [explore] improve bubble viz (#2927) (@mistercrunch)
|
||||
- [#2984](https://github.com/apache/incubator-superset/pull/2984) add test coverage for SqlEditorLeftBar (#2984) (@graceguo-supercat)
|
||||
- [#2985](https://github.com/apache/incubator-superset/pull/2985) fix is_owner check (#2985) (@graceguo-supercat)
|
||||
- [#2970](https://github.com/apache/incubator-superset/pull/2970) [FilterBox] use column verbose names (#2970) (@mistercrunch)
|
||||
- [1ce3b81](https://github.com/apache/incubator-superset/commit/1ce3b81d01e1453fb34469fa6ba66f9b7d09bcb2) Imporving the README (@mistercrunch)
|
||||
- [#2978](https://github.com/apache/incubator-superset/pull/2978) [bufix] superset views not getting from_dttm-to_dttm in template context (#2978) (@mistercrunch)
|
||||
- [#2963](https://github.com/apache/incubator-superset/pull/2963) [CLI] adding 'superset flower' command (flower is a UI for Celery) (#2963) (@mistercrunch)
|
||||
- [#2979](https://github.com/apache/incubator-superset/pull/2979) tests for saveQuery, fetchQueryResults, runQuery, postStopQuery (#2979) (@ascott)
|
||||
- [#2896](https://github.com/apache/incubator-superset/pull/2896) fix local state 'columns' (#2896) (@graceguo-supercat)
|
||||
- [#2977](https://github.com/apache/incubator-superset/pull/2977) test props on alert wrapper (#2977) (@ascott)
|
||||
- [#2972](https://github.com/apache/incubator-superset/pull/2972) add test coverage for ResultSet component (#2972) (@graceguo-supercat)
|
||||
- [#2976](https://github.com/apache/incubator-superset/pull/2976) [js-testing] add tests for explore actions (#2976) (@ascott)
|
||||
- [#2940](https://github.com/apache/incubator-superset/pull/2940) Edit Dashboard title and Slice title in place (#2940) (@graceguo-supercat)
|
||||
- [#2961](https://github.com/apache/incubator-superset/pull/2961) add test for ControlPanelSection (#2961) (@ascott)
|
||||
- [#2952](https://github.com/apache/incubator-superset/pull/2952) [js] remove unused npm dependencies (#2952) (@mistercrunch)
|
||||
- [#2939](https://github.com/apache/incubator-superset/pull/2939) add new slice test (#2939) (@ascott)
|
||||
- [#2951](https://github.com/apache/incubator-superset/pull/2951) [js] version js file names using webpack chunkhash (#2951) (@ascott)
|
||||
- [#2941](https://github.com/apache/incubator-superset/pull/2941) [dashboard] notify instead of modal onSave (#2941) (@mistercrunch)
|
||||
- [987cb99](https://github.com/apache/incubator-superset/commit/987cb9978dcd053ebac550c790a9d87d8d25aee6) [hotfix] bumping pandas version to 0.20.2 (@mistercrunch)
|
||||
- [#1742](https://github.com/apache/incubator-superset/pull/1742) Fix handling of Chunked requests (#1742) (@nishantmonu51)
|
||||
- [#2943](https://github.com/apache/incubator-superset/pull/2943) [table viz] get metrics to right-align (#2943) (@mistercrunch)
|
||||
- [#2945](https://github.com/apache/incubator-superset/pull/2945) Bumping some dependencies (#2945) (@mistercrunch)
|
||||
- [#2946](https://github.com/apache/incubator-superset/pull/2946) remove reference for CSRF_ENABLED, and use WTF_CSRF_ENABLED instead (#2946) (@timfeirg)
|
||||
- [#2921](https://github.com/apache/incubator-superset/pull/2921) [explore] improve metric(s) and groupby(s) controls (#2921) (@mistercrunch)
|
||||
- [34f381b](https://github.com/apache/incubator-superset/commit/34f381bc250cf7c74669b52d5cc5f9061c7184c5) v 0.18.5-alpha.3 (@ascott)
|
||||
- [#2928](https://github.com/apache/incubator-superset/pull/2928) add new slice form improvements (#2928) (@ascott)
|
||||
- [#2912](https://github.com/apache/incubator-superset/pull/2912) [big number] various improvements (#2912) (@mistercrunch)
|
||||
- [#2924](https://github.com/apache/incubator-superset/pull/2924) Fix #2814 - json serialization edge case (#2924) (@mistercrunch)
|
||||
- [fb85f00](https://github.com/apache/incubator-superset/commit/fb85f008fac2694bea7f6705cf21dc666490bcd0) v 0.18.5-alpha.2 (@ascott)
|
||||
- [85fb4a9](https://github.com/apache/incubator-superset/commit/85fb4a933d8ab7348082a6849ff96f199b8c02fa) [hotfix] only apply SQLAlchemy limit where needed (@mistercrunch)
|
||||
- [#2893](https://github.com/apache/incubator-superset/pull/2893) [js-testing] type checking for dates.js (#2893) (@ascott)
|
||||
- [#2889](https://github.com/apache/incubator-superset/pull/2889) add more tests for Timer (#2889) (@ascott)
|
||||
- [#2800](https://github.com/apache/incubator-superset/pull/2800) [slices] add simple new slice form (#2800) (@ascott)
|
||||
- [#2923](https://github.com/apache/incubator-superset/pull/2923) updating react-alert dependency to v2.0.1 (#2923) (@dennybiasiolli)
|
||||
- [#2906](https://github.com/apache/incubator-superset/pull/2906) Ignore pyenv files in .gitignore. (#2906) (@xiaohanyu)
|
||||
- [9aba77d](https://github.com/apache/incubator-superset/commit/9aba77db74f8c7e823fcba73fc4e0a1b7efbadd4) 0.18.5-alpha.1 (@mistercrunch)
|
||||
- [#2910](https://github.com/apache/incubator-superset/pull/2910) [dashboard]Add timeout message on Dashboard view (#2910) (@graceguo-supercat)
|
||||
- [#2908](https://github.com/apache/incubator-superset/pull/2908) [explore] fix IN filter on numeric field (#2908) (@mistercrunch)
|
||||
- [#2911](https://github.com/apache/incubator-superset/pull/2911) Removed time column from druid metadata refresh, added long and double schema support (#2911) (@joshwalters)
|
||||
- [#2897](https://github.com/apache/incubator-superset/pull/2897) fix visualize modal checkbox alignment (#2897) (@graceguo-supercat)
|
||||
- [#2902](https://github.com/apache/incubator-superset/pull/2902) update for the italian translation (#2902) (@napo)
|
||||
- [#2888](https://github.com/apache/incubator-superset/pull/2888) [docs faq] how do I add new columns to an existing table (#2888) (@mistercrunch)
|
||||
- [#2903](https://github.com/apache/incubator-superset/pull/2903) update contributing a bit re contributing code (#2903) (@xrmx)
|
||||
- [#2904](https://github.com/apache/incubator-superset/pull/2904) travis: no need to install python3.5 (#2904) (@xrmx)
|
||||
|
||||
### 0.18.4 (2017/06/05 00:54 +00:00)
|
||||
- [72291d6](https://github.com/apache/incubator-superset/commit/72291d65c929306792bc62aeaff51e083bc8c09f) 0.18.4 (@mistercrunch)
|
||||
- [#2895](https://github.com/apache/incubator-superset/pull/2895) fix a linting error (#2895) (@graceguo-supercat)
|
||||
- [#2894](https://github.com/apache/incubator-superset/pull/2894) fix js error on explore view (#2894) (@ascott)
|
||||
- [155fec0](https://github.com/apache/incubator-superset/commit/155fec0a6bcb9733c64301e9e8b86aa2c384673b) Updating CHANGELOG.md to 0.18.3 (@mistercrunch)
|
||||
|
||||
### 0.18.3 (2017/06/02 15:27 +00:00)
|
||||
- [d90044c](https://github.com/airbnb/superset/commit/d90044cd523253aa01b5cdf6509b43abeef34079) 0.18.3 (@mistercrunch)
|
||||
|
||||
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/)
|
||||
195
CONTRIBUTING.md
@@ -50,6 +50,10 @@ If you are proposing a feature:
|
||||
- Remember that this is a volunteer-driven project, and that
|
||||
contributions are welcome :)
|
||||
|
||||
### Questions
|
||||
|
||||
There is a dedicated [tag](https://stackoverflow.com/questions/tagged/apache-superset) on [stackoverflow](https://stackoverflow.com/). Please use it when asking questions.
|
||||
|
||||
## Pull Request Guidelines
|
||||
|
||||
Before you submit a pull request from your forked repo, check that it
|
||||
@@ -57,15 +61,19 @@ meets these guidelines:
|
||||
|
||||
1. The pull request should include tests, either as doctests,
|
||||
unit tests, or both.
|
||||
2. If the pull request adds functionality, the docs should be updated
|
||||
2. Run `tox` and resolve all errors and test failures.
|
||||
3. If the pull request adds functionality, the docs should be updated
|
||||
as part of the same PR. Doc string are often sufficient, make
|
||||
sure to follow the sphinx compatible standards.
|
||||
3. The pull request should work for Python 2.7, and ideally python 3.4+.
|
||||
4. The pull request should work for Python 2.7, and ideally Python 3.4+.
|
||||
``from __future__ import`` will be required in every `.py` file soon.
|
||||
4. Code will be reviewed by re running the unittests, flake8 and syntax
|
||||
should be as rigorous as the core Python project.
|
||||
5. Please rebase and resolve all conflicts before submitting.
|
||||
6. If you are asked to update your pull request with some changes there's
|
||||
5. If the pull request adds a Python dependency include it in `setup.py`
|
||||
denoting any specific restrictions and in `requirements.txt` pinned to a
|
||||
specific version which ensures that the application build is deterministic.
|
||||
6. Please rebase and resolve all conflicts before submitting.
|
||||
7. Please ensure the necessary checks pass and that code coverage does not
|
||||
decrease.
|
||||
8. If you are asked to update your pull request with some changes there's
|
||||
no need to create a new one. Push your changes to the same branch.
|
||||
|
||||
## Documentation
|
||||
@@ -94,11 +102,11 @@ to manage the Python packages you're about to install:
|
||||
virtualenv superset-dev
|
||||
source superset-dev/bin/activate
|
||||
|
||||
Finally, to make changes to the rst files and build the docs using Sphinx,
|
||||
Finally, to make changes to the rst files and build the docs using Sphinx,
|
||||
you'll need to install a handful of dependencies from the repo you cloned:
|
||||
|
||||
cd incubator-superset
|
||||
pip install -r dev-reqs-for-docs.txt
|
||||
pip install -r docs/requirements.txt
|
||||
|
||||
To get the feel for how to edit and build the docs, let's edit a file, build
|
||||
the docs and see our changes in action. First, you'll want to
|
||||
@@ -173,6 +181,7 @@ Check the [OS dependencies](https://superset.incubator.apache.org/installation.h
|
||||
source env/bin/activate
|
||||
|
||||
# install for development
|
||||
pip install -r requirements.txt
|
||||
pip install -e .
|
||||
|
||||
# Create an admin user
|
||||
@@ -191,6 +200,19 @@ Check the [OS dependencies](https://superset.incubator.apache.org/installation.h
|
||||
superset runserver -d
|
||||
|
||||
|
||||
### Logging to the browser console
|
||||
|
||||
When debugging your application, you can have the server logs sent directly to the browser console:
|
||||
|
||||
superset runserver -d --console-log
|
||||
|
||||
You can log anything to the browser console, including objects:
|
||||
|
||||
from superset import app
|
||||
app.logger.error('An exception occurred!')
|
||||
app.logger.info(form_data)
|
||||
|
||||
|
||||
## Setting up the node / npm javascript environment
|
||||
|
||||
`superset/assets` contains all npm-managed, front end assets.
|
||||
@@ -255,16 +277,33 @@ superset runserver -d -p 8081
|
||||
npm run dev
|
||||
```
|
||||
|
||||
#### Upgrading npm packages
|
||||
|
||||
Should you add or upgrade a npm package, which involves changing `package.json`, you'll need to re-run `yarn install` and push the newly generated `yarn.lock` file so we get the reproducible build. More information at (https://yarnpkg.com/blog/2016/11/24/lockfiles-for-all/)
|
||||
|
||||
## Testing
|
||||
All tests are carried out in [tox](http://tox.readthedocs.io/en/latest/index.html)
|
||||
a standardized testing framework mostly for Python (though we also used it for Javascript).
|
||||
All python tests can be run with any of the tox [environments](http://tox.readthedocs.io/en/latest/example/basic.html#a-simple-tox-ini-default-environments), via,
|
||||
|
||||
Before running python unit tests, please setup local testing environment:
|
||||
```
|
||||
pip install -r dev-reqs.txt
|
||||
```
|
||||
tox -e <environment>
|
||||
|
||||
Python tests can be run with:
|
||||
i.e.,
|
||||
|
||||
./run_tests.sh
|
||||
tox -e py27
|
||||
tox -e py34
|
||||
|
||||
Alternatively, you can run all tests in a single file via,
|
||||
|
||||
tox -e <environment> -- tests/test_file.py
|
||||
|
||||
or for a specific test via,
|
||||
|
||||
tox -e <environment> -- tests/test_file.py:TestClassName.test_method_name
|
||||
|
||||
Note that the test environment uses a temporary directory for defining the
|
||||
SQLite databases which will be cleared each time before the group of test
|
||||
commands are invoked.
|
||||
|
||||
We use [Mocha](https://mochajs.org/), [Chai](http://chaijs.com/) and [Enzyme](http://airbnb.io/enzyme/) to test Javascript. Tests can be run with:
|
||||
|
||||
@@ -276,42 +315,18 @@ We use [Mocha](https://mochajs.org/), [Chai](http://chaijs.com/) and [Enzyme](ht
|
||||
|
||||
Lint the project with:
|
||||
|
||||
# for python changes
|
||||
flake8 changes tests
|
||||
flake8 changes superset
|
||||
# for python
|
||||
tox -e flake8
|
||||
|
||||
# for javascript
|
||||
npm run lint
|
||||
|
||||
## Linting with codeclimate
|
||||
Codeclimate is a service we use to measure code quality and test coverage. To get codeclimate's report on your branch, ideally before sending your PR, you can setup codeclimate against your Superset fork. After you push to your fork, you should be able to get the report at http://codeclimate.com . Alternatively, if you prefer to work locally, you can install the codeclimate cli tool.
|
||||
|
||||
*Install the codeclimate cli tool*
|
||||
```
|
||||
curl -L https://github.com/docker/machine/releases/download/v0.7.0/docker-machine-`uname -s`-`uname -m` > /usr/local/bin/docker-machine && chmod +x /usr/local/bin/docker-machine
|
||||
brew install docker
|
||||
docker-machine create --driver virtual box default
|
||||
docker-machine env default
|
||||
eval "$(docker-machine env default)"
|
||||
docker pull codeclimate/codeclimate
|
||||
brew tap codeclimate/formulae
|
||||
brew install codeclimate
|
||||
```
|
||||
|
||||
*Run the lint command:*
|
||||
```
|
||||
docker-machine start
|
||||
eval "$(docker-machine env default)”
|
||||
codeclimate analyze
|
||||
```
|
||||
More info can be found here: https://docs.codeclimate.com/docs/open-source-free
|
||||
|
||||
tox -e eslint
|
||||
|
||||
## API documentation
|
||||
|
||||
Generate the documentation with:
|
||||
|
||||
cd docs && ./build.sh
|
||||
pip install -r docs/requirements.txt
|
||||
python setup.py build_sphinx
|
||||
|
||||
## CSS Themes
|
||||
As part of the npm build process, CSS for Superset is compiled from `Less`, a dynamic stylesheet language.
|
||||
@@ -331,6 +346,8 @@ key is to instrument the strings that need translation using
|
||||
a module, all you have to do is to `_("Wrap your strings")` using the
|
||||
underscore `_` "function".
|
||||
|
||||
We use `import {t, tn, TCT} from locales;` in js, JSX file, locales is in `./superset/assets/javascripts/` directory.
|
||||
|
||||
To enable changing language in your environment, you can simply add the
|
||||
`LANGUAGES` parameter to your `superset_config.py`. Having more than one
|
||||
options here will add a language selection dropdown on the right side of the
|
||||
@@ -343,14 +360,15 @@ navigation bar.
|
||||
}
|
||||
|
||||
As per the [Flask AppBuilder documentation] about translation, to create a
|
||||
new language dictionary, run the following command:
|
||||
new language dictionary, run the following command (where `es` is replaced with
|
||||
the language code for your target language):
|
||||
|
||||
pybabel init -i ./babel/messages.pot -d superset/translations -l es
|
||||
pybabel init -i superset/translations/messages.pot -d superset/translations -l es
|
||||
|
||||
Then it's a matter of running the statement below to gather all strings that
|
||||
need translation
|
||||
|
||||
fabmanager babel-extract --target superset/translations/
|
||||
fabmanager babel-extract --target superset/translations/ --output superset/translations/messages.pot --config superset/translations/babel.cfg -k _ -k __ -k t -k tn -k tct
|
||||
|
||||
You can then translate the strings gathered in files located under
|
||||
`superset/translation`, where there's one per language. For the translations
|
||||
@@ -358,6 +376,19 @@ to take effect, they need to be compiled using this command:
|
||||
|
||||
fabmanager babel-compile --target superset/translations/
|
||||
|
||||
In the case of JS translation, we need to convert the PO file into a JSON file, and we need the global download of the npm package po2json.
|
||||
We need to be compiled using this command:
|
||||
|
||||
npm install po2json -g
|
||||
|
||||
Execute this command to convert the en PO file into a json file:
|
||||
|
||||
po2json -d superset -f jed1.x superset/translations/en/LC_MESSAGES/messages.po superset/translations/en/LC_MESSAGES/messages.json
|
||||
|
||||
If you get errors running `po2json`, you might be running the ubuntu package with the same
|
||||
name rather than the nodejs package (they have a different format for the arguments). You
|
||||
need to be running the nodejs version, and so if there is a conflict you may need to point
|
||||
directly at `/usr/local/bin/po2json` rather than just `po2json`.
|
||||
|
||||
## Adding new datasources
|
||||
|
||||
@@ -386,10 +417,9 @@ https://github.com/apache/incubator-superset/pull/3013
|
||||
Every once in a while we want to compile the documentation and publish it.
|
||||
Here's how to do it.
|
||||
|
||||
.. code::
|
||||
|
||||
```
|
||||
# install doc dependencies
|
||||
pip install -r dev-reqs-for-docs.txt
|
||||
pip install -r docs/requirements.txt
|
||||
|
||||
# build the docs
|
||||
python setup.py build_sphinx
|
||||
@@ -403,10 +433,75 @@ https://github.com/apache/incubator-superset/pull/3013
|
||||
|
||||
# copy
|
||||
cp -r /tmp/tmp_superset_docs/ ~/incubator-superset-site.git/
|
||||
|
||||
|
||||
# commit and push to `asf-site` branch
|
||||
cd ~/incubator-superset-site.git/
|
||||
git checkout asf-site
|
||||
git add .
|
||||
git commit -a -m "New doc version"
|
||||
git push origin master
|
||||
```
|
||||
|
||||
## Publishing a Pypi release
|
||||
|
||||
We create a branch that goes along each minor release `0.24`
|
||||
and micro releases get corresponding tags as in `0.24.0`. Git history should
|
||||
never be altered in release branches.
|
||||
Bug fixes and security-related patches get cherry-picked
|
||||
(usually from master) as in `git cherry-pick -x {SHA}`.
|
||||
|
||||
Following a set of cherries being picked, a release can be pushed to
|
||||
Pypi as follows:
|
||||
|
||||
```
|
||||
# branching off of master
|
||||
git checkout -b 0.25
|
||||
|
||||
# cherry-picking a SHA
|
||||
git cherry-pick -x f9d85bd2e1fd9bc233d19c76bed09467522b968a
|
||||
# repeat with other SHAs, don't forget the -x
|
||||
|
||||
# source of thruth for release numbers live in package.json
|
||||
vi superset/assets/package.json
|
||||
# hard code release in file, commit to the release branch
|
||||
git commit -a -m "0.25.0"
|
||||
|
||||
# create the release tag in the release branch
|
||||
git tag 0.25.0
|
||||
git push apache 0.25 --tags
|
||||
|
||||
# check travis to confirm the build succeeded as
|
||||
# you shouldn't assume that a clean cherry will be clean
|
||||
# when landing on a new sundae
|
||||
|
||||
# compile the JS, and push to pypi
|
||||
# to run this part you'll need a pypi account and rights on the
|
||||
# superset package. Committers that want to ship releases
|
||||
# should have this access.
|
||||
# You'll also need a `.pypirc` as specified here:
|
||||
# http://peterdowns.com/posts/first-time-with-pypi.html
|
||||
./pypi_push.sh
|
||||
|
||||
# publish an update to the CHANGELOG.md for the right version range
|
||||
# looking the latest CHANGELOG entry for the second argument
|
||||
./gen_changelog.sh 0.22.1 0.25.0
|
||||
# this will overwrite the CHANGELOG.md with only the version range
|
||||
# so you'll want to copy paste that on top of the previous CHANGELOG.md
|
||||
# open a PR against `master`
|
||||
```
|
||||
|
||||
In the future we'll start publishing release candidates for minor releases
|
||||
only, but typically not for micro release.
|
||||
The process will be similar to the process described above, expect the
|
||||
tags will be formated `0.25.0rc1`, `0.25.0rc2`, ..., until consensus
|
||||
is reached.
|
||||
|
||||
We should also have a Github PR label process to target the proper
|
||||
release, and tooling helping keeping track of all the cherries and
|
||||
target versions.
|
||||
|
||||
For Apache releases, the process will be a bit heavier and should get
|
||||
documented here. There will be extra steps for signing the binaries,
|
||||
with a PGP key and providing MD5, Apache voting, as well as
|
||||
publishing to Apache's SVN repository. View the ASF docs for more
|
||||
information.
|
||||
|
||||
16
MANIFEST.in
@@ -1,8 +1,12 @@
|
||||
recursive-include superset/templates *
|
||||
recursive-include superset/static *
|
||||
recursive-exclude superset/static/docs *
|
||||
recursive-exclude superset/static/spec *
|
||||
recursive-exclude superset/static/assets/node_modules *
|
||||
recursive-exclude tests *
|
||||
recursive-include superset/data *
|
||||
recursive-include superset/migrations *
|
||||
recursive-include superset/static *
|
||||
recursive-exclude superset/static/assets/docs *
|
||||
recursive-exclude superset/static/assets/images/viz_thumbnails_large *
|
||||
recursive-exclude superset/static/docs *
|
||||
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 *
|
||||
recursive-exclude tests *
|
||||
|
||||
70
README.md
@@ -3,10 +3,9 @@ Superset
|
||||
|
||||
[](https://travis-ci.org/apache/incubator-superset)
|
||||
[](https://badge.fury.io/py/superset)
|
||||
[](https://coveralls.io/github/apache/incubator-superset?branch=master)
|
||||
[](https://codecov.io/github/apache/incubator-superset)
|
||||
[](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)
|
||||
|
||||
@@ -27,27 +26,23 @@ Screenshots & Gifs
|
||||
|
||||
**View Dashboards**
|
||||
|
||||

|
||||
<kbd><img title="View Dashboards" src="https://raw.githubusercontent.com/apache/incubator-superset/master/superset/assets/images/screenshots/bank_dash.png"></kbd><br/>
|
||||
|
||||
<br/>
|
||||
**Slice & dice your data**
|
||||
|
||||
**View/Edit a Slice**
|
||||
<kbd><img title="Slice & dice your data" src="https://raw.githubusercontent.com/apache/incubator-superset/master/superset/assets/images/screenshots/explore.png"></kbd><br/>
|
||||
|
||||

|
||||
**Query and visualize your data with SQL Lab**
|
||||
|
||||
<br/>
|
||||
<kbd><img title="SQL Lab" src="https://raw.githubusercontent.com/apache/incubator-superset/master/superset/assets/images/screenshots/sqllab.png"></kbd><br/>
|
||||
|
||||
**Query and Visualize with SQL Lab**
|
||||
**Visualize geospatial data with deck.gl**
|
||||
|
||||

|
||||
<kbd><img title="Geospatial" src="https://raw.githubusercontent.com/apache/incubator-superset/master/superset/assets/images/screenshots/deckgl_dash.png"></kbd><br/>
|
||||
|
||||
<br/>
|
||||
**Choose from a wide array of visualizations**
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
<kbd><img title="Visualizations" src="https://raw.githubusercontent.com/apache/incubator-superset/master/superset/assets/images/screenshots/visualizations.png"></kbd><br/>
|
||||
|
||||
Apache Superset
|
||||
---------------
|
||||
@@ -105,7 +100,7 @@ Druid!
|
||||
------
|
||||
|
||||
On top of having the ability to query your relational databases,
|
||||
Superset has ships with deep integration with Druid (a real time distributed
|
||||
Superset ships with deep integration with Druid (a real time distributed
|
||||
column-store). When querying Druid,
|
||||
Superset can query humongous amounts of data on top of real time dataset.
|
||||
Note that Superset does not require Druid in any way to function, it's simply
|
||||
@@ -127,32 +122,14 @@ Installation & Configuration
|
||||
[See in the documentation](https://superset.incubator.apache.org/installation.html)
|
||||
|
||||
|
||||
More screenshots
|
||||
----------------
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
Resources
|
||||
-------------
|
||||
* [Superset Google Group](https://groups.google.com/forum/#!forum/airbnb_superset)
|
||||
* [Mailing list](https://lists.apache.org/list.html?dev@superset.apache.org)
|
||||
* [Gitter (live chat) Channel](https://gitter.im/airbnb/superset)
|
||||
* [Docker image](https://hub.docker.com/r/amancevice/superset/) (community contributed)
|
||||
* [Slides from Strata (March 2016)](https://drive.google.com/open?id=0B5PVE0gzO81oOVJkdF9aNkJMSmM)
|
||||
* [Stackoverflow tag](https://stackoverflow.com/questions/tagged/apache-superset)
|
||||
* [DEPRECATED Google Group](https://groups.google.com/forum/#!forum/airbnb_superset)
|
||||
|
||||
|
||||
Contributing
|
||||
@@ -168,11 +145,17 @@ Who uses Apache Superset (incubating)?
|
||||
Here's a list of organizations who have taken the time to send a PR to let
|
||||
the world know they are using Superset. Join our growing community!
|
||||
|
||||
- [AiHello](https://www.aihello.com)
|
||||
- [Airbnb](https://github.com/airbnb)
|
||||
- [Airboxlab](https://foobot.io)
|
||||
- [Aktia Bank plc](https://www.aktia.com)
|
||||
- [Amino](https://amino.com)
|
||||
- [Ascendica Development](http://ascendicadevelopment.com)
|
||||
- [Astronomer](https://www.astronomer.io)
|
||||
- [Brilliant.org](https://brilliant.org/)
|
||||
- [Capital Service S.A.](http://capitalservice.pl)
|
||||
- [Clark.de](http://clark.de/)
|
||||
- [CnOvit](http://www.cnovit.com/)
|
||||
- [Digit Game Studios](https://www.digitgaming.com/)
|
||||
- [Douban](https://www.douban.com/)
|
||||
- [Endress+Hauser](http://www.endress.com/)
|
||||
@@ -180,14 +163,23 @@ the world know they are using Superset. Join our growing community!
|
||||
- [Faasos](http://faasos.com/)
|
||||
- [GfK Data Lab](http://datalab.gfk.com)
|
||||
- [Konfío](http://konfio.mx)
|
||||
- [Lime](https://www.limebike.com/)
|
||||
- [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/)
|
||||
- [ScopeAI](https://www.getscopeai.com)
|
||||
- [Shopee](https://shopee.sg)
|
||||
- [Shopkick](https://www.shopkick.com)
|
||||
- [Tails.com](https://tails.com)
|
||||
- [Tobii](http://www.tobii.com/)
|
||||
- [Tooploox](https://www.tooploox.com/)
|
||||
- [Twitter](https://twitter.com/)
|
||||
- [Udemy](https://www.udemy.com/)
|
||||
- [VIPKID](https://www.vipkid.com.cn/)
|
||||
- [Windsor.ai](https://www.windsor.ai/)
|
||||
- [Yahoo!](https://yahoo.com/)
|
||||
- [Zaihang](http://www.zaih.com/)
|
||||
- [Zalando](https://www.zalando.com)
|
||||
|
||||
|
||||
48
TODO.md
@@ -1,48 +0,0 @@
|
||||
# TODO
|
||||
List of TODO items for Superset
|
||||
|
||||
## Important
|
||||
* **Getting proper JS testing:** unit tests on the Python side are pretty
|
||||
solid, but now we need a test suite for the JS part of the site,
|
||||
testing all the ajax-type calls
|
||||
* **Viz Plugins:** Allow people to define and share visualization plugins.
|
||||
ideally one would only need to drop in a set of files in a folder and
|
||||
Superset would discover and expose the plugins
|
||||
|
||||
## Features
|
||||
* **Dashboard URL filters:** `{dash_url}#fltin__fieldname__value1,value2`
|
||||
* **Default slice:** choose a default slice for the dataset instead of
|
||||
default endpoint
|
||||
* **Widget sets / chart grids:** a way to have all charts support making
|
||||
a series of charts and putting them in a grid. The same way that you
|
||||
can groupby for series, you could chart by. The form field set would be
|
||||
common and use a single field to "grid by", a limit number of chart as
|
||||
an N * N grid size.
|
||||
* **Advanced dashboard configuration:** currently you can define which
|
||||
slices in a dashboard are immune to filtering.
|
||||
* **Annotations layers:** allow for people to maintain data annotations,
|
||||
attached to a layer and time range. These layers can be added on top of
|
||||
some visualizations as annotations. An example of a layer might be
|
||||
"holidays" or "site outages", ...
|
||||
* **Slack integration** - TBD
|
||||
* **Comments:** allow for people to comment on slices and dashes
|
||||
|
||||
|
||||
## Easy-ish fix
|
||||
* Build matrix to include mysql using tox
|
||||
* CREATE VIEW button from SQL editor
|
||||
* Test button for when editing SQL expression
|
||||
* Slider form element
|
||||
* [druid] Allow for post aggregations (ratios!)
|
||||
* in/notin filters autocomplete (druid)
|
||||
|
||||
## New viz
|
||||
* Maps that use geocodes
|
||||
* Time animated scatter plots
|
||||
* Horizon charts
|
||||
* Calendar heatmap
|
||||
* Chord diagram
|
||||
* ...
|
||||
|
||||
## Community
|
||||
* Turorial vids
|
||||
33
UPDATING.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# Updating Superset
|
||||
|
||||
This file documents any backwards-incompatible changes in Superset and
|
||||
assists people when migrating to a new version.
|
||||
|
||||
## Superset 0.25.0
|
||||
Superset 0.25.0 contains a backwards incompatible changes.
|
||||
If you run a production system you should schedule downtime for this
|
||||
upgrade.
|
||||
|
||||
The PRs bellow have more information around the breaking changes:
|
||||
* [4587](https://github.com/apache/incubator-superset/pull/4587) : a backward
|
||||
incompatible database migration that requires downtime. Once the
|
||||
db migration succeeds, the web server needs to be restarted with the
|
||||
new version. The previous version will fail
|
||||
* [4565](https://github.com/apache/incubator-superset/pull/4565) : we've
|
||||
changed the security model a bit where in the past you would have to
|
||||
define your authentication scheme by inheriting from Flask
|
||||
App Builder's
|
||||
`from flask_appbuilder.security.sqla.manager import SecurityManager`,
|
||||
you now have to derive Superset's
|
||||
own derivative `superset.security.SupersetSecurityManager`. This
|
||||
can provide you with more hooks to define your own logic and/or defer
|
||||
permissions to another system as needed. For all implementation, you
|
||||
simply have to import and derive `SupersetSecurityManager` in place
|
||||
of the `SecurityManager`
|
||||
* [4835](https://github.com/apache/incubator-superset/pull/4835) :
|
||||
our `setup.py` now only pins versions where required, giving you
|
||||
more latitude in using versions of libraries as needed. We do now
|
||||
provide a `requirements.txt` with pinned versions if you want to run
|
||||
the suggested versions that `Superset` builds and runs tests against.
|
||||
Simply `pip install -r requirements.txt` in your build pipeline, likely
|
||||
prior to `pip install superset==0.25.0`
|
||||
1305
babel/messages.pot
@@ -1,3 +0,0 @@
|
||||
sphinx
|
||||
sphinx-rtd-theme
|
||||
sphinxcontrib.youtube
|
||||
14
dev-reqs.txt
@@ -1,14 +0,0 @@
|
||||
codeclimate-test-reporter
|
||||
coveralls
|
||||
flake8
|
||||
flask_cors
|
||||
mock
|
||||
mysqlclient
|
||||
nose
|
||||
psycopg2
|
||||
pylint
|
||||
pyyaml
|
||||
redis
|
||||
statsd
|
||||
# Also install everything we need to build Sphinx docs
|
||||
-r dev-reqs-for-docs.txt
|
||||
@@ -52,7 +52,7 @@ master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = "Apache Superset"
|
||||
copyright = None
|
||||
copyright = 'Apache Software Foundation'
|
||||
author = u'Maxime Beauchemin'
|
||||
|
||||
# The version info for the project you're documenting, acts as replacement for
|
||||
|
||||
@@ -1,16 +1,14 @@
|
||||
Druid
|
||||
=====
|
||||
|
||||
Superset works well with Druid, though currently not all
|
||||
advanced features out of Druid are covered. This page clarifies what is
|
||||
covered and what isn't and explains how to use some of the features.
|
||||
Superset has a native connector to Druid, and a majority of Druid's
|
||||
features are accessible through Superset.
|
||||
|
||||
.. note ::
|
||||
Currently Airbnb runs against Druid ``0.8.x`` and previous /
|
||||
following versions are not tested against.
|
||||
|
||||
Supported
|
||||
'''''''''
|
||||
Druid now supports SQL and can be accessed through Superset's
|
||||
SQLAlchemy connector. The long term vision is to deprecate
|
||||
the Druid native REST connector and query Druid exclusively through
|
||||
the SQL interface.
|
||||
|
||||
Aggregations
|
||||
------------
|
||||
@@ -28,7 +26,7 @@ element correspond to Druid aggregation definition. You can create your own
|
||||
aggregations manually from the ``List Druid Metric`` tab following Druid
|
||||
documentation.
|
||||
|
||||
.. image:: _static/img/druid_agg.png
|
||||
.. image:: images/druid_agg.png
|
||||
:scale: 50 %
|
||||
|
||||
Post-Aggregations
|
||||
@@ -41,8 +39,9 @@ json post-aggregation definition (as specified in the Druid docs) in the
|
||||
Json field.
|
||||
|
||||
|
||||
Not yet supported
|
||||
'''''''''''''''''
|
||||
Unsupported Features
|
||||
--------------------
|
||||
|
||||
- Regex filters
|
||||
- Lookups / joins
|
||||
.. note ::
|
||||
Unclear at this point, this section of the documentation could use
|
||||
some input.
|
||||
|
||||
72
docs/faq.rst
@@ -45,6 +45,15 @@ 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?
|
||||
------------------------------
|
||||
|
||||
@@ -60,9 +69,9 @@ There are many reasons may cause long query timing out.
|
||||
|
||||
``superset runserver -t 300``
|
||||
|
||||
- If you are seeing timeouts (504 Gateway Time-out) when loading dashboard or explore slice, you are probably behind gateway or proxy server (such as Nginx). If it did not receive a timely response from Superset server (which is processing long queries), these web servers will send 504 status code to clients directly. Superset has a client-side timeout limit to address this issue. If query didn't come back within clint-side timeout (45 seconds by default), Superset will display warning message to avoid gateway timeout message. If you have a longer gateway timeout limit, you can change client-side timeout limit settings from ``/superset/superset/assets/javascripts/constants.js`` file and rebuild js package:
|
||||
- If you are seeing timeouts (504 Gateway Time-out) when loading dashboard or explore slice, you are probably behind gateway or proxy server (such as Nginx). If it did not receive a timely response from Superset server (which is processing long queries), these web servers will send 504 status code to clients directly. Superset has a client-side timeout limit to address this issue. If query didn't come back within clint-side timeout (60 seconds by default), Superset will display warning message to avoid gateway timeout message. If you have a longer gateway timeout limit, you can change the timeout settings in ``superset_config.py``:
|
||||
|
||||
``export const QUERY_TIMEOUT_THRESHOLD = 45000;``
|
||||
``SUPERSET_WEBSERVER_TIMEOUT = 60``
|
||||
|
||||
|
||||
Why is the map not visible in the mapbox visualization?
|
||||
@@ -99,7 +108,7 @@ edit the ``JSON Metadata`` field, more specifically the
|
||||
never be affected by any dashboard level filtering.
|
||||
|
||||
|
||||
..code::
|
||||
.. code-block:: json
|
||||
|
||||
{
|
||||
"filter_immune_slices": [324, 65, 92],
|
||||
@@ -128,10 +137,13 @@ be applied, it's as simple as that.
|
||||
|
||||
How to limit the timed refresh on a dashboard?
|
||||
----------------------------------------------
|
||||
By default, the dashboard timed refresh feature allows you to automatically requery every slice on a dashboard according to a set schedule. Sometimes, however, you won't want all of the slices to be refreshed - especially if some data is slow moving, or run heavy queries.
|
||||
To exclude specific slices from the timed refresh process, add the ``timed_refresh_immune_slices`` key to the dashboard ``JSON Metadata`` field:
|
||||
By default, the dashboard timed refresh feature allows you to automatically re-query every slice
|
||||
on a dashboard according to a set schedule. Sometimes, however, you won't want all of the slices
|
||||
to be refreshed - especially if some data is slow moving, or run heavy queries. To exclude specific
|
||||
slices from the timed refresh process, add the ``timed_refresh_immune_slices`` key to the dashboard
|
||||
``JSON Metadata`` field:
|
||||
|
||||
..code::
|
||||
.. code-block:: json
|
||||
|
||||
{
|
||||
"filter_immune_slices": [],
|
||||
@@ -140,11 +152,25 @@ To exclude specific slices from the timed refresh process, add the ``timed_refre
|
||||
"timed_refresh_immune_slices": [324]
|
||||
}
|
||||
|
||||
In the example above, if a timed refresh is set for the dashboard, then every slice except 324 will be automatically requeried on schedule.
|
||||
In the example above, if a timed refresh is set for the dashboard, then every slice except 324 will
|
||||
be automatically re-queried on schedule.
|
||||
|
||||
Slice refresh will also be staggered over the specified period. You can turn off this staggering
|
||||
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-block:: json
|
||||
|
||||
{
|
||||
"stagger_refresh": false,
|
||||
"stagger_time": 2500
|
||||
}
|
||||
|
||||
Here, the entire dashboard will refresh at once if periodic refresh is on. The stagger time of
|
||||
2.5 seconds is ignored.
|
||||
|
||||
Why does fabmanager or superset freezed/hung/not responding when started (my home directory is NFS mounted)?
|
||||
-----------------------------------------------------------------------------------------
|
||||
------------------------------------------------------------------------------------------------------------
|
||||
By default, superset creates and uses an sqlite database at ``~/.superset/superset.db``. Sqlite is known to `don't work well if used on NFS`__ due to broken file locking implementation on NFS.
|
||||
|
||||
__ https://www.sqlite.org/lockingv3.html
|
||||
@@ -153,8 +179,8 @@ You can override this path using the ``SUPERSET_HOME`` environment variable.
|
||||
|
||||
Another work around is to change where superset stores the sqlite database by adding ``SQLALCHEMY_DATABASE_URI = 'sqlite:////new/location/superset.db'`` in superset_config.py (create the file if needed), then adding the directory where superset_config.py lives to PYTHONPATH environment variable (e.g. ``export PYTHONPATH=/opt/logs/sandbox/airbnb/``).
|
||||
|
||||
How do I add new columns to an existing table
|
||||
---------------------------------------------
|
||||
What if the table schema changed?
|
||||
---------------------------------
|
||||
|
||||
Table schemas evolve, and Superset needs to reflect that. It's pretty common
|
||||
in the life cycle of a dashboard to want to add a new dimension or metric.
|
||||
@@ -188,7 +214,7 @@ Please note that pretty much any databases that have a SqlAlchemy integration sh
|
||||
How can i configure OAuth authentication and authorization?
|
||||
-----------------------------------------------------------
|
||||
|
||||
You can take a look at this Flask-AppBuilder `configuration example
|
||||
You can take a look at this Flask-AppBuilder `configuration example
|
||||
<https://github.com/dpgaspar/Flask-AppBuilder/blob/master/examples/oauth/config.py>`_.
|
||||
|
||||
How can I set a default filter on my dashboard?
|
||||
@@ -196,3 +222,27 @@ How can I set a default filter on my dashboard?
|
||||
|
||||
Easy. Simply apply the filter and save the dashboard while the filter
|
||||
is active.
|
||||
|
||||
How do I get Superset to refresh the schema of my table?
|
||||
--------------------------------------------------------
|
||||
|
||||
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-block:: json
|
||||
|
||||
{
|
||||
"label_colors": {
|
||||
"Girls": "#FF69B4",
|
||||
"Boys": "#ADD8E6"
|
||||
}
|
||||
}
|
||||
|
||||
163
docs/gallery.rst
@@ -1,89 +1,190 @@
|
||||
Gallery
|
||||
=======
|
||||
Visualizations Gallery
|
||||
======================
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/line.png
|
||||
.. image:: images/viz_thumbnails/area.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/bubble.png
|
||||
|
||||
.. image:: images/viz_thumbnails/bar.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/table.png
|
||||
|
||||
.. image:: images/viz_thumbnails/big_number.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/pie.png
|
||||
|
||||
.. image:: images/viz_thumbnails/big_number_total.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/bar.png
|
||||
|
||||
.. image:: images/viz_thumbnails/box_plot.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/world_map.png
|
||||
|
||||
.. image:: images/viz_thumbnails/bubble.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/sankey.png
|
||||
|
||||
.. image:: images/viz_thumbnails/bullet.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/word_cloud.png
|
||||
|
||||
.. image:: images/viz_thumbnails/cal_heatmap.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/filter_box.png
|
||||
|
||||
.. image:: images/viz_thumbnails/chord.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/pivot_table.png
|
||||
|
||||
.. image:: images/viz_thumbnails/compare.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/directed_force.png
|
||||
|
||||
.. image:: images/viz_thumbnails/country_map.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/compare.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_arc.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/sunburst.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_geojson.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/area.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_grid.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/big_number.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_hex.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/big_number_total.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_multi.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/bullet.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_path.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/dist_bar.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_polygon.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/heatmap.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_scatter.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/markup.png
|
||||
|
||||
.. image:: images/viz_thumbnails/deck_screengrid.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/para.png
|
||||
|
||||
.. image:: images/viz_thumbnails/directed_force.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/iframe.png
|
||||
|
||||
.. image:: images/viz_thumbnails/dist_bar.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/box_plot.png
|
||||
|
||||
.. image:: images/viz_thumbnails/dual_line.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/treemap.png
|
||||
|
||||
.. image:: images/viz_thumbnails/event_flow.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/cal_heatmap.png
|
||||
|
||||
.. image:: images/viz_thumbnails/filter_box.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/horizon.png
|
||||
|
||||
.. image:: images/viz_thumbnails/heatmap.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/mapbox.png
|
||||
|
||||
.. image:: images/viz_thumbnails/histogram.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/separator.png
|
||||
|
||||
.. image:: images/viz_thumbnails/horizon.png
|
||||
:scale: 25 %
|
||||
|
||||
.. image:: _static/img/viz_thumbnails/histogram.png
|
||||
|
||||
.. image:: images/viz_thumbnails/iframe.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/line.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/mapbox.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/markup.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/paired_ttest.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/para.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/partition.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/pie.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/pivot_table.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/rose.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/sankey.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/separator.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/sunburst.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/table.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/time_pivot.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/time_table.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/treemap.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/word_cloud.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
.. image:: images/viz_thumbnails/world_map.png
|
||||
:scale: 25 %
|
||||
|
||||
|
||||
1
docs/images
Symbolic link
@@ -0,0 +1 @@
|
||||
../superset/assets/images/
|
||||
108
docs/import_export_datasources.rst
Normal file
@@ -0,0 +1,108 @@
|
||||
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)
|
||||
#. Select the items you would like to export
|
||||
#. Click **Actions** -> **Export to YAML**
|
||||
#. 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
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
.. image:: _static/img/s.png
|
||||
.. image:: images/s.png
|
||||
|
||||
Apache Superset (incubating)
|
||||
''''''''''''''''''''''''''''
|
||||
@@ -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
|
||||
@@ -45,23 +45,28 @@ Features
|
||||
- Integration with most SQL-speaking RDBMS through SQLAlchemy
|
||||
- Deep integration with Druid.io
|
||||
|
||||
------
|
||||
Screenshots
|
||||
-----------
|
||||
|
||||
.. image:: https://camo.githubusercontent.com/82e264ef777ba06e1858766fe3b8817ee108eb7e/687474703a2f2f672e7265636f726469742e636f2f784658537661475574732e676966
|
||||
.. image:: images/screenshots/bank_dash.png
|
||||
|
||||
------
|
||||
|
||||
.. image:: https://camo.githubusercontent.com/4991ff37a0005ea4e4267919a52786fda82d2d21/687474703a2f2f672e7265636f726469742e636f2f755a6767594f645235672e676966
|
||||
.. image:: images/screenshots/explore.png
|
||||
|
||||
------
|
||||
|
||||
.. image:: https://camo.githubusercontent.com/a389af15ac1e32a3d0fee941b4c62c850b1d583b/687474703a2f2f672e7265636f726469742e636f2f55373046574c704c76682e676966
|
||||
.. image:: images/screenshots/sqllab.png
|
||||
|
||||
------
|
||||
|
||||
.. image:: images/screenshots/deckgl_dash.png
|
||||
|
||||
------
|
||||
|
||||
|
||||
Contents
|
||||
---------
|
||||
--------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
@@ -70,10 +75,9 @@ Contents
|
||||
tutorial
|
||||
security
|
||||
sqllab
|
||||
visualization
|
||||
videos
|
||||
gallery
|
||||
druid
|
||||
misc
|
||||
faq
|
||||
|
||||
|
||||
|
||||
@@ -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: ::
|
||||
|
||||
@@ -62,7 +68,7 @@ that the required dependencies are installed: ::
|
||||
**OSX**, system python is not recommended. brew's python also ships with pip ::
|
||||
|
||||
brew install pkg-config libffi openssl python
|
||||
env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography==1.7.2
|
||||
env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography==1.9
|
||||
|
||||
**Windows** isn't officially supported at this point, but if you want to
|
||||
attempt it, download `get-pip.py <https://bootstrap.pypa.io/get-pip.py>`_, and run ``python get-pip.py`` which may need admin access. Then run the following: ::
|
||||
@@ -119,11 +125,8 @@ Follow these few simple steps to install Superset.::
|
||||
# Create default roles and permissions
|
||||
superset init
|
||||
|
||||
# Start the web server on port 8088, use -p to bind to another port
|
||||
superset runserver
|
||||
|
||||
# To start a development web server, use the -d switch
|
||||
# superset runserver -d
|
||||
# To start a development web server on port 8088, use -p to bind to another port
|
||||
superset runserver -d
|
||||
|
||||
|
||||
After installation, you should be able to point your browser to the right
|
||||
@@ -141,14 +144,10 @@ Gunicorn, preferably in **async mode**, which allows for impressive
|
||||
concurrency even and is fairly easy to install and configure. Please
|
||||
refer to the
|
||||
documentation of your preferred technology to set up this Flask WSGI
|
||||
application in a way that works well in your environment.
|
||||
application in a way that works well in your environment. Here's an **async**
|
||||
setup known to work well in production: ::
|
||||
|
||||
While the `superset runserver` command act as an quick wrapper
|
||||
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 \
|
||||
@@ -159,14 +158,38 @@ environment. Here's an **async** setup known to work well: ::
|
||||
superset:app
|
||||
|
||||
Refer to the
|
||||
[Gunicorn documentation](http://docs.gunicorn.org/en/stable/design.html)
|
||||
`Gunicorn documentation <http://docs.gunicorn.org/en/stable/design.html>`_
|
||||
for more information.
|
||||
|
||||
Note that *gunicorn* does not
|
||||
work on Windows so the `superser runserver` command is not expected to work
|
||||
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.
|
||||
|
||||
If not using gunicorn, you may want to disable the use of flask-compress
|
||||
by setting `ENABLE_FLASK_COMPRESS = False` in your `superset_config.py`
|
||||
|
||||
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 +204,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
|
||||
-------------
|
||||
@@ -193,7 +221,6 @@ of the parameters you can copy / paste in that configuration module: ::
|
||||
# Superset specific config
|
||||
#---------------------------------------------------------
|
||||
ROW_LIMIT = 5000
|
||||
SUPERSET_WORKERS = 4
|
||||
|
||||
SUPERSET_WEBSERVER_PORT = 8088
|
||||
#---------------------------------------------------------
|
||||
@@ -215,17 +242,29 @@ of the parameters you can copy / paste in that configuration module: ::
|
||||
WTF_CSRF_ENABLED = True
|
||||
# Add endpoints that need to be exempt from CSRF protection
|
||||
WTF_CSRF_EXEMPT_LIST = []
|
||||
# A CSRF token that expires in 1 year
|
||||
WTF_CSRF_TIME_LIMIT = 60 * 60 * 24 * 365
|
||||
|
||||
# Set this API key to enable Mapbox visualizations
|
||||
MAPBOX_API_KEY = ''
|
||||
|
||||
This file also allows you to define configuration parameters used by
|
||||
Flask App Builder, the web framework used by Superset. Please consult
|
||||
All the parameters and default values defined in
|
||||
https://github.com/apache/incubator-superset/blob/master/superset/config.py
|
||||
can be altered in your local ``superset_config.py`` .
|
||||
Administrators will want to
|
||||
read through the file to understand what can be configured locally
|
||||
as well as the default values in place.
|
||||
|
||||
Since ``superset_config.py`` acts as a Flask configuration module, it
|
||||
can be used to alter the settings Flask itself,
|
||||
as well as Flask extensions like ``flask-wtf``, ``flask-cache``,
|
||||
``flask-migrate``, and ``flask-appbuilder``. Flask App Builder, the web
|
||||
framework used by Superset offers many configuration settings. Please consult
|
||||
the `Flask App Builder Documentation
|
||||
<http://flask-appbuilder.readthedocs.org/en/latest/config.html>`_
|
||||
for more information on how to configure Superset.
|
||||
for more information on how to configure it.
|
||||
|
||||
Please make sure to change:
|
||||
Make sure to change:
|
||||
|
||||
* *SQLALCHEMY_DATABASE_URI*, by default it is stored at *~/.superset/superset.db*
|
||||
* *SECRET_KEY*, to a long random string
|
||||
@@ -255,11 +294,15 @@ Here's a list of some of the recommended packages.
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| Presto | ``pip install pyhive`` | ``presto://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| Hive | ``pip install pyhive`` | ``hive://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| Oracle | ``pip install cx_Oracle`` | ``oracle://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| sqlite | | ``sqlite://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| Redshift | ``pip install sqlalchemy-redshift`` | ``postgresql+psycopg2://`` |
|
||||
| Snowflake | ``pip install snowflake-sqlalchemy``| ``snowflake://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| Redshift | ``pip install sqlalchemy-redshift`` | ``redshift+psycopg2://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| MSSQL | ``pip install pymssql`` | ``mssql://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
@@ -277,6 +320,10 @@ Here's a list of some of the recommended packages.
|
||||
| ClickHouse | ``pip install | ``clickhouse://`` |
|
||||
| | sqlalchemy-clickhouse`` | |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| Kylin | ``pip install kylinpy`` | ``kylin://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
| BigQuery | ``pip install pybigquery`` | ``bigquery://`` |
|
||||
+---------------+-------------------------------------+-------------------------------------------------+
|
||||
|
||||
Note that many other database are supported, the main criteria being the
|
||||
existence of a functional SqlAlchemy dialect and Python driver. Googling
|
||||
@@ -315,6 +362,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
|
||||
@@ -324,7 +381,7 @@ It is possible to tweak the database connection information using the
|
||||
parameters exposed by SQLAlchemy. In the ``Database`` edit view, you will
|
||||
find an ``extra`` field as a ``JSON`` blob.
|
||||
|
||||
.. image:: _static/img/tutorial/add_db.png
|
||||
.. image:: images/tutorial/add_db.png
|
||||
:scale: 30 %
|
||||
|
||||
This JSON string contains extra configuration elements. The ``engine_params``
|
||||
@@ -360,6 +417,16 @@ in your config file to point to that function. ::
|
||||
|
||||
SQLALCHEMY_CUSTOM_PASSWORD_STORE = example_lookup_password
|
||||
|
||||
A common pattern is to use environment variables to make secrets available.
|
||||
``SQLALCHEMY_CUSTOM_PASSWORD_STORE`` can also be used for that purpose. ::
|
||||
|
||||
def example_password_as_env_var(url):
|
||||
# assuming the uri looks like
|
||||
# mysql://localhost?superset_user:{SUPERSET_PASSWORD}
|
||||
return url.password.format(os.environ)
|
||||
|
||||
SQLALCHEMY_CUSTOM_PASSWORD_STORE = example_password_as_env_var
|
||||
|
||||
|
||||
SSL Access to databases
|
||||
-----------------------
|
||||
@@ -382,10 +449,10 @@ Druid
|
||||
-----
|
||||
|
||||
* From the UI, enter the information about your clusters in the
|
||||
``Admin->Clusters`` menu by hitting the + sign.
|
||||
`Sources -> Druid Clusters` menu by hitting the + sign.
|
||||
|
||||
* Once the Druid cluster connection information is entered, hit the
|
||||
``Admin->Refresh Metadata`` menu item to populate
|
||||
`Sources -> Refresh Druid Metadata` menu item to populate
|
||||
|
||||
* Navigate to your datasources
|
||||
|
||||
@@ -394,7 +461,7 @@ metadata from your Druid cluster(s)
|
||||
|
||||
|
||||
CORS
|
||||
-----
|
||||
----
|
||||
|
||||
The extra CORS Dependency must be installed:
|
||||
|
||||
@@ -456,8 +523,8 @@ execute beyond the typical web request's timeout (30-60 seconds), it is
|
||||
necessary to configure an asynchronous backend for Superset which consist of:
|
||||
|
||||
* one or many Superset worker (which is implemented as a Celery worker), and
|
||||
can be started with the ``superset worker`` command, run
|
||||
``superset worker --help`` to view the related options
|
||||
can be started with the ``celery worker`` command, run
|
||||
``celery worker --help`` to view the related options.
|
||||
* a celery broker (message queue) for which we recommend using Redis
|
||||
or RabbitMQ
|
||||
* a results backend that defines where the worker will persist the query
|
||||
@@ -477,6 +544,10 @@ have the same configuration.
|
||||
|
||||
CELERY_CONFIG = CeleryConfig
|
||||
|
||||
To start a Celery worker to leverage the configuration run: ::
|
||||
|
||||
celery worker --app=superset.sql_lab:celery_app --pool=gevent -Ofair
|
||||
|
||||
To setup a result backend, you need to pass an instance of a derivative
|
||||
of ``werkzeug.contrib.cache.BaseCache`` to the ``RESULTS_BACKEND``
|
||||
configuration key in your ``superset_config.py``. It's possible to use
|
||||
@@ -498,6 +569,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
|
||||
@@ -512,6 +588,15 @@ in this dictionary are made available for users to use in their SQL.
|
||||
}
|
||||
|
||||
|
||||
Flower is a web based tool for monitoring the Celery cluster which you can
|
||||
install from pip: ::
|
||||
|
||||
pip install flower
|
||||
|
||||
and run via: ::
|
||||
|
||||
celery flower --app=superset.sql_lab:celery_app
|
||||
|
||||
Making your own build
|
||||
---------------------
|
||||
|
||||
@@ -539,7 +624,7 @@ at the ``/simple_page`` url. This can allow you to run other things such
|
||||
as custom data visualization applications alongside Superset, on the
|
||||
same server.
|
||||
|
||||
..code ::
|
||||
.. code-block:: python
|
||||
|
||||
from flask import Blueprint
|
||||
simple_page = Blueprint('simple_page', __name__,
|
||||
@@ -550,3 +635,35 @@ same server.
|
||||
return "Ok"
|
||||
|
||||
BLUEPRINTS = [simple_page]
|
||||
|
||||
StatsD logging
|
||||
--------------
|
||||
|
||||
Superset is instrumented to log events to StatsD if desired. Most endpoints hit
|
||||
are logged as well as key events like query start and end in SQL Lab.
|
||||
|
||||
To setup StatsD logging, it's a matter of configuring the logger in your
|
||||
``superset_config.py``.
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from superset.stats_logger import StatsdStatsLogger
|
||||
STATS_LOGGER = StatsdStatsLogger(host='localhost', port=8125, prefix='superset')
|
||||
|
||||
Note that it's also possible to implement you own logger by deriving
|
||||
``superset.stats_logger.BaseStatsLogger``.
|
||||
|
||||
|
||||
Install Superset with helm in Kubernetes
|
||||
--------------
|
||||
|
||||
You can install Superset into Kubernetes with Helm <https://helm.sh/>. The chart is
|
||||
located in ``install/helm``.
|
||||
|
||||
To install Superset into your Kubernetes:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
helm upgrade --install superset ./install/helm/superset
|
||||
|
||||
Note that the above command will install Superset into ``default`` namespace of your Kubernetes cluster.
|
||||
|
||||
10
docs/misc.rst
Normal file
@@ -0,0 +1,10 @@
|
||||
|
||||
Misc
|
||||
----
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
visualization
|
||||
videos
|
||||
import_export_datasources
|
||||
3
docs/requirements.txt
Normal file
@@ -0,0 +1,3 @@
|
||||
sphinx==1.7.1
|
||||
sphinx-rtd-theme==0.2.4
|
||||
sphinxcontrib.youtube==0.1.2
|
||||
@@ -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.
|
||||
@@ -70,7 +70,7 @@ sure the users with limited access have [only] the Gamma role assigned to
|
||||
them. Second, create a new role (``Menu -> Security -> List Roles``) and
|
||||
click the ``+`` sign.
|
||||
|
||||
.. image:: _static/img/create_role.png
|
||||
.. image:: images/create_role.png
|
||||
:scale: 50 %
|
||||
|
||||
This new window allows you to give this new role a name, attribute it to users
|
||||
|
||||
@@ -4,6 +4,11 @@ SQL Lab
|
||||
SQL Lab is a modern, feature-rich SQL IDE written in
|
||||
`React <https://facebook.github.io/react/>`_.
|
||||
|
||||
------
|
||||
|
||||
.. image:: images/screenshots/sqllab.png
|
||||
|
||||
------
|
||||
|
||||
Feature Overview
|
||||
----------------
|
||||
@@ -48,17 +53,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**.
|
||||
|
||||
@@ -1,31 +1,31 @@
|
||||
Tutorial for Superset Administrators
|
||||
====================================
|
||||
Tutorial - Creating your first dashboard
|
||||
========================================
|
||||
|
||||
This tutorial targets a Superset administrator: someone configuring Superset
|
||||
for an organization on behalf of users. We'll show you how to connect Superset
|
||||
to a new database and configure a table in that database for analysis. You'll
|
||||
also explore the data you've exposed and add a visualization to a dashboard
|
||||
This tutorial targets someone who wants to create charts and dashboards
|
||||
in Superset. We'll show you how to connect Superset
|
||||
to a new database and configure a table in that database for analysis. You'll
|
||||
also explore the data you've exposed and add a visualization to a dashboard
|
||||
so that you get a feel for the end-to-end user experience.
|
||||
|
||||
Connecting to a new database
|
||||
----------------------------
|
||||
|
||||
We assume you already have a database configured and can connect to it from the
|
||||
instance on which you’re running Superset. If you’re just testing Superset and
|
||||
want to explore sample data, you can load some
|
||||
instance on which you’re running Superset. If you’re just testing Superset and
|
||||
want to explore sample data, you can load some
|
||||
`sample PostgreSQL datasets <https://wiki.postgresql.org/wiki/Sample_Databases>`_
|
||||
into a fresh DB, or configure the
|
||||
into a fresh DB, or configure the
|
||||
`example weather data <https://github.com/dylburger/noaa-ghcn-weather-data>`_
|
||||
we use here.
|
||||
|
||||
Under the **Sources** menu, select the *Databases* option:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_01_sources_database.png
|
||||
.. image:: images/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
|
||||
.. image:: images/tutorial/tutorial_02_add_database.png
|
||||
:scale: 70%
|
||||
|
||||
You can configure a number of advanced options on this page, but for
|
||||
@@ -33,12 +33,12 @@ this walkthrough, you’ll only need to do **two things**:
|
||||
|
||||
1. Name your database connection:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_03_database_name.png
|
||||
.. image:: images/tutorial/tutorial_03_database_name.png
|
||||
:scale: 70%
|
||||
|
||||
2. Provide the SQLAlchemy Connection URI and test the connection:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_04_sqlalchemy_connection_string.png
|
||||
.. image:: images/tutorial/tutorial_04_sqlalchemy_connection_string.png
|
||||
:scale: 70%
|
||||
|
||||
This example shows the connection string for our test weather database.
|
||||
@@ -51,19 +51,19 @@ Click the **Test Connection** button to confirm things work end to end.
|
||||
Once Superset can successfully connect and authenticate, you should see
|
||||
a popup like this:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_05_connection_popup.png
|
||||
.. image:: images/tutorial/tutorial_05_connection_popup.png
|
||||
:scale: 50%
|
||||
|
||||
Moreover, you should also see the list of tables Superset can read from
|
||||
the schema you’re connected to, at the bottom of the page:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_06_list_of_tables.png
|
||||
.. image:: images/tutorial/tutorial_06_list_of_tables.png
|
||||
:scale: 70%
|
||||
|
||||
If the connection looks good, save the configuration by clicking the **Save**
|
||||
button at the bottom of the page:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_07_save_button.png
|
||||
.. image:: images/tutorial/tutorial_07_save_button.png
|
||||
:scale: 70%
|
||||
|
||||
Adding a new table
|
||||
@@ -74,25 +74,25 @@ to Superset that you’d like to query.
|
||||
|
||||
Under the **Sources** menu, select the *Tables* option:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_08_sources_tables.png
|
||||
.. image:: images/tutorial/tutorial_08_sources_tables.png
|
||||
:scale: 70%
|
||||
|
||||
On the resulting page, click on the green plus sign, near the top left:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_09_add_new_table.png
|
||||
.. image:: images/tutorial/tutorial_09_add_new_table.png
|
||||
:scale: 70%
|
||||
|
||||
You only need a few pieces of information to add a new table to Superset:
|
||||
|
||||
* The name of the table
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_10_table_name.png
|
||||
.. image:: images/tutorial/tutorial_10_table_name.png
|
||||
:scale: 70%
|
||||
|
||||
* The target database from the **Database** drop-down menu (i.e. the one
|
||||
you just added above)
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_11_choose_db.png
|
||||
.. image:: images/tutorial/tutorial_11_choose_db.png
|
||||
:scale: 70%
|
||||
|
||||
* Optionally, the database schema. If the table exists in the “default” schema
|
||||
@@ -101,13 +101,13 @@ You only need a few pieces of information to add a new table to Superset:
|
||||
|
||||
Click on the **Save** button to save the configuration:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_07_save_button.png
|
||||
.. image:: images/tutorial/tutorial_07_save_button.png
|
||||
:scale: 70%
|
||||
|
||||
When redirected back to the list of tables, you should see a message indicating
|
||||
that your table was created:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_12_table_creation_success_msg.png
|
||||
.. image:: images/tutorial/tutorial_12_table_creation_success_msg.png
|
||||
:scale: 70%
|
||||
|
||||
This message also directs you to edit the table configuration. We’ll edit a limited
|
||||
@@ -116,7 +116,7 @@ a more advanced tutorial.
|
||||
|
||||
Click on the edit button next to the table you’ve created:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_13_edit_table_config.png
|
||||
.. image:: images/tutorial/tutorial_13_edit_table_config.png
|
||||
:scale: 70%
|
||||
|
||||
On the resulting page, click on the **List Table Column** tab. Here, you’ll define the
|
||||
@@ -136,7 +136,7 @@ Here’s how we’ve configured fields for the weather data. Even for measures l
|
||||
weather measurements (precipitation, snowfall, etc.), it’s ideal to group and filter
|
||||
by these values:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_14_field_config.png
|
||||
.. image:: images/tutorial/tutorial_14_field_config.png
|
||||
|
||||
As with the configurations above, click the **Save** button to save these settings.
|
||||
|
||||
@@ -146,17 +146,17 @@ Exploring your data
|
||||
To start exploring your data, simply click on the table name you just created in
|
||||
the list of available tables:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_15_click_table_name.png
|
||||
.. image:: images/tutorial/tutorial_15_click_table_name.png
|
||||
|
||||
By default, you’ll be presented with a Table View:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_16_datasource_chart_type.png
|
||||
.. image:: images/tutorial/tutorial_16_datasource_chart_type.png
|
||||
|
||||
Let’s walk through a basic query to get the count of all records in our table.
|
||||
First, we’ll need to change the **Since** filter to capture the range of our data.
|
||||
You can use simple phrases to apply these filters, like "3 years ago":
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_17_choose_time_range.png
|
||||
.. image:: images/tutorial/tutorial_17_choose_time_range.png
|
||||
|
||||
The upper limit for time, the **Until** filter, defaults to "now", which may or may
|
||||
not be what you want.
|
||||
@@ -164,25 +164,25 @@ not be what you want.
|
||||
Look for the Metrics section under the **GROUP BY** header, and start typing "Count"
|
||||
- you’ll see a list of metrics matching what you type:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_18_choose_metric.png
|
||||
.. image:: images/tutorial/tutorial_18_choose_metric.png
|
||||
|
||||
Select the *COUNT(\*)* metric, then click the green **Query** button near the top
|
||||
of the explore:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_19_click_query.png
|
||||
.. image:: images/tutorial/tutorial_19_click_query.png
|
||||
|
||||
You’ll see your results in the table:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_20_count_star_result.png
|
||||
.. image:: images/tutorial/tutorial_20_count_star_result.png
|
||||
|
||||
Let’s group this by the *weather_description* field to get the count of records by
|
||||
the type of weather recorded by adding it to the *Group by* section:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_21_group_by.png
|
||||
.. image:: images/tutorial/tutorial_21_group_by.png
|
||||
|
||||
and run the query:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_22_group_by_result.png
|
||||
.. image:: images/tutorial/tutorial_22_group_by_result.png
|
||||
|
||||
Let’s find a more useful data point: the top 10 times and places that recorded the
|
||||
highest temperature in 2015.
|
||||
@@ -190,11 +190,11 @@ highest temperature in 2015.
|
||||
We replace *weather_description* with *latitude*, *longitude* and *measurement_date* in the
|
||||
*Group by* section:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_23_group_by_more_dimensions.png
|
||||
.. image:: images/tutorial/tutorial_23_group_by_more_dimensions.png
|
||||
|
||||
And replace *COUNT(\*)* with *max__measurement_flag*:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_24_max_metric.png
|
||||
.. image:: images/tutorial/tutorial_24_max_metric.png
|
||||
|
||||
The *max__measurement_flag* metric was created when we checked the box under **Max** and
|
||||
next to the *measurement_flag* field, indicating that this field was numeric and that
|
||||
@@ -206,16 +206,16 @@ precipitation and temperature). Therefore, we must filter our query only on reco
|
||||
where the *weather_description* is equal to "Maximum temperature", which we do in
|
||||
the **Filters** section at the bottom of the explore:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_25_max_temp_filter.png
|
||||
.. image:: images/tutorial/tutorial_25_max_temp_filter.png
|
||||
|
||||
Finally, since we only care about the top 10 measurements, we limit our results to
|
||||
10 records using the *Row limit* option under the **Options** header:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_26_row_limit.png
|
||||
.. image:: images/tutorial/tutorial_26_row_limit.png
|
||||
|
||||
We click **Query** and get the following results:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_27_top_10_max_temps.png
|
||||
.. image:: images/tutorial/tutorial_27_top_10_max_temps.png
|
||||
|
||||
In this dataset, the maximum temperature is recorded in tenths of a degree Celsius.
|
||||
The top value of 1370, measured in the middle of Nevada, is equal to 137 C, or roughly
|
||||
@@ -240,20 +240,20 @@ a dashboard.
|
||||
|
||||
We change the Chart Type to "Distribution - Bar Chart":
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_28_bar_chart.png
|
||||
.. image:: images/tutorial/tutorial_28_bar_chart.png
|
||||
|
||||
Our filter on Maximum temperature measurements was retained, but the query and
|
||||
formatting options are dependent on the chart type, so you’ll have to set the
|
||||
values again:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_29_bar_chart_series_metrics.png
|
||||
.. image:: images/tutorial/tutorial_29_bar_chart_series_metrics.png
|
||||
|
||||
You should note the extensive formatting options for this chart: the ability to
|
||||
set axis labels, margins, ticks, etc. To make the data presentable to a broad
|
||||
audience, you’ll want to apply many of these to slices that end up in dashboards.
|
||||
For now, though, we run our query and get the following chart:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_30_bar_chart_results.png
|
||||
.. image:: images/tutorial/tutorial_30_bar_chart_results.png
|
||||
:scale: 70%
|
||||
|
||||
Creating a slice and dashboard
|
||||
@@ -265,39 +265,39 @@ a saved query is called a **Slice**.
|
||||
To create a slice, click the **Save as** button near the top-left of the
|
||||
explore:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_19_click_query.png
|
||||
.. image:: images/tutorial/tutorial_19_click_query.png
|
||||
|
||||
A popup should appear, asking you to name the slice, and optionally add it to a
|
||||
dashboard. Since we haven’t yet created any dashboards, we can create one and
|
||||
immediately add our slice to it. Let’s do it:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_31_save_slice_to_dashboard.png
|
||||
.. image:: images/tutorial/tutorial_31_save_slice_to_dashboard.png
|
||||
:scale: 70%
|
||||
|
||||
Click Save, which will direct you back to your original query. We see that
|
||||
our slice and dashboard were successfully created:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_32_save_slice_confirmation.png
|
||||
.. image:: images/tutorial/tutorial_32_save_slice_confirmation.png
|
||||
:scale: 70%
|
||||
|
||||
Let’s check out our new dashboard. We click on the **Dashboards** menu:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_33_dashboard.png
|
||||
.. image:: images/tutorial/tutorial_33_dashboard.png
|
||||
|
||||
and find the dashboard we just created:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_34_weather_dashboard.png
|
||||
.. image:: images/tutorial/tutorial_34_weather_dashboard.png
|
||||
|
||||
Things seemed to have worked - our slice is here!
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_35_slice_on_dashboard.png
|
||||
.. image:: images/tutorial/tutorial_35_slice_on_dashboard.png
|
||||
:scale: 70%
|
||||
|
||||
But it’s a bit smaller than we might like. Luckily, you can adjust the size
|
||||
of slices in a dashboard by clicking, holding and dragging the bottom-right
|
||||
corner to your desired dimensions:
|
||||
|
||||
.. image:: _static/img/tutorial/tutorial_36_adjust_dimensions.gif
|
||||
.. image:: images/tutorial/tutorial_36_adjust_dimensions.gif
|
||||
:scale: 120%
|
||||
|
||||
After adjusting the size, you’ll be asked to click on the icon near the
|
||||
|
||||
@@ -1,54 +1,5 @@
|
||||
Videos
|
||||
======
|
||||
|
||||
Here is a collection of short videos showing different aspect
|
||||
of Superset.
|
||||
|
||||
Quick Intro
|
||||
'''''''''''
|
||||
This video demonstrates how Superset works at a high level, it shows how
|
||||
to navigate through datasets and dashboards that are already available.
|
||||
|
||||
.. youtube:: https://www.youtube.com/watch?v=3Txm_nj_R7M
|
||||
|
||||
Dashboard Creation
|
||||
''''''''''''''''''
|
||||
This video walk you through the creation of a simple dashboard as a
|
||||
collection of data slices.
|
||||
|
||||
- Coming soon!
|
||||
|
||||
Dashboard Filtering
|
||||
'''''''''''''''''''
|
||||
This video shows how to create dynamic filters on dashboards, how to
|
||||
immunize certain widgets from being affected by filters.
|
||||
|
||||
- Coming soon!
|
||||
|
||||
Customize CSS and dashboard themes
|
||||
''''''''''''''''''''''''''''''''''
|
||||
A quick walkthrough on how to apply existing CSS templates, alter them and
|
||||
create new ones.
|
||||
|
||||
- Coming soon!
|
||||
|
||||
Slice Annotations
|
||||
'''''''''''''''''
|
||||
A short video on how to annotate your charts, the markdown language and
|
||||
to toggle them on dashboards.
|
||||
|
||||
- Coming soon!
|
||||
|
||||
Adding a Table
|
||||
''''''''''''''
|
||||
This videos shows you how to expose a new table in Superset, and how to
|
||||
define the semantics on how this can be accessed by others in the ``Explore``
|
||||
and ``Dashboard`` views.
|
||||
|
||||
- Coming soon!
|
||||
|
||||
Define SQL Expressions
|
||||
''''''''''''''''''''''
|
||||
A walkthrough on how to create your own derived dimensions and metrics.
|
||||
|
||||
- Coming soon!
|
||||
.. note ::
|
||||
This section of the documentation has yet to be filled in.
|
||||
|
||||
7
gen_changelog.sh
Executable file
@@ -0,0 +1,7 @@
|
||||
# requires github-changes, run
|
||||
# `npm install -g github-changes`
|
||||
# requires $GITHUB_TOKEN to be set
|
||||
|
||||
# usage: ./github-changes 0.20.0 0.20.1
|
||||
# will overwrites the local CHANGELOG.md, somehow you need to merge it in
|
||||
github-changes -o apache -r incubator-superset --token $GITHUB_TOKEN --between-tags $1...$2
|
||||
21
install/helm/superset/.helmignore
Normal file
@@ -0,0 +1,21 @@
|
||||
# Patterns to ignore when building packages.
|
||||
# This supports shell glob matching, relative path matching, and
|
||||
# negation (prefixed with !). Only one pattern per line.
|
||||
.DS_Store
|
||||
# Common VCS dirs
|
||||
.git/
|
||||
.gitignore
|
||||
.bzr/
|
||||
.bzrignore
|
||||
.hg/
|
||||
.hgignore
|
||||
.svn/
|
||||
# Common backup files
|
||||
*.swp
|
||||
*.bak
|
||||
*.tmp
|
||||
*~
|
||||
# Various IDEs
|
||||
.project
|
||||
.idea/
|
||||
*.tmproj
|
||||
9
install/helm/superset/Chart.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
apiVersion: v1
|
||||
appVersion: "1.0"
|
||||
description: A Helm chart for Kubernetes
|
||||
name: superset
|
||||
maintainers:
|
||||
- name: Chuan-Yen Chiang
|
||||
email: cychiang0823@gmail.com
|
||||
url: https://github.com/cychiang
|
||||
version: 0.1.0
|
||||
19
install/helm/superset/templates/NOTES.txt
Normal file
@@ -0,0 +1,19 @@
|
||||
1. Get the application URL by running these commands:
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- range .Values.ingress.hosts }}
|
||||
http{{ if $.Values.ingress.tls }}s{{ end }}://{{ . }}{{ $.Values.ingress.path }}
|
||||
{{- end }}
|
||||
{{- else if contains "NodePort" .Values.service.type }}
|
||||
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "superset.fullname" . }})
|
||||
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
|
||||
echo http://$NODE_IP:$NODE_PORT
|
||||
{{- else if contains "LoadBalancer" .Values.service.type }}
|
||||
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
|
||||
You can watch the status of by running 'kubectl get svc -w {{ template "superset.fullname" . }}'
|
||||
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "superset.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
|
||||
echo http://$SERVICE_IP:{{ .Values.service.port }}
|
||||
{{- else if contains "ClusterIP" .Values.service.type }}
|
||||
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "superset.name" . }},release={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
|
||||
echo "Visit http://127.0.0.1:8080 to use your application"
|
||||
kubectl port-forward $POD_NAME 8080:80
|
||||
{{- end }}
|
||||
32
install/helm/superset/templates/_helpers.tpl
Normal file
@@ -0,0 +1,32 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "superset.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "superset.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "superset.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
11
install/helm/superset/templates/configmap.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: superset-configmap
|
||||
labels:
|
||||
app: {{ template "superset.name" . }}
|
||||
chart: {{ template "superset.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
data:
|
||||
{{ (.Files.Glob "config/*").AsConfig | indent 2 }}
|
||||
50
install/helm/superset/templates/deployment.yaml
Normal file
@@ -0,0 +1,50 @@
|
||||
apiVersion: apps/v1beta2
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "superset.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "superset.name" . }}
|
||||
chart: {{ template "superset.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ template "superset.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ template "superset.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
volumeMounts:
|
||||
- name: superset-config
|
||||
mountPath: /etc/superset/
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 8088
|
||||
protocol: TCP
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
- name: "superset-config"
|
||||
configMap:
|
||||
name: superset-configmap
|
||||
38
install/helm/superset/templates/ingress.yaml
Normal file
@@ -0,0 +1,38 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "superset.fullname" . -}}
|
||||
{{- $ingressPath := .Values.ingress.path -}}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $fullName }}
|
||||
labels:
|
||||
app: {{ template "superset.name" . }}
|
||||
chart: {{ template "superset.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml . | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ . }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ $ingressPath }}
|
||||
backend:
|
||||
serviceName: {{ $fullName }}
|
||||
servicePort: http
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
19
install/helm/superset/templates/service.yaml
Normal file
@@ -0,0 +1,19 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ template "superset.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "superset.name" . }}
|
||||
chart: {{ template "superset.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
name: http
|
||||
selector:
|
||||
app: {{ template "superset.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
45
install/helm/superset/values.yaml
Normal file
@@ -0,0 +1,45 @@
|
||||
# Default values for superset.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
repository: amancevice/superset
|
||||
tag: latest
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
service:
|
||||
type: NodePort
|
||||
port: 8088
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
path: /
|
||||
hosts:
|
||||
- chart-example.local
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - chart-example.local
|
||||
|
||||
resources: {}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
@@ -1,2 +0,0 @@
|
||||
#!/bin/bash
|
||||
pylint superset --errors-only
|
||||
8
requirements-dev.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
flask-cors==3.0.3
|
||||
ipdb==0.11
|
||||
mysqlclient==1.3.12
|
||||
psycopg2==2.7.4
|
||||
redis==2.10.6
|
||||
statsd==3.2.2
|
||||
tox==2.9.1
|
||||
console_log==0.2.10
|
||||
41
requirements.txt
Normal file
@@ -0,0 +1,41 @@
|
||||
bleach==2.1.2
|
||||
boto3==1.4.7
|
||||
celery==4.1.0
|
||||
colorama==0.3.9
|
||||
cryptography==1.9
|
||||
flask==0.12.2
|
||||
flask-appbuilder==1.10.0
|
||||
flask-caching==1.4.0
|
||||
flask-compress==1.4.0
|
||||
flask-migrate==2.1.1
|
||||
flask-script==2.0.6
|
||||
flask-testing==0.7.1
|
||||
flask-wtf==0.14.2
|
||||
flower==0.9.2
|
||||
future==0.16.0
|
||||
geopy==1.11.0
|
||||
gunicorn==19.8.0
|
||||
humanize==0.5.1
|
||||
idna==2.6
|
||||
markdown==2.6.11
|
||||
pandas==0.22.0
|
||||
parsedatetime==2.0.0
|
||||
pathlib2==2.3.0
|
||||
polyline==1.3.2
|
||||
pydruid==0.4.3
|
||||
pyhive==0.5.1
|
||||
python-dateutil==2.6.1
|
||||
python-geohash==0.8.5
|
||||
pyyaml==3.12
|
||||
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.11.0
|
||||
thrift-sasl==0.3.0
|
||||
unicodecsv==0.14.1
|
||||
unidecode==1.0.22
|
||||
contextlib2==0.5.5
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
echo $DB
|
||||
rm -f .coverage
|
||||
export SUPERSET_CONFIG=tests.superset_test_config
|
||||
set -e
|
||||
superset/bin/superset version -v
|
||||
export SOLO_TEST=1
|
||||
# e.g. tests.core_tests:CoreTests.test_templated_sql_json
|
||||
nosetests $1
|
||||
12
run_tests.sh
@@ -1,12 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
echo $DB
|
||||
rm ~/.superset/unittests.db
|
||||
rm ~/.superset/celerydb.sqlite
|
||||
rm ~/.superset/celery_results.sqlite
|
||||
rm -f .coverage
|
||||
export SUPERSET_CONFIG=tests.superset_test_config
|
||||
set -e
|
||||
superset/bin/superset db upgrade
|
||||
superset/bin/superset version -v
|
||||
python setup.py nosetests
|
||||
coveralls
|
||||
@@ -1,6 +1,13 @@
|
||||
from superset import sm
|
||||
# -*- coding: utf-8 -*-
|
||||
from __future__ import absolute_import
|
||||
from __future__ import division
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from collections import defaultdict
|
||||
|
||||
from superset import sm
|
||||
|
||||
|
||||
def cleanup_permissions():
|
||||
# 1. Clean up duplicates.
|
||||
|
||||
19
setup.cfg
@@ -10,19 +10,16 @@ license = Apache License, Version 2.0
|
||||
packages = superset
|
||||
|
||||
[build_sphinx]
|
||||
source-dir = docs/
|
||||
build-dir = docs/_build
|
||||
all_files = 1
|
||||
source-dir = docs
|
||||
build-dir = docs/_build
|
||||
all_files = 1
|
||||
|
||||
[upload_sphinx]
|
||||
upload-dir = docs/_build/html
|
||||
|
||||
[nosetests]
|
||||
verbosity=3
|
||||
detailed-errors=1
|
||||
with-coverage=1
|
||||
nocapture=1
|
||||
cover-package=superset
|
||||
|
||||
[pycodestyle]
|
||||
max-line-length=90
|
||||
verbosity = 3
|
||||
detailed-errors = 1
|
||||
with-coverage = 1
|
||||
nocapture = 1
|
||||
cover-package = superset
|
||||
|
||||
111
setup.py
@@ -1,7 +1,14 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from __future__ import absolute_import
|
||||
from __future__ import division
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import json
|
||||
import os
|
||||
import subprocess
|
||||
import json
|
||||
from setuptools import setup, find_packages
|
||||
|
||||
from setuptools import find_packages, setup
|
||||
|
||||
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
|
||||
PACKAGE_DIR = os.path.join(BASE_DIR, 'superset', 'static', 'assets')
|
||||
@@ -14,18 +21,19 @@ def get_git_sha():
|
||||
try:
|
||||
s = str(subprocess.check_output(['git', 'rev-parse', 'HEAD']))
|
||||
return s.strip()
|
||||
except:
|
||||
return ""
|
||||
except Exception:
|
||||
return ''
|
||||
|
||||
|
||||
GIT_SHA = get_git_sha()
|
||||
version_info = {
|
||||
'GIT_SHA': GIT_SHA,
|
||||
'version': version_string,
|
||||
}
|
||||
print("-==-" * 15)
|
||||
print("VERSION: " + version_string)
|
||||
print("GIT SHA: " + GIT_SHA)
|
||||
print("-==-" * 15)
|
||||
print('-==-' * 15)
|
||||
print('VERSION: ' + version_string)
|
||||
print('GIT SHA: ' + GIT_SHA)
|
||||
print('-==-' * 15)
|
||||
|
||||
with open(os.path.join(PACKAGE_DIR, 'version_info.json'), 'w') as version_file:
|
||||
json.dump(version_info, version_file)
|
||||
@@ -34,64 +42,69 @@ with open(os.path.join(PACKAGE_DIR, 'version_info.json'), 'w') as version_file:
|
||||
setup(
|
||||
name='superset',
|
||||
description=(
|
||||
"A interactive data visualization platform build on SqlAlchemy "
|
||||
"and druid.io"),
|
||||
'A interactive data visualization platform build on SqlAlchemy '
|
||||
'and druid.io'),
|
||||
version=version_string,
|
||||
packages=find_packages(),
|
||||
include_package_data=True,
|
||||
zip_safe=False,
|
||||
scripts=['superset/bin/superset'],
|
||||
install_requires=[
|
||||
'boto3==1.4.4',
|
||||
'celery==3.1.25',
|
||||
'colorama==0.3.9',
|
||||
'cryptography==1.9',
|
||||
'flask==0.12.2',
|
||||
'flask-appbuilder==1.9.4',
|
||||
'flask-cache==0.13.1',
|
||||
'flask-migrate==2.0.3',
|
||||
'flask-script==2.0.5',
|
||||
'flask-sqlalchemy==2.1',
|
||||
'flask-testing==0.6.2',
|
||||
'flask-wtf==0.14.2',
|
||||
'flower==0.9.1',
|
||||
'bleach',
|
||||
'boto3>=1.4.6',
|
||||
'celery',
|
||||
'colorama',
|
||||
'contextlib2',
|
||||
'cryptography',
|
||||
'flask<1.0.0',
|
||||
'flask-appbuilder',
|
||||
'flask-caching',
|
||||
'flask-compress',
|
||||
'flask-migrate',
|
||||
'flask-script',
|
||||
'flask-testing',
|
||||
'flask-wtf',
|
||||
'flower', # deprecated
|
||||
'future>=0.16.0, <0.17',
|
||||
'humanize==0.5.1',
|
||||
'gunicorn==19.7.1',
|
||||
'idna==2.5',
|
||||
'markdown==2.6.8',
|
||||
'pandas==0.20.2',
|
||||
'parsedatetime==2.0.0',
|
||||
'pydruid==0.3.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',
|
||||
'geopy',
|
||||
'gunicorn', # deprecated
|
||||
'humanize',
|
||||
'idna',
|
||||
'markdown',
|
||||
'pandas',
|
||||
'parsedatetime',
|
||||
'pathlib2',
|
||||
'polyline',
|
||||
'pydruid>=0.4.3',
|
||||
'pyhive>=0.4.0',
|
||||
'python-dateutil',
|
||||
'python-geohash',
|
||||
'pyyaml>=3.11',
|
||||
'requests',
|
||||
'simplejson',
|
||||
'six',
|
||||
'sqlalchemy',
|
||||
'sqlalchemy-utils',
|
||||
'sqlparse',
|
||||
'thrift>=0.9.3',
|
||||
'thrift-sasl>=0.2.1',
|
||||
'unicodecsv',
|
||||
'unidecode>=0.04.21',
|
||||
],
|
||||
extras_require={
|
||||
'cors': ['Flask-Cors>=2.0.0'],
|
||||
'cors': ['flask-cors>=2.0.0'],
|
||||
'console_log': ['console_log==0.2.10'],
|
||||
},
|
||||
tests_require=[
|
||||
'codeclimate-test-reporter',
|
||||
'coverage',
|
||||
'mock',
|
||||
'nose',
|
||||
'redis',
|
||||
],
|
||||
author='Maxime Beauchemin',
|
||||
author_email='maximebeauchemin@gmail.com',
|
||||
url='https://github.com/airbnb/superset',
|
||||
url='https://github.com/apache/incubator-superset',
|
||||
download_url=(
|
||||
'https://github.com/airbnb/superset/tarball/' + version_string),
|
||||
'https://github.com'
|
||||
'/apache/incubator-superset/tarball/' + version_string
|
||||
),
|
||||
classifiers=[
|
||||
'Programming Language :: Python :: 2.7',
|
||||
'Programming Language :: Python :: 3.4',
|
||||
'Programming Language :: Python :: 3.5',
|
||||
'Programming Language :: Python :: 3.6',
|
||||
],
|
||||
)
|
||||
|
||||
@@ -1,28 +1,34 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# pylint: disable=C,R,W
|
||||
"""Package's main module!"""
|
||||
from __future__ import absolute_import
|
||||
from __future__ import division
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import json
|
||||
import logging
|
||||
from logging.handlers import TimedRotatingFileHandler
|
||||
|
||||
import json
|
||||
import os
|
||||
|
||||
from flask import Flask, redirect
|
||||
from flask_appbuilder import SQLA, AppBuilder, IndexView
|
||||
from flask_appbuilder import AppBuilder, IndexView, SQLA
|
||||
from flask_appbuilder.baseviews import expose
|
||||
from flask_compress import Compress
|
||||
from flask_migrate import Migrate
|
||||
from flask_wtf.csrf import CSRFProtect
|
||||
from werkzeug.contrib.fixers import ProxyFix
|
||||
|
||||
from superset import config, utils
|
||||
from superset.connectors.connector_registry import ConnectorRegistry
|
||||
from superset import utils, config # noqa
|
||||
from superset.security import SupersetSecurityManager
|
||||
|
||||
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)
|
||||
|
||||
@@ -43,7 +49,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):
|
||||
@@ -67,13 +73,15 @@ for bp in conf.get('BLUEPRINTS'):
|
||||
print("Registering blueprint: '{}'".format(bp.name))
|
||||
app.register_blueprint(bp)
|
||||
except Exception as e:
|
||||
print("blueprint registration failed")
|
||||
print('blueprint registration failed')
|
||||
logging.exception(e)
|
||||
|
||||
if conf.get('SILENCE_FAB'):
|
||||
logging.getLogger('flask_appbuilder').setLevel(logging.ERROR)
|
||||
|
||||
if not app.debug:
|
||||
if app.debug:
|
||||
app.logger.setLevel(logging.DEBUG)
|
||||
else:
|
||||
# In production mode, add log handler to sys.stderr.
|
||||
app.logger.addHandler(logging.StreamHandler())
|
||||
app.logger.setLevel(logging.INFO)
|
||||
@@ -92,7 +100,7 @@ utils.pessimistic_connection_handling(db.engine)
|
||||
cache = utils.setup_cache(app, conf.get('CACHE_CONFIG'))
|
||||
tables_cache = utils.setup_cache(app, conf.get('TABLE_NAMES_CACHE_CONFIG'))
|
||||
|
||||
migrate = Migrate(app, db, directory=APP_DIR + "/migrations")
|
||||
migrate = Migrate(app, db, directory=APP_DIR + '/migrations')
|
||||
|
||||
# Logging configuration
|
||||
logging.basicConfig(format=app.config.get('LOG_FORMAT'))
|
||||
@@ -145,21 +153,39 @@ class MyIndexView(IndexView):
|
||||
return redirect('/superset/welcome')
|
||||
|
||||
|
||||
custom_sm = app.config.get('CUSTOM_SECURITY_MANAGER') or SupersetSecurityManager
|
||||
if not issubclass(custom_sm, SupersetSecurityManager):
|
||||
raise Exception(
|
||||
"""Your CUSTOM_SECURITY_MANAGER must now extend SupersetSecurityManager,
|
||||
not FAB's security manager.
|
||||
See [4565] in UPDATING.md""")
|
||||
|
||||
appbuilder = AppBuilder(
|
||||
app,
|
||||
db.session,
|
||||
base_template='superset/base.html',
|
||||
indexview=MyIndexView,
|
||||
security_manager_class=app.config.get("CUSTOM_SECURITY_MANAGER"))
|
||||
security_manager_class=custom_sm,
|
||||
update_perms=utils.get_update_perms_flag(),
|
||||
)
|
||||
|
||||
sm = appbuilder.sm
|
||||
security_manager = appbuilder.sm
|
||||
|
||||
get_session = appbuilder.get_session
|
||||
results_backend = app.config.get("RESULTS_BACKEND")
|
||||
results_backend = app.config.get('RESULTS_BACKEND')
|
||||
|
||||
# Registering sources
|
||||
module_datasource_map = app.config.get("DEFAULT_MODULE_DS_MAP")
|
||||
module_datasource_map.update(app.config.get("ADDITIONAL_MODULE_DS_MAP"))
|
||||
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)
|
||||
|
||||
# Flask-Compress
|
||||
if conf.get('ENABLE_FLASK_COMPRESS'):
|
||||
Compress(app)
|
||||
|
||||
# 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
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"presets" : ["airbnb", "es2015", "react"],
|
||||
"presets" : ["airbnb"],
|
||||
}
|
||||
|
||||
@@ -38,5 +38,8 @@
|
||||
"react/no-unescaped-entities": 0,
|
||||
"react/no-unused-prop-types": 0,
|
||||
"react/no-string-refs": 0,
|
||||
"indent": 0,
|
||||
"no-multi-spaces": 0,
|
||||
"padded-blocks": 0,
|
||||
}
|
||||
}
|
||||
|
||||
|
Before Width: | Height: | Size: 6.6 KiB After Width: | Height: | Size: 6.6 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 6.8 KiB |
BIN
superset/assets/images/screenshots/bank_dash.png
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
superset/assets/images/screenshots/deckgl_dash.png
Normal file
|
After Width: | Height: | Size: 6.5 MiB |
BIN
superset/assets/images/screenshots/explore.png
Normal file
|
After Width: | Height: | Size: 659 KiB |
BIN
superset/assets/images/screenshots/sqllab.png
Normal file
|
After Width: | Height: | Size: 503 KiB |
BIN
superset/assets/images/screenshots/visualizations.png
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
|
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 |
BIN
superset/assets/images/viz_thumbnails/deck_grid.png
Normal file
|
After Width: | Height: | Size: 140 KiB |
BIN
superset/assets/images/viz_thumbnails/deck_hex.png
Normal file
|
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 |
BIN
superset/assets/images/viz_thumbnails/deck_scatter.png
Normal file
|
After Width: | Height: | Size: 117 KiB |
BIN
superset/assets/images/viz_thumbnails/deck_screengrid.png
Normal file
|
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 |
BIN
superset/assets/images/viz_thumbnails/line_multi.png
Normal file
|
After Width: | Height: | Size: 53 KiB |
|
Before Width: | Height: | Size: 220 KiB After Width: | Height: | Size: 84 KiB |