Skip to content

Make API endpoints take Lists instead of Iterables as arguments

  1. clients crash when they call the API with an iterator
  2. some backend implementations violate the contract by assuming the argument is a sequence (eg. by iterating twice on it, and assuming the elements are the same)
  3. no matter what we do, the endpoints will always get a list as argument in practice, because they go through the RPC framework
  4. there is no concrete (ha!) advantage in taking an Iterable rather than a List.

Migrated from D3636 (view on Phabricator)

Merge request reports