Invalid format of mix.lock?

While learning about https://elixirforum.com/t/get-app-versions-at-compile-time/ I discovered that mix.lock has an invalid format? Is this a bug?

Code.eval_file("mix.lock")
warning: found quoted keyword "jason" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscore do not require quotes
  mix.lock:33

Should the mix.lock have mix format applied before it is created?

It is not invalid, it is just non-canonical one. Also you should never do stuff like Code.eval_file("mix.lock") as there is no guarantee about format of that file.

3 Likes