Commit graph

471 commits

Author SHA1 Message Date
Jimmy Domagala-Tang
50b19c7793 Merge pull request #18850 from overleaf/ac-promisify-resync-subscriptions
Promisify resync_subscriptions

GitOrigin-RevId: c23a99683a22104815525b179d4e46d3ad568f94
2024-06-26 08:04:57 +00:00
Mathias Jakobsen
94694a6385 Merge pull request #19057 from overleaf/mj-benchmark-seed-random
[web] Add quick and dirty PRNG for seeding benchmark runs

GitOrigin-RevId: 079f9b565f17b44d7062f6b93c26f694e486c6b9
2024-06-24 12:04:46 +00:00
ilkin-overleaf
ea6f627490 Merge pull request #18912 from overleaf/ii-remove-deleted-users-from-token-access-refs-script-fix
[web] Improve the removal of deleted users from token access refs

GitOrigin-RevId: 7b79e327388e37603a6c4f227f1d4bba743d4730
2024-06-20 08:05:22 +00:00
Eric Mc Sween
8d35177b52 Merge pull request #18985 from overleaf/em-migrate-bulk
Bulk history ranges migration

GitOrigin-RevId: 0d1846b412cfcddead63a7bc15bd06a82fbb47f3
2024-06-20 08:05:05 +00:00
Eric Mc Sween
e73fdfba63 Merge pull request #18906 from overleaf/em-migrate-existing-histories-2
History ranges migration script - second attempt

GitOrigin-RevId: 60a2c04e2a72e76a58e9e179fefc4186a96fde32
2024-06-19 08:05:02 +00:00
Jessica Lawshe
c117a64ebb Merge pull request #18902 from overleaf/ar-web-script-for-salesforce-data
[web] Add script for loading v2 salesforce data

GitOrigin-RevId: 15d3c30be166d011702d1a2d4a1d960cd4b2fa8c
2024-06-18 08:05:11 +00:00
Jakob Ackermann
e36de5a62d Merge pull request #18856 from overleaf/jpa-server-ce-shutdown
[server-ce] improve shutdown procedure

GitOrigin-RevId: 5a99868d17f597c366e42625cd39f05146dcb682
2024-06-18 08:04:04 +00:00
ilkin-overleaf
b34be6bea4 Merge pull request #18653 from overleaf/ii-invite-token-create-hmac
[web] Add HMAC tokens for project invitations

GitOrigin-RevId: 02fa01e24790c9a87f57ff9346f5346658d4dd46
2024-06-17 08:04:17 +00:00
Antoine Clausse
262a92083a Don't throw cron job when some PayPal collection fails (#18795)
* Don't throw cron job when some PayPal collection fails

Follow-up of https://github.com/overleaf/internal/pull/18414 and https://github.com/overleaf/internal/pull/18572

This was causing `Heartbeat [cron-web-collect-paypal-prod] is expired.`
And the cron to rerun (altogether three times a day, instead of once a day)

https://cloudlogging.app.goo.gl/W4qBPFDeTUkRQ8J27

* Update tests

GitOrigin-RevId: a6a29cc84c0c72fd86b2e3a9739669d3a5fb0be5
2024-06-11 08:04:04 +00:00
Antoine Clausse
01e1286a8b In PayPal collect invoices script: Update throw unsuccessful invoices collections (#18572)
* Remove throw on `INVOICES_COLLECTED_SUCCESS.length === 0`

Effectively reverts 038377b511

See: https://digital-science.slack.com/archives/C20TZCMMF/p1716973110408049

* Update tests so they don't expect rejections

* Reject when some invoice collection failed

GitOrigin-RevId: aa37f7fa37c96b8624e87d94be675d115e3250a9
2024-05-30 08:04:31 +00:00
Antoine Clausse
554be73a36 In collect_paypal_past_due_invoice.js, iterate over each page instead of gathering data from all pages at first (#18414)
* Create `getPaginatedEndpointIterator` to iterate each page

* Create `waitMs` util, it will replace `slowCallback`

* Make `handleAPIError` async

* Make `isAccountUsingPaypal` async

* Make `attemptInvoiceCollection` async

* Make `attemptInvoicesCollection` async

* Use `await` instead of `new Promise`

* Remove unused callbackified `attemptInvoiceCollection`

* Run `attemptInvoiceCollection` for each page instead of gathering all pages in the beginning

* Add test on fetching multiple pages of invoice

GitOrigin-RevId: 2674b18c6ca5732b873fb2bc71b515909006f93d
2024-05-27 10:23:18 +00:00
Eric Mc Sween
876ee4d967 Merge pull request #18225 from overleaf/em-typescript-eslint
Add typescript-eslint rule: no-floating-promises

GitOrigin-RevId: 8c3decdff537c885f5bfeb5250b7805480bc6602
2024-05-27 10:22:20 +00:00
Antoine Clausse
3300811d3a [web] Simplify removeSessionsFromRedis signature (#18440)
* Simplify `removeSessionsFromRedis` signature

* Update usage of `removeSessionsFromRedis`

* Fix tests around `removeSessionsFromRedis`

* Add comments "remove all sessions except the current session"

GitOrigin-RevId: 03bf99c14faf2c8e403bc4bcc16463a70e031284
2024-05-27 10:21:30 +00:00
Antoine Clausse
78a0bc2b05 [web] Convert RecurlyWrapper functions to async (#18384)
* Rename `RecurlyWrapper` to `promises`, as it will only contain the promises soon

* Update `apiRequest`

* Update `_parseXml`

* Update `_parseXmlAndGetAttribute`

* Update `_parse*Xml`

* Update `updateAccountEmailAddress`

* Update `checkAccountExists`

* Update `createAccount`

* Update `createBillingInfo`

* Update `setAddressAndCompanyBillingInfo`

* Update `createSubscription`

* Update `_createPaypalSubscription`

* Update `_handle422Response`

* Update `_createCreditCardSubscription`

* Update `createSubscription`

* Update `getSubscriptions`

* Update `getSubscription`

* Update `getPaginatedEndpoint`

* Update `getAccount`

* Update `getAccountActiveCoupons`

* Update `getCoupon`

* Update `getBillingInfo`

* Update `getAccountPastDueInvoices`

* Update `attemptInvoiceCollection`

* Update `updateSubscription`

* Update `createFixedAmmountCoupon`

* Update `lookupCoupon`

* Update `redeemCoupon`

* Update `extendTrial`

* Update `listAccountActiveSubscriptions`

* To find which functions to add as callbackified, I used this Regex:
`RecurlyWrapper\.(?!promises)[^.\s]*`

And after adding callbackified functions, we're left with no results with the Regex:
`RecurlyWrapper\.(?!promises|apiUrl|_buildXml|_parseXml|attemptInvoiceCollection|createFixedAmmountCoupon|getAccountActiveCoupons|getBillingInfo|getPaginatedEndpoint|getSubscription|updateAccountEmailAddress)[^.\s]*`

* Update unit tests

* Test `getSubscription` both as "promise" and as "callback"

I'm not sure if we want to generalize this.

* Fix: add missing `await`s (!!)

* Change `apiRequest` to reject errors instead of resolving it in an object

* Fixup for CollectPayPalPastDueInvoice test

* Fix: callbackify `getSubscriptions` (!!)

* Replace `.then(...)` chain by multiple `await`

* Fixup `attemptInvoicesCollection`: prevent reading length of undefined

* Use `return await` when returning promises

Per https://github.com/overleaf/internal/pull/18384#pullrequestreview-2065738771

GitOrigin-RevId: ceda755b24fd29f97a27e60ac5db9bc7e369f932
2024-05-27 10:21:26 +00:00
Antoine Clausse
25d8e053be [web] Update revokeAllUserSessions and rename it to removeSessionsFromRedis (#18360)
* Fix `revokeAllUserSessions` call in `_cleanupUser`

The user object should be passed, not the _id

* Change `revokeAllUserSessions` signature, take `req` and `stayLoggedIn` arguments

* Update uses of `revokeAllUserSessions`

* Fix promisified `revokeAllUserSessions` args

* Update tests

* Destroy or Regenerate the session in the end of `revokeAllUserSessions`

Per https://github.com/overleaf/internal/issues/17036#issuecomment-1938398570

* Revert "Destroy or Regenerate the session in the end of `revokeAllUserSessions`"

This reverts commit fe30734dbe45b27d2931d2e43a711d591bb85787.

* Rename `revokeAllUserSessions` to `removeSessionsFromRedis`

* Fixup tests

* Fix: add optional chaining in `req.sessionID` (!!)

GitOrigin-RevId: d41676bf00f463230af495e09c65fb9ee521f49f
2024-05-20 08:04:12 +00:00
Antoine Clausse
d7f0c66d86 [web] Rename team name IEEECollabratec to IEEEPublications (#18387)
* Replaces all `IEEECollabratec` by `IEEEPublications`

* Revert change in migration

GitOrigin-RevId: f0445b726abdc5f65b7a0613d9979b081332685e
2024-05-17 08:05:06 +00:00
Brian Gough
598eaf08fd Merge pull request #17816 from overleaf/bg-eslint-rule-for-find-with-await
add eslint rule for find with await

GitOrigin-RevId: 7e78104e610073ff3c151d7314753c8301a8c787
2024-05-17 08:04:58 +00:00
Antoine Clausse
9419cc3b37 [web] Add tests to collect_paypal_past_due_invoice.js + update logging (#18310)
* Fix: Invoices collected array length comparison

Update the code with the correct condition to respect the intent of the previous implementation ("exit with non zero code when no invoicess were processed").
See 5476f39984

However, I'm not sure if erroring when no invoices are collected is actually what we want to do.

* Wrap `collect_paypal_past_due_invoice` script and export the function

* Fixup typo `accoutns`

* Log invoices collection data before throwing

* Add note: `handleAPIError` is silencing the errors

* Create a test on `collect_paypal_past_due_invoice`

* Replace `console.log` by `@overleaf/logger` (bunyan)

Our `console.warn` show up as Errors (in red) in GCP. For example the following is an error in GCP:
```
Errors in attemptInvoiceCollection with id=2693634 OError: Recurly API returned with status code: 400
```
https://github.com/overleaf/internal/blob/5476f39/services/web/scripts/recurly/collect_paypal_past_due_invoice.js#L9

---

Does it correctly set the levels as warnings if we use `@overleaf/logger`

GitOrigin-RevId: 37c8bdf4afd8cef4706700aafb44480ec8966a74
2024-05-15 08:04:46 +00:00
Antoine Clausse
a26c655220 Delete 3 migration scripts for compile-timeouts (#18163)
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 2d66052994159b6d902b807f02488095d65562e1
2024-05-01 08:05:00 +00:00
Antoine Clausse
cdd79e8ec0 Fix: unset recent users featuresUpdatedAt after wrong update (#18149)
* Copy previous script

* Remove `featuresUpdatedAt` that was wrongly set on recent users

* Fix! `signupDate` -> `signUpDate`

* Add test on `migration_compile_timeout_60s_to_20s_fixup_new_users.js`

* style: `$unset: { featuresUpdatedAt: 1 }` -> `$unset: { featuresUpdatedAt: '' }`

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

* Add comment on test (https://github.com/overleaf/internal/pull/18149#discussion_r1582999534)

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

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 408f5c7d48e60722aba736167b8e8858e9570d99
2024-04-30 08:04:33 +00:00
Antoine Clausse
711d50a2f1 [web] Create script to update forgotten featuresUpdatedAt after the migration to 20s compile timeout (#18113)
* Copy `migration_compile_timeout_60s_to_20s.js` script

* Update `featuresUpdatedAt`

* Add a comment about `featuresUpdatedAt` in migration_compile_timeout_60s_to_20s.js

* Fix test on migration_compile_timeout_60s_to_20s.js

* Fix: Include users having `featuresUpdatedAt` undefined in the update

* Add test on `migration_compile_timeout_60s_to_20s_fixup_features_updated_at`

GitOrigin-RevId: 4b2baf955a6a9f39bf9ce00b7839af551064c6cb
2024-04-30 08:04:28 +00:00
roo hutton
2469c93da4 Merge pull request #17870 from overleaf/bg-node-upgrade-18-20-2
upgrade node to 18.20.2

GitOrigin-RevId: e4ac30c740ced3885353f1472cf690eb5ec0ece1
2024-04-24 08:05:16 +00:00
Antoine Clausse
b2ef7a935f [web] Use localized number formatting for currencies (#17622)
* Add a unit test on `SubscriptionFormatters.formatPrice`

* Add JSDoc to `formatPrice`

Also: Name the functions before exporting:
This fixes my IDE (WebStorm) navigation

* Make `'USD'` the default param instead of reassigning

* Create `formatCurrency` function

* Use `formatCurrency` in SubscriptionFormatters

* Use an `isNoCentsCurrency` logic for `CLP` `JPY` `KRW` `VND`

And remove custom `CLP` logic and locale

* Add `locale` param to `formatPrice`

* Generate `groups.json` and `localizedPlanPricing.json`

```
bin/exec web node ./scripts/recurly/recurly_prices.js --download -o prices.json
bin/exec web node ./scripts/plan-prices/plans.js -f ../../prices.json -o dir
```

* Update scripts/plan-prices/plans.js to generate numbers instead of localized amounts

* Generate `groups.json` and `localizedPlanPricing.json`

```
bin/exec web node ./scripts/recurly/recurly_prices.js --download -o prices.json
bin/exec web node ./scripts/plan-prices/plans.js -f ../../prices.json -o dir
```

* Remove generation of `plans.json`

As /services/web/frontend/js/main/plans.js was removed in https://github.com/overleaf/internal/pull/12593

* Sort currencies in alphabetical order in scripts/plan-prices/plans.js

* Generate `groups.json` and `localizedPlanPricing.json`

```
bin/exec web node ./scripts/recurly/recurly_prices.js --download -o prices.json
bin/exec web node ./scripts/plan-prices/plans.js -f ../../prices.json -o dir
```

* Use `formatCurrency` in price-summary.tsx

* Use `formatCurrency` in Subscription Pug files

* Fix unit tests SubscriptionHelperTests.js

* Remove unused `currencySymbol`

* Change to `formatCurrency` in other React components

* Add `CurrencyCode` JSDoc types

* Duplicate `formatCurrency` into services/web/app/src/util

* Wrap tests in a top-level describe block

* Use `narrowSymbol`

* Fix tests with `narrowSymbol` expects

* Revert deletion of old `formatPrice` in SubscriptionFormatters.js

* Rename `formatCurrency` -> `formatCurrencyLocalized`

* Revert deletion of `CurrencySymbol`

* Add split-test in SubscriptionController.js

* Add split-test in SubscriptionViewModelBuilder.js

* Add split-test in plans

* Add split-test in subscription-dashboard-context.tsx

* Add split-test in 4 more components

* Update tests

* Show currency and payment methods in interstitial page

* Fix `&ndash;` being printed. Use `–` instead

* Fix test with NOK

* Storybook: Fix missing `SplitTestProvider`

* Storybook: Revert "Remove unused `currencySymbol`"

This reverts commit e55387d4753f97bbf8e39e0fdc3ad17312122aaa.

* Replace `getSplitTestVariant` by `useSplitTestContext`

* Use parameterize currencyFormat in `generateInitialLocalizedGroupPrice`

* Fixup import paths of `formatCurrencyLocalized`

* Replace `% 1 === 0` by `Number.isInteger`

* Add comment explaining that any combinations of languages/currencies could happen

* Fixup after rebase: import `useSplitTestContext`

* Revert "Remove SplitTestProvider from subscription root"

This reverts commit be9f378fda715b86589ab0759737581c72321d87.

* Revert "Remove split test provider from some tests"

This reverts commit 985522932b550cfd38fa6a4f4c3d2ebaee6ff7df.

GitOrigin-RevId: 59a83cbbe0f7cc7e45f189c654e23fcf9bfa37af
2024-04-19 08:03:54 +00:00
Antoine Clausse
616bd0df16 Merge pull request #17925 from overleaf/jpa-ac-20s-timeout-migration-logging-tweaks
[web] timeout 20s split-test teardown cleanups (remove override, remove tests, ...)

GitOrigin-RevId: 8d8c44539cf45d0f5142f84cf8372cecda3bf77a
2024-04-17 08:04:30 +00:00
Jakob Ackermann
3df0fe82ce Merge pull request #17926 from overleaf/jpa-batched-update-sorting
[web] batchedUpdate: use explicit sorting to find first record to update

GitOrigin-RevId: 6f57b92a4e5907f307618bd98642b4874018e9fa
2024-04-17 08:04:09 +00:00
Antoine Clausse
d35204033f Merge pull request #17909 from overleaf/ac-tear-down-compile-timeout-tests-2
[web]  Remove split-tests `compile-backend-class*` and `compile-timeout-20s*` (attempt 2)

GitOrigin-RevId: 5658f2977d3e7089eec5bbe7a33eee81c153e41d
2024-04-16 08:04:08 +00:00
Antoine Clausse
491bc2628d Merge pull request #17899 from overleaf/revert-17700-ac-tear-down-compile-timeout-tests
Revert "[web] Remove split-tests `compile-backend-class*` and `compile-timeout-20s*`"

GitOrigin-RevId: d5070ced06adbd435e782a44b7ef767e395bd6a0
2024-04-15 08:04:37 +00:00
Antoine Clausse
2dd10c7fee [web] Remove split-tests compile-backend-class* and compile-timeout-20s* (#17700)
* Remove split-tests of `compile-timeout-20s` and `compile-timeout-20s-existing-users`

* Remove `NEW_COMPILE_TIMEOUT_ENFORCED_CUTOFF` variables

* Revert timeout override `60` -> `20`

* Update settings.overrides.saas.js: `compileTimeout: 20`

* Remove `compile-backend-class-n2d`

* Remove `force_new_compile_timeout`

* Remove `showNewCompileTimeoutUI`

* Remove `compileTimeChanging`

* Simplify code by removing segmentation object

* Remove `CompileTimeoutChangingSoon`

* Remove `user.features.compileTimeout = '20 (with 10s prompt)'`

* Remove `CompileTimeWarning`

* Remove `TimeoutUpgradePrompt` (old)

* Remove `compile-backend-class`

* Remove unused translations

* Update tests

* Fix: Show `CompileTimeout` even if `!window.ExposedSettings.enableSubscriptions`

* Create script to migrate users to 20s compileTimeout

* migration script: exclude `compileTimeout: 20` from the match

* migration script: use `batchedUpdate`

* Remove `showFasterCompilesFeedbackUI` and `FasterCompilesFeedback`

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

* Remove `_getCompileBackendClassDetails`, simplify definition of `limits` object

* Remove `Settings.apis.clsi.defaultBackendClass`

* Remove unnecessary second scan of the whole user collection in dry mode

* Override `timeout` to 20 for users having `compileGroup === 'standard' && compileTimeout <= 60`

* Remove second `logCount`: re-run the script in dry-mode if you want to see that count

* Use secondary readPreference when counting users

* Fix script setup and exit 0

* Fix: Remove `user.` from query path!

* Add acceptance test on script migration_compile_timeout_60s_to_20s.js

GitOrigin-RevId: 3cb65130e6d7fbd9c54005f4c213066d0473e9d8
2024-04-15 08:04:24 +00:00
Brian Gough
a9d1ddcb22 Merge pull request #17748 from overleaf/bg-node-security-upgrade-2024-04-05
upgrade node version to 18.20.1

GitOrigin-RevId: 28f8f7c7f63285f7b7355e65713d9ed2dbda8a0e
2024-04-08 08:04:41 +00:00
David
a41879b1a0 Merge pull request #17645 from overleaf/dp-ac-ieee-deprecation-script-remove-users
Create a script to remove users from IEEECollabratec

GitOrigin-RevId: 028537722534ba0091cb8c50c8d0a8e6084af22d
2024-03-29 09:04:17 +00:00
Antoine Clausse
8b670f4378 Create a script to extract OnboardingDataCollection (#17657)
* Create a script to extract OnboardingDataCollection

* Add `userId` to the CSV

* Add `firstName` and `lastName` booleans to the CSV

GitOrigin-RevId: ad1c8b9f88358553651f55563dad597767ab7a88
2024-03-28 09:04:33 +00:00
David
6fef715316 Merge pull request #17611 from overleaf/dp-unlink-sso-script
Add script to unlink a third party identifier

GitOrigin-RevId: ded0672121fdf8c6cf30f94580f4491af9321dd7
2024-03-26 09:04:40 +00:00
Alf Eaton
6cc2db3cdd Merge pull request #17525 from overleaf/ae-upgrade-prettier
Upgrade Prettier to v3

GitOrigin-RevId: 6f1338f196408f3edb4892d5220ad3665ff1a5bc
2024-03-26 09:04:05 +00:00
David
6d55f2e09d Merge pull request #17457 from overleaf/dp-local-collabratec-helpers
Add oauth/create_token.js script for creating oauth tokens locally

GitOrigin-RevId: 5020a5b1946006da020e15afd2ddc1d04cbb8fed
2024-03-26 09:04:00 +00:00
roo hutton
3dac268d1f Merge pull request #17529 from overleaf/rh-sanitize-html
upgrade sanitize-html to 2.12.1 in web/scripts/translations

GitOrigin-RevId: 83e42beb3c091c3d7900c1f95a0b897ea2969522
2024-03-22 09:03:16 +00:00
David
af7ca5d212 Merge pull request #17586 from overleaf/dp-fix-IEEE-script
Fix notification deletion in IEEE script

GitOrigin-RevId: cb921f87290202e3116aeafc3341d3bff782d6fa
2024-03-20 09:03:06 +00:00
David
3ca09c07a1 Merge pull request #17508 from overleaf/dp-ac-ieee-deprecation-notifications
Update notifications for IEEE Retirement

GitOrigin-RevId: f4e02e5fd838c2b1a6227c86f48bb12dd6bdb9a3
2024-03-18 09:04:32 +00:00
ilkin-overleaf
1c34a3fa68 add missing token access fields to projects (#17372)
GitOrigin-RevId: d2eca00c40af65f0309f4b196fc3b5f043761729
2024-03-06 17:27:26 +00:00
ilkin-overleaf
7130a981b7 Merge pull request #17294 from overleaf/ii-token-access-null-values-2
[web] Use secondary when fixing token access values in projects

GitOrigin-RevId: 2111b20630530e2c8d09120a783c84efe6e976ed
2024-02-28 10:24:00 +00:00
Brian Gough
9127e59599 Merge pull request #17291 from overleaf/bg-purge-non-logged-in-sessions
purge sessions using mget/del with multiple keys

GitOrigin-RevId: 9a4c0d1dee1f349282a154da9d25cb78a5bedb77
2024-02-27 17:02:10 +00:00
ilkin-overleaf
b04247dd5a Merge pull request #17023 from overleaf/ii-token-access-null-values
[web] Fix projects token access values

GitOrigin-RevId: f0c6a4993e42320c06753cb65198138afe55b71a
2024-02-26 09:03:13 +00:00
Jakob Ackermann
39189978ac Merge pull request #17170 from overleaf/jpa-node-18-19-1
[misc] upgrade Node.js to 18.19.1

GitOrigin-RevId: 1bd2008682b585c3fccc65f74c90ba7fc9edc023
2024-02-20 09:04:55 +00:00
Jakob Ackermann
8523c21158 Merge pull request #16948 from overleaf/jpa-rails-sharelatex-rebranding-step-2
[web] migrate v1 api calls away from ShareLaTeX branded endpoints

GitOrigin-RevId: af08ee029d0cee8f0f171d21b4f2b0b76222b3f8
2024-02-13 09:03:35 +00:00
Tim Down
56a72690d5 Merge pull request #16521 from overleaf/td-ieee-collabratec-notification
Add notification and script for IEEE Collabratec users

GitOrigin-RevId: 7f463baa172514d9f1d37f99a02b311b8f925cd8
2024-01-18 09:04:44 +00:00
Eric Mc Sween
b0f3f00c43 Merge pull request #16368 from overleaf/em-remove-project-archiver-code
Remove project-archiver related code

GitOrigin-RevId: b3331033658c14a7c4d8745fd7085cd7c65c94bc
2024-01-05 09:03:21 +00:00
Jimmy Domagala-Tang
ebd2a2f5fe Merge pull request #16353 from overleaf/em-typescript-in-web-backend
Enable type checking in the web backend

GitOrigin-RevId: cc8e34777c89704765fcd9b973aed806c3ae9016
2024-01-04 09:03:43 +00:00
Mathias Jakobsen
c371732e6e Merge pull request #16186 from overleaf/mj-mongo-object-id
[web] Use constructor for ObjectId

GitOrigin-RevId: 9eb8b377ea599605b72af237d1ab12f4d8287162
2023-12-19 09:04:02 +00:00
Jakob Ackermann
92dabf236c Merge pull request #16045 from overleaf/revert-16012-jpa-purge-legacy-pw
Revert "[web] purge legacy passwords"

GitOrigin-RevId: 59f2094b853139ffa96a6803c97aebe4ba3c35ee
2023-11-30 09:04:04 +00:00
Jakob Ackermann
5ea17d452f Merge pull request #16012 from overleaf/jpa-purge-legacy-pw
[web] purge legacy passwords

GitOrigin-RevId: db779de632e1ac96cce341d79ff251908640ea72
2023-11-30 09:03:52 +00:00
Jakob Ackermann
9dca97cb50 Merge pull request #15923 from overleaf/jpa-tweak-delay-in-seconds
[web] allow disconnect_all_users.js --delay-in-seconds=0

GitOrigin-RevId: f52f26588da502ab43724854a3fe138347767f09
2023-11-27 09:04:02 +00:00
Brian Gough
04e6819538 Merge pull request #14217 from overleaf/bg-node-18-stress-test-file-buffer
add files option  for create blob in stress_test.js

GitOrigin-RevId: be8f29240007ec6ef3f95b10b548f09235181216
2023-11-15 09:03:01 +00:00
Miguel Serrano
80e170967b Merge pull request #15635 from overleaf/jpa-safer-disconnect
[web] make disconnect_all_users script safer

GitOrigin-RevId: 2b17478b27b516ccdf15ade41d81c75176c8a0cd
2023-11-10 09:03:43 +00:00
Brian Gough
d3adcff0f1 Merge pull request #15544 from overleaf/bg-misc-use-literal-paths
Replace APP_ROOT and other variables with literal paths in web imports

GitOrigin-RevId: 138f03ad9355c8c6c92a206b0e54573234a6f65d
2023-11-02 08:53:03 +00:00
Jakob Ackermann
f061a4add4 Merge pull request #15506 from overleaf/jpa-node-18-18-2
[misc] upgrade Node.js from 18.18.0 to 18.18.2

GitOrigin-RevId: 747783fcb9c2a09d79a82268531f612d1ad157be
2023-11-01 09:02:48 +00:00
Alf Eaton
0124712cd2 Restore escaped standalone ampersands in translations (#15373)
GitOrigin-RevId: 8f505ea4906d9adfddfd72b7609c0c3e465f6b56
2023-10-24 08:03:18 +00:00
Eric Mc Sween
680ebae30b Merge pull request #15172 from overleaf/em-promise-utils
Move util/promises from web into a shared library

GitOrigin-RevId: fe1980dc57b9dc8ce86fa1fad6a8a817e9505b3d
2023-10-20 08:04:05 +00:00
M Fahru
e53f3bb158 Merge pull request #15044 from overleaf/mf-send-warning-to-users-with-personal-and-group-subscriptions
Show notification warning to user with both personal and group subscriptions

GitOrigin-RevId: 7f46d7af10389f552175ce26fae9469e0167f95b
2023-10-18 08:05:04 +00:00
Alf Eaton
89944cb254 Merge pull request #15103 from overleaf/ae-postcss-extra
Upgrade postcss in non-workspace packages

GitOrigin-RevId: 58dfa75ddb1d000849e16a44f258a0126b048ad4
2023-10-06 08:04:07 +00:00
Jakob Ackermann
d76c0e2688 Merge pull request #14991 from overleaf/jpa-log-tree
[web] consolidate logTree helper into scripts folder

GitOrigin-RevId: d98a04f1753ba485f835312198f4c79917f7566d
2023-09-28 08:04:17 +00:00
Jakob Ackermann
a2cf7b459c Merge pull request #14902 from overleaf/jpa-node-18-18-0
[misc] upgrade Node.js to latest LTS 18.18.0

GitOrigin-RevId: 96c7171065ceb8797c28efa4ab331d86a84868d2
2023-09-25 08:04:25 +00:00
Brian Gough
601365bcc6 Merge pull request #14610 from overleaf/bg-filter-csv-by-registered-user-domains
add script to filter csv by user email domains

GitOrigin-RevId: d0faf1fd8ace2ec1bde0ffa5b4595e0894952119
2023-09-04 08:05:03 +00:00
Jakob Ackermann
0c767f67c9 Merge pull request #14579 from overleaf/jpa-bench-bcrypt
[web] add script for benchmarking bcrypt performance

GitOrigin-RevId: c87ef9485323630ddb10b3bed2ed64f8f6812541
2023-09-01 08:04:01 +00:00
Alf Eaton
28a7c13887 Fix path to Lezer LaTeX examples (#14364)
GitOrigin-RevId: bcabe1b73f09078367976456e4d1fddc02688b80
2023-08-18 08:05:18 +00:00
Jakob Ackermann
5e9498c528 Merge pull request #14280 from overleaf/jpa-latest-node-18
[misc] upgrade Node.js to latest version of 18, 18.17.1

GitOrigin-RevId: 58328bbd630686877c0db6266593ef186851bcc5
2023-08-15 08:03:33 +00:00
Jakob Ackermann
a2322f090a Merge pull request #14198 from overleaf/jpa-history-migration
[server-pro] prepare hotfix 3.5.11

GitOrigin-RevId: c4950a327e472c9cfe1af93599dd5a9a54bb956b
2023-08-11 08:04:01 +00:00
Jakob Ackermann
a797fb2be7 Merge pull request #14138 from overleaf/bg-em-jpa-mj-node-18
Upgrade all services to Node 18

GitOrigin-RevId: c53cd1aaab2fe99b51186911bb068f9fe31a9469
2023-08-03 08:03:56 +00:00
Jakob Ackermann
655e40716b Merge pull request #14104 from overleaf/jpa-translations-npm-audit-fix
[web] scripts: translations: run npm audit fix

GitOrigin-RevId: f0e699673ef114c6c67017df79c22936306aded6
2023-08-02 08:03:56 +00:00
ilkin-overleaf
cdee7f7715 Merge pull request #14070 from overleaf/ii-remove-xlsx-package
Remove xlsx package from plans prices generator

GitOrigin-RevId: 7e190ce4739c5d655750e1c286ed1663f6783c49
2023-07-31 08:04:07 +00:00
Tim Down
800c9d63b4 Merge pull request #14048 from overleaf/mj-recurly-script-update
[web] recurly resync script update

GitOrigin-RevId: 798cb73f46b763f6ece6b12d63fe82fbcc6c2920
2023-07-28 08:04:14 +00:00
Christopher Hoskin
c134619684 Merge pull request #14031 from overleaf/csh-fix-purge_non_logged_in_sessions
Use websessions redis in purge script

GitOrigin-RevId: e96050fdde2daf07602cef9599de7e9df8ce93c3
2023-07-26 08:04:44 +00:00
Jakob Ackermann
c7c77d0851 Merge pull request #13946 from overleaf/jpa-i18n-variable-check-ci
[web] flag mismatching translations variables in CI

GitOrigin-RevId: 33bfda0975258a18a07db5057bd3a57ee9ad4b6b
2023-07-21 08:04:06 +00:00
Mathias Jakobsen
a702d00477 Merge pull request #13191 from overleaf/mj-translate-danish
[web] Add missing danish translations

GitOrigin-RevId: e430238b498100e2ccb50aff443b9b28f22368b6
2023-07-20 08:04:26 +00:00
Jakob Ackermann
9b6dfef590 Merge pull request #13909 from overleaf/jpa-i18n-script-tweaks
[web] scripts: translateLocales: tweaks

GitOrigin-RevId: 79deb3ccae9c55ab71b0e8f44fe08f240c9f695f
2023-07-18 08:04:49 +00:00
Eric Mc Sween
28e87a9314 Merge pull request #13760 from overleaf/em-fetch-utils-web
Use fetch-utils in web

GitOrigin-RevId: cbd0298200bbe42567c6e94934bfb5114fa9b66f
2023-07-17 11:02:40 +00:00
Thomas
8efac32c8a Add LATAM currencies/prices to plan and group settings/scripts (#13661)
* Add LATAM currencies to plan-prices generator script

* Add LATAM prices to web configs

* Add LATAM currencies to group plan price formatting

* Use toLocaleString to format currencies for LATAM regions

GitOrigin-RevId: ce672043bef16298c87efa007eac23b004be8205
2023-07-17 11:01:00 +00:00
Christopher Hoskin
8e08c389b7 Merge pull request #13674 from overleaf/mj-translations-fix
[web] Update dependency for OneSky translations

GitOrigin-RevId: 217ab41186a0edf5a6dd56ce6b87c9f3c4e8690e
2023-07-17 10:52:25 +00:00
Mathias Jakobsen
67e7621633 Merge pull request #13572 from overleaf/mj-bibtex-grammar
[cm6] Add support for bibtex

GitOrigin-RevId: 28bc8e47c53df1612c1e30cf690e893b0bbf500c
2023-07-17 10:47:59 +00:00
Alexandre Bourdin
ded4de3349 Merge pull request #13558 from overleaf/ab-group-sync-check-user-id-format
[web/cron] Check that the userId is a valid mongo ID

GitOrigin-RevId: 0c5fce5c0e474ae9d8ad8683bccade2e0b74b0c7
2023-07-17 10:42:02 +00:00
Alexandre Bourdin
c4db2fa4ca Merge pull request #13129 from overleaf/ab-fix-sync-group-memberships-cron
[web] Fix sync group subscription memberships script

GitOrigin-RevId: 94cf2cfed09acba0f2d8c2c05b27cb2f0cabe1bb
2023-07-17 10:41:30 +00:00
Jimmy Domagala-Tang
6f0f4a87ad Merge pull request #12950 from overleaf/bg-stress-test
add stress tests for services

GitOrigin-RevId: ac29c2427cb003059cd507dbdd133f996cd6221b
2023-07-17 10:38:41 +00:00
Jimmy Domagala-Tang
cfb1d28a06 Merge pull request #13349 from overleaf/jdt-delete-splittest-version-dupes
Jdt delete splittest version dupes

GitOrigin-RevId: 7e56bdb8af97cad885a6d32d9bd118ef23f3bce9
2023-07-17 10:38:31 +00:00
Miguel Serrano
7e6613a1a0 Merge pull request #13327 from overleaf/msm-web-track-changes-cleanup
[web] Cleanup track-changes from web

GitOrigin-RevId: 8cef709ec5e91e4ffe8cd06826038ed84f36ef67
2023-07-17 10:28:12 +00:00
Alexandre Bourdin
50ee0ae6ea [web] Script to prompt for locale translations (#13263)
* Script to prompt for locale translations

* Update prompt format

* Update script

* Update script

* Script improvements

* Consistent use of fs functions

* Simplified argument parsing and improved confirmation formatting

GitOrigin-RevId: 678b7b1397a6b958e2832595768b5bfce6a5b727
2023-06-02 08:06:13 +00:00
Miguel Serrano
ae35d880ee Merge pull request #13284 from overleaf/msm-fix-history-force-clean
[web] Fix `--force-clean` for history migration

GitOrigin-RevId: 747154e8de3c64b79af8705b7f6155b966d6fa71
2023-06-02 08:05:25 +00:00
Eric Mc Sween
8a0a67e2bb Merge pull request #12880 from overleaf/em-hash-oauth-secrets-4
Hash secrets when creating OAuth clients

GitOrigin-RevId: 5fb05bd825ceaabda635fe554a95879773aa3396
2023-05-04 08:06:12 +00:00
Eric Mc Sween
05f963d17d Merge pull request #12878 from overleaf/em-hash-oauth-secrets-2
Script for hashing OAuth secrets

GitOrigin-RevId: 7e2198ff9b41a24b1ca84768c24f3f653243c030
2023-05-02 19:46:13 +00:00
Miguel Serrano
d2172e5179 [web] Issue Oauth2 access tokens (#12788)
* [web] Issue Oauth2 access tokens

* [web] Add partial index for `oauthAccessTokens.user_id` for Personal Access Tokens

* [web] script to create personal access tokens

GitOrigin-RevId: 796e8d23a6799a87ac6096c686139c6290668b83
2023-04-28 08:04:10 +00:00
Miguel Serrano
fe1dad8c0b [web/scripts] Clean legacy history data (#12812)
* [web/scripts] Clean legacy history data

GitOrigin-RevId: ce91ca69a9f4e8b340e659d0b468852abe01e6fd
2023-04-27 08:07:07 +00:00
Brian Gough
80fdef796c Merge pull request #12817 from overleaf/bg-plan-scripts
refactor plan-prices scripts and add new currency (INR)

GitOrigin-RevId: 12b515143e0426f19b2d224569bf9c5490b7d72a
2023-04-27 08:06:06 +00:00
Brian Gough
c3ad6645fe Merge pull request #12816 from overleaf/bg-recurly-scripts-cleanup
sort recurly script JSON outputs for consistency

GitOrigin-RevId: e5dc789fd834e9864912e3ef14ac3e6bf8eb7d99
2023-04-27 08:05:52 +00:00
Brian Gough
72abda9f29 Merge pull request #12757 from overleaf/bg-clean-up-recurly-prices-script
clean up recurly prices script

GitOrigin-RevId: b9afa05a0931bb11fd9be2d9a92a6d4beaab2f7d
2023-04-25 08:06:05 +00:00
Brian Gough
253f44894a Merge pull request #12748 from overleaf/bg-recurly-add-currency
add script for generating recurly prices

GitOrigin-RevId: c7a624af35eba9882798fbaf750e4328604f47fa
2023-04-25 08:05:57 +00:00
Brian Gough
cb8992e912 Merge pull request #12709 from overleaf/bg-rollback-additional-services
rollback additional services from node 18 to 16

GitOrigin-RevId: 60428768eb4c895b89e9a5dace429ea70af3b9bf
2023-04-20 08:04:02 +00:00
Brian Gough
ed0acd8e58 Merge pull request #12658 from overleaf/bg-node-18-upgrade
Upgrade to node 18

GitOrigin-RevId: 1b25d20a8987950a72a7bf966a825794de4ad960
2023-04-20 08:03:37 +00:00
Eric Mc Sween
cff54eae78 Merge pull request #12575 from overleaf/em-fix-chunk-replace-transaction
Fix history chunk replacement transaction

GitOrigin-RevId: fc0fa8f4a55ae5f402ba87db5e4ac2856fe6627b
2023-04-19 08:03:10 +00:00
Jakob Ackermann
bc91aebf1c Merge pull request #12410 from overleaf/bg-fix-restore-deleted-docs-script
fix async call usage of restoreDeletedDoc

GitOrigin-RevId: 693c3d1e2e1d7757815d310eacd148a107b44395
2023-04-14 08:03:15 +00:00
Tim Down
7f37ba737c Move source editor out of module (#12457)
* Update Copybara options in preparation for open-sourcing the source editor

* Move files

* Update paths

* Remove source-editor module and checks for its existence

* Explicitly mention CM6 license in files that contain code adapted from CM6

GitOrigin-RevId: 89b7cc2b409db01ad103198ccbd1b126ab56349b
2023-04-13 08:40:56 +00:00
Jakob Ackermann
08673c9c1c Merge pull request #12594 from overleaf/jpa-fix-cleanup-unused
[web] scripts/translations: fix searching for unused translations

GitOrigin-RevId: 2cfefc6ffde7aaab0ef2d00888059ddafda3bb1d
2023-04-13 08:04:29 +00:00
Eric Mc Sween
470dcdedb7 Merge pull request #12474 from overleaf/em-oauth-scripts
Management scripts for OAuth client configurations

GitOrigin-RevId: 4463f4716fdd060708581635fb20980e61a78df9
2023-04-04 08:05:39 +00:00
Jessica Lawshe
17525532d0 Merge pull request #12411 from overleaf/jel-saml-cert-check
[web] Add script to check certificate dates from IdP SAML metadata

GitOrigin-RevId: 9a1153c5a636dea798bdd112d400f370355c5783
2023-04-04 08:04:21 +00:00