Skip to content

Commit da61196

Browse files
authored
top lvl rfi lfi (#84)
* rename run to lfi. add lfc * plain resolve promise and dedup on it's own method * never as default retry policy * Define API for top lvl rfi * RFI only through commands * resolve and pop * resolve promise to resolve ephemeral promise * dedup first step * Add create with callback method to trait * Use create promise + callback endpoint * Implement trigger * Add trigger * Only recv and root promise if needed
1 parent 80e4bda commit da61196

File tree

8 files changed

+313
-117
lines changed

8 files changed

+313
-117
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "resonate-sdk"
3-
version = "0.2.2"
3+
version = "0.2.3"
44
description = "Distributed Async Await by Resonate HQ, Inc"
55
authors = [
66
{ name = "Resonate HQ, Inc", email = "[email protected]" }

src/resonate/collections.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,10 @@ def waiting_for(
4242
assert_never(awaiting_for)
4343

4444
def append(
45-
self, key: Promise[Any], value: ResonateCoro[Any], awaiting_for: AwaitingFor
45+
self,
46+
key: Promise[Any],
47+
value: ResonateCoro[Any] | None,
48+
awaiting_for: AwaitingFor,
4649
) -> None:
4750
awaiting: dict[Promise[Any], list[ResonateCoro[Any]]]
4851
if awaiting_for == "local":
@@ -51,7 +54,11 @@ def append(
5154
awaiting = self._remote
5255
else:
5356
assert_never(awaiting_for)
54-
awaiting.setdefault(key, []).append(value)
57+
if value is not None:
58+
awaiting.setdefault(key, []).append(value)
59+
else:
60+
assert key not in awaiting
61+
awaiting[key] = []
5562

5663
def get(
5764
self, key: Promise[Any], awaiting_for: AwaitingFor

src/resonate/retry_policy.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ def never() -> Never:
8888

8989

9090
def default_policy() -> RetryPolicy:
91-
return exponential(base_delay=1, factor=2, max_retries=5)
91+
return never()
9292

9393

9494
def calculate_total_possible_delay(policy: Exponential | Linear | Constant) -> float:

0 commit comments

Comments
 (0)