This is an automated email from the ASF dual-hosted git repository.
ash pushed a change to branch generate-task-jwt-tokens
in repository https://gitbox.apache.org/repos/asf/airflow.git
discard fee57a190d0 Add JWT validation and generation machinery for the Task
Execution API to use
add c341726abbb Fix overriding of package suffix by skipped packages
(#46960)
add 36ae4683d38 pass error for on_task_instance_failed in task sdk (#46941)
add 69a07959307 boring-cyborg add `area:API` for PRs in
`airflow/api_fastapi` (#46963)
add ebe307bf609 Fix typo in tmux pane (#46965)
add 9ee7cc69104 Optimize DAG versioning for dynamic DAGs (#46934)
add 00ff7fa50c1 Add provider dependency group to dependaboat config
(#46948)
add 0653ffe78e4 Prepare docs for Feb 1st wave of providers (fixed) (#46962)
add b751983c6dd AIP-38 Allow specifiying injectable server url (#46900)
add b28c336e8b7 Upgrade flit to 3.11.0 (#46938)
add 2343f38ff50 AIP-38 Injectable path for static files (#46933)
add 106b8726724 Ensure that the the generated airflow.cfg contains a
random jwt_secret and fernet_key (#46966)
add 2d267ddcad4 Move execution_api_server_url config to the core section
(#46969)
new 8082a2d4dd0 Add JWT validation and generation machinery for the Task
Execution API to use
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (fee57a190d0)
\
N -- N -- N refs/heads/generate-task-jwt-tokens (8082a2d4dd0)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
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.
Summary of changes:
.github/boring-cyborg.yml | 2 +
.github/dependabot.yml | 10 +
airflow/api_fastapi/core_api/app.py | 9 +-
airflow/api_fastapi/core_api/security.py | 12 -
airflow/auth/managers/base_auth_manager.py | 32 +-
airflow/auth/managers/simple/services/login.py | 12 +-
.../auth/managers/simple/simple_auth_manager.py | 6 +-
airflow/config_templates/config.yml | 7 +
airflow/config_templates/unit_tests.cfg | 3 +
airflow/configuration.py | 26 +-
airflow/executors/local_executor.py | 2 +-
.../versions/0047_3_0_0_add_dag_versioning.py | 8 +-
airflow/models/dag_version.py | 1 +
airflow/models/dagcode.py | 1 +
airflow/models/serialized_dag.py | 25 ++
airflow/security/tokens.py | 221 ++++++++++---
airflow/ui/dev/index.html | 1 +
airflow/ui/index.html | 4 +-
airflow/ui/src/queryClient.ts | 5 +
airflow/ui/src/router.tsx | 6 +-
airflow/ui/vite.config.ts | 3 +-
airflow/utils/jwt_signer.py | 85 -----
airflow/utils/log/file_task_handler.py | 9 +-
airflow/utils/serve_logs.py | 9 +-
chart/templates/configmaps/configmap.yaml | 8 +-
dev/breeze/README.md | 2 +-
dev/breeze/pyproject.toml | 6 +-
.../commands/release_management_commands.py | 77 +++--
.../prepare_providers/provider_packages.py | 2 +-
.../templates/pyproject_TEMPLATE.toml.jinja2 | 2 +-
docs/apache-airflow/img/airflow_erd.sha256 | 2 +-
docs/apache-airflow/img/airflow_erd.svg | 347 +++++++++++----------
providers/airbyte/pyproject.toml | 2 +-
providers/alibaba/pyproject.toml | 2 +-
providers/amazon/README.rst | 6 +-
providers/amazon/docs/changelog.rst | 10 +-
providers/amazon/docs/commits.rst | 5 +-
providers/amazon/docs/index.rst | 6 +-
providers/amazon/provider.yaml | 2 +-
providers/amazon/pyproject.toml | 8 +-
.../src/airflow/providers/amazon/__init__.py | 2 +-
.../amazon/aws/auth_manager/aws_auth_manager.py | 5 +-
.../airflow/providers/amazon/get_provider_info.py | 2 +-
providers/apache/beam/README.rst | 6 +-
providers/apache/beam/docs/changelog.rst | 6 +
providers/apache/beam/docs/commits.rst | 5 +-
providers/apache/beam/docs/index.rst | 6 +-
providers/apache/beam/provider.yaml | 2 +-
providers/apache/beam/pyproject.toml | 8 +-
.../src/airflow/providers/apache/beam/__init__.py | 2 +-
.../providers/apache/beam/get_provider_info.py | 2 +-
providers/apache/cassandra/pyproject.toml | 2 +-
providers/apache/drill/pyproject.toml | 2 +-
providers/apache/druid/pyproject.toml | 2 +-
providers/apache/flink/pyproject.toml | 2 +-
providers/apache/hdfs/pyproject.toml | 2 +-
providers/apache/hive/README.rst | 6 +-
providers/apache/hive/docs/changelog.rst | 6 +
providers/apache/hive/docs/commits.rst | 5 +-
providers/apache/hive/docs/index.rst | 6 +-
providers/apache/hive/provider.yaml | 2 +-
providers/apache/hive/pyproject.toml | 8 +-
.../src/airflow/providers/apache/hive/__init__.py | 2 +-
.../providers/apache/hive/get_provider_info.py | 2 +-
providers/apache/iceberg/pyproject.toml | 2 +-
providers/apache/impala/pyproject.toml | 2 +-
providers/apache/kafka/pyproject.toml | 2 +-
providers/apache/kylin/pyproject.toml | 2 +-
providers/apache/livy/README.rst | 6 +-
providers/apache/livy/docs/changelog.rst | 7 +
providers/apache/livy/docs/commits.rst | 12 +-
providers/apache/livy/docs/index.rst | 8 +-
providers/apache/livy/provider.yaml | 2 +-
providers/apache/livy/pyproject.toml | 8 +-
.../src/airflow/providers/apache/livy/__init__.py | 2 +-
.../providers/apache/livy/get_provider_info.py | 2 +-
providers/apache/pig/pyproject.toml | 2 +-
providers/apache/pinot/pyproject.toml | 2 +-
providers/apache/spark/pyproject.toml | 2 +-
providers/apprise/pyproject.toml | 2 +-
providers/arangodb/README.rst | 6 +-
providers/arangodb/docs/changelog.rst | 6 +
providers/arangodb/docs/commits.rst | 5 +-
providers/arangodb/docs/index.rst | 2 +-
providers/arangodb/provider.yaml | 2 +-
providers/arangodb/pyproject.toml | 8 +-
.../src/airflow/providers/arangodb/__init__.py | 2 +-
.../providers/arangodb/get_provider_info.py | 2 +-
providers/asana/README.rst | 6 +-
providers/asana/docs/changelog.rst | 6 +
providers/asana/docs/commits.rst | 5 +-
providers/asana/docs/index.rst | 2 +-
providers/asana/provider.yaml | 2 +-
providers/asana/pyproject.toml | 8 +-
.../asana/src/airflow/providers/asana/__init__.py | 2 +-
.../airflow/providers/asana/get_provider_info.py | 2 +-
providers/atlassian/jira/pyproject.toml | 2 +-
providers/celery/README.rst | 6 +-
providers/celery/docs/changelog.rst | 6 +
providers/celery/docs/commits.rst | 5 +-
providers/celery/docs/index.rst | 6 +-
providers/celery/provider.yaml | 2 +-
providers/celery/pyproject.toml | 8 +-
.../src/airflow/providers/celery/__init__.py | 2 +-
.../celery/executors/celery_executor_utils.py | 2 +-
.../airflow/providers/celery/get_provider_info.py | 2 +-
providers/cloudant/pyproject.toml | 2 +-
providers/cncf/kubernetes/README.rst | 6 +-
providers/cncf/kubernetes/docs/changelog.rst | 6 +
providers/cncf/kubernetes/docs/commits.rst | 5 +-
providers/cncf/kubernetes/docs/index.rst | 2 +-
providers/cncf/kubernetes/provider.yaml | 2 +-
providers/cncf/kubernetes/pyproject.toml | 8 +-
.../airflow/providers/cncf/kubernetes/__init__.py | 2 +-
.../providers/cncf/kubernetes/get_provider_info.py | 2 +-
providers/cohere/README.rst | 6 +-
providers/cohere/docs/changelog.rst | 6 +
providers/cohere/docs/commits.rst | 5 +-
providers/cohere/docs/index.rst | 2 +-
providers/cohere/provider.yaml | 2 +-
providers/cohere/pyproject.toml | 8 +-
.../src/airflow/providers/cohere/__init__.py | 2 +-
.../airflow/providers/cohere/get_provider_info.py | 2 +-
providers/common/compat/README.rst | 6 +-
providers/common/compat/docs/changelog.rst | 6 +
providers/common/compat/docs/commits.rst | 5 +-
providers/common/compat/docs/index.rst | 6 +-
providers/common/compat/provider.yaml | 2 +-
providers/common/compat/pyproject.toml | 8 +-
.../airflow/providers/common/compat/__init__.py | 2 +-
.../providers/common/compat/get_provider_info.py | 2 +-
providers/common/io/pyproject.toml | 2 +-
providers/common/sql/README.rst | 6 +-
providers/common/sql/docs/changelog.rst | 6 +
providers/common/sql/docs/commits.rst | 5 +-
providers/common/sql/docs/index.rst | 6 +-
providers/common/sql/provider.yaml | 2 +-
providers/common/sql/pyproject.toml | 8 +-
.../src/airflow/providers/common/sql/__init__.py | 2 +-
.../providers/common/sql/get_provider_info.py | 2 +-
providers/databricks/README.rst | 6 +-
providers/databricks/docs/changelog.rst | 6 +
providers/databricks/docs/commits.rst | 5 +-
providers/databricks/docs/index.rst | 6 +-
providers/databricks/provider.yaml | 2 +-
providers/databricks/pyproject.toml | 8 +-
.../src/airflow/providers/databricks/__init__.py | 2 +-
.../providers/databricks/get_provider_info.py | 2 +-
providers/datadog/README.rst | 6 +-
providers/datadog/docs/changelog.rst | 6 +
providers/datadog/docs/commits.rst | 5 +-
providers/datadog/docs/index.rst | 2 +-
providers/datadog/provider.yaml | 2 +-
providers/datadog/pyproject.toml | 8 +-
.../src/airflow/providers/datadog/__init__.py | 2 +-
.../airflow/providers/datadog/get_provider_info.py | 2 +-
providers/dbt/cloud/README.rst | 6 +-
providers/dbt/cloud/docs/changelog.rst | 6 +
providers/dbt/cloud/docs/commits.rst | 5 +-
providers/dbt/cloud/docs/index.rst | 6 +-
providers/dbt/cloud/provider.yaml | 2 +-
providers/dbt/cloud/pyproject.toml | 8 +-
.../src/airflow/providers/dbt/cloud/__init__.py | 2 +-
.../providers/dbt/cloud/get_provider_info.py | 2 +-
providers/dingding/README.rst | 6 +-
providers/dingding/docs/changelog.rst | 6 +
providers/dingding/docs/commits.rst | 5 +-
providers/dingding/docs/index.rst | 6 +-
providers/dingding/provider.yaml | 2 +-
providers/dingding/pyproject.toml | 8 +-
.../src/airflow/providers/dingding/__init__.py | 2 +-
.../providers/dingding/get_provider_info.py | 2 +-
providers/discord/README.rst | 6 +-
providers/discord/docs/changelog.rst | 6 +
providers/discord/docs/commits.rst | 5 +-
providers/discord/docs/index.rst | 6 +-
providers/discord/provider.yaml | 2 +-
providers/discord/pyproject.toml | 8 +-
.../src/airflow/providers/discord/__init__.py | 2 +-
.../airflow/providers/discord/get_provider_info.py | 2 +-
providers/docker/README.rst | 6 +-
providers/docker/docs/changelog.rst | 6 +
providers/docker/docs/commits.rst | 5 +-
providers/docker/docs/index.rst | 6 +-
providers/docker/provider.yaml | 2 +-
providers/docker/pyproject.toml | 8 +-
.../src/airflow/providers/docker/__init__.py | 2 +-
.../airflow/providers/docker/get_provider_info.py | 2 +-
providers/edge/pyproject.toml | 2 +-
.../src/airflow/providers/edge/cli/edge_command.py | 4 +-
.../src/airflow/providers/edge/worker_api/auth.py | 11 +-
providers/elasticsearch/README.rst | 6 +-
providers/elasticsearch/docs/changelog.rst | 7 +
providers/elasticsearch/docs/commits.rst | 5 +-
providers/elasticsearch/docs/index.rst | 6 +-
providers/elasticsearch/provider.yaml | 2 +-
providers/elasticsearch/pyproject.toml | 8 +-
.../airflow/providers/elasticsearch/__init__.py | 2 +-
.../providers/elasticsearch/get_provider_info.py | 2 +-
providers/exasol/README.rst | 6 +-
providers/exasol/docs/changelog.rst | 6 +
providers/exasol/docs/commits.rst | 5 +-
providers/exasol/docs/index.rst | 6 +-
providers/exasol/provider.yaml | 2 +-
providers/exasol/pyproject.toml | 8 +-
.../src/airflow/providers/exasol/__init__.py | 2 +-
.../airflow/providers/exasol/get_provider_info.py | 2 +-
providers/fab/pyproject.toml | 2 +-
.../providers/fab/auth_manager/fab_auth_manager.py | 6 +-
providers/facebook/pyproject.toml | 2 +-
providers/ftp/README.rst | 6 +-
providers/ftp/docs/changelog.rst | 6 +
providers/ftp/docs/commits.rst | 5 +-
providers/ftp/docs/index.rst | 6 +-
providers/ftp/provider.yaml | 2 +-
providers/ftp/pyproject.toml | 8 +-
.../ftp/src/airflow/providers/ftp/__init__.py | 2 +-
.../src/airflow/providers/ftp/get_provider_info.py | 2 +-
providers/github/README.rst | 6 +-
providers/github/docs/changelog.rst | 6 +
providers/github/docs/commits.rst | 5 +-
providers/github/docs/index.rst | 2 +-
providers/github/provider.yaml | 2 +-
providers/github/pyproject.toml | 8 +-
.../src/airflow/providers/github/__init__.py | 2 +-
.../airflow/providers/github/get_provider_info.py | 2 +-
providers/google/README.rst | 6 +-
providers/google/docs/changelog.rst | 6 +
providers/google/docs/commits.rst | 3 +-
providers/google/docs/index.rst | 6 +-
providers/google/provider.yaml | 2 +-
providers/google/pyproject.toml | 8 +-
.../src/airflow/providers/google/__init__.py | 2 +-
.../airflow/providers/google/get_provider_info.py | 2 +-
providers/grpc/README.rst | 6 +-
providers/grpc/docs/changelog.rst | 6 +
providers/grpc/docs/commits.rst | 5 +-
providers/grpc/docs/index.rst | 2 +-
providers/grpc/provider.yaml | 2 +-
providers/grpc/pyproject.toml | 8 +-
.../grpc/src/airflow/providers/grpc/__init__.py | 2 +-
.../airflow/providers/grpc/get_provider_info.py | 2 +-
providers/hashicorp/pyproject.toml | 2 +-
providers/http/README.rst | 6 +-
providers/http/docs/changelog.rst | 6 +
providers/http/docs/commits.rst | 5 +-
providers/http/docs/index.rst | 2 +-
providers/http/provider.yaml | 2 +-
providers/http/pyproject.toml | 8 +-
.../http/src/airflow/providers/http/__init__.py | 2 +-
.../airflow/providers/http/get_provider_info.py | 2 +-
providers/imap/README.rst | 6 +-
providers/imap/docs/changelog.rst | 6 +
providers/imap/docs/commits.rst | 5 +-
providers/imap/docs/index.rst | 2 +-
providers/imap/provider.yaml | 2 +-
providers/imap/pyproject.toml | 8 +-
.../imap/src/airflow/providers/imap/__init__.py | 2 +-
.../airflow/providers/imap/get_provider_info.py | 2 +-
providers/influxdb/README.rst | 6 +-
providers/influxdb/docs/changelog.rst | 6 +
providers/influxdb/docs/commits.rst | 5 +-
providers/influxdb/docs/index.rst | 2 +-
providers/influxdb/provider.yaml | 2 +-
providers/influxdb/pyproject.toml | 8 +-
.../src/airflow/providers/influxdb/__init__.py | 2 +-
.../providers/influxdb/get_provider_info.py | 2 +-
providers/jdbc/pyproject.toml | 2 +-
providers/jenkins/README.rst | 6 +-
providers/jenkins/docs/changelog.rst | 6 +
providers/jenkins/docs/commits.rst | 5 +-
providers/jenkins/docs/index.rst | 2 +-
providers/jenkins/provider.yaml | 2 +-
providers/jenkins/pyproject.toml | 8 +-
.../src/airflow/providers/jenkins/__init__.py | 2 +-
.../airflow/providers/jenkins/get_provider_info.py | 2 +-
providers/microsoft/azure/README.rst | 6 +-
providers/microsoft/azure/docs/changelog.rst | 6 +
providers/microsoft/azure/docs/commits.rst | 5 +-
providers/microsoft/azure/docs/index.rst | 6 +-
providers/microsoft/azure/provider.yaml | 2 +-
providers/microsoft/azure/pyproject.toml | 8 +-
.../airflow/providers/microsoft/azure/__init__.py | 2 +-
.../providers/microsoft/azure/get_provider_info.py | 2 +-
providers/microsoft/mssql/README.rst | 6 +-
providers/microsoft/mssql/docs/changelog.rst | 6 +
providers/microsoft/mssql/docs/commits.rst | 5 +-
providers/microsoft/mssql/docs/index.rst | 6 +-
providers/microsoft/mssql/provider.yaml | 2 +-
providers/microsoft/mssql/pyproject.toml | 8 +-
.../airflow/providers/microsoft/mssql/__init__.py | 2 +-
.../providers/microsoft/mssql/get_provider_info.py | 2 +-
providers/microsoft/psrp/pyproject.toml | 2 +-
providers/microsoft/winrm/README.rst | 6 +-
providers/microsoft/winrm/docs/changelog.rst | 6 +
providers/microsoft/winrm/docs/commits.rst | 5 +-
providers/microsoft/winrm/docs/index.rst | 2 +-
providers/microsoft/winrm/provider.yaml | 2 +-
providers/microsoft/winrm/pyproject.toml | 8 +-
.../airflow/providers/microsoft/winrm/__init__.py | 2 +-
.../providers/microsoft/winrm/get_provider_info.py | 2 +-
providers/mongo/pyproject.toml | 2 +-
providers/mysql/pyproject.toml | 2 +-
providers/neo4j/pyproject.toml | 2 +-
providers/odbc/pyproject.toml | 2 +-
providers/openai/pyproject.toml | 2 +-
providers/openfaas/pyproject.toml | 2 +-
providers/openlineage/docs/changelog.rst | 2 +
providers/openlineage/docs/commits.rst | 4 +-
providers/openlineage/pyproject.toml | 2 +-
.../providers/openlineage/plugins/listener.py | 24 +-
providers/opensearch/pyproject.toml | 2 +-
providers/opsgenie/pyproject.toml | 2 +-
providers/oracle/pyproject.toml | 2 +-
providers/pagerduty/pyproject.toml | 2 +-
providers/papermill/pyproject.toml | 2 +-
providers/pgvector/pyproject.toml | 2 +-
providers/pinecone/pyproject.toml | 2 +-
providers/postgres/pyproject.toml | 2 +-
providers/presto/pyproject.toml | 2 +-
providers/qdrant/pyproject.toml | 2 +-
providers/redis/pyproject.toml | 2 +-
providers/salesforce/pyproject.toml | 2 +-
providers/samba/pyproject.toml | 2 +-
providers/segment/pyproject.toml | 2 +-
providers/sendgrid/pyproject.toml | 2 +-
providers/sftp/pyproject.toml | 2 +-
providers/singularity/pyproject.toml | 2 +-
providers/slack/pyproject.toml | 2 +-
providers/smtp/pyproject.toml | 2 +-
providers/snowflake/pyproject.toml | 2 +-
providers/sqlite/pyproject.toml | 2 +-
providers/ssh/pyproject.toml | 2 +-
providers/standard/pyproject.toml | 2 +-
providers/tableau/pyproject.toml | 2 +-
providers/telegram/pyproject.toml | 2 +-
providers/teradata/pyproject.toml | 2 +-
providers/trino/pyproject.toml | 2 +-
providers/vertica/pyproject.toml | 2 +-
providers/weaviate/pyproject.toml | 2 +-
providers/yandex/pyproject.toml | 2 +-
providers/ydb/pyproject.toml | 2 +-
providers/zendesk/pyproject.toml | 2 +-
scripts/in_container/bin/run_tmux | 2 +-
.../airflow/sdk/execution_time/execute_workload.py | 7 +-
.../src/airflow/sdk/execution_time/task_runner.py | 32 +-
task_sdk/tests/execution_time/test_task_runner.py | 15 +-
.../endpoints/test_dag_source_endpoint.py | 13 +-
.../core_api/routes/public/test_dag_sources.py | 13 +-
.../managers/simple/test_simple_auth_manager.py | 4 +-
tests/auth/managers/test_base_auth_manager.py | 25 +-
tests/core/test_configuration.py | 32 +-
tests/models/test_dag_version.py | 1 +
tests/models/test_dagcode.py | 11 +-
tests/models/test_serialized_dag.py | 59 ++++
tests/security/test_tokens.py | 39 ++-
tests/utils/test_serve_logs.py | 30 +-
357 files changed, 1504 insertions(+), 983 deletions(-)
delete mode 100644 airflow/utils/jwt_signer.py