forked from pool/python-WebOb
- Update to 1.8.2:
- SameSite may now be passed as str or bytes to `Response.set_cookie` and
`cookies.make_cookie`. This was an oversight as all other arguments would be
correctly coerced before being serialized. See
https://github.com/Pylons/webob/issues/361 and
https://github.com/Pylons/webob/pull/362
- acceptparse.MIMEAccept which is deprecated in WebOb 1.8.0 made a backwards
incompatible change that led to it raising on an invalid Accept header. This
behaviour has now been reversed, as well as some other fixes to allow
MIMEAccept to behave more like the old version. See
https://github.com/Pylons/webob/pull/356
- ``request.POST`` now supports any requests with the appropriate
Content-Type. Allowing any HTTP method to access form encoded content,
including DELETE, PUT, and others. See
https://github.com/Pylons/webob/pull/352
- WebOb is no longer officially supported on Python 3.3 which was EOL'ed on
2017-09-29.
- Many changes have been made to the way WebOb does Accept handling, not just
for the Accept header itself, but also for Accept-Charset, Accept-Encoding
and Accept-Language. This was a `Google Summer of Code
<https://developers.google.com/open-source/gsoc/>`_ project completed by
Whiteroses (https://github.com/whiteroses). Many thanks to Google for running
GSoC, the Python Software Foundation for organising and a huge thanks to Ira
for completing the work. See https://github.com/Pylons/webob/pull/338 and
https://github.com/Pylons/webob/pull/335. Documentation is available at
https://docs.pylonsproject.org/projects/webob/en/master/api/webob.html
- The cookie APIs now have the ability to set the SameSite attribute on a
cookie in both ``webob.cookies.make_cookie`` and
``webob.cookies.CookieProfile``. See https://github.com/Pylons/webob/pull/255
- Exceptions now use string.Template.safe_substitute rather than
string.Template.substitute. The latter would raise for missing mappings, the
former will simply not substitute the missing variable. This is safer in case
the WSGI environ does not contain the keys necessary for the body template.
See https://github.com/Pylons/webob/issues/345.
- Request.host_url, Request.host_port, Request.domain correctly parse IPv6 Host
headers as provided by a browser. See
https://github.com/Pylons/webob/pull/332
- Request.authorization would raise ValueError for unusual or malformed header
values. See https://github.com/Pylons/webob/issues/231
- Allow unnamed fields in form data to be properly transcoded when calling
request.decode with an alternate encoding. See
https://github.com/Pylons/webob/pull/309
- ``Response.__init__`` would discard ``app_iter`` when a ``Response`` had no
body, this would cause issues when ``app_iter`` was an object that was tied
to the life-cycle of a web application and had to be properly closed.
``app_iter`` is more advanced API for ``Response`` and thus even if it
contains a body and is thus against the HTTP RFC's, we should let the users
shoot themselves by returning a body. See
https://github.com/Pylons/webob/issues/305
- When calling a ``@wsgify`` decorated function, the default arguments passed
to ``@wsgify`` are now used when called with the request, and not as a
`start_response`
.. code::
def hello(req, name):
return "Hello, %s!" % name
app = wsgify(hello, args=("Fred",))
req = Request.blank('/')
resp = req.get_response(app) # => "Hello, Fred"
resp2 = app(req) # => "Hello, Fred"
Previously the ``resp2`` line would have failed with a ``TypeError``. With
this change there is no way to override the default arguments with no
arguments. See https://github.com/Pylons/webob/pull/203
- When setting ``app_iter`` on a ``Response`` object the ``content_md5`` header
is no longer cleared. This behaviour is odd and disallows setting the
``content_md5`` and then returning an iterator for chunked content encoded
responses. See https://github.com/Pylons/webob/issues/86
OBS-URL: https://build.opensuse.org/request/show/628333
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-WebOb?expand=0&rev=47
83 lines
2.4 KiB
RPMSpec
83 lines
2.4 KiB
RPMSpec
#
|
|
# spec file for package python-WebOb
|
|
#
|
|
# 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-%{**}}
|
|
%define oldpython python
|
|
Name: python-WebOb
|
|
Version: 1.8.2
|
|
Release: 0
|
|
Summary: WSGI request and response object
|
|
License: MIT
|
|
Group: Development/Languages/Python
|
|
Url: http://webob.org/
|
|
Source: https://pypi.io/packages/source/W/WebOb/WebOb-%{version}.tar.gz
|
|
BuildRequires: %{python_module devel}
|
|
BuildRequires: %{python_module pytest}
|
|
BuildRequires: %{python_module setuptools}
|
|
BuildRequires: python-rpm-macros
|
|
# Documentation requirements:
|
|
BuildRequires: python3-Sphinx
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
%ifpython2
|
|
Obsoletes: %{oldpython}-webob < %{version}
|
|
Provides: %{oldpython}-webob = %{version}
|
|
%endif
|
|
BuildArch: noarch
|
|
|
|
%python_subpackages
|
|
|
|
%description
|
|
WebOb provides wrappers around the WSGI request environment, and an
|
|
object to help create WSGI responses.
|
|
|
|
The objects map much of the specified behavior of HTTP, including
|
|
header parsing and accessors for other standard parts of the
|
|
environment.
|
|
|
|
%package -n python-WebOb-doc
|
|
Summary: WSGI request and response object - Documentation
|
|
Group: Documentation/HTML
|
|
Provides: %{python_module WebOb-doc = %{version}}
|
|
|
|
%description -n python-WebOb-doc
|
|
This package contains documentation files for %{name}.
|
|
|
|
%prep
|
|
%setup -q -n WebOb-%{version}
|
|
|
|
%build
|
|
%python_build
|
|
PYTHONPATH=./src %__python3 setup.py build_sphinx && rm build/sphinx/html/.buildinfo
|
|
|
|
%install
|
|
%python_install
|
|
|
|
%check
|
|
%python_exec setup.py test
|
|
|
|
%files %python_files
|
|
%defattr(-,root,root,-)
|
|
%doc docs/license.txt
|
|
%{python_sitelib}/*
|
|
|
|
%files -n python-WebOb-doc
|
|
%defattr(-,root,root,-)
|
|
%doc build/sphinx/html
|
|
|
|
%changelog
|