Add S3 encryption
All checks were successful
CI / Typos (push) Successful in 19s
CI / Build and test (push) Successful in 2m36s
CI / Clippy (push) Successful in 3m33s
CI / Build and test (all features) (push) Successful in 8m52s

This commit is contained in:
2026-03-21 21:03:52 -07:00
parent 39f3c7707b
commit 4737acbcf4
33 changed files with 1307 additions and 202 deletions

View File

@@ -1,5 +1,6 @@
use epub::doc::EpubDoc;
use pile_config::Label;
use pile_io::SyncReadBridge;
use std::{
collections::HashMap,
sync::{Arc, OnceLock},
@@ -8,7 +9,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct EpubMetaExtractor {

View File

@@ -1,5 +1,6 @@
use epub::doc::EpubDoc;
use pile_config::Label;
use pile_io::SyncReadBridge;
use std::{
collections::HashMap,
sync::{Arc, OnceLock},
@@ -8,7 +9,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct EpubTextExtractor {

View File

@@ -1,4 +1,5 @@
use pile_config::Label;
use pile_io::SyncReadBridge;
use std::{
collections::HashMap,
io::BufReader,
@@ -8,7 +9,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct ExifExtractor {

View File

@@ -1,6 +1,7 @@
use mime::Mime;
use pile_config::Label;
use pile_flac::{FlacBlock, FlacDecodeError, FlacReader};
use pile_io::SyncReadBridge;
use std::{
collections::HashMap,
io::BufReader,
@@ -10,7 +11,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ListExtractor, ObjectExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct FlacImagesExtractor {

View File

@@ -1,5 +1,6 @@
use id3::Tag;
use pile_config::Label;
use pile_io::SyncReadBridge;
use std::{
borrow::Cow,
collections::HashMap,
@@ -10,7 +11,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct Id3Extractor {

View File

@@ -1,4 +1,5 @@
use pile_config::Label;
use pile_io::AsyncReader;
use std::{
collections::HashMap,
sync::{Arc, OnceLock},
@@ -6,7 +7,7 @@ use std::{
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{AsyncReader, Item, PileValue},
value::{Item, PileValue},
};
fn json_to_pile(value: serde_json::Value) -> PileValue {

View File

@@ -1,6 +1,7 @@
use pdf::file::FileOptions;
use pdf::primitive::{Date, TimeRel};
use pile_config::Label;
use pile_io::SyncReadBridge;
use std::{
collections::HashMap,
io::BufReader,
@@ -10,7 +11,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct PdfMetaExtractor {

View File

@@ -1,5 +1,6 @@
use image::ImageFormat;
use pdfium_render::prelude::*;
use pile_io::SyncReadBridge;
use std::{
io::{BufReader, Cursor},
sync::Arc,
@@ -8,7 +9,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ListExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct PdfPagesExtractor {

View File

@@ -1,6 +1,7 @@
use pdf::content::{Op, TextDrawAdjusted};
use pdf::file::FileOptions;
use pile_config::Label;
use pile_io::SyncReadBridge;
use std::{
collections::HashMap,
io::BufReader,
@@ -10,7 +11,7 @@ use tracing::trace;
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{Item, PileValue, SyncReadBridge},
value::{Item, PileValue},
};
pub struct PdfTextExtractor {

View File

@@ -1,9 +1,10 @@
use pile_config::Label;
use pile_io::AsyncReader;
use std::sync::{Arc, OnceLock};
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{AsyncReader, Item, PileValue},
value::{Item, PileValue},
};
pub struct TextExtractor {

View File

@@ -1,4 +1,5 @@
use pile_config::Label;
use pile_io::AsyncReader;
use std::{
collections::HashMap,
sync::{Arc, OnceLock},
@@ -6,7 +7,7 @@ use std::{
use crate::{
extract::traits::{ExtractState, ObjectExtractor},
value::{AsyncReader, Item, PileValue},
value::{Item, PileValue},
};
fn toml_to_pile(value: toml::Value) -> PileValue {