Skip to content

b0.0.3 - beta

Choose a tag to compare

@YadeWira YadeWira released this 16 Mar 23:25
· 4 commits to main since this release

SYC v0.0.3 — Changelog (fixes only)

Bug Fixes

Bug Description Fix
Tar extraction on Windows (critical) _arcname() used os.path.relpath() which returns backslashes on Windows. tarfile stored paths like folder\file.png and only extracted the last file correctly — 25 files in → 1 file out _arcname() now calls .replace("\\", "/") to always use forward slashes
AES256 / ChaCha20 extract fails In normal (non-tar) mode, write() called _serialize_index() which stored plain compressed data, but _parse_index_stream() tried to decrypt() it — causing decryption failure on every read write() now encrypts each entry's data individually when FLAG_ENC is set, and stores the encrypted size
list encrypted exit 1 Same root cause as above — l command failed reading encrypted normal archives Fixed by the encryption write fix above
-f exact match fails -f "nato_simple.json" failed to match entries stored as nato/nato_simple.json — only full path comparison was done _matches_filter() now also compares against the basename when the filter contains no /
-ff exact match fails Same root cause as -f exact match Same fix
Multiple -f fails Same root cause as -f exact match Same fix
Multi-part normal extract crashes from recovery import find_rr_files, check_and_recover imported a module that was never implemented, causing ModuleNotFoundError on every multi-part extraction Removed the recovery import block entirely (feature planned for future release)
Multi-part tar extract also affected Same recovery import also present in tar multi-part path Removed
Round-trip count mismatch in test test.bat used dir /b (non-recursive) for input count but dir /b /s (recursive) for output count — directories were counted as files Fixed both to use dir /b /s /a-d (excludes directories)