17 July 2012

Java Construct 1.1.2 Release

Java Construct 1.1.2 is now available!

You can download it from https://github.com/ZiglioUK/construct/tags

Also available from Maven Central

 <dependency>  
  <groupId>com.sirtrack</groupId>  
  <artifactId>javaconstruct</artifactId>  
  <version>1.1.2</version>  
 </dependency>  

New features:

  1. a CRC/Checksum Construct, see example on how to use it: IPv4 
  2. Implemented Restreams (dynamic Structs) - only parsing for now
  3. Implemented MetaArray, Sequence, more Adapters and Macros
  4. Added an experimental BeanAdapter for typesafe conversion from/to a Container
TODOs:
  1. Improve formatting. I'm sorry but each new release of Eclipse loses my settings. It looks good on Eclipse, but for anyone else tabs are all over the place
  2. Implement Restream.build() at a certain point 
Nice to have:
  1. Do some performance testing, using the Jvm Serializers benchmark
  2. Cleanup the low level, possibly moving away from ByteBuffer, in similar way as Kryo 2 did.

About Construct

Python Construct is a library for parsing and building binary messages. 
Java Construct is an "as faithful as possible" translation to Java of Python Construct 2.x. 
See the docs for explanations and examples. 


3 comments:

  1. SBInt32 returns java Integer. Should UBInt32 always return Long? On line 117 of Packer.java, it returns Integer(i) when i>0. Thanks

    ReplyDelete
  2. Hi, sorry I didn't sen your comment until now.
    Yes, an Unsigned 32 bit integer will and should return Long.
    Thank you for pointing that out!

    ReplyDelete
  3. Hi, do you plan to add support for 64bit integers? Currently Packer.length() throws an exception when certain fields are defined as 64bit ints.
    Thanks.

    ReplyDelete

Note: only a member of this blog may post a comment.