v0.9.0-beta
Pre-release
Pre-release
This release includes APIs for reading and writing binary and text Ion data. It also includes "tree" APIs for reading, manipulating, and writing Ion data via an in-memory representation of the values.
The following changes have been made since the amzn/ion-dotnet repository was forked from dhhoang/IonDotnet. Note: several of these are API-breaking changes.
- Changed the namespace from IonDotnet to Amazon.IonDotnet. (#65)
- Split the Amazon.IonDotnet.Systems package into Amazon.IonDotnet.Builders and Amazon.IonDotnet.Utils. (#24)
- Removed the IValueWriter interface. (#25)
- Moved the Amazon.IonDotnet.Conversions package to to Amazon.IonDotnet.Internals.Conversions. (#26)
- Added ImportLocation to SymbolToken to enable correct handling of symbols with unknown text. (#12)
- Extracted interfaces for the "tree" API, e.g. IIonValue, IIonInt, etc. Made the implementations internal and added a ValueFactory API for constructing IIonValue instances. (#30)
- Made IIonValue the super-interface over all types, e.g. IIonInt, IIonBool, etc. This reduces required casting when dealing with IIonValue instances. (#43, #45)
- Added GetField and SetField methods to IIonStruct. (#44)
- Added UserTreeReader to enable traversal over "tree" values via the IIonReader API. (#51)
- Added IonReaderBuilder to provide a single source of instances of the various IIonReader implementations. (#51)
- Made IIonValue scalar types immutable and removed references to parent containers. (#53)
- Added the forceFloat64 option to IonBinaryWriterBuilder to enable users to write 64-bit floats even when the value would fit in a 32-bit float with full fidelity.
- Fixed a bug that caused the RawBinaryWriter to write both lists and s-expressions using the list type ID. (#59)
- Added support for vertical tab and form-feed whitespace characters. (#72)
- Updated IIonReader to extend IDisposable. (#75)
- Removed JSON feature until it is properly implemented. (#80)
- Fixed -0 decimals. (#83)
- Various minor bugfixes (#7, #8, #9, #10, #11, #27, #32, #40, #49, #55, #56, #57, #58, #81)
Full list of commits: 0677fb7...v0.9.0-beta