We have some news to share for the request index beta feature. We’ve added more options to sort your requests, counters to the individual filters and documentation for the search functionality. Checkout the blog post for more details.

File python-tornado.spec of Package python-tornado.42131

#
# spec file for package python-tornado
#
# 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/
#


%bcond_without python2
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name:           python-tornado
Version:        4.5.3
Release:        0
Summary:        Open source version of scalable, non-blocking web server that power FriendFeed
License:        Apache-2.0
Group:          Development/Languages/Python
Url:            http://www.tornadoweb.org
Source:         https://files.pythonhosted.org/packages/source/t/tornado/tornado-%{version}.tar.gz
Patch0:         tornado-async-deprecations.patch
Patch1:         tornado-testsuite_timeout.patch
Patch2:         tornado-skip-failing-tests.patch
# PATFH-FIX-UPSTREAM tornado-Fix-an-open-redirect-in-StaticFileHandler.patch CVE-2023-28370 bsc#1211741 qzhao@suse.com -- Fix an open redirect in StaticFileHandler.
Patch3:         tornado-Fix-an-open-redirect-in-StaticFileHandler.patch
# PATCH-FIX-UPSTREAM CVE-2025-47287.patch bsc#1243268 gh#tornadoweb/tornado#3497
Patch4:         CVE-2025-47287.patch
# PATCH-FIX-UPSTREAM CVE-2025-67725.patch bsc#1254905
Patch5:         CVE-2025-67725.patch
# PATCH-FIX-UPSTREAM CVE-2025-67726.patch bsc#1254904
Patch6:         CVE-2025-67726.patch
BuildRequires:  %{python_module devel}
BuildRequires:  %{python_module pycurl}
BuildRequires:  %{python_module setuptools}
BuildRequires:  %{python_module simplejson}
BuildRequires:  fdupes
BuildRequires:  python-rpm-macros
Requires:       python
Requires:       python-simplejson
%if 0%{?suse_version} >= 1000 || 0%{?fedora_version} >= 24
Recommends:     python-Twisted
Recommends:     python-pycares
Recommends:     python-pycurl
Recommends:     python-service_identity
%endif
%if 0%{?sle_version} == 120000 && !0%{?is_opensuse}
BuildRequires:  %{python_module backports.ssl_match_hostname}
BuildRequires:  %{python_module certifi}
%endif
%if %{with python2}
BuildRequires:  python-futures
BuildRequires:  python-singledispatch
%endif
# SECTION test requirements
BuildRequires:  %{python_module backports_abc}
# /SECTION
%if %{python_version_nodots} < 35
Requires:       python-backports_abc
%endif
%ifpython2
Requires:       python-singledispatch
%if 0%{?suse_version} >= 1000 || 0%{?fedora_version} >= 24
Recommends:     python-futures
%endif
%endif
%python_subpackages

%description
Tornado is an open source version of the scalable, non-blocking web server and
tools that power FriendFeed. The FriendFeed application is written using a web
framework that looks a bit like web.py or Google's webapp, but with additional
tools and optimizations to take advantage of the underlying non-blocking
infrastructure.

The framework is distinct from most mainstream web server frameworks (and
certainly most Python frameworks) because it is non-blocking and reasonably
fast. Because it is non-blocking and uses epoll, it can handle thousands of
simultaneous standing connections, which means it is ideal for real-time web
services. We built the web server specifically to handle FriendFeed's real-time
features — every active user of FriendFeed maintains an open connection to the
FriendFeed servers. (For more information on scaling servers to support
thousands of clients, see The C10K problem.)

%prep
%setup -q -n tornado-%{version}
# Fix non-executable script rpmlint issue:
find demos tornado -name "*.py" -exec sed -i "/#\!\/usr\/bin\/.*/d" {} \;
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1

%pre
# remove egg-info _file_, being replaced by an egg-info directory
if [ -f %{python_sitearch}/tornado-%{version}-py%{python_version}.egg-info ]; then
    rm %{python_sitearch}/tornado-%{version}-py%{python_version}.egg-info
fi

%build
%python_build

%install
%python_install
%fdupes -s demos
%python_expand %fdupes %{buildroot}%{python_sitearch}

%check
export ASYNC_TEST_TIMEOUT=30
%python_exec -m tornado.test.runtests

%files %{python_files}
%doc demos
%license LICENSE
%{python_sitearch}/tornado
%{python_sitearch}/tornado-%{version}-py*.egg-info

%changelog
openSUSE Build Service is sponsored by