List vs. String with Multiple vs. Single Output Inconsistency

I love the new multiple output support! (This is not just a compliment sandwich, I really mean that).

However, copying and pasting a multiple output callback and editing it for a single output callback got me into some trouble. Mainly because, with multiple outputs, you pass a list of Output objects to update. However with the single output, it’s just the one Output object. It took me a bit to recognize I needed to remove the ‘[’ and ‘]’ for just the single Output.

This is slightly inconsistent with the behavior of inputs and state. With those, regardless of whether you’re passing 1 or many, they go as a list.

Whether that’s desired behavior or not, I struggled to find any evidence of anyone else running into this issue anywhere online. So I’m really just looking to point it out, and I guess maybe highlight it as a possible issue if it is deemed as such.

Thank you for the work that you do!