Unipath
Object-oriented alternative to os/os.path/shutil
What it is and what it does
Unipath wraps Python's file and directory functions—normally scattered across os, os.path, and shutil—into a single object-oriented interface centered on Path objects. Instead of calling separate functions like os.path.exists() and os.path.join(), you work with Path instances that bundle these operations as methods. It was designed as a friendlier alternative to Jason Orendorff's path.py and has been in production use since 2008.
The package is stable and well-tested for its era, with support historically claimed for Python 2.6+ and 3.3+. However, it has received no updates since 2015 and is now abandoned. For modern Python projects, built-in alternatives are now standard; Unipath is primarily useful only for legacy codebases or Python 2 environments where you cannot upgrade.
Use it for:
- Maintain legacy Python 2 code that uses Unipath without rewriting path logic to modern APIs.
- Work with file paths in older Python 2.6+ codebases where alternatives are unavailable.
- Provide a unified object-oriented path interface in a frozen legacy application.
- Cross-platform file operations in projects that predate modern standardization.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Unipath provides an object-oriented interface to file and directory operations, wrapping Python's scattered os, os.path, and shutil functions into a unified, path-object API.
No, unless you are maintaining a legacy Python 2 codebase already using Unipath. The package is abandoned (last release 2015-02-11, no commits since 2022-01-11), untested on modern Python, and superseded by maintained alternatives. Starting a new project with Unipath is not recommended.
Install
unipath on PyPI
pip
pip install unipathuv
uv add unipathpoetry
poetry add unipathInstalling Unipath
Before you install
Installation is straightforward with no runtime dependencies. However, the package has been abandoned since 2015 with no updates for many years, so it receives no maintenance or security patches. Use only if you are locked into Python 2 or have a specific legacy codebase dependency.
License in practice
MIT license is permissive and poses no restrictions on commercial or private use, modification, or redistribution. You may use this freely in most projects without licensing concerns.
Quickstart
from unipath import Path
p = Path('example.txt')
if p.exists():
content = p.read_file()
print(content)
Package is abandoned and untested on Python versions released after 2015; compatibility with modern Python versions is unverified despite historical support claims for Python 2.6+ and 3.3+.
Verify before relying
- Whether the package actually works on modern Python 3 versions without modification, given the last release was 2015-02-11.
- Whether Unicode filename handling on Windows (the stated fix in version 1.1) remains reliable across current OS versions.
- Whether built-in pathlib or other maintained alternatives now provide superior functionality for your use case.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 4,202 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 119,111/month — #12,087 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: Unipath-1.1-py2-none-any.whl
Keywords: os.path, filename, pathspec, path, files, directories, filesystem
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
path.pyProvides Path objects that wrap filesystem…
permissive · top 15,000 on PyPI
pathProvides Path objects that wrap filesystem…
permissive · top 5,000 on PyPI
fspathProvides a more intuitive Python API for…
agpl · top 15,000 on PyPI
pathlibProvides object-oriented filesystem path…
permissive · top 5,000 on PyPI
iopathiopath provides a unified interface for reading…
permissive · top 5,000 on PyPI
ftputilftputil provides a high-level FTP client…
permissive · top 15,000 on PyPI
pathlib2Backport of Python's standard pathlib module…
permissive · top 5,000 on PyPI
ubiquergUbiquerg provides a collection of low-level…
permissive · top 15,000 on PyPI
zope.filerepresentationDefines interfaces for representing objects as…
unclear · top 15,000 on PyPI
whichcraftProvides a cross-platform, cross-Python…
permissive · top 15,000 on PyPI