pict-rs 0.4.5 Stable
2023-10-05 01:54:41 +00:00| 220 commits to main since this release
pict-rs 0.4.5 contains a new commandline option for improving throughput when migrating storage, as
well as a change in behavior for the delete endpoint. Additionally there are a few dependency
There's no significant changes from 0.4.4, so upgrading should be as simple as pulling a new version
When migrating from filesystem storage to object storage, pict-rs initially migrated every file
sequentially. This was extremely slow, so in 0.4.1 this was made concurrent. Since then, the object
storage migration has moved 32 files at a time. This still might be too slow for some large
deployments, so pict-rs 0.4.5 is making this value configurable.
--concurrencyflag can be passed to the
migrate-storesubcommand with any integer
value. By default, pict-rs sets this value to 32, but for large deployments, setting it to 128, 256,
or even 512 might be useful. Note that increasing the concurrency will increase the number of
connections to the object storage provider.
$ pict-rs \ migrate-store \ --concurrency 32 \ filesystem \ -p /path/to/files \ object-storage \ -e https://object-storage-endpoint \ -b bucket-name \ -r region \ -a access-key \ -s secret-key \ sled \ -p /path/to/sled-repo
Previously, the endpoint for deleting images would always return an HTTP 204 status after queueing a
job to delete the image. This meant that if an invalid
delete tokenwas provided, or if the
deletion failed for some other reason, the client making the request would not be informed of this.
pict-rs 0.4.5 now performs this deletion inline to ensure the client is made aware of problems.
pict-rs 0.4.4 Stable
2023-09-30 16:29:29 +00:00| 227 commits to main since this release
pict-rs 0.4.4 contains a configuration option and a few dependency upgrades. The primary motivation
for publishing this release is to produce new docker images containing the libvpx CVE fix released
within the last few days.
There's no significant changes from 0.4.3, so upgrading should be as simple as pulling a new version
External Validation Timeout
A configuration option has been added to change the HTTP Timeout for the external validation
service. This allows letting services that might take a while to respond to be used by extending the
timeout. The default value is 30 seconds.
# pict-rs.toml [media] external_validation = "http://validation.service/endpoint" external_validation_timeout = 60
# environment variables PICTRS__MEDIA__EXTERNAL_VALIDATION=http://validation.service/endpoint PICTRS__MEDIA__EXTERNAL_VALIDATION_TIMEOUT=60
OpenTelemetry Span Disconnection
The tracing-opentelemetry dependency has been updated from 0.20 to 0.21, which includes a bugfix for
tracing spans becoming disconnected from each other and making tracing aggregation services (such as
Jaeger) less useful. If your setup includes an OpenTelemetry collector, this update will be
interesting to you.
2023-09-15 19:34:16 +00:00| 231 commits to main since this release
pict-rs 0.4.3 contains a single new feature and a few dependency upgrades. The primary motivation
for publishing this release is to produce new docker images containing the libwebp CVE fix released
within the last few days.
There's no significant changes from 0.4.2, so upgrading should be as simple as pulling a new version
There is a new config option in the
external_validation. This setting
exists to allow custom validation of uploaded images in pict-rs, allowing 3rd party applications to
be developed for further filtering permitted uploads. When this value is set, pict-rs will upload
each uploaded file after initial ingest processing to the provided URL. The
set to the file's media type, and the request's body is simply the uploaded file. The expected
response is a simple 2XX for files that pass validation, and any other status code for files that do
not (although I personally recommend a 4XX response).
This new value is optional. There is no default value and no first-party application is provided for
providing this extra validation.