pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/www/py-cheroot py-cheroot: updated to 8.6.0
details: https://anonhg.NetBSD.org/pkgsrc/rev/0017cabd7cf5
branches: trunk
changeset: 387780:0017cabd7cf5
user: adam <adam%pkgsrc.org@localhost>
date: Sun Nov 06 18:21:11 2022 +0000
description:
py-cheroot: updated to 8.6.0
v8.6.0
Significant improvements:
- :issue:`384` via :pr:`385`, :pr:`406`: Exposed type stubs with
annotations for public API -- by :user:`kasium`.
- :pr:`401` (related to the :pr:`352` effort): Started reusing the
the ``expriration_interval`` setting in the low-level
:py:func:`~select.select` invocation, effectively reducing the system
load under the Windows OS when idle, that is noticeable on low-end
hardware systems -- by :user:`MichaIng`.
Internal changes:
- Implemented a manual-trigger-based release workflow.
- Integrated publishing GitHub Releases into the workflow.
- Migrated the docs theme to `Furo <https://pradyunsg.me/furo>`__
(created by :user:`pradyunsg`).
- Attempted to improve the stability of testing.
- Configured the CI to test the same distribution as will be shipped.
- Improved the linting setup and contributor checklists.
- Stopped running tests under Ubuntu 16.04.
- Tweaked the distribution packages metadata to satisfy strict checks.
- Implemented distribution build reproducibility using a pip constraints
lock-file.
- Added per-environment lock-files into the tox test environments.
v8.5.2
- :issue:`358` via :pr:`359`: Fixed a regression from
:pr:`199` that made the worker threads exit on invalid
connection attempts and could make the whole server
unresponsive once there was no workers left.
-- by :user:`cameronbrunner`.
v8.5.1
- :cp-issue:`1873` via :pr:`340`: Resurrected an
unintentionally removed feature of interrupting a server
main thread by externally assigning an exception to the
:py:meth:`HTTPServer.interrupt <cheroot.server.\
HTTPServer.interrupt>` property -- by :user:`liamstask`.
- :pr:`350`: Fixed the incarnation of an earlier regression
of not resetting the serving state
on :py:data:`SIGINT` originally fixed by :pr:`322` and
:pr:`331` but reintroduced by the changes in :pr:`311`
-- by :user:`liamstask`.
v8.5.0
- :issue:`305` via :pr:`311`: In
:py:class:`~cheroot.connections.ConnectionManager`,
process connections as they become active rather than
waiting for a ``tick`` event, addressing performance
degradation introduced in v8.1.0 -- by :user:`liamstask`.
- :issue:`341` via :pr:`342`: Suppress legitimate OS errors
expected on shutdown -- by :user:`webknjaz`.
v8.4.8
- :issue:`317` via :pr:`337`: Fixed a regression in
8.4.5 where the connections dictionary would change
size during iteration, leading to a :py:exc:`RuntimeError`
raised in the logs -- by :user:`liamstask`.
v8.4.7
- :pr:`334`: Started filtering out TLS/SSL errors when
the version requested by the client is unsupported
-- by :user:`sanderjo` and :user:`Safihre`.
v8.4.6
- :issue:`328` via :pr:`322` and :pr:`331`: Fixed a
regression introduced in the earlier refactoring in v8.4.4
via :pr:`309` that caused the :py:meth:`~cheroot.server.\
HTTPServer.serve` method to skip setting
``serving=False`` on :py:data:``SIGINT`` and
:py:data:``SIGTERM`` -- by :user:`marc1n` and
:user:`cristicbz`.
v8.4.5
- :issue:`312` via :pr:`313`: Fixed a regression introduced
in the earlier refactoring in v8.4.4 via :pr:`309` that
caused the connection manager to modify the selector map
while looping over it -- by :user:`liamstask`.
- :issue:`312` via :pr:`316`: Added a regression test for
the error handling in :py:meth:`~cheroot.connections.\
ConnectionManager.get_conn` to ensure more stability
-- by :user:`cyraxjoe`.
v8.4.4
- :issue:`304` via :pr:`309`: Refactored :py:class:`~\
cheroot.connections.ConnectionManager` to use :py:meth:`~\
selectors.BaseSelector.get_map` and reorganized the
readable connection tracking -- by :user:`liamstask`.
- :issue:`304` via :pr:`309`: Fixed the server shutdown
sequence to avoid race condition resulting in accepting
new connections while it is being terminated
-- by :user:`liamstask`.
v8.4.3
- :pr:`282`: Fixed a race condition happening when an HTTP
client attempts to reuse a persistent HTTP connection after
it's been discarded on the server in :py:class:`~cheroot.\
server.HTTPRequest` but no TCP FIN packet has been received
yet over the wire -- by :user:`meaksh`.
This change populates the ``Keep-Alive`` header exposing
the timeout value for persistent HTTP/1.1 connections which
helps mitigate such race conditions by letting the client
know not to reuse the connection after that time interval.
v8.4.2
- Fixed a significant performance regression introduced in
v8.1.0 (:issue:`305` via :pr:`308`) - by :user:`mar10`.
The issue turned out to add 0.1s delay on new incoming
connection processing. We've lowered that delay to mitigate
the problem short-term, better fix is yet to come.
v8.4.1
- Prevent :py:exc:`ConnectionAbortedError` traceback from being
printed out to the terminal output during the app start-up on
Windows when built-in TLS adapter is used (:issue:`302` via
:pr:`306`) - by :user:`mxii-ca`.
v8.4.0
- Converted management from low-level :py:func:`~select.select` to
high-level :py:mod:`selectors` (:issue:`249` via :pr:`301`)
- by :user:`tommilligan`.
This change also introduces a conditional dependency on
``selectors2`` as a fall-back for legacy Python interpreters.
v8.3.1
- Fixed TLS socket related unclosed resource warnings
(:pr:`291` and :pr:`298`).
- Made terminating keep-alive connections more graceful
(:issue:`263` via :pr:`277`).
v8.3.0
- :cp-issue:`910` via :pr:`243`: Provide TLS-related
details via WSGI environment interface.
- :pr:`248`: Fix parsing of the ``--bind`` CLI option
for abstract UNIX sockets.
diffstat:
www/py-cheroot/Makefile | 27 ++++++++++++++-------------
www/py-cheroot/PLIST | 28 +++++++++++++++++++++++++++-
www/py-cheroot/distinfo | 11 +++++------
www/py-cheroot/patches/patch-setup.cfg | 24 +++++++++++++-----------
www/py-cheroot/patches/patch-setup.py | 29 -----------------------------
5 files changed, 59 insertions(+), 60 deletions(-)
diffs (238 lines):
diff -r f47529074a68 -r 0017cabd7cf5 www/py-cheroot/Makefile
--- a/www/py-cheroot/Makefile Sun Nov 06 18:19:52 2022 +0000
+++ b/www/py-cheroot/Makefile Sun Nov 06 18:21:11 2022 +0000
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.33 2022/10/19 14:25:20 nia Exp $
+# $NetBSD: Makefile,v 1.34 2022/11/06 18:21:11 adam Exp $
-DISTNAME= cheroot-6.5.8
+DISTNAME= cheroot-8.6.0
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
-PKGREVISION= 2
CATEGORIES= www python
MASTER_SITES= ${MASTER_SITE_PYPI:=C/Cheroot/}
@@ -11,34 +10,36 @@
COMMENT= High-performance, pure-Python HTTP server used by CherryPy
LICENSE= modified-bsd
+BUILD_DEPENDS+= ${PYPKGPREFIX}-setuptools_scm>=7.0.0:../../devel/py-setuptools_scm
+DEPENDS+= ${PYPKGPREFIX}-jaraco.functools-[0-9]*:../../devel/py-jaraco.functools
+DEPENDS+= ${PYPKGPREFIX}-more-itertools>=2.6:../../devel/py-more-itertools
DEPENDS+= ${PYPKGPREFIX}-six>=1.11.0:../../lang/py-six
-DEPENDS+= ${PYPKGPREFIX}-more-itertools-[0-9]*:../../devel/py-more-itertools
-BUILD_DEPENDS+= ${PYPKGPREFIX}-setuptools_scm>=7.0.0:../../devel/py-setuptools_scm
TEST_DEPENDS+= ${PYPKGPREFIX}-coverage>=4.5.3:../../devel/py-coverage
-TEST_DEPENDS+= ${PYPKGPREFIX}-ddt-[0-9]*:../../devel/py-ddt
TEST_DEPENDS+= ${PYPKGPREFIX}-portend-[0-9]*:../../net/py-portend
TEST_DEPENDS+= ${PYPKGPREFIX}-requests-unixsocket-[0-9]*:../../devel/py-requests-unixsocket
-TEST_DEPENDS+= ${PYPKGPREFIX}-test>=2.8:../../devel/py-test
-TEST_DEPENDS+= ${PYPKGPREFIX}-test-cov>=2.7.1:../../devel/py-test-cov
+TEST_DEPENDS+= ${PYPKGPREFIX}-requests-toolbelt-[0-9]*:../../devel/py-requests-toolbelt
+TEST_DEPENDS+= ${PYPKGPREFIX}-test>=4.6.6:../../devel/py-test
+TEST_DEPENDS+= ${PYPKGPREFIX}-test-cov>=2.12.0:../../devel/py-test-cov
TEST_DEPENDS+= ${PYPKGPREFIX}-test-mock>=1.10.4:../../devel/py-test-mock
-TEST_DEPENDS+= ${PYPKGPREFIX}-test-sugar>=0.9.1:../../devel/py-test-sugar
-TEST_DEPENDS+= ${PYPKGPREFIX}-test-testmon>=0.9.7:../../devel/py-test-testmon
+TEST_DEPENDS+= ${PYPKGPREFIX}-test-rerunfailures-[0-9]*:../../devel/py-test-rerunfailures
+TEST_DEPENDS+= ${PYPKGPREFIX}-test-sugar>=0.9.3:../../devel/py-test-sugar
TEST_DEPENDS+= ${PYPKGPREFIX}-test-watch>=4.2.0:../../devel/py-test-watch
TEST_DEPENDS+= ${PYPKGPREFIX}-test-xdist>=1.28.0:../../devel/py-test-xdist
TEST_DEPENDS+= ${PYPKGPREFIX}-trustme>=0.4.0:../../security/py-trustme
-
-PYTHON_VERSIONS_INCOMPATIBLE= 27
+TEST_DEPENDS+= ${PYPKGPREFIX}-trustme>=0.4.0:../../security/py-trustme
USE_LANGUAGES= # none
USE_PKG_RESOURCES= yes
+PYTHON_VERSIONS_INCOMPATIBLE= 27 # py-portend
+
post-install:
cd ${DESTDIR}${PREFIX}/bin && \
${MV} cheroot cheroot-${PYVERSSUFFIX} || ${TRUE}
do-test:
- cd ${WRKSRC} && py.test-${PYVERSSUFFIX}
+ cd ${WRKSRC} && ${SETENV} ${TEST_ENV} pytest-${PYVERSSUFFIX}
.include "../../lang/python/egg.mk"
PYTHON_VERSIONED_DEPENDENCIES+= OpenSSL:test
diff -r f47529074a68 -r 0017cabd7cf5 www/py-cheroot/PLIST
--- a/www/py-cheroot/PLIST Sun Nov 06 18:19:52 2022 +0000
+++ b/www/py-cheroot/PLIST Sun Nov 06 18:21:11 2022 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.12 2019/05/21 08:36:32 adam Exp $
+@comment $NetBSD: PLIST,v 1.13 2022/11/06 18:21:11 adam Exp $
bin/cheroot-${PYVERSSUFFIX}
${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
@@ -8,6 +8,7 @@
${PYSITELIB}/${EGG_INFODIR}/top_level.txt
${PYSITELIB}/cheroot/__init__.py
${PYSITELIB}/cheroot/__init__.pyc
+${PYSITELIB}/cheroot/__init__.pyi
${PYSITELIB}/cheroot/__init__.pyo
${PYSITELIB}/cheroot/__main__.py
${PYSITELIB}/cheroot/__main__.pyc
@@ -17,28 +18,43 @@
${PYSITELIB}/cheroot/_compat.pyo
${PYSITELIB}/cheroot/cli.py
${PYSITELIB}/cheroot/cli.pyc
+${PYSITELIB}/cheroot/cli.pyi
${PYSITELIB}/cheroot/cli.pyo
+${PYSITELIB}/cheroot/connections.py
+${PYSITELIB}/cheroot/connections.pyc
+${PYSITELIB}/cheroot/connections.pyi
+${PYSITELIB}/cheroot/connections.pyo
${PYSITELIB}/cheroot/errors.py
${PYSITELIB}/cheroot/errors.pyc
+${PYSITELIB}/cheroot/errors.pyi
${PYSITELIB}/cheroot/errors.pyo
${PYSITELIB}/cheroot/makefile.py
${PYSITELIB}/cheroot/makefile.pyc
+${PYSITELIB}/cheroot/makefile.pyi
${PYSITELIB}/cheroot/makefile.pyo
+${PYSITELIB}/cheroot/py.typed
${PYSITELIB}/cheroot/server.py
${PYSITELIB}/cheroot/server.pyc
+${PYSITELIB}/cheroot/server.pyi
${PYSITELIB}/cheroot/server.pyo
${PYSITELIB}/cheroot/ssl/__init__.py
${PYSITELIB}/cheroot/ssl/__init__.pyc
+${PYSITELIB}/cheroot/ssl/__init__.pyi
${PYSITELIB}/cheroot/ssl/__init__.pyo
${PYSITELIB}/cheroot/ssl/builtin.py
${PYSITELIB}/cheroot/ssl/builtin.pyc
+${PYSITELIB}/cheroot/ssl/builtin.pyi
${PYSITELIB}/cheroot/ssl/builtin.pyo
${PYSITELIB}/cheroot/ssl/pyopenssl.py
${PYSITELIB}/cheroot/ssl/pyopenssl.pyc
+${PYSITELIB}/cheroot/ssl/pyopenssl.pyi
${PYSITELIB}/cheroot/ssl/pyopenssl.pyo
${PYSITELIB}/cheroot/test/__init__.py
${PYSITELIB}/cheroot/test/__init__.pyc
${PYSITELIB}/cheroot/test/__init__.pyo
+${PYSITELIB}/cheroot/test/_pytest_plugin.py
+${PYSITELIB}/cheroot/test/_pytest_plugin.pyc
+${PYSITELIB}/cheroot/test/_pytest_plugin.pyo
${PYSITELIB}/cheroot/test/conftest.py
${PYSITELIB}/cheroot/test/conftest.pyc
${PYSITELIB}/cheroot/test/conftest.pyo
@@ -48,6 +64,9 @@
${PYSITELIB}/cheroot/test/test__compat.py
${PYSITELIB}/cheroot/test/test__compat.pyc
${PYSITELIB}/cheroot/test/test__compat.pyo
+${PYSITELIB}/cheroot/test/test_cli.py
+${PYSITELIB}/cheroot/test/test_cli.pyc
+${PYSITELIB}/cheroot/test/test_cli.pyo
${PYSITELIB}/cheroot/test/test_conn.py
${PYSITELIB}/cheroot/test/test_conn.pyc
${PYSITELIB}/cheroot/test/test_conn.pyo
@@ -69,18 +88,25 @@
${PYSITELIB}/cheroot/test/test_ssl.py
${PYSITELIB}/cheroot/test/test_ssl.pyc
${PYSITELIB}/cheroot/test/test_ssl.pyo
+${PYSITELIB}/cheroot/test/test_wsgi.py
+${PYSITELIB}/cheroot/test/test_wsgi.pyc
+${PYSITELIB}/cheroot/test/test_wsgi.pyo
${PYSITELIB}/cheroot/test/webtest.py
${PYSITELIB}/cheroot/test/webtest.pyc
${PYSITELIB}/cheroot/test/webtest.pyo
${PYSITELIB}/cheroot/testing.py
${PYSITELIB}/cheroot/testing.pyc
+${PYSITELIB}/cheroot/testing.pyi
${PYSITELIB}/cheroot/testing.pyo
${PYSITELIB}/cheroot/workers/__init__.py
${PYSITELIB}/cheroot/workers/__init__.pyc
+${PYSITELIB}/cheroot/workers/__init__.pyi
${PYSITELIB}/cheroot/workers/__init__.pyo
${PYSITELIB}/cheroot/workers/threadpool.py
${PYSITELIB}/cheroot/workers/threadpool.pyc
+${PYSITELIB}/cheroot/workers/threadpool.pyi
${PYSITELIB}/cheroot/workers/threadpool.pyo
${PYSITELIB}/cheroot/wsgi.py
${PYSITELIB}/cheroot/wsgi.pyc
+${PYSITELIB}/cheroot/wsgi.pyi
${PYSITELIB}/cheroot/wsgi.pyo
diff -r f47529074a68 -r 0017cabd7cf5 www/py-cheroot/distinfo
--- a/www/py-cheroot/distinfo Sun Nov 06 18:19:52 2022 +0000
+++ b/www/py-cheroot/distinfo Sun Nov 06 18:21:11 2022 +0000
@@ -1,7 +1,6 @@
-$NetBSD: distinfo,v 1.26 2021/10/26 11:30:29 nia Exp $
+$NetBSD: distinfo,v 1.27 2022/11/06 18:21:11 adam Exp $
-BLAKE2s (cheroot-6.5.8.tar.gz) = 6cbdf424f6d2455071526615b60b28cc4660bc8078264c2af6ea81ac18f7ee72
-SHA512 (cheroot-6.5.8.tar.gz) = 5abdf51ddb48b2519c795c5bcefce3d024dbf0fa0f881e94060444d9f5051a2e15b71aa0b3e2823dd7cd8b0e5f1b778580342332bbd3456c61e5493a84199966
-Size (cheroot-6.5.8.tar.gz) = 86158 bytes
-SHA1 (patch-setup.cfg) = a8e2352c4ca85c82fddc375bb3912a2581307679
-SHA1 (patch-setup.py) = d3261389a4422608df336940e73de6634633574c
+BLAKE2s (cheroot-8.6.0.tar.gz) = 89cc1e9a447b750d07b206c26e3d6e45fba4672bbdb9f6332d6f382abfa61ad6
+SHA512 (cheroot-8.6.0.tar.gz) = 26e48c935fe32d4ce3cf6ae20b5b272416ca53bd8496527c2958ec2ebe87529c831f283ae900e13271b610e39531b682df0376935ecc3bcfcca11c299cd2a893
+Size (cheroot-8.6.0.tar.gz) = 134779 bytes
+SHA1 (patch-setup.cfg) = bb33ee596210affecd65cf665bd2335aee2ff2f0
diff -r f47529074a68 -r 0017cabd7cf5 www/py-cheroot/patches/patch-setup.cfg
--- a/www/py-cheroot/patches/patch-setup.cfg Sun Nov 06 18:19:52 2022 +0000
+++ b/www/py-cheroot/patches/patch-setup.cfg Sun Nov 06 18:21:11 2022 +0000
@@ -1,14 +1,16 @@
-$NetBSD: patch-setup.cfg,v 1.1 2019/12/21 23:51:56 joerg Exp $
+$NetBSD: patch-setup.cfg,v 1.2 2022/11/06 18:21:11 adam Exp $
-Python 2.7 doesn't extract the version otherwise.
+setuptools_scm_git_archive is part of setuptools_scm as of 7.0.0.
---- setup.cfg.orig 2019-12-21 21:46:41.214063294 +0000
+--- setup.cfg.orig 2022-11-06 17:29:56.000000000 +0000
+++ setup.cfg
-@@ -6,6 +6,7 @@ universal = 1
-
- [metadata]
- name = cheroot
-+version = 6.5.8
- url = https://cheroot.cherrypy.org
- project_urls =
- CI: AppVeyor = https://ci.appveyor.com/project/cherrypy/cheroot
+@@ -55,8 +55,7 @@ python_requires = >=2.7,!=3.0.*,!=3.1.*,
+ packages = find:
+ include_package_data = True
+ setup_requires =
+- setuptools_scm>=1.15.0
+- setuptools_scm_git_archive>=1.0
++ setuptools_scm>=7.0.0
+ install_requires =
+ backports.functools_lru_cache; python_version < '3.3'
+ selectors2; python_version< '3.4'
diff -r f47529074a68 -r 0017cabd7cf5 www/py-cheroot/patches/patch-setup.py
--- a/www/py-cheroot/patches/patch-setup.py Sun Nov 06 18:19:52 2022 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-$NetBSD: patch-setup.py,v 1.1 2019/12/21 23:51:56 joerg Exp $
-
-Drop Python 2 hack that breaks more than it fixes.
-
---- setup.py.orig 2019-09-05 09:21:53.000000000 +0000
-+++ setup.py
-@@ -118,21 +118,4 @@ except ImportError:
- opt['packages'] = setuptools.find_packages(**opt_packages_find)
- return {'metadata': md, 'options': opt}
-
--
--setup_params = {}
--declarative_setup_params = read_configuration('setup.cfg')
--
--# Patch incorrectly decoded package_dir option
--# ``egg_info`` demands native strings failing with unicode under Python 2
--# Ref https://github.com/pypa/setuptools/issues/1136
--if 'package_dir' in declarative_setup_params['options']:
-- declarative_setup_params['options']['package_dir'] = {
-- str(k): str(v)
-- for k, v in declarative_setup_params['options']['package_dir'].items()
-- }
--
--setup_params = dict(setup_params, **declarative_setup_params['metadata'])
--setup_params = dict(setup_params, **declarative_setup_params['options'])
--
--
--__name__ == '__main__' and setuptools.setup(**setup_params)
-+__name__ == '__main__' and setuptools.setup()
Home |
Main Index |
Thread Index |
Old Index