Accepting request 705643 from devel:languages:python

- update to 0.15.4
- refreshed 0001_create_a_thread_to_reap_death_process.patch
- drop python-Werkzeug-doc package
- last stable update with long Changelog -> please see CHANGELOG.rst

OBS-URL: https://build.opensuse.org/request/show/705643
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-Werkzeug?expand=0&rev=23
This commit is contained in:
Dominique Leuenberger 2019-06-18 12:43:20 +00:00 committed by Git OBS Bridge
commit b037dfa7e1
7 changed files with 42 additions and 249 deletions

View File

@ -19,29 +19,28 @@ Fixes #810
werkzeug/serving.py | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
Index: Werkzeug-0.12.1/werkzeug/serving.py
Index: Werkzeug-0.15.4/src/werkzeug/serving.py
===================================================================
--- Werkzeug-0.12.1.orig/werkzeug/serving.py
+++ Werkzeug-0.12.1/werkzeug/serving.py
@@ -41,6 +41,7 @@ import os
--- Werkzeug-0.15.4.orig/src/werkzeug/serving.py
+++ Werkzeug-0.15.4/src/werkzeug/serving.py
@@ -41,6 +41,7 @@ import signal
import socket
import sys
import signal
+import threading
can_fork = hasattr(os, "fork")
@@ -562,13 +563,31 @@ class ForkingWSGIServer(ForkingMixIn, Ba
multiprocess = True
def __init__(self, host, port, app, processes=40, handler=None,
- passthrough_errors=False, ssl_context=None, fd=None):
+ passthrough_errors=False, ssl_context=None, fd=None,
+ frequency=5):
import werkzeug
from ._compat import PY2
from ._compat import reraise
@@ -775,6 +776,7 @@ class ForkingWSGIServer(ForkingMixIn, Ba
passthrough_errors=False,
ssl_context=None,
fd=None,
+ frequency=5,
):
if not can_fork:
raise ValueError('Your platform does not support forking.')
BaseWSGIServer.__init__(self, host, port, app, handler,
passthrough_errors, ssl_context, fd)
raise ValueError("Your platform does not support forking.")
@@ -783,6 +785,23 @@ class ForkingWSGIServer(ForkingMixIn, Ba
)
self.max_children = processes
+ if frequency:
@ -62,5 +61,5 @@ Index: Werkzeug-0.12.1/werkzeug/serving.py
+ self.setup_reap_children()
+
def make_server(host=None, port=None, app=None, threaded=False, processes=1,
request_handler=None, passthrough_errors=False,
def make_server(
host=None,

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c3fd7a7d41976d9f44db327260e263132466836cef6f91512889ed60ad26557c
size 1185546

3
Werkzeug-0.15.4.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a0b915f0815982fb2a09161cb8f31708052d0951c3ba433ccc5e1aa276507ca6
size 925334

View File

@ -1,158 +0,0 @@
-------------------------------------------------------------------
Wed Jan 3 23:07:03 UTC 2018 - arun@gmx.de
- specfile:
* update copyright year
- update to version 0.14.1:
* Resolved a regression with status code handling in the integrated
development server.
- changes from version 0.14:
* HTTP exceptions are now automatically caught by
Request.application.
* Added support for edge as browser.
* Added support for platforms that lack SpooledTemporaryFile.
* Add support for etag handling through if-match
* Added support for the SameSite cookie attribute.
* Added werkzeug.wsgi.ProxyMiddleware
* Implemented has for NullCache
* get_multi on cache clients now returns lists all the time.
* Improved the watchdog observer shutdown for the reloader to not
crash on exit on older Python versions.
* Added support for filename* filename attributes according to RFC
2231
* Resolved an issue where machine ID for the reloader PIN was not
read accurately on windows.
* Added a workaround for syntax errors in init files in the
reloader.
* Added support for using the reloader with console scripts on
windows.
* The built-in HTTP server will no longer close a connection in
cases where no HTTP body is expected (204, 204, HEAD requests
etc.)
* The EnvironHeaders object now skips over empty content type and
lengths if they are set to falsy values.
* Werkzeug will no longer send the content-length header on 1xx or
204/304 responses.
* Cookie values are now also permitted to include slashes and equal
signs without quoting.
* Relaxed the regex for the routing converter arguments.
* If cookies are sent without values they are now assumed to have an
empty value and the parser accepts this. Previously this could
have corrupted cookies that followed the value.
* The test Client and EnvironBuilder now support mimetypes like the
request object does.
* Added support for static weights in URL rules.
* Better handle some more complex reloader scenarios where sys.path
contained non directory paths.
* EnvironHeaders no longer raises weird errors if non string keys
are passed to it.
-------------------------------------------------------------------
Fri Dec 8 18:07:40 UTC 2017 - arun@gmx.de
- specfile:
* added CHANGES.rst and README.rst to %doc section
* require requests and hypothesis for tests
- update to version 0.13:
* Deprecate support for Python 2.6 and 3.3. CI tests will not run
for these versions, and support will be dropped completely in the
next version. (pallets/meta#24)
* Raise TypeError when port is not an integer. (#1088)
* Fully deprecate werkzeug.script. Use Click instead. (#1090)
* response.age is parsed as a timedelta. Previously, it was
incorrectly treated as a datetime. The header value is an integer
number of seconds, not a date string. (#414)
* Fix a bug in TypeConversionDict where errors are not propagated
when using the converter. (#1102)
* Authorization.qop is a string instead of a set, to comply with RFC
2617. (#984)
* An exception is raised when an encoded cookie is larger than, by
default, 4093 bytes. Browsers may silently ignore cookies larger
than this. BaseResponse has a new attribute max_cookie_size and
dump_cookie has a new argument max_size to configure this. (#780,
#1109)
* Fix a TypeError in
werkzeug.contrib.lint.GuardedIterator.close. (#1116)
* BaseResponse.calculate_content_length now correctly works for
Unicode responses on Python 3. It first encodes using
iter_encoded. (#705)
* Secure cookie contrib works with string secret key on Python
3. (#1205)
* Shared data middleware accepts a list instead of a dict of static
locations to preserve lookup order. (#1197)
* HTTP header values without encoding can contain single
quotes. (#1208)
* The built-in dev server supports receiving requests with chunked
transfer encoding. (#1198)
-------------------------------------------------------------------
Tue Aug 8 19:29:05 UTC 2017 - tbechtold@suse.com
- update to 0.12.2:
- Fix regression: Pull request ``#892`` prevented Werkzeug from correctly
logging the IP of a remote client behind a reverse proxy, even when using
`ProxyFix`.
- Fix a bug in `safe_join` on Windows.
-------------------------------------------------------------------
Tue Apr 4 15:47:05 UTC 2017 - jmatejek@suse.com
- update to 0.12.1
- use python3-Sphinx for build
-------------------------------------------------------------------
Thu Sep 15 23:08:05 UTC 2016 - toddrme2178@gmail.com
- update to version 0.11.11:
* Fix JSONRequestMixin for Python3. See #731
* Fix broken string handling in test client when passing
integers. See #852
* Fix a bug in "parse_options_header" where an invalid content type
starting with comma or semi-colon would result in an invalid
return value, see issue "#995".
* Fix a bug in multidicts when passing empty lists as values, see
issue "#979".
* Fix a security issue that allows XSS on the Werkzeug debugger. See
"#1001".
- update to version 0.11.10:
* Fixed a bug that occurs when running on Python 2.6 and using a
broken locale. See pull request #912.
* Fixed a crash when running the debugger on Google App Engine. See
issue #925.
* Fixed an issue with multipart parsing that could cause memory
exhaustion.
- Update to 0.11.9
- Corrected an issue that caused the debugger not to use the
machine GUID on POSIX systems.
- Corrected an Unicode error on Python 3 for the debugger's
PIN usage.
- Corrected the timestamp verification in the pin debug code.
Without this fix the pin was remebered until too long.
- update to version 0.11.8:
* fixed a problem with the machine GUID detection code on OS X on
Python 3.
- changes from version 0.11.7:
* fixed a regression on Python 3 for the debugger.
- changes from version 0.11.6:
* werkzeug.serving: Still show the client address on bad requests.
* improved the PIN based protection for the debugger to make it
harder to brute force via trying cookies. Please keep in mind
that the debugger *is not intended for running on production
environments*
* increased the pin timeout to a week to make it less annoying for
people which should decrease the change that users disable the pin
check entirely.
* werkzeug.serving: Fix broken HTTP_HOST when path starts with
double slash.
- update to version 0.11.5:
* werkzeug.serving: Fix crash when attempting SSL connection to HTTP
server.
- update to version 0.11.4:
* Fixed werkzeug.serving not working from -m flag.
* Fixed incorrect weak etag handling.
- Rebase 0001_create_a_thread_to_reap_death_process.patch
- Split documentation into own subpackage to speed up build.

View File

@ -1,54 +0,0 @@
#
# spec file for package python-Werkzeug-doc
#
# Copyright (c) 2018 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-Werkzeug-doc
Version: 0.14.1
Release: 0
Summary: Documentation for python-Werkzeug
License: BSD-3-Clause
Group: Documentation/Other
URL: http://werkzeug.pocoo.org/
Source: https://files.pythonhosted.org/packages/source/W/Werkzeug/Werkzeug-%{version}.tar.gz
BuildRequires: python3-Sphinx
BuildRequires: python3-Werkzeug = %{version}
BuildRequires: python3-setuptools
Provides: %{python_module Werkzeug-doc = %{version}}
BuildArch: noarch
%description
Documentation and examples for python-Werkzeug
%prep
%setup -q -n Werkzeug-%{version}
sed -i "s/\r//" LICENSE # Fix wrong EOL-encoding
sed -i "1d" examples/manage-{i18nurls,simplewiki,shorty,couchy,cupoftee,webpylike,plnt,coolmagic}.py # Fix non-executable scripts
%build
# Not needed
%install
cd docs && make html && rm -rf _build/html/.buildinfo # Build HTML Documentation
%files
%license LICENSE
%doc AUTHORS README.rst CHANGES.rst
%doc docs/_build/html
%doc examples
%changelog

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Mon May 27 08:43:55 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.4
- refreshed 0001_create_a_thread_to_reap_death_process.patch
- drop python-Werkzeug-doc package
- last stable update with long Changelog -> please see CHANGELOG.rst
-------------------------------------------------------------------
Thu May 10 15:44:58 UTC 2018 - toddrme2178@gmail.com

View File

@ -1,7 +1,7 @@
#
# spec file for package python-Werkzeug
#
# 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
@ -12,14 +12,14 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define oldpython python
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-Werkzeug
Version: 0.14.1
Version: 0.15.4
Release: 0
Summary: The Swiss Army knife of Python web development
License: BSD-3-Clause
@ -32,15 +32,15 @@ BuildRequires: %{python_module hypothesis}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module requests}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildRequires: python2
BuildArch: noarch
%if 0%{?suse_version} >= 1000 || 0%{?fedora_version} >= 24
Recommends: python-termcolor
Recommends: python-watchdog
%endif
Obsoletes: python-Werkzeug-doc < %{version}
Provides: python-Werkzeug-doc = %{version}
%ifpython2
Requires: python2
Provides: %{oldpython}-werkzeug = %{version}
Obsoletes: %{oldpython}-werkzeug < %{version}
%endif
@ -63,7 +63,6 @@ bulletin boards, etc.).
%prep
%setup -q -n Werkzeug-%{version}
sed -i "s/\r//" LICENSE # Fix wrong EOL-encoding
sed -i "1d" examples/manage-{i18nurls,simplewiki,shorty,couchy,cupoftee,webpylike,plnt,coolmagic}.py # Fix non-executable scripts
%patch0 -p1
@ -72,17 +71,16 @@ sed -i "1d" examples/manage-{i18nurls,simplewiki,shorty,couchy,cupoftee,webpylik
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%{python_expand export LANG=en_US.UTF-8
export LANG=en_US.UTF-8
export PYTHONDONTWRITEBYTECODE=1
export PYTHONPATH=%{buildroot}%{$python_sitelib}
$python -m pytest
}
%pytest
%files %{python_files}
%license LICENSE
%doc AUTHORS CHANGES.rst
%license LICENSE.rst
%doc CHANGES.rst README.rst
%{python_sitelib}/*
%changelog