diff --git a/0001-Allow-building-the-python-module-with-system-openssl.patch b/0001-Allow-building-the-python-module-with-system-openssl.patch deleted file mode 100644 index 36d841e..0000000 --- a/0001-Allow-building-the-python-module-with-system-openssl.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 30ce693621d61efb8596503a0da212077a8c4daa Mon Sep 17 00:00:00 2001 -From: Thomas Bechtold -Date: Thu, 24 May 2018 17:12:13 +0200 -Subject: [PATCH 1/3] Allow building the python module with system openssl - -When building the python module and using the new -GRPC_PYTHON_BUILD_SYSTEM_OPENSSL env variable, the third party -boringssl code is not compiled. Instead, the openssl shared library -installed on the system is used during runtime. -This is useful for distributions who don't want to include code copies -but use shared libraries instead. ---- - setup.py | 17 +++++++++++++++-- - 1 file changed, 15 insertions(+), 2 deletions(-) - -diff --git a/setup.py b/setup.py -index 99d1a1c504..3a5ed56c64 100644 ---- a/setup.py -+++ b/setup.py -@@ -35,7 +35,7 @@ egg_info.manifest_maker.template = 'PYTHON-MANIFEST.in' - PY3 = sys.version_info.major == 3 - PYTHON_STEM = os.path.join('src', 'python', 'grpcio') - CORE_INCLUDE = ('include', '.',) --BORINGSSL_INCLUDE = (os.path.join('third_party', 'boringssl', 'include'),) -+SSL_INCLUDE = (os.path.join('third_party', 'boringssl', 'include'),) - ZLIB_INCLUDE = (os.path.join('third_party', 'zlib'),) - CARES_INCLUDE = ( - os.path.join('third_party', 'cares'), -@@ -84,6 +84,12 @@ CLASSIFIERS = [ - # present, then it will still attempt to use Cython. - BUILD_WITH_CYTHON = os.environ.get('GRPC_PYTHON_BUILD_WITH_CYTHON', False) - -+# Export this variable to use the system installation of openssl. You need to -+# have the header files installed (in /usr/include/openssl) and during -+# runtime, the shared libary must be installed -+BUILD_WITH_SYSTEM_OPENSSL = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_OPENSSL', -+ False) -+ - # Environment variable to determine whether or not to enable coverage analysis - # in Cython modules. - ENABLE_CYTHON_TRACING = os.environ.get( -@@ -148,8 +154,13 @@ CORE_C_FILES = tuple(grpc_core_dependencies.CORE_SOURCE_FILES) - if "win32" in sys.platform: - CORE_C_FILES = filter(lambda x: 'third_party/cares' not in x, CORE_C_FILES) - -+if BUILD_WITH_SYSTEM_OPENSSL: -+ CORE_C_FILES = filter(lambda x: 'third_party/boringssl' not in x, CORE_C_FILES) -+ CORE_C_FILES = filter(lambda x: 'src/boringssl' not in x, CORE_C_FILES) -+ SSL_INCLUDE = (os.path.join('/usr', 'include', 'openssl'),) -+ - EXTENSION_INCLUDE_DIRECTORIES = ( -- (PYTHON_STEM,) + CORE_INCLUDE + BORINGSSL_INCLUDE + ZLIB_INCLUDE + -+ (PYTHON_STEM,) + CORE_INCLUDE + SSL_INCLUDE + ZLIB_INCLUDE + - CARES_INCLUDE + ADDRESS_SORTING_INCLUDE) - - EXTENSION_LIBRARIES = () -@@ -159,6 +170,8 @@ if not "win32" in sys.platform: - EXTENSION_LIBRARIES += ('m',) - if "win32" in sys.platform: - EXTENSION_LIBRARIES += ('advapi32', 'ws2_32',) -+if BUILD_WITH_SYSTEM_OPENSSL: -+ EXTENSION_LIBRARIES += ('ssl', 'crypto',) - - DEFINE_MACROS = ( - ('OPENSSL_NO_ASM', 1), ('_WIN32_WINNT', 0x600), --- -2.17.0 - diff --git a/0002-Allow-building-the-python-module-with-system-zlib.patch b/0002-Allow-building-the-python-module-with-system-zlib.patch deleted file mode 100644 index 31ff968..0000000 --- a/0002-Allow-building-the-python-module-with-system-zlib.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 3823d9048102bce79e165584c62a1a5b91810aeb Mon Sep 17 00:00:00 2001 -From: Thomas Bechtold -Date: Fri, 25 May 2018 06:52:23 +0200 -Subject: [PATCH 2/3] Allow building the python module with system zlib - -When building the python module and using the new -GRPC_PYTHON_BUILD_SYSTEM_ZLIB env variable, the third party zlib code -is not compiled. Instead, the zlib shared library installed on the -system is used during runtime. -This is useful for distributions who don't want to include code copies -but use shared libraries instead. ---- - setup.py | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/setup.py b/setup.py -index 3a5ed56c64..483d3ac168 100644 ---- a/setup.py -+++ b/setup.py -@@ -90,6 +90,12 @@ BUILD_WITH_CYTHON = os.environ.get('GRPC_PYTHON_BUILD_WITH_CYTHON', False) - BUILD_WITH_SYSTEM_OPENSSL = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_OPENSSL', - False) - -+# Export this variable to use the system installation of zlib. You need to -+# have the header files installed (in /usr/include/) and during -+# runtime, the shared libary must be installed -+BUILD_WITH_SYSTEM_ZLIB = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_ZLIB', -+ False) -+ - # Environment variable to determine whether or not to enable coverage analysis - # in Cython modules. - ENABLE_CYTHON_TRACING = os.environ.get( -@@ -159,6 +165,10 @@ if BUILD_WITH_SYSTEM_OPENSSL: - CORE_C_FILES = filter(lambda x: 'src/boringssl' not in x, CORE_C_FILES) - SSL_INCLUDE = (os.path.join('/usr', 'include', 'openssl'),) - -+if BUILD_WITH_SYSTEM_ZLIB: -+ CORE_C_FILES = filter(lambda x: 'third_party/zlib' not in x, CORE_C_FILES) -+ ZLIB_INCLUDE = (os.path.join('/usr', 'include'),) -+ - EXTENSION_INCLUDE_DIRECTORIES = ( - (PYTHON_STEM,) + CORE_INCLUDE + SSL_INCLUDE + ZLIB_INCLUDE + - CARES_INCLUDE + ADDRESS_SORTING_INCLUDE) -@@ -172,6 +182,8 @@ if "win32" in sys.platform: - EXTENSION_LIBRARIES += ('advapi32', 'ws2_32',) - if BUILD_WITH_SYSTEM_OPENSSL: - EXTENSION_LIBRARIES += ('ssl', 'crypto',) -+if BUILD_WITH_SYSTEM_ZLIB: -+ EXTENSION_LIBRARIES += ('z',) - - DEFINE_MACROS = ( - ('OPENSSL_NO_ASM', 1), ('_WIN32_WINNT', 0x600), --- -2.17.0 - diff --git a/0003-Allow-building-the-python-module-with-system-cares.patch b/0003-Allow-building-the-python-module-with-system-cares.patch deleted file mode 100644 index 0b36574..0000000 --- a/0003-Allow-building-the-python-module-with-system-cares.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 78a6e04ec1efc2dc839f0329dcff732940e27fd9 Mon Sep 17 00:00:00 2001 -From: Thomas Bechtold -Date: Fri, 25 May 2018 07:08:05 +0200 -Subject: [PATCH 3/3] Allow building the python module with system cares - -When building the python module and using the new -GRPC_PYTHON_BUILD_SYSTEM_CARES env variable, the third party cares code -is not compiled. Instead, the cares shared library installed on the -system is used during runtime. -This is useful for distributions who don't want to include code copies -but use shared libraries instead. ---- - setup.py | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/setup.py b/setup.py -index 483d3ac168..43c25aafeb 100644 ---- a/setup.py -+++ b/setup.py -@@ -96,6 +96,12 @@ BUILD_WITH_SYSTEM_OPENSSL = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_OPENSSL', - BUILD_WITH_SYSTEM_ZLIB = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_ZLIB', - False) - -+# Export this variable to use the system installation of cares. You need to -+# have the header files installed (in /usr/include/) and during -+# runtime, the shared libary must be installed -+BUILD_WITH_SYSTEM_CARES = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_CARES', -+ False) -+ - # Environment variable to determine whether or not to enable coverage analysis - # in Cython modules. - ENABLE_CYTHON_TRACING = os.environ.get( -@@ -169,6 +175,10 @@ if BUILD_WITH_SYSTEM_ZLIB: - CORE_C_FILES = filter(lambda x: 'third_party/zlib' not in x, CORE_C_FILES) - ZLIB_INCLUDE = (os.path.join('/usr', 'include'),) - -+if BUILD_WITH_SYSTEM_CARES: -+ CORE_C_FILES = filter(lambda x: 'third_party/cares' not in x, CORE_C_FILES) -+ CARES_INCLUDE = (os.path.join('/usr', 'include'),) -+ - EXTENSION_INCLUDE_DIRECTORIES = ( - (PYTHON_STEM,) + CORE_INCLUDE + SSL_INCLUDE + ZLIB_INCLUDE + - CARES_INCLUDE + ADDRESS_SORTING_INCLUDE) -@@ -184,6 +194,8 @@ if BUILD_WITH_SYSTEM_OPENSSL: - EXTENSION_LIBRARIES += ('ssl', 'crypto',) - if BUILD_WITH_SYSTEM_ZLIB: - EXTENSION_LIBRARIES += ('z',) -+if BUILD_WITH_SYSTEM_CARES: -+ EXTENSION_LIBRARIES += ('cares',) - - DEFINE_MACROS = ( - ('OPENSSL_NO_ASM', 1), ('_WIN32_WINNT', 0x600), --- -2.17.0 - diff --git a/grpc.changes b/grpc.changes index 26b8005..fe60d8c 100644 --- a/grpc.changes +++ b/grpc.changes @@ -1,3 +1,73 @@ +------------------------------------------------------------------- +Sun Nov 11 17:57:35 UTC 2018 - Jan Engelhardt + +- Update to new upstream release 1.16 + * Keepalive watchdog firing should return status UNAVAILABLE. + * Set TCP_USER_TIMEOUT socket option for Linux. + * Turn loading system root certificate as default. + * Change pick_first to not unref unselected subchannels. + * cmake: prevent C core from depending on libstdc++. + * Implement Watch method in health check service. + +------------------------------------------------------------------- +Sun Nov 11 10:57:12 UTC 2018 - Thomas Bechtold + +- update to 1.15.1: + * Document SSL portability and performance considerations. See + https://github.com/grpc/grpc/blob/master/doc/ssl-performance.md . + * Simplify call arena size growth. + * PF: Check connectivity state before watching. + * Added system roots feature to load roots from OS trust store. + * Fix re-resolution in pick first. + * Allow error strings in final_info to propagate to filters on + call destruction. + * Add resolver executor. + * Data race fix for lockfree_event. + * Channelz: Expose new Core API. + * cmake: disable assembly optimizations only when necessary. + * C++ sync server: Return status RESOURCE_EXHAUSTED if no + thread quota available. + * Use correct target name for gflags-config.cmake. + * Make should generate pkg-config file for gpr as well. + * Restrict the number of threads in C++ sync server. + * Allow reset of connection backoff. +- update to 1.14.2: + * Add TROUBLESHOOTING.md guide + * Fixed gRPC channels blocking indefinitely and not respecting + deadlines on network disconnect. + * Add user guide for keepalive. + * Fix GRPC_ARG_HTTP2_MIN_RECV_PING_INTERVAL_WITHOUT_DATA_MS doc + to restrict usage to server. + * Fixed ordering in adding pending picks to Round Robin LB. + * Implement local channel/server credentials for UDS connections. + * Allow extra copy in zero-copy protector integrity-only mode. + * Update to use the canonical version of LB proto. + * Prefer using https_proxy over http_proxy. + * Refactor to put c-ares queries under a combiner. + * Remove already_closed parameter from fd_orphan. + * Add channel arg to enable/disable http proxy. + * Fix shutdown of closed fd when c-ares opens a second fd. + * Fixed segmentation fault when product name from BIOS is empty. + * Introduce server-side load reporting service. + * Reorder steps in ServerBuilder::BuildAndStart(). + * Support Per-Method Codegen Generic on Server Side. + * Protobuf-related headers are available in a subspec of + gRPC-C++ podspec. +- update to 1.13.1: + * gRPC stats will only be collected for debug builds or if + GRPC_COLLECT_STATS is defined. It will be disabled for opt + builds. + * Fix for Issue #13553. Unlimited can now be set as the max + receive message length. + * cmake install now also installs should also installs the + roots.pem file. +- Drop 0001-Allow-building-the-python-module-with-system-openssl.patch + Applied upstream +- Drop 0002-Allow-building-the-python-module-with-system-zlib.patch + Applied upstream +- 0003-Allow-building-the-python-module-with-system-cares.patch + Applied upstream + ------------------------------------------------------------------- Sat Jun 23 09:33:15 UTC 2018 - jengelh@inai.de diff --git a/grpc.spec b/grpc.spec index 3ad5955..d1397ff 100644 --- a/grpc.spec +++ b/grpc.spec @@ -12,23 +12,21 @@ # 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/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define lname libgrpc6 %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: grpc -Version: 1.12.0 +Version: 1.16 Release: 0 +%define rver 1.16.0 Summary: HTTP/2-based Remote Procedure Call implementation License: Apache-2.0 Group: Development/Tools/Building Url: http://grpc.io/ -Source: https://github.com/grpc/grpc/archive/v%version.tar.gz -Patch0: 0001-Allow-building-the-python-module-with-system-openssl.patch -Patch1: 0002-Allow-building-the-python-module-with-system-zlib.patch -Patch2: 0003-Allow-building-the-python-module-with-system-cares.patch +Source: https://github.com/grpc/grpc/archive/v%rver.tar.gz BuildRequires: %{python_module Cython} BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} @@ -68,8 +66,8 @@ applications that want to make use of the gRPC reference implementation. %package -n python2-grpcio Summary: Python language bindings for grpc, a HTTP/2 Remote Procedure Call implementation Group: Development/Libraries/Python -Requires: %{lname} = %{version}-%{release} -Requires: python = %{python2_version} +Requires: %lname = %version-%release +Requires: python = %python2_version %description -n python2-grpcio This subpackage contains the python2 bindings. @@ -77,17 +75,14 @@ This subpackage contains the python2 bindings. %package -n python3-grpcio Summary: Python language bindings for grpc, a HTTP/2 Remote Procedure Call implementation Group: Development/Libraries/Python -Requires: %{lname} = %{version}-%{release} -Requires: python = %{python3_version} +Requires: %lname = %version-%release +Requires: python = %python3_version %description -n python3-grpcio This subpackage contains the python3 bindings. %prep -%setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 +%setup -qn grpc-%rver %build make %{?_smp_mflags} STRIP=/bin/true V=1 VERBOSE=1 \ @@ -98,7 +93,7 @@ export GRPC_PYTHON_BUILD_WITH_CYTHON=True export GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=True export GRPC_PYTHON_BUILD_SYSTEM_ZLIB=True export GRPC_PYTHON_BUILD_SYSTEM_CARES=True -export CFLAGS="%{optflags}" +export CFLAGS="%optflags" %python_build %install @@ -133,11 +128,11 @@ popd %_libdir/*.so %files -n python2-grpcio -%{python2_sitearch}/grpcio-%{version}-py*.egg-info -%{python2_sitearch}/grpc +%python2_sitearch/grpcio-%rver-py*.egg-info +%python2_sitearch/grpc %files -n python3-grpcio -%{python3_sitearch}/grpcio-%{version}-py*.egg-info -%{python3_sitearch}/grpc +%python3_sitearch/grpcio-%rver-py*.egg-info +%python3_sitearch/grpc %changelog diff --git a/v1.12.0.tar.gz b/v1.12.0.tar.gz deleted file mode 100644 index 84b310e..0000000 --- a/v1.12.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eb9698f23aeec2c3832601fa3f804e4d9dc28eca3cc560ef466c9ade1ec951db -size 13692310 diff --git a/v1.16.0.tar.gz b/v1.16.0.tar.gz new file mode 100644 index 0000000..54f27ff --- /dev/null +++ b/v1.16.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d99db0b39b490d2469a8ef74197d5f211fa740fc9581dccecbb76c56d080fce1 +size 14442543