- Is oro/gridfs-config a Laravel package?
- No. Despite the Laravel-oriented package description, oro/gridfs-config is a Symfony bundle built for OroPlatform and OroCRM applications. It extends Oro's bundle configuration tree and dependency injection container; it does not ship a Laravel service provider, config publishables, or a framework-agnostic filesystem adapter.
- Can I install oro/gridfs-config in a Laravel application with Composer?
- Effectively no. The package depends on symfony/* and oro/* transitive packages and will not resolve cleanly in a standard Laravel codebase. Laravel teams needing MongoDB file storage should implement a Flysystem adapter and register it in a service provider instead.
- Does oro/gridfs-config provide a Laravel filesystem driver or service provider?
- It does not. The package only wires Oro's filesystem abstraction, which sits on top of Flysystem, to a GridFS-backed adapter through configuration. The actual chunking into fs.files and fs.chunks is handled by MongoDB or a third-party Flysystem Mongo adapter, not by this package.
- How do I configure GridFS connection, database, and bucket names?
- Configuration is done through Oro's bundle configuration tree, not Laravel's config files. It centralizes connection, database, bucket, and collection settings so GridFS storage can be defined consistently across environments. You need an OroPlatform deployment for those settings to take effect.
- Is oro/gridfs-config actively maintained?
- The last release was on 2020-10-26, with zero stars, zero dependents, and no visible CI or issue triage. Six years without a commit in a fast-moving PHP ecosystem is a strong negative signal. Treat it as dormant code you would own and maintain if adopted.
- What license does oro/gridfs-config use?
- The repository reports NOASSERTION, which means the rights to use, modify, and redistribute are unclear. This is a hard blocker for most organizations. Legal review should precede any technical spike or internal fork.
- Which OroPlatform, Flysystem, and PHP versions does it support?
- The 2020-era code targets Oro 4.x and Flysystem 1.x. Current Oro releases use Flysystem 3 with different adapter contracts and PHP 8.x requirements. Expect Composer conflicts on league/flysystem, symfony/dependency-injection, and the PHP constraint, so plan for a fork and re-target rather than a simple install.
- Can I use GridFS as a Laravel filesystem for many small files?
- GridFS lacks POSIX semantics, atomic rename, cheap directory listing, native range requests, and CDN offload. It works well for large write-once blobs but is weak for the many-small-files profile typical of CRM attachments, avatars, and generated thumbnails. For Laravel apps, S3-compatible object storage is usually the better fit.
- What should I use instead of oro/gridfs-config for MongoDB file storage in Laravel?
- Write or adopt a Flysystem MongoDB adapter and register it through a Laravel service provider, or use S3-compatible storage such as S3 or MinIO. If GridFS is mandatory, treat this repository as a wiring reference rather than a dependency. Validate the requirement first because object storage is the correct answer in most cases.
- How would I migrate existing files to GridFS if I adopt this approach?
- Backfill with a streaming job that never loads entire files into memory, and run dual-read during cutover. Verify uploads, downloads, thumbnails, attachment previews, deletion without orphaned chunks, and p95 latency in a disposable environment. Only fork, pin dependencies, and port to the current Flysystem contract if GridFS wins the comparison against object storage.