- What is jellybool/flysystem-upyun used for?
- It is a Flysystem adapter that lets Laravel and PHP applications store and manage files on Upyun (又拍云) cloud storage. You use it through Laravel's familiar Storage API, so Upyun can sit alongside local and S3 disks behind one filesystem interface. Typical uses include uploading media, reading stored files, and deleting objects from an Upyun bucket.
- How do I install jellybool/flysystem-upyun in Laravel?
- Install it with Composer using composer require jellybool/flysystem-upyun. On Laravel 5.5 and newer, package auto-discovery should register the service provider without editing config/app.php. On older Laravel versions, follow the package README to register the service provider manually.
- Does jellybool/flysystem-upyun support Laravel 5.5 package auto-discovery?
- Yes, the evaluated release adds Laravel 5.5 package auto-discovery, so most Laravel 5.5+ projects do not need manual service provider registration. This is an additive change and does not indicate a breaking change for existing users. If discovery does not take effect, run composer dump-autoload and check for conflicts with other auto-discovered packages.
- How do I configure an Upyun disk in Laravel?
- Add a disk entry in config/filesystems.php using the Upyun driver name and the credential keys documented by the package. Upyun disk configuration typically needs values such as the bucket name, operator credentials, password, and access domain; confirm the exact key names in the README for your installed version. Keep those values in environment variables rather than committing secrets to source control.
- Which Laravel versions does jellybool/flysystem-upyun support?
- The package explicitly targets Laravel 5.5+ with auto-discovery, and older Laravel versions can still integrate via manual service provider registration. Exact Laravel and Flysystem version constraints should be checked in the package composer.json before upgrading a project. Test the adapter against your application's Laravel and Flysystem versions, especially on older or heavily customized stacks.
- How do I upload, read, and delete files on Upyun with this Laravel package?
- Use Laravel's Storage facade with the configured Upyun disk, for example Storage::disk('upyun')->put('path/file.jpg', $contents) to upload and Storage::disk('upyun')->delete('path/file.jpg') to remove a file. Reading uses the same API, such as Storage::disk('upyun')->get('path/file.jpg'). This keeps Upyun operations consistent with other Laravel filesystem disks.
- Can I use jellybool/flysystem-upyun outside Laravel?
- The core is a Flysystem adapter, so it can be used in plain PHP Flysystem setups by instantiating the Upyun adapter and passing it to a Flysystem Filesystem. However, the package is primarily documented for Laravel filesystem disks. Outside Laravel, check the adapter constructor arguments and Flysystem version compatibility in the source or README.
- Is jellybool/flysystem-upyun production ready and actively maintained?
- The evaluated change is low risk and additive, but maintenance activity should be verified on Packagist and GitHub before adopting it for a critical application. The provided context does not state a formal long-term support policy. For production, pin a tested version, keep credentials in environment variables, and run upload and delete checks in staging.
- What are alternatives to jellybool/flysystem-upyun for Upyun storage?
- Alternatives include other community Flysystem adapters for Upyun, Laravel's built-in local or S3 disks when Upyun is not required, or Upyun's official PHP SDK behind a custom Laravel filesystem driver. Compare maintenance activity, Flysystem version support, and documented configuration before choosing. If you need long-term support, verify the package's release history and issue tracker.
- How should I test Upyun file uploads and deletes in Laravel?
- Unit-test application code against Laravel's Storage facade where possible, and use a dedicated Upyun test bucket for integration tests that verify credentials, uploads, reads, and deletes. Keep test credentials in environment variables and never point automated tests at a production bucket. For local-only tests, Laravel's Storage::fake can simulate filesystem behavior, but it does not validate real Upyun connectivity.