All notable changes to this project will be documented in this file, following the suggestions of Keep a CHANGELOG. This project adheres to Semantic Versioning.
- 8x performance improvement in (non gzipped) mmtf reading, #49
- Msgpack dependency upgraded
- Builds and works in JRE 11
- Bugfix: reduced encoder wasn't handling DOD as solvent
- Unit tests fix
- The decoder now treats null strings as nulls, instead of "". Roundtrips of null strings would fail because of that.
- Fixed issues with reduced encoder
- Removed unnecessary ParseException introduced in 1.0.4
- Faster MessagePack reading - replaced Jackson (probably slow because of reflection) with manual construction of objects, Jackson is still available, but the new solution is the default
- Faster parsing - moved computation from slow GenericDecoder.getNumBonds into constructor, which was invisible to profiler, but made parsing about 4x faster
- API functions to get the URL as a string and the data as an inputstream
- Added inter group saccharide bonds to the reduced format
- Cleanup of WriterUtils
- Updated version string in MmtfStructure
- Updated test data
- Added saccharides to the reduced format
- Updated to the URL to the v1.0 version
- API function to get a byte array from the URL
- Refactored the generation of Bioassemblies
- Refactored generateGroupMap to generateGroupList
- Update to the serialization module - only construct object mapper once
- getBioassemblyName added to the API - return the BioassemblyName as a string.
- Tests for EncoderUtils
- Bugfix for the Reduced encoder. Chain name list and chain id list are now transferred correctly.
- Update to the latest version of the dependencies
- Added package info for the codec project
- Improved docs and refactoring of test names
- mmtf-codec module - consolidating mmtf-encoder and mmtf-decoder
- org.rcsb.mmtf.codec package - with enums for encoding and decoding generic data
- NCS Operator information
- R-work and release date information
- Number models, number chains and number groups in the MMTF data
- Reduced format encoder
- Enums to define the different encoding strategy
- common-lang dependency
- OptionParser class to parse type, length and parameter from 12 byte header
- Codecs defined in 12 bytes at start of byte arrays. https://github.com/rcsb/mmtf/blob/master/spec.md#codecs
- Split lists are now recursive index encoded as single lists
- atomChargeList to formalChargeList
- xCoords -> xCoordList (and y,z and B-factors)
- mmtf-encoder and mmtf-decoder modules
- Find max in empty int array now returns -1. Added a test to do so.
- Refactored some of the code to remove repitition
- Added private to several class level variables
- Added a new reduced encoder to produce the reduced format of the data.
- Initial release