What's Changed
- feat(git-sync): Sync docs-site repos without Markdown changes by @NagariaHussain in #856
- ci: skip server and UI tests for docs-only changes by @gajjug004 in #860
- fix(reader): hide spaces the user cannot open from the space switcher by @gajjug004 in #861
- fix(analytics): read page views from Frappe's log database by @gajjug004 in #870
- fix(change-request): stop merge retries from duplicating conflicts by @gajjug004 in #869
- fix(editor): stop adjacent tables from looping the editor by @gajjug004 in #873
- fix(test): insert the File before patching generate_file_name by @gajjug004 in #882
- feat(mermaid): render diagrams with Pele by @gajjug004 in #883
- feat(space): add a toggle to turn off PDF download by @gajjug004 in #865
- perf(editor): lazy-load pdf.js for PDF blocks by @gajjug004 in #877
- refactor(editor): drop the legacy per-RPC sync path by @gajjug004 in #881
- fix(editor): autosave while typing by @gajjug004 in #878
- perf(editor): seed the editor once instead of through a content ref by @gajjug004 in #876
- perf(tree): clear the tree cache per space by @gajjug004 in #879
- fix(api): add missing permission checks to wiki endpoints by @gajjug004 in #868
- fix(reader): hide AI page actions in non-public spaces by @gajjug004 in #864
- fix(api): move only the affected subtree on reorder by @gajjug004 in #871
- docs: rewrite ARCHITECTURE.md for change requests by @gajjug004 in #880
- fix(change-request): lock the space row before moving main_revision by @gajjug004 in #875
- fix(permissions): restrict revision doctypes to managers by @gajjug004 in #867
- ci: cut PR job count and speed up bench setup by @gajjug004 in #862
- fix(draft): block saves after a version conflict until reload by @gajjug004 in #884
- perf(draft): make each save one request by @gajjug004 in #885
- perf(space): open a space with one bootstrap call by @gajjug004 in #886
- ci: check dependencies with pip-audit by @ankush in #890
- feat(space): start a change request with Edit, not on open by @gajjug004 in #891
- feat(space): render read mode from server HTML, load the editor on Edit by @gajjug004 in #892
- refactor(space): quieter page header, one place for open change requests by @gajjug004 in #896
- feat: merge stacked space and history changes into develop by @gajjug004 in #897
- perf(merge): rebuild the nested set once per merge by @gajjug004 in #888
- perf(reader): render the sidebar tree once with plain rows by @gajjug004 in #887
- feat(space): bring back This page and All pages tabs in version history by @gajjug004 in #898
- feat(space): filter the change requests panel by status by @gajjug004 in #899
- feat: expose method source in API discovery by @ankush in #901
- fix(merge): stop merges in different spaces from deadlocking by @gajjug004 in #903
- perf: merge cost scales with the change, not the space by @gajjug004 in #902
- fix(merge): renumber the tree from current rows after waiting on the lock by @gajjug004 in #904
- docs(readme): Add version compatibility table by @NagariaHussain in #907
- fix(git-sync): Import images from HTML img and source tags by @NagariaHussain in #909
- feat(git-sync): Preview a local docs folder before you push by @NagariaHussain in #911
- feat(reader): Reload synced pages after a sync in developer mode by @NagariaHussain in #912
- fix(reader): Stop dimming the dark version of an image by @NagariaHussain in #913
- fix(sidebar): remove change request count by @gajjug004 in #908
- fix(reader): Do not dim the dark version of an image in the image viewer by @NagariaHussain in #914
- chore(branding): Use the new Frappe Wiki logo by @NagariaHussain in #915
- style(e2e): format theme-aware images spec by @gajjug004 in #916
- ci: run server tests on SQLite by @gajjug004 in #910
- perf(space): delete a space's content in bulk by @gajjug004 in #905
- fix(git-sync): Keep the docs folder in a local preview's paths by @NagariaHussain in #917
- docs: Add the Frappe Wiki user guide by @NagariaHussain in #919
- docs(readme): List the unsupported version-13 and version-14 branches by @NagariaHussain in #920
- fix(command-palette): Drop deleted pages from recent pages by @gajjug004 in #921
- feat(reader): Replace the Edit split button with quiet page actions by @NagariaHussain in #925
- docs: Add a maintainer guide and tighten the user guide wording by @NagariaHussain in #926
- chore(e2e): format page actions telemetry spec for biome by @kaulith in #929
- test: repair stale wiki document tests after the page actions refactor by @kaulith in #930
- ci: Run tests on Ubuntu 26.04 by @gajjug004 in #933
- feat: right-to-left support for the reader and app by @gajjug004 in #906
- fix(reader): balance raw HTML so page chrome stays outside content by @gajjug004 in #935
- fix(sync): Show a spinner, not a warning, while a save is in flight by @gajjug004 in #936
- test(e2e): Wait for draft sync before submitting a CR over the API by @gajjug004 in #937
- fix(editor): Keep HTML tables with lists in cells intact by @gajjug004 in #944
- Merge develop into version-3 by @gajjug004 in #900
Full Changelog: v3.4.0...v3.5.0