Skip to content

Twisted 24.3.0

Latest
Compare
Choose a tag to compare
@itamarst itamarst released this 01 Mar 16:43

Twisted 24.3.0 (2024-03-01)

This release supports PyPy v7.3.14.

Bugfixes

  • twisted.logger.formatEvent now honors dotted method names, not just
    flat function names, in format strings, as it has long been
    explicitly documented to do. So, you will now get the expected
    result from [formatEvent("here's the result of calling a method at
    log-format time: {obj.method()}", obj=...)]{.title-ref} (#9347)
  • twisted.web.http.HTTPChannel now ignores the trailer headers
    provided in the last chunk of a chunked encoded response, rather
    than raising an exception. (#11997)
  • twisted.protocols.tls.BufferingTLSTransport, used by default by
    twisted.protocols.tls.TLSMemoryBIOFactory, was refactored for
    improved performance when doing a high number of small writes.
    (#12011)
  • twisted.python.failure.Failure now throws exception for generators
    without triggering a deprecation warnings on Python 3.12. (#12026)
  • twisted.internet.process.Process, used by reactor.spawnProcess,
    now copies the parent environment when the [env=None]{.title-ref}
    argument is passed on Posix systems and os.posix_spawnp is used
    internally. (#12068)
  • twisted.internet.defer.inlineCallbacks.returnValue's stack
    introspection was adjusted for the latest PyPy 7.3.14 release,
    allowing legacy @inlineCallbacks to run on new PyPY versions.
    (#12084)

Deprecations and Removals

  • twisted.trial.reporter.TestRun.startTest() is no longer called for
    tests with skip annotation or skip attribute for Python 3.12.1 or
    newer. This is the result of upstream Python gh-106584 change. The
    behavior is not change in 3.12.0 or older. (#12052)

Misc

Conch

No significant changes.

Web

Bugfixes

  • The documentation for twisted.web.client.CookieAgent no longer
    references long-deprecated cookielib and urllib2 standard
    library modules. (#12044)

Deprecations and Removals

  • twisted.web.http.Request now parses the
    [multipart/form-data]{.title-ref} using
    [email.message_from_bytes]{.title-ref}. The usage of
    [cgi.parse_multipart]{.title-ref} was removed as the
    [cgi]{.title-ref} module will be removed in Python 3.13. (#11848)

Misc

Mail

No significant changes.

Words

Improved Documentation

  • The documented IRC example was updated for Python3 usage. (#12070)

Names

No significant changes.

Trial

No significant changes.