Skip to content

Turn NodeController and NodeBuilder into PEP 3119 abstract base classes

Jim Newsome requested to merge jnewsome/chutney:true-abstract into main

This allows us to annotate methods as abstract. That in turn allows mypy to statically identify missing implementations in subclasses, and runtime errors to be moved up object-instantiation-time instead of method-calling-time.

Move doc comments to the base class only.

Use the @override annotation to make it clearer that implementations are overriding a method in the base class (and hence to look for doc comments there).

Progress on #40030

Merge request reports

Loading