• v0.5.17-pre.6 6014a793ab

    pict-rs 0.5.17-pre.6
    All checks were successful
    / deny (push) Successful in 22s
    / check (aarch64-unknown-linux-musl) (push) Successful in 2m58s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m28s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 3m3s
    / tests (push) Successful in 1m54s
    / clippy (push) Successful in 2m23s
    / publish-docker (push) Successful in 11s
    / publish-forgejo (push) Successful in 16s
    / publish-crate (push) Successful in 1m53s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 5m45s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 6m17s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 3m39s
    Pre-release

    asonix released this 2024-10-17 02:49:03 +00:00 | 20 commits to main since this release

    pict-rs 0.5.17-pre.6

    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.6 updates dependencies and updates postgres queries to avoid causing errors in
    postgres.

    Upgrade Notes

    There are no significant changes from 0.5.17-pre.5. Upgrading should be as simple as pulling a new
    version of pict-rs.

    Downloads
  • v0.5.17-pre.5 5a9a0b16fc

    pict-rs 0.5.17-pre.5
    All checks were successful
    / deny (push) Successful in 10s
    / check (aarch64-unknown-linux-musl) (push) Successful in 1m52s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 1m52s
    / check (x86_64-unknown-linux-musl) (push) Successful in 1m48s
    / clippy (push) Successful in 2m20s
    / tests (push) Successful in 2m23s
    / publish-docker (push) Successful in 11s
    / publish-forgejo (push) Successful in 14s
    / publish-crate (push) Successful in 1m51s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 5m35s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 5m38s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 3m30s
    Pre-release

    asonix released this 2024-07-21 17:10:41 +00:00 | 30 commits to main since this release

    pict-rs 0.5.17-pre.5

    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.5 fixes a bug in missing variant detection introduced in -pre.4 that made the
    feature essentially do nothing.

    Upgrade Notes

    There are no significant changes from 0.5.17-pre.4. Upgrading should be as simple as pulling a new
    version of pict-rs.

    Downloads
  • v0.5.17-pre.4 56c42b6e57

    pict-rs 0.5.17-pre.4
    All checks were successful
    / deny (push) Successful in 22s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 2m58s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m23s
    / check (aarch64-unknown-linux-musl) (push) Successful in 2m56s
    / tests (push) Successful in 1m52s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 6m25s
    / clippy (push) Successful in 2m16s
    / publish-forgejo (push) Successful in 18s
    / publish-crate (push) Successful in 1m52s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 5m48s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 3m47s
    / publish-docker (push) Successful in 13s
    Pre-release

    asonix released this 2024-07-20 22:07:18 +00:00 | 32 commits to main since this release

    pict-rs 0.5.17-pre.4

    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.4 adds handling for rare cases where variant records exist and refer to missing
    files. These records should now be properly cleaned upon request.

    Upgrade Notes

    There are no significant changes from 0.5.17-pre.3. Upgrading should be as simple as pulling a new
    version of pict-rs.

    Downloads
  • v0.5.17-pre.3 4b0e6cf4db

    pict-rs 0.5.17-pre.3
    Some checks failed
    / check (aarch64-unknown-linux-musl) (push) Successful in 2m29s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 2m50s
    / deny (push) Failing after 2m2s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m41s
    / clippy (push) Successful in 1m32s
    / tests (push) Successful in 1m48s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 5m25s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 5m29s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 3m34s
    / publish-docker (push) Successful in 14s
    / publish-forgejo (push) Has started running
    / publish-crate (push) Successful in 1m51s
    Pre-release

    asonix released this 2024-06-26 19:57:45 +00:00 | 37 commits to main since this release

    pict-rs 0.5.17-pre.3

    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.3 removes custom handling for vhost style object storage URLs, and properly sets
    pict-rs user agent headers. This should resolve issues with bucket-scoped credentials.

    Upgrade Notes

    There are no significant changes from 0.5.17-pre.2. Upgrading should be as simple as pulling a new
    version of pict-rs.

    Downloads
  • v0.5.17-pre.2 38a5b72606

    pict-rs 0.5.17-pre.2
    All checks were successful
    / check (aarch64-unknown-linux-musl) (push) Successful in 1m53s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 2m32s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m35s
    / clippy (push) Successful in 1m40s
    / deny (push) Successful in 41s
    / tests (push) Successful in 1m50s
    / publish-docker (push) Successful in 11s
    / publish-forgejo (push) Successful in 19s
    / publish-crate (push) Successful in 1m54s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 5m36s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 5m42s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 3m32s
    Pre-release

    asonix released this 2024-06-25 20:57:09 +00:00 | 41 commits to main since this release

    pict-rs 0.5.17-pre.2

    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.2 fixes bugs with object storage configuration introduced in 0.5.17-pre.1, and
    removes unused configuration options.

    Upgrade Notes

    There are no significant changes from 0.5.17-pre.1. Upgrading should be as simple as pulling a new
    version of pict-rs.

    Downloads
  • v0.5.17-pre.1 147f9406c8

    pict-rs 0.5.17-pre.1
    All checks were successful
    / check (aarch64-unknown-linux-musl) (push) Successful in 1m52s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 2m37s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m43s
    / deny (push) Successful in 11s
    / clippy (push) Successful in 2m11s
    / tests (push) Successful in 1m55s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 5m39s
    / publish-forgejo (push) Successful in 17s
    / publish-crate (push) Successful in 1m54s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 3m39s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 6m27s
    / publish-docker (push) Successful in 10s
    Pre-release

    asonix released this 2024-06-24 22:31:14 +00:00 | 42 commits to main since this release

    pict-rs 0.5.17-pre.1

    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.1 is a dependency upgrade release. The primary change is the object storage
    implementation has been swapped from rusty-s3 with custom reqwest code, to an off-the-shelf option
    called object_store. Because this change is significant and might not fully respect existing
    configurations, I've decided to put out a prerelease.

    Changes

    Upgrade Notes

    The object storage backend has been rewritten since 0.5.16, and existing configurations are not
    guaranteed to work. If this release breaks your setup, please let me know.

    Descriptions

    Object Storage Rewrite

    In order to improve compatibility with existing implementations, and reduce maintenance burden, most
    of the object-storage code has been removed in favor of using an off-the-shelf library. The
    underlying technologies are largely the same as the previous implementation, so the impact on
    pict-rs' dependency tree is minimal.

    That said, object_store enforces the use of rustls-native-tls with reqwest, which could potentially
    cause issues in some environments. If this change breaks anyone I will work with upstream to resolve
    this.

    Dependency Upgrades

    Outside of the object storage changes, various dependencies have been updated to their latest
    versions. Notably, reqwest 0.12.5 removes the last dependency on rustls 0.22, allowing pict-rs to
    fully migrate to rustls 0.23. Additionally, pict-rs has dropped aws-lc-rs in favor of ring after the
    previous release which introduced aws-lc-rs. My reasoning is that the new object_store dependency
    pulls in ring anyway and there's no real reason to have two crypto providers in the same
    application.

    Downloads
  • v0.5.16 31049d3922

    pict-rs 0.5.16
    All checks were successful
    / check (aarch64-unknown-linux-musl) (push) Successful in 3m33s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 3m33s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m42s
    / clippy (push) Successful in 1m26s
    / tests (push) Successful in 1m56s
    / publish-docker (push) Successful in 14s
    / publish-forgejo (push) Successful in 16s
    / publish-crate (push) Successful in 1m56s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 4m15s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 6m21s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 6m25s
    Stable

    asonix released this 2024-06-09 22:49:19 +00:00 | 58 commits to main since this release

    pict-rs 0.5.16

    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.16 includes a couple bugfixes for parsing query paramters, better handling of proxied
    media, clearer postgres errors, and updated dependencies.

    Fixes

    Changes

    Upgrade Notes

    There are no significant changes from 0.5.15. Upgrading should be a simple as pulling a new version
    of pict-rs.

    Descriptions

    Query Fixes

    A couple boolean query parameters were not getting parsed properly, this impacted ?backgrounded for
    image downloads and ?force for pruning media. pict-rs 0.5.16 resolves this.

    Better Concurrent Proxies

    When the same proxy endpoint was accessed more than once concurrently, only one request would end up
    succeeding. Now pict-rs better handles when multiple concurrent requests are made.

    Improved Postgres Errors

    In some postgres errors, it is difficult to tell whether an error originated from within the
    postgres client or the postgres server. pict-rs 0.5.16 now includes extra context when displaying
    postgres errors to help discern this.

    Downloads
  • v0.5.15 f05eed2e36

    pict-rs 0.5.15
    Some checks failed
    / check (aarch64-unknown-linux-musl) (push) Successful in 2m11s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 2m13s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m14s
    / clippy (push) Successful in 1m26s
    / tests (push) Successful in 1m54s
    / publish-docker (push) Successful in 15s
    / publish-crate (push) Successful in 2m6s
    / publish-forgejo (push) Failing after 8s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 6m29s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 7m3s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 4m12s
    Stable

    asonix released this 2024-06-04 17:18:02 +00:00 | 73 commits to main since this release

    pict-rs 0.5.15

    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.15 includes a bugfix for cleaning proxied media, updated dependencies, and a new option
    to log requests.

    Fixes

    Additions

    Upgrade Notes

    There are no significant changes from 0.5.14. Upgrading should be a simple as pulling a new version
    of pict-rs.

    Descriptions

    Proxied Media Cleanup

    At some point, the cleanup logic for proxied media got flipped around to try removing the internal
    alias before removing the proxy record. This works fine with a sled backend, but not with a
    postgres backend, and postgres would complain about invalidating a foreign key relationship.
    pict-rs 0.5.15 fixes this by ensuring that the related proxy record is cleaned first.

    Request Logging

    A new configuration option has been added to pict-rs as an option to get more information about
    what pict-rs is doing. By default, pict-rs only logs what it considers to be errors, but when
    log_requests is enabled, it will also log information about successful requests. This can help
    with debugging without enabling full debug logs or resorting to logging spans.

    It can be configured via toml

    [tracing.logging]
    log_requests = true
    

    via environment variables

    PICTRS__TRACING__LOGGING__LOG_REQUESTS=true
    

    or via the commandline

    pict-rs --log-requests run
    
    Downloads
  • v0.5.14 1c4e343d9d

    pict-rs 0.5.14
    All checks were successful
    / check (aarch64-unknown-linux-musl) (push) Successful in 3m32s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 3m31s
    / check (x86_64-unknown-linux-musl) (push) Successful in 2m41s
    / tests (push) Successful in 1m56s
    / clippy (push) Successful in 2m23s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 6m41s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 4m7s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 6m45s
    / publish-docker (push) Successful in 15s
    / publish-forgejo (push) Successful in 20s
    / publish-crate (push) Successful in 1m55s
    Stable

    asonix released this 2024-05-21 03:45:05 +00:00 | 80 commits to main since this release

    pict-rs 0.5.14

    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.14 includes a bugfix for identifying certain MOV videos, as well as updated dependencies.

    Fixes

    Upgrade Notes

    There are no significant changes from 0.5.13. Upgrading should be as simple as pulling a new version
    of pict-rs.

    Descriptions

    Empty Stream Parsing

    Certain videos, when identified with ffprobe, contain stream json objects with no fields. This would
    cause pict-rs to fail to parse the information for these videos, as it expects streams to at least
    contain a codec field. In pict-rs 0.5.14, empty streams are now considered valid and are simply
    ignored.

    Downloads
  • v0.5.13 6d40fbee47

    pict-rs 0.5.13
    All checks were successful
    / check (aarch64-unknown-linux-musl) (push) Successful in 1m53s
    / check (armv7-unknown-linux-musleabihf) (push) Successful in 1m55s
    / check (x86_64-unknown-linux-musl) (push) Successful in 1m51s
    / clippy (push) Successful in 1m21s
    / tests (push) Successful in 1m49s
    / publish-docker (push) Successful in 13s
    / publish-forgejo (push) Successful in 19s
    / publish-crate (push) Successful in 1m54s
    / build (map[artifact:linux-amd64 platform:linux/amd64 target:x86_64-unknown-linux-musl]) (push) Successful in 3m41s
    / build (map[artifact:linux-arm32v7 platform:linux/arm/v7 target:armv7-unknown-linux-musleabihf]) (push) Successful in 3m49s
    / build (map[artifact:linux-arm64v8 platform:linux/arm64 target:aarch64-unknown-linux-musl]) (push) Successful in 3m42s
    Stable

    asonix released this 2024-04-15 21:52:29 +00:00 | 106 commits to main since this release

    pict-rs 0.5.13

    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.13 is a maintenance release aiming to enable better logging in some scenarios.

    Features

    Changes

    Upgrade Notes

    There are no significant changes from 0.5.12. Upgrading should be as simple as pulling a new version
    of pict-rs.

    Descriptions

    Colorless Logging

    When opting to use the json logger, the tracing subscriber automatically disables colored output.
    This didn't remove colors from errors, though, and pict-rs hasn't had a way to disable colors while
    using other log formats. pict-rs 0.5.13 introduces a new configuration value to remove colored
    output from all logs regardless of logging format.

    With pict-rs.toml

    [tracing.logging]
    no_ansi = true
    

    With environment variables

    PICTRS__TRACING__LOGGING__NO_ANSI=true
    

    With commandline flags

    pict-rs --no-log-ansi run
    

    Colors in logs can be useful, so I imagine this option won't be used much. There has been a request
    for this functionality though and it's little cost to maintain.

    Remove Flume

    Recently I've been debugging a memory usage issue in another project of mine. I wasn't able to fully
    track down the cause, but I did notice that removing the
    flume channel library seemed to make the leak go away. Since I
    also use flume in pict-rs, I'm opting to replace it with tokio's native channel implementation. This
    may or may not improve memory usage, but it does reduce the depenency count and therefore build time
    for pict-rs.

    Downloads