chore: pre-commit run --all-files (#10500)
Co-authored-by: John Bodley <john.bodley@airbnb.com>
|
@ -19,7 +19,7 @@ jobs:
|
|||
FOSSA_API_KEY: ${{ secrets.FOSSA_API_KEY }}
|
||||
run: |
|
||||
set -eo pipefail
|
||||
if [[ "${{github.event_name}}" != "pull_request" ]]; then
|
||||
if [[ "${{github.event_name}}" != "pull_request" ]]; then
|
||||
./scripts/fossa.sh
|
||||
exit 0
|
||||
fi
|
||||
|
@ -30,7 +30,7 @@ jobs:
|
|||
cat<<EOF
|
||||
CHANGED FILES:
|
||||
$FILES
|
||||
|
||||
|
||||
EOF
|
||||
|
||||
if [[ "${FILES}" =~ (.*package*\.json|requirements.*\.txt|setup\.py) ]]; then
|
||||
|
|
|
@ -35,7 +35,7 @@ jobs:
|
|||
with:
|
||||
msg: |
|
||||
### WARNING: Prefer TypeScript
|
||||
|
||||
|
||||
Looks like your PR contains new `.js` or `.jsx` files:
|
||||
|
||||
```
|
||||
|
|
|
@ -39,4 +39,5 @@ repos:
|
|||
- id: check-docstring-first
|
||||
- id: check-added-large-files
|
||||
- id: check-yaml
|
||||
exclude: ^helm/superset/templates/
|
||||
- id: debug-statements
|
||||
|
|
|
@ -705,7 +705,7 @@ See [`superset-frontend/cypress_build.sh`](https://github.com/apache/incubator-s
|
|||
|
||||
### Storybook
|
||||
|
||||
Superset includes a [Storybook](https://storybook.js.org/) to preview the layout/styling of various Superset components, and variations thereof. To open and view the Storybook:
|
||||
Superset includes a [Storybook](https://storybook.js.org/) to preview the layout/styling of various Superset components, and variations thereof. To open and view the Storybook:
|
||||
|
||||
```bash
|
||||
cd superset-frontend
|
||||
|
|
|
@ -8,4 +8,4 @@ have stabilized in a manner consistent with other successful ASF projects.
|
|||
|
||||
While incubation status is not necessarily a reflection of the completeness or
|
||||
stability of the code, it does indicate that the project has yet to be fully
|
||||
endorsed by the ASF.
|
||||
endorsed by the ASF.
|
||||
|
|
33
INTHEWILD.md
|
@ -27,7 +27,7 @@ Join our growing community!
|
|||
|
||||
|
||||
### Sharing Economy
|
||||
- [Airbnb](https://github.com/airbnb)
|
||||
- [Airbnb](https://github.com/airbnb)
|
||||
- [Faasos](http://faasos.com/) [@shashanksingh]
|
||||
- [Hostnfly](https://www.hostnfly.com/) [@alexisrosuel]
|
||||
- [Lime](https://www.limebike.com/) [@cxmcc]
|
||||
|
@ -37,11 +37,11 @@ Join our growing community!
|
|||
- [Aktia Bank plc](https://www.aktia.com) [@villebro]
|
||||
- [American Express](https://www.americanexpress.com) [@TheLastSultan]
|
||||
- [Capital Service S.A.](http://capitalservice.pl) [@pkonarzewski]
|
||||
- [Clark.de](http://clark.de/)
|
||||
- [Clark.de](http://clark.de/)
|
||||
|
||||
### Gaming
|
||||
- [Digit Game Studios](https://www.digitgaming.com/)
|
||||
- [Popoko VM Games Studio](https://popoko.live)
|
||||
- [Popoko VM Games Studio](https://popoko.live)
|
||||
|
||||
### E-Commerce
|
||||
- [AiHello](https://www.aihello.com) [@ganeshkrishnan1]
|
||||
|
@ -52,7 +52,7 @@ Join our growing community!
|
|||
- [HuiShouBao](http://www.huishoubao.com/) [@Yukinoshita-Yukino]
|
||||
- [Now](https://www.now.vn/) [@davidkohcw]
|
||||
- [Qunar](https://www.qunar.com/) [@flametest]
|
||||
- [Rakuten Viki](https://www.viki.com)
|
||||
- [Rakuten Viki](https://www.viki.com)
|
||||
- [Shopee](https://shopee.sg) [@xiaohanyu]
|
||||
- [Shopkick](https://www.shopkick.com) [@LAlbertalli]
|
||||
- [Tails.com](https://tails.com) [@alanmcruickshank]
|
||||
|
@ -66,25 +66,25 @@ Join our growing community!
|
|||
- [Cloudsmith](https://cloudsmith.io) [@alancarson]
|
||||
- [CnOvit](http://www.cnovit.com/) [@xieshaohu]
|
||||
- [Deepomatic](https://deepomatic.com/) [@Zanoellia]
|
||||
- [Dial Once](https://www.dial-once.com/)
|
||||
- [Dial Once](https://www.dial-once.com/)
|
||||
- [Dremio](https://dremio.com) [@narendrans]
|
||||
- [ELMO Cloud HR & Payroll](https://elmosoftware.com.au/)
|
||||
- [Endress+Hauser](http://www.endress.com/) [@rumbin]
|
||||
- [FBK - ICT center](http://ict.fbk.eu)
|
||||
- [FBK - ICT center](http://ict.fbk.eu)
|
||||
- [GfK Data Lab](http://datalab.gfk.com) [@mherr]
|
||||
- [GrowthSimple](https://growthsimple.ai/)
|
||||
- [Intercom](https://www.intercom.com/) [@kate-gallo]
|
||||
- [jampp](https://jampp.com/)
|
||||
- [jampp](https://jampp.com/)
|
||||
- [Konfío](http://konfio.mx) [@uis-rodriguez]
|
||||
- [Myra Labs](http://www.myralabs.com/) [@viksit]
|
||||
- [Nielsen](http://www.nielsen.com/) [@amitNielsen]
|
||||
- [Ona](https://ona.io) [@pld]
|
||||
- [Peak AI](https://www.peak.ai/) [@azhar22k]
|
||||
- [PeopleDoc](https://www.people-doc.com) [@rodo]
|
||||
- [Preset, Inc.](https://preset.io)
|
||||
- [Preset, Inc.](https://preset.io)
|
||||
- [Pronto Tools](http://www.prontotools.io) [@zkan]
|
||||
- [PubNub](https://pubnub.com) [@jzucker2]
|
||||
- [Reward Gateway](https://www.rewardgateway.com)
|
||||
- [Reward Gateway](https://www.rewardgateway.com)
|
||||
- [ScopeAI](https://www.getscopeai.com) [@iloveluce]
|
||||
- [Showmax](https://tech.showmax.com) [@bobek]
|
||||
- [source{d}](https://www.sourced.tech) [@marnovo]
|
||||
|
@ -102,11 +102,11 @@ Join our growing community!
|
|||
- [Douban](https://www.douban.com/) [@luchuan]
|
||||
- [Kuaishou](https://www.kuaishou.com/) [@zhaoyu89730105]
|
||||
- [Netflix](https://www.netflix.com/)
|
||||
- [TME QQMUSIC/WESING](https://www.tencentmusic.com/)
|
||||
- [TME QQMUSIC/WESING](https://www.tencentmusic.com/)
|
||||
- [Zaihang](http://www.zaih.com/)
|
||||
|
||||
### Education
|
||||
- [Brilliant.org](https://brilliant.org/)
|
||||
- [Brilliant.org](https://brilliant.org/)
|
||||
- [Udemy](https://www.udemy.com/) [@sungjuly]
|
||||
- [VIPKID](https://www.vipkid.com.cn/) [@illpanda]
|
||||
|
||||
|
@ -120,14 +120,13 @@ Join our growing community!
|
|||
- [Amino](https://amino.com) [@shkr]
|
||||
- [Living Goods](https://www.livinggoods.org) [@chelule]
|
||||
- [Maieutical Labs](https://maieuticallabs.it) [@xrmx]
|
||||
- [QPID Health](http://www.qpidhealth.com/)
|
||||
- [QPID Health](http://www.qpidhealth.com/)
|
||||
- [TrustMedis](https://trustmedis.com) [@famasya]
|
||||
- [WeSure](https://www.wesure.cn/)
|
||||
|
||||
### Others
|
||||
- [Grassroot](https://www.grassrootinstitute.org/)
|
||||
- [Grassroot](https://www.grassrootinstitute.org/)
|
||||
- [komoot](https://www.komoot.com/) [@christophlingg]
|
||||
- [Let's Roam](https://www.letsroam.com/)
|
||||
- [Twitter](https://twitter.com/)
|
||||
- [Yahoo!](https://yahoo.com/)
|
||||
|
||||
- [Let's Roam](https://www.letsroam.com/)
|
||||
- [Twitter](https://twitter.com/)
|
||||
- [Yahoo!](https://yahoo.com/)
|
||||
|
|
|
@ -213,4 +213,4 @@ Third party SIL Open Font License v1.1 (OFL-1.1)
|
|||
========================================================================
|
||||
|
||||
(SIL OPEN FONT LICENSE Version 1.1) The Inter font family (https://github.com/rsms/inter)
|
||||
(SIL OPEN FONT LICENSE Version 1.1) The Fira Code font family (https://github.com/tonsky/FiraCode)
|
||||
(SIL OPEN FONT LICENSE Version 1.1) The Fira Code font family (https://github.com/tonsky/FiraCode)
|
||||
|
|
|
@ -19,7 +19,7 @@ under the License.
|
|||
|
||||
# Getting Started with Superset using Docker
|
||||
|
||||
Docker is an easy way to get started with Superset.
|
||||
Docker is an easy way to get started with Superset.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
|
@ -28,8 +28,8 @@ Docker is an easy way to get started with Superset.
|
|||
|
||||
## Configuration
|
||||
|
||||
The `/app/pythonpath` folder is mounted from [./docker/pythonpath_dev](./docker/pythonpath_dev)
|
||||
which contains a base configuration [./docker/pythonpath/superset_config.py](./docker/pythonpath/superset_config.py)
|
||||
The `/app/pythonpath` folder is mounted from [./docker/pythonpath_dev](./docker/pythonpath_dev)
|
||||
which contains a base configuration [./docker/pythonpath/superset_config.py](./docker/pythonpath/superset_config.py)
|
||||
intended for use with local development.
|
||||
|
||||
### Local overrides
|
||||
|
@ -62,7 +62,7 @@ To run the container, simply run:
|
|||
docker-compose up
|
||||
```
|
||||
|
||||
After several minutes for superset initialization to finish, you can open a browser and view [`http://localhost:8088`](http://localhost:8088)
|
||||
After several minutes for superset initialization to finish, you can open a browser and view [`http://localhost:8088`](http://localhost:8088)
|
||||
to start your journey.
|
||||
|
||||
## Developing
|
||||
|
|
|
@ -122,4 +122,3 @@ by saving the following YAML to file and then running the ``import_datasources``
|
|||
columns:
|
||||
- column_name: ds
|
||||
verbose_name: datetime
|
||||
|
||||
|
|
|
@ -159,21 +159,21 @@ permissions that were attributed.
|
|||
Restricting access to a subset of a particular table
|
||||
""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
Using ``Row level security filters`` (under the ``Security`` menu) you can create
|
||||
filters that are assigned to a particular table, as well as a set of roles.
|
||||
Say people in your finance department should only have access to rows where
|
||||
``department = "finance"``. You could create a ``Row level security filter``
|
||||
with that clause, and assign it to your ``Finance`` role, as well as the
|
||||
Using ``Row level security filters`` (under the ``Security`` menu) you can create
|
||||
filters that are assigned to a particular table, as well as a set of roles.
|
||||
Say people in your finance department should only have access to rows where
|
||||
``department = "finance"``. You could create a ``Row level security filter``
|
||||
with that clause, and assign it to your ``Finance`` role, as well as the
|
||||
applicable table.
|
||||
|
||||
The ``clause`` field can contain arbitrary text which is then added to the generated
|
||||
SQL statement's ``WHERE`` clause. So you could even do something like create a
|
||||
filter for the last 30 days and apply it to a specific role, with a clause like
|
||||
``date_field > DATE_SUB(NOW(), INTERVAL 30 DAY)``. It can also support multiple
|
||||
conditions: ``client_id = 6 AND advertiser="foo"``, etc.
|
||||
The ``clause`` field can contain arbitrary text which is then added to the generated
|
||||
SQL statement's ``WHERE`` clause. So you could even do something like create a
|
||||
filter for the last 30 days and apply it to a specific role, with a clause like
|
||||
``date_field > DATE_SUB(NOW(), INTERVAL 30 DAY)``. It can also support multiple
|
||||
conditions: ``client_id = 6 AND advertiser="foo"``, etc.
|
||||
|
||||
All relevant ``Row level security filters`` will be ANDed together, so it's
|
||||
possible to create a situation where two roles conflict in such a way as to
|
||||
limit a table subset to empty. For example, the filters ``client_id=4`` and
|
||||
and ``client_id=5``, applied to a role, will result in users of that role having
|
||||
``client_id=4 AND client_id=5`` added to their query, which can never be true.
|
||||
All relevant ``Row level security filters`` will be ANDed together, so it's
|
||||
possible to create a situation where two roles conflict in such a way as to
|
||||
limit a table subset to empty. For example, the filters ``client_id=4`` and
|
||||
and ``client_id=5``, applied to a role, will result in users of that role having
|
||||
``client_id=4 AND client_id=5`` added to their query, which can never be true.
|
||||
|
|
|
@ -22,4 +22,4 @@ dependencies:
|
|||
- name: redis
|
||||
version: 10.3.4
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
condition: redis.enabled
|
||||
condition: redis.enabled
|
||||
|
|
|
@ -24,7 +24,7 @@ metadata:
|
|||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
type: Opaque
|
||||
data:
|
||||
data:
|
||||
superset_config.py: {{ include "superset-config" . | b64enc }}
|
||||
superset_init.sh: {{ tpl .Values.init.initscript . | b64enc }}
|
||||
superset_bootstrap.sh: {{ include "superset-bootstrap" . | b64enc }}
|
||||
|
|
|
@ -39,4 +39,3 @@ tox==3.11.1
|
|||
pillow==7.0.0
|
||||
openpyxl==3.0.3 # Pandas use openpyxl to write excel format(using in unittes)
|
||||
xlrd==1.2.0
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ from superset import sm
|
|||
def cleanup_permissions():
|
||||
# 1. Clean up duplicates.
|
||||
pvms = sm.get_session.query(sm.permissionview_model).all()
|
||||
print('# of permission view menues is: {}'.format(len(pvms)))
|
||||
print("# of permission view menues is: {}".format(len(pvms)))
|
||||
pvms_dict = defaultdict(list)
|
||||
for pvm in pvms:
|
||||
pvms_dict[(pvm.permission, pvm.view_menu)].append(pvm)
|
||||
|
@ -39,7 +39,7 @@ def cleanup_permissions():
|
|||
sm.get_session.commit()
|
||||
|
||||
pvms = sm.get_session.query(sm.permissionview_model).all()
|
||||
print('STage 1: # of permission view menues is: {}'.format(len(pvms)))
|
||||
print("STage 1: # of permission view menues is: {}".format(len(pvms)))
|
||||
|
||||
# 2. Clean up None permissions or view menues
|
||||
pvms = sm.get_session.query(sm.permissionview_model).all()
|
||||
|
@ -49,7 +49,7 @@ def cleanup_permissions():
|
|||
sm.get_session.commit()
|
||||
|
||||
pvms = sm.get_session.query(sm.permissionview_model).all()
|
||||
print('Stage 2: # of permission view menues is: {}'.format(len(pvms)))
|
||||
print("Stage 2: # of permission view menues is: {}".format(len(pvms)))
|
||||
|
||||
# 3. Delete empty permission view menues from roles
|
||||
roles = sm.get_session.query(sm.role_model).all()
|
||||
|
|
|
@ -38,4 +38,4 @@ module.exports = {
|
|||
},
|
||||
plugins: [...config.plugins, ...customConfig.plugins],
|
||||
}),
|
||||
};
|
||||
};
|
||||
|
|
|
@ -29,4 +29,4 @@ const themeDecorator = storyFn => (
|
|||
);
|
||||
|
||||
addDecorator(jsxDecorator);
|
||||
addDecorator(themeDecorator);
|
||||
addDecorator(themeDecorator);
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
|
||||
@font-face {
|
||||
font-family: 'Fira Code';
|
||||
src: url('woff2/FiraCode-Light.woff2') format('woff2'),
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
@ -24,4 +24,4 @@
|
|||
<polygon id="Shape" points="0 0 24 0 24 24 0 24"></polygon>
|
||||
<path d="M15.71,8.29 C15.5222334,8.10068735 15.2666375,7.99420168 15,7.99420168 C14.7333625,7.99420168 14.4777666,8.10068735 14.29,8.29 L12,10.59 L9.71,8.29 C9.31787782,7.89787785 8.68212219,7.89787787 8.29000003,8.29000003 C7.89787787,8.68212219 7.89787785,9.31787782 8.29,9.71 L10.59,12 L8.29,14.29 C8.10068735,14.4777666 7.99420168,14.7333625 7.99420168,15 C7.99420168,15.2666375 8.10068735,15.5222334 8.29,15.71 C8.4777666,15.8993127 8.73336246,16.0057983 9,16.0057983 C9.26663754,16.0057983 9.5222334,15.8993127 9.71,15.71 L12,13.41 L14.29,15.71 C14.4777666,15.8993127 14.7333625,16.0057983 15,16.0057983 C15.2666375,16.0057983 15.5222334,15.8993127 15.71,15.71 C15.8993127,15.5222334 16.0057983,15.2666375 16.0057983,15 C16.0057983,14.7333625 15.8993127,14.4777666 15.71,14.29 L13.41,12 L15.71,9.71 C15.8993127,9.5222334 16.0057983,9.26663754 16.0057983,9 C16.0057983,8.73336246 15.8993127,8.4777666 15.71,8.29 Z" id="Path" fill="currentColor"></path>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
@ -26,4 +26,4 @@
|
|||
<path d="M2.0502756,2.0502756 C4.64681622,-0.54626503 8.80843467,-0.6950204 11.5837364,1.70950589 C14.3590382,4.11403218 14.804545,8.25440896 12.6043062,11.1943062 L12.6043062,11.1943062 L12.584,11.214 L16.5643062,15.1943062 C16.7536188,15.3820728 16.8601045,15.6376686 16.8601045,15.9043062 C16.8601045,16.1709437 16.7536188,16.4265396 16.5643062,16.6143062 C16.3765396,16.8036188 16.1209437,16.9101045 15.8543062,16.9101045 C15.5876686,16.9101045 15.3320728,16.8036188 15.1443062,16.6143062 L11.1595821,12.6301298 C8.22188565,14.8010066 4.10458043,14.3481289 1.70950589,11.5837364 C-0.6950204,8.80843467 -0.54626503,4.64681622 2.0502756,2.0502756 Z M10.4943062,3.46430617 C8.54038301,1.5153163 5.37685647,1.5179821 3.42622078,3.47026222 C1.47558509,5.42254234 1.47558509,8.58607001 3.42622078,10.5383501 C5.37685647,12.4906302 8.54038301,12.493296 10.4943062,10.5443062 C11.4347232,9.60626354 11.963244,8.33257878 11.963244,7.00430616 C11.963244,5.67603357 11.4347232,4.4023488 10.4943062,3.46430617 Z" id="Combined-Shape"></path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
@ -6,9 +6,9 @@
|
|||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
|
|
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
|
@ -623,10 +623,10 @@ const DatasetList: FunctionComponent<DatasetListProps> = ({
|
|||
{datasetCurrentlyDeleting && (
|
||||
<DeleteModal
|
||||
description={t(
|
||||
`The dataset ${datasetCurrentlyDeleting.table_name} is linked to
|
||||
${datasetCurrentlyDeleting.chart_count} charts that appear on
|
||||
${datasetCurrentlyDeleting.dashboard_count} dashboards.
|
||||
Are you sure you want to continue? Deleting the dataset will break
|
||||
`The dataset ${datasetCurrentlyDeleting.table_name} is linked to
|
||||
${datasetCurrentlyDeleting.chart_count} charts that appear on
|
||||
${datasetCurrentlyDeleting.dashboard_count} dashboards.
|
||||
Are you sure you want to continue? Deleting the dataset will break
|
||||
those objects.`,
|
||||
)}
|
||||
onConfirm={() =>
|
||||
|
|
|
@ -17,5 +17,5 @@
|
|||
# under the License.
|
||||
from superset.cli import superset
|
||||
|
||||
if __name__ == '__main__':
|
||||
if __name__ == "__main__":
|
||||
superset()
|
||||
|
|
|
@ -75,7 +75,6 @@ openapi_spec_methods_override = {
|
|||
"get": {"description": "Get a list of all possible owners for a dashboard."}
|
||||
},
|
||||
}
|
||||
""" Overrides GET methods OpenApi descriptions """
|
||||
|
||||
|
||||
def validate_json(value: Union[bytes, bytearray, str]) -> None:
|
||||
|
|
|
@ -1 +1 @@
|
|||
Generic single-database configuration.
|
||||
Generic single-database configuration.
|
||||
|
|
|
@ -14,14 +14,6 @@
|
|||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
import json
|
||||
|
||||
from alembic import op
|
||||
from sqlalchemy import Column, Integer, or_, String, Text
|
||||
from sqlalchemy.ext.declarative import declarative_base
|
||||
|
||||
from superset import db
|
||||
|
||||
"""migrate_old_annotation_layers
|
||||
|
||||
Revision ID: 21e88bc06c02
|
||||
|
@ -29,6 +21,13 @@ Revises: 67a6ac9b727b
|
|||
Create Date: 2017-12-17 11:06:30.180267
|
||||
|
||||
"""
|
||||
import json
|
||||
|
||||
from alembic import op
|
||||
from sqlalchemy import Column, Integer, or_, String, Text
|
||||
from sqlalchemy.ext.declarative import declarative_base
|
||||
|
||||
from superset import db
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = "21e88bc06c02"
|
||||
|
|
|
@ -25,4 +25,3 @@ openapi_spec_methods_override = {
|
|||
}
|
||||
},
|
||||
}
|
||||
""" Overrides GET methods OpenApi descriptions """
|
||||
|
|
|
@ -55,4 +55,3 @@
|
|||
</footer>
|
||||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
||||
|
|
|
@ -33,4 +33,4 @@
|
|||
</div>
|
||||
|
||||
{{ lib.panel_end() }}
|
||||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
|
|
@ -29,4 +29,4 @@ To see all your permissions please visit your
|
|||
profile page</a>.
|
||||
<br>
|
||||
<br>
|
||||
Regards, Superset Admin.
|
||||
Regards, Superset Admin.
|
||||
|
|
|
@ -33,4 +33,4 @@ To see all your permissions please visit your
|
|||
profile page</a>.
|
||||
<br>
|
||||
<br>
|
||||
Regards, Superset Admin.
|
||||
Regards, Superset Admin.
|
||||
|
|
|
@ -36,10 +36,10 @@
|
|||
{% block head_meta %}{% endblock %}
|
||||
{% block head_css %}
|
||||
{% for favicon in favicons %}
|
||||
<link
|
||||
<link
|
||||
rel="{{favicon.rel if favicon.rel else "icon"}}"
|
||||
type="{{favicon.type if favicon.type else "image/png"}}"
|
||||
{% if favicon.sizes %}sizes={{favicon.sizes}}{% endif %}
|
||||
type="{{favicon.type if favicon.type else "image/png"}}"
|
||||
{% if favicon.sizes %}sizes={{favicon.sizes}}{% endif %}
|
||||
href="{{favicon.href}}"
|
||||
>
|
||||
{% endfor %}
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
a.click();
|
||||
document.body.removeChild(a);
|
||||
|
||||
window.location = '{{ dashboards_url }}';
|
||||
window.location = '{{ dashboards_url }}';
|
||||
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -97,4 +97,3 @@
|
|||
</table>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
|
|
|
@ -61,4 +61,4 @@
|
|||
}
|
||||
}
|
||||
</script>
|
||||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
|
|
@ -61,4 +61,4 @@
|
|||
}
|
||||
}
|
||||
</script>
|
||||
{% endblock %}
|
||||
{% endblock %}
|
||||
|
|
|
@ -431,7 +431,7 @@
|
|||
<h1>Alerts</h1>
|
||||
</div>
|
||||
<div class="alert alert-success" role="alert">
|
||||
<strong>Well done!</strong> You successfully read this important alert message. With a <a href="#">link</a>.
|
||||
<strong>Well done!</strong> You successfully read this important alert message. With a <a href="#">link</a>.
|
||||
</div>
|
||||
<div class="alert alert-info" role="alert">
|
||||
<strong>Heads up!</strong> This alert needs your attention, but it's not super important.
|
||||
|
|