v2.13.0
2.13.0 MCP, files UI tweaks and bug fixes
Release Notes
This release contains some cool updates but mostly backend enabler work for features to come as well as enabling us to redeploy our online https://stirling.com/app back to a familiar UI.
This release also contains:
- MCP page (WIP)
- Support for ctrl A selection in PDF viewer
- New US language (now default)
- Improved my files UI and file deletion menus
- Open Graph previews (web links)
And bug fixes for:
- Bug fix for text selection on laptops/touchscreen devices
- Bug fix for ultra-lite docker not merging
What's Changed
Bug Fixes (please note most of these are related to SaaS not OSS product, we will be making the separation in notes clearer in next release)
- Fix Teams and MCP settings pages by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6605
- MCP OAuth discovery fix + Supabase consent page by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6608
- fix(saas): block accepting an invite when it would orphan a paid team by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6616
- fix(payg): gate + charge AI document tools and AI Create sessions by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6617
- fix(payg): run the entitlement guard before the charge interceptor by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6622
- fix(payg): land usage-limit modal CTAs on the Plan section by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6630
- fix(payg): fire the usage-limit modal when an AI agent run hits the limit by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6638
- Fix SaaS mobile scanner being auth-gated under /app base path by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6642
- Policies: centre the collapsed-rail policy button between its dividers by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6646
- Fix CI errors in SaaS by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6662
- Fix PDF text selection locked out on touch devices by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6656
- Fix failing Playwright test in SaaS by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6688
- fix(viewer): wire Ctrl+A to select all text in the PDF by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6517
Enhancements
- Delete dead translations by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6581
- Feature/v2/smartfolders rebuild by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6480
- changes to the login and signup, similar to in the saas repo by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6577
- show chat progress and other UX improvements by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6576
- Add SaaS MCP usage tab by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6590
- drop type-aware ESLint to stop the lint OOM by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6602
- Move agent section to fab by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6597
- Add team settings to SaaS by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6601
- feat(policies): backend-driven policy enforcement (frontend) by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6598
- Policies: enforce on upload or export by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6604
- PAYG: pay-as-you-go billing — metered automation/AI/API + one-time free grant by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6589
- fe(payg): remove em dashes from Plan page copy by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6610
- Policies: enforce on upload or export by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6614
- update saas onboarding by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6619
- add popups for free limit hit and spend cap hit by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6623
- Change default language to en-US and add US language by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6621
- UI ux/move footer links to settings by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6606
- feat(policies): org-wide policies with admin-only editing by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6625
- Policies: enforce input on uploads only; badge follows edited files by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6627
- fe(payg): show the usage-limit modal when the limit is hit (direct + policy) by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6626
- Policies: scope to the owning team; editing restricted to team leaders by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6632
- i18n(policies): route policy UI strings through i18n (English only) by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6628
- UI ux/add ai warning and change style by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6633
- Policies: let team leaders configure policies in the UI by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6634
- Update SaaS to latest main by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6636
- Properly sync US and GB translation files by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6635
- Policies: summon the guest sign-up banner when a guest clicks a policy by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6644
- Feature/v2/guest action gating by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6643
- Route mobile scanner API and vendor loads through the app base path by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6648
- refactor: replace legacy Paths usage with Path.of by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6441
- chore(build): upgrade Gradle wrapper and Docker build images to 9.5.1 by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6501
- chore(frontend): make Vite allowed hosts configurable by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6354
- Scope signing user picker to team for multi-tenant SaaS by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6583
- Portal: full mock-driven surfaces, demonolithed components, backend-ready mocks by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6686
- Fix inverted link toolbar in rotated PDFs (#6518) by @MattSaito in https://github.com/Stirling-Tools/Stirling-PDF/pull/6684
- Skip flaky Playwright test by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6698
- refactor(fe): share the SaaS PAYG experience with desktop via a cloud/ layer by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6649
- MCP token rejection reason and stop logging the raw tokens by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6700
- feat(desktop): show the AI assistant in SaaS mode via the cloud kill switch by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6666
- refactor(saas): remove the legacy credits engine (FE + Java) by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6687
- fix agent overlay chat position when workbench size changes by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6682
- set z-index on config dropdowns so they render above the modal by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6674
- allow drag and drop onto left files section and make top bar slightly smaller by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6711
- Update Italian translations by @albanobattistella in https://github.com/Stirling-Tools/Stirling-PDF/pull/6713
- Portal: unified-design surfaces (Policies, Users, Components, Agent Builder, Editor deploy) + Settings rebuild by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6696
- Add cloud-aware delete and version history to My Files by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6704
- Fix all top-level dev tasks treating engine as enabled by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6705
- fix theme issues, remove dead rainbow mode code, standardize theme us… by @EthanHealy01 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6668
- add prerendered Open Graph previews and OG card generator by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6661
- Give SaaS users their own team and harden the user list endpoint by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6717
- Update Backend 3rd Party Licenses by @stirlingbot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/6719
- Clean up update dialog UI and fix desktop external links by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6727
Minor Enhancements
- chore(saas): remove dead ErrorTrackingService island + credits path exclusion by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6718
Docker Updates
- build(deps): bump docker/metadata-action from 6.0.0 to 6.1.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/6490
- build(deps): bump go-task/setup-task from 2.0.0 to 2.1.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/6429
- Use glibc base for ultra-lite and bundle per-arch JPDFium natives by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6706
Translation Changes
- docs: Document pluralization suffix usage for translations by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6650
Development Tools
- Redesign pre-commit commands to run through Task by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6670
Other Changes
- PR-S4: shadow-mode hardening (review follow-ups) by @ConnorYoh in https://github.com/Stirling-Tools/Stirling-PDF/pull/6523
- Improve search logic by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6637
- De-AI the onboarding prose by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6641
- Policies: drop the Pro-license gate from the policy API by @reecebrowne in https://github.com/Stirling-Tools/Stirling-PDF/pull/6645
- build(taskfile): use platform-specific Gradle wrapper command by @Ludy87 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6355
- SaaS tidying by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6665
- Update SaaS to latest main by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6667
- build(deps): bump actions/stale from 10.2.0 to 10.3.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/6487
- build(deps): bump depot/build-push-action from 1.17.0 to 1.18.0 by @dependabot[bot] in https://github.com/Stirling-Tools/Stirling-PDF/pull/6488
- Cleanup of SaaS code by @jbrunton96 in https://github.com/Stirling-Tools/Stirling-PDF/pull/6669
- SaaS fixes by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6578
- Revert "SaaS fixes" by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6693
- Fix SaaS issues by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6694
- Add JUnit tests for common and core module coverage by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6675
- Add JUnit tests for saas module coverage by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6699
- Prefer JBoss mirror over shibboleth repo for opensaml by @Frooodle in https://github.com/Stirling-Tools/Stirling-PDF/pull/6701
Full Changelog: https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.12.0...v2.13.0