SeanTAllen released this Aug 31, 2019 · 446 commits to master since this release

Pony version 0.31.0 is now available. This is a "smaller" release than some recent ones. Most of the changes in Pony lately have been happening behind the scenes.

0.31.0 is a breaking release. There's a small change to Map.sub that might break your code. Details follow. There are no serious bugs fixed in 0.31.0 so you can upgrade at your leisure.

Remove unnecessary argument to Map.sub

Before:

let m: Map [ String , U32 ] = Map [ String , U32 ] m. insert ( " one " , 1 ) m. insert ( " two " , 2 ) let m2 = m - ( " two " , 3132047 ) // removes ("two", 2) from the Map

After:

let m: Map [ String , U32 ] = Map [ String , U32 ] m. insert ( " one " , 1 ) m. insert ( " two " , 2 ) let m2 = m - " two "

Add proxy_via(host: String, service: String): (String, String) to TCPConnectionNotify

This function is called before the initial TCP connection is made, allowing the TCPConnectionNotify to alter the target of the connection. This enables a TCPConnectionNotify implementation to handle the proxy handshake and redirect traffic via that proxy.

It is optional to implement, with the default changing nothing.

It is recommended that TCP client creators add a parameter to their constructors, with the default of NoProxy and to wrap their TCPConnectionNotify which enables users to use proxies.

actor MyClient new create (env: Env , host: String , service: String , proxy: Proxy = NoProxy ) ? => TCPConnection = TCPConnection . create ( env. root as AmbientAuth , proxy. apply ( MyConnectionNotify . create ()), host, service)

[0.31.0] - 2019-08-31

Fixed

Fix static linking issue by changing the link order (PR #3259)

Added

Add --link-ldcmd command line argument for overriding the ld command used for linking (PR #3259)

command line argument for overriding the command used for linking (PR #3259) Make builds with musl on glibc systems possible (PR #3263)

on systems possible (PR #3263) Add proxy_via(destination_host, destination_service) to TCPConnectionNotify to allow TCP handlers to change the hostname & service from a TCPConnectionNotify before connecting (PR #3230)

to to allow TCP handlers to change the hostname & service from a TCPConnectionNotify before connecting (PR #3230) Add add and sub to collections/persistent/Map (PR #3275)

Changed