diff --git a/step_pipeline/io.py b/step_pipeline/io.py index 17c3e8e..79db12d 100644 --- a/step_pipeline/io.py +++ b/step_pipeline/io.py @@ -400,4 +400,4 @@ def delocalize_by(self): @property def optional(self): - return self._optional \ No newline at end of file + return self._optional diff --git a/step_pipeline/pipeline.py b/step_pipeline/pipeline.py index c66fe50..f79353f 100644 --- a/step_pipeline/pipeline.py +++ b/step_pipeline/pipeline.py @@ -955,6 +955,12 @@ def outputs(self, local_path, *local_paths, output_dir=None, name=None, delocali else: return output_specs + def get_inputs(self): + return list(self._input_specs) + + def get_outputs(self): + return list(self._output_specs) + def depends_on(self, upstream_step): """Marks this Step as being downstream of another Step in the pipeline, meaning that this Step can only run after the upstream_step has completed successfully. diff --git a/step_pipeline/utils.py b/step_pipeline/utils.py index 88c9fb6..626629a 100644 --- a/step_pipeline/utils.py +++ b/step_pipeline/utils.py @@ -118,8 +118,17 @@ def _path_exists__cached(path, only_check_the_cache=False, verbose=False): raise ValueError(f"Unexpected path type {type(path)}: {path}") if path in PATH_EXISTS_CACHE: + if args.verbose: + if PATH_EXISTS_CACHE[path]: + print(f"Path exists (cached): {path}") + else: + print(f"Missing path (cached): {path}") + return PATH_EXISTS_CACHE[path] + elif only_check_the_cache: + if args.verbose: + print(f"Missing path (only-checked-in-cache): {path}") # if we're only checking the cache and the path isn't in the cache, then we can return False return False