Commit graph

339 commits

Author SHA1 Message Date
Jakob Ackermann
1117ea1b3e [clsi] add helper function for detecting extraneous files (#24376)
* [clsi] add helper function for detecting extraneous files

* [clsi] output.pdfxref and output.synctex.gz are extraneous as well

* [clsi] minor code cleanup

Co-authored-by: Mathias Jakobsen <mathias.jakobsen@overleaf.com>

---------

Co-authored-by: Mathias Jakobsen <mathias.jakobsen@overleaf.com>
GitOrigin-RevId: 0d6c96c99b6be3adaee1558b1f958da885e6307a
2025-03-24 10:46:43 +00:00
Jakob Ackermann
13bf214a3c [web] generate clsi buildId ahead of fetching project content (#24337)
* [web] generate clsi buildId ahead of fetching project content

The buildIds timestamp component will be used for cache invalidation.

* [clsi] strict validation for buildId

* [clsi] validate buildId parameter

GitOrigin-RevId: 88e8b2d48e78fa137b6dca7f2e6b93bbcf88a777
2025-03-24 10:46:02 +00:00
Jakob Ackermann
f7e716c826 [clsi] add metric for disk usage (#24303)
GitOrigin-RevId: e21b867a2fdaf54e9ec5b29b0f80b29349eb901c
2025-03-14 09:05:23 +00:00
Jakob Ackermann
d8b0ab9436 [clsi] avoid downloads from compile directory (#23975)
* [clsi] make error copying output files a fatal compile error

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

* [clsi] remove unused endpoints for downloading files from compileDir

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

* [clsi] avoid useless clone of output files

* [clsi] add test for output files when compile did not produce a PDF

---------

Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
GitOrigin-RevId: cb998b99b4d96cb48ddd70987958f614ad3b40fc
2025-03-03 09:05:04 +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
d19c5e236f Merge pull request #22208 from overleaf/jpa-clsi-hash
[misc] clsi: read files from history-v1 with fallback to filestore

GitOrigin-RevId: c54bb128780198c14e7a63818f39fad62ce65d4e
2024-11-29 09:05:39 +00:00
Antoine Clausse
7f48c67512 Add prefer-node-protocol ESLint rule (#21532)
* Add `unicorn/prefer-node-protocol`

* Fix `unicorn/prefer-node-protocol` ESLint errors

* Run `npm run format:fix`

* Add sandboxed-module sourceTransformers in mocha setups

Fix `no such file or directory, open 'node:fs'` in `sandboxed-module`

* Remove `node:` in the SandboxedModule requires

* Fix new linting errors with `node:`

GitOrigin-RevId: 68f6e31e2191fcff4cb8058dd0a6914c14f59926
2024-11-11 09:04:51 +00:00
andrew rumble
d4911ea246 Stop waiting for finalize
Finalize promise will only resolve when the archive is closed. We want
to stream as soon as we have the data so this does not suit us. We want
to log errors that are thrown due to finalize, these should be
propogated by archiver to the response already.

GitOrigin-RevId: 4f9d727a00ead1be3caee62e1e0adba069a545c7
2024-09-24 08:05:28 +00:00
andrew rumble
487d9125a2 Improve stream error safety
GitOrigin-RevId: de4c512a62d304b3eeb2a1521aac173fa93d8411
2024-09-24 08:05:15 +00:00
andrew rumble
1409e32010 Move logging into ArchiveManager
GitOrigin-RevId: 71a28a0215c5f1a6975c9e2fcdcd476513df1cbc
2024-09-24 08:05:10 +00:00
andrew rumble
c387e60a28 Remove unnecessary symlink check
GitOrigin-RevId: 08d7295403a258818276b9fbd7666a20fbc2e00f
2024-09-24 08:05:06 +00:00
andrew rumble
c764566148 Allow all files to be in zip (in same directory)
GitOrigin-RevId: 14645a0c3db88faf00e2718b9574b5892ac3efcb
2024-09-24 08:04:53 +00:00
Liangjun Song
2133dde8bf remove dry run (#19820)
GitOrigin-RevId: b92e08da6654cdd37314f7c52a6946cc7ec8983a
2024-08-08 08:04:17 +00:00
Liangjun Song
5d472e9b38 limit the number of concurrent compile requests in clsi (#19717)
GitOrigin-RevId: 17909a4dd0717ea4a75288f734ddef19c7d6592e
2024-08-06 08:04:59 +00:00
Jakob Ackermann
9f68bc5660 Merge pull request #19296 from overleaf/jpa-issue-19290-3
[clsi] atomic writing of LaTeXMk output

GitOrigin-RevId: d81c497370587b98fc7ad282035cd59b0ae09ec8
2024-07-15 09:01:04 +00:00
Jakob Ackermann
51a24601ec Merge pull request #19293 from overleaf/jpa-issue-19290-2
[clsi] fix parsing of the requested file in symlink validation

GitOrigin-RevId: 86cfe8d62bb99ed6844faee0ff4af507e571e04d
2024-07-15 09:00:59 +00:00
Andrew Rumble
80ede301fa Merge pull request #18474 from overleaf/ar-return-build-id-from-clsi-after-compile
[clsi] Return buildId after compiles

GitOrigin-RevId: 872048f4fea8f5a00b817e29bd26a444d179a45f
2024-05-27 10:24:06 +00:00
Christopher Hoskin
3342d672c2 Merge pull request #18397 from overleaf/em-revert-download-all-link
Revert "Merge pull request #18190 from overleaf/ar-add-download-all-l…

GitOrigin-RevId: 681eb2734636d76558e682dc85083bfcaa6b7d2d
2024-05-17 08:05:10 +00:00
Andrew Rumble
105d67bd04 Merge pull request #18190 from overleaf/ar-add-download-all-link
[web] Add download all link for output files

GitOrigin-RevId: a275f17b6acf3130250d91462ba01588b93b62f5
2024-05-16 08:05:04 +00:00
Andrew Rumble
92f62f91c1 Merge pull request #18148 from overleaf/ar-add-output-zip-endpoint-to-clsi
[clsi] Add endpoints to get zip of output files

GitOrigin-RevId: a1a935e8170ab5a8d40baa6d96f8e42fe22c2e8c
2024-05-02 08:03:44 +00:00
Jakob Ackermann
a540754f6e Merge pull request #18116 from overleaf/jpa-bulk-replace-localhost
[misc] bulk replace localhost with 127.0.0.1

GitOrigin-RevId: d238f3635302e8ff5500d611108c4d1bef216726
2024-04-26 08:04:39 +00:00
Jakob Ackermann
9351c03c3b Merge pull request #17874 from overleaf/jpa-ol-project-id-in-env
[clsi] expose Overleaf project id to LaTeX compilation via env var

GitOrigin-RevId: cf8be6f8d83351a587d9ac7940f61a046a14035e
2024-04-12 08:04:56 +00:00
Jakob Ackermann
a6fb983afc Merge pull request #17871 from overleaf/jpa-bind-v4-v6
[misc] align the host for binding and requesting in tests

GitOrigin-RevId: 916521c56928329ff2cbf2817f3a0a27aeaf8c3d
2024-04-12 08:04:51 +00:00
Jakob Ackermann
63520c7076 Merge pull request #16859 from overleaf/jpa-sharelatex-cleanup
[misc] ShareLaTeX cleanup - high impact

GitOrigin-RevId: 6dcce9b0f15e30f7afcf6d69c3df36a369f38120
2024-02-09 09:04:11 +00:00
ilkin-overleaf
640ea9c916 Merge pull request #16806 from overleaf/ii-compile-dir-readonly
[clsi] Use readOnly bind-mounts for synctex and wordcount containers

GitOrigin-RevId: 8de094350604544dba4571aa849ad41a4a4d88d8
2024-02-05 09:03:58 +00:00
Brian Gough
e01af0e9c6 Merge pull request #16519 from overleaf/bg-clsi-timeouts-add-metrics
add metrics for clsi cache operations

GitOrigin-RevId: c5ec221afd235434c8b81bafa2f482f11422ac4e
2024-01-18 09:04:19 +00:00
Jakob Ackermann
c530b791a4 Merge pull request #16471 from overleaf/em-clsi-in-memory-lock
Replace filesystem lock in CLSI with in-memory lock

GitOrigin-RevId: de1ac3beca67bb4e9070806871a1c7b6a59aa77f
2024-01-11 09:05:22 +00:00
Jakob Ackermann
5aeb1f1459 Merge pull request #16438 from overleaf/jpa-em-replace-find-subprocess
[clsi] replace find subprocess for listing compile dir contents

GitOrigin-RevId: 36c8230ea6d787b1d948407d6473c14af8d6b5f6
2024-01-11 09:04:52 +00:00
Jakob Ackermann
b4b369fea5 Merge pull request #16428 from overleaf/jpa-clsi-replace-fs-extra
[clsi] replace fs-extra to avoid excess syscalls

GitOrigin-RevId: cbc8ec01b8ac9fd973e86a6d763c8f599323db94
2024-01-09 09:03:36 +00:00
Tyna William
36db21ed56 Merge pull request #13475 from overleaf/revert-13473-revert-13439-tw-support-rnw-files
Revert "Revert "support for Rnw files""

GitOrigin-RevId: 2bdaf154592f0b3c4bd3762d266b89a159a0b091
2023-07-17 10:55:08 +00:00
Tyna William
ea59a98386 Merge pull request #13473 from overleaf/revert-13439-tw-support-rnw-files
Revert "support for Rnw files"

GitOrigin-RevId: 1116814958cabed4c741bd0d3cce7670a6ca5ed4
2023-07-17 10:33:54 +00:00
Tyna William
4100ee81a1 Merge pull request #13439 from overleaf/tw-support-rnw-files
support for Rnw files

GitOrigin-RevId: 407ab1b6b131408fa0e4256d50781e9f70b0c3b8
2023-07-17 10:33:37 +00:00
Brian Gough
540a5466f3 Merge branch 'bg-socket-leak-detection'
GitOrigin-RevId: 19c04cd195d0966b1f33eb4e4795db19d183dcf2
2023-05-24 08:04:01 +00:00
Jakob Ackermann
77da9fd0cd Merge pull request #12824 from overleaf/jpa-clsi-pipe
[clsi] rewrite UrlFetcher in async/await and fetch/pipeline

GitOrigin-RevId: a2a90fd886252f06c818f807e85e566f3fc1f841
2023-04-28 08:04:01 +00:00
Jakob Ackermann
a437dcf537 Merge pull request #12823 from overleaf/jpa-clsi-download-tests
[clsi] modernise tests for file downloads

GitOrigin-RevId: b33749b9100812de8ae2a26bd84e933f0282457b
2023-04-27 08:06:54 +00:00
Jakob Ackermann
5380999459 Merge pull request #12815 from overleaf/jpa-pipe-tests
[misc] tests: migrate to stream.pipeline or request({ body: stream })

GitOrigin-RevId: 5de077c9ba9c7951d6fec7b1d6da6fb694394610
2023-04-27 08:06:20 +00:00
Eric Mc Sween
16fee6d7d2 Merge pull request #12203 from overleaf/em-camel-case-clsi
Camel case variables in clsi

GitOrigin-RevId: 1542a6b7f8886e5fef496ce31acd2bba537befa9
2023-03-23 09:04:46 +00:00
Jakob Ackermann
956cacaef7 Merge pull request #10139 from overleaf/jpa-split-test-min-chunk-size
[misc] add split test for a per request pdfCachingMinChunkSize

GitOrigin-RevId: 6a8a3c6267501789f2047a67b03db6ac6df427c3
2022-10-26 08:03:39 +00:00
Alf Eaton
c41c14c697 Remove deprecated grunt code (#9506)
GitOrigin-RevId: 2b19d73c593545aaa9f6eb88143d08c5df39a1be
2022-09-16 08:05:37 +00:00
Jakob Ackermann
e96f7df704 Merge pull request #9475 from overleaf/jpa-ta-clsi-root-doc-path
[clsi] remove stripping of characters from the root doc path

GitOrigin-RevId: 18a8a5c66eecc1cf21aa202180720707d27671ea
2022-09-02 08:05:02 +00:00
Jakob Ackermann
18768d3f1b Merge pull request #8950 from overleaf/bg-use-qpdf-xref-table
[clsi] parse xref table from qpdf output

GitOrigin-RevId: cc400c65082c7c8c28c21037b97b4fde66a85835
2022-08-03 08:04:10 +00:00
Brian Gough
9ea1226460 Merge pull request #8969 from overleaf/bg-issue8967
Apply draft mode to graphics package as well (in addition to graphicx)

GitOrigin-RevId: 6137f90ef9d579f0e6554801e8f2e0f5dee2aa83
2022-07-25 08:03:57 +00:00
Jakob Ackermann
dd5128c1d7 Merge pull request #8952 from overleaf/jpa-pdf-caching-tweaks
[clsi] server side pdf caching tweaks

GitOrigin-RevId: 758cbcc45b5a7ca0fe3dbf31bc43d9b0ef36e599
2022-07-21 08:04:41 +00:00
Eric Mc Sween
9199669c0f Merge pull request #8921 from overleaf/em-draft-mode
Change draft mode implementation

GitOrigin-RevId: 3de81a3643cc024c410b7b49e77cd41c7fec8294
2022-07-20 08:04:06 +00:00
Eric Mc Sween
7f6e2c971e Merge pull request #8757 from overleaf/em-clear-cache-on-timeout
Clear project after a compile has been interrupted

GitOrigin-RevId: 1b8e85c39843de3f63b7119f3a8a433567f57bcb
2022-07-19 08:03:56 +00:00
Jakob Ackermann
97624d0c6c Merge pull request #8847 from overleaf/jpa-emit-start-of-xref-table
[clsi] try to emit the start of the xref table

GitOrigin-RevId: 6d8348a349572cc997ac5924664428228c00fed1
2022-07-18 08:04:17 +00:00
Jakob Ackermann
b4402c41e8 Merge pull request #8808 from overleaf/jpa-clsi-linearize-examples
[clsi] linearize example pdfs and update xref table snapshots

GitOrigin-RevId: 5cfad6fdc4f6aef3366b62ca1c171f92e5f392fd
2022-07-12 08:03:30 +00:00
Eric Mc Sween
77aa2baa9d Merge pull request #8714 from overleaf/em-promisify-compile-manager
Promisify CompileManager

GitOrigin-RevId: 644ed061ae139d6196b24f8ead38579de6b844a3
2022-07-08 08:04:22 +00:00
Eric Mc Sween
baaf4d4240 Merge pull request #8286 from overleaf/em-halt-on-error-backend
Stop on first error backend implementation

GitOrigin-RevId: 497b1ed2c13f544760d8ad8d029359db75275389
2022-06-07 08:02:21 +00:00
Eric Mc Sween
bda307fbb5 Merge pull request #8267 from overleaf/em-decaf-clsi
Decaf cleanup some CLSI files

GitOrigin-RevId: afb4cd6e9eb9e95703efa955b93d4fedada10e3c
2022-06-07 08:02:18 +00:00