Zip Format Build Issues
Symptoms
- The build finishes but the archive cannot be extracted
- ZipArchive reports
Zip error: Read error (truncated content) - Archive verification fails
Causes and fixes
1. Archive corrupt because the disk was full
The build was cut off midway because the disk ran out of space. Compare the archive size with the scanner's estimate - if it is much smaller, it was cut off.
Fix: free up disk space → build again.
2. PHP ZipArchive size limit
Native PHP ZipArchive has a 2-4 GB limit on some builds. An archive over the limit gets corrupted.
Fix: switch the engine to DupArchive in Settings → Package → Archive Engine. DupArchive supports unlimited size.
3. File path too long
Some filesystems limit path length (usually 255 characters, lower in some configurations). A longer path → a bad archive entry.
Fix: find and rename or move the files with overly long paths.
4. File names with non-UTF8 characters
A file whose name contains non-UTF-8 characters → the archive entry is corrupted when extracted on another system.
Fix: rename the file to ASCII or valid UTF-8.
5. Filesystem case sensitivity
Building on Linux (case-sensitive) → restoring to macOS or Windows (case-insensitive) can cause collisions: Image.jpg vs image.jpg.
Fix: audit and rename duplicate files before backing up.
Verify the archive after building
In SL Migrations → Packages, click the package you just built → choose Verify. The plugin checks the archive's integrity and reports any errors.