Skip to content

Download fails with "AttributeError: module 'collections' has no attribute 'MutableMapping'"

Thanks for providing a very promising CLI to funkwhale :-)

Sadly, downloading files failes for me:

❯ funkwhale tracks download 1
  0%|                                                                                                              | 0/1 [00:00<?, ?Files/s]Downloading from https://**music.xyz.xz/api/v1/listen/7bd3b964-79ca-40a5-a464-57b3b709741d/?upload=3ff5458e-d383-46e6-933c-146737e16f58
  0%|                                                                                                              | 0/1 [00:00<?, ?Files/s]
Traceback (most recent call last):
  File "/home/xyz/.local/bin/funkwhale", line 8, in <module>
    sys.exit(cli())
  File "/home/xyz/.local/lib/python3.10/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/xyz/.local/lib/python3.10/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/xyz/.local/lib/python3.10/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/xyz/.local/lib/python3.10/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/xyz/.local/lib/python3.10/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/xyz/.local/lib/python3.10/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/xyz/.local/lib/python3.10/site-packages/click/decorators.py", line 21, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/xyz/.local/lib/python3.10/site-packages/funkwhale_cli/cli/base.py", line 117, in wrapper
    return loop.run_until_complete(f(*args, **kwargs))
  File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
    return future.result()
  File "/home/xyz/.local/lib/python3.10/site-packages/funkwhale_cli/cli/tracks.py", line 103, in track_download
    filename_params = extract_filename_params(track_data, extension)
  File "/home/xyz/.local/lib/python3.10/site-packages/funkwhale_cli/cli/tracks.py", line 60, in extract_filename_params
    filename_params = utils.flatten(track_data)
  File "/home/xyz/.local/lib/python3.10/site-packages/funkwhale_cli/utils.py", line 95, in flatten
    if isinstance(v, collections.MutableMapping):
AttributeError: module 'collections' has no attribute 'MutableMapping'

I'm using the current (2022-07-12) commit on master (21df5646).