v2.3.0

Stirling-Tools/Stirling-PDFv2.3.0Jan 15, 2026by Frooodle

AI Summary

This release addresses conversion threading issues, adds support for EPUB/AZW3 and MSG formats, and integrates a Telegram bot.

Key Highlights

  • Added PDF to EPUB and AZW3 conversion support.
  • Added MSG (Outlook) support.
  • Added Telegram bot integration for pipeline processing.
  • Fixed file conversion threading and non-roman alphabet processing.

New Features

  • PDF to EPUB/AZW3 conversion support
  • MSG support
  • Telegram bot integration
  • Conversion threading fixes
  • EML parser refactor with Simple Java Mail

Full Release Notes

Several important bug fixes in this release related to
- File conversion threading 
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as
- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support


## What's Changed
### Enhancements
* feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5352
* feat(ui): prevent self-modification in People management and highlight current user by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5441
* feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5427
* feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5434
### Minor Enhancements
* build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5353
* 🤖 format everything with pre-commit by stirlingbot by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5426
* Updated ga-IE translations and added keys to ignore list by @aindriu80 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5178
* fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5437
* Update Backend 3rd Party Licenses by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5363
* build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5311
* build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5448
* build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5413
* Add Telegram bot integration for pipeline processing by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5185
* Update Backend 3rd Party Licenses by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5458
* translations by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5469
* :globe_with_meridians: Sync Translations + Update README Progress Table by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5473
* fix(auth): remove unnecessary authentication requirement from SignatureController by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5477
* Make controls sticky by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/5478
* fix: update broken enterprise docs link from /Pro to /Paid-Offerings by @krizhnaa in https://github.com/Stirling-Tools/Stirling-PDF/pull/5471
* Libre threads by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5303
### Docker Updates
* build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5326
* build(deps): bump step-security/harden-runner from 2.12.1 to 2.14.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5324
* ci(build): scope Docker layer cache per artifact to avoid cross-contamination by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5453
* build(deps): bump alpine from 3.22.2 to 3.23.2 in /docker/backend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5316
* build(deps): bump alpine from 3.22.1 to 3.23.2 in /docker/embedded by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5319
* build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5357
* build(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5463
* Docker use latest libreoffice and fonts by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5482
### Translation Changes
* 🤖 format everything with pre-commit by stirlingbot by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5462
### Other Changes
* fix(ci): read workflow_dispatch PR number from inputs.pr in PR auto-deploy workflow by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5380
* build(deps): bump github/codeql-action from 4.31.5 to 4.31.10 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5449
* build(deps): bump pypdf from 6.4.0 to 6.6.0 in /testing/cucumber by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5422
* build(deps): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5358
* Update user login conditions in workflow by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5457
* fix(core): reinstall frontend dependencies when iconify package is missing by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5432
* fix(translations): improve translation merger CLI and sync missing UI strings across locales by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5309
* build(deps): bump urllib3 from 2.5.0 to 2.6.3 in /testing/cucumber in the pip group across 1 directory by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5456
* build(deps): bump docker/login-action from 3.4.0 to 3.6.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5464

## New Contributors
* @krizhnaa made their first contribution in https://github.com/Stirling-Tools/Stirling-PDF/pull/5471

**Full Changelog**: https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.2.1...v2.3.0

<!-- Release notes generated using configuration in .github/release.yml at v2.3.0 -->

## What's Changed
### Enhancements
* feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5352
* feat(ui): prevent self-modification in People management and highlight current user by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5441
* feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5427
* feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5434
### Minor Enhancements
* build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5353
* 🤖 format everything with pre-commit by stirlingbot by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5426
* Updated ga-IE translations and added keys to ignore list by @aindriu80 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5178
* fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5437
* Update Backend 3rd Party Licenses by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5363
* build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5311
* build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5448
* build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5413
* Add Telegram bot integration for pipeline processing by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5185
* Update Backend 3rd Party Licenses by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5458
* translations by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5469
* :globe_with_meridians: Sync Translations + Update README Progress Table by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5473
* fix(auth): remove unnecessary authentication requirement from SignatureController by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5477
* Make controls sticky by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/5478
* fix: update broken enterprise docs link from /Pro to /Paid-Offerings by @krizhnaa in https://github.com/Stirling-Tools/Stirling-PDF/pull/5471
* Libre threads by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5303
### Docker Updates
* build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5326
* build(deps): bump step-security/harden-runner from 2.12.1 to 2.14.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5324
* ci(build): scope Docker layer cache per artifact to avoid cross-contamination by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5453
* build(deps): bump alpine from 3.22.2 to 3.23.2 in /docker/backend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5316
* build(deps): bump alpine from 3.22.1 to 3.23.2 in /docker/embedded by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5319
* build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5357
* build(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5463
* Docker use latest libreoffice and fonts by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5482
### Translation Changes
* 🤖 format everything with pre-commit by stirlingbot by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5462
### Other Changes
* fix(ci): read workflow_dispatch PR number from inputs.pr in PR auto-deploy workflow by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5380
* build(deps): bump github/codeql-action from 4.31.5 to 4.31.10 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5449
* build(deps): bump pypdf from 6.4.0 to 6.6.0 in /testing/cucumber by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5422
* build(deps): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5358
* Update user login conditions in workflow by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5457
* fix(core): reinstall frontend dependencies when iconify package is missing by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5432
* fix(translations): improve translation merger CLI and sync missing UI strings across locales by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5309
* build(deps): bump urllib3 from 2.5.0 to 2.6.3 in /testing/cucumber in the pip group across 1 directory by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5456
* build(deps): bump docker/login-action from 3.4.0 to 3.6.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5464

## New Contributors
* @krizhnaa made their first contribution in https://github.com/Stirling-Tools/Stirling-PDF/pull/5471

**Full Changelog**: https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.2.1...v2.3.0