From 2f46939fb22e78a81e0a7be2e0711380cb6dab9f355365e333d28715b2f872a7 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sun, 11 Nov 2018 17:43:52 +0000 Subject: [PATCH 1/3] Accepting request 648212 from home:tbechtold:branches:devel:tools - update to 1.15.1: Core * Document SSL portability and performance considerations. See https://github.com/grpc/grpc/blob/master/doc/ssl-performance.md . * Simplify call arena size growth. (#16396) * Make gRPC buildable with AIX and Solaris (no official support). (#15926) * PF: Check connectivity state before watching. (#16306) * Added system roots feature to load roots from OS trust store. (#16083) * Fix c-ares compilation under windows (but doesn't yet enable windows DNS queries), and then enables address sorting on Windows. (#16163) * Fix re-resolution in pick first. (#16076) * Allow error strings in final_info to propagate to filters on call destruction. (#16104) * Add resolver executor . (#16010) * Data race fix for lockfree_event. (#16053) * Channelz: Expose new Core API. (#16022) C++ * cmake: disable assembly optimizations only when necessary. (#16415) * C++ sync server: Return status RESOURCE_EXHAUSTED if no thread quota available. (#16356) * Use correct target name for gflags-config.cmake. (#16343) * Make should generate pkg-config file for gpr as well. (#15295) * Restrict the number of threads in C++ sync server. (#16217) * Allow reset of connection backoff. (#16225) C# * Add experimental support for Xamarin.Android and Xamarin.iOS, added Helloworld example for Xamarin. See https://github.com/grpc/grpc/tree/master/src/csharp/experimental. * Add experimental support for Unity Android and iOS. See https://github.com/grpc/grpc/tree/master/src/csharp/experimental. OBS-URL: https://build.opensuse.org/request/show/648212 OBS-URL: https://build.opensuse.org/package/show/devel:tools/grpc?expand=0&rev=31 --- ...he-python-module-with-system-openssl.patch | 68 ------- ...g-the-python-module-with-system-zlib.patch | 55 ------ ...-the-python-module-with-system-cares.patch | 55 ------ grpc.changes | 173 ++++++++++++++++++ grpc.spec | 10 +- v1.12.0.tar.gz | 3 - v1.15.1.tar.gz | 3 + 7 files changed, 178 insertions(+), 189 deletions(-) delete mode 100644 0001-Allow-building-the-python-module-with-system-openssl.patch delete mode 100644 0002-Allow-building-the-python-module-with-system-zlib.patch delete mode 100644 0003-Allow-building-the-python-module-with-system-cares.patch delete mode 100644 v1.12.0.tar.gz create mode 100644 v1.15.1.tar.gz 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..c704164 100644 --- a/grpc.changes +++ b/grpc.changes @@ -1,3 +1,176 @@ +------------------------------------------------------------------- +Sun Nov 11 10:57:12 UTC 2018 - Thomas Bechtold + +- update to 1.15.1: + Core + * Document SSL portability and performance considerations. See + https://github.com/grpc/grpc/blob/master/doc/ssl-performance.md . + * Simplify call arena size growth. (#16396) + * Make gRPC buildable with AIX and Solaris (no official support). (#15926) + * PF: Check connectivity state before watching. (#16306) + * Added system roots feature to load roots from OS trust store. (#16083) + * Fix c-ares compilation under windows (but doesn't yet enable windows DNS + queries), and then enables address sorting on Windows. (#16163) + * Fix re-resolution in pick first. (#16076) + * Allow error strings in final_info to propagate to filters on call + destruction. (#16104) + * Add resolver executor . (#16010) + * Data race fix for lockfree_event. (#16053) + * Channelz: Expose new Core API. (#16022) + C++ + * cmake: disable assembly optimizations only when necessary. (#16415) + * C++ sync server: Return status RESOURCE_EXHAUSTED if no thread quota + available. (#16356) + * Use correct target name for gflags-config.cmake. (#16343) + * Make should generate pkg-config file for gpr as well. (#15295) + * Restrict the number of threads in C++ sync server. (#16217) + * Allow reset of connection backoff. (#16225) + C# + * Add experimental support for Xamarin.Android and Xamarin.iOS, added + Helloworld example for Xamarin. + See https://github.com/grpc/grpc/tree/master/src/csharp/experimental. + * Add experimental support for Unity Android and iOS. + See https://github.com/grpc/grpc/tree/master/src/csharp/experimental. + * Add server reflection tutorial. + See https://github.com/grpc/grpc/blob/master/doc/csharp/server_reflection.md. + * Avoid deadlock while cancelling a call. (#16440) + * Subchannel sharing for secure channels now works as expected. (#16438) + * Allow dot in metadata keys. (#16444) + * Avoid shutdown crash on iOS. (#16308) + * Add script for creating a C# package for Unity. (#16208) + * Add Xamarin example. (#16194) + * Cleanup and update C# examples. (#16144) + * Grpc.Core: add support for x86 android emulator. (#16121) + * Xamarin iOS: Add libgrpc_csharp_ext.a for iOS into Grpc.Core nuget. (#16109) + * Xamarin support improvements . (#16099) + * Mark native callbacks with MonoPInvokeCallback. (#16094) + * Xamarin.Android: add support. (#15969) + Objective-C + * Make BoringSSL symbols private to gRPC in Obj-C so there is no conflict + when linking with OpenSSL. (#16358) + * Use environment variable to enable CFStream. (#16261) + * Surface error_string to ObjC users. (#16271) + * Fix GRPCCall refcounting issue. (#16213) + * Fixes an issue where BoringSSL-GRPC conflicts with OpenSSL (#16677) + Python + * Added experimental support for client-side fork on Linux and Mac by setting + the environment variable GRPC_ENABLE_FORK_SUPPORT=1. Applications may fork + with active RPCs, as long as no user threads are currently invoking gRPC + library methods. In-progress RPCs continue in the parent process, and the + child process may use gRPC by creating new channels. (#16264) + * Improve PyPy compatibility. (#16364) + * Fix segmentation fault caused by channel.close() when used with + connectivity-state subscriptions. (#16296) + * Add server reflection guide for Python. + See https://github.com/grpc/grpc/blob/master/doc/python/server_reflection.md. + * Add Cython functionality to directly wrap grpc_arg. (#16192, #16197) +- update to 1.14.2: + Core + * Add TROUBLESHOOTING.md guide (#15940) + * gRPC channels blocking indefinitely and not respecting deadlines on network + disconnect. (#15983) + * Add user guide for keepalive. (#15995) + * Fix GRPC_ARG_HTTP2_MIN_RECV_PING_INTERVAL_WITHOUT_DATA_MS doc to restrict + usage to server. (#15994) + * Fixed ordering in adding pending picks to Round Robin LB . (#15947) + * Implement local channel/server credentials for UDS connections. (#15909) + * Allow extra copy in zero-copy protector integrity-only mode. (#15901) + * Update to use the canonical version of LB proto. (#15840) + * Separate out the posix part of the c-ares driver. (#15780) + * Treat nanopb as a regular external dependency. (#15595) + * Prefer using https_proxy over http_proxy. (#15698) + * Refactor to put c-ares queries under a combiner. (#15490) + * Build c-ares with Bazel on Windows. (#15624) + * Remove already_closed parameter from fd_orphan. (#15648) + * Add channel arg to enable/disable http proxy. (#15699) + * Fix shutdown of closed fd when c-ares opens a second fd. (#15691) + * Segmentation fault when product name from BIOS is empty (#15929) + C++ + * Introduce server-side load reporting service. (#15196, #15570, #15853) + * Reorder steps in ServerBuilder::BuildAndStart(). (#15919) + * Support Per-Method Codegen Generic on Server Side. (#15771) + * Protobuf-related headers are available in a subspec of gRPC-C++ + podspec. (#15847) + C# + * Codegen fix: avoid potential name conflicts by using fully qualified name + in _Marshaller* fields. (#15688) + * cmake: Ability to disable building of grpc_csharp_ext (#15195) + * Added C# tests that demonstrate how to unit test gRPC code with test + doubles. (#15687) + * Promote the C# interceptor API from experimental to stable and eliminate + the EXPERIMENTAL API notice on the code elements. (15668) + Objective-C + * Allow control of backoff parameters. (#15838) + * Fix out-of-bounds access loading pem files. (#15554) + * Batch fixes for a few CFStream issues. (#15714) + Python + * Explicitly check conformance of handlers added to a gRPC server + to grpc.GenericRpcHandler type. (#15689) + * Expose SERVICE_NAME field from reflection and health checking + services. (#16153) + * Explicitly close channels in examples via the Channel.close API. (#15725) + Please note that gRPC requires explicit closure of Channel objects via + a with block or directly invoking the Channel.close API to ensure resources + are appropriately released. + * Official Python 3.7 binary wheels for Windows (x64), macOS, and Linux + (x86 and x64) are now available. (#15632) + * Optimize blocking intercepted response-unary calls to use the blocking + API and not rely on a future underneath. (#14639) + * Segmentation fault caused by channel.close() when used with + connectivity-state subscriptions. (#16296) + Ruby + * GRPC::Cancelled should occur when calling Enumrable#next on canceled call. (#15834) + * Be able to execute rspec for each file. (#15791) + * Unify nearly same methods. (#15755) +- update to 1.13.1: + Core + * gRPC stats will only be collected for debug builds or if GRPC_COLLECT_STATS + is defined. It will be disabled for opt builds. (#15280) + * Fix for Issue #13553. Unlimited can now be set as the max receive + message length. (#15394) + C++ + * cmake install now also installs should also installs the roots.pem file (#15319) + C# + * Remove the workaround code to detect channel disconnects and rely on C core + functionality instead. Note that there is a small change in behavior. + Before, clients would detect disconnected channels immediately. + * Provide debugging symbols for the grpc_csharp_ext native library used by the + C# code. Only available for Windows currently. (#14908) + * Allow creating instances of ServerCallContext in tests (#15214) + * Fix handling of some less common situations in C# code generator (#15583, #15639) + * Remove the shutdown hook on .NET core as it was not needed and was also + preventing the use of some useful shutdown patterns. (#15975) + Objective-C + * CFStream networking layer open for experiment (#15069, #15677, #15718) + *Fixed issue where BoringSSL podspec cannot be accessed from China (#15428, #15612) + *Bug fixes for gRPC Objective-C (#13180, #15050, #15285, #15429, #15531, ) + PHP + * Experimental support for the client-side interceptor. (#13342, #15779) + * Add upper bound for the persistent channel per target, which can be set by + the option ‘grpc_target_persist_bound’. By default, only 1 channel will be + persisted for each target. (#15218) + * Add experimental API for the call invoker. (#15749) + Python: + * Binary wheels for Python 3.7 on manylinux1 platform are now available. + * Source code is now Pylint 1.9.2-compliant (#15682). + * Testing utilities for gRPC Python are now readily available via + grpcio-testing from PyPI (#15819). + * requirements.txt no longer lists the futures package as a dependency—whose + installation used to be unnecessary on Python 3 but now actively breaks on Python 3 (#15362). + * Python errors have become more verbose. They now surface the actual error + from gRPC Core: #13689 + * GRPC_ENABLE_FORK_SUPPORT=false is no longer required when running fork-exec. + * Relying on an explicit with statement or explicitly calling Channel.close + to release the underlying resources in Channel objects is now a required + coding practice starting in v1.13.0. + +- 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..ba4d5be 100644 --- a/grpc.spec +++ b/grpc.spec @@ -12,23 +12,20 @@ # 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.15.1 Release: 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 BuildRequires: %{python_module Cython} BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} @@ -85,9 +82,6 @@ This subpackage contains the python3 bindings. %prep %setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 %build make %{?_smp_mflags} STRIP=/bin/true V=1 VERBOSE=1 \ 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.15.1.tar.gz b/v1.15.1.tar.gz new file mode 100644 index 0000000..a17a858 --- /dev/null +++ b/v1.15.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0186e800fbda420305c3489ddb28394059e1e6fc192a97fc7412d21b7306d82e +size 14084914 From b55f8408d7b02c89e747318aca9ec4bdea7fb90b6233c89b137cc8ceedbfb99d Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sun, 11 Nov 2018 17:50:57 +0000 Subject: [PATCH 2/3] Trim irrelevant change entries for Windows, other platforms, build procedure. Trim huge changelog. Wrap to 66. OBS-URL: https://build.opensuse.org/package/show/devel:tools/grpc?expand=0&rev=32 --- grpc.changes | 202 +++++++++++---------------------------------------- 1 file changed, 44 insertions(+), 158 deletions(-) diff --git a/grpc.changes b/grpc.changes index c704164..da7b0ee 100644 --- a/grpc.changes +++ b/grpc.changes @@ -2,168 +2,54 @@ Sun Nov 11 10:57:12 UTC 2018 - Thomas Bechtold - update to 1.15.1: - Core * Document SSL portability and performance considerations. See https://github.com/grpc/grpc/blob/master/doc/ssl-performance.md . - * Simplify call arena size growth. (#16396) - * Make gRPC buildable with AIX and Solaris (no official support). (#15926) - * PF: Check connectivity state before watching. (#16306) - * Added system roots feature to load roots from OS trust store. (#16083) - * Fix c-ares compilation under windows (but doesn't yet enable windows DNS - queries), and then enables address sorting on Windows. (#16163) - * Fix re-resolution in pick first. (#16076) - * Allow error strings in final_info to propagate to filters on call - destruction. (#16104) - * Add resolver executor . (#16010) - * Data race fix for lockfree_event. (#16053) - * Channelz: Expose new Core API. (#16022) - C++ - * cmake: disable assembly optimizations only when necessary. (#16415) - * C++ sync server: Return status RESOURCE_EXHAUSTED if no thread quota - available. (#16356) - * Use correct target name for gflags-config.cmake. (#16343) - * Make should generate pkg-config file for gpr as well. (#15295) - * Restrict the number of threads in C++ sync server. (#16217) - * Allow reset of connection backoff. (#16225) - C# - * Add experimental support for Xamarin.Android and Xamarin.iOS, added - Helloworld example for Xamarin. - See https://github.com/grpc/grpc/tree/master/src/csharp/experimental. - * Add experimental support for Unity Android and iOS. - See https://github.com/grpc/grpc/tree/master/src/csharp/experimental. - * Add server reflection tutorial. - See https://github.com/grpc/grpc/blob/master/doc/csharp/server_reflection.md. - * Avoid deadlock while cancelling a call. (#16440) - * Subchannel sharing for secure channels now works as expected. (#16438) - * Allow dot in metadata keys. (#16444) - * Avoid shutdown crash on iOS. (#16308) - * Add script for creating a C# package for Unity. (#16208) - * Add Xamarin example. (#16194) - * Cleanup and update C# examples. (#16144) - * Grpc.Core: add support for x86 android emulator. (#16121) - * Xamarin iOS: Add libgrpc_csharp_ext.a for iOS into Grpc.Core nuget. (#16109) - * Xamarin support improvements . (#16099) - * Mark native callbacks with MonoPInvokeCallback. (#16094) - * Xamarin.Android: add support. (#15969) - Objective-C - * Make BoringSSL symbols private to gRPC in Obj-C so there is no conflict - when linking with OpenSSL. (#16358) - * Use environment variable to enable CFStream. (#16261) - * Surface error_string to ObjC users. (#16271) - * Fix GRPCCall refcounting issue. (#16213) - * Fixes an issue where BoringSSL-GRPC conflicts with OpenSSL (#16677) - Python - * Added experimental support for client-side fork on Linux and Mac by setting - the environment variable GRPC_ENABLE_FORK_SUPPORT=1. Applications may fork - with active RPCs, as long as no user threads are currently invoking gRPC - library methods. In-progress RPCs continue in the parent process, and the - child process may use gRPC by creating new channels. (#16264) - * Improve PyPy compatibility. (#16364) - * Fix segmentation fault caused by channel.close() when used with - connectivity-state subscriptions. (#16296) - * Add server reflection guide for Python. - See https://github.com/grpc/grpc/blob/master/doc/python/server_reflection.md. - * Add Cython functionality to directly wrap grpc_arg. (#16192, #16197) + * 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: - Core - * Add TROUBLESHOOTING.md guide (#15940) - * gRPC channels blocking indefinitely and not respecting deadlines on network - disconnect. (#15983) - * Add user guide for keepalive. (#15995) - * Fix GRPC_ARG_HTTP2_MIN_RECV_PING_INTERVAL_WITHOUT_DATA_MS doc to restrict - usage to server. (#15994) - * Fixed ordering in adding pending picks to Round Robin LB . (#15947) - * Implement local channel/server credentials for UDS connections. (#15909) - * Allow extra copy in zero-copy protector integrity-only mode. (#15901) - * Update to use the canonical version of LB proto. (#15840) - * Separate out the posix part of the c-ares driver. (#15780) - * Treat nanopb as a regular external dependency. (#15595) - * Prefer using https_proxy over http_proxy. (#15698) - * Refactor to put c-ares queries under a combiner. (#15490) - * Build c-ares with Bazel on Windows. (#15624) - * Remove already_closed parameter from fd_orphan. (#15648) - * Add channel arg to enable/disable http proxy. (#15699) - * Fix shutdown of closed fd when c-ares opens a second fd. (#15691) - * Segmentation fault when product name from BIOS is empty (#15929) - C++ - * Introduce server-side load reporting service. (#15196, #15570, #15853) - * Reorder steps in ServerBuilder::BuildAndStart(). (#15919) - * Support Per-Method Codegen Generic on Server Side. (#15771) - * Protobuf-related headers are available in a subspec of gRPC-C++ - podspec. (#15847) - C# - * Codegen fix: avoid potential name conflicts by using fully qualified name - in _Marshaller* fields. (#15688) - * cmake: Ability to disable building of grpc_csharp_ext (#15195) - * Added C# tests that demonstrate how to unit test gRPC code with test - doubles. (#15687) - * Promote the C# interceptor API from experimental to stable and eliminate - the EXPERIMENTAL API notice on the code elements. (15668) - Objective-C - * Allow control of backoff parameters. (#15838) - * Fix out-of-bounds access loading pem files. (#15554) - * Batch fixes for a few CFStream issues. (#15714) - Python - * Explicitly check conformance of handlers added to a gRPC server - to grpc.GenericRpcHandler type. (#15689) - * Expose SERVICE_NAME field from reflection and health checking - services. (#16153) - * Explicitly close channels in examples via the Channel.close API. (#15725) - Please note that gRPC requires explicit closure of Channel objects via - a with block or directly invoking the Channel.close API to ensure resources - are appropriately released. - * Official Python 3.7 binary wheels for Windows (x64), macOS, and Linux - (x86 and x64) are now available. (#15632) - * Optimize blocking intercepted response-unary calls to use the blocking - API and not rely on a future underneath. (#14639) - * Segmentation fault caused by channel.close() when used with - connectivity-state subscriptions. (#16296) - Ruby - * GRPC::Cancelled should occur when calling Enumrable#next on canceled call. (#15834) - * Be able to execute rspec for each file. (#15791) - * Unify nearly same methods. (#15755) + * 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: - Core - * gRPC stats will only be collected for debug builds or if GRPC_COLLECT_STATS - is defined. It will be disabled for opt builds. (#15280) - * Fix for Issue #13553. Unlimited can now be set as the max receive - message length. (#15394) - C++ - * cmake install now also installs should also installs the roots.pem file (#15319) - C# - * Remove the workaround code to detect channel disconnects and rely on C core - functionality instead. Note that there is a small change in behavior. - Before, clients would detect disconnected channels immediately. - * Provide debugging symbols for the grpc_csharp_ext native library used by the - C# code. Only available for Windows currently. (#14908) - * Allow creating instances of ServerCallContext in tests (#15214) - * Fix handling of some less common situations in C# code generator (#15583, #15639) - * Remove the shutdown hook on .NET core as it was not needed and was also - preventing the use of some useful shutdown patterns. (#15975) - Objective-C - * CFStream networking layer open for experiment (#15069, #15677, #15718) - *Fixed issue where BoringSSL podspec cannot be accessed from China (#15428, #15612) - *Bug fixes for gRPC Objective-C (#13180, #15050, #15285, #15429, #15531, ) - PHP - * Experimental support for the client-side interceptor. (#13342, #15779) - * Add upper bound for the persistent channel per target, which can be set by - the option ‘grpc_target_persist_bound’. By default, only 1 channel will be - persisted for each target. (#15218) - * Add experimental API for the call invoker. (#15749) - Python: - * Binary wheels for Python 3.7 on manylinux1 platform are now available. - * Source code is now Pylint 1.9.2-compliant (#15682). - * Testing utilities for gRPC Python are now readily available via - grpcio-testing from PyPI (#15819). - * requirements.txt no longer lists the futures package as a dependency—whose - installation used to be unnecessary on Python 3 but now actively breaks on Python 3 (#15362). - * Python errors have become more verbose. They now surface the actual error - from gRPC Core: #13689 - * GRPC_ENABLE_FORK_SUPPORT=false is no longer required when running fork-exec. - * Relying on an explicit with statement or explicitly calling Channel.close - to release the underlying resources in Channel objects is now a required - coding practice starting in v1.13.0. - + * 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 From 30721f4efcaa5216a369ef2faf7dafcdebc8c92919650b3c59d268ea7bb0ca36 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sun, 11 Nov 2018 18:03:51 +0000 Subject: [PATCH 3/3] - Update to new upstream release 1.16 OBS-URL: https://build.opensuse.org/package/show/devel:tools/grpc?expand=0&rev=33 --- grpc.changes | 11 +++++++++++ grpc.spec | 25 +++++++++++++------------ v1.15.1.tar.gz | 3 --- v1.16.0.tar.gz | 3 +++ 4 files changed, 27 insertions(+), 15 deletions(-) delete mode 100644 v1.15.1.tar.gz create mode 100644 v1.16.0.tar.gz diff --git a/grpc.changes b/grpc.changes index da7b0ee..fe60d8c 100644 --- a/grpc.changes +++ b/grpc.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +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 diff --git a/grpc.spec b/grpc.spec index ba4d5be..d1397ff 100644 --- a/grpc.spec +++ b/grpc.spec @@ -19,13 +19,14 @@ %define lname libgrpc6 %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: grpc -Version: 1.15.1 +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 +Source: https://github.com/grpc/grpc/archive/v%rver.tar.gz BuildRequires: %{python_module Cython} BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} @@ -65,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. @@ -74,14 +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 +%setup -qn grpc-%rver %build make %{?_smp_mflags} STRIP=/bin/true V=1 VERBOSE=1 \ @@ -92,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 @@ -127,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.15.1.tar.gz b/v1.15.1.tar.gz deleted file mode 100644 index a17a858..0000000 --- a/v1.15.1.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0186e800fbda420305c3489ddb28394059e1e6fc192a97fc7412d21b7306d82e -size 14084914 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