The current code relies on _parse_command_line_params modifying the passed in override_params dictionary in place. Unfortunately, the value of that object is replaced here:
|
for param_str in params_str: |
|
param_dict = _parse_param_str(param_str) |
|
override_params, conflicts = merge_configuration_dicts( |
|
override_params, param_dict |
|
) |
The merge_config_dictionaries function deep copies its inputs, so the returned override_params object is not the same as the passed in one. When the function returns, the original dictionary is untouched and so none of the changed parameters are enforced.
The current code relies on
_parse_command_line_paramsmodifying the passed inoverride_paramsdictionary in place. Unfortunately, the value of that object is replaced here:virtual_ecosystem/virtual_ecosystem/entry_points.py
Lines 54 to 58 in a37f83f
The
merge_config_dictionariesfunction deep copies its inputs, so the returnedoverride_paramsobject is not the same as the passed in one. When the function returns, the original dictionary is untouched and so none of the changed parameters are enforced.