arpy
Library for accessing "ar" files
What it is and what it does
Arpy is a Python library for reading and extracting files from ar archives, the static library format used by Unix build tools and package managers. It supports both GNU and BSD ar variants and exposes archived files through Python's standard file interface, allowing you to open, read, and list archive contents using familiar patterns like context managers and iteration.
The library has no runtime dependencies and works across Python 3.5 through 3.11 (both CPython and PyPy). It's marked Production/Stable and has been maintained since 2010, though the last release was in 2022. The main friction point is that it's distributed as source only, requiring compilation on install.
Use it for:
- Extract object files or libraries from .a static archives in build pipelines.
- Inspect or validate the contents of ar archives without external tools.
- Automate processing of Debian .deb packages (which use ar format internally).
- Parse GNU ar archives in embedded systems or cross-compilation workflows.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Arpy reads and extracts files from ar archives (GNU and BSD formats) using a standard Python file-like interface, supporting both direct access and streaming.
Yes, if you need to work with ar archives in Python and can tolerate source-only installation. The library is stable, actively maintained, has no external dependencies, and fills a niche use case with a clean API. Install friction is the main trade-off; if you have a build environment or prebuilt wheels available, it's a straightforward choice.
Install
arpy on PyPI
pip
pip install arpyuv
uv add arpypoetry
poetry add arpyInstalling arpy
Before you install
High install friction due to source-only distribution (arpy-2.3.0.tar.gz). Package is actively maintained with recent commits (last on 2026-07-01) and marked Production/Stable, but no prebuilt wheels available.
License in practice
Simplified BSD license is permissive; you can use, modify, and distribute arpy freely in commercial and private projects with minimal restrictions.
Quickstart
import arpy
with arpy.Archive('file.ar') as ar:
print(ar.namelist())
with ar.open('content.txt') as f:
print(f.read())
Verify before relying
- Whether the package works reliably with ar archives created by modern toolchains (e.g., recent GNU binutils versions).
- Performance characteristics when handling large or deeply nested ar archives.
Package facts
| License | Simplified BSD (permissive) |
| Python support | not specified |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | actively maintained — 1,525 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 183,316/month — #10,068 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: arpy-2.3.0.tar.gz
Tags
More Archiving packages
Provides Python bindings to the Brotli…
permissive · top 1,000 on PyPI
s3cmds3cmd is a command-line tool for uploading,…
copyleft · top 5,000 on PyPI
zipfile-zstdExtends Python's standard zipfile module to…
permissive · top 5,000 on PyPI
zipfile-deflate64Enables extraction of Deflate64-compressed ZIP…
permissive · top 5,000 on PyPI
unix-arReads and writes AR archive files (Unix static…
permissive · top 5,000 on PyPI
handy-archivesProvides utility functions for working with…
permissive · top 15,000 on PyPI
arParses and reads ar archive files (.a),…
permissive · top 15,000 on PyPI
extractcodeExtracts a wide range of archive formats (tar,…
permissive · top 15,000 on PyPI
libarchive-clibarchive-c provides a Python interface to…
permissive · top 15,000 on PyPI
rarfileReads RAR archive files (RAR3 and RAR5 formats)…
permissive · top 5,000 on PyPI
tzsttzst creates and extracts tar archives…
permissive · top 15,000 on PyPI
kaldi-python-ioReads and writes Kaldi binary archives,…
permissive · top 15,000 on PyPI
waybackpyWaybackpy provides Python and CLI access to the…
permissive · top 5,000 on PyPI
pyunpackUnpacks archive files in Python with support…
permissive · top 15,000 on PyPI
patoolPatool is a command-line archive manager that…
copyleft · top 5,000 on PyPI