Foolscap-0.11.0 released
Brian Warner
warner at lothar.com
Wed Mar 23 09:11:19 UTC 2016
Just wanted to let folks know that I've released foolscap-0.11.0 to
pypi.
Foolscap is a secure RPC protocol for Twisted+Python. Tahoe uses it for
connections to storage servers.
Full changelog (NEWS) is attached below. This release gets us slightly
closer to handling IPv6, but not all the way there.
cheers,
-Brian
* Release 0.11.0 (23-Mar-2016)
** Packaging Fixes
Foolscap now declares a dependency on "twisted[tls]" instead of just
"twisted": the "[tls]" extra means "we need Twisted and its TLS
support". That's how we ask for Twisted to depend upon service_identity
and other supporting packages. By using "[tls]", we no longer need to
manually depend upon service_identity ourselves. If Twisted switches to
some other scheme for TLS support, this will correctly ask for that to
be included. (#249)
Note that we still depend on pyOpenSSL ourselves, because we need its
code to control certificate validation (if Twisted actually moved away
from pyOpenSSL for TLS, Foolscap might break altogether).
The Twisted dependency was updated to >=16.0.0 (the current version), to
get an important HostnameEndpoint fix (#155).
The "flogtool", "flappserver", and "flappclient" executables are now
provided as "entry_points" on all platforms, not just windows. The old
bin/* scripts have been removed. The "flogtool" entrypoint was fixed (a
one-character typo in the setup.py specification): apparently it was
always broken on windows and nobody noticed.
We now use "tox" to run tests, instead of "trial foolscap", although the
latter is still fine when run in a virtualenv into which Foolscap has
been installed (and is what "tox" does under the hood).
This release also moves all source code from "foolscap/" to
"src/foolscap/", which should avoid some confusion as to which code is
being tested. Developers who work from a git checkout should manually
"rm -rf foolscap" after pulling this change, because otherwise the
leftover .pyc files are likely to cause spurious test failures. (#250,
#251)
** partial IPv6 support
Foolscap's outbound connections now use HostnameEndpoint, which means
that connection hints which contain DNS names which map to AAAA (and
maybe A6) records should successfully connect to those IPv6 addresses.
There is not yet any support to *listen* on IPv6 ports, so this probably
does not enable IPv6 completely. But a client running this release may
be able to connect to server running some future IPv6-capable release
and advertising v6-based hostnames. (#155)
More information about the tahoe-dev
mailing list