All~

The protobuf team is planning a variety of changes to our supported 
platforms as we bring the project forward into a more sustainable cadence.  
The following applies to our not yet released 22.x line.  Also, these are 
just plans right now, so they are subject to change.

https://developers.google.com/protocol-buffers/docs/news/2022-08-03

Cheers,
Matt


Platform Support Changes

We've added guidance about the platforms that we support in this section 
<https://developers.google.com/protocol-buffers/docs/proto#platforms> of 
the documentation. The section currently covers C++ and PHP, but may be 
expanded with information about other platforms in the future.
C++ Changes

Following the announcement of our new major version and breaking changes 
policy <https://developers.google.com/protocol-buffers/docs/news/2022-07-06>, 
we are planning a major version bump for C++. We plan to make some changes 
to the assets that we release starting with our 22.x release line.

The following sections outline the set of breaking changes that we plan to 
include in the 22.0 release of protocol buffers. Note that plans can and do 
change. These are potential breaking changes to be aware of, but they may 
not happen in this particular release, or they may not happen at all.
Adding C++20 Support

Because of the addition of new keywords to the C++ language, adding support 
for C++20 is a breaking change for users even if they do not currently use 
C++20.

Mitigations for this to conditionally change names only in certain compiler 
modes would break projects that support multiple language standards.
Dropping C++11 Support

Per our C++ support policy 
<https://opensource.google/documentation/policies/cplusplus-support#4_c_language_standard>,
 
we plan to drop C++11 support. This is a breaking change.
Dropping Autotools Support

Per our build systems support policy 
<https://opensource.google/documentation/policies/cplusplus-support#3_build_systems>,
 
we plan to drop autotools support. This is a breaking change. After 
autotools support is dropped, protobuf will support only CMake and Bazel.
Dropping Support for PHP <7.4

Per our PHP support policy 
<https://cloud.google.com/php/getting-started/supported-php-versions>, we 
plan to drop support for EOL versions of PHP. This is not considered a 
breaking change since these versions are already EOL in the broader 
ecosystem.
Adding an Abseil Dependency

In order to reduce the Google vs. OSS differences between protobuf and to 
simplify our own project, we plan to take a formal dependency on Abseil. In 
time, we plan to start using Abseil types in our public APIs, but simply 
adding the dependency is a breaking change.
Dropping Language-Specific Source Distributions

To reduce dependence on autotools and minimize the number of artifacts we 
release, we plan to stop publishing language-specific source distributions 
on our GitHub release page 
<https://github.com/protocolbuffers/protobuf/releases>. Instead, we advise 
users to download the source code distribution 
<https://github.com/protocolbuffers/protobuf/releases> automatically 
generated by GitHub on the release page.
Changing Release Artifact Names to Be More Idiomatic

Currently, some assets that we release have names that don’t conform to 
their respective language or package idioms. In 22.0 we plan to perform the 
following name changes to be more conformant to language and package 
standards:

   - Rename Maven artifacts to use “RC” instead of “rc-” as the release 
   candidate prefix.
   - Rename protoc artifacts to:
      - Use “darwin” instead of “osx” to specify the darwin operating 
      system.
      - Make the following substitutions to specify machine architectures:
         - aarch_64 -> arm64
         - ppcle_64 -> ppc64le
         - x86_32 -> i686
      
Releasing Only Ruby Source Gems

We currently release multiple Ruby gems that are compiled for different 
architectures. Starting in 22.0, we plan to release only a single ruby 
source gem that contains source code and will be compiled on the host 
system.

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/protobuf/98734abf-dcbe-4a64-ad2f-0ea1f7867165n%40googlegroups.com.
  • [protobuf] Planned Change... 'Matthew Fowles Kulukundis' via Protocol Buffers

Reply via email to