Promote libsodium to core and upgrade python-pynacl to 1.5.0 (#2503)

This commit is contained in:
Olivia Crain 2022-03-17 18:00:57 -07:00 коммит произвёл GitHub
Родитель 2849c9ee02
Коммит add4acbe37
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
5 изменённых файлов: 59 добавлений и 84 удалений

Просмотреть файл

@ -2,4 +2,4 @@
"Signatures": { "Signatures": {
"libsodium-1.0.18.tar.gz": "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1" "libsodium-1.0.18.tar.gz": "6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1"
} }
} }

Просмотреть файл

@ -1,65 +1,40 @@
Vendor: Microsoft Corporation
Distribution: Mariner
# Fedora spec file for libsodium
#
# License: MIT
# http://opensource.org/licenses/MIT
#
# Please preserve changelog entries
#
%global libname libsodium %global libname libsodium
%global soname 23 %global soname 23
Summary: The Sodium crypto library
Name: libsodium Name: libsodium
Version: 1.0.18 Version: 1.0.18
Release: 4%{?dist} Release: 5%{?dist}
Summary: The Sodium crypto library
License: ISC License: ISC
URL: http://libsodium.org/ Vendor: Microsoft Corporation
Source0: http://download.libsodium.org/libsodium/releases/%{name}-%{version}.tar.gz Distribution: Mariner
URL: https://libsodium.org/
BuildRequires: gcc Source0: https://download.libsodium.org/%{name}/releases/%{name}-%{version}.tar.gz
BuildRequires: gcc
# manage update from 3rd party repository BuildRequires: make
Obsoletes: %{libname}%{soname} <= %{version}
%description %description
Sodium is a new, easy-to-use software library for encryption, decryption, Sodium is a new, easy-to-use software library for encryption, decryption,
signatures, password hashing and more. It is a portable, cross-compilable, signatures, password hashing and more. It is a portable, cross-compilable,
installable, packageable fork of NaCl, with a compatible API, and an extended installable, packageable fork of NaCl, with a compatible API, and an extended
API to improve usability even further. Its goal is to provide all of the core API to improve usability even further. Its goal is to provide all of the core
operations needed to build higher-level cryptographic tools. The design operations needed to build higher-level cryptographic tools. The design
choices emphasize security, and "magic constants" have clear rationales. choices emphasize security, and "magic constants" have clear rationales.
The same cannot be said of NIST curves, where the specific origins of certain The same cannot be said of NIST curves, where the specific origins of certain
constants are not described by the standards. And despite the emphasis on constants are not described by the standards. And despite the emphasis on
higher security, primitives are faster across-the-board than most higher security, primitives are faster across-the-board than most
implementations of the NIST standards. implementations of the NIST standards.
%package devel %package devel
Summary: Development files for %{name} Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name} = %{version}-%{release}
Obsoletes: %{libname}%{soname}-devel <= %{version}
%description devel %description devel
This package contains libraries and header files for This package contains libraries and header files for
developing applications that use %{name} libraries. developing applications that use %{name} libraries.
%package static
Summary: Static library for %{name}
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
Obsoletes: %{libname}%{soname}-static <= %{version}
%description static
This package contains the static library for statically
linking applications to use %{name}.
%prep %prep
%setup -q %autosetup
%build %build
%configure \ %configure \
@ -72,12 +47,11 @@ linking applications to use %{name}.
%install %install
%make_install %make_install
rm -f %{buildroot}%{_libdir}/%{libname}.la find %{buildroot} -type f -name "*.la" -delete -print
find %{buildroot} -type f -name "*.a" -delete -print
%check %check
make check %make_build check
%files %files
%license LICENSE %license LICENSE
@ -92,11 +66,15 @@ make check
%{_libdir}/%{libname}.so %{_libdir}/%{libname}.so
%{_libdir}/pkgconfig/%{libname}.pc %{_libdir}/pkgconfig/%{libname}.pc
%files static
%{_libdir}/libsodium.a
%changelog %changelog
* Mon Mar 14 2022 Thomas Crain <thcrain@microsoft.com> - 1.0.18-5
- Move package from Mariner Extended to Mariner Core repo
- Use HTTPS source URL instead of HTTP
- Remove static subpackage and static library
- Lint spec
- License verified
* Fri Oct 15 2021 Pawel Winogrodzki <pawelwi@microsoft.com> - 1.0.18-4 * Fri Oct 15 2021 Pawel Winogrodzki <pawelwi@microsoft.com> - 1.0.18-4
- Initial CBL-Mariner import from Fedora 32 (license: MIT). - Initial CBL-Mariner import from Fedora 32 (license: MIT).

Просмотреть файл

@ -1,5 +1,5 @@
{ {
"Signatures": { "Signatures": {
"PyNaCl-1.3.0.tar.gz": "0c6100edd16fefd1557da078c7a31e7b7d7a52ce39fdca2bec29d4f7b6e7600c" "pynacl-1.5.0.tar.gz": "f7de97b0995a56faaf0c95c5e4b19b061e8b3d06af8ff60441fec1a5a2ac144e"
} }
} }

Просмотреть файл

@ -1,55 +1,45 @@
Summary: PyNaCl is a Python binding to libsodium Summary: PyNaCl is a Python binding to libsodium
Name: python-pynacl Name: python-pynacl
Version: 1.3.0 Version: 1.5.0
Release: 8%{?dist} Release: 1%{?dist}
License: ASL 2.0 License: ASL 2.0
Vendor: Microsoft Corporation Vendor: Microsoft Corporation
Distribution: Mariner Distribution: Mariner
Group: Development/Languages/Python Group: Development/Languages/Python
URL: https://github.com/pyca/pynacl URL: https://github.com/pyca/pynacl
# The official source is under https://github.com/pyca/pynacl/archive/1.3.0.tar.gz. Source0: https://github.com/pyca/pynacl/archive/refs/tags/%{version}.tar.gz#/pynacl-%{version}.tar.gz
# Source to be fixed as part of https://microsoft.visualstudio.com/OS/_workitems/edit/25936171. BuildRequires: libsodium-devel
Source0: https://files.pythonhosted.org/packages/61/ab/2ac6dea8489fa713e2b4c6c5b549cc962dd4a842b5998d9e80cf8440b7cd/PyNaCl-%{version}.tar.gz BuildRequires: python3-cffi
Patch1: fix_import_unlimited_error.patch BuildRequires: python3-devel
Patch2: fix_average_value_hypothesis_error.patch BuildRequires: python3-setuptools
%if %{with_check}
BuildRequires: python3-pip
%endif
%description %description
Good password hashing for your software and your servers. Good password hashing for your software and your servers.
%package -n python3-pynacl %package -n python3-pynacl
Summary: PyNaCl is a Python binding to libsodium Summary: PyNaCl is a Python binding to libsodium
BuildRequires: python3-cffi
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-six
BuildRequires: python3-xml
%if %{with_check}
BuildRequires: python3-atomicwrites
# Need newer version. Use pip3 untils pkg upgrade
#BuildRequires: python3-attrs
BuildRequires: python3-hypothesis
BuildRequires: python3-pip
BuildRequires: python3-pytest
BuildRequires: python3-wheel
%endif
Requires: python3 Requires: python3
Requires: python3-libs Requires: python3-cffi
%description -n python3-pynacl %description -n python3-pynacl
Good password hashing for your software and your servers. Good password hashing for your software and your servers.
%prep %prep
%autosetup -n PyNaCl-%{version} -p1 %autosetup -n pynacl-%{version}
%build %build
export SODIUM_INSTALL=system
%py3_build %py3_build
%install %install
%py3_install %py3_install
%check %check
%{python3} -m pip install pluggy more-itertools sortedcontainers attrs pip3 install tox
PYTHONPATH=%{buildroot}%{python3_sitelib} py.test3 -v tox -e py%{python3_version_nodots}
%files -n python3-pynacl %files -n python3-pynacl
%defattr(-,root,root) %defattr(-,root,root)
@ -57,7 +47,14 @@ PYTHONPATH=%{buildroot}%{python3_sitelib} py.test3 -v
%{python3_sitelib}/* %{python3_sitelib}/*
%changelog %changelog
* Thu Mar 10 2022 Bala <balakumaran.kannan@microsoft.com> - 1.3.0-8 * Mon Mar 14 2022 Thomas Crain <thcrain@microsoft.com> - 1.5.0-1
- Upgrade to latest upstream version
- Use system libsodium instead of bundled version
- Switch source from PyPI to GitHub
- Use tox to run package tests
- Remove test patches meant for previous releases
Thu Mar 10 2022 Bala <balakumaran.kannan@microsoft.com> - 1.3.0-8
- BR necessary packages for PTest - BR necessary packages for PTest
- Patch test cases written with older verion libraries - Patch test cases written with older verion libraries
@ -82,5 +79,5 @@ PYTHONPATH=%{buildroot}%{python3_sitelib} py.test3 -v
* Tue Sep 03 2019 Mateusz Malisz <mamalisz@microsoft.com> - 1.3.0-2 * Tue Sep 03 2019 Mateusz Malisz <mamalisz@microsoft.com> - 1.3.0-2
- Initial CBL-Mariner import from Photon (license: Apache2). - Initial CBL-Mariner import from Photon (license: Apache2).
* Wed Mar 06 2019 Tapas Kundu <tkundu@vmware.com> 1.3.0-1 * Wed Mar 06 2019 Tapas Kundu <tkundu@vmware.com> 1.3.0-1
- Initial packaging for Photon - Initial packaging for Photon

Просмотреть файл

@ -11032,7 +11032,7 @@
"other": { "other": {
"name": "libsodium", "name": "libsodium",
"version": "1.0.18", "version": "1.0.18",
"downloadUrl": "http://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz" "downloadUrl": "https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz"
} }
} }
}, },
@ -23794,8 +23794,8 @@
"type": "other", "type": "other",
"other": { "other": {
"name": "python-pynacl", "name": "python-pynacl",
"version": "1.3.0", "version": "1.5.0",
"downloadUrl": "https://files.pythonhosted.org/packages/61/ab/2ac6dea8489fa713e2b4c6c5b549cc962dd4a842b5998d9e80cf8440b7cd/PyNaCl-1.3.0.tar.gz" "downloadUrl": "https://github.com/pyca/pynacl/archive/refs/tags/1.5.0.tar.gz"
} }
} }
}, },