The get_constraints method is never called by our core builders.
Description
It turns out that get_constraints is never called in our core builders. This is a needed part of the API when using a custom engine builder.
Similiarly, get_design_vars might also be missing.
Example
.
Aviary Version
0.9.9-dev
Relevant environment information
No response
Related to this, mission_inputs and mission_outputs methods are also not called when using a custom engine builder.
Related to this,
mission_inputsandmission_outputsmethods are also not called when using a custom engine builder.
This one is a little tricky because I have to do some special handling on engine outputs (lots of repeated outputs like THRUST that can't all be simultaneously promoted). It should be possible to accept mission_inputs instead of just ['*'] promoting. mission_outputs will need more thought. Engine deck outputs are determined dynamically, but I think we can handle that.
IMO mission_inputs and mission_outputs should default to returning ['*'] instead of an empty array (if you default to ['aircraft:*', 'mission:*'] you can get errors if you don't have any Aircraft or Mission variables in your subsystem. This way, the method is optional.
IMO mission_inputs and mission_outputs should default to returning ['*']
I think this would be great and makes it easier for users to control what variables are promoted (hence connected to/from upstream or other subsystems) vs not by simply promoting or not promoting the variable within a mission group.