Skip to content

Releases: resonatehq/resonate

Resonate v0.7.0

12 Dec 20:09
Compare
Choose a tag to compare

Overview

This release includes important features that get us closer to the goal of full distributed async/await. It includes the implementation of Resonate's recovery and coordination protocols in the form of the router and sender subsystems, as well as better handling of tasks and callbacks. The project continued to grow its community, welcoming one new contributor @TusharMohapatra07 who brought Tasks CLI support for operations like claiming, completing, and managing heartbeats.

The version 0.7.0 marks significant progress in the project's development, with major improvements across multiple areas of the system. The team has focused on enhancing the tasks system, introducing Tasks v2 with more robust management and Tasks CLI support for critical operations like claiming, completing, and managing heartbeats. The introduction of root promise-based task completion represents a sophisticated approach to task tracking and management.

Infrastructural improvements are notable, with the addition of new subsystems including a router, sender, and a poll plugin. The team has also worked on refactoring the AIO subsystem and configuration, improving the overall system architecture. Support for PostgreSQL store and expanded architecture support with arm64 were key technical advancements.

Lastly, this release also saw improvements in error handling, OpenAPI specification updates, and several dependency upgrades.

What's Changed

  • Cleanup by @dfarr in #368
  • Tasks v2 by @dfarr in #375
  • Implement postgres store readpromises by @dfarr in #380
  • Refactor aio subsystem and config by @dfarr in #388
  • build(deps): bump github.com/prometheus/client_golang from 1.19.1 to 1.20.2 by @dependabot in #389
  • Change Slack link to Discord invite link by @flossypurse in #407
  • Create callback request returns 200 by @dfarr in #406
  • Refactor errors by @dfarr in #409
  • Update release workflow to support arm64 by @dfarr in #417
  • Add router and sender subsystems by @dfarr in #405
  • Add poll plugin by @dfarr in #425
  • build(deps): bump github.com/mattn/go-sqlite3 from 1.14.22 to 1.14.23 by @dependabot in #413
  • build(deps): bump github.com/go-playground/validator/v10 from 10.22.0 to 10.22.1 by @dependabot in #414
  • build(deps): bump github.com/prometheus/client_golang from 1.20.2 to 1.20.4 by @dependabot in #426
  • build(deps): bump google.golang.org/grpc from 1.65.0 to 1.67.0 by @dependabot in #427
  • build(deps): bump DeterminateSystems/nix-installer-action from 13 to 14 by @dependabot in #420
  • build(deps): bump DeterminateSystems/flake-checker-action from 8 to 9 by @dependabot in #421
  • build(deps): bump DeterminateSystems/magic-nix-cache-action from 7 to 8 by @dependabot in #422
  • Rename fields to ttl by @dfarr in #432
  • Update openapi spec by @dfarr in #433
  • Remove required for timeout and ttl fields by @dfarr in #437
  • Add default logical receiver to sender subsystem by @dfarr in #438
  • Ignore 429 and make sure msgs have been processed by @Tomperez98 in #440
  • build(deps): bump google.golang.org/grpc from 1.67.0 to 1.67.1 by @dependabot in #434
  • add claim, complete and heartbeat tasks to cli by @TusharMohapatra07 in #443
  • build(deps): bump google.golang.org/protobuf from 1.34.2 to 1.35.1 by @dependabot in #441
  • build(deps): bump github.com/mattn/go-sqlite3 from 1.14.23 to 1.14.24 by @dependabot in #442
  • build(deps): bump github.com/prometheus/client_golang from 1.20.4 to 1.20.5 by @dependabot in #445
  • build(deps): bump go.uber.org/mock from 0.4.0 to 0.5.0 by @dependabot in #444
  • Replace task counter from 0 to 1 when creating promise with task by @avillega in #447
  • Enqueue one task per root_promise_id by @avillega in #448
  • Revert "Enqueue one task per root_promise_id" by @avillega in #457
  • Enqueue one task per root by @avillega in #458
  • Move Backchannel validation to its own file and set of functions by @avillega in #471
  • Complete tasks based on root promise by @avillega in #470
  • Avillega/deduplicate callbacks by @avillega in #478
  • Add id to callbacks in openapi spec by @dfarr in #485

New Contributors

Full Changelog: v0.6.0...v0.7.0

Resonate v0.6.0

29 Jul 18:21
48ff8bd
Compare
Choose a tag to compare

Release Notes - Version 0.6.0

Overview

This release introduces support for multiple basic auth username/password combos. Thank you @hkiiita!!!

Note: this change requires updating the format of resonate.yml if basic auth is configured, auth is now an object of username password combos.

api:
  subsystems:
    http:
      auth:
        username1: password1
        username2: password2

What's Changed

  • build(deps): bump google.golang.org/grpc from 1.63.2 to 1.64.0 by @dependabot in #339
  • fix(lint): making the lint gods happy by @guergabo in #341
  • feat(back-channel): verify the task submissions by @guergabo in #338
  • build(deps): bump github.com/spf13/viper from 1.18.2 to 1.19.0 by @dependabot in #344
  • build(deps): bump google.golang.org/protobuf from 1.34.1 to 1.34.2 by @dependabot in #348
  • build(deps): bump github.com/go-playground/validator/v10 from 10.20.0 to 10.22.0 by @dependabot in #349
  • build(deps): bump github.com/spf13/cobra from 1.8.0 to 1.8.1 by @dependabot in #350
  • build(deps): bump github.com/go-chi/chi/v5 from 5.0.12 to 5.0.14 by @dependabot in #353
  • Basic Auth for multiple users. by @hkiiita in #352
  • build(deps): bump google.golang.org/grpc from 1.64.0 to 1.65.0 by @dependabot in #355
  • build(deps): bump github.com/go-chi/chi/v5 from 5.0.14 to 5.1.0 by @dependabot in #354
  • gocoro refactor by @dfarr in #356
  • build(deps): bump docker/build-push-action from 5 to 6 by @dependabot in #351
  • build(deps): bump DeterminateSystems/magic-nix-cache-action from 6 to 7 by @dependabot in #347
  • build(deps): bump DeterminateSystems/flake-checker-action from 7 to 8 by @dependabot in #346
  • build(deps): bump DeterminateSystems/nix-installer-action from 11 to 13 by @dependabot in #367
  • Fix ticks in DST workflow by @dfarr in #369
  • Set correct CompletePromise response code by @dfarr in #374

New Contributors

Full Changelog: v0.5.6...v0.6.0

Resonate v0.5.6

23 May 14:00
32c8746
Compare
Choose a tag to compare

Release Notes - Version 0.5.6

Overview

This release introduces versioning to the CLI.

New Features

  • Added support for versioning in the CLI.

What's Changed

Full Changelog: v0.5.5...v0.5.6

Resonate v0.5.5

23 May 12:36
b88be18
Compare
Choose a tag to compare

Release Notes - Version 0.5.5

Overview

This release introduces a few dependency bumps and a fix in the postgres AIO store.

Bug Fixes

  • Fixed an issue where the timeout promises query, for the postgres AIO store only, was not properly setting the completed_on column.

What's Changed

  • build(deps): bump DeterminateSystems/flake-checker-action from 5 to 7 by @dependabot in #317
  • build(deps): bump DeterminateSystems/magic-nix-cache-action from 4 to 6 by @dependabot in #316
  • build(deps): bump DeterminateSystems/nix-installer-action from 10 to 11 by @dependabot in #315
  • build(deps): bump github.com/prometheus/client_golang from 1.19.0 to 1.19.1 by @dependabot in #318
  • build(deps): bump github.com/go-playground/validator/v10 from 10.19.0 to 10.20.0 by @dependabot in #310
  • build(deps): bump google.golang.org/protobuf from 1.33.0 to 1.34.1 by @dependabot in #309
  • build(deps): bump golang.org/x/net from 0.21.0 to 0.23.0 by @dependabot in #296
  • fix(dependabot): added proper pattern matching for dependabot branches by @guergabo in #334
  • build(deps): bump github.com/gin-gonic/gin from 1.9.1 to 1.10.0 by @dependabot in #319
  • feat(postgres): add postgres service to CI and fix timeout promises query by @guergabo in #335

Full Changelog: v0.5.4...v0.5.5

Resonate v0.5.4

22 May 20:09
80db12e
Compare
Choose a tag to compare

Release Notes - Version 0.5.4

Overview

This release introduces a couple bug fixes and basic user authentication.

What's Changed

New Contributors

Full Changelog: v0.5.2...v0.5.4

Resonate v0.5.3

15 May 23:25
23be4a5
Compare
Choose a tag to compare

Release Notes - Version 0.5.3

Overview

This release introduces a few performance enhancements and a new flag.

New Features

  • Added support for configuring the queries in the postgres connection.

Enhancements

  • Optimized the background jobs scheduler and db queries to not overload smaller serverless instances of postgres.

What's Changed

  • feat(postgres): add postgres query config + db query optimizations by @guergabo in #320

Full Changelog: v0.5.2...v0.5.3

Resonate v0.5.2

09 May 02:20
cc44852
Compare
Choose a tag to compare

Release Notes - Version 0.5.2

Overview

This release introduces a new feature and an enhancement.

New Features

  • Added support for simple timers.

Enhancements

  • Optimized the scheduling of promises by adding a limit to the query.

What's Changed

New Contributors

Full Changelog: v0.5.1...v0.5.2

Resonate v0.5.1

30 Apr 15:45
865fc08
Compare
Choose a tag to compare

Release Notes - Version 0.5.1

Overview

This release introduces an enhancement to our release pipeline and a bug fix in the task framework.

Enhancements

  • Nixified our build and release pipeline

Bug Fixes

  • Fixed an issue where the task framework would hang if the worker never acknowledges the task submission.

What's Changed

  • Update release_verify_artifacts.yaml by @guergabo in #286
  • release(changes): include new release pipeline and bug fix by @guergabo in #305

Full Changelog: v0.5.0...v0.5.1

Resonate v0.5.0

12 Apr 22:13
3f7c02d
Compare
Choose a tag to compare

Release Notes - Version 0.5.0

Overview

This release is a big one for us! We are proud to introduce several new capabilities that will allow you to both mitigate failures and coordinate distributed services in a dead simple way.

New Features

  • Retries: survive transient & intermittent failures with automatic retries of operations.
  • Recoverability: survive crash failures and automatically pick up the operation right where it left off.
  • Schedules: schedule stateful reminders to run operations periodically.
  • Task Framework: distribute tasks across multiple machines for parallel execution and collect the operations’ results.

What's Changed

Full Changelog: v0.2.0...v0.5.0

v0.2.0

31 Jan 14:45
268c588
Compare
Choose a tag to compare

What's Changed

  • Order schedules in select all by @dfarr in #200
  • build(deps): bump github.com/oapi-codegen/runtime from 1.1.0 to 1.1.1 by @dependabot in #190
  • Add Flag to Reset the DB on Shutdown. by @favalos in #202
  • build(deps): bump github.com/go-playground/validator/v10 from 10.16.0 to 10.17.0 by @dependabot in #205
  • feat(locks): add support for distributed locking by @guergabo in #203
  • fix(dst): add locksAffected by @guergabo in #210
  • build(deps): bump actions/cache from 3 to 4 by @dependabot in #214
  • fix(dst) by @guergabo in #215
  • feat(locks): improve usability by accepting delta by @guergabo in #216
  • chore: fix readme slack invite link by @yordis in #219
  • build(deps): bump github.com/google/uuid from 1.5.0 to 1.6.0 by @dependabot in #222
  • build(deps): bump google.golang.org/grpc from 1.60.1 to 1.61.0 by @dependabot in #221
  • Changes for Complete coroutine. by @favalos in #218

New Contributors

Full Changelog: v0.1.0...v0.2.0