architecture
architecture copied to clipboard
File system framework improvements
- Improve FS API
- Eliminate duplicated libraries:
- Deprecation of
Magento\Framework\Filesystem\Io
- Unify Ftp library instead of
\Magento\Framework\System\Ftp
and\Magento\Framework\Filesystem\Io\Ftp
- Deprecation of
- Agree on API convenient for developers. Current API requires extra actions from the developer, and in some cases makes impossible to access files/folders in some context (e.g., it's necessary to create a directory and only then access necessary file).
- Revisit the security measure limiting accessing files only in specific directory. Find an API that will be convenient and, in the same time, covers security requirements.
- Eliminate duplicated libraries:
- For cloud - do not write to local FS
- API for media files to write to object storage
- Logs (everything in "var") to be written to remote storage
- Adapter for switching between local and remote storage
- Config from
env.php
- Storages: S3
- Config from
- Builds on environment close to cloud
- And composer-based
- DevBox close to cloud env
Related issue - https://github.com/magento/architecture/issues/111
Same applies Magento\Framework\Filesystem\Io\File
there are some methods available in:
Magento\Framework\Filesystem\Io\File
and some others in:
\Magento\Framework\Filesystem\Driver\File
- Before remove I think we should merge them all into one.
- What about 3rd party modules using
Magento\Framework\Filesystem\Io
?
What about 3rd party modules using Magento\Framework\Filesystem\Io? Everything should be deprecated first.