Compare commits

...
8 Commits
Author SHA1 Message Date
hyugogirubato 6a1111a6bb release v3.4.4 2025-09-21 10:41:42 +02:00
hyugogirubato 220f19fe46 add additional image format 2025-09-20 19:43:52 +02:00
hyugogirubato bbab9ba3b3 Merge pull request #24 from hyugogirubato/dependabot/github_actions/actions/setup-python-6
Bump actions/setup-python from 5 to 6
2025-09-17 21:20:51 +02:00
hyugogirubato 5824a8428a add thrid-party plugins licences 2025-09-17 21:19:50 +02:00
hyugogirubato 23f7e37561 load pillow extra plugins 2025-09-17 21:16:40 +02:00
hyugogirubato 5cc4732238 add pillow extra plugins 2025-09-17 21:16:27 +02:00
hyugogirubato 9d5d539311 force sort archive filenames 2025-09-17 20:48:20 +02:00
dependabot[bot] f8274ae26b Bump actions/setup-python from 5 to 6
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 14:42:19 +00:00
7 changed files with 37 additions and 9 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ jobs:
- uses: actions/checkout@v5
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
+11
View File
@@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [3.4.4] - 2025-09-21
### Added
- Added `[pillow]` extension to support `.jxl` and `.avif` images.
### Fixed
- Files in the input archives are now sorted alphabetically.
## [3.4.3] - 2025-08-31
### Changed
@@ -215,6 +225,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Initial release.
[3.4.4]: https://github.com/hyugogirubato/cbz/releases/tag/v3.4.4
[3.4.3]: https://github.com/hyugogirubato/cbz/releases/tag/v3.4.3
[3.4.2]: https://github.com/hyugogirubato/cbz/releases/tag/v3.4.2
[3.4.1]: https://github.com/hyugogirubato/cbz/releases/tag/v3.4.1
+2
View File
@@ -216,6 +216,8 @@ This project uses the following third-party libraries:
- **[langcodes](https://pypi.org/project/langcodes/)** - MIT License
- **[Pillow](https://pypi.org/project/Pillow/)** - HPND License
- **[pillow-avif-plugin](https://pypi.org/project/pillow-avif-plugin/)** - MIT License
- **[pillow-jxl-plugin](https://pypi.org/project/pillow-jxl-plugin/)** - MIT License
- **[pypdf](https://pypi.org/project/pypdf/)** - BSD License
- **[rarfile](https://pypi.org/project/rarfile/)** - ISC License
- **[xmltodict](https://pypi.org/project/xmltodict/)** - MIT License
+7
View File
@@ -1,2 +1,9 @@
from .comic import ComicInfo
from .page import PageInfo
# Register optional Pillow plugins
for _plugin in ('pillow_avif', 'pillow_jxl'):
try:
__import__(_plugin)
except ImportError:
pass
+1 -1
View File
@@ -156,7 +156,7 @@ class ComicInfo(ComicModel):
ComicInfo: An instance of ComicInfo.
"""
pages = []
names = archive_file.namelist()
names = sorted(archive_file.namelist())
comic_info = {}
if XML_NAME in names:
+8 -6
View File
@@ -5,12 +5,14 @@ from langcodes import Language
XML_NAME = 'ComicInfo.xml'
IMAGE_FORMAT = {
'.jpeg', '.jpg', # Joint Photographic Experts Group
'.png', # Portable Network Graphics
'.gif', # Graphics Interchange Format
'.bmp', # Bitmap Image File
'.tiff', '.tif', # Tagged Image File Format
'.webp' # Web Picture Format
'.jpeg', '.jpg', # JPEG (Joint Photographic Experts Group)
'.png', # PNG (Portable Network Graphics)
'.gif', # GIF (Graphics Interchange Format)
'.bmp', # BMP (Bitmap Image File)
'.tiff', '.tif', # TIFF (Tagged Image File Format)
'.webp', # WebP (Web Picture Format, by Google)
'.jxl', # JPEG XL (Next-generation JPEG format)
'.avif' # AVIF (AV1 Image File Format, based on AV1 codec)
}
+7 -1
View File
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
[tool.poetry]
name = "cbz"
version = "3.4.3"
version = "3.4.4"
description = "CBZ simplifies creating, managing, and viewing comic book files in CBZ, CBR, and PDF formats, offering seamless packaging, metadata handling and built-in viewing capabilities."
license = "MIT"
authors = ["hyugogirubato <65763543+hyugogirubato@users.noreply.github.com>"]
@@ -46,6 +46,12 @@ Pillow = ">=10.4.0"
pypdf = ">=5.7.0"
rarfile = ">=4.2"
xmltodict = ">=0.14.2"
pillow-avif-plugin = { version = ">=1.5.2", optional = true, markers = "python_version >= '3.9'" }
pillow-jxl-plugin = { version = ">=1.3.4", optional = true, markers = "python_version >= '3.9'" }
[tool.poetry.extras]
pillow = ["pillow-avif-plugin", "pillow-jxl-plugin"]
[tool.poetry.scripts]
cbzplayer = "cbz.__main__:main"