Stirling-PDF/.github/workflows
Ludy e26035c3b3
build(versioning): synchronize app version across Tauri and simulation configs (#5120)
# Description of Changes

- **What was changed**
- Added `groovy.json.JsonOutput` and `groovy.json.JsonSlurper` imports
to `build.gradle`.
- Introduced a reusable `writeIfChanged(File targetFile, String
newContent)` helper to avoid unnecessary file writes when content is
unchanged.
  - Added `updateTauriConfigVersion(String version)` to:
    - Parse `frontend/src-tauri/tauri.conf.json`.
    - Set the `version` field from `project.version`.
- Re-write the file as pretty-printed JSON (with a trailing line
separator) only if content actually changed.
- Added `updateSimulationVersion(File fileToUpdate, String version)` to:
- Locate the `appVersion: '<value>'` assignment via regex in simulation
files.
    - Replace the existing version with `project.version`.
- Fail the build with a clear `GradleException` if `appVersion` cannot
be found.
- Registered a new Gradle task `syncAppVersion` (group: `versioning`)
which:
    - Reads `project.version` as the canonical app version.
    - Updates `frontend/src-tauri/tauri.conf.json`.
- Updates `frontend/src/core/testing/serverExperienceSimulations.ts`.
- Updates
`frontend/src/proprietary/testing/serverExperienceSimulations.ts`.
- Updated the main `build` task so it now depends on `syncAppVersion` in
addition to `:stirling-pdf:bootJar` and `buildRestartHelper`.

- **Why the change was made**
- To ensure the desktop Tauri configuration and server experience
simulation configs consistently use the same application version as
defined in `project.version`.
- To remove manual version bumps in multiple files and eliminate the
risk of version mismatches between backend, desktop app, and
simulation/testing tooling.
- To minimize noise in commits and CI by only touching versioned files
when their content actually changes (using `writeIfChanged`).


---

## 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.
2025-12-11 11:13:54 +00:00
..
ai_pr_title_review.yml build(deps): bump step-security/harden-runner from 2.13.0 to 2.13.1 (#4538) 2025-09-28 21:22:40 +01:00
auto-labelerV2.yml build(deps): bump step-security/harden-runner from 2.13.0 to 2.13.1 (#4538) 2025-09-28 21:22:40 +01:00
build.yml build(versioning): synchronize app version across Tauri and simulation configs (#5120) 2025-12-11 11:13:54 +00:00
check_toml.yml Toml (#5115) 2025-12-03 09:57:00 +00:00
codeql.yml-disabled
dependency-review.yml V2 Tauri integration (#3854) 2025-11-05 11:44:59 +00:00
deploy-on-v2-commit.yml
frontend-licenses-update.yml ci(frontend): update licenses workflow dependencies and Node.js version (#4520) 2025-09-29 12:21:48 +01:00
licenses-update.yml build(deps): bump gradle/actions from 4.4.4 to 5.0.0 (#4605) 2025-10-06 10:47:14 +01:00
manage-label.yml build(deps): bump step-security/harden-runner from 2.13.0 to 2.13.1 (#4538) 2025-09-28 21:22:40 +01:00
multiOSReleases.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
PR-Auto-Deploy-V2.yml PDF Text editor (#4724) 2025-11-24 14:15:02 +00:00
PR-Demo-cleanup.yml build(deps): bump step-security/harden-runner from 2.13.0 to 2.13.1 (#4538) 2025-09-28 21:22:40 +01:00
PR-Demo-Comment-with-react.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
pre_commit.yml fix(ci): 🛡️ mitigate CVE-2025-8869 by enforcing wheels-only pip installs and upgrading pinned dependencies (#4598) 2025-10-04 12:50:37 +01:00
push-docker-v2.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
push-docker.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
releaseArtifacts.yml publish GHAs (#5026) 2025-11-26 15:22:02 +00:00
scorecards.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
sonarqube.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
stale.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
swagger.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
sync_files_v2.yml Toml (#5115) 2025-12-03 09:57:00 +00:00
tauri-build.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00
testdriver.yml Make lite version of CI (#5188) 2025-12-10 13:54:57 +00:00