Prepare 0.5.17-pre.10 release

This commit is contained in:
asonix 2025-03-28 21:40:04 -05:00
parent 99c260f69d
commit b3aadbef8a
4 changed files with 89 additions and 3 deletions

2
Cargo.lock generated
View file

@ -2260,7 +2260,7 @@ dependencies = [
[[package]]
name = "pict-rs"
version = "0.5.17-pre.9"
version = "0.5.17-pre.10"
dependencies = [
"actix-form-data",
"actix-web",

View file

@ -1,7 +1,7 @@
[package]
name = "pict-rs"
description = "A simple image hosting service"
version = "0.5.17-pre.9"
version = "0.5.17-pre.10"
authors = ["asonix <asonix@asonix.dog>"]
license = "AGPL-3.0"
readme = "README.md"

View file

@ -11,7 +11,7 @@
rustPlatform.buildRustPackage {
pname = "pict-rs";
version = "0.5.17-pre.9";
version = "0.5.17-pre.10";
src = ./.;
cargoLock = {

86
releases/0.5.17-pre.10.md Normal file
View file

@ -0,0 +1,86 @@
# pict-rs 0.5.17-pre.10
pict-rs is a simple image hosting microservice, designed to handle storing and retrieving images,
animations, and videos, as well as providing basic image processing functionality.
## Overview
pict-rs 0.5.17-pre.10 includes dependency updates a few bug fixes, and a couple changes.
### Fixes
- [Animation uploads](#fix-for-animation-uploads)
- [Incorrect Content-Length HEAD responses](#fix-for-incorrect-content-length-hread-responses)
- [Read filters from the environment](#fix-reading-filters-from-the-environment)
### Changes
- [Include Content-Length in media responses](#include-content-length-in-media-responses)
- [Add integration tests](#add-integration-tests)
## Upgrade Notes
There are no significant changes from 0.5.17-pre.9. Upgrading should be as simple as pulling a new
version of pict-rs.
## Contributors
- @Nothing4You has a contribution this release: https://git.asonix.dog/asonix/pict-rs/pulls/82
## Descriptions
### Animation uploads
After the blurhash performance work from 0.5.17-pre.9, a bug was introduced that could cause
failures when generating blurhashes of some animated files. If an animation did not need to be fully
read into memory to compute a blurhash (e.g. just the first frame was read), pict-rs would return an
error instead of waiting for the blurhash computation to complete. This is fixed now and animated
uploads should work again.
### Incorrect Content-Length HEAD responses
Thanks to @Nothing4You for this fix.
HEAD requests are supposed to return the exact headers that a GET request to the same endpoint would
return, but pict-rs was incorrectly returning a `Content-Length: 0` header for these requests.
### Read filters from the environment
While pict-rs can read most configuration values from the commandline, a configuration file, or
environment variables, the `media.filters` configuration wasn't able to be read from environment
variables. This is fixed now in 0.5.17-pre.10. This variable now accepts a comma-separated list of
permitted filters for pict-rs.
Example:
```
PICTRS__MEDIA__FILTERS=blur,crop
```
### Include Content-Length in media responses
Thanks to @Nothing4You for this change.
Previously, pict-rs served files with the `Transfer-Encoding: Chunked` header, which doesn't give an
indication to clients or CDNs how long the served files are. Now, pict-rs will always serve a file
with a `Content-Length` header, improving the ability for CDNs to cache media.
### Add integration tests
pict-rs now has additional tests in the test suite that depend on imagemagick, exiftool, and ffmpeg
being installed on the system running the tests. By default, these tests do not run when
`cargo test` is invoked. In order to run these tests, the `system_deps` configuration flag must be
set.
Example
```
RUSTFLAGS='--cfg system_deps' cargo test
```