Version: 2.1.1

Release date:
  11-Nov-2012

Fixes:

* [Issue#34] `JsonParser.nextFieldName()` fails on buffer boundary
 (reported by gsson@github)
* [Issue#38] `JsonParser.nextFieldName()` problems when handling
 names with trailing spaces
 (reported by matjazs@github)

------------------------------------------------------------------------
=== History: ===
------------------------------------------------------------------------

2.1.0 (08-Oct-2012)

A new minor version for 2.x.

New features:

* [Issue#14]: add 'readBinaryValue(...)' method in JsonParser
* [Issue#16]: add 'writeBinary(InputStream, int)' method in JsonGenerator
  (and implement for JSON backend)
* [Issue#26]: Allow overriding "root value separator"
 (suggested by Henning S)

Improvements:

* [JACKSON-837]: Made JsonGenerator implement Flushable.
 (suggested by Matt G)
* [Issue#10]: add 'JsonProcessingException.getOriginalMessage()' for accessing
  message without location info
* [Issue#31]: make `JsonFactory` java.io.Serializable (via JDK)

Other:

* [Issue-25]: Add 'createParser' and 'createGenerator' (as eventual replacements
  for 'createJsonParser'/'createJsonGenerator') in 'JsonFactory'
* Try to improve locking aspects of symbol tables, by reducing scope of
  synchronized sections when creating, merging table contents.
* Added 'JsonFactory.copy()' method to support databinding's 'ObjectMapper.copy()'
* Added method 'requiresCustomCodec()' for JsonFactory and JsonParser
* Added 'JsonParser.getValueAsString()' method (to support flexible conversions)
* Added META-INF/services/com.fasterxml.jackson.core.JsonFactory SPI to register
  `JsonFactory` for even more automatic format discovery in future.

2.0.4 (26-Jun-2012)

Fixes:

* [Issue-6] PrettyPrinter, count wrong for end-object case
* 1.9.x fixes up to 1.9.8

2.0.3: skipped;	 only some modules use this version

2.0.2 (14-May-2012)

* 1.9.x fixes up to 1.9.7

2.0.1 (22-Apr-2012)

Fixes:

* [JACKSON-827] Fix incompatibilities with JDK 1.5 (2.0.0 accidentally
  required 1.6)
 (reported Pascal G)

2.0.0 (25-Mar-2012)

Fixes:

(all fixes up until 1.9.6)

Improvements

* [JACKSON-730]: Add checks to ensure that Features are applicable for
  instances (parsers, generators), or if not, throw IllegalArgumentException
* [JACKSON-742]: Add append-methods in SerializableString

New features:

* [JACKSON-782]: Add 'JsonParser.overrideCurrentName()', needed as a workaround
  for some exotic data binding cases (and/or formats)

[entries for versions 1.x and earlier not retained; refer to earlier releases)
