Reconcile underscore/dash config style handling (#2688) #2691
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.
As discussed in #2688:
Underscore config style is recommended Luigi, but
luigi.task.Config
also helpfully allows dash style in configuration files (with a deprecation warning).In a lot of places in contrib modules however,
configuration.get_config().get()
is used, with dash-style e.g. in the spark contrib module:configuration.get_config().get()
does not provide the dash/underscore translation feature, so one is forced to usedeploy-mode
in their config file. Using the seemingly recommendeddeploy_mode
alias will not work. This leads to inconsistently styled and confusing configuration files.This PR reconciles the underscore/dash handling of
luigi.task.Config
andconfiguration.get_config().get()
, so that both use the same logic: both underscores and dashes are allowed, but dash-style triggers a DeprecationWarning.Have you tested this? If so, how?
Added some tests about this too.