traitlets
traitlets copied to clipboard
Application.print_alias_help() should take into account *any* Configurable class
It seems to me that in both the current release and the master version (where the code has been moved to emit_alias_help), the case where an alias refers to a class that is not in the inheritance hierarchy for a given instance will throw an error. Luckily, one can use such aliases (I do in my own projects, it's a nice way to share configurations between classes), it's just one can't print help.
The relevant code in master is (lines 389-393 in config/application.py):
classdict = {}
for cls in self.classes:
# include all parents (up to, but excluding Configurable) in available names
for c in cls.mro()[:-3]:
classdict[c.__name__] = c