| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
_set_defaults_from_config must be called before _parse_config_options
This is due to a tricky interaction between the two methods:
(1) _set_defaults_from_config does what its name implies, it updates
the "default" property of each Option based on the value that exists
in the config.
(2) _parse_config_options will look at each option and set it to the
default value that is _currently_ defined. If the option does not
exist in the namespace, it will be added. The method carefully
avoids overwriting the value of an option that is already defined in
the namespace.
Thus, if _set_defaults_from_config has not been called yet when
_parse_config_options is called, all config file options will get set
to their hardcoded defaults. This process defines the options in the
namespace and _parse_config_options will never look at them again.
|
|
|
|
| |
This is to make the method name more in line with what it does
|
| |
|
|
|
|
| |
This also fixes some extraneous calls in the option parsing loop.
|
| |
|
|
|
|
|
|
|
|
| |
If finalize is called early, then some options will not be parsed
but instead always take the default value (observed with
reporting.transport). Calling finalize once at the end of the
processing lets all options take the values they were assigned in the
config file.
|
| |
|
| |
|
| |
|
|
|
|
| |
It hasn't been parsed at this stage anyway.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This ensures that required positional arguments are handled properly.
If we only reparse the remaining arguments -- i.e., those that were
not understood on previous passes -- then we may parse out all of the
positional arguments on the first pass, and then on a subsequent pass
parse_known_args() will fail because the positional argument is not
provided.
|
| |
|
|
|