Skip to content
This repository has been archived by the owner on Jun 4, 2023. It is now read-only.

Releases: irmen/Pyro4

release 4.26

26 Jun 21:05
Compare
Choose a tag to compare
  • introduced PICKLE_PROTOCOL_VERSION config item
  • fixed exception handling when dealing with different major Python versions. Using serpent or json now also properly translates exception objects even if the major Python version differ
  • because of the new way Pyro deals with serialized exceptions, the wire protocol version was updated to 47. You'll have to update all Pyro4 libraries to 4.26
  • name server prints a warning if a protocol error occurs (this helps to spot issues such as serializer protocol mismatches)
  • more info in documentation about pickle and numpy
  • improved documentation index

release 4.25

11 Apr 23:09
Compare
Choose a tag to compare
  • now also puts package name in serpent serialization data for custom class instances (previously only the class name was used)
  • requires serpent 1.5 or newer (because of the feature above)
  • support for (Linux) abstract namespace AF_UNIX sockets (with a 0-byte at the start of the name)
  • register_dict_to_class method added on SerializerBase, to be able to deserialize to particular user defined classes
  • docs: mention that you may have to install serpent manually (most notably with alternative Python implementations)
  • docs: mention the serialization hooks on SerializerBase
  • added ser_custom example that shows how to use the serialization hooks

release 4.24

17 Feb 22:33
Compare
Choose a tag to compare

Pyro 4.24

  • Python 3.4 compatibility added (fixed pickle/marshal issues)
  • a backwards incompatible change has been implemented regarding the threadpool implementation and configuration, see next two items.
  • threadpool is now again a fixed size determined by the new THREADPOOL_SIZE config item (defaults to 16)
  • config items removed: THREADPOOL_MINTHREADS, THREADPOOL_MAXTHREADS, THREADPOOL_IDLETIMEOUT
  • daemon no longer sends an exception response when a communication error occurred (such as a timeout). This fixes the MSG_PING/disconnect example on linux
  • jython: multiplex server type now available (uses select based multiplexing). Be wary, this has not been tested much. When in doubt, use the thread server type.
  • python wheel distribution format support added (universal, setup.cfg)
  • merged name server initd script improvements that were made for the Debian package (easy enable/disable, use sh instead of bash, etc)

release 4.23

22 Jan 22:03
Compare
Choose a tag to compare

Pyro 4.23

  • Pyro4.test.echoserver now correctly runs the NS’s broadcast server as well
  • unix domain socket creation no longer fails when bind or connect address is unicode instead of str
  • docs: added more info on dealing with new serialization configuration in existing code
  • docs: improved name server documentation on registering objects
  • docs: various small updates

release 4.22

26 Aug 21:35
Compare
Choose a tag to compare

Pyro 4.22

  • support added in daemon to accept multiple serializers in incoming messages
  • new config item added for that: SERIALIZERS_ACCEPTED (defaults to ‘safe’ serializers)
  • wire protocol header changed. Not backwards compatible! New protocol version: 46.
  • wire protocol: header now contains serializer used for the data payload
  • wire protocol: header is extensible with optional ‘annotations’. One is used for the HMAC digest that used to be in all messages even when the hmac option wasn’t enabled.
  • refactored core.MessageFactory: new submodule Pyro4.message. If you used MessageFactory in your own code you’ll need to refactor it to use the new Pyro4.message.Message API instead.
  • disconnects example client code updated to reflect this API change
  • you can now write the protocol in URIs in lowercase if you want (“pyro:...”) (will still be converted to uppercase)
  • fixed poll server loop() not handling self.clients which caused crashes with a custom loopCondition
  • fixed some unit test hang/timeout/crash issues
    improved unit tests for jython, disabled ipv6 tests for jython because of too many issues.
    improved unit tests for ironpython.

release 4.21

12 Aug 15:58
Compare
Choose a tag to compare

Pyro 4.21

  • fixed denial of service vulnerabilities in socket servers
  • MSG_PING message type added (internal server ping mechanism)
  • disconnects example added that uses MSG_PING
  • more exception types recognised in the serializers (such as GeneratorExit)
  • fixed async regression when dealing with errors (properly serialize exceptionwrapper)
  • fixed warehouse and stockmarket tutorials to work with new serializer logic
  • fixed examples that didn't yet work with new serializer logic
  • fixed unit tests to use unittest2 on Python 2.6
  • no longer supports jython 2.5. You'll have to upgrade to jython 2.7.
  • got rid of some byte/str handling cruft (because we no longer need to deal with jython 2.5)
  • implemented autoproxy support for serpent and json serializers. It is not possible to do this for marshal.
  • fixed serpent serialization problem with backslash escapes in unicode strings (requires serpent >= 1.3)