Skip to content

fix(aot): use Spring Boot exploded layer format for aot cache#5811

Merged
Frooodle merged 4 commits intoStirling-Tools:mainfrom
balazs-szucs:aot-fix
Mar 1, 2026
Merged

fix(aot): use Spring Boot exploded layer format for aot cache#5811
Frooodle merged 4 commits intoStirling-Tools:mainfrom
balazs-szucs:aot-fix

Conversation

@balazs-szucs
Copy link
Collaborator

@balazs-szucs balazs-szucs commented Feb 26, 2026

Description of Changes

Stirling-PDF-Security  | Detected container memory: 15954MB
Stirling-PDF-Security  | Dynamic memory: InitialRAM=10%, MaxRAM=50%, MaxMeta=256m
Stirling-PDF-Security  | JVM profile: balanced (G1GC)
Stirling-PDF-Security  | AOT cache found: /app/stirling.aot
Stirling-PDF-Security  | running with JAVA_TOOL_OPTIONS=-XX:+ExitOnOutOfMemoryError -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/stirling-pdf/heap_dumps -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:G1HeapRegionSize=4m -XX:G1PeriodicGCInterval=60000 -XX:+UseStringDeduplication -XX:+UseCompactObjectHeaders -XX:+ExplicitGCInvokesConcurrent -Dspring.threads.virtual.enabled=true -Djava.awt.headless=true -XX:InitialRAMPercentage=10 -XX:MaxRAMPercentage=50 -XX:MaxMetaspaceSize=256m -XX:+UseCompressedOops -XX:AOTCache=/app/stirling.aot 
Stirling-PDF-Security  | Running Stirling PDF with DISABLE_ADDITIONAL_FEATURES=false and VERSION_TAG=<unset>
Stirling-PDF-Security  | XDG_RUNTIME_DIR=/tmp/xdg-1002
Stirling-PDF-Security  | Setting permissions...
Stirling-PDF-Security  | Starting Xvfb on :99
Stirling-PDF-Security  | Starting unoserver on 127.0.0.1:2003 (uno-port 2004)
Stirling-PDF-Security  | INFO:unoserver:Starting unoserver 3.6.
Stirling-PDF-Security  | INFO:unoserver:Command: /usr/bin/soffice --headless --invisible --nocrashreport --nodefault --nologo --nofirststartwizard --norestore -env:UserInstallation=file:///tmp/stirling-pdf/tmp4rsbo41d --accept=socket,host=127.0.0.1,port=2004,tcpNoDelay=1;urp;StarOffice.ComponentContext
Stirling-PDF-Security  | unoserver pool started (Profile: /home/stirlingpdfuser/.libreoffice_uno_1002)
Stirling-PDF-Security  | Waiting for unoserver...
Stirling-PDF-Security  | INFO:unoserver:Starting UnoConverter.
Stirling-PDF-Security  | INFO:unoserver:Starting UnoComparer.
Stirling-PDF-Security  | INFO:unoserver:Started.
Stirling-PDF-Security  | [0.047s][warning][aot,codecache,stubs] Saved blob's name 'LLLLLLLLILIL' is different from the expected name 'LLLLLLILLLIL'
Stirling-PDF-Security  | [0.047s][warning][aot                ] Failed to link AdapterHandlerEntry (fp=LLLLLLILLLIL) to its code in the AOT code cache
Stirling-PDF-Security  | 14:36:41.951 [main] INFO  s.software.SPDF.SPDFApplication - Additional features in jar
Stirling-PDF-Security  | 14:36:41.953 [main] INFO  s.s.c.c.ConfigInitializer - Current settings file line count: 306
Stirling-PDF-Security  | 14:36:42.502 [main] INFO  s.s.c.c.ConfigInitializer - Settings file updated based on template changes.
Stirling-PDF-Security  | 14:36:42.503 [main] INFO  s.software.SPDF.SPDFApplication - Settings file: ./configs/settings.yml
Stirling-PDF-Security  | 14:36:42.503 [main] INFO  s.software.SPDF.SPDFApplication - Custom settings file: ./configs/custom_settings.yml
Stirling-PDF-Security  |  ____ _____ ___ ____  _     ___ _   _  ____       ____  ____  _____
Stirling-PDF-Security  | / ___|_   _|_ _|  _ \| |   |_ _| \ | |/ ___|     |  _ \|  _ \|  ___|
Stirling-PDF-Security  | \___ \ | |  | || |_) | |    | ||  \| | |  _ _____| |_) | | | | |_
Stirling-PDF-Security  |  ___) || |  | ||  _ <| |___ | || |\  | |_| |_____|  __/| |_| |  _|
Stirling-PDF-Security  | |____/ |_| |___|_| \_\_____|___|_| \_|\____|     |_|   |____/|_|
Stirling-PDF-Security  | Powered by Spring Boot 4.0.3
Stirling-PDF-Security  | 14:36:42.697 [main] INFO  s.software.SPDF.SPDFApplication - Starting SPDFApplication v2.5.3 using Java 25.0.2 with PID 342 (/app/app.jar started by stirlingpdfuser in /app)
Stirling-PDF-Security  | 14:36:42.697 [main] INFO  s.software.SPDF.SPDFApplication - The following 1 profile is active: "security"
Stirling-PDF-Security  | INFO:unoserver:Server PID: 217
Stirling-PDF-Security  | 14:36:44.279 [main] INFO  s.s.c.model.ApplicationProperties - Setting fileUploadLimit from SYSTEM_MAXFILESIZE: 100MB
Stirling-PDF-Security  | 14:36:44.292 [main] INFO  s.s.S.config.MultipartConfiguration - Using fileUploadLimit setting: 100.0 MB
Stirling-PDF-Security  | 14:36:44.795 [main] INFO  s.s.p.s.configuration.DatabaseConfig - Using default H2 database
Stirling-PDF-Security  | 14:36:45.867 [main] INFO  s.s.p.s.s.KeyPersistenceService - Loading 1 existing JWT keys from disk
Stirling-PDF-Security  | 14:36:45.869 [main] INFO  s.s.p.s.s.KeyPersistenceService - Set active JWT signing key: jwt-key-2026-02-24-160521
Stirling-PDF-Security  | 14:36:45.870 [main] INFO  s.s.p.s.s.KeyPersistenceService - Successfully loaded 1 JWT keys, active key: jwt-key-2026-02-24-160521
Stirling-PDF-Security  | 14:36:45.987 [main] INFO  s.s.p.s.service.DatabaseService - Source directory does not exist: configs/db/backup
Stirling-PDF-Security  | 14:36:46.067 [main] INFO  s.s.c.c.RuntimePathConfig - Registered watched folder path: /app/pipeline/watchedFolders
Stirling-PDF-Security  | 14:36:46.068 [main] INFO  s.s.c.c.RuntimePathConfig - Using Tesseract data path: /usr/share/tesseract-ocr/5/tessdata
Stirling-PDF-Security  | 14:36:46.086 [virtual-64] WARN  s.s.SPDF.config.ExternalAppDepConfig - Missing dependency: rar - Disabling group: rar (Affected features: PDF To Cbr)
Stirling-PDF-Security  | 14:36:46.089 [virtual-72] INFO  s.s.SPDF.config.ExternalAppDepConfig - qpdf 12.3.2 meets minimum 12.0.0
Stirling-PDF-Security  | 14:36:46.470 [virtual-74] INFO  s.s.SPDF.config.ExternalAppDepConfig - WeasyPrint 68.1.0 meets minimum 58.0.0
Stirling-PDF-Security  | 14:36:46.623 [main] INFO  s.s.S.config.EndpointConfiguration - Disabled tool groups: rar (endpoints may have alternative implementations)
Stirling-PDF-Security  | 14:36:46.623 [main] INFO  s.s.S.config.EndpointConfiguration - Disabled functional groups: enterprise
Stirling-PDF-Security  | 14:36:46.623 [main] INFO  s.s.S.config.EndpointConfiguration - Total disabled endpoints: 2. Disabled endpoints: pdf-to-cbr, url-to-pdf
Stirling-PDF-Security  | 14:36:46.737 [main] INFO  s.s.SPDF.service.VeraPDFService - VeraPDF Greenfield initialized successfully
Stirling-PDF-Security  | 14:36:46.756 [main] INFO  s.s.S.s.PdfJsonFallbackFontService - Using fallback font location: classpath:/static/fonts/NotoSans-Regular.ttf
Stirling-PDF-Security  | 14:36:46.759 [main] INFO  s.s.S.s.pdfjson.PdfJsonFontService - [FONT-DEBUG] CFF conversion enabled, checking tool availability...
Stirling-PDF-Security  | 14:36:46.763 [main] INFO  s.s.S.s.pdfjson.PdfJsonFontService - [FONT-DEBUG] Python command '/opt/venv/bin/python3' is available
Stirling-PDF-Security  | 14:36:46.767 [main] INFO  s.s.S.s.pdfjson.PdfJsonFontService - [FONT-DEBUG] FontForge command 'fontforge' is available
Stirling-PDF-Security  | 14:36:46.768 [main] INFO  s.s.S.s.pdfjson.PdfJsonFontService - [FONT-DEBUG] Selected CFF converter method: python
Stirling-PDF-Security  | 14:36:47.323 [main] INFO  s.s.S.s.p.t.library.Type3FontLibrary - [TYPE3] Loaded 61 Type3 library entries (signatures=81, aliases=64) from classpath:/type3/library/index.json
Stirling-PDF-Security  | 14:36:47.665 [main] INFO  s.s.c.service.MobileScannerService - Mobile scanner temp directory: /tmp/stirling-pdf/stirling-mobile-scanner
Stirling-PDF-Security  | 14:36:47.725 [main] INFO  s.software.common.util.FileMonitor - Monitoring directory: /app/pipeline/watchedFolders
Stirling-PDF-Security  | 14:36:47.726 [main] INFO  s.software.common.util.FileMonitor - Registered directory: /app/pipeline/watchedFolders
Stirling-PDF-Security  | 14:36:47.764 [main] INFO  s.s.S.s.CertificateValidationService - Loading certificates from Java system trust store
Stirling-PDF-Security  | 14:36:47.773 [main] INFO  s.s.S.s.CertificateValidationService - Loaded 144 CA certificates from Java system trust store
Stirling-PDF-Security  | 14:36:47.773 [main] INFO  s.s.S.s.CertificateValidationService - Loading bundled Mozilla CA certificates from resources
Stirling-PDF-Security  | 14:36:47.794 [main] INFO  s.s.S.c.web.ReactRoutingController - Static files custom path: ./customFiles/static/
Stirling-PDF-Security  | 14:36:47.845 [main] INFO  s.s.c.service.TempFileCleanupService - Running in Docker mode, using aggressive cleanup strategy
Stirling-PDF-Security  | 14:36:47.846 [main] INFO  s.s.c.service.TempFileCleanupService - Startup cleanup complete. Deleted 0 temporary files/directories
Stirling-PDF-Security  | 14:36:48.095 [main] INFO  s.s.p.s.UserLicenseSettingsService - License check result: type=NORMAL, requiresPaid=true, hasPaid=false
Stirling-PDF-Security  | 14:36:48.309 [main] INFO  s.s.p.s.c.SecurityConfiguration - No CORS allowed origins configured in settings.yml (system.corsAllowedOrigins); allowing all origins.
Stirling-PDF-Security  | 14:36:48.762 [main] INFO  s.software.common.service.JobQueue - Starting JobQueue lifecycle
Stirling-PDF-Security  | 14:36:48.794 [scheduled-vt-2] INFO  s.s.c.service.TempFileCleanupService - Running scheduled temporary file cleanup
Stirling-PDF-Security  | 14:36:48.795 [scheduled-vt-2] INFO  s.s.common.util.TempFileManager - Cleaned up 0 old temporary files
Stirling-PDF-Security  | 14:36:48.795 [scheduled-vt-2] INFO  s.s.c.service.TempFileCleanupService - Cleaned up 0 registered temporary files
Stirling-PDF-Security  | 14:36:48.796 [main] INFO  s.software.SPDF.SPDFApplication - Started SPDFApplication in 6.292 seconds (process running for 7.449)
Stirling-PDF-Security  | 14:36:48.804 [main] WARN  o.s.c.events.SpringDocAppInitializer - SpringDoc /v1/api-docs endpoint is enabled by default. To disable it in production, set the property 'springdoc.api-docs.enabled=false'
Stirling-PDF-Security  | 14:36:48.804 [main] WARN  o.s.c.events.SpringDocAppInitializer - SpringDoc /swagger-ui.html endpoint is enabled by default. To disable it in production, set the property 'springdoc.swagger-ui.enabled=false'
Stirling-PDF-Security  | 14:36:48.805 [main] INFO  s.software.SPDF.SPDFApplication - Stirling-PDF running on port: 8080
Stirling-PDF-Security  | 14:36:48.805 [main] INFO  s.s.p.s.ServerCertificateService - Server certificate feature requires Pro or Enterprise license
Stirling-PDF-Security  | 14:36:48.807 [main] INFO  s.s.p.s.UserLicenseSettingsService - License check result: type=NORMAL, requiresPaid=true, hasPaid=false
Stirling-PDF-Security  | 14:36:48.809 [main] INFO  s.software.SPDF.SPDFApplication - Stirling-PDF Started.
Stirling-PDF-Security  | 14:36:48.809 [main] INFO  s.software.SPDF.SPDFApplication - Navigate to http://localhost:8080/

Checklist

General

Documentation

Translations (if applicable)

UI Changes (if applicable)

  • Screenshots or videos demonstrating the UI changes are attached (e.g., as comments or direct attachments in the PR)

Testing (if applicable)

  • I have tested my changes locally. Refer to the Testing Guide for more details.

Copilot AI review requested due to automatic review settings February 26, 2026 14:37
@dosubot dosubot bot added the size:XS This PR changes 0-9 lines ignoring generated files. label Feb 26, 2026
@stirlingbot stirlingbot bot added Docker Pull requests that update Docker code Bugfix Pull requests that fix bugs labels Feb 26, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the container init script’s background AOT cache generation to support Spring Boot “exploded layers” runtime layouts (where the app runs via JarLauncher from an exploded /app directory), aiming to prevent AOT cache/linking issues caused by mismatched launch formats.

Changes:

  • Add a new AOT cache generation branch when an exploded Spring Boot layout is detected via /app/BOOT-INF.
  • Generate the AOT cache by launching org.springframework.boot.loader.launch.JarLauncher with an explicit classpath targeting /app.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Frooodle Frooodle merged commit c15ff1e into Stirling-Tools:main Mar 1, 2026
21 checks passed
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 4, 2026
… docker tag to v2

##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

#### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

#### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

#### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

#### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

#### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

#### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

##### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

##### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

##### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

##### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

##### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

##### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

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

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

##### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

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

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

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](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

##### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](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](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](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](https://github.com/dependabot)\[bot] in [#5468](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](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

##### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](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>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

##### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](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](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](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](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](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](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](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](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](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](https://github.com/dependabot)\[bot] in [#5326](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](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](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](https://github.com/dependabot)\[bot] in [#5316](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](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](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](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](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](https://github.com/Ludy87) in [#5380](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](https://github.com/dependabot)\[bot] in [#5449](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](https://github.com/dependabot)\[bot] in [#5422](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](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](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](https://github.com/dependabot)\[bot] in [#5456](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](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

##### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](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](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](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](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](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](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](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](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](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](https://github.com/dependabot)\[bot] in [#5326](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](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](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](https://github.com/dependabot)\[bot] in [#5316](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](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](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](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](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](https://github.com/Ludy87) in [#5380](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](https://github.com/dependabot)\[bot] in [#5449](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](https://github.com/dependabot)\[bot] in [#5422](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](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](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](https://github.com/dependabot)\[bot] in [#5456](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](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

##### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](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>

---
##### [\`2.2.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.2.1)

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

This release has:

- Possible fix for selfhost connection issues from desktop app
- custom OCR languages fix
- hide login options based on selec…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 9, 2026
… docker tag to v2

##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

#### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

#### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

#### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

#### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

#### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

#### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

#### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

#### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

#### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

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

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

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

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

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](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

#### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](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](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](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](https://github.com/dependabot)\[bot] in [#5468](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](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

#### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](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>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

#### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](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](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](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](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](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](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](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](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](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](https://github.com/dependabot)\[bot] in [#5326](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](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](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](https://github.com/dependabot)\[bot] in [#5316](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](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](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](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](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](https://github.com/Ludy87) in [#5380](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](https://github.com/dependabot)\[bot] in [#5449](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](https://github.com/dependabot)\[bot] in [#5422](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](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](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](https://github.com/dependabot)\[bot] in [#5456](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](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

#### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](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](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](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](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](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](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](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](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](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](https://github.com/dependabot)\[bot] in [#5326](https://github.com/Stirling-To…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 13, 2026
… docker tag to v2

##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

#### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

#### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

#### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

#### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

##### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

##### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

##### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

##### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

##### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

##### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

##### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

##### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

##### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

##### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

##### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

##### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

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

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

##### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

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

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

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](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

##### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](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](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](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](https://github.com/dependabot)\[bot] in [#5468](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](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

##### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](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>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

##### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](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](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](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](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](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](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](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](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](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](https://github.com/dependabot)\[bot] in [#5326](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](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](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](https://github.com/dependabot)\[bot] in [#5316](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](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](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](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](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](https://github.com/Ludy87) in [#5380](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](https://github.com/dependabot)\[bot] in [#5449](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](https://github.com/dependabot)\[bot] in [#5422](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](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](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](https://github.com/dependabot)\[bot] in [#5456](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](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

##### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](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](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](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](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirli…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 13, 2026
… docker tag to v2

##### [\`2.7.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.2)

Had a bug where self-hosted connections via desktop would stop working, thinking they were connecting to a non selfhost instance

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

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

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

---
##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

#### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

#### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

##### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

##### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

##### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

##### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

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

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

##### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

##### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

##### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

##### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

##### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

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

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

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

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

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](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

#### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](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](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](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](https://github.com/dependabot)\[bot] in [#5468](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](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

#### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](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>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

#### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](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](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](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](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](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](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](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](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](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](https://github.com/dependabot)\[bot] in [#5326](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](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](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](https://github.com/dependabot)\[bot] in [#5316](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](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](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](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](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](https://github.com/Ludy87) in [#5380](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](https://github.com/dependabot)\[bot] in [#5449](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](https://github.com/dependabot)\[bot] in [#5422](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](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](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](https://github.com/dependabot)\[bot] in [#5456](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](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

#### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](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](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PD…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Bugfix Pull requests that fix bugs Docker Pull requests that update Docker code size:XS This PR changes 0-9 lines ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants