Merge 21.x into main
This commit is contained in:
commit
258514019f
@ -1,5 +1,4 @@
|
||||
# These are fetched as external repositories.
|
||||
third_party/abseil-cpp
|
||||
third_party/benchmark
|
||||
third_party/googletest
|
||||
_build/
|
||||
|
4
.gitmodules
vendored
4
.gitmodules
vendored
@ -5,7 +5,3 @@
|
||||
path = third_party/googletest
|
||||
url = https://github.com/google/googletest.git
|
||||
ignore = dirty
|
||||
[submodule "third_party/abseil-cpp"]
|
||||
path = third_party/abseil-cpp
|
||||
url = https://github.com/abseil/abseil-cpp.git
|
||||
branch = lts_2021_11_02
|
||||
|
17
BUILD.bazel
17
BUILD.bazel
@ -5,8 +5,20 @@ load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library", "cc_proto_library", "c
|
||||
load("@rules_pkg//:mappings.bzl", "pkg_files", "strip_prefix")
|
||||
load("@rules_proto//proto:defs.bzl", "proto_lang_toolchain", "proto_library")
|
||||
load("@rules_java//java:defs.bzl", "java_binary", "java_lite_proto_library", "java_proto_library")
|
||||
<<<<<<< HEAD
|
||||
load("//build_defs:cpp_opts.bzl", "COPTS", "LINK_OPTS")
|
||||
load(":protobuf.bzl", "py_proto_library")
|
||||
=======
|
||||
load("//build_defs:cpp_opts.bzl", "COPTS", "LINK_OPTS", "PROTOC_LINK_OPTS")
|
||||
load(
|
||||
":protobuf.bzl",
|
||||
"adapt_proto_library",
|
||||
"cc_proto_library",
|
||||
"internal_copied_filegroup",
|
||||
"internal_protobuf_py_tests",
|
||||
"py_proto_library",
|
||||
)
|
||||
>>>>>>> upstream/21.x
|
||||
|
||||
licenses(["notice"])
|
||||
|
||||
@ -151,7 +163,12 @@ filegroup(
|
||||
|
||||
cc_binary(
|
||||
name = "protoc",
|
||||
<<<<<<< HEAD
|
||||
linkopts = LINK_OPTS,
|
||||
=======
|
||||
srcs = ["src/google/protobuf/compiler/main.cc"],
|
||||
linkopts = LINK_OPTS + PROTOC_LINK_OPTS,
|
||||
>>>>>>> upstream/21.x
|
||||
visibility = ["//visibility:public"],
|
||||
deps = ["//src/google/protobuf/compiler:protoc_lib"],
|
||||
)
|
||||
|
60
CHANGES.txt
60
CHANGES.txt
@ -1,3 +1,63 @@
|
||||
2022-05-27 version 21.1 (C++/Java/Python/PHP/Objective-C/C#/Ruby)
|
||||
|
||||
C++
|
||||
* cmake: Revert "Fix cmake install targets (#9822)" (#10060)
|
||||
* Remove Abseil dependency from CMake build (#10056)
|
||||
|
||||
Python
|
||||
* Update python wheel metadata with more information incl. required python version (#10058)
|
||||
* Fix segmentation fault when instantiating field via repeated field assignment (#10066)
|
||||
|
||||
2022-05-25 version 21.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby)
|
||||
|
||||
C++
|
||||
* cmake: Call get_filename_component() with DIRECTORY mode instead of PATH mode (#9614)
|
||||
* Escape GetObject macro inside protoc-generated code (#9739)
|
||||
* Update CMake configuration to add a dependency on Abseil (#9793)
|
||||
* Fix cmake install targets (#9822)
|
||||
* Use __constinit only in GCC 12.2 and up (#9936)
|
||||
|
||||
Java
|
||||
* Update protobuf_version.bzl to separate protoc and per-language java … (#9900)
|
||||
|
||||
Python
|
||||
* Increment python major version to 4 in version.json for python upb (#9926)
|
||||
* The C extension module for Python has been rewritten to use the upb library.
|
||||
This is expected to deliver significant performance benefits, especially when
|
||||
parsing large payloads. There are some minor breaking changes, but these
|
||||
should not impact most users. For more information see:
|
||||
https://developers.google.com/protocol-buffers/docs/news/2022-05-06#python-updates
|
||||
* Fixed win32 build and fixed str(message) on all Windows platforms. (#9976)
|
||||
* The binary wheel for macOS now supports Apple silicon.
|
||||
|
||||
PHP
|
||||
* [PHP] fix PHP build system (#9571)
|
||||
* Fix building packaged PHP extension (#9727)
|
||||
* fix: reserve "ReadOnly" keyword for PHP 8.1 and add compatibility (#9633)
|
||||
* fix: phpdoc syntax for repeatedfield parameters (#9784)
|
||||
* fix: phpdoc for repeatedfield (#9783)
|
||||
* Change enum string name for reserved words (#9780)
|
||||
* chore: [PHP] fix phpdoc for MapField keys (#9536)
|
||||
* Fixed PHP SEGV by not writing to shared memory for zend_class_entry. (#9996)
|
||||
|
||||
Ruby
|
||||
* Allow pre-compiled binaries for ruby 3.1.0 (#9566)
|
||||
* Implement `respond_to?` in RubyMessage (#9677)
|
||||
* [Ruby] Fix RepeatedField#last, #first inconsistencies (#9722)
|
||||
* Do not use range based UTF-8 validation in truffleruby (#9769)
|
||||
* Improve range handling logic of `RepeatedField` (#9799)
|
||||
* Support x64-mingw-ucrt platform
|
||||
|
||||
Other
|
||||
* [Kotlin] remove redundant public modifiers for compiled code (#9642)
|
||||
* [C#] Update GetExtension to support getting typed value (#9655)
|
||||
* Fix invalid dependency manifest when using `descriptor_set_out` (#9647)
|
||||
* Fix C# generator handling of a field named "none" in a oneof (#9636)
|
||||
* Add initial version.json file for 21-dev (#9840)
|
||||
* Remove duplicate java generated code (#9909)
|
||||
* Cherry-pick PR #9981 into 21.x branch (#10000)
|
||||
|
||||
|
||||
2022-05-19 version 21.0-rc2(C++/Java/Python/PHP/Objective-C/C#/Ruby)
|
||||
|
||||
Python
|
||||
|
@ -162,15 +162,6 @@ file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/cmaketest.map)
|
||||
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
# We can install dependencies from submodules if we're running
|
||||
# CMake v3.13 or newer.
|
||||
if(CMAKE_VERSION VERSION_LESS 3.13)
|
||||
set(_protobuf_INSTALL_SUPPORTED_FROM_MODULE OFF)
|
||||
else()
|
||||
set(_protobuf_INSTALL_SUPPORTED_FROM_MODULE ON)
|
||||
endif()
|
||||
|
||||
|
||||
set(_protobuf_FIND_ZLIB)
|
||||
if (protobuf_WITH_ZLIB)
|
||||
find_package(ZLIB)
|
||||
@ -313,10 +304,6 @@ if (protobuf_UNICODE)
|
||||
add_definitions(-DUNICODE -D_UNICODE)
|
||||
endif (protobuf_UNICODE)
|
||||
|
||||
set(protobuf_ABSL_PROVIDER "module" CACHE STRING "Provider of absl library")
|
||||
set_property(CACHE protobuf_ABSL_PROVIDER PROPERTY STRINGS "module" "package")
|
||||
|
||||
include(${protobuf_SOURCE_DIR}/cmake/abseil-cpp.cmake)
|
||||
include(${protobuf_SOURCE_DIR}/cmake/libprotobuf-lite.cmake)
|
||||
include(${protobuf_SOURCE_DIR}/cmake/libprotobuf.cmake)
|
||||
if (protobuf_BUILD_LIBPROTOC)
|
||||
|
@ -1214,7 +1214,6 @@ EXTRA_DIST = $(@DIST_LANG@_EXTRA_DIST) \
|
||||
build_files_updated_unittest.sh \
|
||||
cmake/CMakeLists.txt \
|
||||
cmake/README.md \
|
||||
cmake/abseil-cpp.cmake \
|
||||
cmake/conformance.cmake \
|
||||
cmake/examples.cmake \
|
||||
cmake/extract_includes.bat.in \
|
||||
|
@ -1,6 +1,6 @@
|
||||
Pod::Spec.new do |s|
|
||||
s.name = 'Protobuf-C++'
|
||||
s.version = '3.21.0-rc1'
|
||||
s.version = '3.21.1'
|
||||
s.summary = 'Protocol Buffers v3 runtime library for C++.'
|
||||
s.homepage = 'https://github.com/google/protobuf'
|
||||
s.license = 'BSD-3-Clause'
|
||||
|
@ -5,7 +5,11 @@
|
||||
# dependent projects use the :git notation to refer to the library.
|
||||
Pod::Spec.new do |s|
|
||||
s.name = 'Protobuf'
|
||||
<<<<<<< HEAD
|
||||
s.version = '3.21.0-rc1'
|
||||
=======
|
||||
s.version = '3.21.1'
|
||||
>>>>>>> upstream/21.x
|
||||
s.summary = 'Protocol Buffers v.3 runtime library for Objective-C.'
|
||||
s.homepage = 'https://github.com/protocolbuffers/protobuf'
|
||||
s.license = 'BSD-3-Clause'
|
||||
|
@ -59,6 +59,20 @@ config_setting(
|
||||
},
|
||||
)
|
||||
|
||||
config_setting(
|
||||
name = "config_win32",
|
||||
values = {
|
||||
"cpu": "win32",
|
||||
},
|
||||
)
|
||||
|
||||
config_setting(
|
||||
name = "config_win64",
|
||||
values = {
|
||||
"cpu": "win64",
|
||||
},
|
||||
)
|
||||
|
||||
# Internal testing:
|
||||
|
||||
starlark_cc_proto_library(
|
||||
|
@ -38,3 +38,10 @@ LINK_OPTS = select({
|
||||
"-lm",
|
||||
],
|
||||
})
|
||||
|
||||
# When cross-compiling for Windows we need to statically link pthread and the C++ library.
|
||||
PROTOC_LINK_OPTS = select({
|
||||
"//build_defs:config_win32": ["-static"],
|
||||
"//build_defs:config_win64": ["-static"],
|
||||
"//conditions:default": [],
|
||||
})
|
||||
|
@ -1,31 +0,0 @@
|
||||
if(TARGET absl::strings)
|
||||
# If absl is included already, skip including it.
|
||||
# (https://github.com/grpc/grpc/issues/29608)
|
||||
elseif(protobuf_ABSL_PROVIDER STREQUAL "module")
|
||||
if(NOT ABSL_ROOT_DIR)
|
||||
set(ABSL_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/abseil-cpp)
|
||||
endif()
|
||||
if(EXISTS "${ABSL_ROOT_DIR}/CMakeLists.txt")
|
||||
if(protobuf_INSTALL)
|
||||
# When protobuf_INSTALL is enabled and Abseil will be built as a module,
|
||||
# Abseil will be installed along with protobuf for convenience.
|
||||
set(ABSL_ENABLE_INSTALL ON)
|
||||
endif()
|
||||
add_subdirectory(${ABSL_ROOT_DIR} third_party/abseil-cpp)
|
||||
else()
|
||||
message(WARNING "protobuf_ABSL_PROVIDER is \"module\" but ABSL_ROOT_DIR is wrong")
|
||||
endif()
|
||||
if(protobuf_INSTALL AND NOT _protobuf_INSTALL_SUPPORTED_FROM_MODULE)
|
||||
message(WARNING "protobuf_INSTALL will be forced to FALSE because protobuf_ABSL_PROVIDER is \"module\" and CMake version (${CMAKE_VERSION}) is less than 3.13.")
|
||||
set(protobuf_INSTALL FALSE)
|
||||
endif()
|
||||
elseif(protobuf_ABSL_PROVIDER STREQUAL "package")
|
||||
# Use "CONFIG" as there is no built-in cmake module for absl.
|
||||
find_package(absl REQUIRED CONFIG)
|
||||
endif()
|
||||
set(_protobuf_FIND_ABSL "if(NOT TARGET absl::strings)\n find_package(absl CONFIG)\nendif()")
|
||||
|
||||
set(protobuf_ABSL_USED_TARGETS
|
||||
absl::strings
|
||||
absl::strings_internal
|
||||
)
|
@ -128,20 +128,24 @@ configure_file(${protobuf_SOURCE_DIR}/cmake/protobuf-options.cmake
|
||||
if (protobuf_BUILD_PROTOC_BINARIES)
|
||||
export(TARGETS libprotobuf-lite libprotobuf libprotoc protoc
|
||||
NAMESPACE protobuf::
|
||||
FILE ${CMAKE_CURRENT_BINARY_DIR}/cmake/protobuf/protobuf-targets.cmake
|
||||
FILE ${CMAKE_INSTALL_CMAKEDIR}/protobuf-targets.cmake
|
||||
)
|
||||
else (protobuf_BUILD_PROTOC_BINARIES)
|
||||
export(TARGETS libprotobuf-lite libprotobuf
|
||||
NAMESPACE protobuf::
|
||||
FILE ${CMAKE_CURRENT_BINARY_DIR}/cmake/protobuf/protobuf-targets.cmake
|
||||
FILE ${CMAKE_INSTALL_CMAKEDIR}/protobuf-targets.cmake
|
||||
)
|
||||
endif (protobuf_BUILD_PROTOC_BINARIES)
|
||||
|
||||
install(EXPORT protobuf-targets
|
||||
FILE protobuf-targets.cmake
|
||||
DESTINATION "${CMAKE_INSTALL_CMAKEDIR}"
|
||||
NAMESPACE protobuf::
|
||||
COMPONENT protobuf-export)
|
||||
|
||||
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_CMAKEDIR}/
|
||||
DESTINATION "${CMAKE_INSTALL_CMAKEDIR}"
|
||||
COMPONENT protobuf-export
|
||||
PATTERN protobuf-targets.cmake EXCLUDE
|
||||
)
|
||||
|
||||
option(protobuf_INSTALL_EXAMPLES "Install the examples folder" OFF)
|
||||
|
@ -98,9 +98,6 @@ if(protobuf_HAVE_LD_VERSION_SCRIPT)
|
||||
LINK_DEPENDS ${protobuf_SOURCE_DIR}/src/libprotobuf-lite.map)
|
||||
endif()
|
||||
target_link_libraries(libprotobuf-lite PRIVATE ${CMAKE_THREAD_LIBS_INIT})
|
||||
target_include_directories(libprotobuf-lite
|
||||
PRIVATE ${ABSL_ROOT_DIR}
|
||||
)
|
||||
if(protobuf_LINK_LIBATOMIC)
|
||||
target_link_libraries(libprotobuf-lite PRIVATE atomic)
|
||||
endif()
|
||||
|
@ -111,9 +111,6 @@ if(protobuf_HAVE_LD_VERSION_SCRIPT)
|
||||
LINK_DEPENDS ${protobuf_SOURCE_DIR}/src/libprotobuf.map)
|
||||
endif()
|
||||
target_link_libraries(libprotobuf PRIVATE ${CMAKE_THREAD_LIBS_INIT})
|
||||
target_include_directories(libprotobuf
|
||||
PRIVATE ${ABSL_ROOT_DIR}
|
||||
)
|
||||
if(protobuf_WITH_ZLIB)
|
||||
target_link_libraries(libprotobuf PRIVATE ${ZLIB_LIBRARIES})
|
||||
endif()
|
||||
|
@ -122,9 +122,6 @@ if(protobuf_HAVE_LD_VERSION_SCRIPT)
|
||||
LINK_DEPENDS ${protobuf_SOURCE_DIR}/src/libprotoc.map)
|
||||
endif()
|
||||
target_link_libraries(libprotoc PRIVATE libprotobuf)
|
||||
target_include_directories(libprotoc
|
||||
PRIVATE ${ABSL_ROOT_DIR}
|
||||
)
|
||||
if(protobuf_BUILD_SHARED_LIBS)
|
||||
target_compile_definitions(libprotoc
|
||||
PUBLIC PROTOBUF_USE_DLLS
|
||||
|
@ -3,7 +3,6 @@ include("${CMAKE_CURRENT_LIST_DIR}/protobuf-options.cmake")
|
||||
|
||||
# Depend packages
|
||||
@_protobuf_FIND_ZLIB@
|
||||
@_protobuf_FIND_ABSL@
|
||||
|
||||
# Imported targets
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/protobuf-targets.cmake")
|
||||
|
@ -6,7 +6,6 @@ add_executable(protoc ${protoc_files} ${protobuf_version_rc_file})
|
||||
target_link_libraries(protoc
|
||||
libprotoc
|
||||
libprotobuf
|
||||
${protobuf_ABSL_USED_TARGETS}
|
||||
)
|
||||
add_executable(protobuf::protoc ALIAS protoc)
|
||||
|
||||
|
@ -21,7 +21,6 @@ else()
|
||||
set(googlemock_source_dir "${protobuf_SOURCE_DIR}/third_party/googletest/googlemock")
|
||||
set(googletest_source_dir "${protobuf_SOURCE_DIR}/third_party/googletest/googletest")
|
||||
include_directories(
|
||||
${ABSL_ROOT_DIR}
|
||||
${googlemock_source_dir}
|
||||
${googletest_source_dir}
|
||||
${googletest_source_dir}/include
|
||||
@ -255,14 +254,7 @@ if (MSVC)
|
||||
/wd4146 # unary minus operator applied to unsigned type, result still unsigned
|
||||
)
|
||||
endif()
|
||||
target_link_libraries(tests
|
||||
protobuf-lite-test-common
|
||||
protobuf-test-common
|
||||
libprotoc
|
||||
libprotobuf
|
||||
GTest::gmock_main
|
||||
${protobuf_ABSL_USED_TARGETS}
|
||||
)
|
||||
target_link_libraries(tests protobuf-lite-test-common protobuf-test-common libprotoc libprotobuf GTest::gmock_main)
|
||||
|
||||
set(test_plugin_files
|
||||
${protobuf_SOURCE_DIR}/src/google/protobuf/compiler/mock_code_generator.cc
|
||||
@ -272,12 +264,7 @@ set(test_plugin_files
|
||||
)
|
||||
|
||||
add_executable(test_plugin ${test_plugin_files})
|
||||
target_link_libraries(test_plugin
|
||||
libprotoc
|
||||
libprotobuf
|
||||
GTest::gmock
|
||||
${protobuf_ABSL_USED_TARGETS}
|
||||
)
|
||||
target_link_libraries(test_plugin libprotoc libprotobuf GTest::gmock)
|
||||
|
||||
set(lite_test_files
|
||||
${protobuf_SOURCE_DIR}/src/google/protobuf/lite_unittest.cc
|
||||
|
@ -17,7 +17,7 @@ AC_PREREQ(2.59)
|
||||
# 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.21.0-rc-2],[protobuf@googlegroups.com],[protobuf])
|
||||
AC_INIT([Protocol Buffers],[3.21.1],[protobuf@googlegroups.com],[protobuf])
|
||||
|
||||
AM_MAINTAINER_MODE([enable])
|
||||
|
||||
|
@ -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.21.0-rc2</version>
|
||||
<version>3.21.1</version>
|
||||
<authors>Google Inc.</authors>
|
||||
<owners>protobuf-packages</owners>
|
||||
<licenseUrl>https://github.com/protocolbuffers/protobuf/blob/main/LICENSE</licenseUrl>
|
||||
|
@ -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.21.0-rc2</VersionPrefix>
|
||||
<VersionPrefix>3.21.1</VersionPrefix>
|
||||
<!-- C# 7.2 is required for Span/BufferWriter/ReadOnlySequence -->
|
||||
<LangVersion>7.2</LangVersion>
|
||||
<Authors>Google Inc.</Authors>
|
||||
|
@ -23,7 +23,7 @@ If you are using Maven, use the following:
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
@ -37,7 +37,7 @@ protobuf-java-util package:
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java-util</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
@ -45,7 +45,7 @@ protobuf-java-util package:
|
||||
|
||||
If you are using Gradle, add the following to your `build.gradle` file's dependencies:
|
||||
```
|
||||
implementation 'com.google.protobuf:protobuf-java:3.21.0-rc-2'
|
||||
implementation 'com.google.protobuf:protobuf-java:3.21.1'
|
||||
```
|
||||
Again, be sure to check that the version number matches (or is newer than) the version number of protoc that you are using.
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-bom</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<name>Protocol Buffers [BOM]</name>
|
||||
|
@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-parent</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
|
@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-parent</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>protobuf-kotlin-lite</artifactId>
|
||||
|
@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-parent</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>protobuf-kotlin</artifactId>
|
||||
|
@ -29,7 +29,7 @@ protobuf Java Lite runtime. If you are using Maven, include the following:
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-javalite</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-parent</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>protobuf-javalite</artifactId>
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-parent</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
<packaging>pom</packaging>
|
||||
|
||||
<name>Protocol Buffers [Parent]</name>
|
||||
|
@ -4,7 +4,7 @@
|
||||
<parent>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-parent</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>protobuf-java-util</artifactId>
|
||||
|
@ -30,7 +30,7 @@ git clone https://github.com/matthew-brett/multibuild.git
|
||||
# silently creeping in (see https://github.com/protocolbuffers/protobuf/issues/9180).
|
||||
# IMPORTANT: always pin multibuild at the same commit for:
|
||||
# - linux/build_artifacts.sh
|
||||
# - macos/build_artifacts.sh
|
||||
# - linux/build_artifacts.sh
|
||||
# - windows/build_artifacts.bat
|
||||
(cd multibuild; git checkout b89bb903e94308be79abefa4f436bf123ebb1313)
|
||||
cp kokoro/release/python/linux/config.sh config.sh
|
||||
|
@ -30,7 +30,7 @@ git clone https://github.com/matthew-brett/multibuild.git
|
||||
# silently creeping in (see https://github.com/protocolbuffers/protobuf/issues/9180).
|
||||
# IMPORTANT: always pin multibuild at the same commit for:
|
||||
# - linux/build_artifacts.sh
|
||||
# - macos/build_artifacts.sh
|
||||
# - linux/build_artifacts.sh
|
||||
# - windows/build_artifacts.bat
|
||||
(cd multibuild; git checkout b89bb903e94308be79abefa4f436bf123ebb1313)
|
||||
cp kokoro/release/python/macos/config.sh config.sh
|
||||
|
@ -18,7 +18,7 @@ REM Pin multibuild scripts at a known commit to avoid potentially unwanted futur
|
||||
REM silently creeping in (see https://github.com/protocolbuffers/protobuf/issues/9180).
|
||||
REM IMPORTANT: always pin multibuild at the same commit for:
|
||||
REM - linux/build_artifacts.sh
|
||||
REM - macos/build_artifacts.sh
|
||||
REM - linux/build_artifacts.sh
|
||||
REM - windows/build_artifacts.bat
|
||||
cd multibuild
|
||||
git checkout b89bb903e94308be79abefa4f436bf123ebb1313
|
||||
@ -34,11 +34,6 @@ SET ZLIB_ROOT=%cd%\zlib
|
||||
del /Q zlib.zip
|
||||
del /Q zlib-src.zip
|
||||
|
||||
REM Update Submodules
|
||||
REM This is needed because this build uses CMake <3.13.
|
||||
git submodule update --init --recursive
|
||||
SET ABSL_ROOT_DIR=%cd%\third_party\abseil-cpp
|
||||
|
||||
REM Create directory for artifacts
|
||||
SET ARTIFACT_DIR=%cd%\artifacts
|
||||
mkdir %ARTIFACT_DIR%
|
||||
|
@ -49,7 +49,7 @@ mkdir src\.libs
|
||||
|
||||
mkdir vcprojects
|
||||
pushd vcprojects
|
||||
cmake -G "%generator%" -Dprotobuf_BUILD_SHARED_LIBS=%BUILD_DLL% -Dprotobuf_UNICODE=%UNICODE% -Dprotobuf_BUILD_TESTS=OFF -DABSL_ROOT_DIR=%ABSL_ROOT_DIR% ../cmake || goto :error
|
||||
cmake -G "%generator%" -Dprotobuf_BUILD_SHARED_LIBS=%BUILD_DLL% -Dprotobuf_UNICODE=%UNICODE% -Dprotobuf_BUILD_TESTS=OFF ../cmake || goto :error
|
||||
msbuild protobuf.sln /p:Platform=%vcplatform% /p:Configuration=Release || goto :error
|
||||
dir /s /b
|
||||
popd
|
||||
|
@ -82,12 +82,12 @@ const char *const kReservedNames[] = {
|
||||
"global", "goto", "insteadof", "interface", "isset",
|
||||
"list", "match", "namespace", "new", "object",
|
||||
"or", "parent", "print", "private", "protected",
|
||||
"public", "readonly", "require", "require_once", "return",
|
||||
"self", "static", "switch", "throw", "trait",
|
||||
"try", "unset", "use", "var", "while",
|
||||
"xor", "yield", "int", "float", "bool",
|
||||
"string", "true", "false", "null", "void",
|
||||
"iterable", NULL};
|
||||
"public", "require", "require_once", "return", "self",
|
||||
"static", "switch", "throw", "trait", "try",
|
||||
"unset", "use", "var", "while", "xor",
|
||||
"yield", "int", "float", "bool", "string",
|
||||
"true", "false", "null", "void", "iterable",
|
||||
NULL};
|
||||
|
||||
bool is_reserved_name(const char* name) {
|
||||
int i;
|
||||
|
@ -10,15 +10,15 @@
|
||||
<email>protobuf-opensource@google.com</email>
|
||||
<active>yes</active>
|
||||
</lead>
|
||||
<date>2022-05-19</date>
|
||||
<time>13:35:18</time>
|
||||
<date>2022-05-27</date>
|
||||
<time>09:36:34</time>
|
||||
<version>
|
||||
<release>3.21.0RC2</release>
|
||||
<api>3.21.0</api>
|
||||
<release>3.21.1</release>
|
||||
<api>3.21.1</api>
|
||||
</version>
|
||||
<stability>
|
||||
<release>beta</release>
|
||||
<api>beta</api>
|
||||
<release>stable</release>
|
||||
<api>stable</api>
|
||||
</stability>
|
||||
<license uri="https://opensource.org/licenses/BSD-3-Clause">BSD-3-Clause</license>
|
||||
<notes>
|
||||
@ -1313,5 +1313,35 @@ G A release.
|
||||
<notes>
|
||||
</notes>
|
||||
</release>
|
||||
<release>
|
||||
<version>
|
||||
<release>3.21.0</release>
|
||||
<api>3.21.0</api>
|
||||
</version>
|
||||
<stability>
|
||||
<release>stable</release>
|
||||
<api>stable</api>
|
||||
</stability>
|
||||
<date>2022-05-25</date>
|
||||
<time>13:50:26</time>
|
||||
<license uri="https://opensource.org/licenses/BSD-3-Clause">BSD-3-Clause</license>
|
||||
<notes>
|
||||
</notes>
|
||||
</release>
|
||||
<release>
|
||||
<version>
|
||||
<release>3.21.1</release>
|
||||
<api>3.21.1</api>
|
||||
</version>
|
||||
<stability>
|
||||
<release>stable</release>
|
||||
<api>stable</api>
|
||||
</stability>
|
||||
<date>2022-05-27</date>
|
||||
<time>09:36:34</time>
|
||||
<license uri="https://opensource.org/licenses/BSD-3-Clause">BSD-3-Clause</license>
|
||||
<notes>
|
||||
</notes>
|
||||
</release>
|
||||
</changelog>
|
||||
</package>
|
||||
|
@ -127,7 +127,7 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_setter, 0, 0, 1)
|
||||
ZEND_ARG_INFO(0, value)
|
||||
ZEND_END_ARG_INFO()
|
||||
|
||||
#define PHP_PROTOBUF_VERSION "3.21.0RC2"
|
||||
#define PHP_PROTOBUF_VERSION "3.21.1"
|
||||
|
||||
// ptr -> PHP object cache. This is a weak map that caches lazily-created
|
||||
// wrapper objects around upb types:
|
||||
|
@ -285,12 +285,11 @@ class GPBUtil
|
||||
"include"=>0, "include_once"=>0, "instanceof"=>0, "insteadof"=>0,
|
||||
"interface"=>0, "isset"=>0, "list"=>0, "match"=>0, "namespace"=>0,
|
||||
"new"=>0, "or"=>0, "parent"=>0, "print"=>0, "private"=>0,
|
||||
"protected"=>0,"public"=>0, "readonly" => 0,"require"=>0,
|
||||
"require_once"=>0,"return"=>0, "self"=>0, "static"=>0, "switch"=>0,
|
||||
"throw"=>0,"trait"=>0, "try"=>0,"unset"=>0, "use"=>0, "var"=>0,
|
||||
"while"=>0,"xor"=>0, "yield"=>0, "int"=>0, "float"=>0, "bool"=>0,
|
||||
"string"=>0,"true"=>0, "false"=>0, "null"=>0, "void"=>0,
|
||||
"iterable"=>0
|
||||
"protected"=>0,"public"=>0, "require"=>0, "require_once"=>0,
|
||||
"return"=>0, "self"=>0, "static"=>0, "switch"=>0, "throw"=>0,
|
||||
"trait"=>0, "try"=>0,"unset"=>0, "use"=>0, "var"=>0, "while"=>0,
|
||||
"xor"=>0, "yield"=>0, "int"=>0, "float"=>0, "bool"=>0, "string"=>0,
|
||||
"true"=>0, "false"=>0, "null"=>0, "void"=>0, "iterable"=>0
|
||||
);
|
||||
|
||||
if (array_key_exists(strtolower($classname), $reserved_words)) {
|
||||
|
@ -334,18 +334,6 @@ class GeneratedClassTest extends TestBase
|
||||
$this->legacyEnum(new TestLegacyMessage\NestedEnum);
|
||||
}
|
||||
|
||||
public function testLegacyReadOnlyMessage()
|
||||
{
|
||||
$this->assertTrue(class_exists('\Upper\READONLY'));
|
||||
$this->assertTrue(class_exists('\Lower\readonly'));
|
||||
}
|
||||
|
||||
public function testLegacyReadOnlyEnum()
|
||||
{
|
||||
$this->assertTrue(class_exists('\Upper_enum\READONLY'));
|
||||
$this->assertTrue(class_exists('\Lower_enum\readonly'));
|
||||
}
|
||||
|
||||
private function legacyEnum(TestLegacyMessage_NestedEnum $enum)
|
||||
{
|
||||
// If we made it here without a PHP Fatal error, the typehint worked
|
||||
@ -955,7 +943,6 @@ class GeneratedClassTest extends TestBase
|
||||
$m = new \Lower\PBprivate();
|
||||
$m = new \Lower\PBprotected();
|
||||
$m = new \Lower\PBpublic();
|
||||
$m = new \Lower\PBreadonly();
|
||||
$m = new \Lower\PBrequire();
|
||||
$m = new \Lower\PBrequire_once();
|
||||
$m = new \Lower\PBreturn();
|
||||
@ -1036,7 +1023,6 @@ class GeneratedClassTest extends TestBase
|
||||
$m = new \Upper\PBPRIVATE();
|
||||
$m = new \Upper\PBPROTECTED();
|
||||
$m = new \Upper\PBPUBLIC();
|
||||
$m = new \Upper\PBREADONLY();
|
||||
$m = new \Upper\PBREQUIRE();
|
||||
$m = new \Upper\PBREQUIRE_ONCE();
|
||||
$m = new \Upper\PBRETURN();
|
||||
@ -1118,7 +1104,6 @@ class GeneratedClassTest extends TestBase
|
||||
$m = new \Lower_enum\PBprotected();
|
||||
$m = new \Lower_enum\PBpublic();
|
||||
$m = new \Lower_enum\PBrequire();
|
||||
$m = new \Lower_enum\PBreadonly();
|
||||
$m = new \Lower_enum\PBrequire_once();
|
||||
$m = new \Lower_enum\PBreturn();
|
||||
$m = new \Lower_enum\PBself();
|
||||
@ -1198,7 +1183,6 @@ class GeneratedClassTest extends TestBase
|
||||
$m = new \Upper_enum\PBPRIVATE();
|
||||
$m = new \Upper_enum\PBPROTECTED();
|
||||
$m = new \Upper_enum\PBPUBLIC();
|
||||
$m = new \Upper_enum\PBREADONLY();
|
||||
$m = new \Upper_enum\PBREQUIRE();
|
||||
$m = new \Upper_enum\PBREQUIRE_ONCE();
|
||||
$m = new \Upper_enum\PBRETURN();
|
||||
@ -1303,7 +1287,6 @@ class GeneratedClassTest extends TestBase
|
||||
$m = \Lower_enum_value\NotAllowed::iterable;
|
||||
$m = \Lower_enum_value\NotAllowed::parent;
|
||||
$m = \Lower_enum_value\NotAllowed::self;
|
||||
$m = \Lower_enum_value\NotAllowed::readonly;
|
||||
|
||||
$m = \Upper_enum_value\NotAllowed::PBABSTRACT;
|
||||
$m = \Upper_enum_value\NotAllowed::PBAND;
|
||||
@ -1384,7 +1367,6 @@ class GeneratedClassTest extends TestBase
|
||||
$m = \Upper_enum_value\NotAllowed::ITERABLE;
|
||||
$m = \Upper_enum_value\NotAllowed::PARENT;
|
||||
$m = \Upper_enum_value\NotAllowed::SELF;
|
||||
$m = \Upper_enum_value\NotAllowed::READONLY;
|
||||
|
||||
$this->assertTrue(true);
|
||||
}
|
||||
|
@ -57,7 +57,6 @@ enum print { ZERO51 = 0; }
|
||||
enum private { ZERO52 = 0; }
|
||||
enum protected { ZERO53 = 0; }
|
||||
enum public { ZERO54 = 0; }
|
||||
enum readonly { ZERO80 = 0; }
|
||||
enum require { ZERO55 = 0; }
|
||||
enum require_once { ZERO56 = 0; }
|
||||
enum return { ZERO57 = 0; }
|
||||
|
@ -57,7 +57,6 @@ enum PRINT { ZERO51 = 0; }
|
||||
enum PRIVATE { ZERO52 = 0; }
|
||||
enum PROTECTED { ZERO53 = 0; }
|
||||
enum PUBLIC { ZERO54 = 0; }
|
||||
enum READONLY { ZERO80 = 0; }
|
||||
enum REQUIRE { ZERO55 = 0; }
|
||||
enum REQUIRE_ONCE { ZERO56 = 0; }
|
||||
enum RETURN { ZERO57 = 0; }
|
||||
|
@ -58,7 +58,6 @@ enum NotAllowed {
|
||||
private = 51;
|
||||
protected = 52;
|
||||
public = 53;
|
||||
readonly = 79;
|
||||
require = 54;
|
||||
require_once = 55;
|
||||
return = 56;
|
||||
|
@ -58,7 +58,6 @@ enum NotAllowed {
|
||||
PRIVATE = 51;
|
||||
PROTECTED = 52;
|
||||
PUBLIC = 53;
|
||||
READONLY = 79;
|
||||
REQUIRE = 54;
|
||||
REQUIRE_ONCE = 55;
|
||||
RETURN = 56;
|
||||
|
@ -57,7 +57,6 @@ message print {}
|
||||
message private {}
|
||||
message protected {}
|
||||
message public {}
|
||||
message readonly {}
|
||||
message require {}
|
||||
message require_once {}
|
||||
message return {}
|
||||
|
@ -57,7 +57,6 @@ message PRINT {}
|
||||
message PRIVATE {}
|
||||
message PROTECTED {}
|
||||
message PUBLIC {}
|
||||
message READONLY {}
|
||||
message REQUIRE {}
|
||||
message REQUIRE_ONCE {}
|
||||
message RETURN {}
|
||||
|
@ -114,6 +114,6 @@ def protobuf_deps():
|
||||
_github_archive(
|
||||
name = "upb",
|
||||
repo = "https://github.com/protocolbuffers/upb",
|
||||
commit = "12efc9b096f35b62055a217f45e6b0fe5fb1a099",
|
||||
sha256 = "de0ab4ee1e2d8f01b494de39cd70b611e190b63943f1d5c448d4ecb9560dc16f",
|
||||
commit = "04cb5af6b67c80db61f0aee76dcb6d233e51795c",
|
||||
sha256 = "62d3519a7b65d6695e011f2733bfc5d7c6ab77f2bd83cdd2dca449da2e739c7f",
|
||||
)
|
||||
|
@ -1,3 +1,3 @@
|
||||
PROTOC_VERSION = '21.0-rc-2'
|
||||
PROTOBUF_JAVA_VERSION = '3.21.0-rc-2'
|
||||
PROTOBUF_PYTHON_VERSION = '4.21.0-rc-2'
|
||||
PROTOC_VERSION = '21.1'
|
||||
PROTOBUF_JAVA_VERSION = '3.21.1'
|
||||
PROTOBUF_PYTHON_VERSION = '4.21.1'
|
||||
|
@ -8,7 +8,7 @@
|
||||
</parent>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protoc</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
<packaging>pom</packaging>
|
||||
<name>Protobuf Compiler</name>
|
||||
<description>
|
||||
|
@ -30,4 +30,4 @@
|
||||
|
||||
# Copyright 2007 Google Inc. All Rights Reserved.
|
||||
|
||||
__version__ = '4.21.0rc2'
|
||||
__version__ = '4.21.1'
|
||||
|
@ -1,6 +1,6 @@
|
||||
Gem::Specification.new do |s|
|
||||
s.name = "google-protobuf"
|
||||
s.version = "3.21.0.rc.2"
|
||||
s.version = "3.21.1"
|
||||
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"
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
<groupId>com.google.protobuf.jruby</groupId>
|
||||
<artifactId>protobuf-jruby</artifactId>
|
||||
<version>3.21.0-rc-2</version>
|
||||
<version>3.21.1</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.21.0-rc-2</version>
|
||||
<version>3.21.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jruby</groupId>
|
||||
|
@ -18,7 +18,7 @@ else
|
||||
PTHREAD_DEF =
|
||||
endif
|
||||
|
||||
PROTOBUF_VERSION = 32:0:0
|
||||
PROTOBUF_VERSION = 32:1:0
|
||||
|
||||
if GCC
|
||||
# Turn on all warnings except for sign comparison (we ignore sign comparison
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -48,29 +48,29 @@ const std::string kDescriptorMetadataFile =
|
||||
const std::string kDescriptorDirName = "Google/Protobuf/Internal";
|
||||
const std::string kDescriptorPackageName = "Google\\Protobuf\\Internal";
|
||||
const char* const kReservedNames[] = {
|
||||
"abstract", "and", "array", "as", "break",
|
||||
"callable", "case", "catch", "class", "clone",
|
||||
"const", "continue", "declare", "default", "die",
|
||||
"do", "echo", "else", "elseif", "empty",
|
||||
"enddeclare", "endfor", "endforeach", "endif", "endswitch",
|
||||
"endwhile", "eval", "exit", "extends", "final",
|
||||
"finally", "fn", "for", "foreach", "function",
|
||||
"global", "goto", "if", "implements", "include",
|
||||
"include_once", "instanceof", "insteadof", "interface", "isset",
|
||||
"list", "match", "namespace", "new", "or",
|
||||
"parent", "print", "private", "protected", "public",
|
||||
"readonly", "require", "require_once", "return", "self",
|
||||
"static", "switch", "throw", "trait", "try",
|
||||
"unset", "use", "var", "while", "xor",
|
||||
"yield", "int", "float", "bool", "string",
|
||||
"true", "false", "null", "void", "iterable"};
|
||||
"abstract", "and", "array", "as", "break",
|
||||
"callable", "case", "catch", "class", "clone",
|
||||
"const", "continue", "declare", "default", "die",
|
||||
"do", "echo", "else", "elseif", "empty",
|
||||
"enddeclare", "endfor", "endforeach", "endif", "endswitch",
|
||||
"endwhile", "eval", "exit", "extends", "final",
|
||||
"finally", "fn", "for", "foreach", "function",
|
||||
"global", "goto", "if", "implements", "include",
|
||||
"include_once", "instanceof", "insteadof", "interface", "isset",
|
||||
"list", "match", "namespace", "new", "or",
|
||||
"parent", "print", "private", "protected", "public",
|
||||
"require", "require_once", "return", "self", "static",
|
||||
"switch", "throw", "trait", "try", "unset",
|
||||
"use", "var", "while", "xor", "yield",
|
||||
"int", "float", "bool", "string", "true",
|
||||
"false", "null", "void", "iterable"};
|
||||
const char* const kValidConstantNames[] = {
|
||||
"int", "float", "bool", "string", "true",
|
||||
"false", "null", "void", "iterable", "parent",
|
||||
"self", "readonly"
|
||||
"self"
|
||||
};
|
||||
const int kReservedNamesSize = 80;
|
||||
const int kValidConstantNamesSize = 12;
|
||||
const int kReservedNamesSize = 79;
|
||||
const int kValidConstantNamesSize = 11;
|
||||
const int kFieldSetter = 1;
|
||||
const int kFieldGetter = 2;
|
||||
const int kFieldProperty = 3;
|
||||
@ -408,6 +408,7 @@ std::string GeneratedClassFileName(const DescriptorType* desc,
|
||||
}
|
||||
|
||||
template <typename DescriptorType>
|
||||
<<<<<<< HEAD
|
||||
std::string LegacyReadOnlyGeneratedClassFileName(const DescriptorType* desc,
|
||||
const Options& options) {
|
||||
std::string php_namespace = RootPhpNamespace(desc, options);
|
||||
@ -415,6 +416,18 @@ std::string LegacyReadOnlyGeneratedClassFileName(const DescriptorType* desc,
|
||||
return php_namespace + "/" + desc->name() + ".php";
|
||||
}
|
||||
return desc->name() + ".php";
|
||||
=======
|
||||
std::string LegacyGeneratedClassFileName(const DescriptorType* desc,
|
||||
const Options& options) {
|
||||
std::string result = LegacyFullClassName(desc, options);
|
||||
|
||||
for (int i = 0; i < result.size(); i++) {
|
||||
if (result[i] == '\\') {
|
||||
result[i] = '/';
|
||||
}
|
||||
}
|
||||
return result + ".php";
|
||||
>>>>>>> upstream/21.x
|
||||
}
|
||||
|
||||
std::string GeneratedServiceFileName(const ServiceDescriptor* service,
|
||||
@ -1263,10 +1276,17 @@ void GenerateMetadataFile(const FileDescriptor* file, const Options& options,
|
||||
}
|
||||
|
||||
template <typename DescriptorType>
|
||||
<<<<<<< HEAD
|
||||
void LegacyReadOnlyGenerateClassFile(const FileDescriptor* file,
|
||||
const DescriptorType* desc, const Options& options,
|
||||
GeneratorContext* generator_context) {
|
||||
std::string filename = LegacyReadOnlyGeneratedClassFileName(desc, options);
|
||||
=======
|
||||
void LegacyGenerateClassFile(const FileDescriptor* file,
|
||||
const DescriptorType* desc, const Options& options,
|
||||
GeneratorContext* generator_context) {
|
||||
std::string filename = LegacyGeneratedClassFileName(desc, options);
|
||||
>>>>>>> upstream/21.x
|
||||
std::unique_ptr<io::ZeroCopyOutputStream> output(
|
||||
generator_context->Open(filename));
|
||||
io::Printer printer(output.get(), '^');
|
||||
@ -1280,11 +1300,30 @@ void LegacyReadOnlyGenerateClassFile(const FileDescriptor* file,
|
||||
"name", php_namespace);
|
||||
}
|
||||
std::string newname = FullClassName(desc, options);
|
||||
<<<<<<< HEAD
|
||||
printer.Print("class_exists(^new^::class);\n",
|
||||
"new", GeneratedClassNameImpl(desc));
|
||||
printer.Print("@trigger_error(__NAMESPACE__ . '\\^old^ is deprecated and will be removed in "
|
||||
"the next major release. Use ^fullname^ instead', E_USER_DEPRECATED);\n\n",
|
||||
"old", desc->name(),
|
||||
=======
|
||||
printer.Print("if (false) {\n");
|
||||
Indent(&printer);
|
||||
printer.Print("/**\n");
|
||||
printer.Print(" * This class is deprecated. Use ^new^ instead.\n",
|
||||
"new", newname);
|
||||
printer.Print(" * @deprecated\n");
|
||||
printer.Print(" */\n");
|
||||
printer.Print("class ^old^ {}\n",
|
||||
"old", LegacyGeneratedClassName(desc));
|
||||
Outdent(&printer);
|
||||
printer.Print("}\n");
|
||||
printer.Print("class_exists(^new^::class);\n",
|
||||
"new", GeneratedClassNameImpl(desc));
|
||||
printer.Print("@trigger_error('^old^ is deprecated and will be removed in "
|
||||
"the next major release. Use ^fullname^ instead', E_USER_DEPRECATED);\n\n",
|
||||
"old", LegacyFullClassName(desc, options),
|
||||
>>>>>>> upstream/21.x
|
||||
"fullname", newname);
|
||||
}
|
||||
|
||||
@ -1408,19 +1447,6 @@ void GenerateEnumFile(const FileDescriptor* file, const EnumDescriptor* en,
|
||||
"new", fullname,
|
||||
"old", LegacyFullClassName(en, options));
|
||||
}
|
||||
|
||||
// Write legacy file for backwards compatibility with "readonly" keywword
|
||||
std::string lower = en->name();
|
||||
std::transform(lower.begin(), lower.end(), lower.begin(), ::tolower);
|
||||
if (lower == "readonly") {
|
||||
printer.Print(
|
||||
"// Adding a class alias for backwards compatibility with the \"readonly\" keyword.\n");
|
||||
printer.Print(
|
||||
"class_alias(^new^::class, __NAMESPACE__ . '\\^old^');\n\n",
|
||||
"new", fullname,
|
||||
"old", en->name());
|
||||
LegacyReadOnlyGenerateClassFile(file, en, options, generator_context);
|
||||
}
|
||||
}
|
||||
|
||||
void GenerateMessageFile(const FileDescriptor* file, const Descriptor* message,
|
||||
@ -1536,19 +1562,6 @@ void GenerateMessageFile(const FileDescriptor* file, const Descriptor* message,
|
||||
"old", LegacyFullClassName(message, options));
|
||||
}
|
||||
|
||||
// Write legacy file for backwards compatibility with "readonly" keywword
|
||||
std::string lower = message->name();
|
||||
std::transform(lower.begin(), lower.end(), lower.begin(), ::tolower);
|
||||
if (lower == "readonly") {
|
||||
printer.Print(
|
||||
"// Adding a class alias for backwards compatibility with the \"readonly\" keyword.\n");
|
||||
printer.Print(
|
||||
"class_alias(^new^::class, __NAMESPACE__ . '\\^old^');\n\n",
|
||||
"new", fullname,
|
||||
"old", message->name());
|
||||
LegacyReadOnlyGenerateClassFile(file, message, options, generator_context);
|
||||
}
|
||||
|
||||
// Nested messages and enums.
|
||||
for (int i = 0; i < message->nested_type_count(); i++) {
|
||||
GenerateMessageFile(file, message->nested_type(i), options,
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -178,7 +178,7 @@
|
||||
#ifdef PROTOBUF_VERSION
|
||||
#error PROTOBUF_VERSION was previously defined
|
||||
#endif
|
||||
#define PROTOBUF_VERSION 3021000
|
||||
#define PROTOBUF_VERSION 3021001
|
||||
|
||||
#ifdef PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC
|
||||
#error PROTOBUF_MIN_HEADER_VERSION_FOR_PROTOC was previously defined
|
||||
@ -193,7 +193,7 @@
|
||||
#ifdef PROTOBUF_VERSION_SUFFIX
|
||||
#error PROTOBUF_VERSION_SUFFIX was previously defined
|
||||
#endif
|
||||
#define PROTOBUF_VERSION_SUFFIX "-rc2"
|
||||
#define PROTOBUF_VERSION_SUFFIX ""
|
||||
|
||||
#if defined(PROTOBUF_NAMESPACE) || defined(PROTOBUF_NAMESPACE_ID)
|
||||
#error PROTOBUF_NAMESPACE or PROTOBUF_NAMESPACE_ID was previously defined
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -82,10 +82,10 @@ namespace internal {
|
||||
|
||||
// The current version, represented as a single integer to make comparison
|
||||
// easier: major * 10^6 + minor * 10^3 + micro
|
||||
#define GOOGLE_PROTOBUF_VERSION 3021000
|
||||
#define GOOGLE_PROTOBUF_VERSION 3021001
|
||||
|
||||
// A suffix string for alpha, beta or rc releases. Empty for stable releases.
|
||||
#define GOOGLE_PROTOBUF_VERSION_SUFFIX "-rc2"
|
||||
#define GOOGLE_PROTOBUF_VERSION_SUFFIX ""
|
||||
|
||||
// The minimum header version which works with the current version of
|
||||
// the library. This constant should only be used by protoc's C++ code
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
@ -13,7 +13,7 @@
|
||||
#error incompatible with your Protocol Buffer headers. Please update
|
||||
#error your headers.
|
||||
#endif
|
||||
#if 3021000 < PROTOBUF_MIN_PROTOC_VERSION
|
||||
#if 3021001 < 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.
|
||||
|
1
third_party/abseil-cpp
vendored
1
third_party/abseil-cpp
vendored
@ -1 +0,0 @@
|
||||
Subproject commit 8c6e53ef3adb1227fffa442c50349dab134a54bc
|
16
version.json
16
version.json
@ -1,4 +1,5 @@
|
||||
{
|
||||
<<<<<<< HEAD
|
||||
"main": {
|
||||
"protoc_version": "21-dev",
|
||||
"lts": false,
|
||||
@ -12,6 +13,21 @@
|
||||
"php": "3.21-dev",
|
||||
"python": "4.21-dev",
|
||||
"ruby": "3.21-dev"
|
||||
=======
|
||||
"21.x": {
|
||||
"protoc_version": "21.2-dev",
|
||||
"lts": false,
|
||||
"date": "2022-05-27",
|
||||
"languages": {
|
||||
"cpp": "3.21.2-dev",
|
||||
"csharp": "3.21.2-dev",
|
||||
"java": "3.21.2-dev",
|
||||
"javascript": "3.21.2-dev",
|
||||
"objectivec": "3.21.2-dev",
|
||||
"php": "3.21.2-dev",
|
||||
"python": "4.21.2-dev",
|
||||
"ruby": "3.21.2-dev"
|
||||
>>>>>>> upstream/21.x
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user