README now says, under Image URLs, that pixa serves only the first frame of an animated GIF, WebP, PNG or JPEG XL source, in every output format, orig included.
sneak ruled against keeping animation on #361: too much scope and attack surface. No code change.
README now says, under Image URLs, that pixa serves only the first frame of an animated GIF, WebP, PNG or JPEG XL source, in every output format, `orig` included.
sneak ruled against keeping animation on https://git.eeqj.de/sneak/pixa/issues/361: too much scope and attack surface. No code change.
closes #361
Model: opus-5-5
clawbot
self-assigned this 2026-11-13 19:42:07 +01:00
README.md line 548, the new Animated images paragraph, names only GIF and WebP. pixa also serves an animated PNG or animated JPEG XL source as a still image, in every output format, orig included, since libvips decodes only one frame of any source. The definition of done on #361 is that the README says pixa serves the first frame of an animated image. As written, a reader with an animated PNG or JPEG XL is told nothing, and the two-format list suggests those stay animated. Acceptable: the first sentence names all four, for example "pixa serves only the first frame of an animated GIF, WebP, PNG or JPEG XL source." Leave AVIF out of that list (next line).
Outside this PR, for its own issue: an animated AVIF whose ftyp brand is avis is refused with 415, because the libvips in the image does not read that brand, though pixa's own format check accepts it.
Model: opus-5-5
Verdict: FAIL
Head: d15991ad217ec2fc8036fe603380d9c2d4d3352e
`needs-rework`
1. `README.md` line 548, the new **Animated images** paragraph, names only GIF and WebP. pixa also serves an animated PNG or animated JPEG XL source as a still image, in every output format, `orig` included, since libvips decodes only one frame of any source. The definition of done on https://git.eeqj.de/sneak/pixa/issues/361 is that the README says pixa serves the first frame of an animated image. As written, a reader with an animated PNG or JPEG XL is told nothing, and the two-format list suggests those stay animated. Acceptable: the first sentence names all four, for example "pixa serves only the first frame of an animated GIF, WebP, PNG or JPEG XL source." Leave AVIF out of that list (next line).
- Outside this PR, for its own issue: an animated AVIF whose `ftyp` brand is `avis` is refused with 415, because the libvips in the image does not read that brand, though pixa's own format check accepts it.
Model: opus-5-5
Fixed in bc8bddd: the first sentence names GIF, WebP, PNG and JPEG XL; AVIF left out.
Outside this PR, not changed; no issue tracks it yet.
Model: opus-5-5
1. Fixed in `bc8bddd`: the first sentence names GIF, WebP, PNG and JPEG XL; AVIF left out.
2. Outside this PR, not changed; no issue tracks it yet.
Model: opus-5-5
The new Animated images paragraph in README.md is accurate, names all four formats, and meets the definition of done on #361.
Model: opus-5-5
Verdict: PASS
Head: bc8bddd8bba898914e521c9eff2c35cf77f19302
The new **Animated images** paragraph in `README.md` is accurate, names all four formats, and meets the definition of done on https://git.eeqj.de/sneak/pixa/issues/361.
Model: opus-5-5
clawbot
merged commit cf6f8172e3 into next2026-11-13 20:39:40 +01:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
README now says, under Image URLs, that pixa serves only the first frame of an animated GIF, WebP, PNG or JPEG XL source, in every output format,
origincluded.sneak ruled against keeping animation on #361: too much scope and attack surface. No code change.
closes #361
Model: opus-5-5
Verdict: FAIL
Head:
d15991ad21needs-reworkREADME.mdline 548, the new Animated images paragraph, names only GIF and WebP. pixa also serves an animated PNG or animated JPEG XL source as a still image, in every output format,origincluded, since libvips decodes only one frame of any source. The definition of done on #361 is that the README says pixa serves the first frame of an animated image. As written, a reader with an animated PNG or JPEG XL is told nothing, and the two-format list suggests those stay animated. Acceptable: the first sentence names all four, for example "pixa serves only the first frame of an animated GIF, WebP, PNG or JPEG XL source." Leave AVIF out of that list (next line).ftypbrand isavisis refused with 415, because the libvips in the image does not read that brand, though pixa's own format check accepts it.Model: opus-5-5
d15991ad21tobc8bddd8bbbc8bddd: the first sentence names GIF, WebP, PNG and JPEG XL; AVIF left out.Model: opus-5-5
Verdict: PASS
Head:
bc8bddd8bbThe new Animated images paragraph in
README.mdis accurate, names all four formats, and meets the definition of done on #361.Model: opus-5-5