Commit Graph

146 Commits

Author SHA1 Message Date
Anna Claire Fields
3649832fc8 add stream unable to pipe err code (#31160)
GitOrigin-RevId: 2b8c8e19696d5b07ef2ae33c97405ea5cd3cf803
2026-02-02 09:04:46 +00:00
Tim Down
64da16f0d1 Merge pull request #28670 from overleaf/td-rename-validate-req
Rename validateReq to parseReq

GitOrigin-RevId: a935aaa3f89495e164ce5d10b0bd80436571440f
2026-01-15 09:05:09 +00:00
Simon Gardner
bb7b8ee227 [web] Add audit log entries for project-history-version-restore and project-history-version-download
GitOrigin-RevId: 8cfe1fee733aa886cd6518d352abd95bd9da6f77
2026-01-14 10:17:40 +00:00
Andrew Rumble
07c827e9fd Merge pull request #29928 from overleaf/ar-last-infrastructure-conversions
[web] last infrastructure conversions

GitOrigin-RevId: ad1aff9b7df0610ed0303157d9e2c8032f32c02b
2025-11-28 09:05:56 +00:00
Andrew Rumble
18f44866e5 Merge pull request #29919 from overleaf/revert-29795-ar-last-infrastructure-conversions
Revert "[web] last infrastructure conversions"

GitOrigin-RevId: 48dc64553012afb5d2db4b2eb9c9898489b7e5ef
2025-11-27 09:05:54 +00:00
Andrew Rumble
d748d8d606 Merge pull request #29795 from overleaf/ar-last-infrastructure-conversions
[web] last infrastructure conversions

GitOrigin-RevId: 68aa11625a9bc6d0d5324ecd95bb5ac52af8ee96
2025-11-27 09:05:30 +00:00
Andrew Rumble
beb6f6d484 Merge pull request #29597 from overleaf/ar-last-features-esm-conversion
[web] last features esm conversion

GitOrigin-RevId: a35ab995bf654f1cdfe0e0062d8806761ecccf2d
2025-11-21 09:05:36 +00:00
Andrew Rumble
4f02a85aa4 Update paths
GitOrigin-RevId: 399c594dd1bbf739d91874df6be3b70e57fe01e3
2025-11-06 09:05:57 +00:00
Andrew Rumble
912324f560 Convert to ESM
GitOrigin-RevId: b58b02f9e9c8d47909e95c3ade8e1bf33ed46c80
2025-11-06 09:05:47 +00:00
Andrew Rumble
0f4d5a7be6 Rename files
GitOrigin-RevId: 80b975b03ebca16328b84fabf11e71bbea87c8bc
2025-11-06 09:05:41 +00:00
Andrew Rumble
7bda755d0e Convert to ESM
GitOrigin-RevId: 572dafeaddea99be28ec1e1116e49aaf203be340
2025-10-23 08:06:20 +00:00
Andrew Rumble
f02f6475ac Update paths
GitOrigin-RevId: a9474c8f36e8b287de4dd8fda29bc082001444ac
2025-10-23 08:06:10 +00:00
Andrew Rumble
0d73904c4b Rename files
GitOrigin-RevId: 7e8fde9258e71ab3649d1d83addeb5164d8b4251
2025-10-23 08:06:05 +00:00
Antoine Clausse
33e63d79fc Merge pull request #28584 from overleaf/ac-some-web-esm-migration-5
[web] Convert some Features files to ES modules (part 5)

GitOrigin-RevId: 0cad67f9afe0095e2b066bf2f4d3717c00540dab
2025-10-08 08:06:15 +00:00
Eric Mc Sween
414fc3cdb3 Merge pull request #28753 from overleaf/em-debug-revert-file
Log debug info when file not found while reverting

GitOrigin-RevId: 944db8d61a68612325a733151616ff37298dc699
2025-09-30 08:06:13 +00:00
Eric Mc Sween
84e4808812 Merge pull request #28656 from overleaf/em-restore-optimize-file-download
File restore: optimize file download from history

GitOrigin-RevId: c32afe7d2ede2372e95490f62e79266f5f6d58da
2025-09-29 08:06:56 +00:00
Eric Mc Sween
a7c64d05e8 Merge pull request #28655 from overleaf/em-restore-avoid-doc-download
File restore: avoid downloading docs unnecessarily

GitOrigin-RevId: bf5faab7510b118041aaf848f9acb3eb864b5cc4
2025-09-29 08:06:51 +00:00
Eric Mc Sween
98069966ba Merge pull request #28672 from overleaf/em-reapply-restore-optimization
Reapply file restore optimization

GitOrigin-RevId: c4479141d890e3e0af746f406a0186bf21f3d918
2025-09-25 08:05:25 +00:00
Domagoj Kriskovic
e9b1c63ed7 Revert "File restore optimization - using snapshot timestamp and file paths (#28546)"
This reverts commit 376a53e1f927cb56544e6782b47d80345655038c.

GitOrigin-RevId: 8e4ab1d4042fec8df1b62ab1c5418d873dc6f5eb
2025-09-24 08:06:06 +00:00
Domagoj Kriskovic
005eba7502 File restore optimization - using snapshot timestamp and file paths (#28546)
* Use snapshot timestamp, remove request for paths at version

* Add timestamp to core Snapshot object

* Avoid mutating function argument

* Explain assumption about editable files

* snapshot.toRaw() in getContentAtVersion

* fix project-history acceptance test

* fix history_v1 test

* fix web tests

* Include the snapshot timestamp in stored chunks

---------

Co-authored-by: Eric Mc Sween <5454374+emcsween@users.noreply.github.com>
GitOrigin-RevId: 376a53e1f927cb56544e6782b47d80345655038c
2025-09-24 08:06:02 +00:00
Antoine Clausse
46715191e3 Merge pull request #28544 from overleaf/ac-some-web-esm-migration-4
[web] Convert some Features files to ES modules (part 4)

GitOrigin-RevId: cf11a7584e39c4d4de08e2f924240e488a4066c4
2025-09-24 08:05:58 +00:00
Mathias Jakobsen
6c6048002b Merge pull request #28595 from overleaf/revert-28594-revert-28533-mj-blob-ranges-maxsize
[web+history-v1] Retry: Use range request for binary blobs in project snapshot

GitOrigin-RevId: defc279c9918695135962d65603a2941c5c4b033
2025-09-22 08:05:23 +00:00
Mathias Jakobsen
67d10e96bd Merge pull request #28594 from overleaf/revert-28533-mj-blob-ranges-maxsize
Revert "[web+history-v1] Use range request for binary blobs in project snapshot"

GitOrigin-RevId: 580491611a1b43104846f8509dd1e920f8077c9c
2025-09-22 08:05:15 +00:00
Mathias Jakobsen
6c79ce97cc Merge pull request #28533 from overleaf/mj-blob-ranges-maxsize
[web+history-v1] Use range request for binary blobs in project snapshot

GitOrigin-RevId: e72a2d481bf163b3e85361b42e30e82cf867f1cf
2025-09-22 08:05:04 +00:00
Domagoj Kriskovic
484a01a173 Use history snapshot when doing file/project restore (#28502)
* Add getDocUpdaterCompatibleRanges utility function

* use history snapshot for file/project restore

* move overleaf-editor-core from devDependencies

GitOrigin-RevId: 62481a5304ada9d931e018418be3c0719bccf1f3
2025-09-19 08:07:58 +00:00
Brian Gough
fd82788e61 Merge pull request #28506 from overleaf/bg-size-limits
add size check when cloning project (logging only)

GitOrigin-RevId: 1f56ed80a2d05b28c44fab8532d751ad8e758943
2025-09-18 08:05:52 +00:00
Tim Down
d2f5cd4e46 Merge pull request #28380 from overleaf/td-zod-history
Migrate history-related web back end to Zod

GitOrigin-RevId: 38ed56927bee4f5670604d7178b096e382c8cb65
2025-09-18 08:05:34 +00:00
Antoine Clausse
71f0b28a84 [web] Convert some Features files to ES modules (part 3) (#28494)
* Rename files to mjs

* Rename test files to mjs

* Update CODEOWNERS

* Update files to ESM

* Update test files to ESM

* Update RestoreManager.test.mjs

* Remove unused `AdminAuthorizationHelper` mock and stub

* Remove unnecessary return

GitOrigin-RevId: 2b9ef126de1d8964afbc6e5641cca36712655866
2025-09-17 08:05:02 +00:00
Eric Mc Sween
f1eadd78b7 Merge pull request #28459 from overleaf/em-history-restore-metrics
Add revert file/project timing metrics

GitOrigin-RevId: 5c701f70b8d8dcb9052c6559815e05bc3af9bcad
2025-09-15 08:05:33 +00:00
Jakob Ackermann
f8d69d05af [web] display project history blob size on admin pages (#28351)
* [history-v1] add endpoint for getting blob stats of projects

* [web] display project history blob size on admin pages

* [web] break down history storage size by text and binary blob

GitOrigin-RevId: bfa4d56cf2c503d03005c13a0f7ac38158156cd2
2025-09-10 08:06:19 +00:00
Antoine Clausse
009bc4463d Merge pull request #28273 from overleaf/ac-some-web-esm-migration
[web] Convert some Features files to ES modules (part 1)

GitOrigin-RevId: d19b024efad315143e022143e2a2683df8071744
2025-09-09 08:06:22 +00:00
Domagoj Kriskovic
c984134142 Open selected file on project restore (#28145)
* Open selected file on project restore

* check if restorationState is "restoring" before opening a file

GitOrigin-RevId: c6f4cf69ecbe55b1d1949e4524fe7e39737c5487
2025-09-03 08:05:30 +00:00
Jakob Ackermann
bd4130c147 [filestore] remove user files endpoints (#28125)
* [filestore] remove user files endpoints

* [web] remove user files integration for filestore

GitOrigin-RevId: 565fa68a659c07420ee6141d0f276b4e4d2972e0
2025-09-02 08:04:52 +00:00
Domagoj Kriskovic
e915003a61 Handle undefined rootDoc when restoring a file (#28118)
GitOrigin-RevId: f3aa32d2443f3fffbda8a10cc35d5dec3db71143
2025-08-27 08:05:43 +00:00
Domagoj Kriskovic
cffad44264 Add support for handling deleted root document in RestoreManager (#28008)
* Skip opening root document if delete originated from a file-restore

* handle project-restore origin

* Refactor isFileRestore logic

* Add support for handling deleted root document in RestoreManager

GitOrigin-RevId: 837144aa6e269cbffebf82624f58e8219fe654c4
2025-08-27 08:05:30 +00:00
Jakob Ackermann
29045b9085 [web] download binary files in clsi from filestore via new endpoints (#27505)
* [history-v1] use String.padStart instead of lodash.padStart

* [web] download binary files in clsi from filestore via new endpoints

* [server-ce] tests: Cypress.env() is parsing boolean values

* [server-ce] tests: run history migration as root

GitOrigin-RevId: bdf6c0e542531ccc4b3f13d2ed68ca0d31e580e9
2025-07-31 08:05:28 +00:00
Jakob Ackermann
81f0807fc6 [web] prepare filestore migration for Server Pro/CE (#27230)
* [web] prepare filestore migration for Server Pro/CE

* [history-v1] remove unused USER_FILES_BUCKET_NAME env var from script

* [server-ce] tests: write default docker-compose.override.yml on startup

* [server-ce] tests: extend access logging of host-admin for response

* [server-ce] tests: test text and binary file upload

* [server-ce] tests: add tests for filestore migration

* [web] simplify feature gate for filestore/project-history-blobs logic

Co-authored-by: Brian Gough <brian.gough@overleaf.com>

* [server-ce] test: fix flaky test helper

---------

Co-authored-by: Brian Gough <brian.gough@overleaf.com>
GitOrigin-RevId: f89bdab2749e2b7a49d609e2eac6bf621c727966
2025-07-22 08:06:58 +00:00
Jakob Ackermann
982f647845 [web] copy duplicated comment id into id field (#26481)
GitOrigin-RevId: accd6d9dc0165ff2cc9f8edd28c42d38b76ba909
2025-06-18 08:05:39 +00:00
Jakob Ackermann
f025f1d0cb [web] let docstore determine a projects comment thread ids (#26364)
* [docstore] add endpoint for getting a projects comment thread ids

* [web] let docstore determine a projects comment thread ids

Also fetch the comment thread ids once when reverting project.

GitOrigin-RevId: c3ebab976821509c9627962e58918f9c6ebb0e1d
2025-06-13 08:08:00 +00:00
Domagoj Kriskovic
fd1926a1c8 Preserve resolve state in history on file restore (#26302)
* Preserve resolve state in history when doing a restore

* added comment why is resovled property deleted

GitOrigin-RevId: fb1011cf98a658b302c6eef1da83fb1006bb2052
2025-06-13 08:07:26 +00:00
Miguel Serrano
923708f9f9 Merge pull request #25889 from overleaf/jpa-web-wait-for-mongo
[web] wait for DB before fetching global blobs

GitOrigin-RevId: 2beefd39ae4be4d233e2aac018d471bf949faea2
2025-05-23 11:08:40 +00:00
Eric Mc Sween
c18b3f95b2 Merge pull request #25492 from overleaf/em-paginate-changes-1
Paginate history changes endpoint

GitOrigin-RevId: 2b48044d64244404efcd2e090b682c1f571a5567
2025-05-22 08:08:09 +00:00
Jakob Ackermann
47b76a49d8 [web] start fetching load global blobs on module import (#25757)
GitOrigin-RevId: 7c1b6ed717142ad07d6ba5464aab2ecc6ebe9736
2025-05-21 08:05:59 +00:00
Jakob Ackermann
e8b5ee2ff9 [history-ot] initial implementation of using doc-level history-ot (#25054)
* [history-v1-ot] initial implementation of using doc-level history-v1-ot

* [web] fix advancing of the otMigrationStage

Use 'nextStage' for the user provided, desired stage when advancing.

Co-authored-by: Brian Gough <brian.gough@overleaf.com>

* [document-updater] document size check in editor-core

* [history-ot] rename history-v1-ot to history-ot and add types

* [history-ot] apply review feedback

- remove extra !!
- merge variable assignment when processing diff-match-match output
- add helper function for getting docstore lines view of StringFileData

Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>

* Revert "[document-updater] add safe rollback point for history-ot (#25283)"

This reverts commit d7230dd14a379a27d2c6ab03a006463a18979d06

Signed-off-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

---------

Signed-off-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
Co-authored-by: Brian Gough <brian.gough@overleaf.com>
Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
GitOrigin-RevId: 89c497782adb0427635d50d02263d6f535b12481
2025-05-08 08:05:44 +00:00
Jakob Ackermann
f0edc7ba00 [web] update the projects lastUpdated timestamp when changing file-tree (#24867)
* [misc] freeze time before any other unit test setup steps

Freezing it after other work (notably sandboxed-module imports) will
result in flaky tests.

* [web] update the projects lastUpdated timestamp when changing file-tree

GitOrigin-RevId: b82b2ff74dc31886f3c4bd300375117eead6e0cd
2025-04-16 08:05:14 +00:00
Eric Mc Sween
dd526693f5 Merge pull request #24775 from overleaf/em-bypass-project-history
Call history-v1 directly for latest history and changes

GitOrigin-RevId: 39c32dd50ff7875f82bbb2716da753a9c3e6e81d
2025-04-11 08:05:56 +00:00
Eric Mc Sween
42aea53307 Merge pull request #24754 from overleaf/em-promisify-history-controller
Promisify HistoryController

GitOrigin-RevId: e1783acb8c7ba7e00b109a4f4a514973cc3163d2
2025-04-11 08:05:52 +00:00
Mathias Jakobsen
67f3c468a1 Merge pull request #23274 from overleaf/mj-restore-main-history
[web] Restore main documents with metadata as docs

GitOrigin-RevId: f3664689704e9098c2b9e317d65e4ab2633320cb
2025-02-06 09:04:26 +00:00
Domagoj Kriskovic
69d309f6a0 Sync history and chat service resolve value on file restore (#23265)
* Sync history and chat service resolve value on file restore

* properly check resolved values

* delete resolved from emitted newCommentThreadData

* removed resolved from the comment range

GitOrigin-RevId: 6f3a14e2e14e48a2313d7b0942b6621bb42c472f
2025-02-05 09:06:11 +00:00
Jakob Ackermann
b0c9176634 [project-history] add resync for project structure only (#23271)
* [project-history] add resync for project structure only

* [project-history] block resyncProjectStructureOnly that update docs

* [project-history] tweak test description

GitOrigin-RevId: ce2749566c36e04dab21c26dd60dd75d93c0d4c0
2025-02-03 09:05:39 +00:00