koni_sevenz 0.9.0 copy "koni_sevenz: ^0.9.0" to clipboard
koni_sevenz: ^0.9.0 copied to clipboard

7z reader and writer (incl. AES-256) for the koni_archive ecosystem, including CB7 comic archives.

koni_sevenz #

7z reader + writer for the koni_archive ecosystem, including CB7 comic archives; pure Dart, runs everywhere Dart runs including the web (dart2js and dart2wasm).

Most applications should depend on the koni_archive facade, which registers this format automatically:

import 'package:koni_archive/io.dart';

final archive = await openArchiveFile('volume01.cb7'); // auto-detected
final pages = archive.glob('*.png').toList();
// First read decodes the solid block once; flips then hit the LRU cache.
final page = await archive.readBytes(pages[0], maxSize: 50 << 20);

Reading: LZMA/LZMA2/Copy/Deflate folders with Delta/BCJ(x86) filter chains, solid blocks (size-capped LRU cache), compressed headers, CRC verification by default. AES-256-encrypted archives, including encrypted headers (-mhe), decrypt via ArchiveReadOptions.password. BCJ2 and PPMd are detected with typed errors.

Writing: LZMA2 folders by default (Copy per entry via ArchiveCompression.stored), compressed headers, with the ecosystem's own pure-Dart LZMA/LZMA2 encoder, interop-verified against 7zz. Pass ArchiveWriteOptions.password to encrypt the file data with AES-256-CBC, and add encryptHeader to also encrypt the header (-mhe, hiding entry names); both are verified against 7zz.

See doc/features.md and doc/notes.md.

0
likes
150
points
219
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

7z reader and writer (incl. AES-256) for the koni_archive ecosystem, including CB7 comic archives.

Repository (GitHub)
View/report issues

Topics

#archive #sevenz #lzma

License

MIT (license)

Dependencies

koni_archive_core, koni_codecs

More

Packages that depend on koni_sevenz