[MRG] preparse subcommands in an extensionapps #133
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.
Here's my proposed fix for handling subcommands in
ExtensionApp
s. This essentially preparses the command line, looking for any subcommands called from the CLI.tl;dr
The problem is that traitlet's
parse_command_line
method both parses the command line and loads configuration for the current instance of theJupyterApp
. The coupling of these two things causes issues for the ExtensionApp, which is a hierarchical chain ofJupyterApp
s. Loading the config before initializing the ServerApp leads to trouble. Preparsing the command line and exiting the current application if a subapp or--help
flag is present solves the issue.@echarles this would replace #125