High-level bindings for the Rust tar crate
Project Links
Meta
Author: Jonathan Ehwald
Requires Python: >=3.8
Classifiers
Intended Audience
- Developers
License
- OSI Approved :: MIT License
Operating System
- OS Independent
Programming Language
- Rust
- Python
- Python :: 3
- Python :: 3.8
- Python :: 3.9
- Python :: 3.10
- Python :: 3.11
- Python :: 3.12
- Python :: 3.13
- Python :: 3.14
- Python :: Implementation :: CPython
- Python :: Implementation :: PyPy
Topic
- Software Development :: Libraries
- Software Development :: Libraries :: Python Modules
Typing
- Typed
Fastar
The fastar library wraps the Rust tar, flate2, and zstd crates, providing a high-performance way to work with compressed and uncompressed tar archives in Python.
Installation
pip install fastar
Usage
This section shows basic examples of how to create and extract tar archives using Fastar. For more usage examples, please refer directly to the test cases in the tests directory.
import fastar
from pathlib import Path
input_file = Path("file.txt")
input_file.write_text("Hello, Fastar!")
with fastar.open("archive.tar", "w") as archive:
archive.append(input_file)
with fastar.open("archive.tar", "r") as archive:
archive.unpack("output/")
unpacked_file = Path("output/file.txt")
print(unpacked_file.read_text()) # Hello, Fastar!
Opening Modes
The fastar.open method supports the following modes:
| Mode | Action | Compression |
|---|---|---|
"w" |
Write | None |
"w:gz" |
Write | Gzip |
"w:zst" |
Write | Zstandard |
"r" |
Read | Automatically detected |
"r:" |
Read | None |
"r:gz" |
Read | Gzip |
"r:zst" |
Read | Zstandard |
Development
- Install dependencies into a virtual env:
uv sync - Make changes to the code and tests
- Build the package:
uv run maturin develop - Run the tests:
uv run pytest
0.9.0
Mar 20, 2026
0.8.0
Nov 26, 2025
0.7.0
Nov 24, 2025
0.6.0
Nov 18, 2025
0.5.0
Nov 14, 2025
0.4.0
Nov 13, 2025
0.3.0
Nov 13, 2025
0.2.0
Nov 06, 2025
0.1.0
Oct 19, 2025
Wheel compatibility matrix
Files in release
fastar-0.9.0-cp310-cp310-macosx_10_12_x86_64.whl (692.5KiB)
fastar-0.9.0-cp310-cp310-macosx_11_0_arm64.whl (615.5KiB)
fastar-0.9.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl (849.2KiB)
fastar-0.9.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (744.5KiB)
fastar-0.9.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (741.8KiB)
fastar-0.9.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (904.2KiB)
fastar-0.9.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (799.7KiB)
fastar-0.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (802.7KiB)
fastar-0.9.0-cp310-cp310-manylinux_2_31_riscv64.whl (865.8KiB)
fastar-0.9.0-cp310-cp310-musllinux_1_2_aarch64.whl (947.5KiB)
fastar-0.9.0-cp310-cp310-musllinux_1_2_armv7l.whl (1012.6KiB)
fastar-0.9.0-cp310-cp310-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp310-cp310-musllinux_1_2_x86_64.whl (1005.2KiB)
fastar-0.9.0-cp310-cp310-win32.whl (443.9KiB)
fastar-0.9.0-cp310-cp310-win_amd64.whl (475.1KiB)
fastar-0.9.0-cp311-cp311-macosx_10_12_x86_64.whl (692.2KiB)
fastar-0.9.0-cp311-cp311-macosx_11_0_arm64.whl (615.0KiB)
fastar-0.9.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.whl (849.2KiB)
fastar-0.9.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (744.2KiB)
fastar-0.9.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (741.8KiB)
fastar-0.9.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (904.5KiB)
fastar-0.9.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (799.6KiB)
fastar-0.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (803.1KiB)
fastar-0.9.0-cp311-cp311-manylinux_2_31_riscv64.whl (865.8KiB)
fastar-0.9.0-cp311-cp311-musllinux_1_2_aarch64.whl (947.3KiB)
fastar-0.9.0-cp311-cp311-musllinux_1_2_armv7l.whl (1012.4KiB)
fastar-0.9.0-cp311-cp311-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp311-cp311-musllinux_1_2_x86_64.whl (1005.1KiB)
fastar-0.9.0-cp311-cp311-win32.whl (444.0KiB)
fastar-0.9.0-cp311-cp311-win_amd64.whl (475.4KiB)
fastar-0.9.0-cp311-cp311-win_arm64.whl (452.7KiB)
fastar-0.9.0-cp312-cp312-macosx_10_12_x86_64.whl (690.3KiB)
fastar-0.9.0-cp312-cp312-macosx_11_0_arm64.whl (612.7KiB)
fastar-0.9.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.whl (845.0KiB)
fastar-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (742.8KiB)
fastar-0.9.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (740.2KiB)
fastar-0.9.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (902.0KiB)
fastar-0.9.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (797.4KiB)
fastar-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (799.9KiB)
fastar-0.9.0-cp312-cp312-manylinux_2_31_riscv64.whl (864.5KiB)
fastar-0.9.0-cp312-cp312-musllinux_1_2_aarch64.whl (945.4KiB)
fastar-0.9.0-cp312-cp312-musllinux_1_2_armv7l.whl (1010.7KiB)
fastar-0.9.0-cp312-cp312-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl (1001.3KiB)
fastar-0.9.0-cp312-cp312-win32.whl (442.1KiB)
fastar-0.9.0-cp312-cp312-win_amd64.whl (473.9KiB)
fastar-0.9.0-cp312-cp312-win_arm64.whl (451.0KiB)
fastar-0.9.0-cp313-cp313-macosx_10_12_x86_64.whl (690.2KiB)
fastar-0.9.0-cp313-cp313-macosx_11_0_arm64.whl (612.9KiB)
fastar-0.9.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.whl (844.3KiB)
fastar-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (742.4KiB)
fastar-0.9.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (739.3KiB)
fastar-0.9.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (900.0KiB)
fastar-0.9.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (796.7KiB)
fastar-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (799.8KiB)
fastar-0.9.0-cp313-cp313-manylinux_2_31_riscv64.whl (863.8KiB)
fastar-0.9.0-cp313-cp313-musllinux_1_2_aarch64.whl (945.1KiB)
fastar-0.9.0-cp313-cp313-musllinux_1_2_armv7l.whl (1009.7KiB)
fastar-0.9.0-cp313-cp313-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl (1001.7KiB)
fastar-0.9.0-cp313-cp313-win32.whl (442.1KiB)
fastar-0.9.0-cp313-cp313-win_amd64.whl (473.6KiB)
fastar-0.9.0-cp313-cp313-win_arm64.whl (450.4KiB)
fastar-0.9.0-cp314-cp314-macosx_10_12_x86_64.whl (690.5KiB)
fastar-0.9.0-cp314-cp314-macosx_11_0_arm64.whl (612.4KiB)
fastar-0.9.0-cp314-cp314-manylinux_2_12_i686.manylinux2010_i686.whl (844.7KiB)
fastar-0.9.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (742.4KiB)
fastar-0.9.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (739.8KiB)
fastar-0.9.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (903.2KiB)
fastar-0.9.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl (797.4KiB)
fastar-0.9.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (799.5KiB)
fastar-0.9.0-cp314-cp314-manylinux_2_31_riscv64.whl (864.3KiB)
fastar-0.9.0-cp314-cp314-musllinux_1_2_aarch64.whl (945.3KiB)
fastar-0.9.0-cp314-cp314-musllinux_1_2_armv7l.whl (1010.3KiB)
fastar-0.9.0-cp314-cp314-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp314-cp314-musllinux_1_2_x86_64.whl (1001.2KiB)
fastar-0.9.0-cp314-cp314-win32.whl (441.7KiB)
fastar-0.9.0-cp314-cp314-win_amd64.whl (473.6KiB)
fastar-0.9.0-cp314-cp314-win_arm64.whl (450.4KiB)
fastar-0.9.0-cp314-cp314t-macosx_10_12_x86_64.whl (689.3KiB)
fastar-0.9.0-cp314-cp314t-macosx_11_0_arm64.whl (611.5KiB)
fastar-0.9.0-cp314-cp314t-manylinux_2_12_i686.manylinux2010_i686.whl (844.6KiB)
fastar-0.9.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (741.3KiB)
fastar-0.9.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (738.8KiB)
fastar-0.9.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (900.2KiB)
fastar-0.9.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl (796.4KiB)
fastar-0.9.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (800.0KiB)
fastar-0.9.0-cp314-cp314t-manylinux_2_31_riscv64.whl (862.9KiB)
fastar-0.9.0-cp314-cp314t-musllinux_1_2_aarch64.whl (943.6KiB)
fastar-0.9.0-cp314-cp314t-musllinux_1_2_armv7l.whl (1009.0KiB)
fastar-0.9.0-cp314-cp314t-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp314-cp314t-musllinux_1_2_x86_64.whl (1001.1KiB)
fastar-0.9.0-cp314-cp314t-win32.whl (441.7KiB)
fastar-0.9.0-cp314-cp314t-win_amd64.whl (472.7KiB)
fastar-0.9.0-cp314-cp314t-win_arm64.whl (449.8KiB)
fastar-0.9.0-cp38-cp38-macosx_10_12_x86_64.whl (694.9KiB)
fastar-0.9.0-cp38-cp38-macosx_11_0_arm64.whl (619.0KiB)
fastar-0.9.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl (852.2KiB)
fastar-0.9.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (746.8KiB)
fastar-0.9.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (745.5KiB)
fastar-0.9.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (907.5KiB)
fastar-0.9.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (802.0KiB)
fastar-0.9.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (805.0KiB)
fastar-0.9.0-cp38-cp38-manylinux_2_31_riscv64.whl (868.3KiB)
fastar-0.9.0-cp38-cp38-musllinux_1_2_aarch64.whl (950.0KiB)
fastar-0.9.0-cp38-cp38-musllinux_1_2_armv7l.whl (1014.8KiB)
fastar-0.9.0-cp38-cp38-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp38-cp38-musllinux_1_2_x86_64.whl (1008.0KiB)
fastar-0.9.0-cp38-cp38-win32.whl (446.0KiB)
fastar-0.9.0-cp38-cp38-win_amd64.whl (477.3KiB)
fastar-0.9.0-cp39-cp39-macosx_10_12_x86_64.whl (694.8KiB)
fastar-0.9.0-cp39-cp39-macosx_11_0_arm64.whl (619.3KiB)
fastar-0.9.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl (852.2KiB)
fastar-0.9.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (746.4KiB)
fastar-0.9.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (745.9KiB)
fastar-0.9.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (906.5KiB)
fastar-0.9.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (801.1KiB)
fastar-0.9.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (804.8KiB)
fastar-0.9.0-cp39-cp39-manylinux_2_31_riscv64.whl (868.0KiB)
fastar-0.9.0-cp39-cp39-musllinux_1_2_aarch64.whl (949.5KiB)
fastar-0.9.0-cp39-cp39-musllinux_1_2_armv7l.whl (1014.9KiB)
fastar-0.9.0-cp39-cp39-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-cp39-cp39-musllinux_1_2_x86_64.whl (1007.9KiB)
fastar-0.9.0-cp39-cp39-win32.whl (445.8KiB)
fastar-0.9.0-cp39-cp39-win_amd64.whl (477.3KiB)
fastar-0.9.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl (694.1KiB)
fastar-0.9.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl (618.2KiB)
fastar-0.9.0-pp311-pypy311_pp73-manylinux_2_12_i686.manylinux2010_i686.whl (850.8KiB)
fastar-0.9.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (746.0KiB)
fastar-0.9.0-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (745.0KiB)
fastar-0.9.0-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (905.3KiB)
fastar-0.9.0-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (802.0KiB)
fastar-0.9.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (804.7KiB)
fastar-0.9.0-pp311-pypy311_pp73-manylinux_2_31_riscv64.whl (868.1KiB)
fastar-0.9.0-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl (949.7KiB)
fastar-0.9.0-pp311-pypy311_pp73-musllinux_1_2_armv7l.whl (1014.8KiB)
fastar-0.9.0-pp311-pypy311_pp73-musllinux_1_2_i686.whl (1.0MiB)
fastar-0.9.0-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl (1007.1KiB)
fastar-0.9.0.tar.gz (68.5KiB)
No dependencies