15
0
forked from pool/python-WebOb
Files
python-WebOb/python-WebOb.spec

84 lines
2.5 KiB
RPMSpec
Raw Normal View History

#
# 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.
- Spec cleanup: * Simplified macro usage * Remove unneeded runtime requirement on python-nose * Run testsuite - Update to version 1.2b2: * Fix request.cookies.get('name', 'default'). Previously default was ignored. - Changes from version 1.2b1: * Mutating the request.cookies property now reflects the mutations into the HTTP_COOKIES environ header. * Response.etag = (tag, False) sets weak etag. * Range only parses single range now. * Range.satisfiable(..) is gone. * Accept.best_matches() is gone; use list(request.accept) or request.accept.best_match(..) instead (applies to all Accept-* headers) or similar with request.accept_language. * Response.request and Response.environ attrs are undeprecated and no longer raise exceptions when used. These can also be passed to the Response constructor. This is to support codebases that pass them to the constructor or assign them to a response instance. However, some behavior differences from 1.1 exist. In particular, synchronization is no longer done between environ and request attribute properties of Response; you may pass either to the constructor (or both) or assign one or the other or both, but they wont be managed specially and will remain the same over the lifetime of the response just as you passed them. Default values for both request and environ on any given response are None now. * Undeprecated uscript_name and upath_info. * For backwards compatibility purposes, switch req.script_name and path_info back again to contain “raw” undecoded native strings rather than text. Use uscript_name and upath_info to get the text version of SCRIPT_NAME and PATH_INFO. * Don’t raise an exception if unicode_errors or decode_param_names is passed to the Request constructor. Instead, emit a warning. For benefit of Pylons 1.X, which passes both. * Don’t raise an exception if HTTPException.exception is used; instead emit a warning. For benefit of Pylons 1.X, which uses it. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-WebOb?expand=0&rev=5
2012-01-31 13:46:38 +00:00
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define oldpython python
Name: python-WebOb
Accepting request 628333 from home:comurphy:branches:devel:languages:python - 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
2018-08-09 06:52:50 +00:00
Version: 1.8.2
Release: 0
Summary: WSGI request and response object
- Spec cleanup: * Simplified macro usage * Remove unneeded runtime requirement on python-nose * Run testsuite - Update to version 1.2b2: * Fix request.cookies.get('name', 'default'). Previously default was ignored. - Changes from version 1.2b1: * Mutating the request.cookies property now reflects the mutations into the HTTP_COOKIES environ header. * Response.etag = (tag, False) sets weak etag. * Range only parses single range now. * Range.satisfiable(..) is gone. * Accept.best_matches() is gone; use list(request.accept) or request.accept.best_match(..) instead (applies to all Accept-* headers) or similar with request.accept_language. * Response.request and Response.environ attrs are undeprecated and no longer raise exceptions when used. These can also be passed to the Response constructor. This is to support codebases that pass them to the constructor or assign them to a response instance. However, some behavior differences from 1.1 exist. In particular, synchronization is no longer done between environ and request attribute properties of Response; you may pass either to the constructor (or both) or assign one or the other or both, but they wont be managed specially and will remain the same over the lifetime of the response just as you passed them. Default values for both request and environ on any given response are None now. * Undeprecated uscript_name and upath_info. * For backwards compatibility purposes, switch req.script_name and path_info back again to contain “raw” undecoded native strings rather than text. Use uscript_name and upath_info to get the text version of SCRIPT_NAME and PATH_INFO. * Don’t raise an exception if unicode_errors or decode_param_names is passed to the Request constructor. Instead, emit a warning. For benefit of Pylons 1.X, which passes both. * Don’t raise an exception if HTTPException.exception is used; instead emit a warning. For benefit of Pylons 1.X, which uses it. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-WebOb?expand=0&rev=5
2012-01-31 13:46:38 +00:00
License: MIT
Group: Development/Languages/Python
URL: http://webob.org/
Source: https://files.pythonhosted.org/packages/source/W/WebOb/WebOb-%{version}.tar.gz
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: python-rpm-macros
# Documentation requirements:
BuildRequires: fdupes
BuildRequires: python3-Sphinx
BuildArch: noarch
%ifpython2
# We need SSL support
BuildRequires: %{oldpython}
Requires: %{oldpython}
Obsoletes: %{oldpython}-webob < %{version}
Provides: %{oldpython}-webob = %{version}
%endif
%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
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%python_expand PYTHONPATH=%{buildroot}%{$python_sitelib} py.test-%{$python_version}
%files %{python_files}
%license docs/license.txt
%doc CHANGES.txt README.rst
%{python_sitelib}/*
%files -n python-WebOb-doc
%doc build/sphinx/html
%changelog