blob: dc3c53d84e9b16426d55464bee56357bd413f63b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
Dedicated syntax highlighting server for cgit.
Use a simple HTTP server to highlight source for cgit. Improves performance
compared to invoking python on every request.
Requirements:
- Python 3.5.3+ (for aiohttp and asyncio.get_running_loop)
- aiohttp
- pygments
Usage:
1. Run `make install`.
2. Configure your system to run /usr/lib/cgit/syntax-highlighting-server.py at
boot. This can be done by `systemctl enable syntax-highlighting` on systemd
machines.
3. Set your cgit source filter to syntax-highlighting-client.sh.
Security:
aiohttp is not designed with security in mind. Slow clients can easily cause
excessive memory usage by sending very large highlighting requests, or by
opening a large number of connections and abandoning them. Therefore,
cgit-syntax-highlighting SHOULD NOT be exposed to the public Internet.
Suggestions are accepted for more lightweight asynchronous Python HTTP server
libraries.
|