feat(settings): display frontend/backend versions and warn on client-server mismatch (#5571)

# Description of Changes

## Summary
This PR improves the **Preferences → General → Software Updates**
section by:
- Showing **separate version labels** for **Frontend (Tauri client)**
and **Backend (server/AppConfig)** across all locales.
- Adding a **version mismatch detection** in `GeneralSection`, comparing
the Tauri app version against the backend `AppConfig` version and
displaying a **warning banner** when they differ.

## Why
Running a Tauri desktop client against a different backend version can
lead to:
- Compatibility issues (API/UI expectations drifting)
- Runtime errors due to schema/behavior changes
- Increased security risk if the client and server are not kept in sync

Surfacing both versions and warning on mismatch makes these situations
visible and easier to diagnose.


[stirling-pdf-2.4.1.exe.zip](https://github.com/user-attachments/files/24846696/stirling-pdf-2.4.1.exe.zip)

<img width="967" height="362" alt="image"
src="https://github.com/user-attachments/assets/8cd2a7d9-47ca-4caf-930b-4ec0a4c6317a"
/>


[stirling-pdf-2.4.0.exe.zip](https://github.com/user-attachments/files/24846864/stirling-pdf-2.4.0.exe.zip)

<img width="951" height="395" alt="image"
src="https://github.com/user-attachments/assets/70ba15eb-ec13-4737-9cae-1f6da3c18c1a"
/>

---

## Checklist

### General

- [ ] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [ ] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [ ] I have performed a self-review of my own code
- [ ] My changes generate no new warnings

### Documentation

- [ ] I have updated relevant docs on [Stirling-PDF's doc
repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/)
(if functionality has heavily changed)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### Translations (if applicable)

- [ ] I ran
[`scripts/counter_translation.py`](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/docs/counter_translation.md)

### 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](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.
This commit is contained in:
Ludy
2026-01-31 20:03:21 +00:00
committed by GitHub
parent 4575d7178b
commit 789eaa263f
44 changed files with 2226 additions and 1031 deletions
+36 -1
View File
@@ -439,7 +439,9 @@ fullscreen = "Celozaslonski"
[settings.general.updates]
title = "Posodobitve programske opreme"
description = "Preverite posodobitve in glejte informacije o različici"
currentVersion = "Trenutna različica"
currentBackendVersion = "Current Backend Version"
currentFrontendVersion = "Current Frontend Version"
versionMismatch = "Warning: A mismatch has been detected between the client version and the AppConfig version. Using different versions can lead to compatibility issues, errors, and security risks. Please ensure that server and client are using the same version."
latestVersion = "Najnovejša različica"
checkForUpdates = "Preveri posodobitve"
viewDetails = "Poglej podrobnosti"
@@ -3560,6 +3562,31 @@ imageSize = "Velikost slike"
margin = "Rob"
positionAndFormatting = "Položaj in oblikovanje"
quickPosition = "Izberite položaj na strani za postavitev žiga."
clickToExpand = "Click to expand"
customDateDesc = "Custom format"
dateDesc = "Current date"
dateTimeVars = "Date & Time"
datetimeDesc = "Date and time combined"
dynamicVariables = "Dynamic Variables"
examples = "Examples"
fileVars = "File Information"
filenameDesc = "Filename without extension"
filenameFullDesc = "Filename with extension"
metadataDesc = "From PDF document properties"
metadataVars = "Document Metadata"
multiLine = "multi-line"
otherVars = "Other"
pageNumberDesc = "Current page number"
pageVars = "Page Information"
preview = "Preview:"
selectTemplate = "Select a template..."
stampTextDescription = "Use dynamic variables below. Use @@ for literal @. Use \\n for new lines."
timeDesc = "Current time"
totalPagesDesc = "Total number of pages"
useTemplate = "Use Template"
uuidDesc = "Short unique identifier (8 chars)"
variablesHelp = "Click on any variable to insert it into your stamp text. Use @@ for literal @."
yearMonthDayDesc = "Individual date parts"
[AddStampRequest.error]
failed = "Pri dodajanju žiga v PDF je prišlo do napake."
@@ -3567,6 +3594,14 @@ failed = "Pri dodajanju žiga v PDF je prišlo do napake."
[AddStampRequest.results]
title = "Rezultati žiga"
[AddStampRequest.template]
custom = "Custom"
dateHeader = "Date Header"
draftWatermark = "Draft Watermark"
europeanDate = "European Date"
pageNumberFooter = "Page Number Footer"
timestamp = "Timestamp"
[removeImagePdf]
tags = "Odstrani sliko,operacije strani,zadnja stran,strežniška stran"