Prepare v0.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

This commit is contained in:
asonix 2024-06-24 17:10:13 -05:00
parent 175b0f962a
commit 147f9406c8
5 changed files with 57 additions and 9 deletions

View file

@ -225,6 +225,7 @@ jobs:
direction: upload
token: ${{ secrets.GITHUB_TOKEN }}
release-dir: artifacts/
prerelease: true
publish-crate:
needs: [build]

11
Cargo.lock generated
View file

@ -771,11 +771,12 @@ dependencies = [
[[package]]
name = "dashmap"
version = "5.5.3"
version = "6.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856"
checksum = "804c8821570c3f8b70230c2ba75ffa5c0f9a4189b9a432b6656c536712acae28"
dependencies = [
"cfg-if",
"crossbeam-utils",
"hashbrown 0.14.5",
"lock_api",
"once_cell",
@ -1970,7 +1971,7 @@ dependencies = [
[[package]]
name = "pict-rs"
version = "0.5.16"
version = "0.5.17-pre.1"
dependencies = [
"actix-form-data",
"actix-web",
@ -2934,9 +2935,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
[[package]]
name = "subtle"
version = "2.6.0"
version = "2.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0d0208408ba0c3df17ed26eb06992cb1a1268d41b2c0e12e65203fbe3972cee5"
checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
[[package]]
name = "syn"

View file

@ -1,7 +1,7 @@
[package]
name = "pict-rs"
description = "A simple image hosting service"
version = "0.5.16"
version = "0.5.17-pre.1"
authors = ["asonix <asonix@asonix.dog>"]
license = "AGPL-3.0"
readme = "README.md"
@ -30,7 +30,7 @@ clap = { version = "4.5.7", features = ["derive"] }
color-eyre = "0.6.3"
config = { version = "0.14.0", default-features = false, features = ["json", "ron", "toml", "yaml"] }
console-subscriber = "0.3"
dashmap = "5.5.3"
dashmap = "6.0.1"
diesel = { version = "2.1.6", features = ["postgres_backend", "serde_json", "time", "uuid"] }
diesel-async = { version = "0.4.1", features = ["bb8", "postgres"] }
diesel-derive-enum = { version = "2.1.0", features = ["postgres"] }
@ -64,7 +64,7 @@ serde_urlencoded = "0.7.1"
sha2 = "0.10.8"
sled = { version = "0.34.7" }
streem = "0.2.0"
subtle = { version = "2.6.0", default-features = false }
subtle = { version = "2.6.1", default-features = false }
thiserror = "1.0.61"
time = { version = "0.3.36", features = ["serde", "serde-well-known"] }
tokio = { version = "1.38.0", features = ["full", "tracing"] }

View file

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

46
releases/0.5.17-pre.1.md Normal file
View file

@ -0,0 +1,46 @@
# 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
- [Object Storage Rewrite](#object-storage-rewrite)
- [Dependency Upgrades](#dependency-upgrades)
## 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.