Changelog History
Page 3
-
v0.10.8 Changes
August 02, 2020- 🛠 Fix a regression where calling scalapb.gen() without parameters would not generate grpc stubs. Workaround: pass grpc=true explictly. #879
- ➕ Add asMap to UnkownFieldSet to make it possible to extract the map (#878)
- 🔌 ScalaPBC now accepts --jvm-plugin flag that loads an artifact from maven that is expected to have a main class which extends ProtocCodeGenerator.
-
v0.10.7 Changes
July 06, 2020- ➕ Add support for insertion points so other plugins can inject code into ScalaPB generated code. Currently, the only insertion point available is at the companion object of messages.
-
v0.10.6 Changes
June 22, 2020- ⚡️ Updated protoc-bridge to 0.9.0-RC2.
-
v0.10.5 Changes
June 20, 2020- ⚡️ Updated protoc-bridge to 0.9.0-RC1.
- Minimum version of sbt-protoc required is 0.99.33
- 🔌 ScalaPB compiler plugin is now compatible with SBT 1.4.0-M1
- 🔌 Plugin runs in a sandboxed classloader.
-
v0.10.4
June 07, 2020 -
v0.10.3 Changes
May 09, 2020- ⚡️ Updated protoc-bridge to 0.8.3
- 🔄 Changed scalapb.Message to extend Any, instead of a type alias to Any (see #777)
-
v0.10.2 Changes
March 12, 2020- 💥 BREAKING CHANGE: remove unknownFields parameter from
of(see #778)
- 💥 BREAKING CHANGE: remove unknownFields parameter from
-
v0.10.1 Changes
- ➕ Add ScalaPBC support for fetching artifacts from maven.
-
v0.10.0 Changes
For SBT uses, sbt-protoc >= 0.99.28 is required.
💥 BREAKING CHANGE: all messages are now preserving unknown fields by default. This results in an additional parameter to the case class. This may break your code if you are using pattern matching and expecting a specific number of parameters. This feature can be disabled by settings
preserve_unknown_fieldstofalseat the file or package level.
Why is this feature important? If your service receives messages that were serialized by a future version of the proto, the unknown fields your service does not know about will be deserialized into the unknown fields. Once the message is serialized again, the unknown fields will be serialized too, so this data will not be lost. When this feature is disabled, unknown fields are dropped.
🗄 Deprecated
Message[T]. Up to 0.10.x, generated messages would extendGeneratedMessage with Message[T]. The additionalwith Message[T]added noise to the code and did not provide much value. In 0.10.x,Message[T]is a type-alias toAnyfor source compatibility.💥 BREAKING CHANGE: in earlier version, constructor parameters for oneofs were always generated after all the regular fields. From this version of ScalaPB, oneofs are generated in the position that matches their index in the proto file.
💥 BREAKING CHANGE: Enums case objects now extend a sealed abstract base class instead of a sealed trait for improved performance. This breaks binary compatibility for the generated code. Source should remained compatible.
📜 Strings are now parsed using CodedInputStream.readStringRequireUtf8 instead of CodedInputStream.readString (following protobuf-java)
⚡️ Update to protobuf 3.11.4
⬇️ Drop Scala 2.11 and sbt 0.13.x support. Scala 2.11 is EOL and no longer able to compile protocol buffers generated by protoc 3.11.x in mixed Scala mode.
Added
aux_message_options,aux_field_optionsandaux_enum_optionsfile-level options to enable providing ScalaPB options to protos that can't be edited to include ScalaPB-specific settings (#737).➕ Added
bytes_typefile-level options to modify the Scala type generated for protobuf'sbytestype (#746).⚡️ Updated to Scala.js 1.0.0
⚠ ScalaPB runtime now depends on scala-collection-compat and is warning-free for both 2.12 and 2.13.
🚚 SparkSQL-scalapb: removed support for directly reading and writing Parquet file (outside Spark). It is still possible to load and save protobuf to parquet through converting them to dataframes in Spark. Reason of removal is what I perceive as low adoption due to getting no feedback. If you were relying on the ability to directly load and save protobufs to/from parquet, please let us know by filing a ticket.
-
v0.9.8 Changes
June 20, 2020- 🛠 Fix compatibility with sbt 1.4.x (#777)