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
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
let m: Map[String, U32] = Map[String, U32] m.insert("one", 1) m.insert("two", 2) let m2 = m - "two"
proxy_via(host: String, service: String): (String, String) to
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)
- Fix static linking issue by changing the link order (PR #3259)
--link-ldcmdcommand line argument for overriding the
ldcommand used for linking (PR #3259)
- Make builds with
glibcsystems possible (PR #3263)
TCPConnectionNotifyto allow TCP handlers to change the hostname & service from a TCPConnectionNotify before connecting (PR #3230)