All Versions
41
Latest Version
Avg Release Cycle
100 days
Latest Release
157 days ago
Changelog History
Page 3
Changelog History
Page 3
-
v1.3.1 Changes
February 12, 2015๐ Improvements
๐ง #86: Configure system properties for maven plugin in the POM
Now it is possible to specify proto-compiler options directly in
pom.xml
<plugin> <groupId>io.protostuff</groupId> <artifactId>protostuff-maven-plugin</artifactId> <version>${protostuff.version}</version> <configuration> <properties> <property> <name>ppc.check_filename_placeholder</name> <value>true</value> </property> </properties> <protoModules> ...
๐ Fixes
#84: Value of
@Generated
annotation is not valid string [code generator] #90:- fixed issue with relative template file location (
<output>
maven plugin option) in multi-module projects - fixed
PluginProtoCompiler
behavior whenppc.check_filename_placeholder
is enabled, https://code.google.com/p/protostuff/issues/detail?id=166
- fixed issue with relative template file location (
-
v1.3.0 Changes
January 13, 2015 -
v1.2.0 Changes
December 15, 2014๐ Improvements
- ๐ #25: Added
@Tag
support for enums inprotostuff-runtime
- ๐ #32: Added support for messages without fields (empty messages)
- ๐ #35: Added support for RPC service code generation. Example.
- #38: Added ability to import proto in multi-module project. Example.
๐ Fixes
- ๐ #34: Fixed issue with CESU-8 charset and Java 8.
Compatibility
- ๐ #25: Added
-
v1.1.0 Changes
October 06, 2014- NOTE: The 1.1.x versions will be not be wire-compatible with the ff:
- protostuff-runtime-1.0.x
- protostuff-xml-1.0.x
- โก๏ธ Issue 161: Optimize ProtobufOutput for small nested messages (max size of 127)
- ๐ Issue 157: ConcurrentLinkedDeque support
- ๐ Issue 156: Support for newing object instances on Android 4.3+ devices
- thanks to eedzjee
- Issue 153: YamlOutput bug on repeated message fields
- โก๏ธ Issue 151: optimize xml format
- Issue 141: protostuff ser/der can not keep order of elements in an array which contain null value
- thanks to lzh0379
- Issue 119: Reflection-based array operations are rather expensive
- NOTE: The 1.1.x versions will be not be wire-compatible with the ff:
-
v1.0.8 Changes
December 10, 2013- Issue 140: Multiple runtime schema contexts (IdStrategy groups)
- ๐ new protostuff-runtime-view module
- select fields to include on ser/deser, without re-creating the expensive runtime fields.
- Issue 139: Add functionality to load protobuf schema from Reader
- โก๏ธ Issue 138: CodedIpnut.skipRawBytes() incorrectly updates totalBytesRetired when going outside of its buffer.
- thanks to Max Lanin
- Issue 135: PluginProtoCompiler throws IllegalStateException when one of the rules (message_block, enum_block) is missing
- Issue 133: When the varint of large strings (2kb or more) are serialized, unnecessary bytes are written A 2kb string previously needed 3 bytes for its varint. Now anything under 16kb will only need 2 bytes. This is a bug that was overlooked but doesn't have major side effects because of the way varint encoding works.
- ๐ Issue 131: option can't be used as a field name in maven-plugin
- 0๏ธโฃ Issue 129: Default value of optional bool properties is ignored.
- ๐ Issue 128: Maven-Plugin fails for multi-module projects
- added enums_by_name compiler option for java_v2protoc_schema (thanks to vitalyper)
- ๐ Issue 124: proto-parser throws NPE when an annotation on a field contains a reference
- โก๏ธ update jackson-core-asl to 1.9.13
- โก๏ธ update woodstox-core-asl to 4.1.3
-
v1.0.7 Changes
May 14, 2012- ๐ bugfix: an abstract class mapped to a single impl was not honored (bug introduced on 1.0.6)
-
v1.0.6 Changes
May 14, 2012- ๐ allow @Tag annotations to override the field name
- E.g @Tag(value=1, alias="foo")
- useful for non-binary formats like json/xml/yaml
- โ added Delegate, which handles ser/deser for:
- singletons
- pojos with no fields
- pojos that should not be merged
- could be used to encode a type to a byte array and write it (for example packing an int[] to a byte[])
- โ added @Morph field annotation, which overrides: -Dprotostuff.runtime.morph_non_final_pojos -Dprotostuff.runtime.morph_collection_interfaces (new) -Dprotostuff.runtime.morph_map_interfaces (new)
- Issue 115: protostuff has problem to serialize java.lang.Throwable Object
- ๐ Issue 120: Add serialization support for empty/singleton/synchronized/unmodifiable/checked collection/set/sortedset/list/map/sortedmap
- Issue 118: Doc improvement for the compiler help message
- Issue 104: 2 new compilers: proto_extender, java_bean_model (by Ivan Prisyazhniy and Igor Scherbak)
- 0๏ธโฃ Issue 114: Allow collection/map registration on DefaultIdStrategy
- Issue 111: NumericIdStrategy fails to use the enum ids when the field is an enum array
- Issue 110: protostuff has problem serilize java.lang.Class Object
- ๐ Issue 108: Ignore null values in json parser
- removes recursion and uses a loop instead
- ๐ allow @Tag annotations to override the field name
-
v1.0.5 Changes
March 31, 2012- Issue 107: Fields that are interfaces are not being serialized correctly if assigned an enum/boxed primitive type at runtime To optimize polymorphic ser/deser, use abstract classes or atleast declare the base abstract class.
- โ add support for annotations on protostuff-runtime to have explicit control of field numbers (patch by Brice Jaglin). Annotate all non-transient/non-static fields with @Tag(x) or none at all (all or nothing).
- Issue 77: RuntimeSchema.getSchema on Android and Server (the solution is to use @Tag annotations)
- Issue 86: Is RuntimeSchema.createFrom safe (the solution is to use @Tag annotations)
- Issue 106: Use Double.doubleToRawLongBits (was Double.doubleToLongBits) on serialization (protostuff-core)
- Not applicable to protostuff-me since the method Double.doubleToRawLongBits does not exist on j2me api
- ๐ new protostuff-runtime-registry module (compact ids for your polymorphic pojos)
- Issue 105: ObjectSchema needs to check clazz.getSuperclass().isEnum() to detect complex enums
- ๐ Issue 88: Add support for transparent handling of non-standard collections
- Issue 96: user definable mapping: FQNC's --> integer, for serialized stream size-reduction (thanks to Leo Romanoff)
- Issue 103: Deserialize failed when reading objects from ObjectInput/DataInput
- โ Issue 101: Improve ByteString.equals
- ๐ allow message/enum references on options and annotations (proto-parser).
- โ add "cache_protos" config (cache/re-use protos being imported/loaded by multiple modules)
- Issue 94: IllegalArgumentException thrown when instantiating a non-public class
- Issue 93: Add runtime option to always use the constructor from sun reflection factory
- Issue 92: [protostuff-me] Preverification fails (patch by thierry.monney)
- Issue 91: Generated J2ME code not is not compatible
-
v1.0.4 Changes
October 24, 2011- Issue 90: byte arrays on protostuff-runtime were not treated as scalar fields Best to update to this version for performance reasons. If you have existing data that came from a pojo with byte[] fields, it will not be compatible on deser. You can safely update the data by deserializing with the old protostuff from a different classloader and writing it back again using the new protostuff on another classloader.
-
v1.0.3 Changes
October 22, 2011- Issue 89: graph serialization bug on IdentityHashMap and EnumMap
- Issue 87: EnumSet and EnumMap without generics are not handled
- Issue 85: graph serialization bug (protostuff-runtime) on collections/map without generics and dynamic objects