mirror of
https://github.com/Garmelon/PFERD.git
synced 2023-12-21 10:23:01 +01:00
Switch Transform to PurePath
This commit is contained in:
parent
5ef5a56e69
commit
1ef85c45e5
@ -6,7 +6,7 @@ A organizer is bound to a single directory.
|
||||
import filecmp
|
||||
import logging
|
||||
import shutil
|
||||
from pathlib import Path
|
||||
from pathlib import Path, PurePath
|
||||
from typing import List, Set
|
||||
|
||||
from .location import Location
|
||||
@ -31,7 +31,7 @@ class Organizer(Location):
|
||||
# Keep the root dir
|
||||
self.mark(path)
|
||||
|
||||
def accept_file(self, src: Path, dst: Path) -> None:
|
||||
def accept_file(self, src: Path, dst: PurePath) -> None:
|
||||
"""Move a file to this organizer and mark it."""
|
||||
src_absolute = src.resolve()
|
||||
dst_absolute = self.resolve(dst)
|
||||
@ -73,9 +73,9 @@ class Organizer(Location):
|
||||
|
||||
self.mark(dst)
|
||||
|
||||
def mark(self, path: Path) -> None:
|
||||
def mark(self, path: PurePath) -> None:
|
||||
"""Mark a file as used so it will not get cleaned up."""
|
||||
absolute_path = self.path.joinpath(path).resolve()
|
||||
absolute_path = self.resolve(path)
|
||||
self._known_files.add(absolute_path)
|
||||
LOGGER.debug("Tracked %s", absolute_path)
|
||||
|
||||
|
@ -6,11 +6,10 @@ scheme to another.
|
||||
"""
|
||||
|
||||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
from pathlib import PurePath
|
||||
from typing import Callable, List, Optional, TypeVar
|
||||
|
||||
|
||||
Transform = Callable[[Path], Optional[Path]]
|
||||
Transform = Callable[[PurePath], Optional[PurePath]]
|
||||
|
||||
|
||||
@dataclass
|
||||
@ -19,14 +18,14 @@ class Transformable:
|
||||
An object that can be transformed by a Transform.
|
||||
"""
|
||||
|
||||
path: Path
|
||||
path: PurePath
|
||||
|
||||
|
||||
TF = TypeVar("TF", bound=Transformable)
|
||||
|
||||
|
||||
def apply_transform(
|
||||
transform: Callable[[Path], Optional[Path]],
|
||||
transform: Transform,
|
||||
transformables: List[TF],
|
||||
) -> List[TF]:
|
||||
"""
|
||||
|
@ -86,7 +86,7 @@ class PrettyLogger:
|
||||
def __init__(self, logger: logging.Logger) -> None:
|
||||
self.logger = logger
|
||||
|
||||
def modified_file(self, file_name: Path) -> None:
|
||||
def modified_file(self, file_name: PurePath) -> None:
|
||||
"""
|
||||
An existing file has changed.
|
||||
"""
|
||||
@ -95,7 +95,7 @@ class PrettyLogger:
|
||||
f"{Fore.MAGENTA}{Style.BRIGHT}Modified {str(file_name)!r}.{Style.RESET_ALL}"
|
||||
)
|
||||
|
||||
def new_file(self, file_name: Path) -> None:
|
||||
def new_file(self, file_name: PurePath) -> None:
|
||||
"""
|
||||
A new file has been downloaded.
|
||||
"""
|
||||
@ -103,14 +103,14 @@ class PrettyLogger:
|
||||
self.logger.info(
|
||||
f"{Fore.GREEN}{Style.BRIGHT}Created {str(file_name)!r}.{Style.RESET_ALL}")
|
||||
|
||||
def ignored_file(self, file_name: Path) -> None:
|
||||
def ignored_file(self, file_name: PurePath) -> None:
|
||||
"""
|
||||
Nothing in particular happened to this file or directory.
|
||||
"""
|
||||
|
||||
self.logger.info(f"{Style.DIM}Ignored {str(file_name)!r}.{Style.RESET_ALL}")
|
||||
|
||||
def filtered_path(self, path: Path, reason: str) -> None:
|
||||
def filtered_path(self, path: PurePath, reason: str) -> None:
|
||||
"""
|
||||
A crawler filter rejected the given path.
|
||||
"""
|
||||
|
Loading…
Reference in New Issue
Block a user