Actually it looks like Flask is returning an empty response body whenever you use 204 even though the response is an empty list.

Anyway, you've got some pretty strong opinions on this one so I spent some time today asking around and doing a little research.  I still think 204 No Content makes some sense in this case but there are many opinions that disagree with me and those that do agree often are along the lines of "yeah it makes sense but it's not common".  So with that, I'm going to revert my changes here before the merge.