Skip to content

Releases: ponylang/lori

0.5.0

02 Nov 13:03
Compare
Choose a tag to compare

Add Windows Support

Windows support has been added to Lori.

All tested functionality is equivalent between Windows and Posix platforms. However, not all untested functionality is guaranteed to be in place as a deeper review of Windows support needs to be done. At minimum, the Windows implementation is currently lacking support for backpressure to be applied when the OS exerts it on a Lori program while it is sending.

Extensive additional work will be done on Windows support, but going forward, Windows will be a first-class Lori platform.

TCPListenerActor.on_accept signature changed

Previously, the signature had TCPConnectionActor as the type. It has been updated to be TCPServerActor. Listeners must return a server instance, the old signature allowed for returning a client. Returning a client would result in a runtime error. The change in signature makes this a compile time error.

[0.5.0] - 2022-11-02

Added

  • Add Windows Support (PR #82)

Changed

  • TCPListenerActor.on_accept signature (PR #82)

0.4.0

04 Oct 00:28
Compare
Choose a tag to compare

Make Lori callbacks private

All the callbacks on TCPClientActor, TCPServerActor, and TCPConnectionActor have been changed to private from public. This better indicates that the methods are not intended to be called from outside of Lori. To update, you'll need to make the methods on your objects that implement any of the above traits private as well.

Rename _on_failure callbacks

_on_failure is very generic and doesn't state what the failure was. When someone is using lori, they will have an _on_failure callback that could be any number of failures for that actor. Switching the name to something more specific should make it considerably more clear.

  • _on_failure for TCPListenerActor has been renamed _on_listen_failure.
  • _on_failure for TCPClientActor has been renamed _on_connection_failure.

Adjusting to this change is as simple as finding any usage you had of _on_failure and replacing it with _on_connection_failure or _on_listen_failure as appropriate.

[0.4.0] - 2022-10-04

Changed

  • Rename on_failure callback to on_connection_failure (PR #79)
  • Make lori callbacks private (PR #80)

0.3.0

28 Sep 02:46
Compare
Choose a tag to compare

Update object capabilities to match Pony standard library pattern

In Pony version 0.49.0, the pattern for how object capabilities were implemented was changed. Lori's usage of object capabilities has been updated to match the pattern used in the standard library.

Note, this is a breaking changes and might require you to change your code that involves object capability authorization usage. Only a single "most specific" authorization is now allowed at call sites so previously where you could have been using AmbientAuth directly to authorization an action like creating a TCPListener:

TCPListener(env.root, host, port, enclosing_actor)

You'll now have to use the most specific authorization for the object:

TCPListener(TCPListenAuth(env.root), host, port, enclosing_actor)

[0.3.0] - 2022-09-28

Changed

  • Update object capabilities to match Pony standard library pattern (PR #76)

0.2.2

14 Sep 12:06
Compare
Choose a tag to compare

Add basic "outgoing failed logic"

Prior to this change, outgoing TCP connections that failed to connect weren't correctly handled.

[0.2.2] - 2022-09-14

Added

  • Add basic "outgoing failed logic" (PR #75)

0.2.1

26 Feb 15:10
Compare
Choose a tag to compare

Update to work with Pony 0.49.0

Pony 0.49.0 introduced a lot of different breaking changes. We've updated to account for them all.

[0.2.1] - 2022-02-26

Fixed

  • Update to work with Pony 0.49.0 (PR #74)

0.2.0

02 Feb 02:50
Compare
Choose a tag to compare

Update interfaces with private methods work with Pony 0.47.0

Interfaces are no longer allowed to be private so TCPListenerActor,TCPConnectionActor, TCPClientActor, and TCPServerActor have been changed from interfaces to traits.

[0.2.0] - 2022-02-02

Changed

  • Update interfaces with private methods work with Pony 0.47.0 (PR #71)

0.1.1

16 Jan 05:30
Compare
Choose a tag to compare

Update to work with latest ponyc

The most recent ponyc implements RFC #65 which changes the type of Env.root.

We've updated accordingly. You won't be able to use this and future versions of the library without a corresponding update to your ponyc version.

[0.1.1] - 2022-01-16

Fixed

  • Update to work with Pony 0.46.0 (PR #70)

0.1.0

07 May 13:11
Compare
Choose a tag to compare

Change License

The Lori license has been changed from a LGPL license to a BSD based license to better align with the Pony license.

Fix loss of incoming connections

Incoming connections that arrived close together might sometimes be accepted by the OS but never handled by Lori.

[0.1.0] - 2021-05-07

Fixed

  • Fix loss of incoming connections (PR #63)

Changed

  • Change license to BSD (PR #62)

0.0.1

18 Sep 20:56
Compare
Choose a tag to compare

[0.0.1] - 2020-09-18

Added

  • Initial release