All Versions
86
Latest Version
Avg Release Cycle
-
Latest Release
-

Changelog History
Page 4

  • v13.0.0 Changes

    • ๐Ÿ‘ :issue:1666: Drop support for Python 3.3.
  • v12.0.2 Changes

    • :issue:1665: In request processing, when an invalid cookie is received, render the actual error message reported rather than guessing (sometimes incorrectly) what error occurred.
  • v12.0.1 Changes

    • ๐Ÿ›  Fixed issues importing :py:mod:cherrypy.test.webtest (by creating a module and importing classes from :py:mod:cheroot) and added a corresponding :py:class:DeprecationWarning.
  • v12.0.0 Changes

    • โฌ‡๏ธ Drop support for Python 3.1 and 3.2.

    • ๐Ÿšš :issue:1625: Removed response timeout and timeout monitor and related exceptions, as it not possible to interrupt a request. Servers that wish to exit a request prematurely are recommended to monitor response.time and raise an exception or otherwise act accordingly.

    Servers that previously disabled timeouts by invoking cherrypy.engine.timeout_monitor.unsubscribe() will now crash. For forward-compatibility with this release on older versions of CherryPy, disable timeouts using the config option::

    'engine.timeout_monitor.on': False,
    

    Or test for the presence of the timeout_monitor attribute::

    with contextlib2.suppress(AttributeError):
        cherrypy.engine.timeout_monitor.unsubscribe()
    

    Additionally, the TimeoutError exception has been removed, as it's no longer called anywhere. If your application benefits from this Exception, please comment in the linked ticket describing the use case, and we'll help devise a solution or bring the exception back.

  • v11.3.0 Changes

    • โฌ†๏ธ Bump to cheroot 5.9.0.

    • ๐Ÿ”€ cherrypy.test.webtest module is now merged with the cheroot.test.webtest module. The CherryPy name is retained for now for compatibility and will be removed eventually.

  • v11.2.0 Changes

    • cherrypy.engine.subscribe now may be called without a callback, in which case it returns a decorator expecting the callback.

    • :pr:1656: Images are now compressed using lossless compression and consume less space.

  • v11.1.0 Changes

    • 0๏ธโƒฃ :pr:1611: Expose default status logic for a redirect as HTTPRedirect.default_status.

    • :pr:1615: HTTPRedirect.status is now an instance property and derived from the value in args. Although it was previously possible to set the property on an instance, and this change prevents that possibilty, CherryPy never relied on that behavior and we presume no applications depend on that interface.

    • ๐Ÿ›  :issue:1627: Fixed issue in proxy tool where more than one port would appear in the request.base and thus in cherrypy.url.

    • ๐ŸŒฒ :pr:1645: Added new log format markers:

      • i holds a per-request UUID4
      • z outputs UTC time in format of RFC 3339
      • cherrypy._cprequest.Request.unique_id.uuid4 now has lazily invocable UUID4
    • :issue:1646: Improve http status conversion helper.

    • :pr:1638: Always use backslash for path separator when processing paths in staticdir.

    • :issue:1190: Fix gzip, caching, and staticdir tools integration. Makes cache of gzipped content valid.

    • Requires cheroot 5.8.3 or later.

    • Also, many improvements around continuous integration and code quality checks.

    ๐Ÿš€ This release contained an unintentional regression in environments that ๐Ÿ“ฆ are hostile to namespace packages, such as Pex, Celery, and py2exe. ๐Ÿ‘€ See :pr:1671 for details.

  • v11.0.0 Changes

    • ๐Ÿ‘ :issue:1607: Dropped support for Python 2.6.
  • v10.2.2 Changes

    • ๐Ÿ›  :issue:1595: Fixed over-eager normalization of paths in cherrypy.url.
  • v10.2.1 Changes

    • โœ‚ Remove unintended dependency on graphviz in Python 2.6.