Skip to content

1.3.0

Latest

Choose a tag to compare

@xinitd xinitd released this 09 Apr 18:05
d0107e3

v1.3.0 - Forensic Toolkit & Core Enhancements

This is the biggest release yet. Hypoxia now generates forensic manifests with SHA-256 hashing, maintains a chain-of-custody log for every action, and can resume interrupted collections from exactly where they stopped - no wasted time, no duplicates, no data loss.

Project Structure

  • Package Restructure: Reorganized the project from flat files into a proper Python package layout (hypoxia/ with __init__.py, __main__.py, cli.py, utils.py, colors.py, forensic.py). Both ./hypoxia.py and python -m hypoxia are supported.

CI/CD

  • GitHub Actions CI: Added a workflow that runs on every push and PR, verifying both entry points (./hypoxia.py --help and python -m hypoxia --help) across Python 3.11, 3.12, and 3.13.

New Features

  • Forensic Manifest: Every collection task now auto-generates a manifest.json containing SHA-256 hash, original path, destination path, file size, modification timestamp, copy timestamp, and an overall manifest checksum for integrity verification.
  • --hash Flag: Choose your hashing algorithm (sha256, sha512, md5) or disable hashing entirely with --hash none for maximum speed.
  • Chain of Custody Log: Append-only forensic.log with timestamped entries for every action — file copied, file skipped (with reason), errors, session start/end, and a summary. Every write is flushed immediately to survive crashes.
  • Checkpoint/Resume (--resume): If Hypoxia crashes, loses power, or the media dies mid-task, feed the forensic log back with --resume <log_file>. Hypoxia continues from exactly where it stopped, verifying previously copied files by path and hash. Unlike rsync, which re-scans the entire tree, Hypoxia jumps straight to the last unfinished file.
  • --exclude Flag: Exclude directories from scan by name (e.g., --exclude "windows,program files,.git"). Matching is case-insensitive and works at any depth.
  • --zip Flag: Compress the output folder into a .zip archive after collection is complete. The archive includes the forensic manifest and log.

Documentation

  • Updated README: Added all new features to Key Features, Use Cases, and Command-Line Options table. Updated the terminal screenshot. Improved image alt text for search engine discoverability.
  • CI Badge: Added a CI status badge to the README header.

Full Changelog: v1.2.2...v1.3.0
terminal