v2.4.0

Stirling-Tools/Stirling-PDFv2.4.0Jan 24, 2026by Frooodle

AI Summary

A major release featuring full 2FA support, database backup management, PDF/X conversions, and automation tool improvements.

Key Highlights

  • Full 2FA support with One-time-password (TOTP) apps.
  • Database backup and restore management for H2 database.
  • Added PDF/X conversion support.
  • Automation tool export for folder scan JSONs.

New Features

  • TOTP-based multi-factor authentication
  • H2 database backup & restore management
  • PDF/X export option
  • Export folder scanning
  • Compliance verification for get info

Full Release Notes

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification 
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for
- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as @balazs-szucs or the new bug fix from @Joey4 !
Special thanks to @Ludy87 for introducing the awesome 2FA feature!


## What's Changed
### Enhancements
* feat(admin): add H2 database backup & restore management to admin UI by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5528
* feat(frontend): enhance icon detection and update config navigation icon by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5524
* feat(security): add TOTP-based multi-factor authentication with backend and UI support by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5417
* feat(compliance): implement compliance verfication for get info on PDF by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5435
### Minor Enhancements
* 🤖 format everything with pre-commit by stirlingbot by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5530
* fix(annotations): fix error 300 on sign frontend by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5536
* Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5494
* API cleanups by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5537
* Update Backend 3rd Party Licenses by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5490
* refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5523
* fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5521
* build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5500
* build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5498
* Fix V2 SSO user creation by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5079
* removal of old java desktop + workspace change in tauri by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5459
* Date and time placeholders in addTextStamp are not working by @Joey4 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5446
* Update Backend 3rd Party Licenses by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5539
* [V2] feat(convert): add PDF/X export option by @balazs-szucs in https://github.com/Stirling-Tools/Stirling-PDF/pull/5285
* V2 Show enterprise demo messages for audit and usage by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5226
* Export folder scanning by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5544
* translations by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/5541
### Docker Updates
* Add sync-versions job to GitHub Actions workflow by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/5228
* build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5495
### Other Changes
* build(deps): bump logback from 1.5.23 to 1.5.24 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5468
* build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/5466

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

**Full Changelog**: https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0