diff --git a/src/python/pants/engine/fs.py b/src/python/pants/engine/fs.py index b71b8437e6f..3a3d2508ae4 100644 --- a/src/python/pants/engine/fs.py +++ b/src/python/pants/engine/fs.py @@ -4,7 +4,7 @@ import os from dataclasses import dataclass from pathlib import Path -from typing import TYPE_CHECKING, Iterable, Optional, Tuple +from typing import Any, Iterable, Optional, Tuple from pants.engine.collection import Collection from pants.engine.rules import RootRule, side_effecting @@ -18,9 +18,6 @@ ) from pants.util.meta import frozen_after_init -if TYPE_CHECKING: - from pants.engine.internals.scheduler import SchedulerSession - @dataclass(frozen=True) class FileContent: @@ -285,11 +282,10 @@ class UrlToFetch: class Workspace: """Abstract handle for operations that touch the real local filesystem.""" - _scheduler: "SchedulerSession" + # TODO: SchedulerSession. Untyped because `fs.py` and `scheduler.py` have a cycle. + _scheduler: Any - def materialize_directory( - self, directory_to_materialize: DirectoryToMaterialize - ) -> MaterializeDirectoryResult: + def materialize_directory(self, directory_to_materialize: DirectoryToMaterialize): """Materialize one single directory digest to disk. If you need to materialize multiple, you should use the parallel materialize_directories() @@ -299,7 +295,7 @@ def materialize_directory( def materialize_directories( self, directories_to_materialize: Tuple[DirectoryToMaterialize, ...] - ) -> MaterializeDirectoriesResult: + ): """Materialize multiple directory digests to disk in parallel.""" return self._scheduler.materialize_directories(directories_to_materialize)