You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ma...@apache.org on 2025/07/09 19:47:40 UTC
(superset) branch cors created (now f5a50c4f92)
This is an automated email from the ASF dual-hosted git repository.
maximebeauchemin pushed a change to branch cors
in repository https://gitbox.apache.org/repos/asf/superset.git
at f5a50c4f92 fix: make flask-cors a core dependency
This branch includes the following new commits:
new f5a50c4f92 fix: make flask-cors a core dependency
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
(superset) 01/01: fix: make flask-cors a core dependency
Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
maximebeauchemin pushed a commit to branch cors
in repository https://gitbox.apache.org/repos/asf/superset.git
commit f5a50c4f92e40a489bec4b50dfcbcca88ee5cf26
Author: Maxime Beauchemin <ma...@gmail.com>
AuthorDate: Wed Jul 9 12:38:40 2025 -0700
fix: make flask-cors a core dependency
Recently, merging this line https://github.com/apache/superset/commit/d951158ce6f74d0b2a037fc3f2be32c2921fa8f9#diff-ffb9a8aa35f8e58dd818a724713720da25a2847e19d36b4bbf5da7d5744415e0R41 broke the use of `scripts/uv-pip-compile.sh` which is a script that compiles/pins the dependencies for Superset.
Here as an easy workaround I'm making `flask-cors` a core dependency to the project, as most production instance should probably use this package, and it's a small/stable package that rightly belongs as a core dep.
---
docs/docs/configuration/networking-settings.mdx | 8 +-
pyproject.toml | 2 +-
requirements/base.in | 3 -
requirements/base.txt | 12 +-
requirements/development.in | 2 +-
requirements/development.txt | 408 +++++++++++++++-------
requirements/translations.txt | 431 +-----------------------
7 files changed, 304 insertions(+), 562 deletions(-)
diff --git a/docs/docs/configuration/networking-settings.mdx b/docs/docs/configuration/networking-settings.mdx
index eced46d487..7b17b949db 100644
--- a/docs/docs/configuration/networking-settings.mdx
+++ b/docs/docs/configuration/networking-settings.mdx
@@ -8,11 +8,11 @@ version: 1
## CORS
-To configure CORS, or cross-origin resource sharing, the following dependency must be installed:
-```python
-pip install apache_superset[cors]
-```
+:::note
+In Superset versions prior to `5.x` you have to install to install `flask-cors with` with `pip install apache-superset[cors]` to enable CORS support.
+:::
+
The following keys in `superset_config.py` can be specified to configure CORS:
diff --git a/pyproject.toml b/pyproject.toml
index 8de6216d33..75b2901ac1 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -40,6 +40,7 @@ dependencies = [
"click>=8.0.3",
"click-option-group",
"colorama",
+ "flask-cors>=4.0.2, <5.0",
"croniter>=0.3.28",
"cron-descriptor",
"cryptography>=42.0.4, <45.0.0",
@@ -115,7 +116,6 @@ bigquery = [
]
clickhouse = ["clickhouse-connect>=0.5.14, <1.0"]
cockroachdb = ["cockroachdb>=0.3.5, <0.4"]
-cors = ["flask-cors>=4.0.2, <5.0"]
crate = ["sqlalchemy-cratedb>=0.40.1, <1"]
databend = ["databend-sqlalchemy>=0.3.2, <1.0"]
databricks = [
diff --git a/requirements/base.in b/requirements/base.in
index 769568dc2e..d110fa8931 100644
--- a/requirements/base.in
+++ b/requirements/base.in
@@ -36,6 +36,3 @@ marshmallow-sqlalchemy>=1.3.0,<1.4.1
# needed for python 3.12 support
openapi-schema-validator>=0.6.3
-
-# needed when using the flask-cors extension
-.[cors]
diff --git a/requirements/base.txt b/requirements/base.txt
index fd2d44b040..2ca4c174ec 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -11,7 +11,9 @@ apispec==6.6.1
apsw==3.50.1.0
# via shillelagh
async-timeout==4.0.3
- # via -r requirements/base.in
+ # via
+ # -r requirements/base.in
+ # redis
attrs==25.3.0
# via
# cattrs
@@ -97,6 +99,11 @@ email-validator==2.2.0
# via flask-appbuilder
et-xmlfile==2.0.0
# via openpyxl
+exceptiongroup==1.3.0
+ # via
+ # cattrs
+ # trio
+ # trio-websocket
flask==2.3.3
# via
# apache-superset (pyproject.toml)
@@ -154,7 +161,6 @@ greenlet==3.1.1
# via
# apache-superset (pyproject.toml)
# shillelagh
- # sqlalchemy
gunicorn==23.0.0
# via apache-superset (pyproject.toml)
h11==0.16.0
@@ -396,9 +402,11 @@ typing-extensions==4.14.0
# apache-superset (pyproject.toml)
# alembic
# cattrs
+ # exceptiongroup
# limits
# pyopenssl
# referencing
+ # rich
# selenium
# shillelagh
tzdata==2025.2
diff --git a/requirements/development.in b/requirements/development.in
index 99584560e5..3a526c991a 100644
--- a/requirements/development.in
+++ b/requirements/development.in
@@ -16,4 +16,4 @@
# specific language governing permissions and limitations
# under the License.
#
--e .[development,bigquery,cors,druid,gevent,gsheets,mysql,postgres,presto,prophet,trino,thumbnails]
+-e .[development,bigquery,druid,gevent,gsheets,mysql,postgres,presto,prophet,trino,thumbnails]
diff --git a/requirements/development.txt b/requirements/development.txt
index 76da8f463d..662ee8eb25 100644
--- a/requirements/development.txt
+++ b/requirements/development.txt
@@ -1,19 +1,32 @@
# This file was autogenerated by uv via the following command:
-# uv pip compile pyproject.toml requirements/development.in -o requirements/development.txt
+# uv pip compile requirements/development.in -c requirements/base.txt -o requirements/development.txt
-e .
# via -r requirements/development.in
alembic==1.15.2
- # via flask-migrate
+ # via
+ # -c requirements/base.txt
+ # flask-migrate
amqp==5.3.1
- # via kombu
+ # via
+ # -c requirements/base.txt
+ # kombu
apispec==6.6.1
- # via flask-appbuilder
+ # via
+ # -c requirements/base.txt
+ # flask-appbuilder
apsw==3.50.1.0
- # via shillelagh
+ # via
+ # -c requirements/base.txt
+ # shillelagh
astroid==3.3.10
# via pylint
+async-timeout==4.0.3
+ # via
+ # -c requirements/base.txt
+ # redis
attrs==25.3.0
# via
+ # -c requirements/base.txt
# cattrs
# jsonschema
# outcome
@@ -21,50 +34,69 @@ attrs==25.3.0
# requests-cache
# trio
babel==2.17.0
- # via flask-babel
+ # via
+ # -c requirements/base.txt
+ # flask-babel
backoff==2.2.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
bcrypt==4.3.0
- # via paramiko
+ # via
+ # -c requirements/base.txt
+ # paramiko
billiard==4.2.1
- # via celery
+ # via
+ # -c requirements/base.txt
+ # celery
blinker==1.9.0
- # via flask
+ # via
+ # -c requirements/base.txt
+ # flask
bottleneck==1.5.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
brotli==1.1.0
- # via flask-compress
+ # via
+ # -c requirements/base.txt
+ # flask-compress
cachelib==0.13.0
# via
+ # -c requirements/base.txt
# flask-caching
# flask-session
cachetools==5.5.2
- # via google-auth
+ # via
+ # -c requirements/base.txt
+ # google-auth
cattrs==25.1.1
- # via requests-cache
+ # via
+ # -c requirements/base.txt
+ # requests-cache
celery==5.5.2
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
certifi==2025.6.15
# via
+ # -c requirements/base.txt
# requests
# selenium
cffi==1.17.1
# via
+ # -c requirements/base.txt
# cryptography
# pynacl
cfgv==3.4.0
# via pre-commit
charset-normalizer==3.4.2
- # via requests
+ # via
+ # -c requirements/base.txt
+ # requests
click==8.2.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# celery
# click-didyoumean
@@ -74,20 +106,26 @@ click==8.2.1
# flask
# flask-appbuilder
click-didyoumean==0.3.1
- # via celery
+ # via
+ # -c requirements/base.txt
+ # celery
click-option-group==0.5.7
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
click-plugins==1.1.1
- # via celery
+ # via
+ # -c requirements/base.txt
+ # celery
click-repl==0.3.0
- # via celery
+ # via
+ # -c requirements/base.txt
+ # celery
cmdstanpy==1.1.0
# via prophet
colorama==0.4.6
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
contourpy==1.0.7
@@ -96,15 +134,15 @@ coverage==7.6.8
# via pytest-cov
cron-descriptor==1.4.5
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
croniter==6.0.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
cryptography==44.0.3
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# paramiko
# pyopenssl
@@ -113,30 +151,47 @@ cycler==0.12.1
db-dtypes==1.3.1
# via pandas-gbq
defusedxml==0.7.1
- # via odfpy
+ # via
+ # -c requirements/base.txt
+ # odfpy
deprecated==1.2.18
- # via limits
+ # via
+ # -c requirements/base.txt
+ # limits
deprecation==2.1.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
dill==0.4.0
# via pylint
distlib==0.3.8
# via virtualenv
dnspython==2.7.0
- # via email-validator
+ # via
+ # -c requirements/base.txt
+ # email-validator
docker==7.0.0
# via apache-superset
email-validator==2.2.0
- # via flask-appbuilder
+ # via
+ # -c requirements/base.txt
+ # flask-appbuilder
et-xmlfile==2.0.0
- # via openpyxl
+ # via
+ # -c requirements/base.txt
+ # openpyxl
+exceptiongroup==1.3.0
+ # via
+ # -c requirements/base.txt
+ # cattrs
+ # pytest
+ # trio
+ # trio-websocket
filelock==3.12.2
# via virtualenv
flask==2.3.3
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
# flask-babel
@@ -153,50 +208,59 @@ flask==2.3.3
# flask-wtf
flask-appbuilder==4.8.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
flask-babel==2.0.0
- # via flask-appbuilder
+ # via
+ # -c requirements/base.txt
+ # flask-appbuilder
flask-caching==2.3.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
flask-compress==1.17
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
flask-cors==4.0.2
- # via apache-superset
+ # via
+ # -c requirements/base.txt
+ # apache-superset
flask-jwt-extended==4.7.1
- # via flask-appbuilder
+ # via
+ # -c requirements/base.txt
+ # flask-appbuilder
flask-limiter==3.12
- # via flask-appbuilder
+ # via
+ # -c requirements/base.txt
+ # flask-appbuilder
flask-login==0.6.3
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
flask-migrate==3.1.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
flask-session==0.8.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
flask-sqlalchemy==2.5.1
# via
+ # -c requirements/base.txt
# flask-appbuilder
# flask-migrate
flask-talisman==1.1.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
flask-testing==0.8.1
# via apache-superset
flask-wtf==1.2.2
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
fonttools==4.55.0
@@ -206,10 +270,12 @@ freezegun==1.5.1
future==1.0.0
# via pyhive
geographiclib==2.0
- # via geopy
+ # via
+ # -c requirements/base.txt
+ # geopy
geopy==2.4.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
gevent==24.2.1
# via apache-superset
@@ -222,6 +288,7 @@ google-api-core==2.23.0
# sqlalchemy-bigquery
google-auth==2.40.3
# via
+ # -c requirements/base.txt
# google-api-core
# google-auth-oauthlib
# google-cloud-bigquery
@@ -253,11 +320,10 @@ googleapis-common-protos==1.66.0
# grpcio-status
greenlet==3.1.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# gevent
# shillelagh
- # sqlalchemy
grpcio==1.71.0
# via
# apache-superset
@@ -267,27 +333,30 @@ grpcio-status==1.60.1
# via google-api-core
gunicorn==23.0.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
h11==0.16.0
- # via wsproto
+ # via
+ # -c requirements/base.txt
+ # wsproto
hashids==1.3.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
holidays==0.25
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# prophet
humanize==4.12.3
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
identify==2.5.36
# via pre-commit
idna==3.10
# via
+ # -c requirements/base.txt
# email-validator
# requests
# trio
@@ -298,24 +367,27 @@ iniconfig==2.0.0
# via pytest
isodate==0.7.2
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
isort==6.0.1
# via pylint
itsdangerous==2.2.0
# via
+ # -c requirements/base.txt
# flask
# flask-wtf
jinja2==3.1.6
# via
+ # -c requirements/base.txt
# flask
# flask-babel
jsonpath-ng==1.7.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
jsonschema==4.23.0
# via
+ # -c requirements/base.txt
# flask-appbuilder
# openapi-schema-validator
# openapi-spec-validator
@@ -323,66 +395,82 @@ jsonschema-path==0.3.4
# via openapi-spec-validator
jsonschema-specifications==2025.4.1
# via
+ # -c requirements/base.txt
# jsonschema
# openapi-schema-validator
kiwisolver==1.4.7
# via matplotlib
kombu==5.5.3
- # via celery
+ # via
+ # -c requirements/base.txt
+ # celery
korean-lunar-calendar==0.3.1
- # via holidays
+ # via
+ # -c requirements/base.txt
+ # holidays
lazy-object-proxy==1.10.0
# via openapi-spec-validator
limits==5.1.0
- # via flask-limiter
+ # via
+ # -c requirements/base.txt
+ # flask-limiter
mako==1.3.10
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# alembic
# apache-superset
markdown==3.8
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
markdown-it-py==3.0.0
- # via rich
+ # via
+ # -c requirements/base.txt
+ # rich
markupsafe==3.0.2
# via
+ # -c requirements/base.txt
# jinja2
# mako
# werkzeug
# wtforms
marshmallow==3.26.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
# marshmallow-sqlalchemy
marshmallow-sqlalchemy==1.4.0
- # via flask-appbuilder
+ # via
+ # -c requirements/base.txt
+ # flask-appbuilder
matplotlib==3.9.0
# via prophet
mccabe==0.7.0
# via pylint
mdurl==0.1.2
- # via markdown-it-py
+ # via
+ # -c requirements/base.txt
+ # markdown-it-py
msgpack==1.0.8
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
msgspec==0.19.0
- # via flask-session
+ # via
+ # -c requirements/base.txt
+ # flask-session
mysqlclient==2.2.6
# via apache-superset
nh3==0.2.21
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
nodeenv==1.8.0
# via pre-commit
numpy==1.26.4
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# bottleneck
# cmdstanpy
@@ -395,22 +483,31 @@ numpy==1.26.4
oauthlib==3.2.2
# via requests-oauthlib
odfpy==1.4.1
- # via pandas
+ # via
+ # -c requirements/base.txt
+ # pandas
openapi-schema-validator==0.6.3
- # via openapi-spec-validator
+ # via
+ # -c requirements/base.txt
+ # openapi-spec-validator
openapi-spec-validator==0.7.1
# via apache-superset
openpyxl==3.1.5
- # via pandas
+ # via
+ # -c requirements/base.txt
+ # pandas
ordered-set==4.1.0
- # via flask-limiter
+ # via
+ # -c requirements/base.txt
+ # flask-limiter
outcome==1.3.0.post0
# via
+ # -c requirements/base.txt
# trio
# trio-websocket
packaging==25.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# apispec
# db-dtypes
@@ -426,7 +523,7 @@ packaging==25.0
# sqlalchemy-bigquery
pandas==2.0.3
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# cmdstanpy
# db-dtypes
@@ -438,18 +535,18 @@ parameterized==0.9.0
# via apache-superset
paramiko==3.5.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# sshtunnel
parsedatetime==2.6
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
pathable==0.4.3
# via jsonschema-path
pgsanity==0.2.9
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
pillow==10.3.0
# via
@@ -457,25 +554,32 @@ pillow==10.3.0
# matplotlib
platformdirs==4.3.8
# via
+ # -c requirements/base.txt
# pylint
# requests-cache
# virtualenv
pluggy==1.5.0
# via pytest
ply==3.11
- # via jsonpath-ng
+ # via
+ # -c requirements/base.txt
+ # jsonpath-ng
polyline==2.0.2
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
pre-commit==4.1.0
# via apache-superset
prison==0.2.1
- # via flask-appbuilder
+ # via
+ # -c requirements/base.txt
+ # flask-appbuilder
progress==1.6
# via apache-superset
prompt-toolkit==3.0.51
- # via click-repl
+ # via
+ # -c requirements/base.txt
+ # click-repl
prophet==1.1.5
# via apache-superset
proto-plus==1.25.0
@@ -495,21 +599,25 @@ psycopg2-binary==2.9.6
# via apache-superset
pyarrow==18.1.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# db-dtypes
# pandas-gbq
pyasn1==0.6.1
# via
+ # -c requirements/base.txt
# pyasn1-modules
# python-ldap
# rsa
pyasn1-modules==0.4.2
# via
+ # -c requirements/base.txt
# google-auth
# python-ldap
pycparser==2.22
- # via cffi
+ # via
+ # -c requirements/base.txt
+ # cffi
pydata-google-auth==1.9.0
# via pandas-gbq
pydruid==0.6.9
@@ -517,30 +625,38 @@ pydruid==0.6.9
pyfakefs==5.3.5
# via apache-superset
pygments==2.19.1
- # via rich
+ # via
+ # -c requirements/base.txt
+ # rich
pyhive==0.7.0
# via apache-superset
pyinstrument==4.4.0
# via apache-superset
pyjwt==2.10.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
# flask-jwt-extended
pylint==3.3.7
# via apache-superset
pynacl==1.5.0
- # via paramiko
+ # via
+ # -c requirements/base.txt
+ # paramiko
pyopenssl==25.1.0
- # via shillelagh
+ # via
+ # -c requirements/base.txt
+ # shillelagh
pyparsing==3.2.3
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# matplotlib
pysocks==1.7.1
- # via urllib3
+ # via
+ # -c requirements/base.txt
+ # urllib3
pytest==7.4.4
# via
# apache-superset
@@ -552,7 +668,7 @@ pytest-mock==3.10.0
# via apache-superset
python-dateutil==2.9.0.post0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# celery
# croniter
@@ -567,40 +683,45 @@ python-dateutil==2.9.0.post0
# trino
python-dotenv==1.1.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
python-geohash==0.8.5
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
python-ldap==3.4.4
# via apache-superset
pytz==2025.2
# via
+ # -c requirements/base.txt
# croniter
# flask-babel
# pandas
# trino
pyxlsb==1.0.10
- # via pandas
+ # via
+ # -c requirements/base.txt
+ # pandas
pyyaml==6.0.2
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# apispec
# jsonschema-path
# pre-commit
redis==4.6.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
referencing==0.36.2
# via
+ # -c requirements/base.txt
# jsonschema
# jsonschema-path
# jsonschema-specifications
requests==2.32.4
# via
+ # -c requirements/base.txt
# docker
# google-api-core
# google-cloud-bigquery
@@ -612,24 +733,33 @@ requests==2.32.4
# shillelagh
# trino
requests-cache==1.2.1
- # via shillelagh
+ # via
+ # -c requirements/base.txt
+ # shillelagh
requests-oauthlib==2.0.0
# via google-auth-oauthlib
rfc3339-validator==0.1.4
- # via openapi-schema-validator
+ # via
+ # -c requirements/base.txt
+ # openapi-schema-validator
rich==13.9.4
- # via flask-limiter
+ # via
+ # -c requirements/base.txt
+ # flask-limiter
rpds-py==0.25.0
# via
+ # -c requirements/base.txt
# jsonschema
# referencing
rsa==4.9.1
- # via google-auth
+ # via
+ # -c requirements/base.txt
+ # google-auth
ruff==0.8.0
# via apache-superset
selenium==4.32.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
setuptools==80.7.1
# via
@@ -640,29 +770,34 @@ setuptools==80.7.1
# zope-interface
shillelagh==1.3.5
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
simplejson==3.20.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
six==1.17.0
# via
+ # -c requirements/base.txt
# prison
# python-dateutil
# rfc3339-validator
# wtforms-json
slack-sdk==3.35.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
sniffio==1.3.1
- # via trio
+ # via
+ # -c requirements/base.txt
+ # trio
sortedcontainers==2.4.0
- # via trio
+ # via
+ # -c requirements/base.txt
+ # trio
sqlalchemy==1.4.54
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# alembic
# apache-superset
# flask-appbuilder
@@ -675,25 +810,30 @@ sqlalchemy-bigquery==1.12.0
# via apache-superset
sqlalchemy-utils==0.38.3
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
sqlglot==26.28.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
sqloxide==0.1.51
# via apache-superset
sshtunnel==0.4.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
statsd==4.0.1
# via apache-superset
tabulate==0.9.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
+tomli==2.2.1
+ # via
+ # coverage
+ # pylint
+ # pytest
tomlkit==0.13.3
# via pylint
tqdm==4.67.1
@@ -704,72 +844,94 @@ trino==0.330.0
# via apache-superset
trio==0.30.0
# via
+ # -c requirements/base.txt
# selenium
# trio-websocket
trio-websocket==0.12.2
- # via selenium
+ # via
+ # -c requirements/base.txt
+ # selenium
typing-extensions==4.14.0
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# alembic
# apache-superset
+ # astroid
# cattrs
+ # exceptiongroup
# limits
# pyopenssl
# referencing
+ # rich
# selenium
# shillelagh
tzdata==2025.2
# via
+ # -c requirements/base.txt
# kombu
# pandas
tzlocal==5.2
# via trino
url-normalize==2.2.1
- # via requests-cache
+ # via
+ # -c requirements/base.txt
+ # requests-cache
urllib3==2.5.0
# via
+ # -c requirements/base.txt
# docker
# requests
# requests-cache
# selenium
vine==5.1.0
# via
+ # -c requirements/base.txt
# amqp
# celery
# kombu
virtualenv==20.29.2
# via pre-commit
wcwidth==0.2.13
- # via prompt-toolkit
+ # via
+ # -c requirements/base.txt
+ # prompt-toolkit
websocket-client==1.8.0
- # via selenium
+ # via
+ # -c requirements/base.txt
+ # selenium
werkzeug==3.1.3
# via
+ # -c requirements/base.txt
# flask
# flask-appbuilder
# flask-jwt-extended
# flask-login
wrapt==1.17.2
- # via deprecated
+ # via
+ # -c requirements/base.txt
+ # deprecated
wsproto==1.2.0
- # via trio-websocket
+ # via
+ # -c requirements/base.txt
+ # trio-websocket
wtforms==3.2.1
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# flask-appbuilder
# flask-wtf
# wtforms-json
wtforms-json==0.3.5
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
xlrd==2.0.1
- # via pandas
+ # via
+ # -c requirements/base.txt
+ # pandas
xlsxwriter==3.0.9
# via
- # apache-superset (pyproject.toml)
+ # -c requirements/base.txt
# apache-superset
# pandas
zope-event==5.0
@@ -777,4 +939,6 @@ zope-event==5.0
zope-interface==5.4.0
# via gevent
zstandard==0.23.0
- # via flask-compress
+ # via
+ # -c requirements/base.txt
+ # flask-compress
diff --git a/requirements/translations.txt b/requirements/translations.txt
index 88513034d0..1cd3ce84d7 100644
--- a/requirements/translations.txt
+++ b/requirements/translations.txt
@@ -1,431 +1,4 @@
# This file was autogenerated by uv via the following command:
-# uv pip compile pyproject.toml requirements/translations.in -o requirements/translations.txt
-alembic==1.16.2
- # via flask-migrate
-amqp==5.3.1
- # via kombu
-apispec==6.8.2
- # via flask-appbuilder
-apsw==3.50.2.0
- # via shillelagh
-attrs==25.3.0
- # via
- # cattrs
- # jsonschema
- # outcome
- # referencing
- # requests-cache
- # trio
+# uv pip compile requirements/translations.in -o requirements/translations.txt
babel==2.17.0
- # via
- # -r requirements/translations.in
- # flask-babel
-backoff==2.2.1
- # via apache-superset (pyproject.toml)
-bcrypt==4.3.0
- # via paramiko
-billiard==4.2.1
- # via celery
-blinker==1.9.0
- # via flask
-bottleneck==1.5.0
- # via apache-superset (pyproject.toml)
-brotli==1.1.0
- # via flask-compress
-cachelib==0.13.0
- # via
- # flask-caching
- # flask-session
-cachetools==5.5.2
- # via google-auth
-cattrs==25.1.1
- # via requests-cache
-celery==5.5.3
- # via apache-superset (pyproject.toml)
-certifi==2025.6.15
- # via
- # requests
- # selenium
-cffi==1.17.1
- # via
- # cryptography
- # pynacl
-charset-normalizer==3.4.2
- # via requests
-click==8.2.1
- # via
- # apache-superset (pyproject.toml)
- # celery
- # click-didyoumean
- # click-option-group
- # click-plugins
- # click-repl
- # flask
- # flask-appbuilder
-click-didyoumean==0.3.1
- # via celery
-click-option-group==0.5.7
- # via apache-superset (pyproject.toml)
-click-plugins==1.1.1.2
- # via celery
-click-repl==0.3.0
- # via celery
-colorama==0.4.6
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
-cron-descriptor==1.4.5
- # via apache-superset (pyproject.toml)
-croniter==6.0.0
- # via apache-superset (pyproject.toml)
-cryptography==44.0.3
- # via
- # apache-superset (pyproject.toml)
- # paramiko
- # pyopenssl
-defusedxml==0.7.1
- # via odfpy
-deprecated==1.2.18
- # via limits
-deprecation==2.1.0
- # via apache-superset (pyproject.toml)
-dnspython==2.7.0
- # via email-validator
-email-validator==2.2.0
- # via flask-appbuilder
-et-xmlfile==2.0.0
- # via openpyxl
-flask==2.3.3
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
- # flask-babel
- # flask-caching
- # flask-compress
- # flask-jwt-extended
- # flask-limiter
- # flask-login
- # flask-migrate
- # flask-session
- # flask-sqlalchemy
- # flask-wtf
-flask-appbuilder==4.8.0
- # via apache-superset (pyproject.toml)
-flask-babel==2.0.0
- # via flask-appbuilder
-flask-caching==2.3.1
- # via apache-superset (pyproject.toml)
-flask-compress==1.17
- # via apache-superset (pyproject.toml)
-flask-jwt-extended==4.7.1
- # via flask-appbuilder
-flask-limiter==3.12
- # via flask-appbuilder
-flask-login==0.6.3
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
-flask-migrate==3.1.0
- # via apache-superset (pyproject.toml)
-flask-session==0.8.0
- # via apache-superset (pyproject.toml)
-flask-sqlalchemy==2.5.1
- # via
- # flask-appbuilder
- # flask-migrate
-flask-talisman==1.1.0
- # via apache-superset (pyproject.toml)
-flask-wtf==1.2.2
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
-geographiclib==2.0
- # via geopy
-geopy==2.4.1
- # via apache-superset (pyproject.toml)
-google-auth==2.40.3
- # via shillelagh
-greenlet==3.1.1
- # via
- # apache-superset (pyproject.toml)
- # shillelagh
- # sqlalchemy
-gunicorn==23.0.0
- # via apache-superset (pyproject.toml)
-h11==0.16.0
- # via wsproto
-hashids==1.3.1
- # via apache-superset (pyproject.toml)
-holidays==0.25
- # via apache-superset (pyproject.toml)
-humanize==4.12.3
- # via apache-superset (pyproject.toml)
-idna==3.10
- # via
- # email-validator
- # requests
- # trio
- # url-normalize
-isodate==0.7.2
- # via apache-superset (pyproject.toml)
-itsdangerous==2.2.0
- # via
- # flask
- # flask-wtf
-jinja2==3.1.6
- # via
- # flask
- # flask-babel
-jsonpath-ng==1.7.0
- # via apache-superset (pyproject.toml)
-jsonschema==4.24.0
- # via flask-appbuilder
-jsonschema-specifications==2025.4.1
- # via jsonschema
-kombu==5.5.4
- # via celery
-korean-lunar-calendar==0.3.1
- # via holidays
-limits==5.4.0
- # via flask-limiter
-mako==1.3.10
- # via
- # apache-superset (pyproject.toml)
- # alembic
-markdown==3.8.2
- # via apache-superset (pyproject.toml)
-markdown-it-py==3.0.0
- # via rich
-markupsafe==3.0.2
- # via
- # jinja2
- # mako
- # werkzeug
- # wtforms
-marshmallow==3.26.1
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
- # marshmallow-sqlalchemy
-marshmallow-sqlalchemy==1.4.2
- # via flask-appbuilder
-mdurl==0.1.2
- # via markdown-it-py
-msgpack==1.0.8
- # via apache-superset (pyproject.toml)
-msgspec==0.19.0
- # via flask-session
-nh3==0.2.21
- # via apache-superset (pyproject.toml)
-numpy==2.2.6
- # via
- # apache-superset (pyproject.toml)
- # bottleneck
- # pandas
-odfpy==1.4.1
- # via pandas
-openpyxl==3.1.5
- # via pandas
-ordered-set==4.1.0
- # via flask-limiter
-outcome==1.3.0.post0
- # via
- # trio
- # trio-websocket
-packaging==25.0
- # via
- # apache-superset (pyproject.toml)
- # apispec
- # deprecation
- # gunicorn
- # kombu
- # limits
- # marshmallow
- # shillelagh
-pandas==2.0.3
- # via apache-superset (pyproject.toml)
-paramiko==3.5.1
- # via
- # apache-superset (pyproject.toml)
- # sshtunnel
-parsedatetime==2.6
- # via apache-superset (pyproject.toml)
-pgsanity==0.2.9
- # via apache-superset (pyproject.toml)
-platformdirs==4.3.8
- # via requests-cache
-ply==3.11
- # via jsonpath-ng
-polyline==2.0.2
- # via apache-superset (pyproject.toml)
-prison==0.2.1
- # via flask-appbuilder
-prompt-toolkit==3.0.51
- # via click-repl
-pyarrow==18.1.0
- # via apache-superset (pyproject.toml)
-pyasn1==0.6.1
- # via
- # pyasn1-modules
- # rsa
-pyasn1-modules==0.4.2
- # via google-auth
-pycparser==2.22
- # via cffi
-pygments==2.19.2
- # via rich
-pyjwt==2.10.1
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
- # flask-jwt-extended
-pynacl==1.5.0
- # via paramiko
-pyopenssl==25.1.0
- # via shillelagh
-pyparsing==3.2.3
- # via apache-superset (pyproject.toml)
-pysocks==1.7.1
- # via urllib3
-python-dateutil==2.9.0.post0
- # via
- # apache-superset (pyproject.toml)
- # celery
- # croniter
- # flask-appbuilder
- # holidays
- # pandas
- # shillelagh
-python-dotenv==1.1.1
- # via apache-superset (pyproject.toml)
-python-geohash==0.8.5
- # via apache-superset (pyproject.toml)
-pytz==2025.2
- # via
- # croniter
- # flask-babel
- # pandas
-pyxlsb==1.0.10
- # via pandas
-pyyaml==6.0.2
- # via
- # apache-superset (pyproject.toml)
- # apispec
-redis==4.6.0
- # via apache-superset (pyproject.toml)
-referencing==0.36.2
- # via
- # jsonschema
- # jsonschema-specifications
-requests==2.32.4
- # via
- # requests-cache
- # shillelagh
-requests-cache==1.2.1
- # via shillelagh
-rich==13.9.4
- # via flask-limiter
-rpds-py==0.25.1
- # via
- # jsonschema
- # referencing
-rsa==4.9.1
- # via google-auth
-selenium==4.34.0
- # via apache-superset (pyproject.toml)
-shillelagh==1.3.5
- # via apache-superset (pyproject.toml)
-simplejson==3.20.1
- # via apache-superset (pyproject.toml)
-six==1.17.0
- # via
- # prison
- # python-dateutil
- # wtforms-json
-slack-sdk==3.35.0
- # via apache-superset (pyproject.toml)
-sniffio==1.3.1
- # via trio
-sortedcontainers==2.4.0
- # via trio
-sqlalchemy==1.4.54
- # via
- # apache-superset (pyproject.toml)
- # alembic
- # flask-appbuilder
- # flask-sqlalchemy
- # marshmallow-sqlalchemy
- # shillelagh
- # sqlalchemy-utils
-sqlalchemy-utils==0.38.3
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
-sqlglot==26.31.0
- # via apache-superset (pyproject.toml)
-sshtunnel==0.4.0
- # via apache-superset (pyproject.toml)
-tabulate==0.9.0
- # via apache-superset (pyproject.toml)
-trio==0.30.0
- # via
- # selenium
- # trio-websocket
-trio-websocket==0.12.2
- # via selenium
-typing-extensions==4.14.0
- # via
- # apache-superset (pyproject.toml)
- # alembic
- # cattrs
- # limits
- # pyopenssl
- # referencing
- # selenium
- # shillelagh
-tzdata==2025.2
- # via
- # kombu
- # pandas
-url-normalize==2.2.1
- # via requests-cache
-urllib3==2.4.0
- # via
- # requests
- # requests-cache
- # selenium
-vine==5.1.0
- # via
- # amqp
- # celery
- # kombu
-wcwidth==0.2.13
- # via prompt-toolkit
-websocket-client==1.8.0
- # via selenium
-werkzeug==3.1.3
- # via
- # flask
- # flask-appbuilder
- # flask-jwt-extended
- # flask-login
-wrapt==1.17.2
- # via deprecated
-wsproto==1.2.0
- # via trio-websocket
-wtforms==3.2.1
- # via
- # apache-superset (pyproject.toml)
- # flask-appbuilder
- # flask-wtf
- # wtforms-json
-wtforms-json==0.3.5
- # via apache-superset (pyproject.toml)
-xlrd==2.0.2
- # via pandas
-xlsxwriter==3.0.9
- # via
- # apache-superset (pyproject.toml)
- # pandas
-zstandard==0.23.0
- # via flask-compress
+ # via -r requirements/translations.in