You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+8-1Lines changed: 8 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,13 +5,19 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
-
## [Unreleased]
8
+
## [14.1.0] - 2026-05-15
9
9
10
10
### Added
11
11
12
12
- Opt-in **async conversion mode** (`async = 1`): WebP conversions are queued in a new `tx_webp_queue` table and processed out-of-band by a TYPO3 Scheduler task. Closes [#17](https://github.com/plan2net/webp/issues/17).
13
13
- New CLI command `webp:process-queue` with optional `--folder=PATH` argument to convert images in non-FAL folders (e.g., `typo3temp/assets/online_media/`). Closes [#73](https://github.com/plan2net/webp/issues/73).
14
14
- New `async_throttle_ms` configuration to space conversions out with randomized jitter, preventing thundering-herd CPU/IO.
15
+
- UpgradeWizard `webp.truncateFailedAttemptsBeforeColumnResize` to unblock upgrades from older releases that shipped `tx_webp_failed.configuration_hash` as `VARCHAR(40)`; the wizard empties the cache of failed attempts so TYPO3's database analyzer can shrink the column to `VARCHAR(32)`. Closes [#95](https://github.com/plan2net/webp/issues/95).
16
+
17
+
### Fixed
18
+
19
+
-`ExternalConverter` now preserves non-ASCII bytes in filenames (e.g., German umlauts, accented characters) when passing paths to external converters like `cwebp`. PHP's `escapeshellarg()` silently drops multibyte bytes under `LC_CTYPE=C`, which mangled filenames like `Mövenpick.png` to `Mvenpick.png` and caused conversion to silently fail. Closes [#89](https://github.com/plan2net/webp/issues/89).
20
+
- TYPO3 14.3 no longer logs an `ext_emconf.php` deprecation notice on every request; `composer.json` now declares `extra.typo3/cms.version` and `extra.typo3/cms.Package.providesPackages` so `PackageManager` recognises the extension as composer-only-capable.
15
21
16
22
## [14.0.0] - 2026-05-14
17
23
@@ -32,4 +38,5 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
32
38
- The listener now normalises `FileReference` inputs to their underlying `File` before the repository lookup — fixes a latent v12/v13 bug where the wrong UID was being queried.
33
39
-`FileNameFilter` no longer emits PHP 8+ warnings on invalid filter regex patterns.
3. Clear processed files (*System → Maintenance → Remove Temporary Assets* on TYPO3 v14; *Admin Tools → Maintenance* on v12/v13).
78
78
4. Add the [webserver rewrite rules](#webserver-configuration).
79
79
80
80
## Updating
81
81
82
-
After a `composer update`, **save the extension settings at least once** via *Admin Tools → Settings → Extension Configuration → webp*. TYPO3 only writes default values to `LocalConfiguration` when you save the settings form, so any new defaults the upgraded version ships won't take effect until you do.
82
+
After a `composer update`, **save the extension settings at least once** via the Extension Configuration backend module (*System → Settings → Extension Configuration → webp* on TYPO3 v14; *Admin Tools → Settings → Extension Configuration → webp* on v12/v13). TYPO3 only writes default values to `LocalConfiguration` when you save the settings form, so any new defaults the upgraded version ships won't take effect until you do.
83
83
84
84
## Configuration
85
85
@@ -233,7 +233,7 @@ By default the extension converts images synchronously inside the request that p
233
233
234
234
1. Set `async = 1` in the extension configuration.
235
235
2. Run TYPO3's database analyzer so `tx_webp_queue` is created.
236
-
3. Register a TYPO3 Scheduler task: **System → Scheduler → Add task → Type: "WebP: process conversion queue"**. Pick a frequency that matches your throughput (every minute for busy sites, hourly for low-traffic).
236
+
3. Register a TYPO3 Scheduler task: **System → Scheduler → Add task → Type: "Process conversion queue (webp)"**. Pick a frequency that matches your throughput (every minute for busy sites, hourly for low-traffic).
237
237
4. Make sure the scheduler itself runs — either via `vendor/bin/typo3 scheduler:run` in cron, or a daemonized runner.
238
238
239
239
The listener will now enqueue new conversions; the scheduler task drains the queue in the background. Existing siblings stay; the extension does not retroactively backfill.
@@ -398,7 +398,7 @@ Common cases:
398
398
| File still served as JPEG after a successful generation | Webserver rewrite rule missing or shadowed by another rule |
399
399
| Sibling left behind after deleting the source | None — that's the bug fixed in 14.0.0; upgrade |
400
400
401
-
After changing `processor_colorspace`, clean up any processed files (Admin Tools → Maintenance → Remove Temporary Assets) so the change takes effect on existing images.
401
+
After changing `processor_colorspace`, clean up any processed files via the Maintenance backend module (*System → Maintenance → Remove Temporary Assets* on TYPO3 v14; *Admin Tools → Maintenance* on v12/v13) so the change takes effect on existing images.
402
402
403
403
## Known limitations
404
404
@@ -411,7 +411,7 @@ After changing `processor_colorspace`, clean up any processed files (Admin Tools
411
411
412
412
To remove all generated `.webp` files (e.g. before a converter or quality change):
0 commit comments