# pict-rs 0.5.0 ## Overview ### Headline Features - [Postgres Repo](#postgres-repo) - [Media Proxy](#media-proxy) ### Changes - [Improved Animation Support](#improved-animation-support) - [Media Configuration](#media-configuration) - [Improved Collision Resistance](#improved-collision-resistance) - [Optional Video Transcoding](#optional-video-transcoding) - [Library API Changes](#library-api-changes) - [Reject Malformed Deadliens](#reject-malformed-deadlines) - [Logging Verbosity](#logging-verbosity) ### Other Features - [Quality Configuration](#quality-configuration) - [Read-Only Mode](#read-only-mode) - [Danger-Dummy Mode](#danger-dummy-mode) - [Media Variant Retention](#media-variant-retention) - [Configurable Temporary Directory](#configurable-temporary-directory) - [Serve From Object Storage](#serve-from-object-storage) - [Prometheus Metrics](#prometheus-metrics) - [Internal Hashes Endpoint](#internal-hashes-endpoint) - [Internal Delete Endpoint](#internal-delete-endpoint) - [Error Codes](#error-codes) ### Fixes - [Clean Stray Magick Files](#clean-stray-magick-files) - [Always Drain Payloads](#always-drain-payloads) - [Constant-Time Equality for Deletion](#constant-time-equality-for-deletion) ### Removals - [ini and json5](#ini-and-json5) - [Client Pool Size](#client-pool-size) - [0.3 Migration Path](#0-3-migration-path) - [Prepare Upgrade Endpoint](#prepare-upgrade-endpoint) ## Upgrade Notes The upgrade from pict-rs 0.4 to 0.5 might take some time. Any uploads that have not had their metadata extracted will be processed during this migration. In order to reduce the time required the migration, pict-rs version 0.4.6 can be run first, and the `/internal/prepare_upgrade` endpoint can be hit. This will tell pict-rs to extract the required metadata for the 0.5 upgrade in the background while 0.4 is still running, enabling the upgrade to 0.5 to proceed much faster after it completes. More information about this endpoint can be found in the [0.4.6 release document](./0.4.6.md) If you're running the provided docker container with default configuration values, the 0.5 container can be pulled and launched with no changes. There is a migration from the 0.4 database format to the 0.5 database format that will occur automatically on first launch. This is also the process that will extract metadata for any uploads that have not had their metadata extracted yet. If you have any custom configuration, note that some media-related configuration values have been moved. See [Media Configuration](#media-configuration) below. More information can be found in the [pict-rs readme](https://git.asonix.dog/asonix/pict-rs#04-to-05-migration-guide). ## Descriptions ### Postgres Repo ### Media Proxy ### Improved Animation Support ### Media Configuration ### Improved Collision Resistance ### Optional Video Transcoding ### Library API Changes ### Reject Malformed Deadlines ### Logging Verbosity ### Quality Configuration ### Read-Only Mode ### Danger-Dummy Mode ### Media Variant Retention ### Configurable Temporary Directory ### Serve From Object Storage ### Prometheus Metrics ### Internal Hashes Endpoint ### Internal Delete Endpoint ### Error Codes ### Clean Stray Magick Files ### Always Drain Payloads ### Constant-Time Equality for Deletions ### ini and json5 ### Client Pool Size ### 0.3 Migration Path ### Prepare Upgrade Endpoint