# \[ANN\] JSON3.jl 1.0 Release + new StructTypes.jl Package

**URL:** <https://discourse.julialang.org/t/ann-json3-jl-1-0-release-new-structtypes-jl-package/34700>\
**Category:** Data\
**Created:** [February 16, 2020, 2:14am UTC](https://discourse.julialang.org/t/ann-json3-jl-1-0-release-new-structtypes-jl-package/34700 "2020-02-16T02:14:46Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![Martin\_Florek](https://avatars.discourse-cdn.com/v4/letter/m/f4b2a3/32.png) [@Martin\_Florek](https://discourse.julialang.org/u/Martin_Florek)\
**Post date:** [September 25, 2020, 9:17am UTC](https://discourse.julialang.org/t/ann-json3-jl-1-0-release-new-structtypes-jl-package/34700/2 "2020-09-25T09:17:00Z")

</div>

JSON3 is great! Currently, I want to use it for the REST API.  
However, I run into one problem with `NaN` in the vector. For one `FloatX` it’s OK 🙂 . See:

```plaintext
julia> struct Foo
        a::Vector{Float64}
        b::Float64
       end

julia> JSON3.StructType(::Type{<:Foo}) = JSON3.Struct()

```

```julia
julia> str = JSON3.write(Foo([NaN, 2.3], NaN), allow_inf=true)
"{\"a\":[NaN,2.3],\"b\":NaN}"

julia> str = JSON3.write([NaN, NaN, 1.1], allow_inf=true)
"[NaN,NaN,1.1]"

julia> str = JSON3.write(NaN, allow_inf=true)
"NaN"

```

 ![nanValid](https://global.discourse-cdn.com/julialang/original/3X/1/e/1e4d1726b78db1212ee575a98064d6103ef520d8.png)  
Thx.

_NOTE_: Too bad this `allow_inf = true` keyword argument is not mentioned in the documentation.

---

_[View the full topic](https://discourse.julialang.org/t/ann-json3-jl-1-0-release-new-structtypes-jl-package/34700)._
