Änderungen angekündigt am 23. Januar 2025

Änderungen für Protocol Buffers angekündigt am 23. Januar 2025.

Poison Java gencode

Wir patchen eine Änderung in den 25.x-Zweig, die Java-Gencode vergiften wird, der vor der Version 3.21.7 erstellt wurde. Anschließend werden wir alle Versionen von Java-Protobuf von 3.21.7 bis 3.25.5 als anfällig für die Footmitten-CVE kennzeichnen.

Nachdem diese Änderung eingespielt wurde, wird Protobuf eine UnsupportedOperationException aus der Methode makeExtensionsImmutable auslösen, es sei denn, Sie setzen die System-Eigenschaft „-Dcom.google.protobuf.use_unsafe_pre22_gencode“. Die Verwendung dieser System-Eigenschaft kann Ihnen Zeit verschaffen, wenn Sie Ihren Code nicht sofort aktualisieren können, sollte aber als kurzfristige Übergangslösung betrachtet werden.

Poison MSVC + Bazel

Update: Dieser Plan wurde abgesagt. Weitere Informationen hierzu finden Sie in der Ankündigung vom 16. Juli 2025.

Wir werden die Unterstützung für die gemeinsame Nutzung von Bazel und MSVC in v34 einstellen. Ab v30 werden wir diese Kombination mit einem Fehler vergiften, es sei denn, Sie geben das Opt-out-Flag --define=protobuf_allow_msvc=true an, um dies zu unterdrücken.

Die Pfadlängenbeschränkungen von MSVC in Kombination mit dem Sandboxing von Bazel sind in der Kombination immer schwieriger zu unterstützen. Anstatt zufällig Benutzer zu beeinträchtigen, die Protobuf in einen langen Pfad installieren, werden wir die Verwendung von MSVC aus Bazel vollständig verbieten. Wir werden MSVC weiterhin mit CMake unterstützen und clang-cl mit Bazel unterstützen. Für Feedback oder Diskussionen siehe https://github.com/protocolbuffers/protobuf/issues/20085.