chore: bump collab (#4348)

* chore: bump collab

* chore: optimize import

* chore: bump

* chore: disable ai test
This commit is contained in:
Nathan.fooo
2024-01-10 11:15:05 +08:00
committed by GitHub
parent 347698f68f
commit 190fae196f
13 changed files with 150 additions and 60 deletions

View File

@ -22,3 +22,7 @@ validator = "0.16.0"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
zip = { version = "0.6.6", features = ["deflate"] }
brotli = { version = "3.4.0", optional = true }
[features]
compression = ["brotli"]

View File

@ -0,0 +1,17 @@
use brotli::{CompressorReader, Decompressor};
use std::io;
use std::io::Read;
pub fn compress(data: &[u8], quality: u32, buffer_size: usize) -> io::Result<Vec<u8>> {
let mut compressor = CompressorReader::new(data, buffer_size, quality, 22);
let mut compressed_data = Vec::new();
compressor.read_to_end(&mut compressed_data)?;
Ok(compressed_data)
}
pub fn decompress(data: &[u8], buffer_size: usize) -> io::Result<Vec<u8>> {
let mut decompressor = Decompressor::new(data, buffer_size);
let mut decompressed_data = Vec::new();
decompressor.read_to_end(&mut decompressed_data)?;
Ok(decompressed_data)
}

View File

@ -4,6 +4,9 @@ pub mod box_any;
#[cfg(not(target_arch = "wasm32"))]
pub mod file_util;
#[cfg(feature = "compression")]
pub mod compression;
pub mod future;
pub mod ref_map;
pub mod util;