Repository navigation
build: bump Pillow to 13.0.0 and pypdf to 6.21.2 - #123
Merged
openjiuwen-release-bot[bot] merged 1 commit intoOct 26, 2026
Merged
Conversation
Update both exact dependency pins and regenerate uv.lock. Bundle the published Pillow 13 manylinux2014 wheels for x86_64 and aarch64 in Linux offline distributions, with their verified release URLs and SHA-256 sums.
Contributor
|
head_sha: 变更摘要本变更是一次依赖版本升级:将运行时依赖 主要改动
|
Contributor
|
head_sha: 代码审查审查结论 按文件逐一核查结果:
发现统计:
总体风险判断:改动面极小、语义单一(两处依赖版本提升 + 两行离线 wheel 覆盖),依赖来源仍是本仓库自有 release,未引入新的可疑来源或非固定版本。主要风险不在代码语义,而在于 uv.lock 未出现在本次变更文件中——它与新 pin 及覆盖清单的三方一致性由构建脚本硬校验、并有专门测试覆盖,一旦 lock 未同步,
💬 仅评论 |
Contributor
openjiuwen-release-bot
Bot
merged commit Oct 26, 2026
9de0d5d
into
openJiuwen-ai:main
18 checks passed
openjiuwen-release-bot Bot
pushed a commit
that referenced
this pull request
Oct 26, 2026
[mirror] #123: build: bump Pillow to 13.0.0 and pypdf to 6.21.2 Created-by: openjiuwen-sync Commit-by: Jiaqi (0x7c13) Liu Merged-by: Ox7c13 Description: Paired: [GitHub #123](#123) ↔ [GitCode !90](https://gitcode.com/openJiuwen/iCode/merge_requests/90) <!-- bot1-mirror-meta --> github_pr: 123 head_repo: 0x7c13/iCode head_ref: 0x7c13/pillow-13-pin head_sha: dbbef11 base_repo: openJiuwen-ai/iCode base_ref: main github_repo: openJiuwen-ai/iCode base_branch: main base_sha: d8d5f24 github_user: 0x7c13 <!-- /bot1-mirror-meta --> GitHub PR mirror for CodeArts CI. <!-- bot1-source-body --> Upgrade Pillow from 12.3.0 to 13.0.0 and pypdf from 6.21.1 to 6.21.2, and regenerate `uv.lock`. The same commit updates both Linux offline overrides to the published `pillow-13.0.0-manylinux2014.1` wheels built by #122. Only the two requested dependency versions change in the lockfile. The release tag resolves to `d8d5f24fa69037d3b24af83a6284ca602c0a5a78`. Both public wheel downloads and both manifest downloads were verified against their release SHA-256 digests; the committed override rows exactly match the published manifest. The release is a pre-release and is not a draft. Compatibility review against the [Pillow 13 release notes](https://pillow.readthedocs.io/en/stable/releasenotes/13.0.0.html) and [pypdf 6.21.2 changelog](https://pypdf.readthedocs.io/en/6.21.2/meta/CHANGELOG.html): - No removed Pillow APIs are used by `src/`. `Image.open(formats=...)` still accepts the existing allowlists, and pypdf still decodes through the `PIL.Image` module wrapped by the document parser. Its explicitly named image formats remain within the reviewed set. - Pillow no longer saves mode I directly as PNG; the clipboard path already converts unsupported modes to RGBA, and document/attachment compression converts to RGB before JPEG encoding. - Pillow now applies `reducing_gap` when thumbnailing RGBA/LA images. This can change chat-preview sampling pixels; it requires no API adaptation. Document/attachment downscaling operates on RGB. Existing image preview, clipboard, document-image and PDF decoder restriction tests exercise these paths. Validation: - `uv lock --check`: passed. - Ruff checks and formatting: passed. - `uv build` and `uv run python scripts/check_wheel.py dist/icode_tui-0.31.0-py3-none-any.whl`: passed, including fresh-index dependency resolution, all CLI help commands, TUI/document imports, bundled docs and ripgrep. - Smart Test with exactly `pyproject.toml uv.lock scripts/offline_wheel_overrides.txt` automatically escalated to the full non-integration suite: **33,163 tests passed, 60 skipped; 1,241 architecture checks passed, 1 deselected**. This includes `test_offline_wheel_overrides_match_the_lock` and the image/PDF restriction tests. - Installed-version probes decoded and normalized all seven allowed document formats, verified pypdf's named-format subset and confirmed the decoder wrapper still installs. Both published Linux wheels contain 26 ELF objects with a maximum requirement of GLIBC_2.17. - [PR CI on dbbef11](https://github.com/openJiuwen-ai/iCode/actions/runs/40254598242): all jobs passed on the first attempt across Linux, macOS and Windows, including lint, architecture, test shards, type checks, builds and wheel installation. Follow-up: recheck that the release remains published after the next GitCode-to-GitHub sync. No merge or new release is requested by this PR. <!-- /bot1-source-body --> See merge request: openJiuwen/iCode!90
Contributor
|
🤖 This pull request has been merged, and the target branch is up to date. |
openjiuwen-release-bot Bot
pushed a commit
that referenced
this pull request
Oct 26, 2026
[mirror] #124: chore(release): bump version to 0.32.0 Created-by: openjiuwen-sync Commit-by: Jiaqi (0x7c13) Liu Merged-by: Ox7c13 Description: Paired: [GitHub #124](#124) ↔ [GitCode !91](https://gitcode.com/openJiuwen/iCode/merge_requests/91) <!-- bot1-mirror-meta --> github_pr: 124 head_repo: 0x7c13/iCode head_ref: dev/release-0.32.0 head_sha: c9d1882 base_repo: openJiuwen-ai/iCode base_ref: main github_repo: openJiuwen-ai/iCode base_branch: main base_sha: e225cb1 github_user: 0x7c13 <!-- /bot1-mirror-meta --> GitHub PR mirror for CodeArts CI. <!-- bot1-source-body --> Bump iCode to 0.32.0 so a release is cut from current `main`. ## Changes - `pyproject.toml` and `uv.lock`: the package version moves from 0.31.0 to 0.32.0. - i18n catalogs (`locales/chrys.pot`, `locales/zh-Hans/LC_MESSAGES/chrys.po`, the compiled `chrys.mo`): the `Project-Id-Version` header now says 0.32.0. No message changes. ## Release Merging this changes the version in `pyproject.toml` on `main`, so `tag-release.yml` creates the `v0.32.0` tag and starts `cd.yml` for that tag. This is the first release whose Linux offline binaries bundle Pillow 13.0.0, from the glibc 2.17 wheels published as `pillow-13.0.0-manylinux2014.1` (#122, #123). ## Included since 0.31.0 - #123 Pillow 13.0.0 and pypdf 6.21.2 (pypdf security fixes); the Linux offline binaries take the matching glibc 2.17 Pillow wheels - #122 the manylinux2014 Pillow wheel workflow builds 13.0.0 on patched build images, with every source archive pinned by SHA-256 (build-only); hook indicator tests stabilized - #121 completed turns fold into activity sections; the docs show how to request readable Claude thinking summaries - #120 the prompt editor asks for confirmation before its Discard button closes it - #111 a sidebar Hooks tab lists every hook run, and each run is recorded once - GitCode !85 the main chat shows the model's thinking as it streams; a resumed session replays it folded, and `/fold` folds it too - GitCode !84 the chat follows new content only while you are at the bottom - GitCode !83 a hook run log cut to size keeps file paths that are not valid UTF-8 intact - GitCode !82 faster startup: a loading screen with the logo paints before the main screen and agent load, and F12 works again once the agent is ready ## Verification - `uv lock --check` passes. - `scripts/i18n.py extract/update/compile/check` runs clean, and a second run changes nothing. - Tests were not run locally; CI covers them. <!-- /bot1-source-body --> See merge request: openJiuwen/iCode!91
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Paired: GitHub #123 ↔ GitCode !90
Upgrade Pillow from 12.3.0 to 13.0.0 and pypdf from 6.21.1 to 6.21.2, and regenerate
uv.lock. The same commit updates both Linux offline overrides to the publishedpillow-13.0.0-manylinux2014.1wheels built by #122. Only the two requested dependency versions change in the lockfile.The release tag resolves to
d8d5f24fa69037d3b24af83a6284ca602c0a5a78. Both public wheel downloads and both manifest downloads were verified against their release SHA-256 digests; the committed override rows exactly match the published manifest. The release is a pre-release and is not a draft.Compatibility review against the Pillow 13 release notes and pypdf 6.21.2 changelog:
src/.Image.open(formats=...)still accepts the existing allowlists, and pypdf still decodes through thePIL.Imagemodule wrapped by the document parser. Its explicitly named image formats remain within the reviewed set.reducing_gapwhen thumbnailing RGBA/LA images. This can change chat-preview sampling pixels; it requires no API adaptation. Document/attachment downscaling operates on RGB. Existing image preview, clipboard, document-image and PDF decoder restriction tests exercise these paths.Validation:
uv lock --check: passed.uv buildanduv run python scripts/check_wheel.py dist/icode_tui-0.31.0-py3-none-any.whl: passed, including fresh-index dependency resolution, all CLI help commands, TUI/document imports, bundled docs and ripgrep.pyproject.toml uv.lock scripts/offline_wheel_overrides.txtautomatically escalated to the full non-integration suite: 33,163 tests passed, 60 skipped; 1,241 architecture checks passed, 1 deselected. This includestest_offline_wheel_overrides_match_the_lockand the image/PDF restriction tests.Follow-up: recheck that the release remains published after the next GitCode-to-GitHub sync. No merge or new release is requested by this PR.