From 9200549a85752f17f95e335e705aa30c6a137be4 Mon Sep 17 00:00:00 2001 From: Jan Janssen Date: Thu, 14 Mar 2024 10:41:31 -0500 Subject: [PATCH 1/2] Add type hints --- pyfileindex/pyfileindex.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/pyfileindex/pyfileindex.py b/pyfileindex/pyfileindex.py index b225f1c..1e11168 100644 --- a/pyfileindex/pyfileindex.py +++ b/pyfileindex/pyfileindex.py @@ -35,14 +35,14 @@ def __init__(self, path=".", filter_function=None, debug=False, df=None): self._df = df @property - def df(self): + def df(self) -> pandas.DataFrame: return self._df @property - def dataframe(self): + def dataframe(self) -> pandas.DataFrame: return self.df - def open(self, path): + def open(self, path: str) -> PyFileIndex: """ Open PyFileIndex in the subdirectory path @@ -117,7 +117,7 @@ def update(self): .reset_index(drop=True) ) - def _init_df_lst(self, path_lst, df=None, include_root=True): + def _init_df_lst(self, path_lst: list, df: pandas.DataFrame = None, include_root: bool = True) -> pandas.DataFrame: """ Internal function to build the pandas file index from a list of directories @@ -137,7 +137,7 @@ def _init_df_lst(self, path_lst, df=None, include_root=True): total_lst.append(entry) return self._create_df_from_lst(total_lst) - def _scandir(self, path, df=None, recursive=True): + def _scandir(self, path: str, df: pandas.DataFrame = None, recursive: bool = True) -> list: """ Internal function to recursivley scan directories @@ -200,7 +200,7 @@ def _get_changes_quick(self): ) return df_new, files_changed_lst, path_deleted_lst - def _get_lst_entry_from_path(self, entry): + def _get_lst_entry_from_path(self, entry: str) -> list: """ Internal function to generate file index entry from file system path @@ -231,7 +231,7 @@ def _get_lst_entry_from_path(self, entry): except FileNotFoundError: return [] - def _get_lst_entry(self, entry): + def _get_lst_entry(self, entry) -> list: """ Internal function to generate file index entry from scandir DirEntry @@ -262,7 +262,7 @@ def _get_lst_entry(self, entry): except FileNotFoundError: return [] - def _repr_html_(self): + def _repr_html_(self) -> str: """ Internal visualisation function for iPython notebooks @@ -272,14 +272,14 @@ def _repr_html_(self): return self._df._repr_html_() @staticmethod - def _check_if_path_exists(path): + def _check_if_path_exists(path: str): if not os.path.exists(path): raise FileNotFoundError( "The path " + path + " does not exist on your filesystem." ) @staticmethod - def _create_df_from_lst(lst): + def _create_df_from_lst(lst: list) -> pandas.DataFrame: """ Internal function to generate file index as pandas from a list of entries @@ -314,5 +314,5 @@ def _create_df_from_lst(lst): } ) - def __len__(self): + def __len__(self) -> int: return len(self._df[~self._df.is_directory]) From 1af57c33a063f26e78cdbb344590b6d945d2aa02 Mon Sep 17 00:00:00 2001 From: Jan Janssen Date: Thu, 14 Mar 2024 10:43:44 -0500 Subject: [PATCH 2/2] Can not return an option of the own type --- pyfileindex/pyfileindex.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyfileindex/pyfileindex.py b/pyfileindex/pyfileindex.py index 1e11168..12fbf1c 100644 --- a/pyfileindex/pyfileindex.py +++ b/pyfileindex/pyfileindex.py @@ -42,7 +42,7 @@ def df(self) -> pandas.DataFrame: def dataframe(self) -> pandas.DataFrame: return self.df - def open(self, path: str) -> PyFileIndex: + def open(self, path: str): """ Open PyFileIndex in the subdirectory path