Adds custom list and dict option types.
Review Request #1389 — Created Nov. 22, 2014 and submitted — Latest diff uploaded
|ity, patricklaw, zundel|
Values (in cmd-line args, env vars and config files) must be JSON lists/objects.
Currently our config reader 'parses' list and dict values using python 'eval', so we
change all of those in our pants.ini to be valid JSON. Fortunately they remain valid
eval-able python too. Eventually we'll get rid of that eval-ing code, but for now
we need to support both, during the transition.
Adds checks in migrate_config.py for list/dict values that aren't valid JSON.
Note that the list type is different from action='append'. The latter
appends cmd-line arg values to the default. The former replaces the