Skip to content

HEICShift v2.5.0

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 17 Mar 20:47

What's New

CLI Mode

Run HEICShift from the command line for scripted or headless operation. If --input is provided, the GUI is skipped entirely.

python heicshift.py --input ./photos --format jpeg --quality 85
python heicshift.py --input ./photos --dry-run
python heicshift.py --version

Flags: --input, --output, --format, --quality, --workers, --in-place, --recursive/--no-recursive, --dry-run, --strip-metadata, --resize max_dim:1920, --version

Exit codes: 0 (all OK), 1 (partial failure), 2 (total failure / bad input)

Safety & Diagnostics

  • Disk space pre-check — blocks conversion if estimated output exceeds available space, warns at 80%
  • Resize upscaling guard — warns when image is already smaller than the resize target instead of silently skipping
  • Better error logging — new [WARN] log lines for sRGB conversion failures, RAW metadata absence, and resize skips
  • Dependency version logging — startup log now shows Pillow, pillow-heif, PyQt6, and optional dependency versions
  • Stats color reset — stat label colors (skipped/failed/saved) now reset to green on new batch start

UX Polish

  • File count in title bar — shows file count after scan, progress during conversion, summary when done
  • Auto-open output folder — new checkbox to automatically open the output folder when conversion finishes
  • Strip metadata — new option to remove all EXIF/ICC/XMP from output files (mutually exclusive with preserve)