Upgrading to PyProtocols 0.9.3 Due to some features added in PyProtocols 0.9.3, some programs may have compatibility issues upon upgrading. The changes affect only a handful of features that are very infrequently used, so if you don't know what the following features are, you have nothing to worry about: * The 'protocol' attribute of 'Adapter' and 'StickyAdapter' objects is now deprecated, and a 'DeprecationWarning' will be issued whenever the attribute is read. * If you use the "ABC" (abstract base class) style of interfaces, you *must* define an __init__ method in either the ABC itself, or in any of its concrete subclasses that are to be instantiated. If you do not, the resulting behavior may not be as expected. * The 'factory' argument to 'adapt()' has been deprecated and using it will issue a 'DeprecationWarning'. * Adapter factories are now only called with one argument: the object to adapt. For backward compatibility, any adapter factories that require more than one argument are wrapped in a converter. It's highly recommended that you transition to one-argument adapters as soon as practical, since using two-argument adapters will cause deprecation warnings in PyProtocols version 1.0 (and they cause PendingDeprecationWarnings in 0.9.3). This change was made for symmetry with Zope and Twisted adapters, as well as Pythonic adapter factories like 'int'. Preparing for PyProtocols 1.0 In addition to accomodating the changes above, you might also want to look at the following items which will be affected in PyProtocols 1.0: * 'StickyAdapter' subclasses should define an 'attachForProtocols' attribute, or they will stop working correctly in 1.0. See the reference manual for details on the 'attachForProtocols' attribute. * Don't use the 'factory' parameter to 'adapt()'; it'll be gone in 1.0. * Don't use the 'protocol' attribute of 'Adapter' and 'StickyAdapter' objects, as the attribute will be gone in 1.0. * Don't use two-argument adapter functions: they'll be fully deprecated in 1.0 and gone by 1.1.