Enhance documentation for tzst library

- Updated the introduction to provide a clearer overview of tzst's capabilities and features.
- Expanded the Key Features section with detailed descriptions and icons for better readability.
- Improved the Quick Example section to include both command line and Python API usage.
- Added installation options with detailed steps for PyPI, standalone binaries, and source installation.
- Enhanced the Quick Start Guide with structured installation methods and basic usage examples.
- Introduced advanced features like security filters, conflict resolution, and performance optimization.
- Provided comprehensive error handling and common patterns for backup scripts and archive verification.
- Updated the requirements and reference links for better navigation.
This commit is contained in:
xixu-me committed 2025-06-06 17:31:08 +08:00
1 parent d0e09347eb
commit ef5d06cb0e
7 files changed
+1985 -642

No files matched your search

+67 -6
View File
@@ -1,6 +1,6 @@
# API Reference
This section contains the complete API documentation for tzst.
This section contains the complete API documentation for tzst, providing detailed information about classes, functions, and exceptions.
```{toctree}
:maxdepth: 2
@@ -12,13 +12,22 @@ exceptions
## Overview
The tzst library provides both high-level convenience functions and a comprehensive class-based API for working with `.tzst`/`.tar.zst` archives.
The tzst library provides both high-level convenience functions and a comprehensive class-based API for working with `.tzst`/`.tar.zst` archives. The library is designed with security, performance, and ease of use in mind.
### Main Components
- **{doc}`core`**: Core functionality including `TzstArchive` class and convenience functions
- **{doc}`cli`**: Command-line interface functions and utilities
- **{doc}`exceptions`**: Custom exception classes for error handling
- **{doc}`core`**: Core functionality including `TzstArchive` class and convenience functions for archive operations
- **{doc}`cli`**: Command-line interface functions and utilities for batch operations
- **{doc}`exceptions`**: Custom exception classes for comprehensive error handling and debugging
### Architecture Overview
The tzst library follows a layered architecture:
1. **High-Level API**: Convenience functions for common operations
2. **Class-Based API**: `TzstArchive` class for advanced control
3. **CLI Interface**: Command-line tools for interactive and scripted use
4. **Exception System**: Comprehensive error handling for robust applications
### Quick Reference
@@ -33,6 +42,8 @@ The tzst library provides both high-level convenience functions and a comprehens
TzstArchive
```
The main class for archive manipulation with context manager support and comprehensive functionality.
#### Convenience Functions
```{eval-rst}
@@ -45,7 +56,26 @@ The tzst library provides both high-level convenience functions and a comprehens
test_archive
```
#### Exceptions
High-level functions that provide simple interfaces for common archive operations.
#### CLI Functions
```{eval-rst}
.. currentmodule:: tzst.cli
.. autosummary::
:nosignatures:
main
create_parser
print_banner
format_size
validate_compression_level
```
Command-line interface utilities for interactive and batch operations.
#### Exception Classes
```{eval-rst}
.. currentmodule:: tzst.exceptions
@@ -53,6 +83,37 @@ The tzst library provides both high-level convenience functions and a comprehens
.. autosummary::
:nosignatures:
TzstError
TzstArchiveError
TzstCompressionError
TzstDecompressionError
```
Exception hierarchy for comprehensive error handling and debugging support.
## Key Features
### 🛡️ Security First
- Built-in path traversal protection
- Multiple security filter options
- Safe extraction by default
### ⚡ High Performance
- Zstandard compression with configurable levels
- Streaming support for large archives
- Memory-efficient operations
### 🔧 Developer Friendly
- Clean, Pythonic API
- Comprehensive error handling
- Context manager support
- Extensive documentation and examples
### 🌐 Cross-Platform
- Works on Windows, macOS, and Linux
- Consistent behavior across platforms
- Native performance optimizations