diff --git a/libraries/access-token-encryptor/.jenkinsIncludeFile b/libraries/access-token-encryptor/.jenkinsIncludeFile new file mode 100644 index 0000000000..7c384234b9 --- /dev/null +++ b/libraries/access-token-encryptor/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/access-token-encryptor/** +package-lock.json +package.json +patches/** diff --git a/libraries/fetch-utils/.jenkinsIncludeFile b/libraries/fetch-utils/.jenkinsIncludeFile new file mode 100644 index 0000000000..a15dc7685b --- /dev/null +++ b/libraries/fetch-utils/.jenkinsIncludeFile @@ -0,0 +1,8 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/o-error/** +package-lock.json +package.json +patches/** diff --git a/libraries/logger/.jenkinsIncludeFile b/libraries/logger/.jenkinsIncludeFile new file mode 100644 index 0000000000..394670c392 --- /dev/null +++ b/libraries/logger/.jenkinsIncludeFile @@ -0,0 +1,9 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/o-error/** +package-lock.json +package.json +patches/** diff --git a/libraries/metrics/.jenkinsIncludeFile b/libraries/metrics/.jenkinsIncludeFile new file mode 100644 index 0000000000..04c5f4358b --- /dev/null +++ b/libraries/metrics/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/metrics/** +package-lock.json +package.json +patches/** diff --git a/libraries/mongo-utils/.jenkinsIncludeFile b/libraries/mongo-utils/.jenkinsIncludeFile new file mode 100644 index 0000000000..1919e78459 --- /dev/null +++ b/libraries/mongo-utils/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/mongo-utils/** +package-lock.json +package.json +patches/** diff --git a/libraries/o-error/.jenkinsIncludeFile b/libraries/o-error/.jenkinsIncludeFile new file mode 100644 index 0000000000..b9e84890f1 --- /dev/null +++ b/libraries/o-error/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/o-error/** +package-lock.json +package.json +patches/** diff --git a/libraries/object-persistor/.jenkinsIncludeFile b/libraries/object-persistor/.jenkinsIncludeFile new file mode 100644 index 0000000000..e7024da63f --- /dev/null +++ b/libraries/object-persistor/.jenkinsIncludeFile @@ -0,0 +1,12 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/o-error/** +libraries/object-persistor/** +libraries/stream-utils/** +package-lock.json +package.json +patches/** diff --git a/libraries/overleaf-editor-core/.jenkinsIncludeFile b/libraries/overleaf-editor-core/.jenkinsIncludeFile new file mode 100644 index 0000000000..e5efcf1a83 --- /dev/null +++ b/libraries/overleaf-editor-core/.jenkinsIncludeFile @@ -0,0 +1,8 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/o-error/** +libraries/overleaf-editor-core/** +package-lock.json +package.json +patches/** diff --git a/libraries/promise-utils/.jenkinsIncludeFile b/libraries/promise-utils/.jenkinsIncludeFile new file mode 100644 index 0000000000..5265e286c9 --- /dev/null +++ b/libraries/promise-utils/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/promise-utils/** +package-lock.json +package.json +patches/** diff --git a/libraries/ranges-tracker/.jenkinsIncludeFile b/libraries/ranges-tracker/.jenkinsIncludeFile new file mode 100644 index 0000000000..fcf7655086 --- /dev/null +++ b/libraries/ranges-tracker/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/ranges-tracker/** +package-lock.json +package.json +patches/** diff --git a/libraries/redis-wrapper/.jenkinsIncludeFile b/libraries/redis-wrapper/.jenkinsIncludeFile new file mode 100644 index 0000000000..0d44c9258e --- /dev/null +++ b/libraries/redis-wrapper/.jenkinsIncludeFile @@ -0,0 +1,10 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/o-error/** +libraries/redis-wrapper/** +package-lock.json +package.json +patches/** diff --git a/libraries/settings/.jenkinsIncludeFile b/libraries/settings/.jenkinsIncludeFile new file mode 100644 index 0000000000..fcf74e8f72 --- /dev/null +++ b/libraries/settings/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/settings/** +package-lock.json +package.json +patches/** diff --git a/libraries/stream-utils/.jenkinsIncludeFile b/libraries/stream-utils/.jenkinsIncludeFile new file mode 100644 index 0000000000..bbc7a7fd44 --- /dev/null +++ b/libraries/stream-utils/.jenkinsIncludeFile @@ -0,0 +1,7 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/stream-utils/** +package-lock.json +package.json +patches/** diff --git a/libraries/validation-tools/.jenkinsIncludeFile b/libraries/validation-tools/.jenkinsIncludeFile new file mode 100644 index 0000000000..6f41cfe7ee --- /dev/null +++ b/libraries/validation-tools/.jenkinsIncludeFile @@ -0,0 +1,8 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/o-error/** +libraries/validation-tools/** +package-lock.json +package.json +patches/** diff --git a/package-lock.json b/package-lock.json index 4e3bbc8433..eeae169f83 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52057,7 +52057,9 @@ "zod-validation-error": "^4.0.1" }, "devDependencies": { + "chai": "^4.3.6", "chai-as-promised": "^7.1.1", + "mocha": "^11.1.0", "typescript": "^5.0.4", "vitest": "^3.2.4" } @@ -52569,6 +52571,7 @@ "nodemailer": "^6.7.0", "on-headers": "^1.0.2", "otplib": "^12.0.1", + "overleaf-editor-core": "*", "p-limit": "^2.3.0", "p-props": "4.0.0", "p-queue": "^8.1.0", @@ -52626,6 +52629,7 @@ "@lezer/markdown": "^1.4.3", "@overleaf/codemirror-tree-view": "^0.1.3", "@overleaf/dictionaries": "https://github.com/overleaf/dictionaries/archive/refs/tags/v0.0.3.tar.gz", + "@overleaf/eslint-plugin": "*", "@overleaf/ranges-tracker": "*", "@overleaf/stream-utils": "*", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.16", @@ -52756,7 +52760,6 @@ "mock-fs": "^5.1.2", "nock": "^13.5.6", "nvd3": "^1.8.6", - "overleaf-editor-core": "*", "p-reflect": "^3.1.0", "pdfjs-dist": "5.1.91", "pirates": "^4.0.1", diff --git a/services/chat/.jenkinsIncludeFile b/services/chat/.jenkinsIncludeFile new file mode 100644 index 0000000000..c9fada213f --- /dev/null +++ b/services/chat/.jenkinsIncludeFile @@ -0,0 +1,13 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/mongo-utils/** +libraries/o-error/** +libraries/settings/** +package-lock.json +package.json +patches/** +services/chat/** diff --git a/services/clsi/.jenkinsIncludeFile b/services/clsi/.jenkinsIncludeFile new file mode 100644 index 0000000000..6ca621eb08 --- /dev/null +++ b/services/clsi/.jenkinsIncludeFile @@ -0,0 +1,14 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/o-error/** +libraries/promise-utils/** +libraries/settings/** +libraries/stream-utils/** +package-lock.json +package.json +patches/** +services/clsi/** diff --git a/services/clsi/buildscript.txt b/services/clsi/buildscript.txt index de51181064..b2bf4bbd05 100644 --- a/services/clsi/buildscript.txt +++ b/services/clsi/buildscript.txt @@ -7,5 +7,4 @@ clsi --esmock-loader=False --node-version=22.18.0 --public-repo=True ---script-version=4.7.0 --use-large-ci-runner=True diff --git a/services/contacts/.jenkinsIncludeFile b/services/contacts/.jenkinsIncludeFile index baba3b80c0..50cb21ab4e 100644 --- a/services/contacts/.jenkinsIncludeFile +++ b/services/contacts/.jenkinsIncludeFile @@ -1,10 +1,13 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** libraries/logger/** libraries/metrics/** libraries/mongo-utils/** +libraries/o-error/** libraries/settings/** +package-lock.json +package.json patches/** services/contacts/** -.eslint* -.prettier* -package.json -package-lock.json diff --git a/services/docstore/.jenkinsIncludeFile b/services/docstore/.jenkinsIncludeFile new file mode 100644 index 0000000000..a9eee55286 --- /dev/null +++ b/services/docstore/.jenkinsIncludeFile @@ -0,0 +1,16 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/mongo-utils/** +libraries/o-error/** +libraries/object-persistor/** +libraries/promise-utils/** +libraries/settings/** +libraries/stream-utils/** +package-lock.json +package.json +patches/** +services/docstore/** diff --git a/services/document-updater/.jenkinsIncludeFile b/services/document-updater/.jenkinsIncludeFile new file mode 100644 index 0000000000..9867b1b0d4 --- /dev/null +++ b/services/document-updater/.jenkinsIncludeFile @@ -0,0 +1,17 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/mongo-utils/** +libraries/o-error/** +libraries/overleaf-editor-core/** +libraries/promise-utils/** +libraries/ranges-tracker/** +libraries/redis-wrapper/** +libraries/settings/** +package-lock.json +package.json +patches/** +services/document-updater/** diff --git a/services/filestore/.jenkinsIncludeFile b/services/filestore/.jenkinsIncludeFile new file mode 100644 index 0000000000..1a0c6fa504 --- /dev/null +++ b/services/filestore/.jenkinsIncludeFile @@ -0,0 +1,14 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/o-error/** +libraries/object-persistor/** +libraries/settings/** +libraries/stream-utils/** +package-lock.json +package.json +patches/** +services/filestore/** diff --git a/services/history-v1/.jenkinsIncludeFile b/services/history-v1/.jenkinsIncludeFile new file mode 100644 index 0000000000..cfd84c7e38 --- /dev/null +++ b/services/history-v1/.jenkinsIncludeFile @@ -0,0 +1,18 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/mongo-utils/** +libraries/o-error/** +libraries/object-persistor/** +libraries/overleaf-editor-core/** +libraries/promise-utils/** +libraries/redis-wrapper/** +libraries/settings/** +libraries/stream-utils/** +package-lock.json +package.json +patches/** +services/history-v1/** diff --git a/services/notifications/.jenkinsIncludeFile b/services/notifications/.jenkinsIncludeFile new file mode 100644 index 0000000000..fd805630af --- /dev/null +++ b/services/notifications/.jenkinsIncludeFile @@ -0,0 +1,15 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/mongo-utils/** +libraries/o-error/** +libraries/promise-utils/** +libraries/settings/** +libraries/validation-tools/** +package-lock.json +package.json +patches/** +services/notifications/** diff --git a/services/project-history/.jenkinsIncludeFile b/services/project-history/.jenkinsIncludeFile new file mode 100644 index 0000000000..522a7ce2ee --- /dev/null +++ b/services/project-history/.jenkinsIncludeFile @@ -0,0 +1,17 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/mongo-utils/** +libraries/o-error/** +libraries/overleaf-editor-core/** +libraries/promise-utils/** +libraries/redis-wrapper/** +libraries/settings/** +libraries/stream-utils/** +package-lock.json +package.json +patches/** +services/project-history/** diff --git a/services/real-time/.jenkinsIncludeFile b/services/real-time/.jenkinsIncludeFile new file mode 100644 index 0000000000..1f7a178a54 --- /dev/null +++ b/services/real-time/.jenkinsIncludeFile @@ -0,0 +1,13 @@ +# Autogenerated by build scripts. Do not edit. +.eslint* +.prettier* +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/o-error/** +libraries/redis-wrapper/** +libraries/settings/** +package-lock.json +package.json +patches/** +services/real-time/** diff --git a/services/web/.jenkinsIncludeFile b/services/web/.jenkinsIncludeFile index 4bd353b0b8..79b7675130 100644 --- a/services/web/.jenkinsIncludeFile +++ b/services/web/.jenkinsIncludeFile @@ -1,7 +1,22 @@ -libraries/** -patches/** -services/web/** +# Autogenerated by build scripts. Do not edit. .eslint* .prettier* -package.json +libraries/access-token-encryptor/** +libraries/eslint-plugin/** +libraries/fetch-utils/** +libraries/logger/** +libraries/metrics/** +libraries/mongo-utils/** +libraries/o-error/** +libraries/object-persistor/** +libraries/overleaf-editor-core/** +libraries/promise-utils/** +libraries/ranges-tracker/** +libraries/redis-wrapper/** +libraries/settings/** +libraries/stream-utils/** +libraries/validation-tools/** package-lock.json +package.json +patches/** +services/web/** diff --git a/services/web/buildscript.txt b/services/web/buildscript.txt new file mode 100644 index 0000000000..66f3dc9b43 --- /dev/null +++ b/services/web/buildscript.txt @@ -0,0 +1,10 @@ +web +--only-jenkins-include-file=True +--dependencies= +--docker-repos=us-east1-docker.pkg.dev/overleaf-ops/ol-docker +--env-add= +--env-pass-through= +--esmock-loader=False +--node-version=22.18.0 +--public-repo=False +--script-version=4.7.0 diff --git a/services/web/package.json b/services/web/package.json index 651b56ac58..c1d5ea2b4b 100644 --- a/services/web/package.json +++ b/services/web/package.json @@ -216,6 +216,7 @@ "@lezer/markdown": "^1.4.3", "@overleaf/codemirror-tree-view": "^0.1.3", "@overleaf/dictionaries": "https://github.com/overleaf/dictionaries/archive/refs/tags/v0.0.3.tar.gz", + "@overleaf/eslint-plugin": "*", "@overleaf/ranges-tracker": "*", "@overleaf/stream-utils": "*", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.16",