Skip to content
Draft
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
28 changes: 24 additions & 4 deletions airflow-core/NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,37 @@ Foundation (http://www.apache.org/).

=======================================================================

hue:
-----
hue
---

This product contains a modified portion of 'Hue' developed by Cloudera, Inc.
(https://github.com/cloudera/hue/).

* Copyright 2009-2017 Cloudera Inc.


Chakra UI:
-----
Chakra UI
---------

This product contains a modified portion of 'Chakra UI' developed by Segun Adebayo.
(https://github.com/chakra-ui/chakra-ui).

* Copyright 2019, Segun Adebayo


pylockfile
----------

This product contains a modified portion of 'pylockfile' developed by Skip Montanaro.
(https://opendev.org/openstack/pylockfile).

* Copyright 2007 Skip Montanaro


python-daemon
-------------

This product contains a modified portion of 'python-daemon' developed by Ben Finney.
(https://pagure.io/python-daemon).

* Copyright 2008–2025 Ben Finney and others
9 changes: 9 additions & 0 deletions airflow-core/newsfragments/65513.significant.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Libraries ``lockfile`` and ``python-daemon`` have been removed as dependencies.
Comment thread
potiuk marked this conversation as resolved.

The relevant code has been vendored-in so that the dependencies are not needed.
If you plan to use an older Celery or Edge provider from older than May 2026, you will need
to install ``lockfile`` and ``python-daemon`` separately.
These packages are not required for Airflow itself, but are required for the Celery and Edge
providers in older versions.

TODO(jscheffl): Add a reference to min provider versions post next provider wave after this was merged prior Airflow 3.3.0.
2 changes: 0 additions & 2 deletions airflow-core/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,6 @@ dependencies = [
'libcst >=1.8.2; python_version < "3.14"',
'libcst >=1.8.6; python_version >= "3.14"',
"linkify-it-py>=2.0.0",
"lockfile>=0.12.2",
"methodtools>=0.4.7",
"natsort>=8.4.0",
"opentelemetry-api>=1.27.0",
Expand All @@ -133,7 +132,6 @@ dependencies = [
# See https://github.com/pygments/pygments/issues/2834
"pygments>=2.0.1,!=2.19.0",
"pyjwt>=2.11.0",
"python-daemon>=3.0.0",
"python-dateutil>=2.7.0",
"python-slugify>=5.0",
# Requests 3 if it will be released, will be heavily breaking.
Expand Down
7 changes: 3 additions & 4 deletions airflow-core/src/airflow/cli/commands/daemon_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,10 @@
from argparse import Namespace
from collections.abc import Callable

from daemon import daemon
from daemon.pidfile import TimeoutPIDLockFile

from airflow import settings
from airflow.utils.cli import setup_locations, setup_logging, sigint_handler, sigquit_handler
from airflow.utils.daemon import DaemonContext
from airflow.utils.pidfile import TimeoutPIDLockFile
from airflow.utils.process_utils import check_if_pidfile_process_is_running


Expand Down Expand Up @@ -65,7 +64,7 @@ def run_command_with_daemon_option(
stdout_handle.truncate(0)
stderr_handle.truncate(0)

ctx = daemon.DaemonContext(
ctx = DaemonContext(
pidfile=TimeoutPIDLockFile(pid, -1),
files_preserve=files_preserve,
stdout=stdout_handle,
Expand Down
Loading
Loading