From 07454907d7bbab37fc7765cd3b5424575be360e9 Mon Sep 17 00:00:00 2001
From: Kevin Fenzi <kevin(a)scrye.com>
Date: Mon, 17 Apr 2017 09:28:00 -0600
Subject: Modernize spec and make sure to provide python2-jwt
---
allow-newer-pytest.patch | 12 +++++++
python-jwt.spec | 89 ++++++++++++++++++++++--------------------------
2 files changed, 52 insertions(+), 49 deletions(-)
create mode 100644 allow-newer-pytest.patch
diff --git a/allow-newer-pytest.patch b/allow-newer-pytest.patch
new file mode 100644
index 0000000..b3dd221
--- /dev/null
+++ b/allow-newer-pytest.patch
@@ -0,0 +1,12 @@
+diff -Nur PyJWT-1.4.2.orig/setup.py PyJWT-1.4.2/setup.py
+--- PyJWT-1.4.2.orig/setup.py 2016-06-29 22:07:44.000000000 -0600
++++ PyJWT-1.4.2/setup.py 2017-04-17 09:05:19.783324336 -0600
+@@ -30,7 +30,7 @@
+ sys.exit()
+
+ tests_require = [
+- 'pytest==2.7.3',
++ 'pytest',
+ 'pytest-cov',
+ 'pytest-runner',
+ ]
diff --git a/python-jwt.spec b/python-jwt.spec
index 764b937..35e3a00 100644
--- a/python-jwt.spec
+++ b/python-jwt.spec
@@ -2,35 +2,30 @@
%global with_python3 1
%endif
-# Use the same directory of the main package for subpackage licence and docs
-%global _docdir_fmt %{name}
-
-%{!?_licensedir: %global license %%doc}
-
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{!?__python2: %global __python2 /usr/bin/python2}
-%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from
distutils.sysconfig import get_python_lib; print(get_python_lib())")}
-%endif
-
-%global modname jwt
+%global srcname jwt
+%global sum JSON Web Token implementation in Python
Name: python-jwt
Version: 1.4.2
-Release: 3%{?dist}
-Summary: JSON Web Token implementation in Python
+Release: 4%{?dist}
+Summary: %{sum}
Group: Development/Libraries
License: MIT
URL:
http://pypi.python.org/pypi/pyjwt
Source0:
https://pypi.python.org/packages/source/P/PyJWT/PyJWT-%{version}.tar.gz
+#
+# Upstream hard coded a specific version of pytest to avoid a bug
+# However, that bug is long since fixed upstream
+#
+Patch0: allow-newer-pytest.patch
BuildArch: noarch
BuildRequires: python2-devel
BuildRequires: python-setuptools
BuildRequires: python-cryptography
-Requires: python-cryptography
-BuildRequires: pytest
+BuildRequires: python2-pytest
BuildRequires: python-pytest-cov
BuildRequires: python-pytest-runner
@@ -50,13 +45,24 @@ means of representing signed content using JSON data structures,
including
claims to be transferred between two parties encoded as digitally signed and
encrypted JSON objects.
+%package -n python2-%{srcname}
+Summary: %{sum}
+Requires: python-cryptography
+%{?python_provide:%python_provide python2-%{srcname}}
+
+%description -n python2-%{srcname}
+A Python implementation of JSON Web Token draft 01. This library provides a
+means of representing signed content using JSON data structures, including
+claims to be transferred between two parties encoded as digitally signed and
+encrypted JSON objects.
+
%if 0%{?with_python3}
-%package -n python3-jwt
-Summary: JSON Web Token implementation in Python
-Group: Development/Libraries
-Requires: python3-cryptography
+%package -n python3-%{srcname}
+Summary: %{sum}
+%{?python_provide:%python_provide python3-%{srcname}}
+Requires: python3-cryptography
-%description -n python3-jwt
+%description -n python3-%{srcname}
A Python3 implementation of JSON Web Token draft 01. This library provides a
means of representing signed content using JSON data structures, including
claims to be transferred between two parties encoded as digitally signed and
@@ -64,60 +70,45 @@ encrypted JSON objects.
%endif
%prep
-%setup -q -n PyJWT-%{version}
-
-# Remove bundled egg-info in case it exists
-rm -rf %{modname}.egg-info
-find . -name "*.pyc" -exec rm -rf {} \; || echo;
-find . -name "__pycache__" -exec rm -rf {} \; || echo;
-
-%if 0%{?with_python3}
-rm -rf %{py3dir}
-cp -a . %{py3dir}
-%endif
+%autosetup -n PyJWT-%{version}
%build
-%{__python2} setup.py build
+%py2_build
%if 0%{?with_python3}
-pushd %{py3dir}
-%{__python3} setup.py build
-popd
+%py3_build
%endif
%install
+%py2_install
%if 0%{?with_python3}
-pushd %{py3dir}
-%{__python3} setup.py install -O1 --skip-build --root=%{buildroot}
-mv %{buildroot}%{_bindir}/jwt %{buildroot}%{_bindir}/python3-jwt
-popd
+%py3_install
%endif
-%{__python2} setup.py install -O1 --skip-build --root=%{buildroot}
%check
-py.test .
+%{__python2} setup.py test
%if 0%{?with_python3}
-pushd %{py3dir}
-py.test-%{python3_version} .
-popd
+%{__python3} setup.py test
%endif
-%files
+%files -n python2-jwt
%doc README.md AUTHORS
%license LICENSE
-%{python2_sitelib}/%{modname}/
+%{python2_sitelib}/%{srcname}/
%{python2_sitelib}/PyJWT-%{version}*
-%{_bindir}/jwt
%if 0%{?with_python3}
%files -n python3-jwt
%doc README.md AUTHORS
%license LICENSE
-%{python3_sitelib}/%{modname}/
+%{python3_sitelib}/%{srcname}/
%{python3_sitelib}/PyJWT-%{version}*
-%{_bindir}/python3-jwt
+%{_bindir}/jwt
%endif
%changelog
+* Mon Apr 17 2017 Kevin Fenzi <kevin(a)scrye.com> - 1.4.2-4
+- Modernize spec and make sure to provide python2-jwt
+
* Sat Feb 11 2017 Fedora Release Engineering <releng(a)fedoraproject.org> - 1.4.2-3
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
--
cgit v1.1
https://src.fedoraproject.org/cgit/python-jwt.git/commit/?h=f26&id=07...