The GitHub Actions job "Required Checks" on texera.git/feat/drop-pyfilesystem2 has succeeded. 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/30303286383 With regards, GitHub Actions via GitBox
