Skip to content

Releases: ivanusto/smart-image-upload-resizer

Release v1.4.0

Choose a tag to compare

@github-actions github-actions released this 20 Aug 10:46

WordPress 7.1 Compatibility

WordPress 7.1 introduces client-side media processing, which silently broke this plugin's core purpose: your configured maximum dimensions were no longer applied.

What was wrong

7.1 moves scaling and sub-size generation into the browser. The image is scaled locally and posted back, so the server-side resize this plugin performs ended up either:

  • discarded — the browser's own 2560px scaled copy replaced the main file, so your configured bounds never took effect; or
  • rejected outright — core validates an original sideload against the dimensions already stored in the attachment metadata, and returns a 400 as soon as a server-side resize makes the two disagree.

What changed

While GD is available, the plugin now returns false from the wp_client_side_media_processing_enabled filter. That unregisters the sideload and finalize REST routes and keeps the whole pipeline server-side, which is where the configured bounds are actually enforced. Without GD the plugin is a no-op, so the browser pipeline is left alone.

The upload prefilter is guarded as well, in case another plugin forces the flag back on or a REST client opts out on its own:

  • /wp/v2/media/{id}/sideload uploads derivative files for an existing attachment. They reach the same prefilter as a normal upload but were already sized by the browser.
  • A media create with generate_sub_sizes=false stores the original that later original / scaled sideloads are validated against, so it has to be stored untouched.

Route detection reads the rest_route query var and falls back to the REQUEST_URI path, so it works with both plain and pretty permalinks.

Verification

Verified against WordPress 7.1: the sideload route disappears from the REST index while the plugin is active and returns when it is deactivated; normal uploads and plain REST creates are still resized; sideloads, generate_sub_sizes=false creates, and both permalink forms are left untouched. Plugin Check reports no errors.

Nothing changes on WordPress 7.0 and earlier — the filter simply does not exist there.

Full Changelog: v1.3.0...v1.4.0

Release v1.3.0

Choose a tag to compare

@github-actions github-actions released this 04 Aug 08:17

Full Changelog: 1.2.0...v1.3.0

Release 1.2.0

Choose a tag to compare

@ivanusto ivanusto released this 19 Jul 10:09

This version adds AVIF support and fixes a critical bug where uploading unsupported formats like SVG caused the upload to fail completely. Recommended update.

Full Changelog: 1.1.0...1.2.0

1.1.0

Choose a tag to compare

@ivanusto ivanusto released this 18 Jul 17:10

Release version 1.1.0 of Smart Image Upload Resizer. Fixes PNG/GIF transparency preservation, patches memory leaks, and adds settings sanitization.