Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Multipart Upload Bundle Laravel Package

goetas/multipart-upload-bundle

A Symfony bundle for handling chunked, multipart file uploads, letting you stream large files to Amazon S3 using its multipart upload API while integrating with OneupUploaderBundle for resumable, reliable uploads.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for large-file upload — Still the most useful artifact: a readable reference implementation of chunked-upload semantics (client splits, server reassembles, handler validates and persists). Release 1.6.0 does not change the scope of that reference; it only refreshes framework compatibility. Use it to enumerate our own requirements — chunk size, retry, checksum/ETag validation, temp-storage cleanup, orphaned-chunk GC — before committing engineering time.
  • Roadmap prioritization — Chunked/resumable upload remains a reliability feature, not a differentiator. The framing question is unchanged: "is upload resilience a must-have for this release, or a nice-to-have scheduled behind a storage migration?"
  • Architecture direction: protocol vs. framework coupling — 1.6.0 is a pure compatibility release (Symfony 8 support), which reinforces the point: this bundle's roadmap is driven by Symfony's release calendar, not by upload-protocol evolution. That is precisely why we should adopt a protocol (tus.io, S3 pre-signed multipart) and let the framework catch up on its own schedule.
  • Storage strategy — Unchanged. The bundle presupposes server-side reassembly, the more expensive option at scale. Neither 1.6.0 PR touches the reassembly path, so the infra cost and failure-model trade-off against S3 multipart stands exactly as assessed.
  • Ecosystem due diligence as a gate — 1.6.0 is a small but genuine positive signal: two merged PRs from a named contributor, versioned, with a linked changelog and compare URL. That moves the package from "possibly stale" toward "lightly maintained by one or two people." It does not move it past the threshold that routes a candidate to spike/reference rather than production dependency — adoption signals (21 stars, zero dependents) are unchanged.

When to Consider This Package

Adopt only if all of the following hold:

  • The application is Symfony, not Laravel. This is a Symfony bundle (service wiring, DI configuration, bundle registration). There is no Laravel service provider; bridging it manually erases most of the value.
  • You are on, or moving to, Symfony 8 — 1.6.0 is the minimum viable version for that upgrade path. Pin to ^1.6 and drop 1.5.x, which will not resolve against Symfony 8 constraints.
  • You already depend on it and it works — a working legacy integration at modest file volumes is a legitimate reason not to migrate.
  • You want a small, readable codebase to study reassembly and validation patterns.

Look elsewhere if:

  • You're on Laravel. Use pion/laravel-chunk-upload, Livewire/Inertia file uploads, or Spatie's media tooling. 1.6.0 changes nothing here — a Symfony 8 constraint bump provides zero value to a Laravel codebase.
  • You need cloud-native resumability. S3 pre-signed multipart uploads or a tus server (tus-php, laravel-tus) eliminate server-side reassembly and scale without app-server disk.
  • Maintenance risk is unacceptable. The 1.6.0 changelog confirms real, reviewed activity — better than the prior read — but a two-PR compatibility patch is not the same as a maintained library. Still near-zero dependents, so no community answers, no downstream bug reports, and no external pressure on security response. Corroborate version and release date on Packagist directly before citing either; the earlier metadata anomaly is now partially resolved, not fully cleared.
  • You need SLAs, docs, or support for an enterprise or compliance-sensitive surface.

How to Pitch It (Stakeholders)

To executives: Our recommendation is unchanged, and the new release is evidence for it rather than against. Version 1.6.0 is a maintenance patch that adds Symfony 8 compatibility — nothing about how uploads are handled changed. The package still targets Symfony, we're on Laravel, and its adoption signals (21 stars, zero dependents) mean we'd be the only ones finding its bugs. Treat it as research input, not a purchase. The decision it informs is real and worth funding: how we handle large and resumable uploads. Recommendation: standardize on a protocol-level approach (tus or S3 multipart) so upload reliability is not coupled to any single framework's release calendar.

To engineering: No change to the recommended action — a half-day spike to read the reassembly and cleanup logic, then delete it. If anyone is already vendoring this, 1.6.0 is a safe, non-breaking constraint bump required for Symfony 8; that is an upgrade-hygiene task, not a strategic investment. The spike output remains a requirements list for our own implementation — chunk sizing, integrity verification, partial-upload garbage collection, retry semantics — plus a short comparison against pion/laravel-chunk-upload and S3 multipart. Success still looks like a one-page decision doc and a ticket, not a dependency in composer.json.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource