Repository navigation
Prepare 1.4.2 release - #1480
Merged
Merged
Conversation
Bump every version string to 1.4.2, finalize the NEWS entry, and adjust
the Debian packaging so the release build stamps the new version. The
C++ ABI is unchanged from 1.4.1, so OPENCC_ABI_VERSION stays at 1.4.
Detailed Changes:
- **Version strings**:
- `cmake/GitVersion.cmake`: `_OPENCC_FALLBACK_REVISION` 1 -> 2.
- `scripts/compute-version.sh`: `FALLBACK_VERSION` 1.2.1 -> 1.4.2; it
had drifted out of sync with `cmake/GitVersion.cmake` since 1.2.1.
- `setup.py`, `MODULE.bazel`, `node/BUILD.bazel`,
`scripts/build-cli-windows-zig.sh`,
`scripts/build-node-windows-zig.sh`: bumped to 1.4.2.
- `package.json` and `plugins/jieba/node/package.json`: version and the
five `@opencc/*` optional dependencies bumped to 1.4.2.
- `package-lock.json`: version bumped and the `node_modules/@opencc/*`
entries dropped; their integrity hashes are regenerated after the
scoped binary packages are published, as in 1.4.1.
- **NEWS.md**:
- `Unreleased` becomes `Version 1.4.2` with the release date.
- Added the STPhrases classical-context entries for one-to-many s2t
characters found while cleaning up the Daizhige corpus (BYVoid#1479).
- Noted the fallback-version bump and the resulting Debian patch drop.
- **README.md**: prebuilt binary links and the release-focus paragraph
updated to 1.4.2.
- **Debian packaging**:
- Added a `1.4.2-1` changelog entry; `release-deb.yml` names its
artifacts from `dpkg-parsechangelog`, which would otherwise still
report `1.4.1+ds1-7`.
- Dropped `0010-fix-git-version-fallback.patch`: it moves the fallback
revision from 0 to 1, which neither applies nor reverse-applies once
upstream ships 2, and would abort `scripts/build-deb-packages.sh`.
- `packaging/debian/README.md`: refreshed the baseline, patch list and
refresh instructions to describe the two deltas above.
Refresh packaging/debian/debian from the salsa repository at e4d7c5e8,
which moves the byte-order-dependent .ocd2 dictionaries out of the
arch:all data packages, and re-apply the two upstream deltas on top.
Detailed Changes:
- **Sync from Debian**:
- `*.ocd2` moves back from `libopencc-data` (arch:all) to
`libopencc1.4` (arch:any), and `jieba_merged.ocd2` from
`opencc-jieba-data` to `opencc-jieba`, with matching
`Breaks`/`Replaces` against the `<< 1.4.1+ds1-8~` data packages.
The files are marisa-trie images in host byte order, so every
architecture was getting the little-endian copies built on the
arch:all buildd and opencc failed on s390x with `size > avail_`
(Debian bug #1145010, caught by the s390x autopkgtest re-enabled
in -7). This reverts an upstream proposal adopted in -4.
- `debian/README.source`: new section on why `.ocd2` is
architecture-dependent and why `libopencc1.4` cannot be
`Multi-Arch: same`.
- `debian/opencc-jieba.lintian-overrides`: new file overriding
`arch-dep-package-has-big-usr-share`.
- `debian/control`: binary package descriptions updated to say which
package holds the dictionaries.
- **Re-applied upstream deltas**: the `1.4.2-1` UNRELEASED changelog
entry and the removal of `0010-fix-git-version-fallback.patch`. The
remaining series was re-verified against the tree: 0003, 0004, 0005,
0009 and 0011 apply; 0012 is already contained upstream.
- **packaging/debian/README.md**: baseline moved to `1.4.1+ds1-8` with
the sync commit recorded, the `*.ocd2` proposal marked as reverted,
and the binary package list and Multi-Arch notes brought in line.
- **NEWS.md**: the packaging bullet now describes the `-8` sync and the
`.ocd2` revert instead of stopping at `-7`.
frankslin
force-pushed
the
upstream-master
branch
from
August 22, 2026 16:43
8b0e035 to
d3a48ae
Compare
SignPath Foundation's free certificate for open source projects requires
the project to acknowledge the service and publish a code signing and
privacy policy, which OpenCC had not done since adopting SignPath.
Detailed Changes:
- **README.md**:
- New "Code Signing 程式碼簽章" section with the acknowledgement of
SignPath.io and the SignPath Foundation, the signing policy (only
commits merged to master are signed, requests are raised by the
maintainers from the release workflows) and the privacy statement.
- The Windows prebuilt binary entry now points at that section.
- **NEWS.md**: the packaging bullet now states that Windows binaries are
Authenticode-signed from 1.4.2 on, names both SignPath entities and
links to them, instead of only mentioning the release-signing policy.
Record which dimensions each binary dictionary format is portable across,
so the constraint is discoverable before someone tries to ship generated
dictionaries from an architecture-independent package or reaches for a
MARISA_WORD_SIZE override.
Detailed Changes:
- **src/README.md**: New "Binary Format Portability" section under
Dictionaries covering:
- `.ocd` is byte-order dependent but word-size independent since 1.4.1,
with the fixed-width fields and the legacy 64-bit detection path that
make it so.
- `.ocd2` is dependent on both, because marisa derives MARISA_WORD_SIZE
from UINTPTR_MAX and serializes BitVector/FlatVector units at that
width; a word-size mismatch is not reliably rejected on load.
- Why forcing MARISA_WORD_SIZE to 32 does not fix it, and what a real
fix would cost.
Collaborator
Author
|
Node 相關 check failure 是因為 1.4.2 prebuilt NPM packages 尚不存在,在本 PR 合並後執行 workflow 即可建立這些 packages。 |
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.
Bump every version string to 1.4.2, finalize the NEWS entry, and adjust the Debian packaging so the release build stamps the new version. The C++ ABI is unchanged from 1.4.1, so OPENCC_ABI_VERSION stays at 1.4.
Detailed Changes:
cmake/GitVersion.cmake:_OPENCC_FALLBACK_REVISION1 -> 2.scripts/compute-version.sh:FALLBACK_VERSION1.2.1 -> 1.4.2; it had drifted out of sync withcmake/GitVersion.cmakesince 1.2.1.setup.py,MODULE.bazel,node/BUILD.bazel,scripts/build-cli-windows-zig.sh,scripts/build-node-windows-zig.sh: bumped to 1.4.2.package.jsonandplugins/jieba/node/package.json: version and the five@opencc/*optional dependencies bumped to 1.4.2.package-lock.json: version bumped and thenode_modules/@opencc/*entries dropped; their integrity hashes are regenerated after the scoped binary packages are published, as in 1.4.1.UnreleasedbecomesVersion 1.4.2with the release date.1.4.2-1changelog entry;release-deb.ymlnames its artifacts fromdpkg-parsechangelog, which would otherwise still report1.4.1+ds1-7.0010-fix-git-version-fallback.patch: it moves the fallback revision from 0 to 1, which neither applies nor reverse-applies once upstream ships 2, and would abortscripts/build-deb-packages.sh.packaging/debian/README.md: refreshed the baseline, patch list and refresh instructions to describe the two deltas above.