Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package protobuf for openSUSE:Factory checked in at 2022-02-01 14:02:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/protobuf (Old) and /work/SRC/openSUSE:Factory/.protobuf.new.1898 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "protobuf" Tue Feb 1 14:02:35 2022 rev:54 rq:949772 version:3.19.4 Changes: -------- --- /work/SRC/openSUSE:Factory/protobuf/protobuf.changes 2022-01-27 23:16:20.715235855 +0100 +++ /work/SRC/openSUSE:Factory/.protobuf.new.1898/protobuf.changes 2022-02-01 14:03:04.876021643 +0100 @@ -1,0 +2,13 @@ +Fri Jan 28 20:38:41 UTC 2022 - Dirk M??ller <[email protected]> + +- update to 3.19.4: + Python: + * Make libprotobuf symbols local on OSX to fix issue #9395 (#9435) + Ruby: + * Fixed a data loss bug that could occur when the number of optional fields + in a message is an exact multiple of 32 + PHP: + * Fixed a data loss bug that could occur when the number of optional fields + in a message is an exact multiple of 32. + +------------------------------------------------------------------- Old: ---- protobuf-3.19.3.tar.gz New: ---- protobuf-3.19.4.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ protobuf.spec ++++++ --- /var/tmp/diff_new_pack.Hef1x4/_old 2022-02-01 14:03:05.384018161 +0100 +++ /var/tmp/diff_new_pack.Hef1x4/_new 2022-02-01 14:03:05.388018133 +0100 @@ -27,7 +27,7 @@ %bcond_without python2 %bcond_without python3 Name: protobuf -Version: 3.19.3 +Version: 3.19.4 Release: 0 Summary: Protocol Buffers - Google's data interchange format License: BSD-3-Clause ++++++ protobuf-3.19.3.tar.gz -> protobuf-3.19.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/CHANGES.txt new/protobuf-3.19.4/CHANGES.txt --- old/protobuf-3.19.3/CHANGES.txt 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/CHANGES.txt 2022-01-28 04:35:56.000000000 +0100 @@ -1,3 +1,16 @@ +2022-01-28 version 3.19.4 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript) + + Python + * Make libprotobuf symbols local on OSX to fix issue #9395 (#9435) + + Ruby + * Fixed a data loss bug that could occur when the number of `optional` + fields in a message is an exact multiple of 32. (#9440). + + PHP + * Fixed a data loss bug that could occur when the number of `optional` + fields in a message is an exact multiple of 32. (#9440). + 2022-01-10 version 3.19.3 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript) Python diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/Protobuf-C++.podspec new/protobuf-3.19.4/Protobuf-C++.podspec --- old/protobuf-3.19.3/Protobuf-C++.podspec 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/Protobuf-C++.podspec 2022-01-28 04:35:56.000000000 +0100 @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'Protobuf-C++' - s.version = '3.19.3' + s.version = '3.19.4' s.summary = 'Protocol Buffers v3 runtime library for C++.' s.homepage = 'https://github.com/google/protobuf' s.license = '3-Clause BSD License' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/Protobuf.podspec new/protobuf-3.19.4/Protobuf.podspec --- old/protobuf-3.19.3/Protobuf.podspec 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/Protobuf.podspec 2022-01-28 04:35:56.000000000 +0100 @@ -5,7 +5,7 @@ # dependent projects use the :git notation to refer to the library. Pod::Spec.new do |s| s.name = 'Protobuf' - s.version = '3.19.3' + s.version = '3.19.4' s.summary = 'Protocol Buffers v.3 runtime library for Objective-C.' s.homepage = 'https://github.com/protocolbuffers/protobuf' s.license = '3-Clause BSD License' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/configure.ac new/protobuf-3.19.4/configure.ac --- old/protobuf-3.19.3/configure.ac 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/configure.ac 2022-01-28 04:35:56.000000000 +0100 @@ -17,7 +17,7 @@ # In the SVN trunk, the version should always be the next anticipated release # version with the "-pre" suffix. (We used to use "-SNAPSHOT" but this pushed # the size of one file name in the dist tarfile over the 99-char limit.) -AC_INIT([Protocol Buffers],[3.19.3],[[email protected]],[protobuf]) +AC_INIT([Protocol Buffers],[3.19.4],[[email protected]],[protobuf]) AM_MAINTAINER_MODE([enable]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/csharp/Google.Protobuf.Tools.nuspec new/protobuf-3.19.4/csharp/Google.Protobuf.Tools.nuspec --- old/protobuf-3.19.3/csharp/Google.Protobuf.Tools.nuspec 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/csharp/Google.Protobuf.Tools.nuspec 2022-01-28 04:35:56.000000000 +0100 @@ -5,7 +5,7 @@ <title>Google Protocol Buffers tools</title> <summary>Tools for Protocol Buffers - Google's data interchange format.</summary> <description>See project site for more info.</description> - <version>3.19.3</version> + <version>3.19.4</version> <authors>Google Inc.</authors> <owners>protobuf-packages</owners> <licenseUrl>https://github.com/protocolbuffers/protobuf/blob/master/LICENSE</licenseUrl> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/csharp/src/Google.Protobuf/Google.Protobuf.csproj new/protobuf-3.19.4/csharp/src/Google.Protobuf/Google.Protobuf.csproj --- old/protobuf-3.19.3/csharp/src/Google.Protobuf/Google.Protobuf.csproj 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/csharp/src/Google.Protobuf/Google.Protobuf.csproj 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <Description>C# runtime library for Protocol Buffers - Google's data interchange format.</Description> <Copyright>Copyright 2015, Google Inc.</Copyright> <AssemblyTitle>Google Protocol Buffers</AssemblyTitle> - <VersionPrefix>3.19.3</VersionPrefix> + <VersionPrefix>3.19.4</VersionPrefix> <!-- C# 7.2 is required for Span/BufferWriter/ReadOnlySequence --> <LangVersion>7.2</LangVersion> <Authors>Google Inc.</Authors> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/README.md new/protobuf-3.19.4/java/README.md --- old/protobuf-3.19.3/java/README.md 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/README.md 2022-01-28 04:35:56.000000000 +0100 @@ -23,7 +23,7 @@ <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </dependency> ``` @@ -37,7 +37,7 @@ <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </dependency> ``` @@ -45,7 +45,7 @@ If you are using Gradle, add the following to your `build.gradle` file's dependencies: ``` - implementation 'com.google.protobuf:protobuf-java:3.19.3' + implementation 'com.google.protobuf:protobuf-java:3.19.4' ``` Again, be sure to check that the version number matches (or is newer than) the version number of protoc that you are using. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/bom/pom.xml new/protobuf-3.19.4/java/bom/pom.xml --- old/protobuf-3.19.3/java/bom/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/bom/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <groupId>com.google.protobuf</groupId> <artifactId>protobuf-bom</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> <packaging>pom</packaging> <name>Protocol Buffers [BOM]</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/core/pom.xml new/protobuf-3.19.4/java/core/pom.xml --- old/protobuf-3.19.3/java/core/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/core/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <parent> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-parent</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </parent> <artifactId>protobuf-java</artifactId> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/kotlin/pom.xml new/protobuf-3.19.4/java/kotlin/pom.xml --- old/protobuf-3.19.3/java/kotlin/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/kotlin/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <parent> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-parent</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </parent> <artifactId>protobuf-kotlin</artifactId> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/kotlin-lite/pom.xml new/protobuf-3.19.4/java/kotlin-lite/pom.xml --- old/protobuf-3.19.3/java/kotlin-lite/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/kotlin-lite/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <parent> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-parent</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </parent> <artifactId>protobuf-kotlin-lite</artifactId> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/lite/pom.xml new/protobuf-3.19.4/java/lite/pom.xml --- old/protobuf-3.19.3/java/lite/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/lite/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <parent> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-parent</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </parent> <artifactId>protobuf-javalite</artifactId> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/lite.md new/protobuf-3.19.4/java/lite.md --- old/protobuf-3.19.3/java/lite.md 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/lite.md 2022-01-28 04:35:56.000000000 +0100 @@ -30,7 +30,7 @@ <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-javalite</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </dependency> ``` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/pom.xml new/protobuf-3.19.4/java/pom.xml --- old/protobuf-3.19.3/java/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <groupId>com.google.protobuf</groupId> <artifactId>protobuf-parent</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> <packaging>pom</packaging> <name>Protocol Buffers [Parent]</name> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/java/util/pom.xml new/protobuf-3.19.4/java/util/pom.xml --- old/protobuf-3.19.3/java/util/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/java/util/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -4,7 +4,7 @@ <parent> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-parent</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </parent> <artifactId>protobuf-java-util</artifactId> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/js/package.json new/protobuf-3.19.4/js/package.json --- old/protobuf-3.19.3/js/package.json 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/js/package.json 2022-01-28 04:35:56.000000000 +0100 @@ -1,6 +1,6 @@ { "name": "google-protobuf", - "version": "3.19.3", + "version": "3.19.4", "description": "Protocol Buffers for JavaScript", "main": "google-protobuf.js", "files": [ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/php/ext/google/protobuf/package.xml new/protobuf-3.19.4/php/ext/google/protobuf/package.xml --- old/protobuf-3.19.3/php/ext/google/protobuf/package.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/php/ext/google/protobuf/package.xml 2022-01-28 04:35:56.000000000 +0100 @@ -10,11 +10,11 @@ <email>[email protected]</email> <active>yes</active> </lead> - <date>2022-01-11</date> - <time>00:58:50</time> + <date>2022-01-28</date> + <time>00:03:40</time> <version> - <release>3.19.3</release> - <api>3.19.3</api> + <release>3.19.4</release> + <api>3.19.4</api> </version> <stability> <release>stable</release> @@ -22,7 +22,7 @@ </stability> <license uri="https://opensource.org/licenses/BSD-3-Clause">3-Clause BSD License</license> <notes> - * No new changes in 3.19.3 + * Fixed a data loss bug that could occur when the number of optional fields in a message is an exact multiple of 32. (#9440). </notes> <contents> <dir baseinstalldir="/" name="/"> @@ -1187,6 +1187,21 @@ <license uri="https://opensource.org/licenses/BSD-3-Clause">3-Clause BSD License</license> <notes> </notes> + </release> + <release> + <version> + <release>3.19.4</release> + <api>3.19.4</api> + </version> + <stability> + <release>stable</release> + <api>stable</api> + </stability> + <date>2022-01-28</date> + <time>00:03:40</time> + <license uri="https://opensource.org/licenses/BSD-3-Clause">3-Clause BSD License</license> + <notes> + </notes> </release> </changelog> </package> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/php/ext/google/protobuf/php-upb.c new/protobuf-3.19.4/php/ext/google/protobuf/php-upb.c --- old/protobuf-3.19.3/php/ext/google/protobuf/php-upb.c 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/php/ext/google/protobuf/php-upb.c 2022-01-28 04:35:56.000000000 +0100 @@ -5968,7 +5968,7 @@ } /* Account for space used by hasbits. */ - l->size = div_round_up(hasbit, 8); + l->size = div_round_up(hasbit + 1, 8); /* Allocate non-oneof fields. */ for (upb_msg_field_begin(&it, m); !upb_msg_field_done(&it); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/php/ext/google/protobuf/protobuf.h new/protobuf-3.19.4/php/ext/google/protobuf/protobuf.h --- old/protobuf-3.19.3/php/ext/google/protobuf/protobuf.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/php/ext/google/protobuf/protobuf.h 2022-01-28 04:35:56.000000000 +0100 @@ -91,7 +91,7 @@ ZEND_ARG_INFO(0, value) ZEND_END_ARG_INFO() -#define PHP_PROTOBUF_VERSION "3.19.3" +#define PHP_PROTOBUF_VERSION "3.19.4" // ptr -> PHP object cache. This is a weak map that caches lazily-created // wrapper objects around upb types: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/php/tests/GeneratedClassTest.php new/protobuf-3.19.4/php/tests/GeneratedClassTest.php --- old/protobuf-3.19.3/php/tests/GeneratedClassTest.php 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/php/tests/GeneratedClassTest.php 2022-01-28 04:35:56.000000000 +0100 @@ -9,6 +9,7 @@ use Bar\TestLegacyMessage; use Bar\TestLegacyMessage_NestedEnum; use Bar\TestLegacyMessage_NestedMessage; +use Foo\Test32Fields; use Foo\TestEnum; use Foo\TestIncludeNamespaceMessage; use Foo\TestIncludePrefixMessage; @@ -1849,4 +1850,13 @@ $this->assertTrue(true); } + + public function testIssue9440() + { + $m = new Test32Fields(); + $m->setId(8); + $this->assertEquals(8, $m->getId()); + $m->setVersion('1'); + $this->assertEquals(8, $m->getId()); + } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/php/tests/proto/test.proto new/protobuf-3.19.4/php/tests/proto/test.proto --- old/protobuf-3.19.3/php/tests/proto/test.proto 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/php/tests/proto/test.proto 2022-01-28 04:35:56.000000000 +0100 @@ -306,3 +306,38 @@ int32 int32_field = 4; } } + +message Test32Fields { + optional uint32 id = 1; + optional uint32 random_name_a0 = 2; + optional uint32 random_name_a1 = 3; + optional uint32 random_name_a2 = 4; + optional uint32 random_name_a3 = 5; + optional uint32 random_name_a4 = 6; + optional uint32 random_name_a5 = 7; + optional uint32 random_name_a6 = 8; + optional uint32 random_name_a7 = 9; + optional uint32 random_name_a8 = 10; + optional uint32 random_name_a9 = 11; + optional uint32 random_name_b0 = 12; + optional uint32 random_name_b1 = 13; + optional uint32 random_name_b2 = 14; + optional uint32 random_name_b3 = 15; + optional uint32 random_name_b4 = 16; + optional uint32 random_name_b5 = 17; + optional uint32 random_name_b6 = 18; + optional uint32 random_name_b7 = 19; + optional uint32 random_name_b8 = 20; + optional uint32 random_name_b9 = 21; + optional uint32 random_name_c0 = 22; + optional uint32 random_name_c1 = 23; + optional uint32 random_name_c2 = 24; + optional uint32 random_name_c3 = 25; + optional uint32 random_name_c4 = 26; + optional uint32 random_name_c5 = 27; + optional uint32 random_name_c6 = 28; + optional uint32 random_name_c7 = 29; + optional uint32 random_name_c8 = 30; + optional uint32 random_name_c9 = 31; + optional string version = 32; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/protobuf_version.bzl new/protobuf-3.19.4/protobuf_version.bzl --- old/protobuf-3.19.3/protobuf_version.bzl 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/protobuf_version.bzl 2022-01-28 04:35:56.000000000 +0100 @@ -1 +1 @@ -PROTOBUF_VERSION = '3.19.3' +PROTOBUF_VERSION = '3.19.4' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/protoc-artifacts/pom.xml new/protobuf-3.19.4/protoc-artifacts/pom.xml --- old/protobuf-3.19.3/protoc-artifacts/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/protoc-artifacts/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -8,7 +8,7 @@ </parent> <groupId>com.google.protobuf</groupId> <artifactId>protoc</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> <packaging>pom</packaging> <name>Protobuf Compiler</name> <description> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/python/google/protobuf/__init__.py new/protobuf-3.19.4/python/google/protobuf/__init__.py --- old/protobuf-3.19.3/python/google/protobuf/__init__.py 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/python/google/protobuf/__init__.py 2022-01-28 04:35:56.000000000 +0100 @@ -30,4 +30,4 @@ # Copyright 2007 Google Inc. All Rights Reserved. -__version__ = '3.19.3' +__version__ = '3.19.4' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/python/setup.py new/protobuf-3.19.4/python/setup.py --- old/protobuf-3.19.3/python/setup.py 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/python/setup.py 2022-01-28 04:35:56.000000000 +0100 @@ -210,6 +210,18 @@ extra_compile_args = [] + message_extra_link_args = None + api_implementation_link_args = None + if "darwin" in sys.platform: + if sys.version_info[0] == 2: + message_init_symbol = 'init_message' + api_implementation_init_symbol = 'init_api_implementation' + else: + message_init_symbol = 'PyInit__message' + api_implementation_init_symbol = 'PyInit__api_implementation' + message_extra_link_args = ['-Wl,-exported_symbol,_%s' % message_init_symbol] + api_implementation_link_args = ['-Wl,-exported_symbol,_%s' % api_implementation_init_symbol] + if sys.platform != 'win32': extra_compile_args.append('-Wno-write-strings') extra_compile_args.append('-Wno-invalid-offsetof') @@ -260,6 +272,7 @@ include_dirs=[".", "../src"], libraries=libraries, extra_objects=extra_objects, + extra_link_args=message_extra_link_args, library_dirs=['../src/.libs'], extra_compile_args=extra_compile_args, ), @@ -267,6 +280,7 @@ "google.protobuf.internal._api_implementation", glob.glob('google/protobuf/internal/api_implementation.cc'), extra_compile_args=extra_compile_args + ['-DPYTHON_PROTO2_CPP_IMPL_V2'], + extra_link_args=api_implementation_link_args, ), ]) os.environ['PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION'] = 'cpp' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/ruby/ext/google/protobuf_c/ruby-upb.c new/protobuf-3.19.4/ruby/ext/google/protobuf_c/ruby-upb.c --- old/protobuf-3.19.3/ruby/ext/google/protobuf_c/ruby-upb.c 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/ruby/ext/google/protobuf_c/ruby-upb.c 2022-01-28 04:35:56.000000000 +0100 @@ -5583,7 +5583,7 @@ } /* Account for space used by hasbits. */ - l->size = div_round_up(hasbit, 8); + l->size = div_round_up(hasbit + 1, 8); /* Allocate non-oneof fields. */ for (upb_msg_field_begin(&it, m); !upb_msg_field_done(&it); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/ruby/google-protobuf.gemspec new/protobuf-3.19.4/ruby/google-protobuf.gemspec --- old/protobuf-3.19.3/ruby/google-protobuf.gemspec 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/ruby/google-protobuf.gemspec 2022-01-28 04:35:56.000000000 +0100 @@ -1,6 +1,6 @@ Gem::Specification.new do |s| s.name = "google-protobuf" - s.version = "3.19.3" + s.version = "3.19.4" git_tag = "v#{s.version.to_s.sub('.rc.', '-rc')}" # Converts X.Y.Z.rc.N to vX.Y.Z-rcN, used for the git tag s.licenses = ["BSD-3-Clause"] s.summary = "Protocol Buffers" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/ruby/pom.xml new/protobuf-3.19.4/ruby/pom.xml --- old/protobuf-3.19.3/ruby/pom.xml 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/ruby/pom.xml 2022-01-28 04:35:56.000000000 +0100 @@ -9,7 +9,7 @@ <groupId>com.google.protobuf.jruby</groupId> <artifactId>protobuf-jruby</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> <name>Protocol Buffer JRuby native extension</name> <description> Protocol Buffers are a way of encoding structured data in an efficient yet @@ -76,7 +76,7 @@ <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java-util</artifactId> - <version>3.19.3</version> + <version>3.19.4</version> </dependency> <dependency> <groupId>org.jruby</groupId> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/ruby/tests/basic.rb new/protobuf-3.19.4/ruby/tests/basic.rb --- old/protobuf-3.19.3/ruby/tests/basic.rb 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/ruby/tests/basic.rb 2022-01-28 04:35:56.000000000 +0100 @@ -71,6 +71,14 @@ TestMessage.encode(msg) end + def test_issue_9440 + msg = HelloRequest.new + msg.id = 8 + assert_equal 8, msg.id + msg.version = '1' + assert_equal 8, msg.id + end + def test_has_field m = TestSingularFields.new assert !m.has_singular_msg? diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/ruby/tests/basic_test.proto new/protobuf-3.19.4/ruby/tests/basic_test.proto --- old/protobuf-3.19.3/ruby/tests/basic_test.proto 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/ruby/tests/basic_test.proto 2022-01-28 04:35:56.000000000 +0100 @@ -215,3 +215,38 @@ optional int32 foo_bar = 1 [json_name="jsonFooBar"]; repeated WithJsonName baz = 2 [json_name="jsonBaz"]; } + +message HelloRequest { + optional uint32 id = 1; + optional uint32 random_name_a0 = 2; + optional uint32 random_name_a1 = 3; + optional uint32 random_name_a2 = 4; + optional uint32 random_name_a3 = 5; + optional uint32 random_name_a4 = 6; + optional uint32 random_name_a5 = 7; + optional uint32 random_name_a6 = 8; + optional uint32 random_name_a7 = 9; + optional uint32 random_name_a8 = 10; + optional uint32 random_name_a9 = 11; + optional uint32 random_name_b0 = 12; + optional uint32 random_name_b1 = 13; + optional uint32 random_name_b2 = 14; + optional uint32 random_name_b3 = 15; + optional uint32 random_name_b4 = 16; + optional uint32 random_name_b5 = 17; + optional uint32 random_name_b6 = 18; + optional uint32 random_name_b7 = 19; + optional uint32 random_name_b8 = 20; + optional uint32 random_name_b9 = 21; + optional uint32 random_name_c0 = 22; + optional uint32 random_name_c1 = 23; + optional uint32 random_name_c2 = 24; + optional uint32 random_name_c3 = 25; + optional uint32 random_name_c4 = 26; + optional uint32 random_name_c5 = 27; + optional uint32 random_name_c6 = 28; + optional uint32 random_name_c7 = 29; + optional uint32 random_name_c8 = 30; + optional uint32 random_name_c9 = 31; + optional string version = 32; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/Makefile.am new/protobuf-3.19.4/src/Makefile.am --- old/protobuf-3.19.3/src/Makefile.am 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/Makefile.am 2022-01-28 04:35:56.000000000 +0100 @@ -18,7 +18,7 @@ PTHREAD_DEF = endif -PROTOBUF_VERSION = 30:3:0 +PROTOBUF_VERSION = 30:4:0 if GCC # Turn on all warnings except for sign comparison (we ignore sign comparison diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/any.pb.h new/protobuf-3.19.4/src/google/protobuf/any.pb.h --- old/protobuf-3.19.3/src/google/protobuf/any.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/any.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/api.pb.h new/protobuf-3.19.4/src/google/protobuf/api.pb.h --- old/protobuf-3.19.3/src/google/protobuf/api.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/api.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/compiler/plugin.pb.h new/protobuf-3.19.4/src/google/protobuf/compiler/plugin.pb.h --- old/protobuf-3.19.3/src/google/protobuf/compiler/plugin.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/compiler/plugin.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/descriptor.pb.h new/protobuf-3.19.4/src/google/protobuf/descriptor.pb.h --- old/protobuf-3.19.3/src/google/protobuf/descriptor.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/descriptor.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/duration.pb.h new/protobuf-3.19.4/src/google/protobuf/duration.pb.h --- old/protobuf-3.19.3/src/google/protobuf/duration.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/duration.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/empty.pb.h new/protobuf-3.19.4/src/google/protobuf/empty.pb.h --- old/protobuf-3.19.3/src/google/protobuf/empty.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/empty.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/field_mask.pb.h new/protobuf-3.19.4/src/google/protobuf/field_mask.pb.h --- old/protobuf-3.19.3/src/google/protobuf/field_mask.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/field_mask.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/port_def.inc new/protobuf-3.19.4/src/google/protobuf/port_def.inc --- old/protobuf-3.19.3/src/google/protobuf/port_def.inc 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/port_def.inc 2022-01-28 04:35:56.000000000 +0100 @@ -153,7 +153,7 @@ #ifdef PROTOBUF_VERSION #error PROTOBUF_VERSION was previously defined #endif -#define PROTOBUF_VERSION 3019003 +#define PROTOBUF_VERSION 3019004 #ifdef PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC #error PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC was previously defined diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/source_context.pb.h new/protobuf-3.19.4/src/google/protobuf/source_context.pb.h --- old/protobuf-3.19.3/src/google/protobuf/source_context.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/source_context.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/struct.pb.h new/protobuf-3.19.4/src/google/protobuf/struct.pb.h --- old/protobuf-3.19.3/src/google/protobuf/struct.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/struct.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/stubs/common.h new/protobuf-3.19.4/src/google/protobuf/stubs/common.h --- old/protobuf-3.19.3/src/google/protobuf/stubs/common.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/stubs/common.h 2022-01-28 04:35:56.000000000 +0100 @@ -82,7 +82,7 @@ // The current version, represented as a single integer to make comparison // easier: major * 10^6 + minor * 10^3 + micro -#define GOOGLE_PROTOBUF_VERSION 3019003 +#define GOOGLE_PROTOBUF_VERSION 3019004 // A suffix string for alpha, beta or rc releases. Empty for stable releases. #define GOOGLE_PROTOBUF_VERSION_SUFFIX "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/timestamp.pb.h new/protobuf-3.19.4/src/google/protobuf/timestamp.pb.h --- old/protobuf-3.19.3/src/google/protobuf/timestamp.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/timestamp.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/type.pb.h new/protobuf-3.19.4/src/google/protobuf/type.pb.h --- old/protobuf-3.19.3/src/google/protobuf/type.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/type.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/protobuf-3.19.3/src/google/protobuf/wrappers.pb.h new/protobuf-3.19.4/src/google/protobuf/wrappers.pb.h --- old/protobuf-3.19.3/src/google/protobuf/wrappers.pb.h 2022-01-11 03:08:15.000000000 +0100 +++ new/protobuf-3.19.4/src/google/protobuf/wrappers.pb.h 2022-01-28 04:35:56.000000000 +0100 @@ -13,7 +13,7 @@ #error incompatible with your Protocol Buffer headers. Please update #error your headers. #endif -#if 3019003 < PROTOBUF_MIN_PROTOC_VERSION +#if 3019004 < PROTOBUF_MIN_PROTOC_VERSION #error This file was generated by an older version of protoc which is #error incompatible with your Protocol Buffer headers. Please #error regenerate this file with a newer version of protoc.
