Wire v3.3.0 Release Notes
Release Date: 2020-09-14 // over 3 years ago-
2020-09-14
- New: Proto3 support! This includes the new behaviors, the new types, and the JSON.
- New: Swift support for proto2 schemas. The details are in our [blog post][swiftblogpost].
- New: Wire will now throw an error when:
- two generated files end up overriding each other,
- imports form a cycle,
- packages form a cycle. This can be turned off with the flag
permitPackageCycles
, - an option within the source set cannot be resolved,
- there are name duplications of members in a message, or of rpcs in a service,
- a map is used as an extension.
- New: Support for the
json_name
pseudo option. - New: The
wire_package
file option allows one to set the JVM package where classes generated from the concerned file will be placed.wire_package
takes precedence overjava_package
. - New: Lists and maps in Kotlin generated code are now immutable.
- New: Support UTF-8 with BOM in proto files.
- New:
wire.since
andwire.until
have been renamed with the prefixconstant_
forEnumValueOptions
. - New: Wire generates 1) annotations for options which 2) gets assigned to the generated code where
appropriate. Both behavior can be turn on or off via the flags:
emitDeclaredOptions
: True to emit types for options declared on messages, fields, etc. Default to true,emitAppliedOptions
: True to emit annotations for options applied on messages, fields, etc. Default to false.
- Fix: Recursive map values.
- Fix: Long expressions in equals and encodedSize functions.