league/flysystem
League/Flysystem is a filesystem abstraction for PHP that provides a consistent API for local disks and cloud storage like S3. Swap adapters without changing your app, with support for reading/writing files, directories, visibility, and streams.
Full Changelog: https://github.com/thephpleague/flysystem/compare/3.15.1...3.16.0
Full Changelog: https://github.com/thephpleague/flysystem/compare/2.4.0...3.0.0
Blog post: https://blog.frankdejonge.nl/flysystem-3-0-0-is-released/
When resources are not actually file pointers, but fopen results from URL, the fstat call fails. This resulted in an error in PHP 7.4 because it's more strict about variable handling. This affected the Util::getStreamSize utility method.
A new minor version for Flysystem has been released due to a (very minor) backwards incompatibility for custom adapters.
The adapter now accepts visibility and config settings for the put and update methods. This added a new parameter to those functions which breaks the public interface. All user-land code will be backwards compatible, this change only affects custom adapters.
The writeStream method now ensures the existence of the parent directory before opening a stream.
Flysystem will now resolve relative paths, when unresolvable it will throw an exception (LogicException). file (or dir) paths that reach outside of the specified root are now disallowed which makes the entire API more secure and friendly to use. A path like some/nested/../location will be converted to some/location, making sure the cached metadata is correct and protecting you from possible security exploits when building file managers.
Various bugfixes and anonymous ftp support.
How can I help you explore Laravel packages today?