Releases: uploadcare/pyuploadcare
Version 6.2.1
What's Changed
- Adding metadata during upload via ucare by @dmitry-mukhin in #315
- Remove unused dependency 'pytz' from pyproject.toml by @vtalos in #314
- Update README.md with subdomain by @KamillaGarifullina in #313
New Contributors
- @vtalos made their first contribution in #314
- @KamillaGarifullina made their first contribution in #313
Full Changelog: v6.2.0...v6.2.1
Version 6.2.0
Added
- Added support for subdomain CDN addressing.
- Using subdomains is optional and defaults to
False. The default will change in
the next major release.
Full Changelog: v6.1.0...v6.2.0
Version 6.1.0
Version 6.0.0
In this release, we introduce File Uploader v1, now with semantic versioning starting from v1.0.0.
For details on upgrading, refer to the migration guide.
Full Changelog: v5.1.0...v6.0.0
Version 5.1.0
Added
- For
File:detect_faces()method to detect faces in images.
- For
ImageTransformation:text()method to allow adding text overlays to images.rect()method to allow adding solid color overlays to images.strip_meta()method to control the presence of EXIF metadata in the resulting image.border_radius()method to add rounded corners.zoom_objects()method to zoom in on objects.rasterize()method to rasterize SVG images.detect_faces()method, which provides face detection in images. WhileImageTransformation.detect_faces()ensures consistency within theImageTransformationAPI, you are more likely to useFile.detect_faces()to obtain face detection results.
Changed
- Blocks have been updated to v0.36.0
- For
ImageTransformation:- The
overlay()andoverlay_self()methods now treatoverlay_widthandoverlay_heightparameters as optional. - Unified
gif2video(),gif2video_format(), andgif2video_quality()methods into a singlegif2video()method. Theformatandqualityparameters can now be accepted directly in thegif2video()method.
- The
- Black dev dependency has been updated to 24.3.0.
Fixed
- Django forms: Any modifications made in an image editor are now correctly restored when editing the same image again. Previously, the editor state was not restored, and the original image was displayed instead. via uploadcare/blocks#615.
Deprecated
- For
ImageTransformation:- Deprecated the separate
gif2video_formatandgif2video_qualitymethods. Please use theformatandqualityparameters directly in thegif2videomethod for setting these properties.
- Deprecated the separate
Full Changelog: v5.0.1...v5.1.0
Version 5.0.1
Changed
Fixed
- The SSL context is now cached by default, resulting in significant performance improvements when initializing the
Uploadcareclass frequently. #279 - Removed the warning for the usage of the deprecated
pydantic.utils.deep_update#283
Full Changelog: v5.0.0...v5.0.1
Version 5.0.0
In version 5.0, we introduce a new file uploader, which is now the default for Django projects. If you prefer to continue using the old jQuery-based widget, you can enable it by setting the use_legacy_widget option in your configuration:
UPLOADCARE = {
...,
"use_legacy_widget": True,
"legacy_widget": {
"version": "3.x",
}
}Additionally, please take note that some settings have been renamed in this update (see the next section).
Breaking Changes
-
Python 3.6 and 3.7 are no longer supported.
-
Django 1.11, 2.0, and 2.1 are no longer supported.
-
Pydantic has been updated to Version 2. Projects dependent on Pydantic Version 1 may encounter errors due to incompatibility between Versions 1 and 2.
-
Removed
tox.ini. The recommended method for running tests locally is now through act with Docker. -
for Django settings (
UPLOADCARE = {...}):widget_*settings were renamed and moved:UPLOADCARE["widget_version"]toUPLOADCARE["legacy_widget"]["version"]UPLOADCARE["widget_build"]toUPLOADCARE["legacy_widget"]["build"]UPLOADCARE["widget_variant"]toUPLOADCARE["legacy_widget"]["build"](this is not a typo: formerwidget_buildandwidget_variantsettings were equialent)UPLOADCARE["widget_url"]toUPLOADCARE["legacy_widget"]["override_js_url"]and works regardless ofuse_hosted_assetsvalue.
-
for
pyuploadcare.dj.conf:- Individual variables were moved into one dict called
config. If you've accessed these settings frompyuploadcare.dj.confmodule in your code, please migrate:pub_keytoconfig["pub_key"]secrettoconfig["secret"]cdn_basetoconfig["cdn_base"]upload_base_urltoconfig["upload_base_url"]use_hosted_assetstoconfig["use_hosted_assets"]widget_versiontoconfig["legacy_widget"]["version"]widget_buildtoconfig["legacy_widget"]["build"]uploadcare_jstoget_legacy_widget_js_url()
- Gone from
pyuploadcare.dj.conf:widget_filenamehosted_urllocal_url
- Individual variables were moved into one dict called
-
for
pyuploadcare.dj.forms:FileWidgetrenamed toLegacyFileWidget.FileWidgetis an all-new implementation now.- By default,
FileWidgetis used. To useLegacyFileWidget, please setUPLOADCARE["use_legacy_widget"]toTrue
Added
- Added Python 3.12 and Django 5.0 to the test matrix.
Changed
- Updated dependencies:
httpx,pydantic,pytz,typing-extensions. - Updated development dependencies:
mypy,pytest,black,isort,flake8,flake8-print,vcrpy,yarl,coverage,pytest-cov,sphinx,sphinx-argparse,types-*. Replacedpytest-freezegunwithpytest-freezer.
Version 4.3.0
Fixed
- For
AkamaiSecureUrlBuilderWithAclTokenandAkamaiSecureUrlBuilderWithUrlToken:- Special characters that were not previously escaped are now properly handled, as detailed in issue #275.
Changed
- For
AkamaiSecureUrlBuilderWithAclTokenandAkamaiSecureUrlBuilderWithUrlToken:- Both classes have been made more consistent and now accept a full URL, URL path, or just the UUID of a file – whichever is more convenient for you.
Deprecated
-
For
FileGroup:- Added a deprecation warning when accessing
datetime_storedproperty, as it has been deprecated in the REST API. This field does not exist in REST API v0.7.x.
- Added a deprecation warning when accessing
-
For
GroupsAPI:- Added a deprecation warning when calling
storemethod, as it has been deprecated in the REST API. This API endpoint does not exist in REST API v0.7.x.
- Added a deprecation warning when calling
Version 4.2.2
Added
- For
File:- AWS Rekognition Moderation results are now accessible via
File.info["appdata"]["aws_rekognition_detect_moderation_labels"].
- AWS Rekognition Moderation results are now accessible via
Version 4.2.1
Fixed
- For
AddonsAPI:- In version 4.2.0, passing a Python dictionary as
paramsto theexecutemethod would cause anAttributeError. Now, you can use either anAddonExecutionParamsinstance or adict. #272
- In version 4.2.0, passing a Python dictionary as