Skip to content
Snippets Groups Projects
Commit 8116e733 authored by Ciarán Ainsworth's avatar Ciarán Ainsworth Committed by Agate
Browse files

Fix support for Python 3.5 in import script

parent 79753d77
No related branches found
No related tags found
No related merge requests found
...@@ -23,11 +23,7 @@ from funkwhale_api.common import utils as common_utils ...@@ -23,11 +23,7 @@ from funkwhale_api.common import utils as common_utils
from funkwhale_api.music import models, tasks, utils from funkwhale_api.music import models, tasks, utils
def crawl_dir(dir, extensions, recursive=True, ignored=[]): def dir_scanner(scanner, extensions, recursive, ignored):
if os.path.isfile(dir):
yield dir
return
with os.scandir(dir) as scanner:
for entry in scanner: for entry in scanner:
if entry.is_file(): if entry.is_file():
for e in extensions: for e in extensions:
...@@ -35,11 +31,24 @@ def crawl_dir(dir, extensions, recursive=True, ignored=[]): ...@@ -35,11 +31,24 @@ def crawl_dir(dir, extensions, recursive=True, ignored=[]):
if entry.path not in ignored: if entry.path not in ignored:
yield entry.path yield entry.path
elif recursive and entry.is_dir(): elif recursive and entry.is_dir():
yield from crawl_dir( yield from dir_scanner(
entry, extensions, recursive=recursive, ignored=ignored entry, extensions, recursive=recursive, ignored=ignored
) )
def crawl_dir(dir, extensions, recursive=True, ignored=[]):
if os.path.isfile(dir):
yield dir
return
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): def batch(iterable, n=1):
has_entries = True has_entries = True
while has_entries: while has_entries:
......
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.
Please register or to comment