加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
setup.cfg 8.79 KB
一键复制 编辑 原始数据 按行查看 历史
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# 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
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
[metadata]
name = apache-airflow
summary = Programmatically author, schedule and monitor data pipelines
author = Apache Software Foundation
author_email = dev@airflow.apache.org
url = https://airflow.apache.org/
version = attr: airflow.__version__
long_description = file: generated/PYPI_README.md
long_description_content_type = text/markdown
license = Apache License 2.0
license_files =
LICENSE
NOTICE
licenses/*.txt
classifiers =
Development Status :: 5 - Production/Stable
Environment :: Console
Environment :: Web Environment
Intended Audience :: Developers
Intended Audience :: System Administrators
License :: OSI Approved :: Apache Software License
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Programming Language :: Python :: 3.11
Topic :: System :: Monitoring
Framework :: Apache Airflow
project_urls =
Bug Tracker=https://github.com/apache/airflow/issues
Documentation=https://airflow.apache.org/docs/
Downloads=https://archive.apache.org/dist/airflow/
Release Notes=https://airflow.apache.org/docs/apache-airflow/stable/release_notes.html
Slack Chat=https://s.apache.org/airflow-slack
Source Code=https://github.com/apache/airflow
Twitter=https://twitter.com/ApacheAirflow
YouTube=https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
[options]
zip_safe = False
include_package_data = True
# Mainly because of distutils deprecation and some packages not being compatible with it, we should
# Limit airflow to < 3.12 until those dependencies are ready and until we can support Python 3.12
python_requires = ~=3.8,<3.12
packages = find:
setup_requires =
gitpython
wheel
#####################################################################################################
# IMPORTANT NOTE!!!!!!!!!!!!!!!
# IF you are removing dependencies from this list, please make sure that you also increase
# DEPENDENCIES_EPOCH_NUMBER in the Dockerfile.ci
#####################################################################################################
install_requires =
# Alembic is important to handle our migrations in predictable and performant way. It is developed
# together with SQLAlchemy. Our experience with Alembic is that it very stable in minor version
alembic>=1.6.3, <2.0
argcomplete>=1.10
asgiref
attrs>=22.1.0
blinker
# Colorlog 6.x merges TTYColoredFormatter into ColoredFormatter, breaking backwards compatibility with 4.x
# Update CustomTTYColoredFormatter to remove
colorlog>=4.0.2, <5.0
configupdater>=3.1.1
# `airflow/www/extensions/init_views` imports `connexion.decorators.validation.RequestBodyValidator`
# connexion v3 has refactored the entire module to middleware, see: /spec-first/connexion/issues/1525
# Specifically, RequestBodyValidator was removed in: /spec-first/connexion/pull/1595
# The usage was added in #30596, seemingly only to override and improve the default error message.
# Either revert that change or find another way, preferably without using connexion internals.
# This limit can be removed after https://github.com/apache/airflow/issues/35234 is fixed
connexion[flask]>=2.10.0,<3.0
cron-descriptor>=1.2.24
croniter>=0.3.17
cryptography>=0.9.3
deprecated>=1.2.13
dill>=0.2.2
# Flask 2.3 is scheduled to introduce a number of deprecation removals - some of them might be breaking
# for our dependencies - notably `_app_ctx_stack` and `_request_ctx_stack` removals.
# We should remove the limitation after 2.3 is released and our dependencies are updated to handle it
flask>=2.2,<2.3
# We are tightly coupled with FAB version because we vendored in part of FAB code related to security manager
# This is done as part of preparation to removing FAB as dependency, but we are not ready for it yet
# Every time we update FAB version here, please make sure that you review the classes and models in
# `airflow/www/fab_security` with their upstream counterparts. In particular, make sure any breaking changes,
# for example any new methods, are accounted for.
# NOTE! When you change the value here, you also have to update flask-appbuilder[oauth] in setup.py
flask-appbuilder==4.3.9
flask-caching>=1.5.0
flask-login>=0.6.2
flask-session>=0.4.0
flask-wtf>=0.15
fsspec>=2023.9.2
google-re2>=1.0
graphviz>=0.12
gunicorn>=20.1.0
httpx
importlib_metadata>=1.7;python_version<"3.9"
importlib_resources>=5.2;python_version<"3.9"
itsdangerous>=2.0
jinja2>=3.0.0
jsonschema>=4.18.0
lazy-object-proxy
linkify-it-py>=2.0.0
lockfile>=0.12.2
markdown>=3.0
markdown-it-py>=2.1.0
markupsafe>=1.1.1
marshmallow-oneofschema>=2.0.1
mdit-py-plugins>=0.3.0
opentelemetry-api>=1.15.0
opentelemetry-exporter-otlp
packaging>=14.0
pathspec>=0.9.0
# When (if) pendulum 3 released it would introduce changes in module/objects imports,
# since we are tightly coupled with pendulum library internally it will breaks Airflow functionality.
pendulum>=2.0,<3.0
pluggy>=1.0
psutil>=4.2.0
pydantic>=2.3.0
pygments>=2.0.1
pyjwt>=2.0.0
python-daemon>=3.0.0
python-dateutil>=2.3
python-nvd3>=0.15.0
python-slugify>=5.0
rfc3339_validator>=0.1.4
rich>=12.4.4
rich-argparse>=1.0.0
setproctitle>=1.1.8
# We use some deprecated features of sqlalchemy 2.0 and we should replace them before we can upgrade
# See https://sqlalche.me/e/b8d9 for details of deprecated features
# you can set environment variable SQLALCHEMY_WARN_20=1 to show all deprecation warnings.
# The issue tracking it is https://github.com/apache/airflow/issues/28723
sqlalchemy>=1.4.28,<2.0
sqlalchemy_jsonfield>=1.0
tabulate>=0.7.5
tenacity>=6.2.0,!=8.2.0
termcolor>=1.1.0
typing-extensions>=4.0.0
# We should remove this dependency when Providers are limited to Airflow 2.7+
# as we replaced the usage of unicodecsv with csv in Airflow 2.7
# See https://github.com/apache/airflow/pull/31693
# We should also remove "licenses/LICENSE-unicodecsv.txt" file when we remove this dependency
unicodecsv>=0.14.1
universal_pathlib>=0.1.4
werkzeug>=2.0
[options.packages.find]
include =
airflow*
[options.package_data]
airflow=
py.typed
alembic.ini
git_version
customized_form_field_behaviours.schema.json
provider_info.schema.json
airflow.api_connexion.openapi=*.yaml
airflow.auth.managers.fab.openapi=*.yaml
airflow.serialization=*.json
airflow.utils=
context.pyi
[options.data_files]
generated=
generated/provider_dependencies.json
[options.entry_points]
console_scripts=
airflow=airflow.__main__:main
[bdist_wheel]
python-tag=py3
[files]
packages = airflow
[easy_install]
[mypy]
ignore_missing_imports = True
no_implicit_optional = True
warn_redundant_casts = True
warn_unused_ignores = False
plugins =
dev.mypy.plugin.decorators,
dev.mypy.plugin.outputs
pretty = True
show_error_codes = True
# Mypy since 0.991 warns about type annotations being present in an untyped
# function since they are not checked and technically meaningless. Ideally we
# should make them meaningful by setting check_untyped_defs = True, but there
# are too many issues in those currently unchecked functions to make it viable
# in the short term, so this error is simply ignored for now.
disable_error_code = annotation-unchecked
[mypy-airflow.config_templates.default_webserver_config]
# This file gets written to user installs, so lets not litter it with type comments
disable_error_code = var-annotated
[mypy-airflow.migrations.*]
ignore_errors = True
# Let's assume all google.cloud packages have implicit optionals
# Most of them don't but even if they do, it does not matter
[mypy-google.cloud.*]
no_implicit_optional = False
# Let's assume all azure packages have implicit optionals
[mypy-azure.*]
no_implicit_optional = False
[mypy-referencing.*]
# Referencing has some old type annotations that are not compatible with new versions of mypy
ignore_errors = True
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化