beets-plugins icon indicating copy to clipboard operation
beets-plugins copied to clipboard

Update moveall for python3 compatibility

Open ilohmar opened this issue 6 years ago • 0 comments

This should, as far as I can see, not hamper python2 compatibility. But Python2 is no longer supported starting from 2020-01-01, anyway...

Changes:

  • iteritems -> items
  • print statement -> function call
  • proper handling of local exception var
  • use util.py3_path on internal bytes paths where necessary

shutil.move must not be called w/ bytes paths, as it calls path.rstrip(sep) on a passed path, where sep is a string.

Apparently, beets calls the event handlers with (discouraged, but internally-used) bytes "paths" instead of unicode strings, presumably a python2 legacy.

ilohmar avatar Dec 08 '19 13:12 ilohmar