diff --git a/.gitignore b/.gitignore index e74ba6d..4dbcd48 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ SOURCES/xds-cb28da3451f158a947dfc45090fe92b07b243bc1.tar.gz +SOURCES/data-plane-api-9c42588c956220b48eb3099d186487c2f04d32ec.tar.gz +SOURCES/googleapis-2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz SOURCES/opencensus-proto-0.3.0.tar.gz SOURCES/googletest-0e402173c97aea7a00749e825b194bfede4f2e45.tar.gz -SOURCES/googleapis-2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz -SOURCES/data-plane-api-9c42588c956220b48eb3099d186487c2f04d32ec.tar.gz SOURCES/grpc-1.48.4.tar.gz diff --git a/.grpc.metadata b/.grpc.metadata index 669af7f..72d5e19 100644 --- a/.grpc.metadata +++ b/.grpc.metadata @@ -1,6 +1,6 @@ a152c3abb31dd14e5b0dbfe25ff5a3fbb856cb3b SOURCES/xds-cb28da3451f158a947dfc45090fe92b07b243bc1.tar.gz +8c793d42dea7e87a1c7736406d63d0ce0f2e9a00 SOURCES/data-plane-api-9c42588c956220b48eb3099d186487c2f04d32ec.tar.gz +91c505c822dfb16318290afacb90478b8a6200a4 SOURCES/googleapis-2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz 4542627be900520721af59b93e211683dbb0e4bc SOURCES/opencensus-proto-0.3.0.tar.gz a01364a9c6e7aa314b6cffdf22377a7bde85ba11 SOURCES/googletest-0e402173c97aea7a00749e825b194bfede4f2e45.tar.gz -91c505c822dfb16318290afacb90478b8a6200a4 SOURCES/googleapis-2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz -8c793d42dea7e87a1c7736406d63d0ce0f2e9a00 SOURCES/data-plane-api-9c42588c956220b48eb3099d186487c2f04d32ec.tar.gz 880c2177d6021bd6c4c0a9d01a32e974f6b43925 SOURCES/grpc-1.48.4.tar.gz diff --git a/SOURCES/0001-Remove-usage-of-coverage.patch b/SOURCES/0001-Remove-usage-of-coverage.patch new file mode 100644 index 0000000..82726ef --- /dev/null +++ b/SOURCES/0001-Remove-usage-of-coverage.patch @@ -0,0 +1,121 @@ +From a30b55f51196b446dfb7bc1422cad0dc98274571 Mon Sep 17 00:00:00 2001 +From: Carl George +Date: Mon, 9 Sep 2024 18:46:13 -0500 +Subject: [PATCH] Remove usage of coverage + +https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_linters +--- + src/python/grpcio_tests/setup.py | 2 +- + src/python/grpcio_tests/tests/_loader.py | 8 ------ + src/python/grpcio_tests/tests/_result.py | 35 ++---------------------- + 3 files changed, 3 insertions(+), 42 deletions(-) + +diff --git a/src/python/grpcio_tests/setup.py b/src/python/grpcio_tests/setup.py +index f0679eb170..4345b94253 100644 +--- a/src/python/grpcio_tests/setup.py ++++ b/src/python/grpcio_tests/setup.py +@@ -37,7 +37,7 @@ PACKAGE_DIRECTORIES = { + } + + INSTALL_REQUIRES = ( +- 'coverage>=4.0', 'grpcio>={version}'.format(version=grpc_version.VERSION), ++ 'grpcio>={version}'.format(version=grpc_version.VERSION), + 'grpcio-channelz>={version}'.format(version=grpc_version.VERSION), + 'grpcio-status>={version}'.format(version=grpc_version.VERSION), + 'grpcio-tools>={version}'.format(version=grpc_version.VERSION), +diff --git a/src/python/grpcio_tests/tests/_loader.py b/src/python/grpcio_tests/tests/_loader.py +index 80c107aa8e..cb4e934c1b 100644 +--- a/src/python/grpcio_tests/tests/_loader.py ++++ b/src/python/grpcio_tests/tests/_loader.py +@@ -19,8 +19,6 @@ import pkgutil + import re + import unittest + +-import coverage +- + TEST_MODULE_REGEX = r'^.*_test$' + + +@@ -44,10 +42,6 @@ class Loader(object): + def loadTestsFromNames(self, names, module=None): + """Function mirroring TestLoader::loadTestsFromNames, as expected by + setuptools.setup argument `test_loader`.""" +- # ensure that we capture decorators and definitions (else our coverage +- # measure unnecessarily suffers) +- coverage_context = coverage.Coverage(data_suffix=True) +- coverage_context.start() + imported_modules = tuple( + importlib.import_module(name) for name in names) + for imported_module in imported_modules: +@@ -58,8 +52,6 @@ class Loader(object): + except AttributeError: + continue + self.walk_packages(package_paths) +- coverage_context.stop() +- coverage_context.save() + return self.suite + + def walk_packages(self, package_paths): +diff --git a/src/python/grpcio_tests/tests/_result.py b/src/python/grpcio_tests/tests/_result.py +index 389d5f4f96..9d3e0cf15c 100644 +--- a/src/python/grpcio_tests/tests/_result.py ++++ b/src/python/grpcio_tests/tests/_result.py +@@ -20,7 +20,6 @@ import traceback + import unittest + from xml.etree import ElementTree + +-import coverage + from six import moves + + from tests import _loader +@@ -216,36 +215,6 @@ class AugmentedResult(unittest.TestResult): + if filter(self.cases[case_id])) + + +-class CoverageResult(AugmentedResult): +- """Extension to AugmentedResult adding coverage.py support per test.\ +- +- Attributes: +- coverage_context (coverage.Coverage): coverage.py management object. +- """ +- +- def __init__(self, id_map): +- """See AugmentedResult.__init__.""" +- super(CoverageResult, self).__init__(id_map=id_map) +- self.coverage_context = None +- +- def startTest(self, test): +- """See unittest.TestResult.startTest. +- +- Additionally initializes and begins code coverage tracking.""" +- super(CoverageResult, self).startTest(test) +- self.coverage_context = coverage.Coverage(data_suffix=True) +- self.coverage_context.start() +- +- def stopTest(self, test): +- """See unittest.TestResult.stopTest. +- +- Additionally stops and deinitializes code coverage tracking.""" +- super(CoverageResult, self).stopTest(test) +- self.coverage_context.stop() +- self.coverage_context.save() +- self.coverage_context = None +- +- + class _Colors(object): + """Namespaced constants for terminal color magic numbers.""" + HEADER = '\033[95m' +@@ -258,8 +227,8 @@ class _Colors(object): + END = '\033[0m' + + +-class TerminalResult(CoverageResult): +- """Extension to CoverageResult adding basic terminal reporting.""" ++class TerminalResult(AugmentedResult): ++ """Extension to AugmentedResult adding basic terminal reporting.""" + + def __init__(self, out, id_map): + """Initialize the result object. +-- +2.46.0 + diff --git a/SOURCES/grpc-1.48.4-core-tsi-ssl_transport_security.cc.patch b/SOURCES/grpc-1.48.4-core-tsi-ssl_transport_security.cc.patch new file mode 100644 index 0000000..3756941 --- /dev/null +++ b/SOURCES/grpc-1.48.4-core-tsi-ssl_transport_security.cc.patch @@ -0,0 +1,12 @@ +--- grpc-1.48.4/src/core/tsi/ssl_transport_security.cc.orig 2024-09-19 10:02:30.511044976 -0400 ++++ grpc-1.48.4/src/core/tsi/ssl_transport_security.cc 2024-09-19 10:03:28.363061372 -0400 +@@ -37,7 +37,9 @@ + + #include + #include /* For OPENSSL_free */ ++#if !defined(OPENSSL_NO_ENGINE) + #include ++#endif + #include + #include + #include diff --git a/SPECS/grpc.spec b/SPECS/grpc.spec index 63bf435..c70d45e 100644 --- a/SPECS/grpc.spec +++ b/SPECS/grpc.spec @@ -1,8 +1,8 @@ ## START: Set by rpmautospec -## (rpmautospec version 0.7.1) +## (rpmautospec version 0.7.3) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: - release_number = 41; + release_number = 44; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} @@ -224,8 +224,6 @@ BuildRequires: pkgconfig(protobuf) BuildRequires: protobuf-compiler BuildRequires: pkgconfig(re2) BuildRequires: pkgconfig(openssl) -# https://fedoraproject.org/wiki/Changes/OpensslDeprecateEngine -BuildRequires: openssl-devel-engine BuildRequires: cmake(c-ares) BuildRequires: abseil-cpp-devel # Sets XXH_INCLUDE_ALL, which means xxhash is used as a header-only library @@ -295,9 +293,6 @@ BuildRequires: python3dist(googleapis-common-protos) >= 1.5.5 # # Similarly, grpcio_admin depends on grpcio_channelz and grpcio_csds. -# grpcio_tests (src/python/grpcio_tests/setup.py) install_requires: -BuildRequires: python3dist(coverage) >= 4.0 - # grpcio_tests (src/python/grpcio_tests/setup.py) install_requires: BuildRequires: python3dist(oauth2client) >= 1.4.7 @@ -443,6 +438,19 @@ Patch: 0001-Specify-noexcept-for-cdef-functions.patch # https://github.com/grpc/grpc/pull/34857 Patch: %{forgeurl}/pull/34857.patch +# Downstream-only patch to remove usage of coverage, per the packaging +# guidelines. This reduces the build-time dependencies, which slightly speeds +# up builds. It also makes this package easier port to new EPEL branches. +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_linters +Patch: 0001-Remove-usage-of-coverage.patch + +# Don't include +# OpenSSL in Fedora provides a dummy openssl-devel-engine rpm with a +# dummy . EPEL10 has no such package, nor has this +# version of grpc has not caught up with the removal of engine and +# related headers. +Patch: grpc-1.48.4-core-tsi-ssl_transport_security.cc.patch + Requires: grpc-data = %{version}-%{release} # Upstream https://github.com/protocolbuffers/upb does not support building @@ -1746,10 +1754,19 @@ fi %changelog -* Sat Dec 28 2024 Arkady L. Shane - 1.48.4-41 +## START: Generated by rpmautospec +* Sat Dec 28 2024 Arkady L. Shane - 1.48.4-44 - Rebuilt for MSVSphere 10 -## START: Generated by rpmautospec +* Thu Oct 17 2024 Neil Hanlon - 1.48.4-44 +- rebuild for re2 update + +* Mon Oct 14 2024 Kaleb S. KEITHLEY - 1.48.4-43 +- Remove openssl-devel-engine, and add associated patch + +* Tue Sep 10 2024 Carl George - 1.48.4-42 +- Remove usage of coverage, per the packaging guidelines + * Sun Aug 18 2024 Benjamin A. Beasley - 1.48.4-41 - Rebuilt for abseil-cpp-20240722.0