Currently, when Tracker.update is run, a new ref is created regardless of whether there is a change or not and a diff is generated.
e.g.
iex> Phoenix.Tracker.update(MyTracker, self(), "lobby", u.id, fn meta -> Map.put(meta, :away, true) end)
# Since the same values are set, there is no change in meta, but a diff is reported.
iex> Phoenix.Tracker.update(MyTracker, self(), "lobby", u.id, fn meta -> Map.put(meta, :away, true) end)
What about making a change or adding an option to suppress this?
If this suggestion is acceptable, I will create a patch.
Currently, when Tracker.update is run, a new ref is created regardless of whether there is a change or not and a diff is generated.
e.g.
What about making a change or adding an option to suppress this? If this suggestion is acceptable, I will create a patch.