Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions airflow-core/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ classifiers = [
]

# Version is defined in src/airflow/__init__.py and it is automatically synchronized by prek hook
version = "3.1.0"
version = "3.2.0"

dependencies = [
"a2wsgi>=1.10.8",
Expand Down Expand Up @@ -138,7 +138,7 @@ dependencies = [
# Does not work with it Tracked in https://github.com/fsspec/universal_pathlib/issues/276
"universal-pathlib>=0.2.2,!=0.2.4",
"uuid6>=2024.7.10",
"apache-airflow-task-sdk<1.2.0,>=1.1.0",
"apache-airflow-task-sdk<1.3.0,>=1.1.0",
# pre-installed providers
"apache-airflow-providers-common-compat>=1.6.0",
"apache-airflow-providers-common-io>=1.5.3",
Expand Down
2 changes: 1 addition & 1 deletion airflow-core/src/airflow/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
# lib.) This is required by some IDEs to resolve the import paths.
__path__ = __import__("pkgutil").extend_path(__path__, __name__)

__version__ = "3.1.0"
__version__ = "3.2.0"


import os
Expand Down
10 changes: 5 additions & 5 deletions docker-stack-docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,12 @@ Every time a new version of Airflow is released, the images are prepared in the
[apache/airflow DockerHub](https://hub.docker.com/r/apache/airflow)
for all the supported Python versions.

You can find the following images there (Assuming Airflow version `3.1.0`):
You can find the following images there (Assuming Airflow version `3.2.0`):

* `apache/airflow:latest` - the latest released Airflow image with default Python version (3.12 currently)
* `apache/airflow:latest-pythonX.Y` - the latest released Airflow image with specific Python version
* `apache/airflow:3.1.0` - the versioned Airflow image with default Python version (3.12 currently)
* `apache/airflow:3.1.0-pythonX.Y` - the versioned Airflow image with specific Python version
* `apache/airflow:3.2.0` - the versioned Airflow image with default Python version (3.12 currently)
* `apache/airflow:3.2.0-pythonX.Y` - the versioned Airflow image with specific Python version

Those are "reference" regular images. They contain the most common set of extras, dependencies and providers that are
often used by the users and they are good to "try-things-out" when you want to just take Airflow for a spin,
Expand All @@ -47,8 +47,8 @@ via [Building the image](https://airflow.apache.org/docs/docker-stack/build.html

* `apache/airflow:slim-latest` - the latest released Airflow image with default Python version (3.12 currently)
* `apache/airflow:slim-latest-pythonX.Y` - the latest released Airflow image with specific Python version
* `apache/airflow:slim-3.1.0` - the versioned Airflow image with default Python version (3.12 currently)
* `apache/airflow:slim-3.1.0-pythonX.Y` - the versioned Airflow image with specific Python version
* `apache/airflow:slim-3.2.0` - the versioned Airflow image with default Python version (3.12 currently)
* `apache/airflow:slim-3.2.0-pythonX.Y` - the versioned Airflow image with specific Python version

The Apache Airflow image provided as convenience package is optimized for size, and
it provides just a bare minimal set of the extras and dependencies installed and in most cases
Expand Down
4 changes: 2 additions & 2 deletions docker-stack-docs/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ the Airflow team.
any Airflow version from the ``Airflow 2`` line. There is no guarantee that it will work, but if it does,
then you can use latest features from that image to build images for previous Airflow versions.

Airflow 3.1.0
Airflow 3.2.0
~~~~~~~~~~~~~

In Airflow 3.1.0 we changed the base images used for building the Airflow images. Previously the images
In Airflow 3.2.0 we changed the base images used for building the Airflow images. Previously the images
were based on "official" Python images from DockerHub, however those images sometimes lag behind the
latest security patches and their maintainers made decisions about using older setuptools and pip versions,
however we want to be able to use the latest versions of those tools to build the images. Therefore
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
ENV AIRFLOW__CORE__LOAD_EXAMPLES=True
ENV AIRFLOW__DATABASE__SQL_ALCHEMY_CONN=my_conn_string
# [END Dockerfile]
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
USER root
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
USER root
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
USER root
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
RUN pip install --no-cache-dir "apache-airflow==${AIRFLOW_VERSION}" lxml --constraint "${HOME}/constraints.txt"
# [END Dockerfile]
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0

# The `uv` tools is Rust packaging tool that is much faster than `pip` and other installer
# Support for uv as installation tool is experimental
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
RUN pip install --no-cache-dir "apache-airflow==${AIRFLOW_VERSION}" lxml
# [END Dockerfile]
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
COPY requirements.txt /
RUN pip install --no-cache-dir "apache-airflow==${AIRFLOW_VERSION}" -r /requirements.txt
# [END Dockerfile]
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
RUN pip install "apache-airflow==${AIRFLOW_VERSION}" --no-cache-dir apache-airflow-providers-docker==2.5.1
# [END Dockerfile]
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0

COPY --chown=airflow:root test_dag.py /opt/airflow/dags

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

# This is an example Dockerfile. It is not intended for PRODUCTION use
# [START Dockerfile]
FROM apache/airflow:3.1.0
FROM apache/airflow:3.2.0
RUN umask 0002; \
mkdir -p ~/writeable-directory
# [END Dockerfile]
14 changes: 7 additions & 7 deletions docker-stack-docs/entrypoint.rst
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ if you specify extra arguments. For example:

.. code-block:: bash

docker run -it apache/airflow:3.1.0-python3.10 bash -c "ls -la"
docker run -it apache/airflow:3.2.0-python3.10 bash -c "ls -la"
total 16
drwxr-xr-x 4 airflow root 4096 Jun 5 18:12 .
drwxr-xr-x 1 root root 4096 Jun 5 18:12 ..
Expand All @@ -144,21 +144,21 @@ you pass extra parameters. For example:

.. code-block:: bash

> docker run -it apache/airflow:3.1.0-python3.10 python -c "print('test')"
> docker run -it apache/airflow:3.2.0-python3.10 python -c "print('test')"
test

If first argument equals to ``airflow`` - the rest of the arguments is treated as an Airflow command
to execute. Example:

.. code-block:: bash

docker run -it apache/airflow:3.1.0-python3.10 airflow webserver
docker run -it apache/airflow:3.2.0-python3.10 airflow webserver

If there are any other arguments - they are simply passed to the "airflow" command

.. code-block:: bash

> docker run -it apache/airflow:3.1.0-python3.10 help
> docker run -it apache/airflow:3.2.0-python3.10 help
usage: airflow [-h] GROUP_OR_COMMAND ...

Positional Arguments:
Expand Down Expand Up @@ -363,7 +363,7 @@ database and creating an ``admin/admin`` Admin user with the following command:
--env "_AIRFLOW_DB_MIGRATE=true" \
--env "_AIRFLOW_WWW_USER_CREATE=true" \
--env "_AIRFLOW_WWW_USER_PASSWORD=admin" \
apache/airflow:3.1.0-python3.10 webserver
apache/airflow:3.2.0-python3.10 webserver


.. code-block:: bash
Expand All @@ -372,7 +372,7 @@ database and creating an ``admin/admin`` Admin user with the following command:
--env "_AIRFLOW_DB_MIGRATE=true" \
--env "_AIRFLOW_WWW_USER_CREATE=true" \
--env "_AIRFLOW_WWW_USER_PASSWORD_CMD=echo admin" \
apache/airflow:3.1.0-python3.10 webserver
apache/airflow:3.2.0-python3.10 webserver

The commands above perform initialization of the SQLite database, create admin user with admin password
and Admin role. They also forward local port ``8080`` to the webserver port and finally start the webserver.
Expand Down Expand Up @@ -412,6 +412,6 @@ Example:
--env "_AIRFLOW_DB_MIGRATE=true" \
--env "_AIRFLOW_WWW_USER_CREATE=true" \
--env "_AIRFLOW_WWW_USER_PASSWORD_CMD=echo admin" \
apache/airflow:3.1.0-python3.10 webserver
apache/airflow:3.2.0-python3.10 webserver

This method is only available starting from Docker image of Airflow 2.1.1 and above.
6 changes: 3 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,11 @@ classifiers = [
]

# Version is defined in src/airflow/__init__.py and it is automatically synchronized by prek
version = "3.1.0"
version = "3.2.0"

dependencies = [
"apache-airflow-task-sdk<1.2.0,>=1.0.4",
"apache-airflow-core==3.1.0",
"apache-airflow-task-sdk<1.3.0,>=1.1.0",
"apache-airflow-core==3.2.0",
"natsort>=8.4.0",
]

Expand Down
2 changes: 1 addition & 1 deletion task-sdk/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ classifiers = [
"Topic :: System :: Monitoring",
]
dependencies = [
"apache-airflow-core<3.2.0,>=3.1.0",
"apache-airflow-core<3.3.0,>=3.2.0",
"attrs>=24.2.0, !=25.2.0",
"fsspec>=2023.10.0",
"httpx>=0.27.0",
Expand Down
2 changes: 1 addition & 1 deletion task-sdk/src/airflow/sdk/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@
"teardown",
]

__version__ = "1.1.0"
__version__ = "1.2.0"

if TYPE_CHECKING:
from airflow.sdk.api.datamodels._generated import DagRunState, TaskInstanceState, TriggerRule
Expand Down