The GitHub Actions job "Backport Auto Label" on 
texera.git/feat/drop-pyfilesystem2 has failed.
Run started by GitHub user aicam (triggered by aicam).

Head commit for run:
309a28b45f0852f182b825b9b93a872606c040fb / ali <[email protected]>
refactor(pyamber): replace PyFilesystem2 with tempfile and unpin setuptools

`fs` (PyFilesystem2) is unmaintained -- 2.4.16 (May 2022) is its final
release and it calls pkg_resources at import time. setuptools 82.0.0
removed pkg_resources, so `import fs` hard-crashes there, which is the
only reason amber/requirements.txt has carried a setuptools pin since
 #4199.

ExecutorManager was the only consumer, and fs's TempFS is internally
tempfile.mkdtemp + shutil.rmtree, so the swap is behavior-preserving:
lazy creation, sys.path append/remove, the never-materialized early
return, and the tolerated leak-on-force-kill semantics are unchanged.
tempfile.mkdtemp is deliberate over TemporaryDirectory -- the latter
attaches a finalizer that would silently clean up abandoned directories.

Also calls importlib.invalidate_caches() before importing the freshly
written UDF module. The import system caches a directory listing per
sys.path entry and refreshes it on mtime change only, so a second UDF
written into the same tmp directory within one mtime tick could be
invisible to the finder. This reproduces on main as well (four
TestUpdateExecutor cases fail locally with fs installed); it is fixed
here because the rewritten write-then-import path is where it lives.

Dropping fs also drops appdirs (an fs-only transitive) from the binary
license manifest; six stays because python-dateutil still needs it.

Closes #6917

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01C4UQSRY1RAXr7gJVFLLT7h

Report URL: https://github.com/apache/texera/actions/runs/30516639738

With regards,
GitHub Actions via GitBox

Reply via email to