Phase 3 of scanner enhancement plan Supported archive formats: - .cbz (ZIP archives) - .cbr (RAR archives) - .cb7 (7-Zip archives) - .cbt (TAR archives) - .tar.gz, .tar.bz2 (Compressed TAR) Features: - Extract ComicInfo.xml metadata from all supported formats - Extract cover images from archives - Fall back to filename-based metadata if ComicInfo.xml not found - Integrate into scanner workflow for automatic metadata extraction Dependencies added: - github.com/nwaples/rardecode v1.1.3 (MIT license, pure Go RAR) - github.com/bodgit/sevenzip v1.6.1 (MIT license, pure Go 7-Zip) Uses pure Go libraries only - no CGO required, ensuring maximum compatibility and cross-platform builds. All formats use a unified archiveFile interface for clean, maintainable code.
60 lines
2.3 KiB
AMPL
60 lines
2.3 KiB
AMPL
module bookhoard
|
|
|
|
go 1.25
|
|
|
|
require (
|
|
github.com/ArcadiaLin/go-epub v0.1.1
|
|
github.com/a-h/templ v0.3.977
|
|
github.com/fsnotify/fsnotify v1.9.0
|
|
github.com/go-playground/validator/v10 v10.30.1
|
|
github.com/golang-jwt/jwt/v5 v5.3.0
|
|
github.com/google/uuid v1.4.0
|
|
github.com/gorilla/websocket v1.5.3
|
|
github.com/jackc/pgx/v5 v5.4.3
|
|
github.com/labstack/echo-jwt/v4 v4.4.0
|
|
github.com/labstack/echo/v4 v4.13.4
|
|
github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e
|
|
github.com/stretchr/testify v1.11.1
|
|
github.com/yuin/goldmark v1.7.16
|
|
github.com/yuin/goldmark-highlighting v0.0.0-20220208100518-594be1970594
|
|
golang.org/x/crypto v0.46.0
|
|
)
|
|
|
|
require (
|
|
github.com/alecthomas/chroma v0.10.0 // indirect
|
|
github.com/andybalholm/brotli v1.1.1 // indirect
|
|
github.com/bodgit/plumbing v1.3.0 // indirect
|
|
github.com/bodgit/sevenzip v1.6.1 // indirect
|
|
github.com/bodgit/windows v1.0.1 // indirect
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
|
github.com/dlclark/regexp2 v1.4.0 // indirect
|
|
github.com/gabriel-vasile/mimetype v1.4.12 // indirect
|
|
github.com/go-playground/locales v0.14.1 // indirect
|
|
github.com/go-playground/universal-translator v0.18.1 // indirect
|
|
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
|
|
github.com/jackc/pgpassfile v1.0.0 // indirect
|
|
github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a // indirect
|
|
github.com/jackc/puddle/v2 v2.2.1 // indirect
|
|
github.com/klauspost/compress v1.17.11 // indirect
|
|
github.com/kr/text v0.2.0 // indirect
|
|
github.com/labstack/gommon v0.4.2 // indirect
|
|
github.com/leodido/go-urn v1.4.0 // indirect
|
|
github.com/mattn/go-colorable v0.1.14 // indirect
|
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
|
github.com/nwaples/rardecode v1.1.3 // indirect
|
|
github.com/pierrec/lz4/v4 v4.1.22 // indirect
|
|
github.com/pmezard/go-difflib v1.0.0 // indirect
|
|
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
|
github.com/spf13/afero v1.11.0 // indirect
|
|
github.com/ulikunitz/xz v0.5.12 // indirect
|
|
github.com/valyala/bytebufferpool v1.0.0 // indirect
|
|
github.com/valyala/fasttemplate v1.2.2 // indirect
|
|
go4.org v0.0.0-20200411211856-f5505b9728dd // indirect
|
|
golang.org/x/net v0.47.0 // indirect
|
|
golang.org/x/sync v0.19.0 // indirect
|
|
golang.org/x/sys v0.39.0 // indirect
|
|
golang.org/x/text v0.32.0 // indirect
|
|
golang.org/x/time v0.14.0 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
)
|