View Source README
SmartCity
This library defines helper functions that are used across SmartCity modules.
installation
Installation
def deps do
[
{:smart_city, "~> 6.0.0"}
]
end
basic-usage
Basic Usage
iex> SmartCity.Helpers.to_atom_keys(%{"a" => 1, "b" => 2, "c" => 3})
%{a: 1, b: 2, c: 3}
iex> SmartCity.Helpers.to_atom_keys(%{"a" => %{"b" => "c"}})
%{a: %{b: "c"}}
iex> SmartCity.Helpers.deep_merge(%{a: 1, b: 2}, %{a: 3, c: 4})
%{a: 3, b: 2, c: 4}Full documentation can be found at https://hexdocs.pm/smart_city/api-reference.html.
contributing
Contributing
The build process runs these commands:
mix local.rebar --force
mix local.hex --force
mix deps.get
mix format --check-formatted
mix credo
mix test
releases
Releases
New versions are published here whenever a Github release is cut.
The version # of smart_city is expected to sync with smart_city_test.
When cutting a release in either package, the other should also receive an update so that it utilizes the new package version.
Ex: After updating the smart_city version by changing the version in mix.exs, merging, and cutting a release, smart_city_test should receive an
update PR as well. That smart_city_test PR should update the version of smart_city in the mix.exs file, and a release of smart_city_test should
be made.
It's expected that the version of smart_city and smart_city_test always match in their mix.exs file and their github releases.
license
License
SmartCity is released under the Apache 2.0 license - see the license at http://www.apache.org/licenses/LICENSE-2.0