Skip to content

0.4.0 - More Json Upgrades

Pre-release
Pre-release

Choose a tag to compare

@morgankenyon morgankenyon released this 11 Jan 02:24
· 18 commits to main since this release

Releasing the 0.4.0 package.

New features:

  • Supports deserializing lists of primitives
  • Now supports .NetFramework via targeting .netstandard2.0
  • Now supports nested strings in json values

Bug fixes:

  • Better support for finding the correct end of a number
    • Not pulling in the ending character "3]", now only pulling in the number.

Benchmarking:
Overall: Performance similar to 0.3.0 release.

| Method                  | Categories | Mean       | Error     | StdDev      | Median     | Ratio | RatioSD | Code Size | Gen0   | Allocated | Alloc Ratio |
|------------------------ |----------- |-----------:|----------:|------------:|-----------:|------:|--------:|----------:|-------:|----------:|------------:|
| FerrisSingleMapping     | Single     |   476.6 ns |  15.61 ns |    42.21 ns |   464.5 ns |  1.01 |    0.14 |  15,790 B | 0.1926 |     808 B |        5.32 |
| NewtonsoftSingleMapping | Single     |   956.2 ns |  89.25 ns |   250.27 ns |   858.2 ns |  2.03 |    0.57 |   2,204 B | 0.9613 |    4024 B |       26.47 |
| STJSingleMapping        | Single     |   476.6 ns |  18.02 ns |    51.40 ns |   468.7 ns |  1.01 |    0.15 |   4,130 B | 0.0362 |     152 B |        1.00 |
|                         |            |            |           |             |            |       |         |           |        |           |             |
| FerrisValueMapping      | Value      | 8,315.0 ns | 404.97 ns | 1,168.44 ns | 8,043.3 ns |  2.39 |    0.39 |  19,526 B | 1.8768 |    7849 B |        9.34 |
| NewtonsoftValueMapping  | Value      | 8,039.8 ns | 387.43 ns | 1,111.60 ns | 7,876.2 ns |  2.31 |    0.37 |   2,201 B | 1.7090 |    7168 B |        8.53 |
| TextJsonValueMapping    | Value      | 3,505.3 ns | 108.19 ns |   312.15 ns | 3,422.4 ns |  1.01 |    0.12 |   4,885 B | 0.1984 |     840 B |        1.00 |
|                         |            |            |           |             |            |       |         |           |        |           |             |
| FerrisListMapping       | List       | 3,466.3 ns | 168.33 ns |   449.30 ns | 3,331.1 ns |  1.34 |    0.24 |  18,426 B | 1.2550 |    5257 B |        3.65 |
| NewtonsoftListMapping   | List       | 3,167.6 ns |  90.14 ns |   255.72 ns | 3,061.5 ns |  1.22 |    0.18 |   1,843 B | 1.1635 |    4872 B |        3.38 |
| TextJsonListMapping     | List       | 2,633.1 ns | 128.93 ns |   372.00 ns | 2,494.7 ns |  1.02 |    0.19 |   4,528 B | 0.3433 |    1440 B |        1.00 |