Small fixes, 2.2.1

This commit is contained in:
Aaron D. Lee
2025-12-30 23:40:39 -05:00
parent 50a7b10c63
commit e4a4a5e074
4 changed files with 6 additions and 84 deletions

4
.gitignore vendored
View File

@@ -57,3 +57,7 @@ htmlcov/
# Output test files.
test_data/*.png
#Project root scripts.
rbld_containers.sh
quick_web.sh

View File

@@ -1,82 +0,0 @@
# Changelog
All notable changes to Stegasoo will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [2.2.0] - 2025-12-30
### Added
- **Compression Module** (`stegasoo.compression`)
- Zlib compression for payloads (enabled by default)
- Optional LZ4 support for faster compression (`pip install lz4`)
- Automatic algorithm detection on decompression
- `--compress/--no-compress` CLI flags
- `--algorithm` flag to choose compression method
- `estimate_compressed_size()` for capacity planning
- **Batch Processing** (`stegasoo.batch`)
- `stegasoo batch encode` - encode message into multiple images
- `stegasoo batch decode` - decode from multiple images
- `stegasoo batch check` - check capacity of multiple images
- Parallel processing with configurable workers (`-j/--jobs`)
- Recursive directory scanning (`-r/--recursive`)
- Progress callbacks for UI integration
- JSON output for all batch operations
- **CLI Improvements**
- `--json` global flag for machine-readable output
- `--dry-run` flag for encode (preview capacity usage)
- `stegasoo info` command to show version and features
- JSON output for `generate` command
- **New Constants**
- `MIN_COMPRESS_SIZE` - minimum size to attempt compression
- `ZLIB_COMPRESSION_LEVEL` - compression level setting
- `BATCH_DEFAULT_WORKERS` - default parallel workers
- `BATCH_MAX_WORKERS` - maximum parallel workers
### Changed
- Version bumped to 2.2.0
- Payloads are now compressed by default before encryption
- Updated `pyproject.toml` with `compression` optional dependency group
### Dependencies
- Added optional dependency: `lz4>=4.0.0` (in `[compression]` extra)
## [2.1.4] - 2025-12-29
### Changed
- Centralized all configuration values to `constants.py`
- Added version injection to Flask templates via context processor
- Synchronized version across `constants.py` and `pyproject.toml`
## [2.1.3] - 2025-12-28
### Added
- Initial public release
- Core steganography encoding/decoding
- Hybrid authentication (passphrase + PIN)
- RSA key support
- QR code credential sharing
- CLI interface
- REST API (FastAPI)
- Web frontend (Flask)
- File payload embedding
- Temporary file auto-expiry
---
## Version History Summary
| Version | Date | Highlights |
|---------|------|------------|
| 2.2.0 | 2025-12-30 | Batch processing, compression |
| 2.1.4 | 2025-12-29 | Constants centralization |
| 2.1.3 | 2025-12-28 | Initial release |

View File

@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
[project]
name = "stegasoo"
version = "2.2.0"
version = "2.2.1"
description = "Secure steganography with hybrid photo + passphrase + PIN authentication"
readme = "README.md"
license = "MIT"

View File

@@ -170,7 +170,7 @@ from .utils import (
from .debug import debug # Import debug utilities
# =============================================================================
# NEW IN v2.2.0 - Compression
# Compression
# =============================================================================
from .compression import (
compress,