# HG changeset patch # User Goffi # Date 1576841284 -3600 # Node ID 2e1c3d33099bf76898898ad4ac5a97eb7d5a3501 # Parent 4f8bdf50593f01eca5b95b221783eb45e54728e7 tools (common/files_utils): get_unique_name now uses and returns Path instances. diff -r 4f8bdf50593f -r 2e1c3d33099b sat/tools/common/files_utils.py --- a/sat/tools/common/files_utils.py Fri Dec 20 12:28:04 2019 +0100 +++ b/sat/tools/common/files_utils.py Fri Dec 20 12:28:04 2019 +0100 @@ -18,18 +18,18 @@ # along with this program. If not, see . """tools to help manipulating files""" -import os.path +from pathlib import Path def get_unique_name(path): - """generate a path with a name not conflicting with existing file + """Generate a path with a name not conflicting with existing file - @param path(unicode): path to the file to create - @return (unicode): unique path (can be the same as path if there is not conflict) + @param path(str, Path): path to the file to create + @return (Path): unique path (can be the same as path if there is no conflict) """ - ori_path = path + ori_path = Path(path) idx = 1 - while os.path.exists(path): - path = ori_path + "_" + str(idx) + while path.exists(): + path = ori_path.with_name(ori_path.name + f"_{idx}") idx += 1 return path