Skip to content

Commit

Permalink
Change resonate architecture to use Invocation Handles (#133)
Browse files Browse the repository at this point in the history
* Introduce the invoke function to resonate and the context.

This is a big change in the architecture, the whole implementation
is in the resonate_invok file.

* Implement most of missing functionality in terms of invoke
and adds caching for invocation handles and make it pass
most of the tests

- run function
- promise combitors
- durable sleep
- caching for invocation handles

* Delete un used code

* Add schedules and recovery path

* Add durability tests

* Add error handling, tests for error handling and structured concurrency

* Add durability tests and error handling tests
Add the detached functionality and tests for it.

* Rename resonate_invok to resonate

* Add tolerance to a sleep test

* Fix flaky test in errorHandling

* Fix import ordering error

* Remove Kill error and replace it with Abort error
  • Loading branch information
avillega authored Jul 23, 2024
1 parent 29073a4 commit 88864fa
Show file tree
Hide file tree
Showing 26 changed files with 1,512 additions and 1,423 deletions.
2 changes: 1 addition & 1 deletion examples/async/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { Resonate, Context, exponential } from "@resonatehq/sdk";

const resonate = new Resonate({
timeout: 1000,
retry: exponential(
retryPolicy: exponential(
100, // initial delay (in ms)
2, // backoff factor
Infinity, // max attempts
Expand Down
Loading

0 comments on commit 88864fa

Please sign in to comment.