The fetcher accepts image/svg+xml and internal/magic detects SVG. orig of an SVG at the orig size is the SVG unchanged, cached as a variant; at another size it is ErrSVGNotOriginalSize (400). Any other format renders it with libvips' thumbnail at the least size covering the output, at most 8192 on a side, so it stays sharp. An SVG's own size is not limited; one with a side over 8192 times the other is ErrSVGTooThin (415). The cache reads up to 1024 first bytes to find a file's format. Tests that pinned the SVG refusal now expect SVG to be read. Render time and memory are unbounded: P1 in TODO.md until the owner decides on #68. Model: opus-5-5
This commit is contained in:
1 parent
7f87aa17ca
commit
d96899eca6
20 files changed
+858
-87
No files matched your search
@@ -20,10 +20,15 @@ pre-1.0. The `1.0.0` milestone is in progress.
|
||||
|
||||
# Next Step
|
||||
|
||||
P2: security: per-origin rate limiting
|
||||
P1: security: bound the time and memory of rendering an SVG source. Both grow
|
||||
with what the SVG draws, such as filter effects. govips cannot stop or limit a
|
||||
render. The bound is the owner's decision on
|
||||
https://git.eeqj.de/sneak/pixa/issues/68.
|
||||
|
||||
# Future Steps
|
||||
|
||||
- P2: security
|
||||
- per-origin rate limiting
|
||||
- P2: HTTP response handling
|
||||
- Last-Modified headers
|
||||
- P2: operational
|
||||
|
||||
Reference in new issue
Block a user