Skip to content
Snippets Groups Projects
Commit 6b0e0222 authored by Agate's avatar Agate 💬
Browse files

Merge branch 'fix-import-python-3-5' into 'develop'

Fix support for Python 3.5 in import script

Closes #1147 and #1148

See merge request funkwhale/funkwhale!1129
parents 79753d77 8116e733
No related branches found
No related tags found
No related merge requests found
......@@ -23,21 +23,30 @@ from funkwhale_api.common import utils as common_utils
from funkwhale_api.music import models, tasks, utils
def dir_scanner(scanner, extensions, recursive, ignored):
for entry in scanner:
if entry.is_file():
for e in extensions:
if entry.name.lower().endswith(".{}".format(e.lower())):
if entry.path not in ignored:
yield entry.path
elif recursive and entry.is_dir():
yield from dir_scanner(
entry, extensions, recursive=recursive, ignored=ignored
)
def crawl_dir(dir, extensions, recursive=True, ignored=[]):
if os.path.isfile(dir):
yield dir
return
with os.scandir(dir) as scanner:
for entry in scanner:
if entry.is_file():
for e in extensions:
if entry.name.lower().endswith(".{}".format(e.lower())):
if entry.path not in ignored:
yield entry.path
elif recursive and entry.is_dir():
yield from crawl_dir(
entry, extensions, recursive=recursive, ignored=ignored
)
else:
try:
scanner = os.scandir(dir)
yield from dir_scanner(scanner, extensions, recursive, ignored)
finally:
if hasattr(scanner, "close"):
scanner.close()
def batch(iterable, n=1):
......
Fixed an issue where in-place importing didn't work for directories on machines running Python 3.5 (#1148, #1147)
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment