All notable changes to this project will be documented in this file.
The format is based now on Keep a Changelog and this project adheres to Semantic Versioning.
- Introduce Rector to fix implicitly nullable parameter warnings.
- Thanks to @kayw-geek for the contribution.
- Added multi-page document conversion.
- Added Unsafe content detection.
\Uploadcare\Group::getDatetimeStoredmethod is deprecated.- Improved date conversion.
- Retrieve the Metadata without additional requests when using
getMetadata. - You can still get the fresh metadata for the file by calling
getMetadatamethod from theMetadataApiInterface.
Uploadcare\Interfaces\UploaderInterface::checkStatus(string $token)now returnsUploadcare\Interfaces\File\FileInfoInterface
Uploadcare\Interfaces\UploaderInterface::syncUploadFromUrlmethod for synchronically uploading a file from a remote URLUploadcare\Interfaces\UploaderInterface::getSignaturemethod for get signature to use in third-party uploaders
Uploadcare\Interfaces\Api\GroupApiInterface::storeGroup($id)Uploadcare\Group::store()
- Method
removeKeyto remove medatada keys - Samples for all API requests
GroupApiInterface::storeGroup($id)method: see Uploadcare API changelog
- The
$addFieldsparameter ofFileApiInterface::listFilesmethod
GroupApiInterface::removeGroup($id)method to delete a group
- PHP 7.1 support (now minimal version is 7.4, PHP 8.0 is also supported)
FileInfoInterface::getImageInfo(),FileInfoInterface::getVideoInfo(),FileInfoInterface::getRekognitionInfo()— seeFileInfoInterface::getContentInfo()
- Support for REST API 0.7
FileInfoInterface::getContentInfo(): returnsContentInfoInterfacewithgetMime()(information about MimeType),getImage(ImageInfoInterfacein case of an image) andgetVideo(VideoInfoInterfacein case of a video) methods;FileInfoInterface::getMetadata()method returns file associated metadata array-accessible object;- Addons (
AddonsApiInterface): execute and check status of an add-on application:requestAwsRecognition($id): execute AWS Rekognition Add-On for a given target to detect labels in an imagecheckAwsRecognition(string $id): check the status of an Add-On execution request that had been started using the Execute Add-On operationrequestAntivirusScan($id, bool $purge = false): execute ClamAV virus checking Add-On for a given targetcheckAntivirusScan(string $id): check the status of an Add-On execution request that had been started using the Execute Add-On operationrequestRemoveBackground($id, ?RemoveBackgroundRequestInterface $backgroundRequest = null): execute remove.bg background image removal Add-On for a given targetcheckRemoveBackground(string $id): check the status of an Add-On execution request that had been started using the Execute Add-On operation
- Application data
FileInfoInterface::getAppdata(): method returnsAppDataInterfacewith information about addon-applications and associated data:
- Allow to use guzzlehttp/psr7:^2.
- Added a
Y-m-d\TH:i:s\Zinput date format additionally to theY-m-d\TH:i:s.u\Z.
- Added
getPageRequestParametersmethod: use it to load the next page parameters from$fileListResponse->getNext()/$fileListResponse->getPrevious(). - Attention: if you've implemented your own class for
FileApiInterface, addpublic getPageRequestParameters(?string $url): arraymethod to the implementation.
- Resolved issue with invalid signed urls being generated for image transformations.
- Each webhook payload now can be signed with a secret to ensure that the request comes from the expected sender.
- Fix some minor issues.
- Now you can generate Secure CDN URLs for images with transformations.
- Dropped support for old PHP versions. You must update PHP to 7.1 or a newer version to use this version.
- Added PHP 8 support.
- Modified classes for strict types usage.
- Modified terms for naming agreement.
- Updated tests.
- Added option to convert PDF files without a page parameter.
- Fixed file copy methods between default Uploadcare storage and remote storage (Amazon s3).
- Serialization for
originalFileUrl.
- Added support for guzzlehttp/guzzle:^7.
- You must update PHP to 5.6 or a newer version.
- This completely new version is not backward compatibile with the previous one!
- Add interfaces for all
Fileand dependent classes. - Add Guzzle http client as standard client.
You can override client with any
GuzzleHttp\ClientInterfaceclient implementation if you want. - Full REST and Upload APIs coverage.
- Support for multipart uploads
- Support for signed uploads
- Allow to specify filename for local uploads
- Allow to control "autostore" for local uploads
- Wrong return type for
createRemoteCopymethod inAPI.php. As result is always casted tostring, the return type should bestring
$api->getUserAgent()was deprecated and will be removed in next major version. Use$api->getUserAgentHeader()instead.
- Allow user to specify User Agent
- User agent reporting for the lib and integrations that use it
- data-integration attribute to the widget
- User agent now is reporting in new format by default
$api->getUserAgent()replaced with$api->getUserAgentHeader()
$api->getGroupList($options = array())method- Some mistakes in description of methods
- Hitting max throttling attempts if request was successful
- add
__isset()to classes that have__get()that fixes class behaviours in PHP 7.0.6+ see error description
- fix
File->op()
- change
File->crop()andFile->scaleCrop()behaviou, now they throw exceptions if parameters$widthor$heightare 0 or not provided - add
File->getPath()method - fix
Api->createRemoteCopy()default behaviour
- use latest stable build of version 3 (see [widget changelog][widget changelog])
- use REST API version 0.5
- update pagination functions for files and groups
- add batch files methods:
Api->storeMultipleFiles()andApi->deleteMultipleFiles() - add new copy methods:
Api->createLocalCopy()andApi->createRemoteCopy() - add
Helper->deprecate()method - change the signature of
Uploader->fromUrl(), old signature is deprecated but will work until 3.0 - deprecate
File->copy()andFile->copyTo() - deprecate
Api->copyFile()
- bump widget version to 2.9.0 (see [widget changelog][widget changelog])
- add optional "full" argument to Widget->getScriptTag
- fix: File in a Group is not loosing default effects (cropping etc.)
- bump widget version to 2.8.2 (see [widget changelog][widget changelog])
- fix of throttled request exception (thanks to Alexey Scherbakov, https://github.com/lexabug)
- fix of pagination logic
- add throttled requests handling
- add customizable User Agent string
- fix upload from url logical bug
- bump widget to 2.5.9 (see [widget changelog][widget changelog])
- upgrade server api usage to v0.4, add new style pagination support
- add FileIterator
- change logic of
Api->getFileList(): it returns FileIterator object instead of array and incoming parameters are now grouped in an array - remove
Api->getFilePaginationInfo()
- change logic of
Api->getGroupList()andApi->__getPath() - fix #41
- bump widget version to 2.5.1 (see [widget changelog][widget changelog])
- use proper authentication instead of simple
- bump widget version to 2.5.0 (see [widget changelog][widget changelog])
- add
Api->cdn_protocol - add
Api->getCdnUri() - change default CDN protocol to HTTPS
- fix
Group->getFiles()
- add
Uploader->createGroup() - add
Group->updateInfo() - add Group API tests
- fix
Group->store() - bump widget version to 2.3.5 (see [widget changelog][widget changelog])
- IMPORTANT: backward incompatible changes in widget behavior introduced in 2.0.0, please read changelog entry carefully
- bump widget version to 2.3.4 (see [widget changelog][widget changelog])
- allow CDN URLs in Group constructor
- bump widget version to 1.4.6 (see [widget changelog][widget changelog])
- fix
Api->copyFile()when copying to custom storage - add
File->copyTo()shortcut
- bump widget version to 1.4.2 (see [widget changelog][widget changelog])
- add AUTHORS.txt
- bump widget version to 1.2.0 (see [widget changelog][widget changelog])
- be more explicit on cURL errors
- fix sample-project composer file
- always write widget's charset
- default to sync widget load
- add optional $async argument to
Widget->getScriptTag()
- bump widget version to 1.0.1 (see [widget changelog][widget changelog])
- bump widget version to 1.0.0 (see [widget changelog][widget changelog]) major feature is reponsive behavior of widget dialog
- allow setting custom CDN host
- add preview operation
- accept CDN URL in File's constructor
- bump widget version to 0.18.3 (see [widget changelog][widget changelog])
- drop 5.2 support
- fix composer support
This is last uploadcare-php version that will support php 5.2. Expect no features added, only bugs fixed.
- bump widget version to 0.18.1 (see [widget changelog][widget changelog])
- fix file copy request
- bump widget version to 0.17.2 (see [widget changelog][widget changelog])
- support
limitparam inApi->getFileList()andApi->getFilePaginationInfo()
- deprecate
File->file_id, useFile->uuid - fix
Api->getFileList()
- bump widget version to 0.17.1 (see [widget changelog][widget changelog])
- fix HEAD requests
- allow custom User Agent
- prepopulate File with data on
Api->getFileList() - add Groups API
- add
File->copy()