Graceful image and document error handling #42
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Code in the pull request is AI generated
This pull request introduces improved error handling for image and document downloads from Bynder.
Error handling improvements:
download_file
function inutils.py
to catch HTTP/network errors, check for error pages when expecting images, and raise the appropriate new exceptions.Model and asset update logic:
update_file
inmodels.py
to catch download-related exceptions and log warnings, skipping updates if errors occur and ensuring no stale state is left on the asset instance.Testing and validation:
test_models.py
to verify graceful handling of download errors, file-too-large errors, and invalid content, ensuring asset state remains consistent and no exceptions are propagated.Dependency update:
bynder-sdk
dependency to allow newer minor versions (<2.1
).