This is an automated email from the ASF dual-hosted git repository.

vatsrahul1001 pushed a commit to branch v3-4-test
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/v3-4-test by this push:
     new 717ad184ed6 [v3-4-test] Fix flaky static checks crashing on ts-sdk 
node_modules during editable build (#74117) (#74999)
717ad184ed6 is described below

commit 717ad184ed698918ac0eb3d1b8b266ea0987fb2b
Author: github-actions[bot] 
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Sun Oct 18 18:03:50 2026 +0530

    [v3-4-test] Fix flaky static checks crashing on ts-sdk node_modules during 
editable build (#74117) (#74999)
    
    The root apache-airflow package has no files of its own, but hatchling's
    editable build still walks the entire checkout because .gitignore patterns
    only filter files, not directory descent. That walk crosses 
ts-sdk/node_modules
    (tens of thousands of pnpm symlink directories) while the ts-sdk prek hooks 
run
    pnpm install in parallel, so any symlink swapped mid-walk raises
    FileNotFoundError and fails hooks that uv sync the workspace, such as
    lint-helm-chart.
    
    Pruning .gitignore'd directories during the walk keeps hatchling out of
    node_modules entirely; the produced editable wheel is unchanged.
    (cherry picked from commit a23aa81c62e1eb5a52cdfa4b19ae5697d4f4ad6d)
    
    Co-authored-by: Shahar Epstein <[email protected]>
---
 pyproject.toml | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/pyproject.toml b/pyproject.toml
index 9126c11af18..d4f7de80372 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -601,6 +601,13 @@ Mastodon = "https://fosstodon.org/@airflow";
 Bluesky = "https://bsky.app/profile/apache-airflow.bsky.social";
 YouTube = "https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/";
 
+[tool.hatch.build]
+# Prune .gitignore'd directories (node_modules, .venv, ...) during the file 
walk instead of only
+# filtering their files: an editable build of this root package otherwise 
descends into
+# ts-sdk/node_modules and crashes with FileNotFoundError when a concurrent 
`pnpm install`
+# (ts-sdk prek hooks run alongside root ones) swaps the pnpm symlinks under it.
+skip-excluded-dirs = true
+
 [tool.hatch.build.targets.sdist]
 exclude = ["*"]
 

Reply via email to