| # 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. |
| [build-system] |
| requires = ["flit_core >=3.12.0,<4"] |
| build-backend = "flit_core.buildapi" |
| |
| [project] |
| name = "apache-airflow-breeze" |
| version = "0.0.1" |
| description = "Apache Airflow Breeze development environment" |
| readme = "README.md" |
| authors = [ |
| {name="Apache Software Foundation", email="dev@airflow.apache.org"}, |
| ] |
| maintainers = [ |
| {name="Apache Software Foundation", email="dev@airflow.apache.org"}, |
| ] |
| keywords = [ "airflow", "development", "ci" ] |
| classifiers = [ |
| "Development Status :: 5 - Production/Stable", |
| "Environment :: Console", |
| "Intended Audience :: Developers", |
| "Framework :: Apache Airflow", |
| "Programming Language :: Python :: 3.10", |
| "Programming Language :: Python :: 3.11", |
| "Programming Language :: Python :: 3.12", |
| "Programming Language :: Python :: 3.13", |
| "Programming Language :: Python :: 3.14", |
| ] |
| requires-python = ">=3.10,!=3.15" |
| |
| dependencies = [ |
| "black>=26.1.0", |
| "click>=8.3.0", |
| "filelock>=3.13.0", |
| "flit>=3.12.0", |
| "flit-core>=3.12.0", |
| "google-api-python-client>=2.142.0", |
| "google-auth-httplib2>=0.2.0", |
| "google-auth-oauthlib>=1.2.0", |
| "gitpython>=3.1.40", |
| "hatch>=1.16.5", |
| "inputimeout>=1.0.4", |
| "jinja2>=3.1.5", |
| "jsonschema>=4.19.1", |
| "packaging>=25.0", |
| "prek>=0.4.1", |
| "psutil>=5.9.6", |
| "pygithub>=2.1.1", |
| "pytest-xdist>=3.3.1", |
| "pytest>=9.0.0", |
| "pyyaml>=6.0.3", |
| "requests>=2.32.0", |
| "restructuredtext-lint>=1.4.0", |
| "rich-click>=1.9.7", |
| "rich>=13.6.0", |
| "tabulate>=0.9.0", |
| "tomli>=2.0.1; python_version < '3.11'", |
| "twine>=4.0.2", |
| "tqdm>=4.67.1", |
| "boto3>=1.37.2", |
| "semver>=3.0.4" |
| ] |
| |
| [project.scripts] |
| breeze = "airflow_breeze.breeze:main" |
| |
| [tool.flit.module] |
| name = "airflow_breeze" |
| |
| # Explicit sdist contents so the build does not rely on VCS information |
| # (flit 4.0 makes --no-use-vcs the default — see https://github.com/pypa/flit/pull/782). |
| [tool.flit.sdist] |
| include = [ |
| "autocomplete/", |
| "doc/", |
| "tests/", |
| "uv.lock", |
| ] |
| |
| [tool.black] |
| line-length = 110 |
| target-version = ['py310', 'py311', 'py312'] |
| |
| [tool.pytest] |
| addopts = [ |
| "-rasl", |
| "--verbosity=2", |
| "-p", "no:flaky", |
| "-p", "no:nose", |
| "-p", "no:legacypath", |
| ] |
| |
| norecursedirs = [ |
| ".eggs", |
| ] |
| log_level = "INFO" |
| filterwarnings = [ |
| "error::pytest.PytestCollectionWarning", |
| ] |
| python_files = [ |
| "*.py", |
| ] |
| testpaths = [ |
| "tests", |
| ] |
| # Keep temporary directories (created by `tmp_path`) for 2 recent runs only failed tests. |
| tmp_path_retention_count = "2" |
| tmp_path_retention_policy = "failed" |
| |
| [tool.ruff] |
| extend = "../../pyproject.toml" |
| src = ["src"] |
| |
| [tool.uv] |
| # Synchroonize with scripts/ci/prek/upgrade_important_versions.py |
| exclude-newer = "4 days" |
| |
| [tool.mypy] |
| ignore_missing_imports = true |
| no_implicit_optional = true |
| warn_redundant_casts = true |
| warn_unused_ignores = false |
| pretty = true |
| |
| [tool.isort] |
| line_length = 110 |
| combine_as_imports = true |
| default_section = "THIRDPARTY" |
| known_first_party = "airflow,airflow_breeze,tests" |
| skip= "build,.tox,venv" |
| profile = "black" |