Releases: hanul93/pycabfile
Releases · hanul93/pycabfile
1.0.0
🎉 pycabfile v1.0.0 - Initial Release
We're excited to announce the first stable release of pycabfile, a Python library for handling Microsoft Cabinet files with a zipfile-compatible interface!
✨ Key Features
- 🔄 zipfile-compatible API - Drop-in replacement for Python's zipfile module when working with CAB files
- 📦 Create and extract CAB files - Full support for reading and writing Microsoft Cabinet files
- 🐍 Pure Python implementation - No external dependencies required
- 🚀 Python 3.10+ support - Compatible with modern Python versions
- 📁 Unicode filename support - Handle international filenames correctly
- 🔧 Context manager support - Use with
withstatements for automatic resource management
🚀 Quick Start
Installation
pip install pycabfileBasic Usage
from pycabfile import CabFile
# Create a CAB file
with CabFile('example.cab', 'w') as cab:
cab.write('document.txt')
cab.writestr('readme.txt', 'Hello World!')
# Read a CAB file
with CabFile('example.cab', 'r') as cab:
files = cab.namelist()
content = cab.read('readme.txt')
cab.extractall('output/')📋 What's Included
- Core Library (
pycabfile/) - Main implementation with zipfile-compatible interface - Comprehensive Tests - Full test suite ensuring reliability
- Documentation - Complete README with examples and API reference
- Example Code - Practical usage examples
🔧 API Compatibility
This library provides the same interface as Python's zipfile.ZipFile:
| zipfile | pycabfile |
|---|---|
ZipFile('file.zip', 'w') |
CabFile('file.cab', 'w') |
zf.write('file.txt') |
cf.write('file.txt') |
zf.read('name') |
cf.read('name') |
zf.extractall() |
cf.extractall() |
🎯 Use Cases
Perfect for:
- Working with legacy CAB archives
- Cross-platform CAB file handling
- Integration with existing zipfile-based code
- Automated CAB file processing
📊 Technical Specifications
- Python Version: 3.10+
- Dependencies: None (pure Python)
- CAB Format: Microsoft Cabinet File Format compatible
- File Size: Supports standard CAB file limitations
- Compression: CAB_STORED and CAB_COMPRESSED modes
🤝 Contributing
We welcome contributions! Please see our repository for:
- Bug reports and feature requests
- Code contributions
- Documentation improvements
- Test cases
📄 License
MIT License - see LICENSE file for details.
🙏 Acknowledgments
Thanks to the Python community for the inspiration from the zipfile module design.
Full Changelog: Initial release - no previous versions to compare
Download: Available on PyPI: pip install pycabfile