Allow configuration for known sections #4
Merged
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.
First of all thanks for the plugin, it works very well.
At work we have to import a module at the beggining of the file because we rely on some side effects from the import.
I wanted to force the import to move to the top and it seems the recommended way is to define custom sections together with https://pycqa.github.io/isort/docs/configuration/options.html#known-other.
So my config would look like:
Since these
known_{section}
keys are dynamic, they are not present in the dataclass definition for_Config
, and are filtered before theisort.Config
is created in the plugin.The proposed change allows any config key that starts with the
known_
prefix. I considered generating the list of validknown_
keys from the user-defined sections, but isort already validates that and didn't see the need for duplicating the logic.An alternative approach would be to add the module to the
FUTURE
section but that is discouraged: https://pycqa.github.io/isort/docs/configuration/options.html#known-future-library