What's new in EzyPlatform 1.4.9?
This release focuses on improving the Media management system, making Media search and processing more accurate for each owner. EzyPlatform also adds information about the Admin or User performing Media operations, introduces APIs for restoring Media and retrieving the WebSocket URL, and improves the administration experience and file upload configuration.
-
Improved Media search by original file nameMedia search by original file name has been improved to identify results more accurately based on ownership. The system now supports lookups using a combination of the file name and
ownerAdminIdorownerUserId, while prioritizing Media owned by the Admin or User performing the request. -
Improved handling of Media with duplicate namesWhen multiple Media records have the same original file name, the system selects the first record by ID within the corresponding owner's scope. Update operations performed by name now also resolve the Media ID before applying changes, helping prevent updates from affecting Media with the same name owned by another Admin or User.
-
Improved Media access controlAccess validation for owner-only Media has been improved to fully support both Admins and Users. This ensures that viewing, downloading, and managing Media correctly follows the configured ownership permissions.
-
Added Media restore APIUsers can now restore deleted Media through the new API:
PUT /api/v1/media/{name}/restore. This API adds Media restoration support for Web and provides a more complete Media management lifecycle. -
Added WebSocket URL APIAdded
GET /api/v1/settings/websocket-urlto retrieve the WebSocket URL from the system configuration, making it easier for client applications to establish WebSocket connections. -
Added actor information to Media operationsMedia upload, download, replacement, update, removal, restoration, and file size reduction operations now consistently propagate
byAdminIdandbyUserId. This makes it possible to identify the Admin or User performing each operation and provides complete context for subsequent processing. -
Extended Media EventsMedia Events have been migrated to use the Builder pattern and now include information about the actor performing the operation, including
MediaAddedEvent,MediaDownloadEvent,MediaFileSizeReducedEvent,MediaRemovedEvent,MediaReplacedEvent,MediaUpdatedEvent,MediaUploadEvent,MediaUploadedEvent,GetMediaDetailsEvent, andValidateMediaOwnerEvent. -
Extended Media Arguments in the SDK
MediaUploadArguments,MediaUploadFromUrlArguments, andMediaDownloadArgumentsnow includebyAdminIdandbyUserId. In addition,MediaUploadArgumentsnow providesfileMetadatafor passing prepared file metadata through the Media processing flow. -
Added file validation before uploadFiles are now validated before being passed to
MediaUpDownloader. At the same time,FileMetadatais prepared in advance for custom upload handlers, providing more consistent file validation and processing before Media is stored. -
Improved Media update behaviorThe system no longer overwrites
originalNamewhen an update request does not provide an original file name. In addition,MediaUpdatedEventis now correctly emitted when Media visibility changes between public and private. -
Remembered Media list display modeThe selected Media list display mode,
ICONSorLIST, is now stored in the browser. When returning to the Media management page, the interface automatically restores the previously selected display mode. -
Improved the Media management interfaceThe Media Details modal layout has been refined for better usability. The delete button and Media selection checkbox have also been repositioned to provide a clearer and more convenient administration experience.
-
Adjusted the default Multipart configurationThe default value of
server.multipart.file_size_thresholdhas been reduced to256KB. This change adjusts the Multipart file processing threshold in the platform's default configuration. -
Adjusted Admin file upload limitsThe Admin deployment configuration now reduces
server.multipart.max_file_sizeandserver.multipart.max_request_sizefrom500MBto50MB, providing more appropriate default limits for file upload requests.