Update changelog for Moshi 1.2.0.

This commit is contained in:
jwilson
2016-05-28 14:25:36 -04:00
parent c4896fdaed
commit 1537e03b77
2 changed files with 63 additions and 38 deletions

View File

@@ -1,6 +1,30 @@
Change Log
==========
## Version 1.2.0
_2016-05-28_
* New: Take advantage of Okio's new `Options` feature when reading field names and enum values.
This has a significant impact on performance. We measured parsing performance improve from 89k
ops/sec to 140k ops/sec on one benchmark on one machine.
* New: Upgrade to Okio 1.8.0.
```xml
<dependency>
<groupId>com.squareup.okio</groupId>
<artifactId>okio</artifactId>
<version>1.8.0</version>
</dependency>
```
* New: Support types that lack no-argument constructors objects on Android releases prior to
Gingerbread.
* Fix: Add writer value overload for boxed booleans. Autoboxing resolves boxed longs and doubles
to `value(Number)`, but a boxed boolean would otherwise resolve to value(boolean) with an
implicit call to booleanValue() which has the potential to throw NPEs.
* Fix: Be more aggressive about canonicalizing types.
## Version 1.1.0
_2016-01-19_
@@ -21,15 +45,15 @@ _2015-09-27_
* **API Change**: Replaced `new JsonReader()` with `JsonReader.of()` and `new JsonWriter()` with
`JsonWriter.of()`. If your code calls either of these constructors it will need to be updated to
call the static factory method instead.
* **API Change**: Dont throw `IOException` on `JsonAdapter.toJson(T)`. Code that calls this method
may need to be fixed to no longer catch an impossible `IOException`.
* **API Change**: Dont throw `IOException` on `JsonAdapter.toJson(T)`. Code that calls this
method may need to be fixed to no longer catch an impossible `IOException`.
* Fix: the JSON adapter for `Object` no longer fails when encountering `null` in the stream.
* New: `@Json` annotation can customize a field's name. This is particularly handy for fields whose
names are Java keywords, like `default` or `public`.
* New: `@Json` annotation can customize a field's name. This is particularly handy for fields
whose names are Java keywords, like `default` or `public`.
* New: `Rfc3339DateJsonAdapter` converts between a `java.util.Date` and a string formatted with
RFC 3339 (like `2015-09-26T18:23:50.250Z`). This class is in the new `moshi-adapters` subproject.
You will need to register this adapter if you want this date formatting behavior. See it in
action in the [dates example][dates_example].
RFC 3339 (like `2015-09-26T18:23:50.250Z`). This class is in the new `moshi-adapters`
subproject. You will need to register this adapter if you want this date formatting behavior.
See it in action in the [dates example][dates_example].
* New: `Moshi.adapter()` keeps a cache of all created adapters. For best efficiency, application
code should keep a reference to required adapters in a field.
* New: The `Types` factory class makes it possible to compose types like `List<Card>` or
@@ -48,7 +72,8 @@ _2015-06-16_
`JsonWriter`.
* Throw `JsonDataException` when theres a data binding problem.
* Adapter methods: `@ToJson` and `@FromJson`.
* Qualifier annotations: `@JsonQualifier` to permit different type adapters for the same Java type.
* Qualifier annotations: `@JsonQualifier` to permit different type adapters for the same Java
type.
* Imported code from Gson: `JsonReader`, `JsonWriter`. Also some internal classes:
`LinkedHashTreeMap` for hash-collision avoidance and `Types` for typesafe databinding.

View File

@@ -455,12 +455,12 @@ Download [the latest JAR][dl] or depend via Maven:
<dependency>
<groupId>com.squareup.moshi</groupId>
<artifactId>moshi</artifactId>
<version>1.1.0</version>
<version>1.2.0</version>
</dependency>
```
or Gradle:
```groovy
compile 'com.squareup.moshi:moshi:1.1.0'
compile 'com.squareup.moshi:moshi:1.2.0'
```
Snapshots of the development version are available in [Sonatype's `snapshots` repository][snap].