s3path
Decision gist · record as of 2026-08-14
Yes, if you work regularly with S3 and prefer pathlib's ergonomics over boto3's API. Install friction is low, dependencies are stable, and the license is permissive. The aging maintenance status and infrequent releases are a minor concern but not a blocker—the package is stable and actively maintained. No security vulnerabilities are known.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires AWS credentials configured (via environment variables, IAM role, or AWS config file) so boto3 can authenticate to S3.
- Low friction: pure Python wheel with only two runtime dependencies (boto3 and smart-open).
- Maintenance is aging—last release was 202 days ago—but the repo is active and not archived, with a recent commit on 2026-01-24.
License · maintenance · safety
Apache 2.0 (permissive) — Apache 2.0 is permissive; you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
last release 2026-01-24 (202 days) · last repo commit 2026-01-24 · 231 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 2,949,485 downloads/mo, #2,809 on PyPI
Alternatives
Verify before relying
from s3path import S3Path
bucket_path = S3Path('/my-bucket/')
for item in bucket_path.iterdir():
print(item)- Performance characteristics when working with very large S3 buckets or deeply nested key hierarchies.
- Whether all pathlib methods are fully implemented or if some operations have S3-specific limitations.
What it is and what it does
S3Path wraps boto3's S3 resource with a pathlib-compatible API, so you can treat S3 buckets and keys like a local filesystem. Instead of learning boto3's object-oriented methods (put_object, list_objects, etc.), you use familiar pathlib patterns: iterdir() to list contents, glob() to find matching keys, the / operator to navigate paths, and open() to read or write objects. It also supports versioned S3 objects through a VersionedS3Path subclass.
The package depends on boto3 for AWS communication and smart-open for file-like access to S3 objects. It supports modern Python versions (3.9–3.13) and is classified as Beta. The maintainer has kept it active, though releases are infrequent; no known security vulnerabilities are recorded.
Use it for
- List and navigate S3 bucket contents using pathlib-style iteration and path operations instead of boto3 API calls.
- Batch process files in S3 using glob patterns to find matching keys across nested prefixes.
- Read or write S3 objects via context managers (with open()) as if they were local files.
- Work with versioned S3 buckets by tracking and accessing specific object versions.
- Migrate local filesystem code to S3 with minimal refactoring by swapping pathlib.Path for S3Path.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you work regularly with S3 and prefer pathlib's ergonomics over boto3's API.
Install friction is low, dependencies are stable, and the license is permissive. The aging maintenance status and infrequent releases are a minor concern but not a blocker—the package is stable and actively maintained. No security vulnerabilities are known.
Install
s3path on PyPI
Before you install
Low friction: pure Python wheel with only two runtime dependencies (boto3 and smart-open). Maintenance is aging—last release was 202 days ago—but the repo is active and not archived, with a recent commit on 2026-01-24.
Requires AWS credentials configured (via environment variables, IAM role, or AWS config file) so boto3 can authenticate to S3.
License in practice
Apache 2.0 is permissive; you can use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.
Quickstart
from s3path import S3Path
bucket_path = S3Path('/my-bucket/')
for item in bucket_path.iterdir():
print(item)
Verify before relying
- Performance characteristics when working with very large S3 buckets or deeply nested key hierarchies.
- Whether all pathlib methods are fully implemented or if some operations have S3-specific limitations.
Package facts
| License | Apache 2.0 permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesboto3smart-open |
| Maintenance | Aging 202 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 2,949,485 / month, #2,809 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9 |
Evidence: s3path-0.6.5-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “aws s3 file operations”
- s3pathS3Path provides a pathlib-like interface for working with AWS S3…
- aioboto3Provides async/await support for AWS SDK operations, wrapping boto3…
- s3transfers3transfer manages concurrent uploads and downloads to Amazon S3,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also cloudpathlib · s3pathlib · synapse-s3-storage-provider · s3fs · s3urls · universal-pathlib · fs-s3fs · tentaclio · pathy · aws-s3-access-grants-boto3-plugin