Skip to content

v0.9.0-beta

Pre-release
Pre-release
Compare
Choose a tag to compare
@pbcornell pbcornell released this 18 Mar 23:25
0a21f54

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