- `pathlib`의 `Path.resolve()`는 심볼릭 링크를 해석하여 상대 경로 작업 시 버그로 이어질 수 있다.
- `Path.resolve()`는 원래 경로에 상대적인 파일을 찾는 것을 어렵게 만들 수 있다.
- `Path.resolve()`를 호출한 후에는 `Path.parent`를 사용하지 않아야 한다.
- 상대 경로에서 ".."을 제거하고 절대 경로로 만드는 대신 `Path.resolve()` 대신 `os.path.normalize(os.path.abspath(...))`를 사용할 수 있다.
- `Path.resolve()`는 파일의 표준적인 표현을 생성하는 데 유용할 수 있지만, 이는 드문 사용 사례이다.
- 대부분의 경우, 버그의 원인이 될 수 있으므로 `Path.resolve()`의 사용을 피하는 것이 좋다.
- 일부 사용자는 특정 시나리오에서 심볼릭 링크를 해석하는 것을 선호할 수 있지만, 이는 가장 일반적인 동작이 아니다.
- 프로그램은 사용자가 심볼릭 링크를 해석할지 여부를 선택할 수 있는 플래그를 사용할 수 있다.
- 많은 사용자가 소스 코드를 심볼릭 링크에 넣지 않으므로, `Path.resolve()`는 그들에게는 문제가 되지 않는다.
- API 간에 파일을 전달할 때 절대 경로와 정규화된 경로를 사용하는 것이 중요하다.
pydev.blogspot.com
Fabio Zadrozny: Using (or really misusing) Path.resolve() in Python
