Commit Graph

1 Commits

Author SHA1 Message Date
Leon Anavi
ee412135db python3-twisted: Upgrade 20.3.0 -> 21.2.0
Upgrade to release 21.2.0:

- The enableSessions argument to twisted.internet.ssl.CertificateOptions
  now actually enables/disables OpenSSL's session cache. Also, due
  to session-related bugs, it defaults to False.
- twisted.internet.defer.inlineCallbacks and ensureDeferred will
  now associate a contextvars.Context with the coroutines they run,
  meaning that ContextVar objects will maintain their value within
  the same coroutine, similarly to asyncio Tasks. This functionality
  requires Python 3.7+, or the contextvars PyPI backport to be
  installed for Python 3.5-3.6.
- twisted.internet.defer.Deferred.fromCoroutine has been added.
  This is similar to the existing ensureDeferred function, but is
  named more consistently inside Twisted and does not pass through
  Deferreds.
- trial now allows the @unittest.skipIf decorator to specify that
  an entire test class should be skipped.
- The twisted.python.deprecate.deprecatedKeywordParameter decorator
  can be used to mark a keyword paramater of a function or method
  as deprecated.
- Projects using Twisted can now perform type checking against a
  Twisted installation, for example using mypy.
- twisted.python.util.InsensitiveDict now fully implements
  MutableMapping.
- Python 3.8 is now tested and supported.
- Support a coroutine function in twisted.internet.task.react.
- PyPy 3.7 is now tested and supported.
- twisted.web.twcgi.CGIProcessProtocol.processEnded(...) now
  handles an already-finished request, for example when
  request.connectionLost(...) was called previously.
- Twisted's dependency on PyHamcrest has been moved from the base
  package to the new "test" extra. Consequently the test extra
  must be installed for Twisted's test suite to pass.
- Fixed serialization of timedelta, date, and time objects in
  twisted.spread.
- twisted.internet.asyncioreactor.AsyncioSelectorReactor now raises
  an exception if instantiated with an event loop which is not
  compatible with asyncio.SelectorEventLoop. This fixes the
  AsyncioSelectorReactor in Python 3.8+ on Windows, where in bp-34687
  the default Windows asyncio event loop was changed to
  ProactorEventLoop. Applications that use AsyncioSelectorReactor
  on Windows with Python 3.8+ must call
  asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
  before instantiating and running AsyncioSelectorReactor.
- twisted.internet.process.registerReapProcessHandler and
  ._BaseProcess.reapProcess will no longer raise a TypeError when
  processing a None PID
- INotify will close its file descriptor if a directory is
  automatically removed by twisted from the watchlist because it's
  deleted, avoiding orphaned filedescriptors.
- DelayedCall.reset() is now working properly with asyncioreactor.
- AsyncioSelectorReactor.seconds() now correctly returns an epoch
  time.
- The _connDone parameter has been removed from
  twisted.internet.abstract.FileDescriptor.loseConnection()'s
  signature in order to match the signature in the base class
  twisted.internet._newtls.ConnectionMixin loseConnection().
- The Gtk3 reactor now runs on Wayland-only sessions
- Descriptive error messages from twisted.internet.error are now
  present when running with 'python -OO'.
- Comparator methods such as eq() now always return NotImplemented
  for uncomparable types.
- When installing Twisted it now requires a minimum Python 3.5.4
  version to match the version used with automated testing. This
  is the minimum Python version that we know that Twisted works
  with.

License-Update: Add contributors and update year.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Acked-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2021-03-08 07:29:01 -08:00