|
| 1 | +1.1.0-RC / 2021-02-03 |
| 2 | +================== |
| 3 | + |
| 4 | +This is a release candidate of 1.1.0 version. Note that final 1.1.0 version may include more features and bugfixes, |
| 5 | +which would be listed in the corresponding changelog. |
| 6 | + |
| 7 | +### Kotlin version requirement updated |
| 8 | + |
| 9 | +Due to changes in calling conventions between compiler plugin and serialization core runtime, this release requires |
| 10 | +Kotlin version at least 1.4.30-M1. However, this changes should not affect your code, |
| 11 | +because only deprecated functions were removed from public API. |
| 12 | +See [corresponding PR](https://github.com/Kotlin/kotlinx.serialization/pull/1260) for the details. |
| 13 | + |
| 14 | +### Experimental support for inline classes (IR only) |
| 15 | + |
| 16 | +Using 1.1.0-RC, you can mark inline classes as `@Serializable` and use them in other serializable classes. |
| 17 | +Unsigned integer types (`UByte`, `UShort`, `UInt` and `ULong`) are serializable as well and have special support in JSON. |
| 18 | +This feature requires Kotlin compiler 1.4.30-RC and enabling new IR compilers for [JS](https://kotlinlang.org/docs/reference/js-ir-compiler.html) and [JVM](https://kotlinlang.org/docs/reference/whatsnew14.html#new-jvm-ir-backend). |
| 19 | + |
| 20 | +You can learn more in the [documentation](docs/inline-classes.md) |
| 21 | +and corresponding [pull request](https://github.com/Kotlin/kotlinx.serialization/pull/1244). |
| 22 | + |
| 23 | +### Other features |
| 24 | + |
| 25 | + * Add `serializerOrNull` function for `KType` and `Type` arguments (#1164) |
| 26 | + * Allow shared prefix names in `Properties` (#1183) (thanks to [TorRanfelt](https://github.com/TorRanfelt)) |
| 27 | + * Add support for encoding/decoding `Properties` values as Strings (#1158) (thanks to [daniel-jasinski](https://github.com/daniel-jasinski)) |
| 28 | + |
| 29 | +### Bugfixes and performance improvements |
| 30 | + |
| 31 | + * Support contextual serialization for derived classes (#1277) (thanks to [Martin Raison](https://github.com/martinraison)) |
| 32 | + * Ensure serialization is usable from K/N background thread (#1282) |
| 33 | + * Fail on primitive type overflow during `JsonElement` deserialization (#1300) |
| 34 | + * Throw `SerializationException` instead of ISE when encountering an invalid boolean in JSON (#1299) |
| 35 | + * Optimize the loop for writing large varints in `ProtoBuf` (#1294) |
| 36 | + * Fix serializing property with custom accessors and backing field (#1197) |
| 37 | + * Optimize check for missing fields in deserialization and improve `MissingFieldException` message (#1153) |
| 38 | + * Improved support of nullable serializer in `@UseSerializers` annotation (#1195) |
| 39 | + * Correctly escape keys in `JsonObject.toString()` (#1246) (thanks to [Karlatemp](https://github.com/Karlatemp)) |
| 40 | + * Treat `Collection` as `ArrayList` in serializer by type lookups (#1257) |
| 41 | + * Do not try to end structure in encode/decode structure extensions if an exception has been thrown, so the original exception will be propagated (#1201) |
| 42 | + * Properly cache serial names in order to improve performance of JSON parser with strict mode (#1209) |
| 43 | + * Fix dynamic serialization for nullable values (#1199) (thanks to [ankushg](https://github.com/ankushg)) |
| 44 | + |
1 | 45 | 1.0.1 / 2020-10-28
|
2 | 46 | ==================
|
3 | 47 |
|
|
0 commit comments