[New-bugs-announce] [issue31641] concurrent.futures.as_completed() no longer accepts arbitrary iterables

Łukasz Langa report at bugs.python.org
Fri Sep 29 15:49:30 EDT 2017


New submission from Łukasz Langa <lukasz at langa.pl>:

bpo-27144 introduced a regression for `as_completed()`: it used to accept arbitrary iterables but now requires sequences, otherwise raising an exception like:


Traceback (most recent call last):
  File "sandcastle/worker/sandcastle_worker.py", line 1266, in get_work_item
  File "jupiter/jupiter_client.py", line 166, in acquireWork
  File "jupiter/jupiter_client.py", line 241, in _acquire_multiple_async
  File "jupiter/jupiter_client.py", line 336, in _wait_for_responses
  File "/usr/local/fbcode/gcc-5-glibc-2.23/lib/python3.6/concurrent/futures/_base.py", line 217, in as_completed
    total_futures = len(fs)
TypeError: object of type 'map' has no len()


Since `as_completed()` is a very popular function, we need to revert the behavior here.

----------
assignee: lukasz.langa
keywords: 3.6regression
messages: 303355
nosy: grzgrzgrz3, lukasz.langa, ned.deily, pitrou
priority: release blocker
severity: normal
stage: patch review
status: open
title: concurrent.futures.as_completed() no longer accepts arbitrary iterables
type: behavior
versions: Python 3.6, Python 3.7

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue31641>
_______________________________________


More information about the New-bugs-announce mailing list