Skip to content

Releases: hanul93/pycabfile

1.0.0

21 Jun 06:37

Choose a tag to compare

🎉 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 with statements for automatic resource management

🚀 Quick Start

Installation

pip install pycabfile

Basic 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