Fix code for generating config files #4074
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #3943, see that issue for a full explanation and previous discussion on this issue.
In short, the function
ParamUtils::PrintParams
previously created a machine-readable config file with parameter names and values. It was then edited to add human-readable descriptions to each of the parameters. While this change undoubtedly made the results easier for users to interpret, the resulting files no longer functioned properly as config files. This (1) broke the parts of the code that assumedParamUtils::PrintParams
created machine-readable config files and (2) meant there was no longer an API function for creating machine-readable config files using the current settings.This PR fixes both issues:
ParamUtils::PrintParams
to specify whether descriptions of parameters should be printedParamUtils::PrintParams
is inarguably being used with the intent of creating a machine-readable config file, the parameter is set totrue
DumpVariables
has been added, which creates config files (the old behavior ofPrintVariables
)