[packages/python-pycryptodomex] - updated to 3.19.0, build apidocs

qboosh qboosh at pld-linux.org
Sun Nov 19 14:08:52 CET 2023


commit 2d534fe968d14649ad374e500462f95147d65758
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Nov 19 13:17:26 2023 +0100

    - updated to 3.19.0, build apidocs

 python-pycryptodomex.spec | 140 +++++++++++++++++++++++++++++++++-------------
 1 file changed, 100 insertions(+), 40 deletions(-)
---
diff --git a/python-pycryptodomex.spec b/python-pycryptodomex.spec
index b1c95a7..2cd799c 100644
--- a/python-pycryptodomex.spec
+++ b/python-pycryptodomex.spec
@@ -1,44 +1,43 @@
 # Conditional build:
-%bcond_with	doc	# API documentation
+%bcond_without	doc	# API documentation
 %bcond_without	tests	# unit tests
 %bcond_without	python2 # CPython 2.x module
 %bcond_without	python3 # CPython 3.x module
 
 %define		module	pycryptodomex
 Summary:	Package of low-level cryptographic primitives
+Summary(pl.UTF-8):	Pakiet niskopoziomowych funkcji kryptograficznych
 Name:		python-%{module}
-Version:	3.10.1
-Release:	4
+Version:	3.19.0
+Release:	1
 License:	BSD
 Group:		Libraries/Python
-Source0:	https://pypi.debian.net/%{module}/%{module}-%{version}.tar.gz
-# Source0-md5:	91b86ca7fa80d41179d7735067c7347a
+Source0:	https://files.pythonhosted.org/packages/source/p/pycryptodomex/%{module}-%{version}.tar.gz
+# Source0-md5:	0dc96e1ffb42c955d89c2ce3f3875c9c
 URL:		https://www.pycryptodome.org/
 %if %{with python2}
-BuildRequires:	python-devel >= 1:2.5
-%if %{with tests}
-#BuildRequires:	python-
-%endif
+BuildRequires:	python-devel >= 1:2.7
+BuildRequires:	python-setuptools
 %endif
 %if %{with python3}
-BuildRequires:	python3-devel >= 1:3.2
-%if %{with tests}
-#BuildRequires:	python3-
-%endif
+BuildRequires:	python3-devel >= 1:3.5
+BuildRequires:	python3-setuptools
 %endif
+BuildRequires:	rpm-build >= 4.6
 BuildRequires:	rpm-pythonprov
 BuildRequires:	rpmbuild(macros) >= 1.714
 %if %{with doc}
-BuildRequires:	sphinx-pdg-3
+BuildRequires:	python3-sphinx_rtd_theme
+BuildRequires:	sphinx-pdg-3 >= 4.5
+# >= 7.1.0 when available
 %endif
-Requires:	python-modules >= 1:2.5
+Requires:	python-modules >= 1:2.7
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 PyCryptodomex is a fork of PyCrypto. It brings the following
 enhancements with respect to the last official version of PyCrypto
 (2.6.1):
-
 - Authenticated encryption modes (GCM, CCM, EAX, SIV, OCB)
 - Accelerated AES on Intel platforms via AES-NI
 - First class support for PyPy
@@ -62,16 +61,41 @@ enhancements with respect to the last official version of PyCrypto
 - Cleaner RSA and DSA key generation (largely based on FIPS 186-4)
 - Major clean ups and simplification of the code base
 
+%description -l pl.UTF-8
+PyCryptodomex to odgałęzienie PyCrypto. Dostarcza następujące
+rozszerzenia w stosunku do ostatniej oficjalnej wersji PyCrypto
+(2.6.1):
+- uwierzytelniane tryby szyfrowania (GCM, CCM, EAX, SIV, OCB)
+- akcelerowane szyfrowanie AES na platformach Intela poprzez AES-NI
+- dobra obsługa PyPy
+- kryptografia krzywych eliptycznych (tylko NIST P-256, P-384, P-521)
+- lepsze i bardziej kompaktowe API (atrybuty nonce i iv dla szyfrów,
+  automatyczne generowanie losowych nonce i IV, uproszczony tryb
+  szyfrowania CTR itp.)
+- SHA-3 (w tym SHAKE XOF), skrócone algorytmy SHA-512 i BLAKE2
+- szyfry strumieniowe Salsa20 i ChaCha20/XChaCha20
+- MAC Poly1305
+- szyfry uwierzytelniane ChaCha20-Poly1305 i XChaCha20-Poly1305
+- funkcje pochodne scrypt, bcrypt i HKDF
+- deterministyczne (EC)DSA
+- kontenery kluczy PKCS#8 chronione hasłem
+- schemat Shamir's Secret Sharing
+- liczby losowe pochodzące bezpośrednio z systemu operacyjnego
+  (zamiast CSPRNG w przestrzeni użytkownika)
+- uproszczony proces instalacji, w tym lepsza obsługa Windows
+- czystsze generowanie kluczy RSA i DSA (oparte głównie na FIPS 186-4)
+- spore oczyszczenie i uproszczenie kodu
+
 %package -n python3-%{module}
 Summary:	Package of low-level cryptographic primitives
+Summary(pl.UTF-8):	Pakiet niskopoziomowych funkcji kryptograficznych
 Group:		Libraries/Python
-Requires:	python3-modules >= 1:3.2
+Requires:	python3-modules >= 1:3.5
 
 %description -n python3-%{module}
 PyCryptodomex is a fork of PyCrypto. It brings the following
 enhancements with respect to the last official version of PyCrypto
 (2.6.1):
-
 - Authenticated encryption modes (GCM, CCM, EAX, SIV, OCB)
 - Accelerated AES on Intel platforms via AES-NI
 - First class support for PyPy
@@ -95,6 +119,31 @@ enhancements with respect to the last official version of PyCrypto
 - Cleaner RSA and DSA key generation (largely based on FIPS 186-4)
 - Major clean ups and simplification of the code base
 
+%description -n python3-%{module} -l pl.UTF-8
+PyCryptodomex to odgałęzienie PyCrypto. Dostarcza następujące
+rozszerzenia w stosunku do ostatniej oficjalnej wersji PyCrypto
+(2.6.1):
+- uwierzytelniane tryby szyfrowania (GCM, CCM, EAX, SIV, OCB)
+- akcelerowane szyfrowanie AES na platformach Intela poprzez AES-NI
+- dobra obsługa PyPy
+- kryptografia krzywych eliptycznych (tylko NIST P-256, P-384, P-521)
+- lepsze i bardziej kompaktowe API (atrybuty nonce i iv dla szyfrów,
+  automatyczne generowanie losowych nonce i IV, uproszczony tryb
+  szyfrowania CTR itp.)
+- SHA-3 (w tym SHAKE XOF), skrócone algorytmy SHA-512 i BLAKE2
+- szyfry strumieniowe Salsa20 i ChaCha20/XChaCha20
+- MAC Poly1305
+- szyfry uwierzytelniane ChaCha20-Poly1305 i XChaCha20-Poly1305
+- funkcje pochodne scrypt, bcrypt i HKDF
+- deterministyczne (EC)DSA
+- kontenery kluczy PKCS#8 chronione hasłem
+- schemat Shamir's Secret Sharing
+- liczby losowe pochodzące bezpośrednio z systemu operacyjnego
+  (zamiast CSPRNG w przestrzeni użytkownika)
+- uproszczony proces instalacji, w tym lepsza obsługa Windows
+- czystsze generowanie kluczy RSA i DSA (oparte głównie na FIPS 186-4)
+- spore oczyszczenie i uproszczenie kodu
+
 %package apidocs
 Summary:	API documentation for Python %{module} module
 Summary(pl.UTF-8):	Dokumentacja API modułu Pythona %{module}
@@ -110,6 +159,10 @@ Dokumentacja API modułu Pythona %{module}.
 %prep
 %setup -q -n %{module}-%{version}
 
+# adjust for pycryptodomex
+%{__sed} -i -e 's,Crypto\.Util,Cryptodome.Util,' \
+	-e 's/"Crypto"/"Cryptodome"/' Doc/conf.py
+
 %build
 %if %{with python2}
 %py_build %{?with_tests:test}
@@ -120,9 +173,9 @@ Dokumentacja API modułu Pythona %{module}.
 %endif
 
 %if %{with doc}
+PYTHONPATH=$(echo $(pwd)/build-3/lib.linux-*) \
 %{__make} -C Doc html \
-	PHINXBUILD=sphinx-build-3
-rm -rf Doc/_build/html/_sources
+	SPHINXBUILD=sphinx-build-3
 %endif
 
 %install
@@ -155,21 +208,21 @@ rm -rf $RPM_BUILD_ROOT
 %{py_sitedir}/Cryptodome/Hash/*.py[coi]
 %attr(755,root,root) %{py_sitedir}/Cryptodome/Hash/*.so
 %{py_sitedir}/Cryptodome/IO
-%dir %{py_sitedir}/Cryptodome/PublicKey
-%{py_sitedir}/Cryptodome/PublicKey/*.py[coi]
-%attr(755,root,root) %{py_sitedir}/Cryptodome/PublicKey/*.so
+%dir %{py_sitedir}/Cryptodome/Math
+%{py_sitedir}/Cryptodome/Math/*.py[coi]
+%attr(755,root,root) %{py_sitedir}/Cryptodome/Math/*.so
 %dir %{py_sitedir}/Cryptodome/Protocol
 %{py_sitedir}/Cryptodome/Protocol/*.py[coi]
 %attr(755,root,root) %{py_sitedir}/Cryptodome/Protocol/*.so
+%dir %{py_sitedir}/Cryptodome/PublicKey
+%{py_sitedir}/Cryptodome/PublicKey/*.py[coi]
+%attr(755,root,root) %{py_sitedir}/Cryptodome/PublicKey/*.so
 %{py_sitedir}/Cryptodome/Random
 %{py_sitedir}/Cryptodome/SelfTest
 %{py_sitedir}/Cryptodome/Signature
 %dir %{py_sitedir}/Cryptodome/Util
 %{py_sitedir}/Cryptodome/Util/*.py[coi]
 %attr(755,root,root) %{py_sitedir}/Cryptodome/Util/*.so
-%dir %{py_sitedir}/Cryptodome/Math
-%{py_sitedir}/Cryptodome/Math/*.py[coi]
-%attr(755,root,root) %{py_sitedir}/Cryptodome/Math/*.so
 %{py_sitedir}/%{module}-%{version}-py*.egg-info
 %endif
 
@@ -178,42 +231,49 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc {AUTHORS,Changelog,FuturePlans,README}.rst
 %dir %{py3_sitedir}/Cryptodome
-%{py3_sitedir}/Cryptodome/*.py*
+%{py3_sitedir}/Cryptodome/*.py
+%{py3_sitedir}/Cryptodome/*.pyi
 %{py3_sitedir}/Cryptodome/py.typed
 %{py3_sitedir}/Cryptodome/__pycache__
 %dir %{py3_sitedir}/Cryptodome/Cipher
-%{py3_sitedir}/Cryptodome/Cipher/*.py*
+%{py3_sitedir}/Cryptodome/Cipher/*.py
+%{py3_sitedir}/Cryptodome/Cipher/*.pyi
 %{py3_sitedir}/Cryptodome/Cipher/__pycache__
 %attr(755,root,root) %{py3_sitedir}/Cryptodome/Cipher/*.so
 %dir %{py3_sitedir}/Cryptodome/Hash
-%{py3_sitedir}/Cryptodome/Hash/*.py*
+%{py3_sitedir}/Cryptodome/Hash/*.py
+%{py3_sitedir}/Cryptodome/Hash/*.pyi
 %{py3_sitedir}/Cryptodome/Hash/__pycache__
 %attr(755,root,root) %{py3_sitedir}/Cryptodome/Hash/*.so
 %{py3_sitedir}/Cryptodome/IO
-%dir %{py3_sitedir}/Cryptodome/PublicKey
-%{py3_sitedir}/Cryptodome/PublicKey/*.py*
-%{py3_sitedir}/Cryptodome/PublicKey/__pycache__
-%attr(755,root,root) %{py3_sitedir}/Cryptodome/PublicKey/*.so
+%dir %{py3_sitedir}/Cryptodome/Math
+%{py3_sitedir}/Cryptodome/Math/*.py
+%{py3_sitedir}/Cryptodome/Math/*.pyi
+%{py3_sitedir}/Cryptodome/Math/__pycache__
+%attr(755,root,root) %{py3_sitedir}/Cryptodome/Math/*.so
 %dir %{py3_sitedir}/Cryptodome/Protocol
-%{py3_sitedir}/Cryptodome/Protocol/*.py*
+%{py3_sitedir}/Cryptodome/Protocol/*.py
+%{py3_sitedir}/Cryptodome/Protocol/*.pyi
 %{py3_sitedir}/Cryptodome/Protocol/__pycache__
 %attr(755,root,root) %{py3_sitedir}/Cryptodome/Protocol/*.so
+%dir %{py3_sitedir}/Cryptodome/PublicKey
+%{py3_sitedir}/Cryptodome/PublicKey/*.py
+%{py3_sitedir}/Cryptodome/PublicKey/*.pyi
+%{py3_sitedir}/Cryptodome/PublicKey/__pycache__
+%attr(755,root,root) %{py3_sitedir}/Cryptodome/PublicKey/*.so
 %{py3_sitedir}/Cryptodome/Random
 %{py3_sitedir}/Cryptodome/SelfTest
 %{py3_sitedir}/Cryptodome/Signature
 %dir %{py3_sitedir}/Cryptodome/Util
-%{py3_sitedir}/Cryptodome/Util/*.py*
+%{py3_sitedir}/Cryptodome/Util/*.py
+%{py3_sitedir}/Cryptodome/Util/*.pyi
 %{py3_sitedir}/Cryptodome/Util/__pycache__
 %attr(755,root,root) %{py3_sitedir}/Cryptodome/Util/*.so
-%dir %{py3_sitedir}/Cryptodome/Math
-%{py3_sitedir}/Cryptodome/Math/*.py*
-%{py3_sitedir}/Cryptodome/Math/__pycache__
-%attr(755,root,root) %{py3_sitedir}/Cryptodome/Math/*.so
 %{py3_sitedir}/%{module}-%{version}-py*.egg-info
 %endif
 
 %if %{with doc}
 %files apidocs
 %defattr(644,root,root,755)
-%doc docs/_build/html/*
+%doc Doc/_build/html/{_images,_static,src,*.html,*.js}
 %endif
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/python-pycryptodomex.git/commitdiff/2d534fe968d14649ad374e500462f95147d65758



More information about the pld-cvs-commit mailing list