Commit Graph

783 Commits

Author SHA1 Message Date
Andrew Rumble
de75ea6d3b Merge pull request #31818 from overleaf/ar-actually-dedupe
[monorepo] run npm dedupe

GitOrigin-RevId: 6133acd7b28b536b777962024fd318c9c4d6c091
2026-03-06 09:09:07 +00:00
Andrew Rumble
d8f9a643cd Merge pull request #31794 from overleaf/ar-prefer-dedupe-when-installing-npm-modules
[monorepo] use prefer-dedupe when installing npm modules

GitOrigin-RevId: de814fa1e91e37a20cb4024f8aa0454e5e86f0a6
2026-03-06 09:08:46 +00:00
Eric Mc Sween
c99fcf3157 Merge pull request #31786 from overleaf/em-minisearch
Replace fuse.js with minisearch

GitOrigin-RevId: c57afbe23241c98a0e1adaac22312e706e06098d
2026-03-06 09:07:45 +00:00
Jakob Ackermann
f9ad6cf5d1 [monorepo] add eslint and prettier check to tools (#31720)
* [dependency-management] check eslint and prettier in Jenkins pipeline

* [npm-overrides-helper] check eslint and prettier in Jenkins pipeline

GitOrigin-RevId: 647f105babd536d0962ac2dbb3d6a0235ba73976
2026-02-24 09:06:12 +00:00
Andrew Rumble
d004aec6f1 Merge pull request #31727 from overleaf/ar-fast-xml-parser-5.3.6
[monorepo] upgrade packages that depend on unsafe fast-xml-parser

GitOrigin-RevId: 8c61d9db1a7ab164dc9233f29c2de11b461f11a4
2026-02-24 09:05:55 +00:00
Anna Claire Fields
fe65bc2cc1 upgrade for minimatch from 7.4.2 to 10.2.2 in web and third party datastore (#31689)
* upgrade minimatch in web and third party datastore

* upgrade to 10.2.2

GitOrigin-RevId: 5b66b8b3ac24ee46a2d9a9216bf35ef5b6f24adf
2026-02-24 09:05:30 +00:00
Andrew Rumble
7ae0f7b4b7 Merge pull request #31629 from overleaf/ar-upgrade-brace-expansion-to-5.0.1
[monorepo] bump @isaacs/brace-expansion to 5.0.1

GitOrigin-RevId: 63635265bfec0a2fe6a4e582916d711871ce3ea3
2026-02-20 09:05:11 +00:00
Alf Eaton
aab1764236 Upgrade Streamdown to v2 (#31287)
GitOrigin-RevId: c092a9491b086a186cd7a5d88698bd1aaf745e96
2026-02-19 09:06:31 +00:00
Brian Gough
a9c94c4184 Merge pull request #31444 from overleaf/bg-jpa-use-fetch-in-persistence-manager
remove requestretry from PersistenceManager

GitOrigin-RevId: 1fc9ffdfa7879d7ab4f0f4683544d09fe8526f3d
2026-02-19 09:05:45 +00:00
Jakob Ackermann
7c70b749d4 [monorepo] remove PII and variables from error messages (#31508)
* [monorepo] remove PII and variables from error messages

Exclusions:
- scripts
- tests
- fuzzing
- SplitTestManager (messages are sent to admin frontend)
- Group setup (we may want an error per unique tuple)
- sharejs (unused types; text type errors are shadowed already)
- history-v1 error messages that are used by the ErrorRecorder
- errors that flag issues with configuration/call signatures

I've used these search terms for finding unwanted error messages:
- new Error(`
- new Error\(\n\s+` (regex search)
- new OError(`
- new OError\(\n\s+` (regex search)

* [web] throw NotFoundError from ProjectLocator

* [github-sync] fix OError.tag call in script

Co-authored-by: Jessica Lawshe <jessica.lawshe@overleaf.com>

* [templates] revert changes to test client

---------

Co-authored-by: Jessica Lawshe <jessica.lawshe@overleaf.com>
GitOrigin-RevId: 736857a4fc5d9bfb0f8cb03e0f004eda87e5a220
2026-02-17 09:05:04 +00:00
Andrew Rumble
2a6da7b186 Merge pull request #31500 from overleaf/ar-qs-tools-saas-e2e
[monorepo] bump qs as dependency of @cypress/request

GitOrigin-RevId: a36bcf35b69246cef2614adb3d24db2233f6fcfb
2026-02-13 09:05:14 +00:00
jmescuderowritefull
4f284e15d5 Upgrade Axios dependency (#31465)
GitOrigin-RevId: 983298d6caf68f644e8be67e59e9bffa841a05f8
2026-02-11 09:07:09 +00:00
Eric Mc Sween
ab2f44bbe9 Merge pull request #31417 from overleaf/em-bibtex-validation
Validate the bibtex entry form using react-hook-form

GitOrigin-RevId: c89d29da41eea124c0c410ff28dab04da4691514
2026-02-11 09:07:04 +00:00
Anna Claire Fields
72f8dff76d Upgrade GC storage and big query with updated patches (#31297)
GitOrigin-RevId: ff1432f4194c3529ebf6090d1f93dbed38539014
2026-02-11 09:06:32 +00:00
Andrew Rumble
080d522db7 Merge pull request #31425 from overleaf/ar-upgrade-lodash-es
[web,analytics] upgrade lodash-es to 4.17.23

GitOrigin-RevId: 65754a058c7f5be3e0513aa84bb8ba2a12248eae
2026-02-10 09:05:41 +00:00
Andrew Rumble
b2d4687c52 [web] Experiment with code coverage (#28029)
* Update test script to allow coverage to be recorded

* Collect coverage in CI

* [web] integrate coverage report with Jenkins

* [web] add coverage report for acceptance tests

* Use --all flag in vitest coverage

* Use --all flag in acceptance tests

* Switch vitest to use istanbul

* Bump versions of vitest plugins and update package-lock.json

* [web] use a dedicated parameter for coverage in unit/acceptance tests

* [web] temporarily generate HTML report and archive artifacts

* [web] do not run acceptance tests as root in CI

* [web] increase hook timeout in vitest when collecting coverage

* [web] exclude packageMapping from coverage report

* [web] use relative paths in clover reports

* [web] reduce concurrency for unit tests in CI

* [web] keep source code forever on builds

* Revert "[web] temporarily generate HTML report and archive artifacts"

This reverts commit 4c9db571

* [web] archive all the raw coverage report files

* [monorepo] update build scripts for web

* [monorepo] update package-lock.json after merge

* [web] remove spurious change

* [web] merge Jenkins parameter sections

* [web] increase hookTimeout when collecting coverage report

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 9f1ec6d38a7b037267737bec3b0bc53a0ac844af
2026-02-10 09:05:36 +00:00
Andrew Rumble
244ea64a30 Merge pull request #31075 from overleaf/ar-upgrade-lodash-4.17.23
[monorepo] upgrade lodash 4.17.23

GitOrigin-RevId: 192628f52beb868bcb796729d414963c11bf0b96
2026-02-10 09:05:19 +00:00
Jakob Ackermann
ff8b394e51 [monorepo] fix package-lock.json (#31377)
GitOrigin-RevId: 84324a8965ac3810553afde570bb3aca52326001
2026-02-09 09:07:22 +00:00
Alf Eaton
f957ee267c Update required npm version (#31263)
GitOrigin-RevId: c455d7803b41f5f62573522a619649f1b03ef94e
2026-02-06 09:05:28 +00:00
Andrew Rumble
f434bc3825 Merge pull request #31142 from overleaf/ar-promisify-web-api-manager
[real-time] promisify web api manager

GitOrigin-RevId: da2677c05dd7d066b0a625763d4158b28671615e
2026-02-05 09:05:48 +00:00
Rebeka Dekany
a648015db8 Centralize prettier configuration to root level (#30501)
* Merge all .prettierignore files into top-level config

* Merge all .prettierrc files into top-level config

* Replace service-specific glob patterns in package.json format scripts with `prettier .`

* Add template files with Jinja2, Go template, envsubst, and Handlebars syntax to .prettierignore

* Ignore GitHub templates

* Ignore PUG templates to format them separately with `format:pug`

* Encourage double quotes for YAML, YML files

* Move prettier for PUG source format script to the root

* Move prettier for styles source format script to the root

* Remove prettier for jenkins files from web

* Remove prettier source format script from all services

* Make .prettierrc more readable

* Update format scripts by file type

* Organise `.prettierignore`

* Add `--cache` flag to prettier scripts for faster runs

* Format all files with prettier

* Format all or format services

* Remove `format`/`format:fix` scripts from services since now it runs from root `package.json`

* Avoid conlficts with yamllint configuration

* Remove `--cache` flag from prettier scripts

* Update all service Makefiles to use root-level prettier configuration

* Update all Jenkinsfile to use root-level prettier configuration

* Ignore auto-generated files by build_scripts

* Update package-lock.json

* Update root Makefile format targets

* Update SP Jenkinsfile format target

* Update E2E Makefile format script

* Udpate `format_js` to work in both local and CI env

* Add docker-mailtrap to .prettierignore

docker-mailtrap is a third-party git-ignored directory used for testing

* Added Docker env detection to prevent nested Docker spawning

* Ignore handlebars templates

* Add cryptographic files and test output to `.prettierignore`

* Add terraform modules to `.gitignore`

* Remove prettier-plugin-groovy

* Use npx directly instead of Docker for local formatting for faster formatting

* Auto-generate Makefiles

* Revert "Remove prettier-plugin-groovy"

This reverts commit 194a33589a2e1e4d2225d10c67e9f025e4222025.

* Mount monorepo root in RUN_LINT_FORMAT for prettier config access

* Prettier ignores all `node_modules` by default regardless of location

* Show only changed files in format output

* Ignore LICENSE files

* Enable prettier on rendered build_scripts outputs

* Ignoring all the template folders by prettier

* Remove the public/minjs entry since it does not exist

* Remove all non-existent paths

* Sync `.prettierignore` with ignored files by `.gitignore` and `.dockerignore` files

* Revert "Auto-generate Makefiles"

This reverts commit c0233e490de1bc95fe437219d65e0b66e0331ec9.

* Revert "Use npx directly instead of Docker for local formatting for faster formatting"

This reverts commit 1d2b2cf1a6c6974c76885852a90dd55e84167e41.

* Ignore dashboard JSON files

* Ignore files generated by bin/update_build_scripts

* Remove unsupported file types from `.prettierignore`

* Ignore test fixture generated files

* Ignore README file types by prettier

* Ignore generate snapshots by prettier

* Allow to format generated bin/update_build_scripts by prettier

* Ensure build script outputs prettier-compatible tsconfig.json

* Fix build script output to match prettier formatting
- Fix Jinja2 whitespace in docker-compose templates
- Change YAML quotes from single to double

* Don't read cryptographic files by prettier

* Ignore google verification files by prettier

* Revert npx prettier formatting

* Ignore domain verification files

* Show only changed files in format output

* Make `.github` prettier

* Allow all files to be formatted in jobs by prettier

* Allow server-ce/server-pro files to be formatted by prettier

* Ignore more folders in clsi, filestory, git-bridge by prettier

* Update build script with `RUN_LINTING_CI_MONOREPO`

* Ignore docker-mailtrap and downloads in server-ce by prettier

* Restore prettier configs and prettierignore for V1 since it has its own prettier (an older version)

* Source format

GitOrigin-RevId: 637adc3cc422d1f20c86d6ebc8ec514d60758287
2026-02-04 09:08:22 +00:00
Domagoj Kriskovic
b10854f3e3 Use "tanstack/react-table" for visual bibtex editor
GitOrigin-RevId: 85c7ae2433de04a4d64d9d59af062646add3b473
2026-02-04 09:06:49 +00:00
roo hutton
a0a621f727 Merge pull request #30788 from overleaf/rh-cio-sub-topics
Replace Mailchimp newsletter subscriptions with customer.io topic subscriptions

GitOrigin-RevId: de536fb7ef24ff44c494659b2ef5ede5b33cc977
2026-02-04 09:06:24 +00:00
Jakob Ackermann
5829a7fe43 [web] integrate clsi-cache into download pdf from project dashboard (#31138)
* [monorepo] fix downloads from non-sharded clsi-cache

* [web] check some compile from cache options server-side

* [web] integrate clsi-cache into download pdf from project dashboard

* [web] remove frontend tests for server-side validation

* [web] remove unused fetch mock

* [web] use helper that adds polyfill for AbortSignal.any()

* [web] upgrade fetch-mock to fix leaking AbortSignal

* [web] do not add an extra timeout to clsi-cache request

The web backend service has a low timeout already.

GitOrigin-RevId: a90984b92f5d4f24005db5a09f2c5d2424436886
2026-02-02 09:06:13 +00:00
Jakob Ackermann
9970dd907a [e2e] use plain pdf.js for extracting PDF text (#31125)
* [monorepo] also cycle ssl_proxy to avoid hitting circuit break in nginx

* [e2e] use plain pdf.js for extracting PDF text

* [monorepo] manually download canvas binding for MacOS

GitOrigin-RevId: dbadbbaa0e121953c06ab4be9241bf361997865e
2026-02-02 09:05:29 +00:00
Domagoj Kriskovic
da9da896c2 Revert "Revert "[project-history] migrate from joi to zod (#30187)" (#30681)"
This reverts commit 8d66aa15a29216736755c3f86954a4d40aa20a6c.

GitOrigin-RevId: 9d56dafff3da5202204ead896bed30182cc2aceb
2026-02-02 09:05:15 +00:00
Anna Claire Fields
e80ce42896 Upgrade Node.js from 22.18 to 24.13 (#30509)
GitOrigin-RevId: c2405a0583e68c61351f52b32ba28faec994fbc0
2026-01-30 09:05:28 +00:00
Andrew Rumble
fd5a8159cc Merge pull request #31014 from overleaf/ar/babel-7.26.10
[monorepo] bump @babel/runtime-corejs3 to >7.26.10

GitOrigin-RevId: 6295f739b0dd51bc4a4c5aef52642cd8ab9f8ace
2026-01-30 09:05:14 +00:00
Domagoj Kriskovic
41b8ccc69f [real-time] Promisify DocumentUpdaterManager (#30322)
* move function outside of object

* convert flushProjectToMongoAndDelete function

* convert queueChange function

* install fetch utils, remove private fn from export

* promisify getDocument function

* fix unit tests

* preserve function order

* try parsing error body

* update tests on a new rebased file

* remove fetch-utils from devDependencies

GitOrigin-RevId: cc34d6f690b6b888214b32c2aee0efb6b585e159
2026-01-28 09:06:48 +00:00
Mathias Jakobsen
2259c915e8 [web+ops+references] Remove references service code (#29699)
GitOrigin-RevId: 76656abe2e7b012355438d053a05e157bb719b0a
2026-01-28 09:06:34 +00:00
Antoine Clausse
c512072c02 Merge pull request #30980 from overleaf/revert-30752-acf-upgrade-google-cloud-storage
Revert "Update @google-cloud/storage to version 7.18.0"

GitOrigin-RevId: 55136a0fbd6a07011505471e47db0485326ddeb3
2026-01-26 09:06:28 +00:00
Andrew Rumble
cd7da983d1 Merge pull request #30232 from overleaf/ar/convert-clsi-to-es-modules
[clsi] convert to ES modules

GitOrigin-RevId: fb7fa52cc8f678ee31be352e62a5dff95e88008b
2026-01-22 09:06:23 +00:00
Anna Claire Fields
21d672c0f4 Update @google-cloud/storage to version 7.18.0 (#30752)
GitOrigin-RevId: 2acdc676cf821b3a3c562961742c7e83145a9406
2026-01-21 09:05:41 +00:00
Anna Claire Fields
37b8bb15e6 Update es-mock to version 2.7.3 (#30753)
* Update esmock in web and project-history

GitOrigin-RevId: 69d7eceed4b567e2122d6de385a5202c2b25c212
2026-01-19 09:06:54 +00:00
Anna Claire Fields
2bf9d30a03 Upgrade Bcrypt and JSDom in web (#30758)
* Update bcrypt and jsdom dependencies in web

GitOrigin-RevId: 3a709203b5c40c5a23664a3433b563382bbc1711
2026-01-19 09:06:49 +00:00
Andrew Rumble
028bca6e87 Merge pull request #30798 from overleaf/ar-reapply-request-overrides
[monorepo] reapply request overrides

GitOrigin-RevId: 55d19cc011435a00ffc1e5c63f523473cd0fc2dc
2026-01-16 09:56:13 +00:00
Alf Eaton
03a3518aae Merge pull request #30703 from overleaf/ae-prettier
Upgrade Prettier to v3.7.4

GitOrigin-RevId: 0f4434019bc7d12f2d5b7ecbb833ee20570d0706
2026-01-16 09:56:07 +00:00
Thomas
7206771eca Merge pull request #30790 from overleaf/tm-update-react-router-dom
Update react-router-dom to 6.30.3

GitOrigin-RevId: 728e3182a214af3e1f257a45a0ca3b4284672be8
2026-01-16 09:05:13 +00:00
Andrew Rumble
4271744bfd Merge pull request #30606 from overleaf/ar/bump-qs-to-6.14.1
[monorepo] bump qs to 6.14.1

GitOrigin-RevId: 4b1f8b1cf739c3c0195392fa6707fc233d036b70
2026-01-15 14:20:06 +00:00
Alf Eaton
23255fe264 Downgrade @codemirror/view to 6.38.6 (#30776)
GitOrigin-RevId: bb123c35674b0c21959e1532adc5cdb957f9aa89
2026-01-15 14:19:15 +00:00
Alf Eaton
5d16fa207a Upgrade CodeMirror and Lezer dependencies (#30615)
* Upgrade CodeMirror and Lezer dependencies
* Ensure that BraceWidget and IconBraceWidget always have string content
* Add updateDOM to BraceWidget
* Use pinned versions
* Fix description list decoration

GitOrigin-RevId: 5306f7f09290eb9a2c375e97d33509537f3c5e5f
2026-01-15 09:06:05 +00:00
Andrew Rumble
27950a42b4 Merge pull request #30585 from overleaf/ar/bump-storybook-plugins
[web] bump storybook plugins to 8.6.15

GitOrigin-RevId: dc3d0ed496dab490902f556ec019fa57a75c635f
2026-01-14 09:05:27 +00:00
Domagoj Kriskovic
da7569e892 Revert "[project-history] migrate from joi to zod (#30187)" (#30681)
This reverts commit f8396a3caadd536edf64c6f971c77f4c941f000a.

GitOrigin-RevId: 8d66aa15a29216736755c3f86954a4d40aa20a6c
2026-01-13 09:07:22 +00:00
Jakob Ackermann
9cc2a7f1e0 [clsi-cache] cache templates in GCS and create entries on-demand (#30614)
* [clsi-cache] cache templates in GCS and create entries on-demand

* [clsi-cache] add missing return

Co-authored-by: Daniel Kontsek <daniel.kontsek@overleaf.com>

* [clsi-cache] update build scripts

* [web] fix unit tests

* [web] run prettier (again)

* [clsi-cache] drop 1xx prefix from submissionId

* [clsi-cache] add bestEffortRmDir helper

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

---------

Co-authored-by: Daniel Kontsek <daniel.kontsek@overleaf.com>
Co-authored-by: Brian Gough <brian.gough@overleaf.com>
GitOrigin-RevId: e4bd7dca5611f16d9a6e76f2e7cf83e5819fa610
2026-01-13 09:07:17 +00:00
Domagoj Kriskovic
6d3dd3601a [project-history] migrate from joi to zod (#30187)
* Add @overleaf/validation-tools in project-history

* use error handler for zod

* Replace joi validations with zod schema

* fix unit tests

* remove Joi validation middleware

* remove optional when there is a default

* fix tests after checking for objectid

* ran build_scripts

* monorepo npm install

GitOrigin-RevId: f8396a3caadd536edf64c6f971c77f4c941f000a
2026-01-13 09:07:00 +00:00
Andrew Rumble
3073c94522 Merge pull request #30215 from overleaf/ar/convert-real-time-to-esm
[real-time] convert real time to esm

GitOrigin-RevId: 7cc530cc977549d3274be42585735e1fd72cad5f
2026-01-13 09:06:30 +00:00
Antoine Clausse
7dc937b0f0 [real-time] Promisify RealTimeClient (#30500)
* Define `Client` at the end of the file

* Promisify `setSession`

* Promisify `setAnonSession`

* Remove unused `unsetSession`

* Promisify `connect`

* Promisify `getConnectedClients`, add `@overleaf/fetch-utils`

* Promisify `countConnectedClients`

* Promisify `getConnectedClient`

* Promisify `disconnectClient`

* Promisify `disconnectAllClients`

* Remove decaffeinate comment

GitOrigin-RevId: 4b0b376cdae5b1b69fe7e66b131d4b2ec7059eaa
2026-01-09 09:07:19 +00:00
Alf Eaton
10eca3070c Strip inline cite markers from response text (#30477)
GitOrigin-RevId: af4af74e989c042bb8174854e79f3ba29193ac80
2026-01-09 09:06:58 +00:00
Alf Eaton
22d717583f Upgrade core-js and Babel (#29554)
GitOrigin-RevId: 259149f10335d98443fa8e6ccc4289d2bb3138dd
2026-01-09 09:06:46 +00:00
Alf Eaton
ff0eb6696b Merge pull request #30437 from overleaf/ae-glob
Use glob 10.5.0
Remove babel/cli (#30438)

GitOrigin-RevId: aa5477c2f8afff63ac80f90718601ec64f3238e2
2026-01-09 09:06:42 +00:00