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

Larke Pclzip Laravel Package

lake/larke-pclzip

Laravel wrapper for the PclZip library, enabling PHP applications to create, extract, and inspect ZIP archives without requiring the ZipArchive extension. Provides a simple API for handling zip files within Laravel projects.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: This appears to be a Laravel/PHP wrapper around PclZip, a pure-PHP ZIP compression/decompression library. It fits only narrow cases: environments where ext-zip is unavailable, shared hosting with restricted native extensions, or isolated legacy compatibility. It is not a good fit for high-volume archive pipelines, streaming workloads, encrypted archives, or extraction of untrusted uploads without additional hardening. If the application already uses ZipArchive, this package adds little architectural value.

Integration feasibility: Composer-based installation is likely straightforward, but the package has zero stars, zero dependents, and no visible community validation. Before adoption, inspect composer.json for PHP/Laravel constraints, autoloading, service provider/facade registration, and whether it uses Laravel filesystem abstractions or local paths only. Feasibility is low-to-medium for a small isolated use case and high-effort for production-critical use because security, performance, and licensing controls must be built around it.

Technical risk: High. The package has weak ecosystem signals: no stars, no dependents, a single-maintainer profile, and limited evidence of production use. PclZip is pure PHP, so CPU and memory costs are higher than native ext-zip. LGPL-3.0 requires legal review for distribution, modification, and bundling in a PHP application. Security risks include zip-slip/path traversal, symlink handling, zip bombs, decompression-ratio attacks, temp-file leakage, Unicode filename issues, and permission-bit handling.

Key questions: Is this a thin wrapper, a fork, or a modified PclZip distribution? Which PHP and Laravel versions are supported? Does it use Laravel storage or only local filesystem paths? Does it stream entries or load archives into memory? How does it sanitize entry names and extraction paths? What are the maximum archive/file sizes and memory behavior? Does it support encryption/passwords? Is there a test suite and security response process? Is LGPL-3.0 compatible with the product’s distribution model? Who owns maintenance if the upstream package is abandoned?

Integration Approach

Stack fit: Use it as an optional adapter behind an internal ArchiveService interface, not as a direct dependency spread across controllers and jobs. Keep native ext-zip as the primary path where available. Treat this package as a fallback for constrained hosting or isolated legacy compatibility, not as a strategic archive platform.

Migration path: Do not replace existing ZIP code directly. Wrap current calls, add a feature flag, and route a small set of non-critical archives through the new adapter. Keep the existing path available for rollback. If adoption proceeds, assign an internal owner and plan for vendoring/forking only after license review.

Compatibility: Confirm PHP version range, Laravel auto-discovery, dependency constraints, and the underlying PclZip version. Test against the target runtime matrix: CLI, PHP-FPM, queue workers, and local/S3-backed storage using temp files. Validate large files, Unicode filenames, empty directories, permission bits, corrupt archives, and unsupported compression methods.

Sequencing: 1. Complete license, composer metadata, and maintenance due diligence. 2. Run a sandbox spike with representative archives. 3. Build the adapter with path sanitization, size/count/ratio limits, temp-directory cleanup, and automated tests. 4. Feature-flag a canary in a non-critical workflow. 5. Measure CPU, memory, duration, failure rate, and support load. 6. Decide to promote, retain as fallback, or reject. Avoid a big-bang migration.

Operational Impact

Maintenance: High ownership burden relative to value. Zero stars, zero dependents, and limited upstream visibility mean the team must own upgrades, security patches, and PclZip quirks. Plan a fork/vendor exit strategy and do not assume timely upstream fixes.

Support: There is no commercial support or visible community base. Internal runbooks, representative test fixtures, and clear escalation paths are mandatory. Support staff should treat archive failures as potential data-integrity or security incidents, not merely library bugs.

Scaling: Pure-PHP ZIP processing will be slower and more memory-intensive than ext-zip. Large archives can exhaust PHP memory, hit max_execution_time, or saturate queue workers. Avoid synchronous extraction in request paths. Use dedicated queues, concurrency limits, resource quotas, and explicit archive-size caps.

Failure modes: Zip-slip/path traversal, symlink escape, zip bombs/decompression bombs, disk exhaustion, temp-file leaks, partial extraction, permission/ownership errors, Unicode filename corruption, truncated/corrupt archives, unsupported compression methods reported as success, and fallback logic masking native errors. Mitigate with entry-name validation, extraction-root confinement, size/count/ratio limits, atomic temp directories, cleanup jobs, and structured logging.

Ramp-up: The API learning curve is low, but operational ramp-up is moderate to high. Engineers must understand PclZip behavior, Laravel wrapper conventions, and archive security controls. Budget time for security review, runbooks, and a representative archive corpus. The package is defensible only as a bounded fallback, not as a core platform dependency.

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.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin