Skip to main content
Version: 1.7.0

Upload: Stream Uploads with Safe Thumbnail Generation

Version: 1.7.0 Date: 2026-07-15

Goal: Fix broken file uploads caused by parallel busboy pipe consumption and reduce memory use when generating thumbnails.

Solution: Single-pass stream for hash computation, storage upload, and thumbnail generation. Verify client hash after all multipart fields are received. Stream through sharp instead of buffering entire files.

Features:

  • Reliable multipart upload for IP Magic Box and other clients
  • Lower memory footprint on large files
  • Correct hash verification order (after all fields received)

Implementation Details:

  • Rewritten pipeline in upload.js — no parallel pipe() on the same busboy stream
  • Sharp receives a stream rather than an in-memory buffer

Files Modified:

  • app/services/upload.js - Upload pipeline rewrite