Current section
8 Versions
Jump to
Current section
8 Versions
Compare versions
3
files changed
+14
additions
-9
deletions
| @@ -232,4 +232,4 @@ | |
| 232 232 | {<<"optional">>,true}, |
| 233 233 | {<<"repository">>,<<"hexpm">>}, |
| 234 234 | {<<"requirement">>,<<"~> 1.0">>}]]}. |
| 235 | - {<<"version">>,<<"0.13.0">>}. |
| 235 | + {<<"version">>,<<"0.13.1">>}. |
| @@ -21,13 +21,18 @@ defmodule NomadClient.Deserializer do | |
| 21 21 | end |
| 22 22 | |
| 23 23 | def deserialize(model, field, :map, mod, options) do |
| 24 | - model |
| 25 | - |> Map.update!( |
| 26 | - field, |
| 27 | - &Map.new(&1, fn {key, val} -> |
| 28 | - {key, Poison.Decode.decode(val, Keyword.merge(options, as: struct(mod)))} |
| 29 | - end) |
| 30 | - ) |
| 24 | + maybe_transform_map = fn |
| 25 | + nil -> |
| 26 | + nil |
| 27 | + |
| 28 | + existing_value -> |
| 29 | + Map.new(existing_value, fn |
| 30 | + {key, val} -> |
| 31 | + {key, Poison.Decode.decode(val, Keyword.merge(options, as: struct(mod)))} |
| 32 | + end) |
| 33 | + end |
| 34 | + |
| 35 | + Map.update!(model, field, maybe_transform_map) |
| 31 36 | end |
| 32 37 | |
| 33 38 | def deserialize(model, field, :date, _, _options) do |
| @@ -2,7 +2,7 @@ defmodule NomadClient.Mixfile do | |
| 2 2 | use Mix.Project |
| 3 3 | |
| 4 4 | @source_url "https://github.com/mrmstn/nomad_client" |
| 5 | - @version "0.13.0" |
| 5 | + @version "0.13.1" |
| 6 6 | def project do |
| 7 7 | [ |
| 8 8 | app: :nomad_client, |