Suositut: Tiedot päivitetty 27. lokakuuta 2026

Kategoriat

Internet1 356
Viestintä321
Ääni ja video898
Grafiikka ja suunnittelu539
Toimisto ja tuottavuus1 124
Kehitystyökalut3 134
Tekoälytyökalut529
Tietoturva ja yksityisyys385
Järjestelmätyökalut3 114
Pelit523
Opiskelu ja tiede239
Verkko ja IT284

Lataa protobuf 34.0

Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.

Tämä on vanhempi versio. Uusin versio on 36.2. protobuf 36.2 · Julkaistu:

Asennustiedostot 34.0

ArkkitehtuuriTyyppiLaajuusTiedostokokoLatausSHA256
64-bittinen ZIP → Portable — — github.com VirusTotal
32-bittinen ZIP → Portable — — github.com VirusTotal

Linkki ja SHA256-tiiviste ovat peräisin Windows Package Managerin yhteisön manifestista. Vertaa ladatun tiedoston tiivistettä ennen kuin suoritat sen.

Muutosloki

Announcements
- This version includes potential breaking changes with major version bump to: Objective-C, Python, PHP, C++. Bazel
- [Objective-C] Remove -[GPBFieldDescriptor optional] (3414dc1)
- [Objective-C] Fix nullability annotations on some GPB*Dictionary types. (ea67d6d)
- [Objective-C] Remove generate_minimal_imports generation option warning (45b1297)
- [Python] Raise errors in OSS when assign bool to int/enum field in Python Proto. (5b116fe)
- [Python] Remove deprecated UseDeprecatedLegacyJsonFieldConflicts() (c301c2c)
- [Python] Remove deprecated FieldDescriptor.label (0a8ff55)
- [Python] Remove float_format/double_format from python proto text_format (e4854a1)
- [Python] Remove deprecated FieldDescriptor::label() in OSS. Use is_repeated() or is_required() instead (b76faa9)
- [Python] Raise TypeError when convert non-timedelta to Duration, or convert non-datetime to Timestamp in python proto. (Original code may raise ArributeError) (00aaca1)
- [Python] Remove float_precision from python proto json_format (f027f1f)
- [PHP] Remove deprecated PHP APIs FieldDescriptor getLabel, use IsRepeated or isRequired instead. (4208121)
- [PHP] Remove deprecated PHP APIs (9c45014)
- [PHP] Add PHP typehints for setters and remove redundant GPBUtil checks (aee03b7)
- [PHP] support default values for editions/proto2 (b01099d)
- [C++] Remove deprecated UseDeprecatedLegacyJsonFieldConflicts() (c301c2c)
- [C++] Add a debug check that the target of CopyFrom is not a descendant of the source. (7a75898)
- [C++] Add [[nodiscard]] to many APIs. (a70115f)
- [C++] Make generator headers private (3a2af35)
- [C++] Remove deprecated FieldDescriptor::has_optional_keyword() in OSS. Use is_repeated() or has_presence() instead (68346ec)
- [C++] Remove deprecated FieldDescriptor::label() in OSS. Use is_repeated() or is_required() instead (b76faa9)
- [C++] Remove deprecated FieldDescriptor::is_optional() in OSS. Use (!is_required() && !is_repeated()) instead (9dbc5d4)
- [C++] Remove AddUnusedImportTrackFile() and ClearUnusedImportTrackFiles(). Remove PROTOBUF_FUTURE_RENAME_ADD_UNUSED_IMPORT (837a2cd)
- [C++] Removes proto2::util::MessageDifferencer::AddIgnoreCriteria that takes a raw pointer as an argument in favor of the overload that takes a unique_ptr. Remove macro PROTOBUF_FUTURE_REMOVE_ADD_IGNORE_CRITERIA (b115358)
- [C++] Make the arena-enabled constructors of RepeatedField, RepeatedPtrField, and Map private. (ef890c3)
- [C++] All entity names have length limit (2afb0dc)
- [Other] Remove deprecated flag for enabling MSVC support (97c979b)
- [Bazel] Remove deprecated ProtoInfo.transitive_imports. Use equivalent transitive_sources instead (0a5c2f6)
- [Bazel] Change @protobuf//bazel/flags:prefer_prebuilt_proto flag to True. (84a30b5)
- [Bazel] Only respect the Starlark versions of --proto_toolchain_for*(b5685c4)
- Protobuf News may include additional announcements or pre-announcements for upcoming changes.
Bazel
- Only respect the Starlark versions of --proto_toolchain_for*. This is a breaking change. (#26090) (#26091) (b5685c4)
- Breaking change: Change @protobuf//bazel/flags:prefer_prebuilt_proto flag to True. (84a30b5)
- Dropped support for Bazel 7. (304c9ba)
- Don't check for native protobuf flags if the proto fragment doesn't exist. (#25803) (5975f13)
- Fix the prefer_prebuilt_protoc alias to use the correct originally announced location (732ed49)
- Actually fix breaking change related to upb_proto_reflection_library (86d434b)
- Fix breaking change related to upb_c_proto_library and upb_proto_reflection_library (b0150c0)
- Add an alias to undo accidental unannounced breaking change (e71d379)
- Moved prebuilt-related Bazel files to standard locations. (cfe8991)
- Refactored and rearranged Bazel rules. (d7dd1e1)
- Removed the third_party/upb/upb/bazel directory. (7efbfe1)
- Introduce Starlark versions of Protobuf flags. (d1f4b2f)
- Fix: cc_toolchain should prefer protoc when prebuilt flag is flipped. (#25168) (8c857c3)
- Breaking change: Remove deprecated ProtoInfo.transitive_imports. Use equivalent transitive_sources instead (0a5c2f6)
- Feat(bazel): wire up prebuilt protoc toolchain (#24115) (cc23698)
- Migrate proto_descriptor_set (#23369) (8d4dfdd)
Compiler
- Removed the third_party/upb/upb/bazel directory. (7efbfe1)
- Validate Feature Support on Custom Options (2985930)
- Ruby codegen: support generation of rbs files (#15633) (6ebdf85)
- Avoid collision name problems between a message named Xyz and a direct sibling enum named XyzView (eba53e8)
- Generalizing and implementing ValidateFeatureSupport for both Options and Features during proto parsing (ed3c571)
- Fix a bug with custom features outside of the pb package. (872d3ce)
- Fix import option handling when include_imports isn't set. (9ef9e80)
- Fix a bug in STRICT check of namespaced enums to properly check for 'reserved 1 to max' (1229d4a)
- Prevent accidental stripping of debug_redact options via import option. (f58b098)
C++
- Regenerated files. (a9bbf7a)
- Dropped support for Bazel 7. (304c9ba)
- Remove direct dependency on rules_apple (#25708) (e06c026)
- Fix broken field_mask_upb_proto and field_mask_upb_reflection_proto aliases (d808a97)
- Removed the third_party/upb/upb/bazel directory. (7efbfe1)
- Validate Feature Support on Custom Options (2985930)
- Auto-generate files after PR #25437 (8be64ea)
- Update rules_apple dependency to support rules_swift 3.x (#25437) (c0e15f2)
- Fix UTF-8 Validation of string extensions in C++ (35ba5cf)
- Improve wire compatibility of TestAllTypes with TestAllExtensions. (08355bd)
- Add EnumerateEnumValues function. (397d5d9)
- Add conformance tests for utf8 validation. (e8923a8)
- Disable constinit on MSVC for static library builds (783da0a)
- Breaking change: Make generator headers private (3a2af35)
- Add bounds checking to ExtractSubrange. (5687acc)
- This CL starts failing on [unverified_lazy = true] on extensions, which have been (d2a42e7)
- Refine the conditions for the MSVC constinit workaround (38927bf)
- Add conformance test cases about handling of google.protobuf.Empty inside any Any in JSON. (0f3dd06)
- Remove PROTOBUF_CONSTEXPR to unconditionally use constexpr (7f431bb)
- Add bounds checking to DeleteSubrange, create new helper, RuntimeAssertInBoundsGE, and modify LogIndexOutOfBoundsAndAbort to customize the message being logged. (71cc97c)
- Breaking change: Remove deprecated UseDeprecatedLegacyJsonFieldConflicts() (c301c2c)
- Fix issue where BinaryToJson a Skip()'s failure on unknown fields was ignored instead of resulting in a parse failure. (2ec322e)
- Breaking change: Add [[nodiscard]] to many APIs. (a70115f)
- Abort on out of bounds accesses. (3acf23c)
- Fix JSON printing of Any of an empty message in C++Proto. (014f676)
- FieldMaskUtil::TrimMessage: Handle repeated messages. (0f109cb)
- Breaking change: Remove deprecated FieldDescriptor::label() in OSS. Use is_repeated() or is_required() instead (b76faa9)
- Generalizing and implementing ValidateFeatureSupport for both Options and Features during proto parsing (ed3c571)
- Breaking change: Remove deprecated FieldDescriptor::has_optional_keyword() in OSS. Use is_repeated() or has_presence() instead (68346ec)
- Test that all entity names have some limit, and that passing that limit will (2afb0dc)
- Breaking change: Remove deprecated FieldDescriptor::is_optional() in OSS. Use (!is_required() && !is_repeated()) instead (9dbc5d4)
- Breaking change: Remove AddUnusedImportTrackFile() and ClearUnusedImportTrackFiles(). Remove PROTOBUF_FUTURE_RENAME_ADD_UNUSED_IMPORT (837a2cd)
- Breaking change: Removes proto2::util::MessageDifferencer::AddIgnoreCriteria that takes a raw pointer as an argument in favor of the overload that takes a unique_ptr. Remove macro PROTOBUF_FUTURE_REMOVE_ADD_IGNORE_CRITERIA (b115358)
- Mark mutable repeated fields/maps as [[nodiscard]] (bc60e2e)
- Apply [[nodiscard]] to constant, non-message accessors. (46575f0)
- Add [[nodiscard]] to many const methods of Message/Reflection. (8c981b8)
- Fix a bug with custom features outside of the pb package. (872d3ce)
- Delete safe_boundary_check as this now supported via build flag, --//third_party/protobuf:bounds_check_mode. (3079d15)
- Add [[nodiscard]] to const message field accessors. (60f60d0)
- CMake: Stop building tests by default (related to #20539) (#24373) (88261aa)
- Optimize TcParser::RepeatedVarint (88efe88)
- Add nodiscard to has_/_size accessors. (40fe103)
- Enable removed arena pointers from all fields. (1f3fe2e)
- Fix a bug in STRICT check of namespaced enums to properly check for 'reserved 1 to max' (1229d4a)
- Breaking change: Add a debug check that the target of CopyFrom is not a descendant of the source. (7a75898)
- Breaking change: Make the arena-enabled constructors of RepeatedField, RepeatedPtrField, and Map private. (ef890c3)
- Update AddAlreadyReserved/AddNAlreadyReserved to use the runtime bounds checks. (b8e690a)
- Use __builtin_operator_new to faciliate compiler optimizations of these allocs. (4624d81)
- Add has_default_instance() to ImplicitWeakTypeHandler (818b8ef)
- Add a macro to make RepeatedField(Arena*) constructor private in a future release. (b39f10c)
- Use __builtin_operator_new to faciliate compiler optimizations of these allocs. (195da19)
- Change LogIndexOutOfBoundsAndAbort logging message. (bc0b635)
Java
- Dropped support for Bazel 7. (304c9ba)
- Optimize TextFormatEscaper to just return the String input if it didn't need any escaping. (e536204)
- Adding deprecation comment when isInitialized() accessor is deprecated (2732c60)
- Deprecating isInitialized() if there aren't required fields (2607595)
- Avoid skipping descriptors with option dependencies (1bc2c63)
- Remove PROTOBUF_CONSTEXPR to unconditionally use constexpr (7f431bb)
- Correctly apply JSON recursion limit when parsing an Any-of-Any. (33b16e8)
- Avoid potential exceptions on serialize in the face of malformed lazy extensions. (531c644)

https://github.com/protocolbuffers/protobuf/releases/tag/v34.0