From 52e5429adcdbef95a44b6471d8df07408ae3cff63c5ab7a9dbfa311d8cb35fee Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 11 Feb 2019 11:59:55 +0000 Subject: [PATCH] Accepting request 672508 from home:frispete:python - update to version 1.2.1: too many changes to list here, see: https://github.com/Pylons/waitress/blob/master/CHANGES.txt or even: https://github.com/Pylons/waitress/commits/master OBS-URL: https://build.opensuse.org/request/show/672508 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-waitress?expand=0&rev=26 --- .gitattributes | 3 + fetch-intersphinx-inventories.sh | 4 + local-intersphinx-inventories.patch | 13 ++ python-waitress.changes | 192 +--------------------------- python-waitress.spec | 31 ++++- python3.inv | 3 + waitress-1.1.0.tar.gz | 3 - waitress-1.2.1.tar.gz | 3 + 8 files changed, 57 insertions(+), 195 deletions(-) create mode 100644 fetch-intersphinx-inventories.sh create mode 100644 local-intersphinx-inventories.patch create mode 100644 python3.inv delete mode 100644 waitress-1.1.0.tar.gz create mode 100644 waitress-1.2.1.tar.gz diff --git a/.gitattributes b/.gitattributes index 37a8eaa..a60ed01 100644 --- a/.gitattributes +++ b/.gitattributes @@ -22,3 +22,6 @@ *.xz filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text *.zst filter=lfs diff=lfs merge=lfs -text +## Specific LFS patterns +*.changes filter=lfs diff=lfs merge=lfs -text +python3.inv filter=lfs diff=lfs merge=lfs -text diff --git a/fetch-intersphinx-inventories.sh b/fetch-intersphinx-inventories.sh new file mode 100644 index 0000000..78ac1d8 --- /dev/null +++ b/fetch-intersphinx-inventories.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +wget -O python3.inv https://docs.python.org/3/objects.inv + diff --git a/local-intersphinx-inventories.patch b/local-intersphinx-inventories.patch new file mode 100644 index 0000000..fb7e703 --- /dev/null +++ b/local-intersphinx-inventories.patch @@ -0,0 +1,13 @@ +Index: b/docs/conf.py +=================================================================== +--- a/docs/conf.py ++++ b/docs/conf.py +@@ -32,7 +32,7 @@ extensions = [ + ] + + intersphinx_mapping = { +- 'python': ('https://docs.python.org/3/', None), ++ 'python': ('https://docs.python.org/3/', 'python3.inv'), + } + + # Add any paths that contain templates here, relative to this directory. diff --git a/python-waitress.changes b/python-waitress.changes index c41e0eb..bd41637 100644 --- a/python-waitress.changes +++ b/python-waitress.changes @@ -1,189 +1,3 @@ -------------------------------------------------------------------- -Tue Dec 4 12:55:53 UTC 2018 - Matej Cepl - -- Remove superfluous devel dependency for noarch package - -------------------------------------------------------------------- -Fri Oct 13 00:49:45 UTC 2017 - arun@gmx.de - -- update to version 1.1.0: - * Features - + Waitress now has a __main__ and thus may be called with "python - -mwaitress" - * Bugfixes - + Waitress no longer allows lowercase HTTP verbs. This change was - made to fall in line with most HTTP servers. See - https://github.com/Pylons/waitress/pull/170 - + When receiving non-ascii bytes in the request URL, waitress will - no longer abruptly close the connection, instead returning a 400 - Bad Request. See https://github.com/Pylons/waitress/pull/162 and - https://github.com/Pylons/waitress/issues/64 - -------------------------------------------------------------------- -Mon May 1 16:38:04 UTC 2017 - toddrme2178@gmail.com - -- Update to 1.0.2 - * Python 3.6 is now officially supported in Waitress - * Add a work-around for libc issue on Linux not following the - documented standards. If getnameinfo() fails because of DNS not - being available it should return the IP address instead of the - reverse DNS entry, however instead getnameinfo() raises. We - catch this, and ask getnameinfo() for the same information - again, explicitly asking for IP address instead of reverse - DNS hostname. -- Implement single-spec version. -- Fix source URL. - -------------------------------------------------------------------- -Tue Nov 15 14:49:27 UTC 2016 - tbechtold@suse.com - -- update to 1.0.1: - - IPv6 support on Windows was broken due to missing constants in the socket - module. This has been resolved by setting the constants on Windows if they - are missing. See https://github.com/Pylons/waitress/issues/138 - - A ValueError was raised on Windows when passing a string for the port, on - Windows in Python 2 using service names instead of port numbers doesn't work - with `getaddrinfo`. This has been resolved by attempting to convert the port - number to an integer, if that fails a ValueError will be raised. See - https://github.com/Pylons/waitress/issues/139 - - Removed `AI_ADDRCONFIG` from the call to `getaddrinfo`, this resolves an - issue whereby `getaddrinfo` wouldn't return any addresses to `bind` to on - hosts where there is no internet connection but localhost is requested to be - bound to. See https://github.com/Pylons/waitress/issues/131 for more - information. -- disable tests. need network access. - -------------------------------------------------------------------- -Fri May 20 11:27:26 UTC 2016 - dmueller@suse.com - -- update to 0.9.0: - * Security/Protections - - Building on the changes made in pull request 117, add in checking for line - feed/carriage return HTTP Response Splitting in the status line, as well as - the key of a header. See https://github.com/Pylons/waitress/pull/124 and - https://github.com/Pylons/waitress/issues/122. - - Waitress will no longer accept headers or status lines with - newline/carriage returns in them, thereby disallowing HTTP Response - Splitting. - * Bugfixes - - FileBasedBuffer and more important ReadOnlyFileBasedBuffer no longer report - False when tested with bool(), instead always returning True, and becoming - more iterator like. - - Call prune() on the output buffer at the end of a request so that it doesn't - continue to grow without bounds. - -------------------------------------------------------------------- -Fri Dec 12 22:08:09 UTC 2014 - tbechtold@suse.com - -- update to 0.8.9: - - Fix tests under Windows. NB: to run tests under Windows, you cannot run - "setup.py test" or "setup.py nosetests". Instead you must run ``python.exe - -c "import nose; nose.main()"``. If you try to run the tests using the - normal method under Windows, each subprocess created by the test suite will - attempt to run the test suite again. See - https://github.com/nose-devs/nose/issues/407 for more information. - - Give the WSGI app_iter generated when ``wsgi.file_wrapper`` is used - (ReadOnlyFileBasedBuffer) a ``close`` method. Do not call ``close`` on an - instance of such a class when it's used as a WSGI app_iter, however. This is - part of a fix which prevents a leakage of file descriptors; the other part of - the fix was in WebOb - (https://github.com/Pylons/webob/commit/951a41ce57bd853947f842028bccb500bd5237da). - - Allow trusted proxies to override ``wsgi.url_scheme`` via a request header, - ``X_FORWARDED_PROTO``. Allows proxies which serve mixed HTTP / HTTPS - requests to control signal which are served as HTTPS. See - https://github.com/Pylons/waitress/pull/42. - - Fix some cases where the creation of extremely large output buffers (greater - than 2GB, suspected to be buffers added via ``wsgi.file_wrapper``) might - cause an OverflowError on Python 2. See - https://github.com/Pylons/waitress/issues/47. - - When the ``url_prefix`` adjustment starts with more than one slash, all - slashes except one will be stripped from its beginning. This differs from - older behavior where more than one leading slash would be preserved in - ``url_prefix``. - - If a client somehow manages to send an empty path, we no longer convert the - empty path to a single slash in ``PATH_INFO``. Instead, the path remains - empty. According to RFC 2616 section "5.1.2 Request-URI", the scenario of a - client sending an empty path is actually not possible because the request URI - portion cannot be empty. - - If the ``url_prefix`` adjustment matches the request path exactly, we now - compute ``SCRIPT_NAME`` and ``PATH_INFO`` properly. Previously, if the - ``url_prefix`` was ``/foo`` and the path received from a client was ``/foo``, - we would set *both* ``SCRIPT_NAME`` and ``PATH_INFO`` to ``/foo``. This was - incorrect. Now in such a case we set ``PATH_INFO`` to the empty string and - we set ``SCRIPT_NAME`` to ``/foo``. Note that the change we made has no - effect on paths that do not match the ``url_prefix`` exactly (such as - ``/foo/bar``); these continue to operate as they did. See - https://github.com/Pylons/waitress/issues/46 - - Preserve header ordering of headers with the same name as per RFC 2616. See - https://github.com/Pylons/waitress/pull/44 - - When waitress receives a ``Transfer-Encoding: chunked`` request, we no longer - send the ``TRANSFER_ENCODING`` nor the ``HTTP_TRANSFER_ENCODING`` value to - the application in the environment. Instead, we pop this header. Since we - cope with chunked requests by buffering the data in the server, we also know - when a chunked request has ended, and therefore we know the content length. - We set the content-length header in the environment, such that applications - effectively never know the original request was a T-E: chunked request; it - will appear to them as if the request is a non-chunked request with an - accurate content-length. - - Cope with the fact that the ``Transfer-Encoding`` value is case-insensitive. - - When the ``--unix-socket-perms`` option was used as an argument to - ``waitress-serve``, a ``TypeError`` would be raised. See - https://github.com/Pylons/waitress/issues/50. -- Enable testsuite during build - -------------------------------------------------------------------- -Wed Sep 11 21:14:23 UTC 2013 - dmueller@suse.com - -- update to 0.8.7: - - The HTTP version of the response returned by waitress when it catches an - exception will now match the HTTP request version. - - Fix: CONNECTION header will be HTTP_CONNECTION and not CONNECTION_TYPE - (see https://github.com/Pylons/waitress/issues/13) - -------------------------------------------------------------------- -Tue Aug 13 10:15:30 UTC 2013 - dmueller@suse.com - -- update to 0.8.6: - - Do alternate type of checking for UNIX socket support, instead of checking - for platform == windows. - - - Functional tests now use multiprocessing module instead of subprocess module, - speeding up test suite and making concurrent execution more reliable. - - - Runner now appends the current working directory to ``sys.path`` to support - running WSGI applications from a directory (i.e., not installed in a - virtualenv). - -------------------------------------------------------------------- -Tue Jun 25 11:28:09 UTC 2013 - dmueller@suse.com - -- update to 0.8.5: - - Fix runner multisegment imports in some Python 2 revisions (see - https://github.com/Pylons/waitress/pull/34). - - For compatibility, WSGIServer is now an alias of TcpWSGIServer. The - signature of BaseWSGIServer is now compatible with WSGIServer pre-0.8.4. - - Add a command-line runner called ``waitress-serve`` to allow Waitress - to run WSGI applications without any addional machinery. This is - essentially a thin wrapper around the ``waitress.serve()`` function. - - Allow parallel testing (e.g., under ``detox`` or ``nosetests --processes``) - using PID-dependent port / socket for functest servers. - - Fix integer overflow errors on large buffers. Thanks to Marcin Kuzminski - for the patch. See: https://github.com/Pylons/waitress/issues/22 - - Add support for listening on Unix domain sockets. - -------------------------------------------------------------------- -Thu May 2 12:47:10 UTC 2013 - speilicke@suse.com - -- Fix license string - -------------------------------------------------------------------- -Mon Apr 29 14:14:25 UTC 2013 - speilicke@suse.com - -- Reduce buildrequires as long as the testsuite and doc build isn't fixed -- Package COPYRIGHT.txt LICENSE.txt README.rst - -------------------------------------------------------------------- -Mon Apr 29 13:06:10 UTC 2013 - dmueller@suse.com - -- Initial package (0.8.3) - +version https://git-lfs.github.com/spec/v1 +oid sha256:bdd66a5234a415676400ad8d0c27ee049e75ff6802c024288d28de0c568683e5 +size 10191 diff --git a/python-waitress.spec b/python-waitress.spec index 48d871a..3167710 100644 --- a/python-waitress.spec +++ b/python-waitress.spec @@ -1,7 +1,7 @@ # # spec file for package python-waitress # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,16 +20,25 @@ # Tests require a network connection %bcond_with tests Name: python-waitress -Version: 1.1.0 +Version: 1.2.1 Release: 0 Summary: Waitress WSGI server License: ZPL-2.1 Group: Development/Languages/Python URL: https://github.com/Pylons/waitress Source: https://files.pythonhosted.org/packages/source/w/waitress/waitress-%{version}.tar.gz +# intersphinx inventories, as fetched with fetch-intersphinx-inventories.sh +# https://docs.python.org/3/objects.inv -> python3.inv +Source1: python3.inv +Patch: local-intersphinx-inventories.patch BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: python-rpm-macros +# SECTION documentation requirements +BuildRequires: python3-Sphinx +BuildRequires: python3-docutils +BuildRequires: python3-pylons-sphinx-themes +# /SECTION BuildArch: noarch %if %{with tests} # Test requirements: @@ -41,17 +50,29 @@ BuildRequires: %{python_module nose} Waitress is meant to be a production-quality pure-Python WSGI server with very acceptable performance. It has no dependencies except ones which live in the Python standard library. It runs on CPython on Unix and Windows under Python -2.6+ and Python 3.2+. It is also known to run on PyPy 1.6.0+ on UNIX. It +2.7+ and Python 3.4+. It is also known to run on PyPy 1.6.0+ on UNIX. It supports HTTP/1.0 and HTTP/1.1. For more information, see the "docs" directory of the Waitress package or http://docs.pylonsproject.org/projects/waitress/en/latest/ . +%package doc +Summary: Documentation for %{name} +Group: Documentation/HTML +Requires: %{name} = %{version} + +%description doc +This package contains documentation files for %{name}. + %prep %setup -q -n waitress-%{version} +%patch -p1 +cp %{S:1} docs/ %build %python_build +export SPHINXOPTS=-vvv +python3 setup.py build_sphinx && rm build/sphinx/html/.buildinfo %install %python_install @@ -68,4 +89,8 @@ http://docs.pylonsproject.org/projects/waitress/en/latest/ . %python3_only %{_bindir}/waitress-serve %{python_sitelib}/* +%files %{python_files doc} +%license LICENSE.txt +%doc build/sphinx/html + %changelog diff --git a/python3.inv b/python3.inv new file mode 100644 index 0000000..99ffcde --- /dev/null +++ b/python3.inv @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c8b6fe404be5534e725ad69abf2a0f7deb6a2972b6500584df61102ce20d7fd +size 102981 diff --git a/waitress-1.1.0.tar.gz b/waitress-1.1.0.tar.gz deleted file mode 100644 index a73d8fa..0000000 --- a/waitress-1.1.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d33cd3d62426c0f1b3cd84ee3d65779c7003aae3fc060dee60524d10a57f05a9 -size 126131 diff --git a/waitress-1.2.1.tar.gz b/waitress-1.2.1.tar.gz new file mode 100644 index 0000000..53dcdb3 --- /dev/null +++ b/waitress-1.2.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c369e238bd81ef7d61f04825f06f107c42094de60d13d8de8e71952c7c683dfe +size 162588