0.31.0
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 theld
command used for linking (PR #3259) - Make builds with
musl
onglibc
systems possible (PR #3263) - Add
proxy_via(destination_host, destination_service)
toTCPConnectionNotify
to allow TCP handlers to change the hostname & service from a TCPConnectionNotify before connecting (PR #3230) - Add
add
andsub
tocollections/persistent/Map
(PR #3275)