init
This commit is contained in:
commit
38355d2442
9083 changed files with 1225834 additions and 0 deletions
41
.venv/lib/python3.8/site-packages/isort/files.py
Normal file
41
.venv/lib/python3.8/site-packages/isort/files.py
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
import os
|
||||
from pathlib import Path
|
||||
from typing import Iterable, Iterator, List, Set
|
||||
|
||||
from isort.settings import Config
|
||||
|
||||
|
||||
def find(
|
||||
paths: Iterable[str], config: Config, skipped: List[str], broken: List[str]
|
||||
) -> Iterator[str]:
|
||||
"""Fines and provides an iterator for all Python source files defined in paths."""
|
||||
visited_dirs: Set[Path] = set()
|
||||
|
||||
for path in paths:
|
||||
if os.path.isdir(path):
|
||||
for dirpath, dirnames, filenames in os.walk(
|
||||
path, topdown=True, followlinks=config.follow_links
|
||||
):
|
||||
base_path = Path(dirpath)
|
||||
for dirname in list(dirnames):
|
||||
full_path = base_path / dirname
|
||||
resolved_path = full_path.resolve()
|
||||
if config.is_skipped(full_path):
|
||||
skipped.append(dirname)
|
||||
dirnames.remove(dirname)
|
||||
else:
|
||||
if resolved_path in visited_dirs: # pragma: no cover
|
||||
dirnames.remove(dirname)
|
||||
visited_dirs.add(resolved_path)
|
||||
|
||||
for filename in filenames:
|
||||
filepath = os.path.join(dirpath, filename)
|
||||
if config.is_supported_filetype(filepath):
|
||||
if config.is_skipped(Path(os.path.abspath(filepath))):
|
||||
skipped.append(filename)
|
||||
else:
|
||||
yield filepath
|
||||
elif not os.path.exists(path):
|
||||
broken.append(path)
|
||||
else:
|
||||
yield path
|
||||
Loading…
Add table
Add a link
Reference in a new issue