zulip/zerver
Alex Vandiver c13e3dee24 katex: Replace subprocess call with minimal external service.
Replace a separate call to subprocess, starting `node` from scratch,
with an optional standalone node Express service which performs the
rendering.  In benchmarking, this reduces the overhead of a KaTeX call
from 120ms to 2.8ms.  This is notable because enough calls to KaTeX in
a single message would previously time out the whole message
rendering.

The service is optional because he majority of deployments do not use
enough LaTeX to merit the additional memory usage (60Mb).

Fixes: #17425.
2024-03-15 15:34:12 -07:00
..
actions events: Change format of authentication_methods realm_update_dict event. 2024-03-05 11:48:58 -08:00
data_import backends: Implementation of restricting certain backends by plan. 2024-03-05 11:48:58 -08:00
integration_fixtures/nagios
lib katex: Replace subprocess call with minimal external service. 2024-03-15 15:34:12 -07:00
management runtornado: Swap deferred reload events to the default. 2024-02-26 22:29:19 -08:00
migrations python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
models backends: Implementation of restricting certain backends by plan. 2024-03-05 11:48:58 -08:00
openapi api-docs: Update feature level 224 changelog and **Changes** notes. 2024-03-13 16:50:48 -07:00
tests katex: Replace subprocess call with minimal external service. 2024-03-15 15:34:12 -07:00
tornado ruff: Fix PLW0108 Lambda may be unnecessary. 2024-03-01 09:30:04 -08:00
transaction_tests ruff: Fix PLW0108 Lambda may be unnecessary. 2024-03-01 09:30:04 -08:00
views email_page: Migrate has_request_variables to typed_endpoint. 2024-03-13 16:47:34 -07:00
webhooks ruff: Fix E226 Missing whitespace around arithmetic operator. 2024-03-01 09:30:04 -08:00
worker deferred_work: Reduce batch size due to bad statistics. 2024-03-11 09:24:59 -07:00
__init__.py
apps.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
context_processors.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
decorator.py python: Reformat with Ruff formatter. 2024-02-29 17:07:16 -08:00
filters.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
forms.py email_validation: Merge two implementations of a disposable-email check. 2024-02-27 10:19:23 -08:00
logging_handlers.py error_notify: Remove custom email error reporting handler. 2023-07-20 11:00:09 -07:00
middleware.py parse_client: Migrate has_request_variables to typed_endpoint. 2024-03-12 13:27:21 -07:00
signals.py timezone: Only look up canonical time zones from the system. 2024-03-01 17:38:08 -08:00