Skip to content

Commit 1666e92

Browse files
authored
Merge pull request #422 from jbbarth/fix-circular-dependencies
2 parents 9e2b318 + f7ba658 commit 1666e92

File tree

114 files changed

+655
-473
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

114 files changed

+655
-473
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ simpleflow = "simpleflow.command:cli"
8484

8585
[tool.setuptools]
8686
zip-safe = false
87-
packages=["simpleflow", "swf"]
87+
packages=["simpleflow"]
8888

8989
[tool.setuptools.dynamic]
9090
version = { attr = "simpleflow.__version__" }

simpleflow/canvas.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ def __init__(self, *activities, **options):
130130
self.extend(activities)
131131

132132
def append(self, submittable, *args, **kwargs):
133-
from simpleflow import Workflow
133+
from simpleflow.workflow import Workflow
134134

135135
if isinstance(submittable, (Submittable, SubmittableContainer)):
136136
if args or kwargs:

simpleflow/command.py

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,11 @@
1313
import click
1414
import multiprocess
1515

16-
import swf.exceptions
17-
import swf.models
18-
import swf.querysets
19-
from simpleflow import Workflow, __version__, format, log, logger
16+
import simpleflow.swf.mapper.exceptions
17+
import simpleflow.swf.mapper.models
18+
import simpleflow.swf.mapper.querysets
19+
from simpleflow.workflow import Workflow
20+
from simpleflow import __version__, format, log, logger
2021
from simpleflow.download import download_binaries
2122
from simpleflow.history import History
2223
from simpleflow.settings import print_settings
@@ -30,7 +31,7 @@
3031
if TYPE_CHECKING:
3132
from typing import Any
3233

33-
from swf.models import WorkflowType
34+
from simpleflow.swf.mapper.models.workflow import WorkflowType
3435

3536

3637
def disable_boto_connection_pooling():
@@ -81,8 +82,8 @@ def get_workflow_type(domain_name: str, workflow_class: type[Workflow]) -> Workf
8182
:param workflow_class:
8283
:return:
8384
"""
84-
domain = swf.models.Domain(domain_name)
85-
query = swf.querysets.WorkflowTypeQuerySet(domain)
85+
domain = simpleflow.swf.mapper.models.Domain(domain_name)
86+
query = simpleflow.swf.mapper.querysets.WorkflowTypeQuerySet(domain)
8687
return query.get_or_create(workflow_class.name, workflow_class.version)
8788

8889

@@ -124,7 +125,7 @@ def transform_input(wf_input):
124125

125126

126127
def run_workflow_locally(workflow_class, wf_input, middlewares):
127-
from .local import Executor
128+
from .local.executor import Executor
128129

129130
Executor(workflow_class, middlewares=middlewares).run(wf_input)
130131

@@ -381,7 +382,7 @@ def filter_workflows(
381382
):
382383
status = status.upper()
383384
kwargs = {}
384-
if status == swf.models.workflow.WorkflowExecution.STATUS_OPEN:
385+
if status == simpleflow.swf.mapper.models.workflow.WorkflowExecution.STATUS_OPEN:
385386
kwargs["oldest_date"] = started_since
386387
else:
387388
kwargs["start_oldest_date"] = started_since
@@ -724,7 +725,7 @@ def activity_rerun(domain, workflow_id, run_id, input, scheduled_id, activity_id
724725
# find workflow execution
725726
try:
726727
wfe = helpers.get_workflow_execution(domain, workflow_id, run_id)
727-
except (swf.exceptions.DoesNotExistError, IndexError):
728+
except (simpleflow.swf.mapper.exceptions.DoesNotExistError, IndexError):
728729
logger.error("Couldn't find execution, exiting.")
729730
sys.exit(1)
730731
logger.info(f"Found execution: workflowId={wfe.workflow_id} runId={wfe.run_id}")

simpleflow/exceptions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from typing import TYPE_CHECKING
44

55
if TYPE_CHECKING:
6-
from simpleflow import Workflow
6+
from simpleflow.workflow import Workflow
77
from simpleflow.task import Task
88

99

simpleflow/executor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
from ._decorators import deprecated
77

88
if TYPE_CHECKING:
9-
from simpleflow import Workflow
9+
from simpleflow.workflow import Workflow
1010
from simpleflow.history import History
1111

1212
__all__ = ["Executor"]

simpleflow/history.py

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,30 +3,27 @@
33
import collections
44
from typing import TYPE_CHECKING, Callable
55

6-
import swf.models.history
6+
import simpleflow.swf.mapper.models.history
77
from simpleflow import logger
8-
from swf.models.event.task import ActivityTaskEventDict
9-
from swf.models.event.workflow import ExternalWorkflowExecutionEvent
8+
from simpleflow.swf.mapper.models.event.task import ActivityTaskEventDict
9+
from simpleflow.swf.mapper.models.event.workflow import ExternalWorkflowExecutionEvent
1010

1111
if TYPE_CHECKING:
1212
from typing import Any
1313

14-
from swf.models.event import (
15-
ActivityTaskEvent,
16-
ChildWorkflowExecutionEvent,
17-
Event,
18-
MarkerEvent,
19-
TimerEvent,
20-
WorkflowExecutionEvent,
21-
)
14+
from simpleflow.swf.mapper.models.event.base import Event
15+
from simpleflow.swf.mapper.models.event.marker import MarkerEvent
16+
from simpleflow.swf.mapper.models.event.task import ActivityTaskEvent
17+
from simpleflow.swf.mapper.models.event.timer import TimerEvent
18+
from simpleflow.swf.mapper.models.event.workflow import ChildWorkflowExecutionEvent, WorkflowExecutionEvent
2219

2320

2421
class History:
2522
"""
2623
History data.
2724
"""
2825

29-
def __init__(self, history: swf.models.history.History) -> None:
26+
def __init__(self, history: simpleflow.swf.mapper.models.history.History) -> None:
3027
self._history = history
3128
self._activities: dict[str, ActivityTaskEventDict] = {}
3229
self._child_workflows: dict[str, dict[str, Any]] = {}
@@ -44,7 +41,7 @@ def __init__(self, history: swf.models.history.History) -> None:
4441
self.last_event_id: int | None = None
4542

4643
@property
47-
def swf_history(self) -> swf.models.history.History:
44+
def swf_history(self) -> simpleflow.swf.mapper.models.history.History:
4845
return self._history
4946

5047
@property

simpleflow/local/executor.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
from simpleflow.task import ActivityTask, MarkerTask, SignalTask, TaskFailureContext, WorkflowTask
1515
from simpleflow.utils import format_exc, format_exc_type, issubclass_, json_dumps
1616
from simpleflow.workflow import Workflow
17-
from swf.models.history import builder
17+
from simpleflow.swf.mapper.models.history import builder
1818

1919

2020
class Executor(executor.Executor):
@@ -47,7 +47,7 @@ def history(self) -> History | None:
4747
def update_workflow_class(self):
4848
"""
4949
Returns the workflow class with all the needed attributes for
50-
swf.models.history.builder.History()
50+
simpleflow.swf.mapper.models.history.builder.History()
5151
This allows to get a SWF-compatible history in local executions so that
5252
the metrology feature works correctly.
5353
"""
@@ -164,7 +164,7 @@ def run(self, input=None):
164164
result = self.run_workflow(*args, **kwargs)
165165

166166
# Hack: self._history must be available to the callback as a
167-
# simpleflow.history.History, not a swf.models.history.builder.History
167+
# simpleflow.history.History, not a simpleflow.swf.mapper.models.history.builder.History
168168
self._history = History(self._history)
169169
self._history.parse()
170170
self.after_replay()

simpleflow/process/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
from .named_mixin import NamedMixin, with_state # NOQA
2-
from .supervisor import Supervisor, reset_signal_handlers # NOQA
1+
from ._named_mixin import NamedMixin, with_state # NOQA
2+
from ._supervisor import Supervisor, reset_signal_handlers # NOQA
File renamed without changes.

simpleflow/process/supervisor.py renamed to simpleflow/process/_supervisor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
from simpleflow import logger
1313

14-
from .named_mixin import NamedMixin, with_state
14+
from ._named_mixin import NamedMixin, with_state
1515

1616

1717
def reset_signal_handlers(func):

0 commit comments

Comments
 (0)