mirror of
https://github.com/hcengineering/platform.git
synced 2026-09-13 21:27:46 +02:00
Generated
+27
-6
@@ -293,6 +293,18 @@ version = "0.5.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7d902e3d592a523def97af8f317b08ce16b7ab854c1985a0c671e6f15cebc236"
|
||||
|
||||
[[package]]
|
||||
name = "arrayref"
|
||||
version = "0.3.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
|
||||
|
||||
[[package]]
|
||||
name = "arrayvec"
|
||||
version = "0.7.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
|
||||
|
||||
[[package]]
|
||||
name = "async-stream"
|
||||
version = "0.3.6"
|
||||
@@ -894,12 +906,16 @@ dependencies = [
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "blake2"
|
||||
version = "0.10.6"
|
||||
name = "blake3"
|
||||
version = "1.8.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
|
||||
checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0"
|
||||
dependencies = [
|
||||
"digest",
|
||||
"arrayref",
|
||||
"arrayvec",
|
||||
"cc",
|
||||
"cfg-if",
|
||||
"constant_time_eq",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1082,6 +1098,12 @@ dependencies = [
|
||||
"tiny-keccak",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "constant_time_eq"
|
||||
version = "0.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6"
|
||||
|
||||
[[package]]
|
||||
name = "convert_case"
|
||||
version = "0.6.0"
|
||||
@@ -1884,11 +1906,10 @@ dependencies = [
|
||||
"aws-sdk-s3",
|
||||
"bb8",
|
||||
"bb8-postgres",
|
||||
"blake2",
|
||||
"blake3",
|
||||
"bytes",
|
||||
"config",
|
||||
"futures-util",
|
||||
"hex",
|
||||
"hulyrs",
|
||||
"ksuid",
|
||||
"md5",
|
||||
|
||||
+1
-2
@@ -22,7 +22,6 @@ bb8-postgres = { version = "0.9.0", features = ["with-uuid-1"] }
|
||||
md5 = "0.8.0"
|
||||
size = { version = "0.5.0", features = ["serde"] }
|
||||
uuid = { version = "1.18", features = ["v4", "serde"] }
|
||||
hex = "0.4.3"
|
||||
serde_json = "1.0"
|
||||
hulyrs = { git = "https://github.com/hcengineering/hulyrs.git", features = [
|
||||
"actix",
|
||||
@@ -39,9 +38,9 @@ reqwest = { version = "0.12.15", default-features = false, features = [
|
||||
futures-util = "0.3.31"
|
||||
tokio-stream = "0.1.17"
|
||||
thiserror = "2.0.16"
|
||||
blake2 = "0.10.6"
|
||||
bytes = "1.10.1"
|
||||
ksuid = "0.2.0"
|
||||
tracing-opentelemetry = "0.31.0"
|
||||
mime = "0.3.17"
|
||||
async-stream = "0.3.6"
|
||||
blake3 = "1.8.2"
|
||||
|
||||
+5
-5
@@ -10,7 +10,7 @@ use actix_web::{
|
||||
},
|
||||
web::{Data, Header, Path, Payload},
|
||||
};
|
||||
use blake2::{Blake2s256, Digest};
|
||||
use blake3::Hasher;
|
||||
use bytes::{Bytes, BytesMut};
|
||||
use futures_util::{Stream, StreamExt};
|
||||
use serde::{Deserialize, Serialize};
|
||||
@@ -141,7 +141,7 @@ async fn upload(s3: &S3Client, pool: &Pool, mut payload: Payload) -> Result<Blob
|
||||
let mut buffer = BytesMut::with_capacity(1024 * 1024 * 6);
|
||||
let mut complete = CompletedMultipartUpload::builder();
|
||||
let mut part_number = 1;
|
||||
let mut hash = Blake2s256::new();
|
||||
let mut hash = Hasher::new();
|
||||
let mut total_in = 0;
|
||||
let mut total_uploaded = 0;
|
||||
|
||||
@@ -192,7 +192,7 @@ async fn upload(s3: &S3Client, pool: &Pool, mut payload: Payload) -> Result<Blob
|
||||
.send()
|
||||
.await?;
|
||||
|
||||
let hash = hex::encode(hash.finalize());
|
||||
let hash = hash.finalize().to_hex().to_string();
|
||||
|
||||
debug!(hash, "upload complete");
|
||||
|
||||
@@ -372,7 +372,7 @@ pub async fn get(request: HttpRequest) -> HandlerResult<HttpResponse> {
|
||||
|
||||
let response = if !parts.is_empty() {
|
||||
let mut content_length = 0;
|
||||
let mut etag = Blake2s256::new();
|
||||
let mut etag = Hasher::new();
|
||||
|
||||
for part in parts.iter() {
|
||||
content_length += part.data.size;
|
||||
@@ -382,7 +382,7 @@ pub async fn get(request: HttpRequest) -> HandlerResult<HttpResponse> {
|
||||
let mut response = HttpResponse::Ok();
|
||||
|
||||
response.insert_header((header::CONTENT_LENGTH, content_length));
|
||||
response.insert_header((header::ETAG, hex::encode(etag.finalize())));
|
||||
response.insert_header((header::ETAG, etag.finalize().to_hex().to_string()));
|
||||
|
||||
let headers = parts[0].data.headers.as_ref();
|
||||
if let Some(headers) = headers {
|
||||
|
||||
Reference in New Issue
Block a user