Commit Graph

459 Commits

Author SHA1 Message Date
Antoine Clausse
98ea3664f2 Create script: remove_unconfirmed_emails.mjs (#23079)
* Create script: remove_unconfirmed_emails.mjs

* Update script remove_unconfirmed_emails.mjs after pairing

Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>

* Add user counts. Add timing

* Revert previous changes: just remove the fully unconfirmed emails

* Add tests on scripts/remove_unconfirmed_emails.mjs

* Update audit log so `removedEmail` is a string and doesn't break the admin-panel audit logs list

* Update remove_unconfirmed_emails to have a `--generate` and a `--consume` mode

* Update tests on remove_unconfirmed_emails

* Add tests checking that `--consume` doesn't delete any email

* Update script so `--consume` checks that emails shouldn't be deleted again!

* Update CSV path to `/tmp/...`

* Add test cases: deleted users, deleted email, comma in email

---------

Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
GitOrigin-RevId: 8c60b56bcdfa33bc6143d66c32a5f430fb76f6d7
2025-02-18 09:05:10 +00:00
Domagoj Kriskovic
8183c0785c Validate privilege levels when sending /invite request (#23533)
* Validate privilege levels when sending /invite request

* add acceptance tests

GitOrigin-RevId: 4ccd0ad3504c3c5770f5ee2b2f6d34ef746d1430
2025-02-14 09:03:37 +00:00
Jakob Ackermann
b928e865b7 [web] make user feature changes in tests more reliable (#23557)
* [web] tests: rename User.upgradeFeatures to User.upgradeSomeFeatures

The upgrades features do not match with any plan.

* [web] make user feature changes in tests more reliable

* [web] fix schema for featuresOverride in tests

* [web] log in after upgrading features

GitOrigin-RevId: ac5b19c798712926c118b221c553540b413802cd
2025-02-13 09:06:21 +00:00
Jakob Ackermann
d954fd5498 [web] dumpFolder is created on app start (#23559)
GitOrigin-RevId: e05c920f27a79a59e0c9408780b9c005b0dac350
2025-02-13 09:06:11 +00:00
Jakob Ackermann
d1410f4636 [web] avoid setting up users more than once in tests (#23558)
* [web] avoid setting up users more than once in tests

* [web] tests: simplify user exists check in User.setExtraAttributes

GitOrigin-RevId: 4c526df7c933a38ab93d7760efbd0a9490d5582a
2025-02-13 09:05:27 +00:00
ilkin-overleaf
bebc32b11d Merge pull request #23547 from overleaf/ii-flexible-group-licensing-error-assist-2
[web] Hide flexible licensing buttons for pending plans (fix)

GitOrigin-RevId: ce5b4ce4138ed7a029b840a87c5498227e3204f4
2025-02-13 09:04:57 +00:00
Eric Mc Sween
761c184c8f Merge pull request #23540 from overleaf/revert-23483-ii-flexible-group-licensing-error-assist
Revert "[web] Hide flexible licensing buttons for pending plans"

GitOrigin-RevId: 6e19c2ae2663fc0cf3335e9517e80a1eee9e2659
2025-02-12 09:05:46 +00:00
ilkin-overleaf
58ece71c7a Merge pull request #23483 from overleaf/ii-flexible-group-licensing-error-assist
[web] Hide flexible licensing buttons for pending plans

GitOrigin-RevId: 8e9b65ae9b68cdd838442e8b45f3bd8f22e72349
2025-02-12 09:05:11 +00:00
Jakob Ackermann
0a7b2004d2 [misc] silence logger when running tests (#22243)
* [misc] silence logger when running tests

* [misc] re-enable logging in some tests for scripts

* [misc] make it easy to turn on verbose logging for tests

```
LOG_LEVEL=debug make test_unit
LOG_LEVEL=debug make test_acceptance
```
GitOrigin-RevId: 219bc6d1f9cbdb89ddd7d94742920913ddde4514
2025-02-10 09:06:02 +00:00
Jakob Ackermann
b5f96b50c0 [web] disable filestore writes (#23470)
GitOrigin-RevId: 96ccd9205f9bf21420e67aaa68f8bc035eeb87d8
2025-02-10 09:05:33 +00:00
Jakob Ackermann
b0534b7f85 [web] restore downloading from history-v1 via legacy file endpoint (#23450)
GitOrigin-RevId: f6d12cfe445c7c41a62a563c9a5e7089bf94344f
2025-02-07 09:06:52 +00:00
Kristina
e3fdcdd601 Merge pull request #23131 from overleaf/kh-teardown-link-sharing-split-tests
[web] tear down link sharing split tests

GitOrigin-RevId: 449e9f368405aea1500035269428e7ae0c37d8fb
2025-02-04 09:04:25 +00:00
Antoine Clausse
3312d97a6b [web] Add tests on find_malformed_filetrees and fix_malformed_filetree, partially fix fix_malformed_filetree (#23120)
* Create tests on find_malformed_filetrees and fix_malformed_filetrees

* Remove lines that are making fix_malformed_filetree fail

These lines are causing errors such as
```
Missing file hash: 586846800000000000000000/5891271c0000000000000000 (rootFolder.0.folders.2.fileRefs.7.hash)
SaaS: likely needs filestore restore
Server Pro: please reach out to support
```

* Add snapshots of projects after fix_malformed_filetree

* Set `WRITE_SNAPSHOT` as false

* Make `deleteProjectsRecordId0` constant

* Ignore duplicated ID errors in CreateMalformedFileTrees.mjs

* Move snapshots to directory folder

* Remove unnecessary code

* Update tests to cover use cases from the scripts

* Fix: Use `new ObjectId(projectId)` instead of the string in mongo queries

* Fix: Query `rootFolder: []` to fix more than `rootFolder: { $size: 0 }`

* Remove/rename files from first draft

* Remove empty strings from expects in unrelated tests, now that `filterOutput` removes them

* Add missing `expectFixStdout` to tests

* misc: rename test util to strId

* Add "well formed filetrees" to test cases

* Use `wellFormed` variable to remove some duplication

* Update tests:
- check Missing file hash path
- remove test on string/numbers as array items

* Add test "bug: shifted arrays in filetree"

* Rename `wellFormedFile` to `wellFormedFolder`

* Fix name of the root folder to `'rootFolder'`, not `'untitled'`

GitOrigin-RevId: dc098bb7ad3ca441fe2bb72b5f5f0e3bcedbdf67
2025-01-31 09:05:27 +00:00
Miguel Serrano
8ff8e7a4bf Merge pull request #23006 from overleaf/msm-chat-capabilities-poc-2
[web] Add option to disable chat for subscription

GitOrigin-RevId: 0052d060c74c39400496f7f9f54c820398d60012
2025-01-31 09:05:18 +00:00
Eric Mc Sween
db44d0b6ee Merge pull request #22915 from overleaf/em-blob-caching
Improved caching for blobs

GitOrigin-RevId: c5113106ef239b201ae8f66bb3539a52c65ddb60
2025-01-28 09:05:16 +00:00
Jakob Ackermann
5c3353b3de Merge pull request #23099 from overleaf/jpa-fix-sessions-test
[web] add missing await in acceptance test

GitOrigin-RevId: d18d62c55609c46c5b8a583e572a415b55a81af7
2025-01-27 09:04:38 +00:00
Andrew Rumble
6cb1528495 Merge pull request #23020 from overleaf/ar-prevent-rootFolder-deletion
[web] Prevent deletes on a project's rootFolder

GitOrigin-RevId: 6d0506f207425f65d3de990a78bb1ea9b136ed1e
2025-01-23 09:05:42 +00:00
Jessica Lawshe
76c0e6f84d Merge pull request #22824 from overleaf/jel-saml-tests
[web] SAML test helper update

GitOrigin-RevId: 6a721901b0026286e0ef28ed9168c8b97cd4a200
2025-01-16 09:06:33 +00:00
Andrew Rumble
dc157392ae Merge pull request #22765 from overleaf/ar-convert-final-acceptance-tests-to-es-modules
[web] convert final acceptance tests to es modules

GitOrigin-RevId: d0d0cd3dfedbe494ce51dd6f8c180dff02429ad8
2025-01-13 09:04:50 +00:00
Brian Gough
2ce82fabab Merge pull request #22533 from overleaf/ar-only-use-history-for-blobs-when-enabled
[web] only use history for blobs when enabled

GitOrigin-RevId: 010983e9b29657d4c594e03945dca5700577bf0a
2025-01-10 09:05:32 +00:00
Eric Mc Sween
e3485f01da Merge pull request #21472 from overleaf/em-hackathon-mongo-mocks-docker
Do not mock Mongo in unit tests

GitOrigin-RevId: 7a200a4ddc8f91b14e96cf02cb4873c51fc3489a
2025-01-08 09:05:34 +00:00
Andrew Rumble
8417267075 Merge pull request #22188 from overleaf/ar-convert-modules-group-settings-to-es-modules
Convert modules/group-settings to es modules

GitOrigin-RevId: 3f1768fb91148722c0f0c181ab9b5a5a9174deca
2024-12-18 09:05:27 +00:00
Domagoj Kriskovic
71a0b48a68 Set track changes state permissions for reviewer role (#22345) (#22436)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* Add reviewer in change privilege level handler

GitOrigin-RevId: 88ec39f2b760b5d1ca6dc3a363df31c087268972
2024-12-12 09:04:46 +00:00
Domagoj Kriskovic
a038f451d4 Revert "Set track changes state permissions for reviewer role (#22345)" (#22431)
This reverts commit 6a03d2355b3fb7d7b755ed1d3ab1a080126cd2dc.

GitOrigin-RevId: 4e962bd9a547a9d6205460c9a8e9a0e835442be4
2024-12-10 13:09:42 +00:00
Domagoj Kriskovic
53dc5fbafe Set track changes state permissions for reviewer role (#22345)
* Support for adding reviewer role

* added collaboratorsGetter tests

* emit toggle-track-changes when reviewer is added

* Add reviewer in change privilege level handler

GitOrigin-RevId: 6a03d2355b3fb7d7b755ed1d3ab1a080126cd2dc
2024-12-10 13:09:14 +00:00
Domagoj Kriskovic
511fe60a9c Revert "Support for adding reviewer role (#22137)" (#22293)
This reverts commit 54064a7f961fe06f188ab449cd469cdaaf01b20a.

GitOrigin-RevId: 1dabc635756aff465d2fe9aa0d18121b081df3b0
2024-12-04 09:05:12 +00:00
Domagoj Kriskovic
f676eca2b8 Support for adding reviewer role (#22137)
* Support for adding reviewer role

* show reviewer in track changes user list

* added "review" in assertClientCanViewProject

* test if reviewer can read project

* added collaboratorsGetter tests

* eit toggle-track-changes when track changes changes

* Support for changing privilege to reviewers for invited users (#22159)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role (#22167)

* Add reviewer in change privilege level handler

* added reviewer translation

* added acceptance tests

* fix tests

* Set track changes state permissions for reviewer role

* added authorization helper tests

* added ensureUserCanReviewProjectContent middleware

* allow changing track changes only with write permissions

* removed canUserReviewProjectContent

* List projects where user is added as a reviewer (#22249)

* List projects where user is added as reviewer

* list projects in /user/projects

* fix tests

GitOrigin-RevId: 54064a7f961fe06f188ab449cd469cdaaf01b20a
2024-12-04 09:05:00 +00:00
Brian Gough
1f8a710f0d Merge pull request #22161 from overleaf/bg-issue22125
Copy blobs when duplicating project

GitOrigin-RevId: a2965082ddaa621e10cfe831b2701a019e45a9ac
2024-11-29 09:05:16 +00:00
Andrew Rumble
d97555a380 Merge pull request #22003 from overleaf/ar-handle-v1-outage-gracefully
[web] handle v1 outage gracefully

GitOrigin-RevId: 54f9800abf13846a39512224b898de6939be1d3a
2024-11-29 09:05:07 +00:00
Jakob Ackermann
652b5aaab5 Merge pull request #22183 from overleaf/jpa-zip-from-hash
[web] build project zip using history-v1 blobs with filestore fallback

GitOrigin-RevId: 2e197ae83e7ac8bcfe44091c327b721825b13a05
2024-11-28 09:06:41 +00:00
Jakob Ackermann
ce0d5fd383 Merge pull request #22177 from overleaf/jpa-file-view-hash-1
[web] migrate file-view to download from history-v1 (via web) 1/2

GitOrigin-RevId: b787e90c57af5e2704b06ba63502aa6fc09ea1df
2024-11-28 09:06:33 +00:00
Brian Gough
fe7ce48e48 Merge pull request #22096 from overleaf/bg-issue21795
Extend file upload  to create history blobs

GitOrigin-RevId: b3efac7f58d4c027ca9131867e761837ce63facb
2024-11-26 09:05:29 +00:00
Jakob Ackermann
4f25b0de91 Merge pull request #22028 from overleaf/jpa-logging
[misc] logging tweaks

GitOrigin-RevId: 7757b81b6c684955374038376035dc2bd272c4e8
2024-11-21 09:05:41 +00:00
Jakob Ackermann
9cc6f2a9d5 Merge pull request #21829 from overleaf/jpa-backup-deletion
[history-v1] backup-deletion-app: initial revision

GitOrigin-RevId: 9e05c0e16595cb8d180861ef503c7b4522110d39
2024-11-18 09:05:44 +00:00
Antoine Clausse
b0419a86f2 [web] Add audit logs for clear_sessions_set_must_reconfirm script, "must-reset-password-set" and "must-reset-password-unset" (#21776)
* Promisify clear_sessions_set_must_reconfirm.mjs

* Add test on PasswordResetTests.mjs

* Add `must-reset-password-unset` audit log

* Add `must-reset-password-set` audit log

* Add test ClearSessionsSetMustReconfirmTests.mjs

* Fixup bad copy-paste in test: `must-reset-password-set` -> `must-reset-password-unset`

* Check `must_reconfirm` before calling `removeReconfirmFlag`

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

* Fix unit test

* Use `promiseMapWithLimit`

* Add `{ script: true }` to AuditLog. Also use `undefined` instead of `null` for consistency

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 522026c82196d263c196503d899b8c57b05b31dd
2024-11-15 09:05:21 +00:00
Andrew Rumble
ac84c582b1 Clear lock after every project structure test
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: af64d6ce2c81df55923e73597c97de6f394d54bb
2024-11-13 09:05:11 +00:00
Jakob Ackermann
252533b2fd Merge pull request #21668 from overleaf/jpa-mongo-utils
[mongo-utils] create new home for batchedUpdate helper

GitOrigin-RevId: 9f61c5e367a9f4cef63b5cc4c0bbbd3ef57c8ca8
2024-11-08 09:07:09 +00:00
Jakob Ackermann
bf2ad1952c Merge pull request #21506 from overleaf/jpa-fix-batched-update-edge
[web] fix edge behavior of batchedUpdate

GitOrigin-RevId: 5d1c0b884aa02c52682d114fa66b2d9b201e724e
2024-11-04 09:04:55 +00:00
Jakob Ackermann
a7517eefcb Merge pull request #21427 from overleaf/jpa-populate-db-on-import
[web] populate db with collections on import, ahead of waitForDb() call

GitOrigin-RevId: 7eb4cd61c2052187acd9947d7060f54d9822d314
2024-11-01 09:05:15 +00:00
Liangjun Song
902ae750dc Merge pull request #21202 from overleaf/ls-scripts-to-esm-2
Migrate scripts folder to esm 2/x

GitOrigin-RevId: 1698bc4f13e026fa281d37a4914a2f997849c761
2024-10-23 08:04:53 +00:00
Liangjun Song
26f3f3e2e2 Merge pull request #21097 from overleaf/ls-scripts-to-esm-1
Migrate scripts folder to esm 1/x

GitOrigin-RevId: 4a4bc9a161f144fdb40ce3f2a0a9313b36c6df81
2024-10-21 08:04:42 +00:00
Andrew Rumble
9490251251 Update acceptance tests
GitOrigin-RevId: cf8bc3f86ccff15df8e20ceda6842dad8538d5e3
2024-10-17 08:06:13 +00:00
Andrew Rumble
e0dba75b81 Convert top level acceptance tests to ES module
GitOrigin-RevId: ab45010ec557d62576c470d2e024549e67261c66
2024-10-16 09:35:34 +00:00
andrew rumble
e128e8ea32 Convert app.js to ES modules
GitOrigin-RevId: 7819cc8c8235b93b985c1c07c7dec778c93d9134
2024-10-14 11:04:23 +00:00
Jessica Lawshe
50aad92eb9 Merge pull request #20692 from overleaf/ar-limit-length-of-user-editable-fields
[web] limit length of user editable fields

GitOrigin-RevId: 239398dd05dcde7fea0ac8415e41396ef01c2b74
2024-10-14 10:57:56 +00:00
Miguel Serrano
cd6631c105 Fix history label creation for anonymous users (#20200)
* Remove decaffeination artifacts in LabelsTests

* Remove decaffeination artifacts in LabelsManagerTests

* Fix label creation for anonymous users

* Update label creation route in MockProjectHistoryApi tests

* Support both endpoints for backwards compatibility

GitOrigin-RevId: 50ce1ba49388e50f147fb620e0425fea83301c9d
2024-10-14 10:57:33 +00:00
Miguel Serrano
3ff142d478 [web] Expose metric for active users in SP (#20130)
* [web] Expose metric for active users in SP

* Removed redundant UserHandler.setupLoginData()

In the past this method was also calling
a now deleted notifyDomainLicence(), but now
this is just an alias for populateTeamInvites()

* Added migration for `lastActive`

* Added secondary read precedence to count active users

GitOrigin-RevId: 86d6db31e1ae74ae40c6599e6acb731d8c4a04bd
2024-10-14 10:57:28 +00:00
Mathias Jakobsen
9719b3376c Merge pull request #20399 from overleaf/mj-set-import-time
[web] Set importedAt when creating linked files

GitOrigin-RevId: 06a549a20620eee33f64608d17a91d2e893f8f8a
2024-09-19 08:04:33 +00:00
Jakob Ackermann
d655cb129a Merge pull request #20168 from overleaf/jpa-email-fallback-info
[web] log emails on level INFO from fallback transport

GitOrigin-RevId: a1f63e302cf6c5fcfa82b85ff2c79182fdc58945
2024-08-30 08:04:42 +00:00
Brian Gough
dbf977a93c Merge pull request #20087 from overleaf/bg-clean-up-web-crash-tests
read crash test files from a directory

GitOrigin-RevId: 3e498bd73dc9ca97cbe96899f9c1661d430a7d75
2024-08-26 08:05:23 +00:00