1
0

167 Commits

Author SHA256 Message Date
Markéta Machová
503594fd6f bsc#1256325 2026-01-08 11:01:47 +01:00
3495cb2ae8 Convert to libalternatives, bsc#1245883 2025-11-03 14:08:46 +01:00
ab43836793 Accepting request 1219215 from devel:languages:python
- update to 24.10.0:
  * Python 3.13 is now supported.
  * twisted.internet.defer.succeed() is significantly faster, and
    awaiting Deferred has also been sped up.
  * twisted.python.failure.Failure creation no longer records the
    place where it was created. This reduces creation time by 60%
    at least, thereby speeding up Deferred error handling.
  * twisted.internet.defer.Deferred no longer removes the
    traceback object from Failures. This may result in more
    objects staying in memory if you don't clean up failed
    Deferreds, but it speeds up error handling and enables
    improvements to traceback reporting.
  * twisted.internet.defer APIs are 2%-4% faster in many cases.
  * twisted.internet.defer.Deferred runs callbacks with chained
    Deferreds a little faster.
  * The reactor now will use a little less CPU when events have
    been scheduled with callLater().
  * Creation of twisted.python.failure.Failure is now faster.
  * Fixed unreleased regression caused by PR 12109.
  * twisted.logger.eventAsText can now format the output having
    types/classes as input. This was a regression introduced in
    Twisted 24.3.0.
  * twisted.internet.endpoints.clientFromString for TLS endpoints
    with "bindAddress="  no longer crashes during connect.
    twisted.internet.endpoints.HostnameEndpoint() no longer
    crashes when given a bindAddress= argument that is just a
    string, and that argument now accepts either address strings
    or (address, port) tuples.
  * The URLs from README and pyproject.toml were updated.
  * #11236, #12060, #12062, #12099, #12219, #12290, #12296,

OBS-URL: https://build.opensuse.org/request/show/1219215
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=72
2024-10-30 16:33:18 +00:00
9545103547 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=158 2024-10-29 22:22:20 +00:00
1629614926 - update to 24.10.0:
* Python 3.13 is now supported.
  * twisted.internet.defer.succeed() is significantly faster, and
    awaiting Deferred has also been sped up.
  * twisted.python.failure.Failure creation no longer records the
    place where it was created. This reduces creation time by 60%
    at least, thereby speeding up Deferred error handling.
  * twisted.internet.defer.Deferred no longer removes the
    traceback object from Failures. This may result in more
    objects staying in memory if you don't clean up failed
    Deferreds, but it speeds up error handling and enables
    improvements to traceback reporting.
  * twisted.internet.defer APIs are 2%-4% faster in many cases.
  * twisted.internet.defer.Deferred runs callbacks with chained
    Deferreds a little faster.
  * The reactor now will use a little less CPU when events have
    been scheduled with callLater().
  * Creation of twisted.python.failure.Failure is now faster.
  * Fixed unreleased regression caused by PR 12109.
  * twisted.logger.eventAsText can now format the output having
    types/classes as input. This was a regression introduced in
    Twisted 24.3.0.
  * twisted.internet.endpoints.clientFromString for TLS endpoints
    with "bindAddress="  no longer crashes during connect.
    twisted.internet.endpoints.HostnameEndpoint() no longer
    crashes when given a bindAddress= argument that is just a
    string, and that argument now accepts either address strings
    or (address, port) tuples.
  * The URLs from README and pyproject.toml were updated.
  * #11236, #12060, #12062, #12099, #12219, #12290, #12296,

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=157
2024-10-29 18:01:24 +00:00
5871edc46d Accepting request 1203276 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1203276
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=71
2024-09-26 16:52:44 +00:00
4b9343c635 - Add upstream patch 12313-fix-test_manhole.patch to fix test failure
with latest python312

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=155
2024-09-25 06:56:19 +00:00
954350af7b - Update to 24.7.0
* 24.7.0.rc2 fixed an unreleased regression caused by PR 12109. (#12279)
  * twisted.web.util.redirectTo now HTML-escapes the provided URL in the fallback
    response body it returns (GHSA-cf56-g6w6-pqq2, CVE-2024-41810). (#9839)
  * The HTTP 1.0 and 1.1 server provided by twisted.web could process pipelined
    HTTP requests out-of-order, possibly resulting in information disclosure
    (CVE-2024-41671/GHSA-c8m8-j448-xjx7) (#12248)
  * twisted.protocols.ftp now supports the IPv6 extensions defined in RFC 2428. (#9645)
  * twisted.internet.defer.inlineCallbacks can now yield a coroutine. (#9972)
  * twisted.python._shellcomp.ZshArgumentsGenerator was updated for Python 3.13. (#12065)
  * twisted.web.wsgi request environment now contains the peer port number as `REMOTE_PORT`. (#12096)
  * twisted.internet.defer.Deferred.callback() and twisted.internet.defer.Deferred.addCallbacks()
    no longer use `assert` to check the type of the arguments. You should now use type checking
    to validate your code. These changes were done to reduce the CPU usage. (#12122)
  * Added two new methods, twisted.logger.Logger.failuresHandled and twisted.logger.Logger.\
    failureHandler, which allow for more concise and convenient handling of exceptions when
    dispatching out to application code.  The former can arbitrarily customize failure handling
    at the call site, and the latter can be used for performance-sensitive cases where no
    additional information needs to be logged. (#12188)
  * twisted.internet.defer.Deferred.addCallback now runs about 10% faster. (#12223)
  * twisted.internet.defer.Deferred error handling is now faster, taking 40% less time to run. (#12227)
  * twisted.internet.ssl.Certificate.__repr__ can now handle certificates without
    a common name (CN) in the certificate itself or the signing CA. (#5851)
  * Type annotations have been added to twisted.conch.interfaces.IKnownHostEntry
    and its implementations, twisted.conch.client.knownhosts.PlainHost and
    twisted.conch.client.knownhosts.HashedHost, correcting a variety of
    type confusion issues throughout the conch client code. (#9713)
  * twisted.python.failure.Failure once again utilizes the custom
    pickling logic it used to in the past. (#12112)
  * twisted.conch.client.knownhosts.KnownHostsFile.verifyHostKey no longer logs

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=154
2024-09-20 21:39:51 +00:00
18ddfb55ad Accepting request 1190585 from devel:languages:python
- Add a couple of upstream patches to fix http process information
  disclosure (CVE-2024-41671, bsc#1228549) and XSS via html injection
  (CVE-2024-41810, bsc#1228552):
  * CVE-2024-41671.patch gh#twisted/twisted@4a930de12fb6
  * CVE-2024-41810.patch gh#twisted/twisted@046a164f89a0

OBS-URL: https://build.opensuse.org/request/show/1190585
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=70
2024-08-01 20:03:43 +00:00
eb3157063b Accepting request 1184937 from devel:languages:python
- update to 24.3.0:
  * 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=...)
  * twisted.web.http.HTTPChannel now ignores the trailer headers
    provided in the last chunk of a chunked encoded response,
    rather than raising an exception.
  * 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.
  * twisted.python.failure.Failure now throws exception for
    generators without triggering a deprecation warnings on
    Python 3.12.
  * twisted.internet.process.Process, used by
    reactor.spawnProcess, now copies the parent environment when
    the env=None argument is passed on Posix systems and
    os.posix_spawnp is used internally.
  * 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.
  * 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.

OBS-URL: https://build.opensuse.org/request/show/1184937
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=69
2024-07-03 18:29:45 +00:00
4c692692ad - update to 24.3.0:
* 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=...)
  * twisted.web.http.HTTPChannel now ignores the trailer headers
    provided in the last chunk of a chunked encoded response,
    rather than raising an exception.
  * 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.
  * twisted.python.failure.Failure now throws exception for
    generators without triggering a deprecation warnings on
    Python 3.12.
  * twisted.internet.process.Process, used by
    reactor.spawnProcess, now copies the parent environment when
    the env=None argument is passed on Posix systems and
    os.posix_spawnp is used internally.
  * 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.
  * 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.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=149
2024-07-02 19:53:38 +00:00
56e074c280 Accepting request 1143215 from devel:languages:python
- Add stop-using-3-arg-throw.patch:
  * Avoid 3-arg throw to fix a DeprecationWarning in Python 3.12.

OBS-URL: https://build.opensuse.org/request/show/1143215
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=68
2024-02-01 17:04:13 +00:00
7903b149ff - Add stop-using-3-arg-throw.patch:
* Avoid 3-arg throw to fix a DeprecationWarning in Python 3.12.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=147
2024-02-01 08:34:36 +00:00
e0d9c4da22 Accepting request 1139828 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1139828
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=67
2024-01-21 22:07:48 +00:00
3873fcd029 Accepting request 1139817 from home:bnavigator:branches:devel:languages:python
- Add twisted-pr12054-testinvokationpy3.12.1.patch
  * Pull request gh#twisted/twisted#12054 fixes failing tests on
    python312 gh#twisted/twisted#12052
- Fix rpmlint errors

OBS-URL: https://build.opensuse.org/request/show/1139817
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=145
2024-01-19 00:14:59 +00:00
e7ffb9ae04 Accepting request 1128372 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1128372
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=66
2023-11-23 20:38:42 +00:00
f469573120 Accepting request 1128275 from home:mcalabkova:branches:devel:languages:python:numeric
- Update to 23.10.0
  * reactor.spawnProcess() now uses posix_spawnp when possible, making it much more efficient (#5710)
  * Twisted now officially supports Python 3.11. (#10343)
  * twisted.internet.defer.race has been added as a way to get the first available result from a list of Deferreds. (#11817)
  * The CI suite was updated to execute the tests using a Python 3.12 pre-release (#11857)
  * PyAsn1 has been removed as a conch dependency.
  * Due to changes in the way raw private key byte serialization are handled in Cryptography, and widespread support 
    for Ed25519 in current versions of OpenSSL, we no longer support PyNaCl as a fallback for Ed25519 keys in Conch. (#11871)
  * In Twisted 16.3.0, we changed twisted.web to stop dispatching HTTP/1.1 pipelined requests to application code. 
    There was a bug in this change which still allowed clients which could send multiple full HTTP requests in a single TCP segment 
    to trigger asynchronous processing of later requests, which could lead to out-of-order responses. This has now been corrected 
    and twisted.web should never process a pipelined request over HTTP/1.1 until the previous request has fully completed. 
    (CVE-2023-46137, GHSA-cq7q-gv5w-rwx2) (#11976)
  * Drop support for Python 3.7. Remove twisted[contextvars] extra (contextvars are always available in Python 3.7+) (#11913)
  * When using CPython, functions wrapped by twisted.internet.defer.inlineCallbacks can have their arguments and return values 
    freed immediately after completion (due to there no longer being circular references). (#11885)
- Delete merged patches:
  * regenerate-cert-to-work-with-latest-service-identity.patch
  * no-pygtkcompat.patch
  * support-new-glibc.patch
  * CVE-2023-46137-HTTP-pipeline-response.patch
  * remove-pynacl-optional-dependency.patch
  * py311-tests-compat.patch

OBS-URL: https://build.opensuse.org/request/show/1128275
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=143
2023-11-23 16:03:01 +00:00
c3931270c4 Accepting request 1126660 from devel:languages:python
- Add CVE-2023-46137-HTTP-pipeline-response.patch (bsc#1216588,
  CVE-2023-46137) serializing pipelined HTTP requests.

OBS-URL: https://build.opensuse.org/request/show/1126660
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=65
2023-11-16 19:27:14 +00:00
fe170239b0 - Add CVE-2023-46137-HTTP-pipeline-response.patch (bsc#1216588,
CVE-2023-46137) serializing pipelined HTTP requests.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=141
2023-11-15 13:49:48 +00:00
d2479e8538 Accepting request 1109330 from devel:languages:python
+ drops CVE-2022-39348-do-not-echo-host-header.patch in older dists

OBS-URL: https://build.opensuse.org/request/show/1109330
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=64
2023-09-07 19:12:44 +00:00
74cff35e83 + drops CVE-2022-39348-do-not-echo-host-header.patch in older dists
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=139
2023-09-06 19:37:35 +00:00
459a6a8698 Accepting request 1095481 from devel:languages:python
- add regenerate-cert-to-work-with-latest-service-identity.patch
  remove-pynacl-optional-dependency.patch: backports from main
  git to fix tests with newer dependency versions

OBS-URL: https://build.opensuse.org/request/show/1095481
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=63
2023-06-27 21:15:53 +00:00
aeb654dcef - add regenerate-cert-to-work-with-latest-service-identity.patch
remove-pynacl-optional-dependency.patch: backports from main
  git to fix tests with newer dependency versions

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=137
2023-06-26 20:22:25 +00:00
58018163ca Accepting request 1089049 from devel:languages:python
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1089049
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=62
2023-05-26 18:15:24 +00:00
3b762340f5 osc copypac from project:home:dirkmueller:acdc:as_python3_module package:python-Twisted revision:8, using keep-link, using expand
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=135
2023-05-25 15:53:01 +00:00
07cc97910d Accepting request 1082019 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1082019
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=61
2023-04-22 20:02:30 +00:00
f93a47cc7c Accepting request 1081315 from home:dirkmueller:acdc:as_python3_module
SR for python stack proposal

OBS-URL: https://build.opensuse.org/request/show/1081315
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=133
2023-04-21 15:01:00 +00:00
440881d871 Accepting request 1063746 from devel:languages:python
- Add patch support-new-glibc.patch:
  * Support new glibc changes.

OBS-URL: https://build.opensuse.org/request/show/1063746
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=60
2023-02-09 15:21:25 +00:00
49de3c7920 - Add patch support-new-glibc.patch:
* Support new glibc changes.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=131
2023-02-08 08:20:20 +00:00
1253b1017e Accepting request 1057659 from devel:languages:python
- Add py311-tests-compat.patch to fix tests with python 3.11
  gh#twisted/twisted#11734
  gh#twisted/twisted#11733

OBS-URL: https://build.opensuse.org/request/show/1057659
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=59
2023-01-11 16:14:17 +00:00
5053ed2159 - Add py311-tests-compat.patch to fix tests with python 3.11
gh#twisted/twisted#11734
  gh#twisted/twisted#11733

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=129
2023-01-10 18:12:29 +00:00
d775c6095d Accepting request 1037121 from devel:languages:python
- Skip rpmlint error python-tests-in-package.

OBS-URL: https://build.opensuse.org/request/show/1037121
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=58
2022-11-22 15:09:46 +00:00
481e418cf2 - Skip rpmlint error python-tests-in-package.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=127
2022-11-21 13:25:08 +00:00
cb6c21f752 Accepting request 1032605 from devel:languages:python
- Update to 22.10.0:
  * Features
    + twisted.internet.defer.maybeDeferred will now schedule a coroutine
      result as asynchronous operation and return a Deferred that fires with
      the result of the coroutine.
    + Twisted now works with Cryptography versions 37 and above, and as a
      result, its minimum TLS protocol version has been upgraded to TLSv1.2.
    + The systemd: endpoint parser now supports "named" file descriptors. This
      is a more reliable mechanism for choosing among several inherited
      descriptors.
  * Bugfixes
    + twisted.internet.base.DelayedCall.__repr__ will no longer raise
      AttributeError if the DelayedCall was created before debug mode was
      enabled. As a side-effect, twisted.internet.base.DelayedCall.creator is
      now defined as None in cases where previously it was undefined.
    + twisted.internet.iocpreactor.udp now properly re-queues its listener
      when there is a failure condition on the read from the socket.
    + twisted.internet.defer.inlineCallbacks no longer causes confusing
      StopIteration tracebacks to be added to the top of tracebacks
      originating in triggered callbacks.
    + The typing of twisted.internet.task.react no longer constrains the
      type of argv.
    + ContextVar.reset() now works correctly inside inlineCallbacks functions
      and coroutines.
    + Implement twisted.python.failure._Code.co_positions for compatibility
      with Python 3.11.
    + twisted.pair.tuntap._TUNSETIFF and ._TUNGETIFF values are now correct
      parisc, powerpc and sparc architectures. 
    + twisted.web.vhost.NameVirtualHost will no longerreturn a NoResource
      error. (bsc#1204781, CVE-2022-39348)

OBS-URL: https://build.opensuse.org/request/show/1032605
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=57
2022-11-02 11:46:37 +00:00
b19a638d00 - Update to 22.10.0:
* Features
    + twisted.internet.defer.maybeDeferred will now schedule a coroutine
      result as asynchronous operation and return a Deferred that fires with
      the result of the coroutine.
    + Twisted now works with Cryptography versions 37 and above, and as a
      result, its minimum TLS protocol version has been upgraded to TLSv1.2.
    + The systemd: endpoint parser now supports "named" file descriptors. This
      is a more reliable mechanism for choosing among several inherited
      descriptors.
  * Bugfixes
    + twisted.internet.base.DelayedCall.__repr__ will no longer raise
      AttributeError if the DelayedCall was created before debug mode was
      enabled. As a side-effect, twisted.internet.base.DelayedCall.creator is
      now defined as None in cases where previously it was undefined.
    + twisted.internet.iocpreactor.udp now properly re-queues its listener
      when there is a failure condition on the read from the socket.
    + twisted.internet.defer.inlineCallbacks no longer causes confusing
      StopIteration tracebacks to be added to the top of tracebacks
      originating in triggered callbacks.
    + The typing of twisted.internet.task.react no longer constrains the
      type of argv.
    + ContextVar.reset() now works correctly inside inlineCallbacks functions
      and coroutines.
    + Implement twisted.python.failure._Code.co_positions for compatibility
      with Python 3.11.
    + twisted.pair.tuntap._TUNSETIFF and ._TUNGETIFF values are now correct
      parisc, powerpc and sparc architectures. 
    + twisted.web.vhost.NameVirtualHost will no longerreturn a NoResource
      error. (bsc#1204781, CVE-2022-39348)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=125
2022-11-01 05:50:34 +00:00
457a8da15b Accepting request 984316 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/984316
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=56
2022-06-24 06:45:13 +00:00
6100c6fe3e Accepting request 984263 from home:bnavigator:branches:devel:languages:python
- Update to 22.4.0
  * twisted.python.failure.Failure tracebacks now capture module
    information, improving compatibility with the Raven Sentry
    client. (#7796)
  * twisted.python.failure.Failure objects are now compatible with
    dis.distb, improving compatibility with post-mortem debuggers.
    (#9599)
  * twisted.internet.interfaces.IReactorSSL.listenSSL now has
    correct type annotations. (#10274)
  * twisted.internet.test.test_glibbase.GlibReactorBaseTests now
    passes. (#10317)
  * Conch
    - twisted.conch.ssh now supports using RSA keys with SHA-2
      signatures (RFC 8332) when acting as a server.  The
      rsa-sha2-512 and rsa-sha2-256 public key signature algorithms
      are automatically preferred over ssh-rsa if the client
      advertises support for them; the actual public keys do not
      need to change. (#9765)
    - twisted.conch.ssh now has an alternative Ed25519
      implementation using PyNaCl, in order to support platforms
      that lack OpenSSL >= 1.1.1b.  The new "conch_nacl" extra has
      the necessary dependency. (#10208)
  * Web
    - Twisted is now compatible with h2 4.x.x. (#10182)
    - twisted.web.http had several several defects in HTTP request
      parsing that could permit HTTP request smuggling. It now
      disallows signed Content-Length headers, forbids illegal
      characters in chunked extensions, forbids a ``0x`` prefix to
      chunk lengths, and only strips spaces and horizontal tab
      characters from header values. These changes address
      CVE-2022-24801 and GHSA-c2jg-hw38-jrqq. (#10323)
  * Mail
    - twisted.mail.pop3.APOPCredentials is now correctly marked as
      implementing twisted.cred.credentials.IUsernamHashedPassword,
      rather than IUsernamePassword. (#10305)
  * Trial
    - `trial --until-failure --jobs=N` now reports the number of
      each test pass as it begins. (#10312)
    - twisted.trial.unittest.TestCase now discards cleanup
      functions after running them. Notably, this prevents them
      from being run an ever growing number of times with trial -u
      .... (#10320)
- Drop CVE-2022-24801-http-1.1-leniency.patch fixed upstream
- Refresh remove-dependency-version-upper-bounds.patch
- Move extra_requires optional dependencies to meta sub packages
- Create :test multibuild flavor

OBS-URL: https://build.opensuse.org/request/show/984263
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=123
2022-06-22 06:14:46 +00:00
b526e0670d Accepting request 981084 from devel:languages:python
Synchronize changelog with the SLE package.

OBS-URL: https://build.opensuse.org/request/show/981084
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=55
2022-06-07 09:45:16 +00:00
fc05faa70c Fix changelog
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=121
2022-06-07 05:43:12 +00:00
8dc75dc306 Accepting request 967387 from devel:languages:python
- Update to 22.2.0:
  * Bugfixes
    + twisted.internet.gireactor.PortableGIReactor.simulate and
      twisted.internet.gtk2reactor.PortableGtkReactor.simulate no longer
      raises TypeError when there are no delayed called. This was a
      regression introduced with the migration to Python 3 in which the
      builtin min function no longer accepts None as an argument. (#9660)
    + twisted.conch.ssh.transport.SSHTransportBase now disconnects the
      remote peer if the SSH version string is not sent in the first
      4096 bytes. (#10284, CVE-2022-21716, GHSA-rv6r-3f5q-9rgx)
  * Improved Documentation
    + Add type annotations for twisted.web.http.Request.getHeader. (#10270)
  * Deprecations and Removals
    + Support for Python 3.6, which is EoL as of 2021-09-04, has been
      deprecated. (#10303)
- Add patch CVE-2022-24801-http-1.1-leniency.patch:
  * Be stricter about HTTP/1.1 headers. (bsc#1198086)

OBS-URL: https://build.opensuse.org/request/show/967387
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=54
2022-04-07 22:27:31 +00:00
2dc5bc28e2 Correct bug placement
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=119
2022-04-07 02:33:43 +00:00
fa38c52c99 - Add patch CVE-2022-24801-http-1.1-leniency.patch:
* Be stricter about HTTP/1.1 headers.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=118
2022-04-07 02:32:52 +00:00
54d44c61d1 - Update to 22.2.0:
* Bugfixes
    + twisted.internet.gireactor.PortableGIReactor.simulate and
      twisted.internet.gtk2reactor.PortableGtkReactor.simulate no longer
      raises TypeError when there are no delayed called. This was a
      regression introduced with the migration to Python 3 in which the
      builtin min function no longer accepts None as an argument. (#9660)
    + twisted.conch.ssh.transport.SSHTransportBase now disconnects the
      remote peer if the SSH version string is not sent in the first
      4096 bytes. (#10284, CVE-2022-21716, GHSA-rv6r-3f5q-9rgx)
      (bsc#1198086)
  * Improved Documentation
    + Add type annotations for twisted.web.http.Request.getHeader. (#10270)
  * Deprecations and Removals
    + Support for Python 3.6, which is EoL as of 2021-09-04, has been
      deprecated. (#10303)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=117
2022-04-06 07:09:11 +00:00
24915a3adb Accepting request 956891 from devel:languages:python
- Add patch skip-namespacewithwhitespace.patch:
  * Skip a failing test with Expat 2.4.5.

OBS-URL: https://build.opensuse.org/request/show/956891
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=53
2022-02-23 15:25:39 +00:00
c7c424fcd0 - Add patch skip-namespacewithwhitespace.patch:
* Skip a failing test with Expat 2.4.5.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=116
2022-02-23 00:32:21 +00:00
cd18705a82 Accepting request 953273 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/953273
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=52
2022-02-11 22:06:35 +00:00
135c9fb566 Accepting request 953066 from home:darix:branches:devel:languages:python
- Update to 22.1.0: (boo#1195667)
  - CVE-2022-21712 / GHSA-92x2-jw7w-xvvx

OBS-URL: https://build.opensuse.org/request/show/953066
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=115
2022-02-10 17:51:11 +00:00
cf8a33aef6 Accepting request 944143 from devel:languages:python
- Add patch currentThread-deprecated.patch:
  * Do not call a deprecated method which causes reactor startup to abort.

OBS-URL: https://build.opensuse.org/request/show/944143
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=51
2022-01-07 11:45:18 +00:00
8f313b2445 - Add patch currentThread-deprecated.patch:
* Do not call a deprecated method which causes reactor startup to abort.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=114
2022-01-06 04:50:09 +00:00
5f7737d8f6 Accepting request 939434 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/939434
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=50
2021-12-12 20:27:19 +00:00
090b9c9e4e Accepting request 939405 from home:bnavigator:python-rpm-macros
- Fix Source tags

OBS-URL: https://build.opensuse.org/request/show/939405
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=113
2021-12-10 18:47:52 +00:00
10a83800d3 Accepting request 938620 from home:bnavigator:python-rpm-macros
- Drop true-binary.patch which is not compatible with python310
- Some rpmlint cleanup:
  * Deduplicate docs
  * Remove she-bangs in test files
  * Remove empty doc files
  * Filter test certificate warning

OBS-URL: https://build.opensuse.org/request/show/938620
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=112
2021-12-10 15:51:11 +00:00
f640d307f7 Accepting request 915574 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/915574
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=49
2021-09-04 20:32:04 +00:00
3a6d209a0b Accepting request 915405 from home:fusionfuture:branches:devel:languages:python
- Remove h2 < 4.0 and priority < 2.0 version restriction. (boo#1190036)
  * remove-dependency-version-upper-bounds.patch

OBS-URL: https://build.opensuse.org/request/show/915405
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=111
2021-09-01 18:56:34 +00:00
Richard Brown
b811641d13 Accepting request 911988 from devel:languages:python
- Restore no-pygtkcompat.patch due to boo#1110669

OBS-URL: https://build.opensuse.org/request/show/911988
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=48
2021-08-16 08:08:37 +00:00
a4f026a40b Fix changelog
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=110
2021-08-13 12:51:55 +00:00
c7cf3cbca2 Accepting request 911968 from home:xanders:branches:devel:languages:python
In support of boo#1183833
- Restore no-pygtkcompat.patch due to boo#1110669 

Re: 880374
I'm pretty certain that the rpmlint warnings are not caused by the reintroduction of the patch. In fact these warnings are present in the existing devel:languages:python/python-Twisted repository right now (Rev 108), after multiple subsequently accepted requests since this was rejected 5 months ago. Can this request please be reconsidered, or can a package maintainer reintroduce the no-pygtkcompat patch of their own accord as part of regular Twisted maintenance?

OBS-URL: https://build.opensuse.org/request/show/911968
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=109
2021-08-13 12:50:12 +00:00
Richard Brown
babc7ebf3e Accepting request 910780 from devel:languages:python
- typing_extensions is now required
- Update to 21.7.0:
  - Python 3.10 beta is now a supported platform and should be ready for
    the final 3.10 release.
  - twisted.web.template.renderElement() now accepts any IRequest
    implementer instead of only twisted.web.server.Request. Add type
    hints to twisted.web.template. (#10184)
  - Type hinting was added to twisted.internet.defer, making this the
    first release  of Twisted where you might reasonably be able to use
    mypy without your own custom stub files. (#10017)
- Patch incremental-21.patch removed, because included in the
  upstream tarball.
- add incremental-21.patch: support newer incremental versions 
- Update to 21.2.0:
  * Features
    - 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. (#9583)
    - 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. (#9719, #9826)
    - 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. (#9825)
    - trial now allows the @unittest.skipIf decorator to specify that an
      entire test class should be skipped. (#9829)
    - The twisted.python.deprecate.deprecatedKeywordParameter decorator
      can be used to mark a keyword paramater of a function or method as
      deprecated. (#9844)
    - Projects using Twisted can now perform type checking against
      a Twisted
    - installation, for example using mypy. (#9908)
    - twisted.python.util.InsensitiveDict now fully implements
      MutableMapping. (#9919)
    - Python 3.8 is now tested and supported. (#9955)
    - Support a coroutine function in twisted.internet.task.react
      (#9974)
    - PyPy 3.7 is now tested and supported. (#10093)
  * Bugfixes
    - twisted.web.twcgi.CGIProcessProtocol.processEnded(...) now handles
      an already-finished request, for example when
      request.connectionLost(...) was called previously. (#9468)
    - 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. (#9509)
    - Fixed serialization of timedelta, date, and time objects in
      twisted.spread. (#9716)
    - 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. (#9766)
    - twisted.internet.process.registerReapProcessHandler and
      ._BaseProcess.reapProcess will no longer raise a TypeError when
      processing a None PID (#9775)
    - INotify will close its file descriptor if a directory is
      automatically removed by twisted from the watchlist because it's
      deleted, avoiding orphaned filedescriptors. (#9777)
    - DelayedCall.reset() is now working properly with asyncioreactor
      (#9780)
    - AsyncioSelectorReactor.seconds() now correctly returns an epoch
      time. (#9787)
    - 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(). (#9849)
    - The Gtk3 reactor now runs on Wayland-only sessions (#9904)
    - Descriptive error messages from twisted.internet.error are now
      present when running with 'python -OO'. (#9918)
    - Comparator methods such as eq() now always return NotImplemented
      for uncomparable types. (#9919)
    - 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.
      (#10098)
- Drop patches no-pygtkcompat.patch, python-38-hmac-digestmod.patch,
  python-38-no-cgi-parseqs.patch, twisted-pr1369-remove-pyopenssl-npn.patch,
  twisted-pr1487-increase-ffdh-keysize.patch and
  test-mktime-invalid-tm_isdst.patch as they have been merged.
- Refresh other patches.
- Add no-cython_test_exception_raiser.patch to avoid another dependency.
- Update URL and make use of sitelib, not sitearch macros
- Add 1521_delegate_parseqs_stdlib_bpo42967.patch to overcome
  effects of bpo#42967, which forbade mixing amps and semicolons
  in query strings as separators
  (https://twistedmatrix.com/trac/ticket/10096).
- Relax the crypto policies for the test-suite
- Add twisted-pr1369-remove-pyopenssl-npn.patch to support 
  pyOpenSSL 20
- Add twisted-pr1487-increase-ffdh-keysize.patch to support
  crpytography 3.3
- Fix the update-alternatives setup
  * manpages were cloned but never registerd with u-a
  * install alternatives as master and slave links now
- Add no-test_successResultOfWithFailureHasTraceback.patch to
  skip sted.conch.test.test_keys.KeyTests.test_fromOpenSSH,
  which fails. Upstream suggests
  https://twistedmatrix.com/trac/ticket/9665, but it has never
  been confirmed, even less fixed.
- Update to 20.3.0
  * drop Python 2
  * twisted.news is deprecated.
  * twisted.conch.ssh now supports the curve25519-sha256 key exchange 
    algorithm (requires OpenSSL >= 1.1.0).
  * many bugfixes and other miscelaneous fixes
- Fixed update-alternatives mechanism
- Added true-binary.patch
- Dropped python-38-xml-namespace.patch
- Reapplied python-38-hmac-digestmod.patch
- %python3_only -> %python_alternative
- Update to 19.10.0 bsc#1162424:
  * twisted.trial.successResultOf, twisted.trial.failureResultOf, and twisted.trial.assertNoResult accept coroutines as well as Deferreds. (#9006)
  * Fixed circular import in twisted.trial.reporter, introduced in Twisted 16.0.0. (#8267)
  * The POP3 server implemented by twisted.mail.pop3 now accepts passwords that contain spaces. (#9100)
  * Incoming HTTP/2 connections will now not time out if they persist for longer than one minute. (#9653)
  * twisted.conch.ssh.keys now correctly writes the "iqmp" parameter in serialized RSA private keys as q^-1 mod p rather than p^-1 mod q. (#9681)
  * twisted.web.server.Request will now use twisted.web.server.Site.getContentFile, if it exists, to get a file into which to write request content. If getContentFile is not provided by the site, it will fall back to the previous behavior of using io.BytesIO for small requests and tempfile.TemporaryFile for large ones. (#9655)
  * twisted.web.client.FileBodyProducer will now stop producing when the Deferred returned by FileBodyProducer.startProducing is cancelled. (#9547)
  * The HTTP/2 server implementation now enforces TCP flow control on control frame messages and times out clients that send invalid data without reading responses. This closes CVE-2019-9512 (Ping Flood), CVE-2019-9514 (Reset Flood), and CVE-2019-9515 (Settings Flood). Thanks to Jonathan Looney and Piotr Sikora. (#9694)
- Add python-38-xml-namespace.patch to fix dictionary mutation under Python 3.8
- Add python-38-hmac-digestmod.patch to add digestmod parameter where required
- Add python-38-no-cgi-parseqs.patch to no longer import parse_qs from cgi
- Remove mailmail when only building Python 3 flavour
- Update to 19.7.0:
  * The callable argument to twisted.internet.task.deferLater() is no longer required. (#9577)
  * twisted.internet.utils.getProcessOutputAndValue now accepts stdinBytes to write to the child process's standard input. (#9607)
  * Add new twisted.logger.capturedLogs context manager for capturing observed log events in tests. (#9617)
  * twisted.internet.base.PluggableResolverMixin, which implements the pluggable resolver interfaces for easier re-use in other reactors, has been factored out of ReactorBase. (#9632)
  * The PyPI page for Twisted has been enhanced to include more information and useful links. (#9648)
- Refresh patch:
  * skip_MultiCast.patch
- Remove merged patch hyperlink.patch
- Remove patch 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch
- Remove patch PR-1147.patch
- Add PR-1147.patch (bsc#1138461, CVE-2019-12855)
  In words.protocols.jabber.xmlstream in Twisted through 19.2.1,
  XMPP support did not verify certificates when used with TLS,
  allowing an attacker to MITM connections.
- Add 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch
  (bsc#1137825, CVE-2019-12387)
  Prevent CRLF injections
- update to 19.2.1 (bsc#1137825, CVE-2019-12387):
  * Prevent CRLF injections described in CVE-2019-12387
- Update to 19.2.0:
  * twisted.internet.ssl.CertificateOptions now uses 32 random bytes instead of an MD5 hash for the ssl session identifier context. (#9463)
  * DeferredLock and DeferredSemaphore can be used as asynchronous context managers on Python 3.5+. (#9546)
  * t.i.b.BaseConnector has custom __repr__ (#9548)
  * twisted.internet.ssl.optionsForClientTLS now supports validating IP addresses from the certificate subjectAltName (#9585)
  * Twisted's minimum Cryptography requirement is now 2.5. (#9592)
  * twisted.conch.ssh.keys can now read private keys in the new "openssh-key-v1" format, introduced in OpenSSH 6.5 and made the default in OpenSSH 7.8. (#9515)
  * twisted.web.client.HostnameCachingHTTPSPolicy was added as a new contextFactory option. The policy caches a specified number of twisted.internet.interfaces.IOpenSSLClientConnectionCreator instances to to avoid the cost of instantiating a connection creator for multiple requests to the same host. (#9138)
- Remove merged patches:
  * openssl-errormsg.aptch
  * openssl111.patch
- Add patch to tests for new hyperlink:
  * hyperlink.patch
- Add another patch for openssl 1.1.1 (from upstream git):
  * openssl-errormsg.aptch
- test-mktime-invalid-tm_isdst.patch: don't pass invalid tm_isdst value to
  mktime (see also bpo-15750)
- Add no-pygtkcompat.patch to avoid dependency on Gtk (boo#1110669)
- Version update to 18.9.0:
  * Fixes for the 3.7 python
- Remove merged python37.patch
- Add patch openssl111.patch which fixes tests with new pyOpenssl
  * Asserts changed behaviour
- Do not write bytecode stuff when running the tests
- Add BuildRequires python-tz, which seems to be required to test suite
  to pass.
- Also, add skip_MultiCast.patch to skip tests requiring full
  netrworking stack.
- Add missing Requires.
- Fix the dependencies to match up upstream setup.py
- Run the tests
- Add patch to build with python3.7:
  * python37.patch
- Add missing dependency on pyamcrest
- Remove unused patch lp1102685.diff
- update to 18.7.0:
  for full list of changes please see
  https://github.com/twisted/twisted/blob/twisted-18.7.0/NEWS.rst
- Add python-service_identity Recommends.
- update to 18.4.0
  For full list of changes please see:
  https://github.com/twisted/twisted/blob/twisted-18.4.0/NEWS.rst
- update to 17.9.0
  For full list of changes please see:
  https://github.com/twisted/twisted/blob/twisted-17.9.0/NEWS.rst
* mailman is only in python2 package
- Adjust Requires and BuildRequires
- Fix rpmlint warnings
- remove alternatives altogether in favor of versioned executables
- clean up spec file
- update to 17.5.0
  * too many changes to list, see full changelog in NEWS.rst
- Simplify alternatives handling
- Fix RPM warnings
- Change to singlespec approach
- specfile:
  * make twistd the update-alternative master, same as in the python3
    version (bnc #1001523)
- Update to version 16.4.0
  For the complete list of changes plese see
  https://github.com/twisted/twisted/blob/twisted-16.4.0/NEWS
- Update to version 16.3.0
  For the complete list of changes plese see
  https://github.com/twisted/twisted/blob/twisted-16.3.0/NEWS
- Update to version 16.2.0
  For the complete list of changes plese see
  https://github.com/twisted/twisted/blob/twisted-16.2.0/NEWS
- Update to version 16.1.1
  For the complete list of changes plese see
  https://github.com/twisted/twisted/blob/twisted-16.1.1/NEWS
- Update to version 16.1.0
  For the complete list of changes plese see
  https://github.com/twisted/twisted/blob/twisted-16.1.0/NEWS
- Update to version 16.0.0
  For the complete list of changes plese see
  https://github.com/twisted/twisted/blob/twisted-16.0.0/NEWS
- Update to version 15.5.0
  * This is the last Twisted release where Python 2.6 is supported, on
    any platform. Python 3.5 (on POSIX) support has been added.
  * This release introduces changes that are required for Conch's SSH
    implementation to work with OpenSSH 6.9+ servers.
  * twisted.python.url is a new abstraction for URLs, supporting RFC
    3987 IRIs. (#5388)
  * twisted.python.logfile is now ported to Python 3. (#6749)
  * twisted.python.zippath has been ported to Python 3. (#6917)
  * twisted.internet.ssl.CertificateOptions and
    twisted.internet.ssl.optionsForClientTLS now take a
    acceptableProtocols parameter that enables negotiation of the next
    protocol to speak after the TLS handshake has completed. This field
    advertises protocols over both NPN and ALPN. Also added new
    INegotiated interface for TLS interfaces that support protocol
    negotiation. This interface adds a negotiatedProtocol property that
    reports what protocol, if any, was negotiated in the TLS handshake.
    (#7860)
  * twisted.python.urlpath.URLPath now operates correctly on Python 3,
    using bytes instead of strings, and introduces the fromBytes
    constructor to assist with creating them cross-version. (#7994)
  * twisted.application.strports is now ported to Python 3. (#8011)
  * twistd (the Twisted Daemon) is now ported to Python 3. (#8012)
  * Python 3.5 is now supported on POSIX platforms. (#8042)
  * twisted.internet.serialport is now ported on Python 3. (#8099)
  * twisted.logger.formatEvent now can format an event if it was
    flattened (twisted.logger.eventAsJSON does this) and has text after
    the last replacement field. (#8003)
  * twisted.cred.checkers.FilePasswordDB now logs an error if the
    credentials db file does not exist, no longer raises an unhandled
    error. (#8028)
  * twisted.python.threadpool.ThreadPool now properly starts enough
    threads to do any work scheduled before ThreadPool.start() is
    called, such as when work is scheduled in the reactor via
    reactor.callInThread() before reactor.run(). (#8090)
  * Twisted Development test standard documentation now contain
    information about avoiding test data files. (#6535)
  * The documentation for twisted.internet.defer.DeferredSemaphore now
    describes the actual usage for limit and tokens instance
    attributes. (#8024)
  * twisted.python._initgroups, a C extension, has been removed and
    stdlib support is now always used instead. (#5861)
  * Python 2.6 is no longer supported. (#8017)
  * twisted.python.util.OrderedDict is now deprecated, and uses of it
    in Twisted are replaced with collections.OrderedDict. (#8051)
  * twisted.persisted.sob.load, twisted.persisted.sob.loadValueFromFile
    and twisted.persisted.sob.Persistent.save() are now deprecated when
    used with a passphrase. The encyption used by these methods are
    weak. (#8081)
  * twisted.internet.interfaces.IStreamClientEndpointStringParser has
    been removed and Twisted will no longer use parsers implementing
    this interface. (#8094)
  * #5976, #6628, #6894, #6980, #7228, #7693, #7731, #7997, #8046,
    #8054, #8056, #8060, #8063, #8064, #8068, #8072, #8091, #8095,
    #8096, #8098, #8106
- Make "trial" the master file for update-alternatives, since it
  is the only one that supports python 3 so far.
- Implement update-alternatives in preparation for python 3 version.
- Update to version 15.4.0
  * add dependency on setuptools
  * lore removed
  * please see the NEWS file
- change dep from python-asn1 to python-pyasn1 (renamed long ago)
- Wrong dependency rpm name, should be python-pycrypto
- Add missing dependencies on python-asn1 and python-Crypto
- Update to version 15.2.1:
  * twisted.logger now marks the `isError` key correctly on legacy
    events generated by writes to stderr. (#7903)
  * twisted.logger's documentation is now correctly listed in the table
    of contents. (#7904)
- Changes from version 15.2.0:
  * twisted.internet.process has now been ported to Python 3. (#5987)
  * twisted.cred.credentials is now ported to Python 3. (#6176)
  * twisted.trial.unittest.TestCase's assertEqual, assertTrue, and
    assertFalse methods now pass through the standard library's more
    informative failure messages. (#6306)
  * The new package twisted.logger provides a new, fully tested, and
    feature-rich logging framework. The old module twisted.python.log
    is now implemented using the new framework. The new logger HOWTO
    documents the new framework. (#6750)
  * twisted.python.modules is now ported to Python 3. (#7804)
  * twisted.python.filepath.FilePath now supports Unicode (text) paths.
    Like the os module, instantiating it with a Unicode path will
    return a Unicode-mode FilePath, instantiating with a bytes path
    will return a bytes-mode FilePath. (#7805)
  * twisted.internet.kqreactor is now ported to Python 3 (#7823)
  * twisted.internet.endpoints.ProcessEndpoint is now ported to Python
    3. (#7824)
  * twisted.python.filepath.FilePath now has asBytesMode and asTextMode
    methods which return a FilePath in the requested mode. (#7830)
  * twisted.python.components.proxyForInterface now creates method
    proxies that can be used with functools.wraps. (#7832)
  * The tls optional dependency will now also install the idna package
    to validate idna2008 names. (#7853)
  * Don't raise an exception if `DefaultLogObserver.emit()` gets an
    event with a message that raises when `repr()` is called on it.
    Specifically: use `textFromEventDict()` instead of a separate (and
    inferior) message rendering implementation. (#6569)
  * twisted.cred.credentials.DigestedCredentials incorrectly handled
    md5-sess hashing according to the RFC, which has now been fixed.
    (#7835)
  * Fixed an issue with twisted.internet.task.LoopingCall.withCount
    where sometimes the passed callable would be invoked with "0" when
    we got close to tricky floating point boundary conditions. (#7836)
  * twisted.internet.defer now properly works with the new logging
    system. (#7851)
  * Change `messages` key to `log_io` for events generated by
    `LoggingFile`. (#7852)
  * twisted.logger had literal characters in docstrings that are now
    quoted. (#7854)
  * twisted.logger now correctly formats a log event with a key named
    `message` when passed to a legacy log observer. (#7855)
  * twisted.internet.endpoints.HostnameEndpoint now uses getaddrinfo
    properly on Python 3.4 and above. (#7886)
  * Fix a typo in narrative documentation for logger (#7875)
  * tkunzip and tapconvert in twisted.scripts were deprecated in 11.0
    and 12.1 respectively, and are now removed. (#6747)
  * twisted.protocols.gps is deprecated in preference to
    twisted.positioning. (#6810)
  * twisted.scripts.tap2deb and twisted.scripts.tap2rpm are now
    deprecated. (#7682)
  * twisted.trial.reporter.TestResult and
    twisted.trial.reporter.Reporter contained deprecated methods (since
    8.0) which have now been removed. (#7815)
  * #6027, #7287, #7701, #7727, #7758, #7776, #7786, #7812, #7819,
    #7831, #7838, #7865, #7866, #7869, #7872, #7877, #7878, #7885
  * twisted.conch.ssh.forwarding now supports local->remote forwarding
    of IPv6 (#7751)
  * twisted.mail.smtp.sendmail now uses ESMTP. It will
    opportunistically enable encryption and allow the use of
    authentication. (#7257)
  * twisted.web.static is now ported to Python 3. (#6177)
  * twisted.web.server.Site accepts requestFactory as constructor
    argument. (#7016)
  * twisted.web.util had some HTML generation functions deprecated
    since 12.1 that have now been removed. (#7828)
  * #6927, #7797, #7802, #7846
  * The resumeOffset argument to
    twisted.words.protocol.irc.DccFileReceive now works as it is
    documented. (#7775)
- Version 15.1.0:
  * deprecated MSN protocol support
  * improved docs for Trial
  * removed deprecated UDPClient
  * twisted.web.static.File allows defining a custom resource for
    rendering forbidden pages.
  * minor bugfixes
- Version 15.0.0:
  + please, see NEWS file
- Update lp1102685.diff
- Remove unprovided python-service_identity; it's not required in any
  way
- Update to version 14.0.2:
  + No significant changes have been made for this release.
- Update to version 14.0.1:
  + BrowserLikePolicyForHTTPS would always ignore the specified
    trustRoot and use the system trust root instead, which has been
    rectified. (#7647)
- add dependency python-service_identity for testing purposes
- Update to version 14.0.0:
  + too many changes to list here: check NEWS file
- Add lp1102685.diff (bnc#853545): pygobject compatibility
- Update to version 13.2.0:
  + Twisted now includes a HostnameEndpoint implementation which uses IPv4 and
   IPv6 in parallel, speeding up the connection by using whichever connects first
   (the 'Happy Eyeballs'/RFC 6555 algorithm). (#4859)
  + Improved support for Cancellable Deferreds by kaizhang, our GSoC student.
    (#4320, #6532, #6572, #6639)
  + Improved Twisted.Mail documentation by shira, our Outreach Program for
    Women intern. (#6649, #6652)
  + twistd now waits for the application to start successfully before exiting
    after daemonization. (#823)
  + SSL server endpoint string descriptions now support the specification of
    chain certificates. (#6499)
  + Over 70 closed tickets since 13.1.0.
- Update to version 13.1.0
  + Please read usr/share/doc/packages/python-Twisted/NEWS for more
    infos
- Update to version 3.0.0
  + Features
   - The twisted.protocols.ftp.FTP server now treats "LIST -La", "LIST
     -al", and all other combinations of ordering and case of the "-l"
     and "-a" flags the same: by ignoring them rather than treating them
     as a pathname. (#1333)
   - twisted.python.log.FileLogObserver now uses `datetime.strftime` to
     format timestamps, adding support for microseconds and timezone
     offsets to the `timeFormat` string. (#3513)
   - trial now deterministically runs tests in the order in which they
     were specified on the command line, instead of quasi-randomly
     according to dictionary key ordering. (#5520)
   - Cooperator.running can be used to determine the current cooperator
     status. (#5937)
   - twisted.python.modules.PythonPath now implements `__contains__` to
     allow checking, by name, whether a particular module exists within
     it. (#6198)
   - twisted.application.internet.TimerService.stopService now waits for
     any currently running call to finish before firing its deferred.
     (#6290)
  + Bugfixes
   - twisted.protocols.ftp.FTP now recognizes all glob expressions
     supported by fnmatch. (#4181)
   - Constant values defined using twisted.python.constants can now be
     set as attributes of other classes without triggering an unhandled
     AttributeError from the constants implementation. (#5797)
   - Fixed problem where twisted.names.client.Resolver was not closing
     open file handles which can lead to an out of file descriptor error
     on PyPy. (#6216)
   - All reactors included in Twisted itself now gracefully handle a
     rare case involving delayed calls scheduled very far in the future.
     (#6259)
   - twisted.trial.reporter.Reporter._trimFrames correctly removes
     frames from twisted.internet.utils.runWithWarningsSuppressed again,
     after being broke in #6009. (#6282)
  + Improved Documentation
   - A new "Deploying Twisted with systemd" howto document which
     demonstrates how to start a Twisted service using systemd socket
     activation. (#5601)
   - New "Introduction to Deferreds" howto.  Old howto rebranded as
     reference documentation. (#6180)
   - "Components: Interfaces and Adapters" howto now uses
     zope.interface's decorator-based API. (#6269)
  + Deprecations and Removals
   - twisted.python.util.unsignedID and setIDFunction are deprecated
     now. (#5544)
   - twisted.python.zshcomp deprecated since 11.1.0 has now been
     removed. Shell tab-completion is now handled by
     twisted.python.usage. (#5767)
   - python.runtime.Platform.isWinNT is deprecated now. Use
     Platform.isWindows instead. (#5925)
   - twisted.trial.util.findObject, deprecated since Twisted 10.1.0, has
     been removed. (#6260)
- Update to 12.3.0 version:
  * Features
 	- The new -j flag to trial provides a trial runner supporting
   	  multiple worker processes on the local machine, for parallel
      testing. (#1784)
 	- twisted.internet.task.react, a new function, provides a simple API
      for running the reactor until a single asynchronous function
      completes. (#3270)
 	- twisted.protocols.ftp.FTP now handles FEAT and OPTS commands.
      (#4515)
 	- trial now supports specifying a debugger other than pdb with the
      --debugger command line flag. (#5794)
 	- twisted.python.util.runWithWarningsSuppressed has been added; it
      runs a function with specified warning filters. (#5950)
 	- trial's skipping feature is now implemented in a way compatible with the
      standard library unittest's runner. (#6006)
 	- The setup3.py script is now provided to provisionally support
      building and installing an experimental, incomplete version of
      Twisted in a Python 3 environment. (#6040)
 	- twisted.python.util.FancyStrMixin now supports arbitrary callables
      to format attribute values. (#6063)
 	- Several new methods of twisted.trial.unittest.SynchronousTestCase
   	- `successResultOf`, `failureResultOf`, and `assertNoResult` -
       have been added to make testing `Deferred`-using code easier.
       (#6105)
  * Bugfixes
 	- twisted.protocols.basic.LineReceiver now does not hit the maximum
      stack recursion depth when the line and data mode is switched many
      times. (#3050)
 	- twisted.protocols.ftp.FTPFileListProtocol fixed to support files
      with space characters in their name. (#4986)
 	- gireactor and gtk3reactor no longer prevent gi.pygtkcompat from
      working, and likewise can load if gi.pygtkcompat has previously
      been enabled. (#5676)
 	- gtk2reactor now works again on FreeBSD, and perhaps other platforms
      that were broken by gi interactions. (#5737)
 	- gireactor now works with certain older versions of gi that are
      missing the threads_init() function. (#5790)
 	- Fixed a bug where twisted.python.sendmsg would sometimes fail with
      obscure errors including "Message too long" or "Invalid argument"
      on some 64-bit platforms. (#5867)
 	- twisted.internet.endpoints.TCP6ClientEndpoint now provides
      twisted.internet.interfaces.IStreamClientEndpoint (#5876)
 	- twisted.internet.endpoints.AdoptedStreamServerEndpoint now provides
      twisted.internet.interfaces.IStreamServerEndpoint. (#5878)
 	- Spawning subprocesses with PTYs now works on OS X 10.8. (#5880)
 	- twisted.internet.test.test_sigchld no longer incorrectly fails when
      run after certain other tests. (#6161)
 	- twisted.internet.test.test_gireactor no longer fails when using
      pygobject 3.4 and gtk 3.6 when X11 is unavailable. (#6170)
 	- twisted/python/sendmsg.c no longer fails to build on OpenBSD.
      (#5907)
  *Deprecations and Removals
 	- The minimum required version of zope.interface is now 3.6.0.
      (#5683)
 	- twisted.internet.interfaces.IReactorArbitrary and
      twisted.application.internet.GenericServer and GenericClient,
      deprecated since Twisted 10.1, have been removed. (#5943)
 	- twisted.internet.interfaces.IFinishableConsumer, deprecated since
      Twisted 11.1, has been removed. (#5944)
 	- twisted.python.failure has removed all support for string
      exceptions. (#5948)
 	- assertTrue, assertEqual, and the other free-functions in
      twisted.trial.unittest for writing assertions, deprecated since
      prior to Twisted 2.3, have been removed. (#5963)
 	- Ports, connectors, wakers and other reactor-related types no longer
      log a nice warning when they are erroneously pickled. Pickling of
      such objects continues to be unsupported. (#5979)
 	- twisted.python.components.Componentized no longer inherits from
      Versioned. (#5983)
 	- twisted.protocols.basic.NetstringReceiver.sendString no longer
      accepts objects other than bytes; the removed behavior was
      deprecated in Twisted 10.0. (#6025)
 	- The lookupRecord method of twisted.internet.interfaces.IResolver,
      never implemented or called by Twisted, has been removed. (#6091)
- Update to version 12.2.0
  * Starting with the release after 12.2, Twisted will begin requiring
    zope.interface 3.6 (as part of Python 3 support).
  * Features
    - twisted.protocols.sip.MessageParser now handles multiline headers.
    - twisted.internet.endpoints now provides StandardIOEndpoint, a
      Standard I/O endpoint.
    - If a FTPCmdError occurs during twisted.protocols.ftp.FTP.ftp_RETR
      sending the file (i.e. it is raised by the IReadFile.send method it
      invokes), then it will use that to return an error to the client
      rather than necessarily sending a 426 CNX_CLOSED_TXFR_ABORTED error.
    - twisted.internet.interfaces.IReactorSocket.adoptStreamConnection is
      implemented by some reactors as a way to add an existing
      established connection to them.
    - twisted.internet.endpoints now provides TCP6ServerEndpoint, an IPv6
      TCP server endpoint.
    - twisted.internet.endpoints now provides TCP6ClientEndpoint, an IPv6
      TCP client endpoint.
    - twisted.internet.endpoints.serverFromString, the endpoint string
      description feature, can now be used to create IPv6 TCP servers.
    - twisted.internet.endpoints.serverFromString, the endpoint string
      description feature, can now be used to create servers that run on
      Standard I/O.
    - twisted.trial.unittest now offers SynchronousTestCase, a test case
      base class that provides usability improvements but not reactor-
      based testing features.
  * Bugfixes
    - twisted.internet.Process.signalProcess now catches ESRCH raised by
      os.kill call and raises ProcessExitedAlready instead.
    - TLSMemoryBIOProtocol (and therefore all SSL transports if pyOpenSSL
      >= 0.10) now provides the interfaces already provided by the
      underlying transport.
  * Deprecations and Removals
    - Python 2.5 is no longer supported.
    - The --extra option of trial, deprecated since 11.0, is removed now.
    - addPluginDir and getPluginDirs in twisted.python.util are
      deprecated now.
    - twisted.trial.runner.DocTestCase, deprecated in Twisted 8.0, has
      been removed.
    - startKeepingErrors, flushErrors, ignoreErrors, and clearIgnores in
      twisted.python.log (deprecated since Twisted 2.5) are removed now.
    - unzip, unzipIter, and countZipFileEntries in
      twisted.python.zipstream (deprecated in Twisted 11.0) are removed
      now.
    - twisted.test.time_helpers, deprecated since Twisted 10.0, has been
      removed.
    - twisted.web.static.FileTransfer, deprecated since 9.0, is removed
      now. Use a subclass of StaticProducer instead.
    - ErrorPage, NoResource and ForbiddenResource in twisted.web.error
      were deprecated since 9.0 and are removed now.
    - twisted.web.google, deprecated since Twisted 11.1, is removed now.
- Update to version 12.1.0
  * Features
    - The kqueue reactor has been revived.
    - twisted.python.filepath now provides IFilePath, an interface for
      file path objects.
    - New gtk3 and gobject-introspection reactors have been added.
    - gtk and glib reactors now run I/O and scheduled events with lower
      priority, to ensure the UI stays responsive.
    - IReactorTCP.connectTCP() can now accept IPv6 address literals
      (although not hostnames) in order to support connecting to IPv6
      hosts.
    - twisted.internet.interfaces.IReactorSocket, a new interface, is now
      supported by some reactors to listen on sockets set up by external
      software (eg systemd or launchd).
    - twisted.internet.endpoints.clientFromString now also supports
      strings in the form of tcp:example.com:80 and ssl:example.com:4321
    - twisted.python.constants.Flags now provides a way to define
      collections of flags for bitvector-type uses.
    - The epoll(7)-based reactor is now the default reactor on Linux.
    - twisted.python.runtime.platform.isLinux can be used to check if
      Twisted is running on Linux.
    - twisted.internet.endpoints.serverFromString now recognizes a
      "systemd" endpoint type, for listening on a server port inherited
      from systemd.
    - Connections created using twisted.internet.interfaces.IReactorUNIX
      now support sending and receiving file descriptors between
      different processes.
    - twisted.internet.endpoints.clientFromString now supports UNIX
      client endpoint strings with the path argument specified like
      "unix:/foo/bar" in addition to the old style, "unix:path=/foo/bar".
    - twisted.protocols.amp.Descriptor is a new AMP argument type which
      supports passing file descriptors as AMP command arguments over
      UNIX connections.
    - twisted.web.client.Agent and ProxyAgent now support persistent
      connections.
    - Added twisted.web.template.renderElement, a function which renders
      an Element to a response.
    - twisted.web.client.HTTPConnectionPool now ensures that failed
      queries on persistent connections are retried, when possible.
    - twisted.web.template.XMLFile now supports FilePath objects.
    - twisted.web.template.renderElement takes a doctype keyword
      argument, which will be written as the first line of the response,
      defaulting to the HTML5 doctype.
  * Bugfixes
    - twisted.internet.abstract.FileDescriptor implements
      twisted.internet.interfaces.IPushProducer instead of
      twisted.internet.interfaces.IProducer.
      twisted.internet.iocpreactor.abstract.FileHandle implements
      twisted.internet.interfaces.IPushProducer instead of
      twisted.internet.interfaces.IProducer.
    - The epoll reactor now supports reading/writing to regular files on
      stdin/stdout.
    - Calling .cancel() on any Twisted-provided client endpoint
      (TCP4ClientEndpoint, UNIXClientEndpoint, SSL4ClientEndpoint) now
      works as documented, rather than logging an AlreadyCalledError.
    - A leak of OVERLAPPED structures in some IOCP error cases has been
      fixed.
    - twisted.internet._pollingfile._PollableWritePipe now checks for
      outgoing unicode data in write() and writeSequence() instead of
      checkWork().
    - twisted.web.util.formatFailure now quotes all data in its output to
      avoid it being mistakenly interpreted as markup.
    - twisted.web.distrib now lets distributed servers set the response
      message.
  * Improved Documentation
    - "Working from Twisted's Subversion repository" links to UQDS and
      Combinator are now updated.
    - Added tkinterdemo.py, an example of Tkinter integration.
  * Deprecations and Removals
    - The 'unsigned' flag to twisted.scripts.tap2rpm.MyOptions is now
      deprecated.
    - Removed the unreachable _fileUrandom method from
      twisted.python.randbytes.RandomFactory.
    - twisted.persisted.journal is removed, deprecated since Twisted
      11.0.
    - Support for pyOpenSSL 0.9 and older is now deprecated.  pyOpenSSL
      0.10 or newer will soon be required in order to use Twisted's SSL
      features.
    - backwardsCompatImplements and fixClassImplements are removed from
      twisted.python.components, deprecated in 2006.
    - twisted.python.reflect.macro was removed, deprecated since Twisted
      8.2.
    - twisted.python.text.docstringLStrip, deprecated since Twisted
      10.2.0, has been removed
    - Removed the deprecated dispatch and dispatchWithCallback methods
      from twisted.python.threadpool.ThreadPool (deprecated since 8.0)
    - twisted.scripts.tapconvert is now deprecated.
    - twisted.python.reflect's Settable, AccessorType, PropertyAccessor,
      Accessor, OriginalAccessor and Summer are now deprecated.
    - twisted.python.threadpool.ThreadSafeList (deprecated in 10.1) is
      removed.
    - twisted.application.app.initialLog, deprecated since Twisted 8.2.0,
      has been removed.
    - twisted.spread.refpath was deleted, deprecated since Twisted 9.0.
    - twisted.python.otp, deprecated since 9.0, is removed.
    - Removed `dsu`, `moduleMovedForSplit`, and `dict` from
      twisted.python.util (deprecated since 10.2)
    - PHP3Script and PHPScript were removed from twisted.web.twcgi,
      deprecated since 10.1. Use twcgi.FilteredScript instead.
    - twisted.web.template.XMLFile's support for file objects and
      filenames is now deprecated.  Use the new support for FilePath
      objects.
    - twisted.web.server.date_time_string and
      twisted.web.server.string_date_time are now deprecated in favor of
      twisted.web.http.datetimeToString and twisted.web.
      http.stringToDatetime
- Changes file cleanup
- Update to version 0.12
  * Features
    - The interface argument to IReactorTCP.listenTCP may now be an IPv6
      address literal, allowing the creation of IPv6 TCP servers.
    - twisted.python.constants.Names now provides a way to define
      collections of named constants, similar to the "enum type" feature
      of C or Java.
    - twisted.python.constants.Values now provides a way to define
      collections of named constants with arbitrary values.
  * Bugfixes
    - Fixed an obscure case where connectionLost wasn't called on the
      protocol when using half-close.
    - UDP ports handle socket errors better on Windows.
    - When idle, the gtk2 and glib2 reactors no longer wake up 10 times a
      second.
    - Prevent a rare situation involving TLS transports, where a producer
      may be erroneously left unpaused.
    - twisted.internet.iocpreactor.iocpsupport now has fewer 64-bit
      compile warnings.
    - The GTK2 reactor is now more responsive on Windows.
    - TLS transports now correctly handle producer registration after the
      connection has been lost.
    - twisted.protocols.htb.Bucket now empties properly with a non-zero
      drip rate.
    - IReactorSSL and ITCPTransport.startTLS now synchronously propagate
      errors from the getContext method of context factories, instead of
      being capturing them and logging them as unhandled.
  * Improved Documentation
    - The multicast documentation has been expanded.
    - twisted.internet.defer.Deferred now documents more return values.
    - Show a better starting page at
      http://twistedmatrix.com/documents/current
  * Deprecations and Removals
    - Remove the deprecated module twisted.enterprise.reflector.
    - Removed the deprecated module twisted.enterprise.row.
    - Remove the deprecated module twisted.enterprise.sqlreflector.
    - Removed the deprecated module twisted.enterprise.util, as well as
      twisted.enterprise.adbapi.safe.
    - Python 2.4 is no longer supported on any platform.
    - Removed printTraceback and noOperation from twisted.spread.pb,
      deprecated since Twisted 8.2.
- Changed BuildRequires python-zopeinterface to python-zope.interface,
  it got renamed
- Changed Buildrequires 'python-serial' to 'python-pyserial'
- Update to version 0.11:
  * Features:
    - The twistd man page now has a SIGNALS section.
    - reactor.spawnProcess now will not emit a PotentialZombieWarning when called
      before reactor.run, and there will be no potential for zombie processes in this case.
    - High-throughput applications based on Perspective Broker should now run
      noticably faster thanks to the use of a more efficient decoding function
      in Twisted Spread.
    - Documentation for trac-post-commit-hook functionality in svn-dev policy.
    - twisted.protocols.socks.SOCKSv4 now supports the SOCKSv4a protocol.
    - Trial can now output test results according to the subunit protocol, as
      long as Subunit is installed.
    - twisted.protocols.amp now provides a ListOf argument type which can be
      composed with some other argument types to create a zero or more element
      sequence of that type.
    - If returnValue is invoked outside of a function decorated with
      @inlineCallbacks, but causes a function thusly decorated to exit, a
      DeprecationWarning will be emitted explaining this potentially confusing
      behavior. In a future release, this will cause an exception.
    - twisted.python.logfile.BaseLogFile now has a reopen method allowing to
      use an external logrotate mechanism.
  * Bugfixes:
    - FTP.ftp_NLST now handles requests on invalid paths in a way consistent
      with RFC 959.
    - twisted.python.util.initgroups now calls the low-level C initgroups by
      default if available: the python version can create lots of I/O with certain
      authentication setup to retrieve all the necessary information.
    - startLogging now does nothing on subsequent invocations, thus fixing a
      terrible infinite recursion bug that's only on edge case.
    - Stringify non-string data to NetstringReceiver.sendString before
      calculating the length so that the calculated length is equal to the actual
      length of the transported data.
    - twisted.python.win32.cmdLineQuote now correctly quotes empty strings arguments.
    - Change the behavior of the Gtk2Reactor to register only one source watch for
      each file descriptor, instead of one for reading and one for writing. In
      particular, it fixes a bug with Glib under Windows where we failed to notify
      when a client is connected.
    - Twisted Trial no longer crashes if it can't remove an old _trial_temp directory.
    - The optional _c_urlarg extension now handles unquote("") correctly on
      platforms where malloc(0) returns NULL, such as AIX. It also compiles with less warnings.
    - On POSIX, child processes created with reactor.spawnProcess will no longer
      automatically ignore the signals which the parent process has set to be ignored.
    - All SOCKSv4a tests now use a dummy reactor with a deterministic resolve method.
    - Prevent extraneous server, date and content-type headers in proxy responses.
  * Deprecations and Removals:
    - twisted.internet.error.PotentialZombieWarning is now deprecated.
    - twisted.test.time_helpers is now deprecated.
    - The deprecated connectUDP method of IReactorUDP has now been removed.
    - twisted.trial.unittest.TestCase now ignores the previously deprecated
      setUpClass and tearDownClass methods.
- Renamed to python-Twisted from python-twisted
- remove unreferenced patch
- do not package executable docs
- Standardized "Authors:" format in descriptions of python-twisted.spec
- Update to 10.2.0:
  - Huge ChangeLog, please check NEWS file or
    http://twistedmatrix.com/trac/browser/tags/releases/twisted-10.2.0/NEWS?format=raw.
- Update to 10.1.0:
  - Huge ChangeLog, please check NEWS file.
- Update to 10.0.0;
- Spec file cleaned with spec-cleaner.
- merged a patch that was not included in 8.2.0 and contains
  more python 2.6 compatibility fixes
- update to 8.2.0
  * python 2.6 compatible changes
  * many bugfixes and minor features in all submodules
- remerged all individual subpackages into one single package
  * reasons: easier maintenance, upstream releases the whole thing
    in sync, no additional dependencies for main package, negligible
    impact on package size
- update to 8.0.1 (2.6.0 actually)
  * new versioning scheme, 8.0.1 is second release in 2008
  * massively improved IOCP reactor
  * improvements to Trial
  * huge number of minor features and bugfixes
- update to 2.5.0
  * support for Asynchronous Messaging Protocol
  * epoll-based reactor
  * twistd now accepts subcommands instead of 'mktap'
  * support for python2.5
  * support for inline callbacks (via 'yield')
  * many bugfixes and minor features
- fixed ComponentDeprecationWarnings in twisted's class Credentials
- update to 2.4.0
  - no longer works with py 2.2
  - many improvements on Trial
  - backwards compatibility layers disabled by default
  - improved and extended API documentation
  - new protocols
  - many bugfixes
- fixed some 64bit problems from PEP353 change
- removed nonsensical "???" from one of the testfiles
- updated to reflect python changes due to #149809
- converted neededforbuild to BuildRequires
- update to 2.1.0
- update to 2.0.1
- update to 2.0.0
- fix permissions
- spec file cleanup
- Initial creation of package python-twisted.

OBS-URL: https://build.opensuse.org/request/show/910780
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=47
2021-08-12 07:01:01 +00:00
9d31ec5469 Accepting request 909678 from home:mcalabkova:branches:devel:languages:python
- typing_extensions is now required

OBS-URL: https://build.opensuse.org/request/show/909678
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=108
2021-08-02 07:03:49 +00:00
5f273cc925 - Update to 21.7.0:
- Python 3.10 beta is now a supported platform and should be ready for
    the final 3.10 release.
  - twisted.web.template.renderElement() now accepts any IRequest
    implementer instead of only twisted.web.server.Request. Add type
    hints to twisted.web.template. (#10184)
  - Type hinting was added to twisted.internet.defer, making this the
    first release  of Twisted where you might reasonably be able to use
    mypy without your own custom stub files. (#10017)
- Patch incremental-21.patch removed, because included in the
  upstream tarball.
    - 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. (#9583)
    - 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. (#9719, #9826)
    - 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. (#9825)
    - trial now allows the @unittest.skipIf decorator to specify that an
      entire test class should be skipped. (#9829)
    - The twisted.python.deprecate.deprecatedKeywordParameter decorator
      can be used to mark a keyword paramater of a function or method as
      deprecated. (#9844)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=107
2021-07-31 06:18:53 +00:00
c98a5466d5 Accepting request 893684 from devel:languages:python
- add incremental-21.patch: support newer incremental versions

OBS-URL: https://build.opensuse.org/request/show/893684
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=46
2021-05-19 15:49:00 +00:00
6aa0d6dbb3 - add incremental-21.patch: support newer incremental versions
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=105
2021-05-17 10:15:27 +00:00
e1e7100f59 Accepting request 878146 from devel:languages:python
- Update to 21.2.0:
  * Features
    + 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. (#9583)
    + 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. (#9719, #9826)
    + 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. (#9825)
    + trial now allows the @unittest.skipIf decorator to specify that an entire test class should be skipped. (#9829)
    + The twisted.python.deprecate.deprecatedKeywordParameter decorator can be used to mark a keyword paramater of a function or method as deprecated. (#9844)
    + Projects using Twisted can now perform type checking against a Twisted
    + installation, for example using mypy. (#9908)
    + twisted.python.util.InsensitiveDict now fully implements MutableMapping. (#9919)
    + Python 3.8 is now tested and supported. (#9955)
    + Support a coroutine function in twisted.internet.task.react (#9974)
    + PyPy 3.7 is now tested and supported. (#10093)
  * Bugfixes
    + twisted.web.twcgi.CGIProcessProtocol.processEnded(...) now handles an already-finished request, for example when request.connectionLost(...) was called previously. (#9468)
    + 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. (#9509)
    + Fixed serialization of timedelta, date, and time objects in twisted.spread. (#9716)
    + 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. (#9766)
    + twisted.internet.process.registerReapProcessHandler and ._BaseProcess.reapProcess will no longer raise a TypeError when processing a None PID (#9775)
    + INotify will close its file descriptor if a directory is automatically removed by twisted from the watchlist because it's deleted, avoiding orphaned filedescriptors. (#9777)
    + DelayedCall.reset() is now working properly with asyncioreactor (#9780)
    + AsyncioSelectorReactor.seconds() now correctly returns an epoch time. (#9787)
    + 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(). (#9849)
    + The Gtk3 reactor now runs on Wayland-only sessions (#9904)
    + Descriptive error messages from twisted.internet.error are now present when running with 'python -OO'. (#9918)
    + Comparator methods such as eq() now always return NotImplemented for uncomparable types. (#9919)
    + 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. (#10098)
- Drop patches no-pygtkcompat.patch, python-38-hmac-digestmod.patch,
  python-38-no-cgi-parseqs.patch, twisted-pr1369-remove-pyopenssl-npn.patch,
  twisted-pr1487-increase-ffdh-keysize.patch and
  test-mktime-invalid-tm_isdst.patch as they have been merged.
- Refresh other patches.
- Add no-cython_test_exception_raiser.patch to avoid another dependency.
- Update URL and make use of sitelib, not sitearch macros

OBS-URL: https://build.opensuse.org/request/show/878146
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=45
2021-03-12 12:30:22 +00:00
69076f58ad Correct changes and drop unused patch
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=103
2021-03-10 10:17:23 +00:00
a3830f326e - Update to 21.2.0:
* Features
    + 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. (#9583)
    + 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. (#9719, #9826)
    + 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. (#9825)
    + trial now allows the @unittest.skipIf decorator to specify that an entire test class should be skipped. (#9829)
    + The twisted.python.deprecate.deprecatedKeywordParameter decorator can be used to mark a keyword paramater of a function or method as deprecated. (#9844)
    + Projects using Twisted can now perform type checking against a Twisted
    + installation, for example using mypy. (#9908)
    + twisted.python.util.InsensitiveDict now fully implements MutableMapping. (#9919)
    + Python 3.8 is now tested and supported. (#9955)
    + Support a coroutine function in twisted.internet.task.react (#9974)
    + PyPy 3.7 is now tested and supported. (#10093)
  * Bugfixes
    + twisted.web.twcgi.CGIProcessProtocol.processEnded(...) now handles an already-finished request, for example when request.connectionLost(...) was called previously. (#9468)
    + 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. (#9509)
    + Fixed serialization of timedelta, date, and time objects in twisted.spread. (#9716)
    + 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. (#9766)
    + twisted.internet.process.registerReapProcessHandler and ._BaseProcess.reapProcess will no longer raise a TypeError when processing a None PID (#9775)
    + INotify will close its file descriptor if a directory is automatically removed by twisted from the watchlist because it's deleted, avoiding orphaned filedescriptors. (#9777)
    + DelayedCall.reset() is now working properly with asyncioreactor (#9780)
    + AsyncioSelectorReactor.seconds() now correctly returns an epoch time. (#9787)
    + 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(). (#9849)
    + The Gtk3 reactor now runs on Wayland-only sessions (#9904)
    + Descriptive error messages from twisted.internet.error are now present when running with 'python -OO'. (#9918)
    + Comparator methods such as eq() now always return NotImplemented for uncomparable types. (#9919)
    + 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. (#10098)
- Drop patches no-pygtkcompat.patch, python-38-hmac-digestmod.patch,
  python-38-no-cgi-parseqs.patch, twisted-pr1369-remove-pyopenssl-npn.patch &
  twisted-pr1487-increase-ffdh-keysize.patch, they have been merged.
- Refresh other patches.
- Add no-cython_test_exception_raiser.patch to avoid another dependency.
- Update URL and make use of sitelib, not sitearch macros

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=102
2021-03-10 10:15:47 +00:00
Richard Brown
1dc7dbd3b8 Accepting request 874682 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/874682
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=44
2021-03-02 13:43:08 +00:00
564d501398 Accepting request 874681 from home:mcepl:branches:python36
- Add 1521_delegate_parseqs_stdlib_bpo42967.patch to overcome
  effects of bpo#42967, which forbade mixing amps and semicolons
  in query strings as separators
  (https://twistedmatrix.com/trac/ticket/10096).

OBS-URL: https://build.opensuse.org/request/show/874681
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=100
2021-02-23 18:47:30 +00:00
4c78c36c35 Accepting request 871383 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/871383
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=43
2021-02-17 17:09:27 +00:00
d82dbf52df Accepting request 871243 from home:pmonrealgonzalez:branches:devel:languages:python
To be evaluated in Staging:O, it fixes the build there.

OBS-URL: https://build.opensuse.org/request/show/871243
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=98
2021-02-12 09:42:36 +00:00
06829fed61 Accepting request 854874 from devel:languages:python
- Add twisted-pr1369-remove-pyopenssl-npn.patch to support 
  pyOpenSSL 20
- Add twisted-pr1487-increase-ffdh-keysize.patch to support
  crpytography 3.3
- Fix the update-alternatives setup
  * manpages were cloned but never registerd with u-a
  * install alternatives as master and slave links now

OBS-URL: https://build.opensuse.org/request/show/854874
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=42
2020-12-12 19:29:47 +00:00
bbadbea3e9 Accepting request 854677 from home:bnavigator:branches:devel:languages:python
- Add twisted-pr1369-remove-pyopenssl-npn.patch to support 
  pyOpenSSL 20
- Add twisted-pr1487-increase-ffdh-keysize.patch to support
  crpytography 3.3
- Fix the update-alternatives setup
  * manpages were cloned but never registerd with u-a
  * install alternatives as master and slave links now

OBS-URL: https://build.opensuse.org/request/show/854677
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=96
2020-12-11 07:54:16 +00:00
0ece73a231 Accepting request 841601 from devel:languages:python
- Add no-test_successResultOfWithFailureHasTraceback.patch to
  skip sted.conch.test.test_keys.KeyTests.test_fromOpenSSH,
  which fails. Upstream suggests
  https://twistedmatrix.com/trac/ticket/9665, but it has never
  been confirmed, even less fixed.

OBS-URL: https://build.opensuse.org/request/show/841601
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=41
2020-10-29 08:47:56 +00:00
8dc8e47895 Fix changes
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=94
2020-10-13 16:46:04 +00:00
43518d2944 - Add no-test_successResultOfWithFailureHasTraceback.patch to
skip sted.conch.test.test_keys.KeyTests.test_fromOpenSSH,
  which fails. Upstream suggests
  https://twistedmatrix.com/trac/ticket/9665, but it has never
  been confirmed, even less fixed.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=93
2020-10-12 21:16:08 +00:00
4f6d4c1fc1 Accepting request 810158 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/810158
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=40
2020-06-05 17:59:24 +00:00
Tomáš Chvátal
21fdee6018 Accepting request 810151 from home:mcalabkova:branches:devel:languages:python
- Update to 20.3.0
  * drop Python 2
  * twisted.news is deprecated.
  * twisted.conch.ssh now supports the curve25519-sha256 key exchange 
    algorithm (requires OpenSSL >= 1.1.0).
  * many bugfixes and other miscelaneous fixes
- Fixed update-alternatives mechanism
- Added true-binary.patch
- Dropped python-38-xml-namespace.patch
- Reapplied python-38-hmac-digestmod.patch

OBS-URL: https://build.opensuse.org/request/show/810151
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=91
2020-05-29 09:06:37 +00:00
1bccc69403 Accepting request 806989 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/806989
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=39
2020-05-28 07:07:32 +00:00
Tomáš Chvátal
221d5e0adf Accepting request 806979 from home:pgajdos:python
- %python3_only -> %python_alternative

OBS-URL: https://build.opensuse.org/request/show/806979
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=89
2020-05-18 14:20:53 +00:00
3c351f5ba7 Accepting request 769860 from devel:languages:python
- Update to 19.10.0 bsc#1162424:
- Remove patch 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch
- Remove patch PR-1147.patch

- Add PR-1147.patch (bsc#1138461, CVE-2019-12855)
  In words.protocols.jabber.xmlstream in Twisted through 19.2.1,
  XMPP support did not verify certificates when used with TLS,
  allowing an attacker to MITM connections.

- Add 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch
  (bsc#1137825, CVE-2019-12387)
  Prevent CRLF injections

OBS-URL: https://build.opensuse.org/request/show/769860
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=38
2020-02-06 12:19:06 +00:00
Tomáš Chvátal
59f03a78cc Changelog sync with SLE
- Update to 19.10.0 bsc#1162424:
- Remove patch 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch
- Remove patch PR-1147.patch

- Add PR-1147.patch (bsc#1138461, CVE-2019-12855)
  In words.protocols.jabber.xmlstream in Twisted through 19.2.1,
  XMPP support did not verify certificates when used with TLS,
  allowing an attacker to MITM connections.

- Add 0001-Prevent-CRLF-injections-described-in-CVE-2019-12387.patch
  (bsc#1137825, CVE-2019-12387)
  Prevent CRLF injections

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=87
2020-02-04 07:19:22 +00:00
18ecd8e9d1 Accepting request 753855 from devel:languages:python
- Update to 19.10.0:
  * twisted.trial.successResultOf, twisted.trial.failureResultOf, and twisted.trial.assertNoResult accept coroutines as well as Deferreds. (#9006)
  * Fixed circular import in twisted.trial.reporter, introduced in Twisted 16.0.0. (#8267)
  * The POP3 server implemented by twisted.mail.pop3 now accepts passwords that contain spaces. (#9100)
  * Incoming HTTP/2 connections will now not time out if they persist for longer than one minute. (#9653)
  * twisted.conch.ssh.keys now correctly writes the "iqmp" parameter in serialized RSA private keys as q^-1 mod p rather than p^-1 mod q. (#9681)
  * twisted.web.server.Request will now use twisted.web.server.Site.getContentFile, if it exists, to get a file into which to write request content. If getContentFile is not provided by the site, it will fall back to the previous behavior of using io.BytesIO for small requests and tempfile.TemporaryFile for large ones. (#9655)
  * twisted.web.client.FileBodyProducer will now stop producing when the Deferred returned by FileBodyProducer.startProducing is cancelled. (#9547)
  * The HTTP/2 server implementation now enforces TCP flow control on control frame messages and times out clients that send invalid data without reading responses. This closes CVE-2019-9512 (Ping Flood), CVE-2019-9514 (Reset Flood), and CVE-2019-9515 (Settings Flood). Thanks to Jonathan Looney and Piotr Sikora. (#9694)
- Add python-38-xml-namespace.patch to fix dictionary mutation under Python 3.8
- Add python-38-hmac-digestmod.patch to add digestmod parameter where required
- Add python-38-no-cgi-parseqs.patch to no longer import parse_qs from cgi

OBS-URL: https://build.opensuse.org/request/show/753855
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=37
2019-12-11 11:09:24 +00:00
96159d8722 - Update to 19.10.0:
* twisted.trial.successResultOf, twisted.trial.failureResultOf, and twisted.trial.assertNoResult accept coroutines as well as Deferreds. (#9006)
  * Fixed circular import in twisted.trial.reporter, introduced in Twisted 16.0.0. (#8267)
  * The POP3 server implemented by twisted.mail.pop3 now accepts passwords that contain spaces. (#9100)
  * Incoming HTTP/2 connections will now not time out if they persist for longer than one minute. (#9653)
  * twisted.conch.ssh.keys now correctly writes the "iqmp" parameter in serialized RSA private keys as q^-1 mod p rather than p^-1 mod q. (#9681)
  * twisted.web.server.Request will now use twisted.web.server.Site.getContentFile, if it exists, to get a file into which to write request content. If getContentFile is not provided by the site, it will fall back to the previous behavior of using io.BytesIO for small requests and tempfile.TemporaryFile for large ones. (#9655)
  * twisted.web.client.FileBodyProducer will now stop producing when the Deferred returned by FileBodyProducer.startProducing is cancelled. (#9547)
  * The HTTP/2 server implementation now enforces TCP flow control on control frame messages and times out clients that send invalid data without reading responses. This closes CVE-2019-9512 (Ping Flood), CVE-2019-9514 (Reset Flood), and CVE-2019-9515 (Settings Flood). Thanks to Jonathan Looney and Piotr Sikora. (#9694)
- Add python-38-xml-namespace.patch to fix dictionary mutation under Python 3.8
- Add python-38-hmac-digestmod.patch to add digestmod parameter where required
- Add python-38-no-cgi-parseqs.patch to no longer import parse_qs from cgi

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=85
2019-12-04 05:06:51 +00:00
e0cdb4c175 Accepting request 731161 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/731161
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=36
2019-09-23 10:17:24 +00:00
Tomáš Chvátal
4b4c81e79c Accepting request 730984 from home:jayvdb:py3only
- Remove mailmail when only building Python 3 flavour

OBS-URL: https://build.opensuse.org/request/show/730984
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=83
2019-09-16 07:36:25 +00:00
Tomáš Chvátal
2001e758bb - Update to 19.7.0:
* The callable argument to twisted.internet.task.deferLater() is no longer required. (#9577)
  * twisted.internet.utils.getProcessOutputAndValue now accepts stdinBytes to write to the child process's standard input. (#9607)
  * Add new twisted.logger.capturedLogs context manager for capturing observed log events in tests. (#9617)
  * twisted.internet.base.PluggableResolverMixin, which implements the pluggable resolver interfaces for easier re-use in other reactors, has been factored out of ReactorBase. (#9632)
  * The PyPI page for Twisted has been enhanced to include more information and useful links. (#9648)
- Refresh patch:
  * skip_MultiCast.patch
- Remove merged patch hyperlink.patch

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=82
2019-09-13 14:37:19 +00:00
8154c9a333 Accepting request 709323 from devel:languages:python
- update to 19.2.1 (bsc#1137825, CVE-2019-12387):
  * Prevent CRLF injections described in CVE-2019-12387

- Update to 19.2.0:
  * twisted.internet.ssl.CertificateOptions now uses 32 random bytes instead of an MD5 hash for the ssl session identifier context. (#9463)
  * DeferredLock and DeferredSemaphore can be used as asynchronous context managers on Python 3.5+. (#9546)
  * t.i.b.BaseConnector has custom __repr__ (#9548)
  * twisted.internet.ssl.optionsForClientTLS now supports validating IP addresses from the certificate subjectAltName (#9585)
  * Twisted's minimum Cryptography requirement is now 2.5. (#9592)
  * twisted.conch.ssh.keys can now read private keys in the new "openssh-key-v1" format, introduced in OpenSSH 6.5 and made the default in OpenSSH 7.8. (#9515)
  * twisted.web.client.HostnameCachingHTTPSPolicy was added as a new contextFactory option. The policy caches a specified number of twisted.internet.interfaces.IOpenSSLClientConnectionCreator instances to to avoid the cost of instantiating a connection creator for multiple requests to the same host. (#9138)
- Remove merged patches:
  * openssl-errormsg.aptch
  * openssl111.patch
- Add patch to tests for new hyperlink:
  * hyperlink.patch

OBS-URL: https://build.opensuse.org/request/show/709323
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=35
2019-06-18 12:49:45 +00:00
19851b99d6 - update to 19.2.1 (bsc#1137825, CVE-2019-12387):
* Prevent CRLF injections described in CVE-2019-12387

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=80
2019-06-12 06:10:22 +00:00
Tomáš Chvátal
ecc1a16a2c - Update to 19.2.0:
* twisted.internet.ssl.CertificateOptions now uses 32 random bytes instead of an MD5 hash for the ssl session identifier context. (#9463)
  * DeferredLock and DeferredSemaphore can be used as asynchronous context managers on Python 3.5+. (#9546)
  * t.i.b.BaseConnector has custom __repr__ (#9548)
  * twisted.internet.ssl.optionsForClientTLS now supports validating IP addresses from the certificate subjectAltName (#9585)
  * Twisted's minimum Cryptography requirement is now 2.5. (#9592)
  * twisted.conch.ssh.keys can now read private keys in the new "openssh-key-v1" format, introduced in OpenSSH 6.5 and made the default in OpenSSH 7.8. (#9515)
  * twisted.web.client.HostnameCachingHTTPSPolicy was added as a new contextFactory option. The policy caches a specified number of twisted.internet.interfaces.IOpenSSLClientConnectionCreator instances to to avoid the cost of instantiating a connection creator for multiple requests to the same host. (#9138)
- Remove merged patches:
  * openssl-errormsg.aptch
  * openssl111.patch
- Add patch to tests for new hyperlink:
  * hyperlink.patch

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=79
2019-05-22 10:39:29 +00:00
Stephan Kulow
e141d6ae22 Accepting request 677095 from devel:languages:python
- Add another patch for openssl 1.1.1 (from upstream git):
  * openssl-errormsg.aptch

OBS-URL: https://build.opensuse.org/request/show/677095
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=34
2019-02-28 20:37:25 +00:00
Tomáš Chvátal
9823a3eb00 - Add another patch for openssl 1.1.1 (from upstream git):
* openssl-errormsg.aptch

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=77
2019-02-18 11:34:52 +00:00
Stephan Kulow
a154c9f860 Accepting request 668541 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/668541
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=33
2019-02-02 20:42:56 +00:00
Tomáš Chvátal
5fd5c11faa Accepting request 668397 from home:Andreas_Schwab:glibc:rebuild
- test-mktime-invalid-tm_isdst.patch: don't pass invalid tm_isdst value to
  mktime (see also bpo-15750)

OBS-URL: https://build.opensuse.org/request/show/668397
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=75
2019-01-25 08:46:04 +00:00
8990a596f8 Accepting request 647311 from devel:languages:python
- Add no-pygtkcompat.patch to avoid dependency on Gtk (boo#1110669)

OBS-URL: https://build.opensuse.org/request/show/647311
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=32
2018-11-14 13:40:58 +00:00
b7d7a43dbb Add no-pygtkcompat.patch to avoid dependency on Gtk (boo#1110669)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=73
2018-11-08 11:45:37 +00:00
bac4c091a8 Accepting request 645890 from devel:languages:python
- Version update to 18.9.0:
  * Fixes for the 3.7 python
- Remove merged python37.patch
- Add patch openssl111.patch which fixes tests with new pyOpenssl
  * Asserts changed behaviour

- Do not write bytecode stuff when running the tests

- Add BuildRequires python-tz, which seems to be required to test suite
  to pass.
- Also, add skip_MultiCast.patch to skip tests requiring full
  netrworking stack.

- Add missing Requires.

- Fix the dependencies to match up upstream setup.py
- Run the tests
- Add patch to build with python3.7:
  * python37.patch
- Add missing dependency on pyamcrest
- Remove unused patch lp1102685.diff

OBS-URL: https://build.opensuse.org/request/show/645890
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=31
2018-11-06 13:00:50 +00:00
Tomáš Chvátal
42629d8d84 - Add patch openssl111.patch which fixes tests with new pyOpenssl
* Asserts changed behaviour

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=71
2018-11-01 11:11:24 +00:00
Tomáš Chvátal
fdda9c8fa5 - Version update to 18.9.0:
* Fixes for the 3.7 python
- Remove merged python37.patch

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=70
2018-11-01 09:34:46 +00:00
Tomáš Chvátal
ae49f901fc - Do not write bytecode stuff when running the tests
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=69
2018-10-22 08:57:29 +00:00
b96524c75c Just raise SkipTest exception and be done with it.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=68
2018-10-19 14:59:13 +00:00
9d268435a5 Just use plain unittest
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=67
2018-10-19 14:41:26 +00:00
3f583fbe50 Fix syntax error
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=66
2018-10-19 14:16:31 +00:00
32da409357 - Also, add skip_MultiCast.patch to skip tests requiring full
netrworking stack.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=65
2018-10-19 14:04:16 +00:00
83d0c8223e - Add BuildRequires python-tz, which seems to be required to test suite
to pass.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=64
2018-10-19 13:28:10 +00:00
Tomáš Chvátal
3c33fd9509 Accepting request 641730 from home:ecsos:branches:devel:languages:python
- Add missing Requires.

Have retragate test change.

OBS-URL: https://build.opensuse.org/request/show/641730
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=63
2018-10-13 06:23:40 +00:00
Tomáš Chvátal
185ddf5921 - Fix the dependencies to match up upstream setup.py
- Run the tests
- Add patch to build with python3.7:
  * python37.patch
- Add missing dependency on pyamcrest
- Remove unused patch lp1102685.diff

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=62
2018-10-11 09:01:36 +00:00
cffe065cef Accepting request 625119 from devel:languages:python
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/625119
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=30
2018-07-26 08:16:25 +00:00
09a91a91dc OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=60 2018-07-17 19:44:35 +00:00
b440eb886c - update to 18.7.0:
for full list of changes please see
  https://github.com/twisted/twisted/blob/twisted-18.7.0/NEWS.rst

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=59
2018-07-17 19:43:10 +00:00
7e489e6fbe Accepting request 612932 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/612932
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=29
2018-06-02 09:48:31 +00:00
Tomáš Chvátal
0c7226f9da Accepting request 612928 from home:iznogood:branches:devel:languages:python
- Add python-service_identity Recommends.

OBS-URL: https://build.opensuse.org/request/show/612928
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=57
2018-05-29 19:48:39 +00:00
7a014ded47 Accepting request 610492 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/610492
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=28
2018-05-19 13:39:10 +00:00
Tomáš Chvátal
be95f76a32 Accepting request 610470 from home:termim:branches:devel:languages:python
- update to 18.4.0
  For full list of changes please see:
  https://github.com/twisted/twisted/blob/twisted-18.4.0/NEWS.rst

OBS-URL: https://build.opensuse.org/request/show/610470
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=55
2018-05-18 18:08:31 +00:00
41623df018 Accepting request 540472 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/540472
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=27
2017-11-12 17:00:31 +00:00
297f220d11 Accepting request 540450 from home:mimi_vx:branches:devel:languages:python
- update to 17.9.0
  For full list of changes please see:
  https://github.com/twisted/twisted/blob/twisted-17.9.0/NEWS.rst
* mailman is only in python2 package

OBS-URL: https://build.opensuse.org/request/show/540450
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=53
2017-11-10 12:19:58 +00:00
07f8ca8532 Accepting request 507987 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/507987
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=26
2017-07-21 20:38:47 +00:00
b1d64ee86d Accepting request 507973 from home:tbechtold:branches:devel:languages:python
- Adjust Requires and BuildRequires
- Fix rpmlint warnings

OBS-URL: https://build.opensuse.org/request/show/507973
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=51
2017-07-04 06:34:13 +00:00
Jan Matejek
8b40275d14 - remove alternatives altogether in favor of versioned executables
- clean up spec file
- update to 17.5.0
  * too many changes to list, see full changelog in NEWS.rst

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=50
2017-06-23 15:17:10 +00:00
Jan Matejek
e91daea8df Accepting request 504770 from home:okurz:matrix-synapse
Convert to singlespec

OBS-URL: https://build.opensuse.org/request/show/504770
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=49
2017-06-20 12:25:48 +00:00
562a50f875 Accepting request 433094 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/433094
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=25
2016-10-06 10:29:50 +00:00
04df3bec3c Accepting request 430659 from home:apersaud:branches:devel:languages:python
Fix bug bnc #1001523 (trial was used as update-alternative master here, but in dlp3 twistd is used).

OBS-URL: https://build.opensuse.org/request/show/430659
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=47
2016-10-04 10:59:51 +00:00
1acf6b0f35 Accepting request 424620 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/424620
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=24
2016-09-10 22:51:41 +00:00
Denisart Benjamin
df4aab7d71 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=46 2016-09-03 18:24:21 +00:00
Denisart Benjamin
75261dc1d0 Accepting request 424525 from home:termim:branches:devel:languages:python
update to 16.4.0

OBS-URL: https://build.opensuse.org/request/show/424525
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=45
2016-09-03 18:16:23 +00:00
a7c1e918e9 Accepting request 347147 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/347147
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=23
2015-12-16 16:41:30 +00:00
Todd R
eeeea3483f Accepting request 347088 from home:termim:branches:devel:languages:python
update to 15.5.0

OBS-URL: https://build.opensuse.org/request/show/347088
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=43
2015-12-02 10:40:42 +00:00
05140adf03 Accepting request 338132 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/338132
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=22
2015-10-19 20:47:28 +00:00
Todd R
7e349bdbcb Accepting request 338131 from home:TheBlackCat:branches:devel:languages:python
Make "trial" the master file for update-alternatives, since it is the only one that supports python 3 so far.

OBS-URL: https://build.opensuse.org/request/show/338131
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=41
2015-10-12 12:04:30 +00:00
Todd R
7cfbde7a5e Accepting request 338122 from home:TheBlackCat:branches:devel:languages:python
Implement update-alternatives in preparation for python 3 version

OBS-URL: https://build.opensuse.org/request/show/338122
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=40
2015-10-12 11:31:59 +00:00
Stephan Kulow
47a859fb68 Accepting request 331079 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/331079
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=21
2015-09-24 05:15:39 +00:00
Jan Matejek
36635c2f3e Accepting request 330713 from home:termim:branches:devel:languages:python
Update to 15.4.0

OBS-URL: https://build.opensuse.org/request/show/330713
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=38
2015-09-15 15:26:46 +00:00
9d16fdf1f8 Accepting request 322366 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/322366
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=20
2015-08-17 13:34:20 +00:00
Todd R
b4989981f4 Accepting request 321806 from home:seife:OpenStack:Master
change dep from python-asn1 to python-pyasn1 (renamed long ago)

OBS-URL: https://build.opensuse.org/request/show/321806
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=36
2015-08-13 11:20:50 +00:00
de2a533b0f Accepting request 310531 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/310531
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=19
2015-06-08 06:28:00 +00:00
Todd R
67402d5e41 Accepting request 310310 from home:termim:branches:devel:languages:python
Wrong dependency rpm name, should be python-pycrypto

OBS-URL: https://build.opensuse.org/request/show/310310
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=34
2015-06-05 13:08:09 +00:00
Denisart Benjamin
90bf5ed4a8 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=33 2015-06-02 15:25:29 +00:00
Denisart Benjamin
fb229b192b OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=32 2015-06-02 15:25:20 +00:00
Denisart Benjamin
9f84a76973 Accepting request 309113 from home:termim:branches:devel:languages:python
Update to 15.2.1

OBS-URL: https://build.opensuse.org/request/show/309113
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=31
2015-06-02 15:24:42 +00:00
Stephan Kulow
6202f92ea9 Accepting request 305769 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/305769
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=18
2015-05-10 08:44:18 +00:00
Jan Matejek
7a55dad324 Accepting request 305768 from home:matejcik:branches:devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/305768
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=29
2015-05-07 12:58:40 +00:00
1f1420efb2 Accepting request 290852 from devel:languages:python
Update

OBS-URL: https://build.opensuse.org/request/show/290852
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=17
2015-03-18 11:59:51 +00:00
Denisart Benjamin
3435ad96e5 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=28 2015-03-15 15:17:53 +00:00
Denisart Benjamin
a675be96f6 Accepting request 290778 from home:matwey:branches:devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/290778
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=27
2015-03-15 15:16:38 +00:00
Stephan Kulow
6954116307 Accepting request 253695 from devel:languages:python
1

OBS-URL: https://build.opensuse.org/request/show/253695
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=16
2014-10-14 06:58:57 +00:00
Denisart Benjamin
1715acb9d9 Accepting request 253694 from home:posophe:branches:devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/253694
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=25
2014-10-02 18:38:59 +00:00
Denisart Benjamin
c057da2632 Accepting request 250169 from home:termim:branches:devel:languages:python
update to 14.0.2

OBS-URL: https://build.opensuse.org/request/show/250169
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=24
2014-09-29 10:39:35 +00:00
Sascha Peilicke
917e81a991 Accepting request 234240 from home:frispete:python
Dear Sascha,

BTW, I've fixed the line breaks in your last changelog entry.

- add dependency python-service_identity for testing purposes

- Update to version 14.0.0:
  + too many changes to list here: check NEWS file

  + Twisted now includes a HostnameEndpoint implementation which uses IPv4 and
   IPv6 in parallel, speeding up the connection by using whichever connects first
   (the 'Happy Eyeballs'/RFC 6555 algorithm). (#4859)
  + Improved support for Cancellable Deferreds by kaizhang, our GSoC student.
    (#4320, #6532, #6572, #6639)
  + Improved Twisted.Mail documentation by shira, our Outreach Program for
    Women intern. (#6649, #6652)
  + twistd now waits for the application to start successfully before exiting
    after daemonization. (#823)
  + SSL server endpoint string descriptions now support the specification of
    chain certificates. (#6499)

OBS-URL: https://build.opensuse.org/request/show/234240
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=23
2014-06-02 09:01:26 +00:00
Stephan Kulow
967a1dadfa Accepting request 210312 from devel:languages:python
- Update to version 13.2.0:
  + Twisted now includes a HostnameEndpoint implementation which uses IPv4 and IPv6 in parallel, speeding up the connection by using whichever connects first (the 'Happy Eyeballs'/RFC 6555 algorithm). (#4859)
  + Improved support for Cancellable Deferreds by kaizhang, our GSoC student. (#4320, #6532, #6572, #6639)
  + Improved Twisted.Mail documentation by shira, our Outreach Program for Women intern. (#6649, #6652)
  + twistd now waits for the application to start successfully before exiting after daemonization. (#823)
  + SSL server endpoint string descriptions now support the specification of chain certificates. (#6499)
  + Over 70 closed tickets since 13.1.0.

OBS-URL: https://build.opensuse.org/request/show/210312
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=14
2013-12-10 16:45:53 +00:00
Sascha Peilicke
41759029e8 - Update to version 13.2.0:
+ Twisted now includes a HostnameEndpoint implementation which uses IPv4 and IPv6 in parallel, speeding up the connection by using whichever connects first (the 'Happy Eyeballs'/RFC 6555 algorithm). (#4859)
  + Improved support for Cancellable Deferreds by kaizhang, our GSoC student. (#4320, #6532, #6572, #6639)
  + Improved Twisted.Mail documentation by shira, our Outreach Program for Women intern. (#6649, #6652)
  + twistd now waits for the application to start successfully before exiting after daemonization. (#823)
  + SSL server endpoint string descriptions now support the specification of chain certificates. (#6499)
  + Over 70 closed tickets since 13.1.0.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=21
2013-12-10 09:30:30 +00:00
Stephan Kulow
ab28a8b4d8 Accepting request 209652 from devel:languages:python
- Add lp1102685.diff (bnc#853545): pygobject compatibility

OBS-URL: https://build.opensuse.org/request/show/209652
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=13
2013-12-08 18:49:13 +00:00
Sascha Peilicke
dd8b286b17 - Add lp1102685.diff (bnc#853545): pygobject compatibility
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=19
2013-12-06 15:23:06 +00:00
Stephan Kulow
72d867b0fd Accepting request 200664 from devel:languages:python
update (forwarded request 200607 from posophe)

OBS-URL: https://build.opensuse.org/request/show/200664
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=12
2013-09-26 18:00:29 +00:00
Sascha Peilicke
c5a02124e1 Accepting request 200607 from home:posophe:branches:devel:languages:python
update

OBS-URL: https://build.opensuse.org/request/show/200607
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=17
2013-09-26 07:52:49 +00:00
Stephan Kulow
a362160062 Accepting request 163976 from devel:languages:python
Update (forwarded request 163974 from posophe)

OBS-URL: https://build.opensuse.org/request/show/163976
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=10
2013-04-15 09:17:19 +00:00
Todd R
6e8b3e999d Accepting request 163974 from home:posophe:branches:devel:languages:python
Update

OBS-URL: https://build.opensuse.org/request/show/163974
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=15
2013-04-14 15:22:44 +00:00
Stephan Kulow
4275e370a8 Accepting request 148402 from devel:languages:python
update to 12.3.0 (forwarded request 148133 from posophe)

OBS-URL: https://build.opensuse.org/request/show/148402
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=8
2013-01-14 21:26:29 +00:00
Sascha Peilicke
b343c5d44d Accepting request 148133 from home:posophe:branches:devel:languages:python
update to 12.3.0

OBS-URL: https://build.opensuse.org/request/show/148133
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=13
2013-01-14 11:11:51 +00:00
Stephan Kulow
0d22cbbc26 Accepting request 136075 from devel:languages:python
Update to latest stable version 12.2.0 (forwarded request 136017 from msuman)

OBS-URL: https://build.opensuse.org/request/show/136075
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=7
2012-09-27 08:27:06 +00:00
Ismail Dönmez
9de3f8a0cf Accepting request 136017 from home:msuman:branches:devel:languages:python
Update to latest stable version 12.2.0

OBS-URL: https://build.opensuse.org/request/show/136017
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=11
2012-09-26 11:56:41 +00:00
Stephan Kulow
3bd231d2b7 Accepting request 106679 from devel:languages:python
- Changes file cleanup

- Update to version 0.12
  * Features
    - The interface argument to IReactorTCP.listenTCP may now be an IPv6
      address literal, allowing the creation of IPv6 TCP servers.
    - twisted.python.constants.Names now provides a way to define
      collections of named constants, similar to the "enum type" feature
      of C or Java.
    - twisted.python.constants.Values now provides a way to define
      collections of named constants with arbitrary values.
  * Bugfixes
    - Fixed an obscure case where connectionLost wasn't called on the
      protocol when using half-close.
    - UDP ports handle socket errors better on Windows.
    - When idle, the gtk2 and glib2 reactors no longer wake up 10 times a
      second.
    - Prevent a rare situation involving TLS transports, where a producer
      may be erroneously left unpaused.
    - twisted.internet.iocpreactor.iocpsupport now has fewer 64-bit
      compile warnings.
    - The GTK2 reactor is now more responsive on Windows.
    - TLS transports now correctly handle producer registration after the
      connection has been lost.
    - twisted.protocols.htb.Bucket now empties properly with a non-zero
      drip rate.
    - IReactorSSL and ITCPTransport.startTLS now synchronously propagate
      errors from the getContext method of context factories, instead of
      being capturing them and logging them as unhandled.
  * Improved Documentation

OBS-URL: https://build.opensuse.org/request/show/106679
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=5
2012-02-24 05:53:57 +00:00
Sascha Peilicke
3d2a7b826a Fix version number in changes file
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=9
2012-02-23 14:17:00 +00:00
Sascha Peilicke
9c48ba98de - Changes file cleanup
* Features
    - The interface argument to IReactorTCP.listenTCP may now be an IPv6
      address literal, allowing the creation of IPv6 TCP servers.
    - twisted.python.constants.Names now provides a way to define
      collections of named constants, similar to the "enum type" feature
      of C or Java.
    - twisted.python.constants.Values now provides a way to define
      collections of named constants with arbitrary values.
  * Bugfixes
    - Fixed an obscure case where connectionLost wasn't called on the
      protocol when using half-close.
    - UDP ports handle socket errors better on Windows.
    - When idle, the gtk2 and glib2 reactors no longer wake up 10 times a
      second.
    - Prevent a rare situation involving TLS transports, where a producer
      may be erroneously left unpaused.
    - twisted.internet.iocpreactor.iocpsupport now has fewer 64-bit
      compile warnings.
    - The GTK2 reactor is now more responsive on Windows.
    - TLS transports now correctly handle producer registration after the
      connection has been lost.
    - twisted.protocols.htb.Bucket now empties properly with a non-zero
      drip rate.
    - IReactorSSL and ITCPTransport.startTLS now synchronously propagate
      errors from the getContext method of context factories, instead of
      being capturing them and logging them as unhandled.
  * Improved Documentation
    - The multicast documentation has been expanded.
    - twisted.internet.defer.Deferred now documents more return values.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=8
2012-02-20 11:21:59 +00:00
Sascha Peilicke
8bdd3978ca Accepting request 105894 from home:termim:branches:devel:languages:python
update to 12.0

OBS-URL: https://build.opensuse.org/request/show/105894
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=7
2012-02-20 11:19:22 +00:00
Sascha Peilicke
51711dda13 Accepting request 83934 from devel:languages:python
- Changed BuildRequires python-zopeinterface to python-zope.interface,
  it got renamed

- Changed Buildrequires 'python-serial' to 'python-pyserial'

OBS-URL: https://build.opensuse.org/request/show/83934
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=2
2011-09-26 08:13:36 +00:00
Sascha Peilicke
9676000c4a - Changed BuildRequires python-zopeinterface to python-zope.interface,
it got renamed

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=4
2011-09-20 14:37:09 +00:00
Lars Vogdt
41ad79ada5 Accepting request 80676 from devel:languages:python
Replaces python-twisted

OBS-URL: https://build.opensuse.org/request/show/80676
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Twisted?expand=0&rev=1
2011-09-12 21:42:47 +00:00
Sascha Peilicke
32a19c002c - Changed Buildrequires 'python-serial' to 'python-pyserial'
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=2
2011-09-06 15:37:52 +00:00
Sascha Peilicke
0045496d33 - Update to version 0.11:
Features:
  * The twistd man page now has a SIGNALS section.
  * reactor.spawnProcess now will not emit a PotentialZombieWarning when called
    before reactor.run, and there will be no potential for zombie processes in this case.
  * High-throughput applications based on Perspective Broker should now run
    noticably faster thanks to the use of a more efficient decoding function
    in Twisted Spread.
  * Documentation for trac-post-commit-hook functionality in svn-dev policy.
  * twisted.protocols.socks.SOCKSv4 now supports the SOCKSv4a protocol.
  * Trial can now output test results according to the subunit protocol, as
    long as Subunit is installed.
  * twisted.protocols.amp now provides a ListOf argument type which can be
    composed with some other argument types to create a zero or more element
    sequence of that type.
  * If returnValue is invoked outside of a function decorated with
    @inlineCallbacks, but causes a function thusly decorated to exit, a
    DeprecationWarning will be emitted explaining this potentially confusing
    behavior. In a future release, this will cause an exception.
  * twisted.python.logfile.BaseLogFile now has a reopen method allowing to
    use an external logrotate mechanism.
Bugfixes:
  * FTP.ftp_NLST now handles requests on invalid paths in a way consistent
    with RFC 959.
  * twisted.python.util.initgroups now calls the low-level C initgroups by
    default if available: the python version can create lots of I/O with certain
    authentication setup to retrieve all the necessary information.
  * startLogging now does nothing on subsequent invocations, thus fixing a
    terrible infinite recursion bug that's only on edge case.
  * Stringify non-string data to NetstringReceiver.sendString before

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Twisted?expand=0&rev=1
2011-09-02 13:12:34 +00:00
11 changed files with 280 additions and 410 deletions

View File

@@ -1,20 +1,19 @@
From df79d69adea5c819bb104861dccf1bbe25851644 Mon Sep 17 00:00:00 2001
From 7130df7ee21ebd93d7e15e7c4ef752b759f8e1c3 Mon Sep 17 00:00:00 2001
From: Thomas Grainger <tagrain@gmail.com>
Date: Sun, 21 Feb 2021 11:54:25 +0000
Subject: [PATCH 1/2] delegate to stdlib parse qs
Subject: [PATCH] delegate to stdlib parse qs
---
src/twisted/web/http.py | 26 +-------------------------
src/twisted/web/newsfragments/10096.bugfix | 1 +
src/twisted/web/server.py | 5 ++---
3 files changed, 4 insertions(+), 28 deletions(-)
src/twisted/web/http.py | 29 +---------------------
src/twisted/web/newsfragments/10096.bugfix | 1 +
2 files changed, 2 insertions(+), 28 deletions(-)
create mode 100644 src/twisted/web/newsfragments/10096.bugfix
Index: twisted-24.3.0/src/twisted/web/http.py
Index: twisted-24.10.0/src/twisted/web/http.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/web/http.py
+++ twisted-24.3.0/src/twisted/web/http.py
@@ -115,6 +115,7 @@ from urllib.parse import (
--- twisted-24.10.0.orig/src/twisted/web/http.py
+++ twisted-24.10.0/src/twisted/web/http.py
@@ -125,6 +125,7 @@ from urllib.parse import (
ParseResultBytes,
unquote_to_bytes as unquote,
urlparse as _urlparse,
@@ -22,7 +21,7 @@ Index: twisted-24.3.0/src/twisted/web/http.py
)
from zope.interface import Attribute, Interface, implementer, provider
@@ -288,34 +289,6 @@ def urlparse(url):
@@ -371,34 +372,6 @@ def urlparse(url):
return ParseResultBytes(scheme, netloc, path, params, query, fragment)
@@ -57,39 +56,9 @@ Index: twisted-24.3.0/src/twisted/web/http.py
def datetimeToString(msSinceEpoch=None):
"""
Convert seconds since epoch to HTTP datetime string.
Index: twisted-24.3.0/src/twisted/web/newsfragments/10096.bugfix
Index: twisted-24.10.0/src/twisted/web/newsfragments/10096.bugfix
===================================================================
--- /dev/null
+++ twisted-24.3.0/src/twisted/web/newsfragments/10096.bugfix
+++ twisted-24.10.0/src/twisted/web/newsfragments/10096.bugfix
@@ -0,0 +1 @@
+delegate to urllib.parse:parse_qs in twisted.web.http:parse_qs to avoid CVE-2021-23336 and the associated CI failures
Index: twisted-24.3.0/src/twisted/web/server.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/web/server.py
+++ twisted-24.3.0/src/twisted/web/server.py
@@ -21,7 +21,7 @@ import zlib
from binascii import hexlify
from html import escape
from typing import List, Optional
-from urllib.parse import quote as _quote
+from urllib.parse import quote as _quote, unquote_to_bytes as _unquote_to_bytes
from zope.interface import implementer
@@ -37,7 +37,6 @@ from twisted.python.deprecate import dep
from twisted.spread.pb import Copyable, ViewPoint
from twisted.web import http, iweb, resource, util
from twisted.web.error import UnsupportedMethod
-from twisted.web.http import unquote
NOT_DONE_YET = 1
@@ -210,7 +209,7 @@ class Request(Copyable, http.Request, co
# Resource Identification
self.prepath = []
- self.postpath = list(map(unquote, self.path[1:].split(b"/")))
+ self.postpath = [_unquote_to_bytes(v) for v in self.path[1:].split(b"/")]
# Short-circuit for requests whose path is '*'.
if self.path == b"*":

View File

@@ -1,242 +0,0 @@
Index: twisted-24.3.0/src/twisted/web/http.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/web/http.py
+++ twisted-24.3.0/src/twisted/web/http.py
@@ -1973,16 +1973,21 @@ class _ChunkedTransferDecoder:
@returns: C{False}, as there is either insufficient data to continue,
or no data remains.
"""
- if (
- self._receivedTrailerHeadersSize + len(self._buffer)
- > self._maxTrailerHeadersSize
- ):
- raise _MalformedChunkedDataError("Trailer headers data is too long.")
-
eolIndex = self._buffer.find(b"\r\n", self._start)
if eolIndex == -1:
# Still no end of network line marker found.
+ #
+ # Check if we've run up against the trailer size limit: if the next
+ # read contains the terminating CRLF then we'll have this many bytes
+ # of trailers (including the CRLFs).
+ minTrailerSize = (
+ self._receivedTrailerHeadersSize
+ + len(self._buffer)
+ + (1 if self._buffer.endswith(b"\r") else 2)
+ )
+ if minTrailerSize > self._maxTrailerHeadersSize:
+ raise _MalformedChunkedDataError("Trailer headers data is too long.")
# Continue processing more data.
return False
@@ -1992,6 +1997,8 @@ class _ChunkedTransferDecoder:
del self._buffer[0 : eolIndex + 2]
self._start = 0
self._receivedTrailerHeadersSize += eolIndex + 2
+ if self._receivedTrailerHeadersSize > self._maxTrailerHeadersSize:
+ raise _MalformedChunkedDataError("Trailer headers data is too long.")
return True
# eolIndex in this part of code is equal to 0
@@ -2315,8 +2322,8 @@ class HTTPChannel(basic.LineReceiver, po
self.__header = line
def _finishRequestBody(self, data):
- self.allContentReceived()
self._dataBuffer.append(data)
+ self.allContentReceived()
def _maybeChooseTransferDecoder(self, header, data):
"""
Index: twisted-24.3.0/src/twisted/web/newsfragments/12248.bugfix
===================================================================
--- /dev/null
+++ twisted-24.3.0/src/twisted/web/newsfragments/12248.bugfix
@@ -0,0 +1 @@
+The HTTP 1.0 and 1.1 server provided by twisted.web could process pipelined HTTP requests out-of-order, possibly resulting in information disclosure (CVE-2024-41671/GHSA-c8m8-j448-xjx7)
Index: twisted-24.3.0/src/twisted/web/test/test_http.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/web/test/test_http.py
+++ twisted-24.3.0/src/twisted/web/test/test_http.py
@@ -135,7 +135,7 @@ class DummyHTTPHandler(http.Request):
data = self.content.read()
length = self.getHeader(b"content-length")
if length is None:
- length = networkString(str(length))
+ length = str(length).encode()
request = b"'''\n" + length + b"\n" + data + b"'''\n"
self.setResponseCode(200)
self.setHeader(b"Request", self.uri)
@@ -563,17 +563,23 @@ class HTTP0_9Tests(HTTP1_0Tests):
class PipeliningBodyTests(unittest.TestCase, ResponseTestMixin):
"""
- Tests that multiple pipelined requests with bodies are correctly buffered.
+ Pipelined requests get buffered and executed in the order received,
+ not processed in parallel.
"""
requests = (
b"POST / HTTP/1.1\r\n"
b"Content-Length: 10\r\n"
b"\r\n"
- b"0123456789POST / HTTP/1.1\r\n"
- b"Content-Length: 10\r\n"
- b"\r\n"
b"0123456789"
+ # Chunk encoded request.
+ b"POST / HTTP/1.1\r\n"
+ b"Transfer-Encoding: chunked\r\n"
+ b"\r\n"
+ b"a\r\n"
+ b"0123456789\r\n"
+ b"0\r\n"
+ b"\r\n"
)
expectedResponses = [
@@ -590,14 +596,16 @@ class PipeliningBodyTests(unittest.TestC
b"Request: /",
b"Command: POST",
b"Version: HTTP/1.1",
- b"Content-Length: 21",
- b"'''\n10\n0123456789'''\n",
+ b"Content-Length: 23",
+ b"'''\nNone\n0123456789'''\n",
),
]
- def test_noPipelining(self):
+ def test_stepwiseTinyTube(self):
"""
- Test that pipelined requests get buffered, not processed in parallel.
+ Imitate a slow connection that delivers one byte at a time.
+ The request handler (L{DelayedHTTPHandler}) is puppeted to
+ step through the handling of each request.
"""
b = StringTransport()
a = http.HTTPChannel()
@@ -606,10 +614,9 @@ class PipeliningBodyTests(unittest.TestC
# one byte at a time, to stress it.
for byte in iterbytes(self.requests):
a.dataReceived(byte)
- value = b.value()
# So far only one request should have been dispatched.
- self.assertEqual(value, b"")
+ self.assertEqual(b.value(), b"")
self.assertEqual(1, len(a.requests))
# Now, process each request one at a time.
@@ -618,8 +625,95 @@ class PipeliningBodyTests(unittest.TestC
request = a.requests[0].original
request.delayedProcess()
- value = b.value()
- self.assertResponseEquals(value, self.expectedResponses)
+ self.assertResponseEquals(b.value(), self.expectedResponses)
+
+ def test_stepwiseDumpTruck(self):
+ """
+ Imitate a fast connection where several pipelined
+ requests arrive in a single read. The request handler
+ (L{DelayedHTTPHandler}) is puppeted to step through the
+ handling of each request.
+ """
+ b = StringTransport()
+ a = http.HTTPChannel()
+ a.requestFactory = DelayedHTTPHandlerProxy
+ a.makeConnection(b)
+
+ a.dataReceived(self.requests)
+
+ # So far only one request should have been dispatched.
+ self.assertEqual(b.value(), b"")
+ self.assertEqual(1, len(a.requests))
+
+ # Now, process each request one at a time.
+ while a.requests:
+ self.assertEqual(1, len(a.requests))
+ request = a.requests[0].original
+ request.delayedProcess()
+
+ self.assertResponseEquals(b.value(), self.expectedResponses)
+
+ def test_immediateTinyTube(self):
+ """
+ Imitate a slow connection that delivers one byte at a time.
+
+ (L{DummyHTTPHandler}) immediately responds, but no more
+ than one
+ """
+ b = StringTransport()
+ a = http.HTTPChannel()
+ a.requestFactory = DummyHTTPHandlerProxy # "sync"
+ a.makeConnection(b)
+
+ # one byte at a time, to stress it.
+ for byte in iterbytes(self.requests):
+ a.dataReceived(byte)
+ # There is never more than one request dispatched at a time:
+ self.assertLessEqual(len(a.requests), 1)
+
+ self.assertResponseEquals(b.value(), self.expectedResponses)
+
+ def test_immediateDumpTruck(self):
+ """
+ Imitate a fast connection where several pipelined
+ requests arrive in a single read. The request handler
+ (L{DummyHTTPHandler}) immediately responds.
+
+ This doesn't check the at-most-one pending request
+ invariant but exercises otherwise uncovered code paths.
+ See GHSA-c8m8-j448-xjx7.
+ """
+ b = StringTransport()
+ a = http.HTTPChannel()
+ a.requestFactory = DummyHTTPHandlerProxy
+ a.makeConnection(b)
+
+ # All bytes at once to ensure there's stuff to buffer.
+ a.dataReceived(self.requests)
+
+ self.assertResponseEquals(b.value(), self.expectedResponses)
+
+ def test_immediateABiggerTruck(self):
+ """
+ Imitate a fast connection where a so many pipelined
+ requests arrive in a single read that backpressure is indicated.
+ The request handler (L{DummyHTTPHandler}) immediately responds.
+
+ This doesn't check the at-most-one pending request
+ invariant but exercises otherwise uncovered code paths.
+ See GHSA-c8m8-j448-xjx7.
+
+ @see: L{http.HTTPChannel._optimisticEagerReadSize}
+ """
+ b = StringTransport()
+ a = http.HTTPChannel()
+ a.requestFactory = DummyHTTPHandlerProxy
+ a.makeConnection(b)
+
+ overLimitCount = a._optimisticEagerReadSize // len(self.requests) * 10
+ a.dataReceived(self.requests * overLimitCount)
+
+ self.assertResponseEquals(b.value(), self.expectedResponses * overLimitCount)
def test_pipeliningReadLimit(self):
"""
@@ -1522,7 +1616,11 @@ class ChunkedTransferEncodingTests(unitt
lambda b: None, # pragma: nocov
)
p._maxTrailerHeadersSize = 10
- p.dataReceived(b"3\r\nabc\r\n0\r\n0123456789")
+ # 9 bytes are received so far, in 2 packets.
+ # For now, all is ok.
+ p.dataReceived(b"3\r\nabc\r\n0\r\n01234567")
+ p.dataReceived(b"\r")
+ # Once the 10th byte is received, the processing fails.
self.assertRaises(
http._MalformedChunkedDataError,
p.dataReceived,

View File

@@ -1,83 +0,0 @@
Index: twisted-24.3.0/src/twisted/web/_template_util.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/web/_template_util.py
+++ twisted-24.3.0/src/twisted/web/_template_util.py
@@ -92,7 +92,7 @@ def redirectTo(URL: bytes, request: IReq
</body>
</html>
""" % {
- b"url": URL
+ b"url": escape(URL.decode("utf-8")).encode("utf-8")
}
return content
Index: twisted-24.3.0/src/twisted/web/newsfragments/12263.bugfix
===================================================================
--- /dev/null
+++ twisted-24.3.0/src/twisted/web/newsfragments/12263.bugfix
@@ -0,0 +1 @@
+twisted.web.util.redirectTo now HTML-escapes the provided URL in the fallback response body it returns (GHSA-cf56-g6w6-pqq2). The issue is being tracked with CVE-2024-41810.
\ No newline at end of file
Index: twisted-24.3.0/src/twisted/web/newsfragments/9839.bugfix
===================================================================
--- /dev/null
+++ twisted-24.3.0/src/twisted/web/newsfragments/9839.bugfix
@@ -0,0 +1 @@
+twisted.web.util.redirectTo now HTML-escapes the provided URL in the fallback response body it returns (GHSA-cf56-g6w6-pqq2, CVE-2024-41810).
Index: twisted-24.3.0/src/twisted/web/test/test_util.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/web/test/test_util.py
+++ twisted-24.3.0/src/twisted/web/test/test_util.py
@@ -5,7 +5,6 @@
Tests for L{twisted.web.util}.
"""
-
import gc
from twisted.internet import defer
@@ -64,6 +63,44 @@ class RedirectToTests(TestCase):
targetURL = "http://target.example.com/4321"
self.assertRaises(TypeError, redirectTo, targetURL, request)
+ def test_legitimateRedirect(self):
+ """
+ Legitimate URLs are fully interpolated in the `redirectTo` response body without transformation
+ """
+ request = DummyRequest([b""])
+ html = redirectTo(b"https://twisted.org/", request)
+ expected = b"""
+<html>
+ <head>
+ <meta http-equiv=\"refresh\" content=\"0;URL=https://twisted.org/\">
+ </head>
+ <body bgcolor=\"#FFFFFF\" text=\"#000000\">
+ <a href=\"https://twisted.org/\">click here</a>
+ </body>
+</html>
+"""
+ self.assertEqual(html, expected)
+
+ def test_maliciousRedirect(self):
+ """
+ Malicious URLs are HTML-escaped before interpolating them in the `redirectTo` response body
+ """
+ request = DummyRequest([b""])
+ html = redirectTo(
+ b'https://twisted.org/"><script>alert(document.location)</script>', request
+ )
+ expected = b"""
+<html>
+ <head>
+ <meta http-equiv=\"refresh\" content=\"0;URL=https://twisted.org/&quot;&gt;&lt;script&gt;alert(document.location)&lt;/script&gt;\">
+ </head>
+ <body bgcolor=\"#FFFFFF\" text=\"#000000\">
+ <a href=\"https://twisted.org/&quot;&gt;&lt;script&gt;alert(document.location)&lt;/script&gt;\">click here</a>
+ </body>
+</html>
+"""
+ self.assertEqual(html, expected)
+
class ParentRedirectTests(SynchronousTestCase):
"""

37
createElement.patch Normal file
View File

@@ -0,0 +1,37 @@
From b035f4a1a952c93445a01f2e17df88689ddf9bdf Mon Sep 17 00:00:00 2001
From: Glyph <code@glyph.im>
Date: Wed, 10 Dec 2025 01:10:32 -0800
Subject: [PATCH] use createElement in the test rather than instantiating
Element
---
src/twisted/newsfragments/12549.misc | 0
src/twisted/web/test/test_domhelpers.py | 6 +++---
2 files changed, 3 insertions(+), 3 deletions(-)
create mode 100644 src/twisted/newsfragments/12549.misc
diff --git a/src/twisted/newsfragments/12549.misc b/src/twisted/newsfragments/12549.misc
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/src/twisted/web/test/test_domhelpers.py b/src/twisted/web/test/test_domhelpers.py
index bbefd68516b..d28b89f30e8 100644
--- a/src/twisted/web/test/test_domhelpers.py
+++ b/src/twisted/web/test/test_domhelpers.py
@@ -109,14 +109,14 @@ def test_clearNode(self):
doc1 = self.dom.parseString("<a><b><c><d/></c></b></a>")
a_node = doc1.documentElement
domhelpers.clearNode(a_node)
- self.assertEqual(a_node.toxml(), self.dom.Element("a").toxml())
+ self.assertEqual(a_node.toxml(), doc1.createElement("a").toxml())
doc2 = self.dom.parseString("<a><b><c><d/></c></b></a>")
b_node = doc2.documentElement.childNodes[0]
domhelpers.clearNode(b_node)
actual = doc2.documentElement.toxml()
- expected = self.dom.Element("a")
- expected.appendChild(self.dom.Element("b"))
+ expected = doc2.createElement("a")
+ expected.appendChild(doc2.createElement("b"))
self.assertEqual(actual, expected.toxml())
def test_get(self):

View File

@@ -1,13 +1,9 @@
---
src/twisted/test/test_failure.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: twisted-24.3.0/src/twisted/test/test_failure.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/test/test_failure.py
+++ twisted-24.3.0/src/twisted/test/test_failure.py
@@ -18,7 +18,8 @@ from types import TracebackType
from typing import Any, Generator
diff --git a/src/twisted/test/test_failure.py b/src/twisted/test/test_failure.py
index a9e920c10e..de9c499972 100644
--- a/src/twisted/test/test_failure.py
+++ b/src/twisted/test/test_failure.py
@@ -19,7 +19,8 @@ from types import TracebackType
from typing import Any, Generator, cast
from unittest import skipIf
-from cython_test_exception_raiser import raiser

View File

@@ -2,10 +2,10 @@
src/twisted/conch/test/test_keys.py | 3 +++
1 file changed, 3 insertions(+)
Index: twisted-24.3.0/src/twisted/conch/test/test_keys.py
Index: twisted-24.10.0/src/twisted/conch/test/test_keys.py
===================================================================
--- twisted-24.3.0.orig/src/twisted/conch/test/test_keys.py
+++ twisted-24.3.0/src/twisted/conch/test/test_keys.py
--- twisted-24.10.0.orig/src/twisted/conch/test/test_keys.py
+++ twisted-24.10.0/src/twisted/conch/test/test_keys.py
@@ -15,6 +15,7 @@ from twisted.python import randbytes
from twisted.python.filepath import FilePath
from twisted.python.reflect import requireModule
@@ -14,9 +14,9 @@ Index: twisted-24.3.0/src/twisted/conch/test/test_keys.py
cryptography = requireModule("cryptography")
if cryptography is None:
@@ -250,6 +251,8 @@ class KeyTests(unittest.TestCase):
for k, v in data.items():
self.assertEqual(privateKey.data()[k], v)
@@ -278,6 +279,8 @@ class KeyTests(unittest.TestCase):
publicKey = keys.Key.fromString(public)
self.assertTrue(publicKey._sk)
+ @pyunit.skip('Upstream ticket https://twistedmatrix.com/trac/ticket/9665' +
+ ' has still not been resolved.')

View File

@@ -1,3 +1,177 @@
-------------------------------------------------------------------
Thu Jan 8 09:57:04 UTC 2026 - Markéta Machová <mmachova@suse.com>
- Add createElement.patch to fix tests with fixed python interpreters
(bsc#1256325)
-------------------------------------------------------------------
Tue Aug 12 12:32:55 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Make the libalternatives transition conditional
-------------------------------------------------------------------
Wed Jun 25 12:21:34 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Convert to libalternatives
-------------------------------------------------------------------
Tue Oct 29 18:00:39 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 24.10.0:
* Python 3.13 is now supported.
* twisted.internet.defer.succeed() is significantly faster, and
awaiting Deferred has also been sped up.
* twisted.python.failure.Failure creation no longer records the
place where it was created. This reduces creation time by 60%
at least, thereby speeding up Deferred error handling.
* twisted.internet.defer.Deferred no longer removes the
traceback object from Failures. This may result in more
objects staying in memory if you don't clean up failed
Deferreds, but it speeds up error handling and enables
improvements to traceback reporting.
* twisted.internet.defer APIs are 2%-4% faster in many cases.
* twisted.internet.defer.Deferred runs callbacks with chained
Deferreds a little faster.
* The reactor now will use a little less CPU when events have
been scheduled with callLater().
* Creation of twisted.python.failure.Failure is now faster.
* Fixed unreleased regression caused by PR 12109.
* twisted.logger.eventAsText can now format the output having
types/classes as input. This was a regression introduced in
Twisted 24.3.0.
* twisted.internet.endpoints.clientFromString for TLS endpoints
with "bindAddress=" no longer crashes during connect.
twisted.internet.endpoints.HostnameEndpoint() no longer
crashes when given a bindAddress= argument that is just a
string, and that argument now accepts either address strings
or (address, port) tuples.
* The URLs from README and pyproject.toml were updated.
* #11236, #12060, #12062, #12099, #12219, #12290, #12296,
#12305, #12329, #12331, #12339
* twisted.conch.ssh.keys.Key can now load public blob keys of
type sk-ssh-ed25519@openssh.com and sk-ecdsa-
sha2-nistp256@openssh.com.
* twisted.conch tests no longer rely on OpenSSH supporting DSA
keys, fixing compatibility with OpenSSH >= 9.8.
* twisted.conch.ssh.SSHCiphers no longer supports the
cast128-ctr, cast128-cbc, blowfish-ctr, and blowfish-cbc
ciphers. The Blowfish and CAST5 ciphers were removed as they
were deprecated by the Python cryptography library.
* #12313
* The twisted.web HTTP server and client now reject HTTP header
names containing whitespace or other invalid characters by
raising twisted.web.http_headers.InvalidHeaderName, improving
compliance with RFC 9110. As a side effect, the server is
slightly faster.
* twisted.web.client and twisted.web.server now disable the
Nagle algorithm (enable TCP_NODELAY), reducing the latency of
small HTTP queries.
* twisted.web.server is 1-2% faster in some cases.
* twisted.web's HTTP/1.1 server now rejects header values
containing a NUL byte with a 400 error, in compliance with
RFC 9110.
* twisted.internet.address no longer raises DeprecationWarning
when used with attrs>=24.1.0.
* twisted.web's HTTP/1.1 server now accepts '&' within tokens
(methods, header field names, etc.), in compliance with RFC
9110.
* #9743, #12276
* Trial's -j flag now accepts an auto keyword to spawn a number
of workers based on the available CPUs.
- drop 12313-fix-test_manhole.patch: upstream
-------------------------------------------------------------------
Wed Sep 25 06:38:11 UTC 2024 - Markéta Machová <mmachova@suse.com>
- Add upstream patch 12313-fix-test_manhole.patch to fix test failure
with latest python312
-------------------------------------------------------------------
Mon Sep 9 14:23:03 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 24.7.0
* 24.7.0.rc2 fixed an unreleased regression caused by PR 12109. (#12279)
* twisted.web.util.redirectTo now HTML-escapes the provided URL in the fallback
response body it returns (GHSA-cf56-g6w6-pqq2, CVE-2024-41810). (#9839)
* The HTTP 1.0 and 1.1 server provided by twisted.web could process pipelined
HTTP requests out-of-order, possibly resulting in information disclosure
(CVE-2024-41671/GHSA-c8m8-j448-xjx7) (#12248)
* twisted.protocols.ftp now supports the IPv6 extensions defined in RFC 2428. (#9645)
* twisted.internet.defer.inlineCallbacks can now yield a coroutine. (#9972)
* twisted.python._shellcomp.ZshArgumentsGenerator was updated for Python 3.13. (#12065)
* twisted.web.wsgi request environment now contains the peer port number as `REMOTE_PORT`. (#12096)
* twisted.internet.defer.Deferred.callback() and twisted.internet.defer.Deferred.addCallbacks()
no longer use `assert` to check the type of the arguments. You should now use type checking
to validate your code. These changes were done to reduce the CPU usage. (#12122)
* Added two new methods, twisted.logger.Logger.failuresHandled and twisted.logger.Logger.\
failureHandler, which allow for more concise and convenient handling of exceptions when
dispatching out to application code. The former can arbitrarily customize failure handling
at the call site, and the latter can be used for performance-sensitive cases where no
additional information needs to be logged. (#12188)
* twisted.internet.defer.Deferred.addCallback now runs about 10% faster. (#12223)
* twisted.internet.defer.Deferred error handling is now faster, taking 40% less time to run. (#12227)
* twisted.internet.ssl.Certificate.__repr__ can now handle certificates without
a common name (CN) in the certificate itself or the signing CA. (#5851)
* Type annotations have been added to twisted.conch.interfaces.IKnownHostEntry
and its implementations, twisted.conch.client.knownhosts.PlainHost and
twisted.conch.client.knownhosts.HashedHost, correcting a variety of
type confusion issues throughout the conch client code. (#9713)
* twisted.python.failure.Failure once again utilizes the custom
pickling logic it used to in the past. (#12112)
* twisted.conch.client.knownhosts.KnownHostsFile.verifyHostKey no longer logs
an exception when automatically adding an IP address host key, which means
the interactive `conch` command-line no longer will either. (#12141)
* The IRC server example found in the documentation was updated for readability. (#12097)
* Remove contextvars from list of optional dependencies. (#12128)
* The documentation for installing Twisted was moved into a single page. (#12145)
* The project's compatibility policy now clearly indicates that the GitHub Actions
test matrix defines the supported platforms. (#12167)
* Updated imap4client.py example, it no longer references Python 2. (#12252)
* twisted.internet.defer.returnValue has been deprecated. You can replace
it with the standard `return` statement. (#9930)
* The `twisted-iocpsupport` is no longer a hard dependency on Windows.
* The IOCP support is now installed together with the other Windows soft
* dependencies via `twisted[windows-platform]`. (#11893)
* twisted.python.deprecate helper function will now always strip whitespaces from the docstrings.
* This is done to have the same behaviour as with Python 3.13. (#12063)
* twisted.conch.manhole.ManholeInterpreter.write, twisted.conch.manhole.ManholeInterpreter.
addOutput, twisted.mail.imap4.IMAP4Server.sendUntaggedResponse `async` argument,
deprecated since 18.9.0, has been removed. (#12130)
* twisted.web.soap was removed.
* The SOAP support was already broken, for at least the last 4 years.
* The SOAP support in Twisted has no active maintainer. (#12146)
* Fix #11744, #11771, #12113, #12154, #12169, #12179, #12193, #12195,
#12197, #12215, #12221, #12243, #12249, #12254, #12259, #12669
* twisted.conch.insults.window.Widget.functionKeyReceived now dispatches
functional key events to corresponding `func_KEYNAME` methods, where `KEYNAME` can be `F1`, `F2`,
`HOME`, `UP_ARROW` etc. This is a regression introduced with #8214 in Twisted 16.5.0, where events
changed from `const` objects to bytestrings in square brackets like `[F1]`. (#12046)
* twisted.web.agent.Agent now allows duplicate Content-Length headers having the same value, per RFC
9110 section 8.6. It is otherwise more strict when parsing Content-Length header values. (#9064)
* twisted.web.client.HTTPConnectionPool used by HTTP clients now runs faster by using a little less CPU. (#12108)
* twisted.web.http_headers now uses less CPU, making a small HTTP client request 10% faster or so. (#12116)
* twisted.web's HTTP/1.1 server now runs a little faster, with about 10% lower CPU overhead. (#12133)
* twisted.web's HTTP 1.1 server is an additional 5% faster. (#12155)
* twisted.web.http.IM_A_TEAPOT was added and returns `I'm a teapot`
* as default message for the status code 418,
* as defined in RFC 2324 section 2.3.2. (#12104)
* The HTTP 1.0/1.1 server provided by twisted.web is now more picky about the first line of a request,
improving compliance with RFC 9112. (#12233)
* The HTTP 1.0/1.1 server provided by twisted.web now constraints the character set of HTTP header names,
improving compliance with RFC 9110. (#12235)
* Fix ReverseProxyResource example in developer guide. (#12152)
* twisted.web.util.ChildRedirector, which has never worked on Python 3, has been removed. (#9591)
* ``twisted.web.http.Request.setResponseCode()`` no longer validates the types of inputs;
we encourage you to use a type checker like mypy to catch these sort of errors. The
long-deprecated ``twisted.web.server.string_date_time()`` and ``twisted.web.server.date_time_string()``
APIs were removed altogether. (#12133)
* twisted.web.http.HTTPClient is now deprecated in favor of twisted.web.client.Agent (#12158)
* Fix #12098, #12194, #12200, #12241, #12257
- Drop CVE-2024-41671.patch, merged upstream
- Drop CVE-2024-41810.patch, merged upstream
- Refresh 1521_delegate_parseqs_stdlib_bpo42967.patch
- Refresh no-cython_test_exception_raiser.patch
-------------------------------------------------------------------
Wed Jul 31 06:07:19 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-Twisted
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,16 +18,20 @@
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%bcond_without test
%define psuffix -test
%bcond_without test
%else
%bcond_with test
%define psuffix %{nil}
%bcond_with test
%endif
%if 0%{?suse_version} > 1500
%bcond_without libalternatives
%else
%bcond_with libalternatives
%endif
%{?sle15_python_module_pythons}
Name: python-Twisted%{psuffix}
Version: 24.3.0
Version: 24.10.0
Release: 0
Summary: An asynchronous networking framework written in Python
License: MIT
@@ -45,40 +49,44 @@ Patch3: 1521_delegate_parseqs_stdlib_bpo42967.patch
Patch5: no-cython_test_exception_raiser.patch
# PATCH-FIX-OPENSUSE remove-dependency-version-upper-bounds.patch boo#1190036 -- run with h2 >= 4.0.0 and priority >= 2.0
Patch6: remove-dependency-version-upper-bounds.patch
# PATCH-FIX-UPSTREAM CVE-2024-41671.patch gh#twisted/twisted@4a930de12fb6
Patch7: CVE-2024-41671.patch
# PATCH-FIX-UPSTREAM CVE-2024-41810.patch gh#twisted/twisted@046a164f89a0
Patch8: CVE-2024-41810.patch
# PATCH-FIX-UPSTREAM https://github.com/twisted/twisted/pull/12551 use createElement in the test rather than instantiating Element
Patch7: createElement.patch
BuildRequires: %{python_module hatch-fancy-pypi-readme}
BuildRequires: %{python_module hatchling}
BuildRequires: %{python_module incremental >= 21.3.0}
BuildRequires: %{python_module incremental >= 24.7.0}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: git-core
BuildRequires: python-rpm-macros
Requires(post): update-alternatives
Requires(postun): update-alternatives
# twisted[tls] is so common, let's keep it tied to the main package for the time being.
Requires: python-Twisted-tls = %{version}
BuildArch: noarch
# SECTION install requires
Requires: python-Automat >= 0.8.0
Requires: python-attrs >= 19.2.0
Requires: python-constantly >= 15.1
Requires: python-hyperlink >= 17.1.1
Requires: python-incremental >= 21.3.0
Requires: python-incremental >= 24.7.0
Requires: python-typing_extensions >= 3.6.5
Requires: python-zope.interface >= 4.4.2
# /SECTION
# twisted[tls] is so common, let's keep it tied to the main package for the time being.
Requires: python-Twisted-tls = %{version}
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun): update-alternatives
%endif
%if %{with test}
BuildRequires: %{python_module Twisted-all_non_platform = %{version}}
BuildRequires: %{python_module Twisted-conch_nacl = %{version}}
BuildRequires: %{python_module httpx}
BuildRequires: %{python_module hypothesis}
# declared nowhere but required to pass 8 tests with timezone checks
BuildRequires: %{python_module pytz}
BuildRequires: %{python_module hypothesis}
%endif
BuildArch: noarch
%python_subpackages
%description
@@ -219,6 +227,8 @@ rm %{buildroot}%{_bindir}/mailmail %{buildroot}%{_mandir}/man1/mailmail.1
# no manpage for twist yet:
%python_clone -a %{buildroot}%{_bindir}/twist
# group all the alternatives under one master
%python_group_libalternatives twistd cftp ckeygen conch pyhtmlizer tkconch trial twist
%endif
%if %{with test}
@@ -242,11 +252,20 @@ export OPENSSL_CONF=''
%python_expand PYTHONPATH=%{buildroot}%{$python_sitelib} $python -m twisted.trial twisted
%endif
%pre
%python_libalternatives_reset_alternative twistd
# these were master alternatives until Dec 2020
for f in cftp ckeygen conch pyhtmlizer tkconch trial twist; do
%python_libalternatives_reset_alternative $f
done
%post
%if !%{with libalternatives}
# these were master alternatives until Dec 2020. Remove before the install as slave links
for f in cftp ckeygen conch pyhtmlizer tkconch trial twist; do
(update-alternatives --quiet --list $f 2>&1 >/dev/null) && update-alternatives --quiet --remove-all $f
done
%endif
%{python_install_alternative twistd cftp ckeygen conch pyhtmlizer tkconch trial twist
twistd.1 cftp.1 ckeygen.1 conch.1 pyhtmlizer.1 tkconch.1 trial.1}

View File

@@ -1,14 +1,14 @@
Index: twisted-23.10.0/pyproject.toml
Index: twisted-24.10.0/pyproject.toml
===================================================================
--- twisted-23.10.0.orig/pyproject.toml
+++ twisted-23.10.0/pyproject.toml
@@ -95,8 +95,8 @@ serial = [
--- twisted-24.10.0.orig/pyproject.toml
+++ twisted-24.10.0/pyproject.toml
@@ -97,8 +97,8 @@ serial = [
]
http2 = [
- "h2 >= 3.0, < 5.0",
- "h2 >= 3.2, < 5.0",
- "priority >= 1.1.0, < 2.0",
+ "h2 >= 3.0",
+ "h2 >= 3.2",
+ "priority >= 1.1.0",
]

BIN
twisted-24.10.0.tar.gz LFS Normal file

Binary file not shown.

Binary file not shown.