dicogis.utils.paths module

Path helpers pathlib doesn’t provide.

dicogis.utils.paths.absolute_path(input_path)

Make a path absolute and lexically normalized, without touching the disk.

pathlib has no exact equivalent: Path.absolute() keeps “..” components, and Path.resolve() also follows symbolic links and, on Windows, expands 8.3 short names (e.g. RUNNER~1), which changes paths compared or displayed elsewhere. This is the one place where os.path is used on purpose.

Parameters:

input_path (Path | str) – path to make absolute, relative to the current directory

Return type:

Path

Returns:

absolute path, with “.” and “..” components collapsed