diff --git a/src/pypelines/__init__.py b/src/pypelines/__init__.py index e0de8e051cc9d3c2a53d26c2e5b0a6c51cb2f940..9a7e7e02027551a0f12c4aa9744bdfca03965688 100644 --- a/src/pypelines/__init__.py +++ b/src/pypelines/__init__.py @@ -1,4 +1,4 @@ -__version__ = "0.0.41" +__version__ = "0.0.42" from . import loggs from .pipes import * diff --git a/src/pypelines/celery_tasks.py b/src/pypelines/celery_tasks.py index 99a5bf937dfa5f054afbaf4ce6ebb5c20c328db5..efb3a9559efa9ab6aa7cf7bd8b0c578d1704905b 100644 --- a/src/pypelines/celery_tasks.py +++ b/src/pypelines/celery_tasks.py @@ -390,7 +390,9 @@ def create_celery_app(conf_path, app_name="pypelines", v_host=None) -> "Celery | "step_name": step.step_name, "pipe_name": step.pipe_name, "pipeline_name": step.pipeline_name, - "requires": step.requires, + "requires": [ + item if isinstance(item, str) else item.complete_name for item in step.requires + ], "step_level_in_pipe": step.get_level(selfish=True), } tasks_dynamic_data[step.complete_name] = task_data diff --git a/src/pypelines/steps.py b/src/pypelines/steps.py index 2a753f8794ceda8841cf467c96e973bf8f035bf2..87903fab9337863c46fb2aed615a92e332789084 100644 --- a/src/pypelines/steps.py +++ b/src/pypelines/steps.py @@ -185,7 +185,7 @@ class BaseStep: ) return autoload_arguments(loggedmethod(self.generation_mechanism), self) - def get_level(self, selfish=False): + def get_level(self, selfish=False) -> int: self.pipeline.resolve() return StepLevel(self).resolve_level(selfish=selfish) @@ -567,7 +567,7 @@ class StepLevel: new_req.append(req) return new_req - def resolve_level(self, selfish: bool = False, uppermost=None): + def resolve_level(self, selfish: bool = False, uppermost=None) -> int: """Calculates and returns the "level" of the step. If `selfish` is True, only the requirements that are the same pipe as the `uppermost`