Repair stale translation changelog links and truthful preflight reporting

Repoint four missing hashes to local commits with matching subjects. Report unresolved links without a contradictory success message, propagate checker failures and treat an unchanged changelog as a successful check.

Thanks to xet7 !
This commit is contained in:
Lauri Ojansivu committed 2026-09-14 11:12:47 +03:00
1 parent 368e8ab1b4
commit 14d6a8cd14
4 files changed
+20 -9

No files matched your search

+4 -4
View File
@@ -641,7 +641,7 @@ browser verification remain open.
</details>
<details>
<summary><a href="https://github.com/wekan/wekan/commit/5217ab3ca">Repair Tamazight search OR and AND explanations</a>. Thanks to xet7.</summary>
<summary><a href="https://github.com/wekan/wekan/commit/eab3486e6">Repair Tamazight search OR and AND explanations</a>. Thanks to xet7.</summary>
Replace two French search notes and correct the mistaken optional
interpretation of OR. Preserve OR/any versus AND/all, literal example names,
@@ -669,7 +669,7 @@ language validation and live browser checks remain open.
</details>
<details>
<summary><a href="https://github.com/wekan/wekan/commit/7f1812521">Translate Tamazight email sending diagnostics</a>. Thanks to xet7.</summary>
<summary><a href="https://github.com/wekan/wekan/commit/c55d70403">Translate Tamazight email sending diagnostics</a>. Thanks to xet7.</summary>
Replace three French messages, preserving sending failure, an error during
the attempt and user-owned SMTP success. Native reference components support
@@ -725,7 +725,7 @@ language validation and live browser checks remain open.
</details>
<details>
<summary><a href="https://github.com/wekan/wekan/commit/435a9521e">Translate Tamazight registration invitation diagnostics</a>. Thanks to xet7.</summary>
<summary><a href="https://github.com/wekan/wekan/commit/fd6e6bcd7">Translate Tamazight registration invitation diagnostics</a>. Thanks to xet7.</summary>
Replace two French messages, preserving send error versus successful send
and registration/account-creation purpose without claiming acceptance.
@@ -954,7 +954,7 @@ confidence. Wider language and live browser validation remain open.
</details>
<details>
<summary><a href="https://github.com/wekan/wekan/commit/68ee05217">Repair Tamazight attachment labels and action popups</a>. Thanks to xet7.</summary>
<summary><a href="https://github.com/wekan/wekan/commit/1dc34b1a9">Repair Tamazight attachment labels and action popups</a>. Thanks to xet7.</summary>
Replace twelve French/Arabic values, including nine unflagged strings.
Preserve attachment singular/plural, distinct add/edit/delete/actions/move
+4 -4
View File
@@ -2220,7 +2220,7 @@ function ask_dev_url(){
function git_fix_changelog_links(){
local script="$WEKAN_DIR/releases/fix-changelog-hashes.sh"
[ -f "$script" ] || return 1
bash "$script" || true
bash "$script" || return 1
if [ -n "$(git status --porcelain -- CHANGELOG.md 2>/dev/null)" ]; then
git add CHANGELOG.md
git commit -q -m "CHANGELOG: repoint commit links after history moved.
@@ -2234,7 +2234,7 @@ Thanks to xet7 !"
echo "==> CHANGELOG commit links repointed and committed."
return 0
fi
return 1
return 0
}
# git pull: fast-forward when that is all it takes, rebase when the branch has
@@ -2288,7 +2288,7 @@ function git_pull(){
fi
fi
git_fix_changelog_links || echo "==> CHANGELOG commit links all resolve; nothing to repoint."
git_fix_changelog_links || return 1
echo "--- git status ---"
git status --short --branch
return 0
@@ -2309,7 +2309,7 @@ function git_push(){
# Before publishing, not after: a stale link that reaches GitHub 404s for
# everyone who reads the release notes.
git_fix_changelog_links || echo "==> CHANGELOG commit links all resolve."
git_fix_changelog_links || return 1
git fetch origin "$branch" >/dev/null 2>&1 || true
if git rev-parse --verify --quiet "origin/$branch" >/dev/null; then
+3 -1
View File
@@ -181,8 +181,10 @@ fix_commit_hashes() {
if [ "$fixed" -gt 0 ]; then
echo "--- Repointed $fixed of $checked commit link(s) in $CHANGELOG_FILE (history was rewritten since they were written) ---"
else
elif [ "${#unresolved[@]}" -eq 0 ]; then
echo " All $checked commit link(s) checked resolve to a commit in this clone."
else
echo " $((checked - ${#unresolved[@]})) of $checked checked commit link(s) resolve; ${#unresolved[@]} remain unresolved."
fi
if [ "${#unresolved[@]}" -gt 0 ]; then
echo ""
+9
View File
@@ -125,3 +125,12 @@ test('the source states the rules it applies', () => {
});
console.log(`\n${passed} tests passed`);
// A warning must not be followed by an unconditional all-links-success claim.
test('success reporting distinguishes unresolved links', () => {
assert.ok(source.includes('elif [ "${#unresolved[@]}" -eq 0 ]; then'));
assert.ok(source.includes('remain unresolved.'));
const build = fs.readFileSync(path.join(repoRoot, 'build.sh'), 'utf8');
assert.ok(!build.includes('git_fix_changelog_links || echo'));
assert.ok(build.includes('bash "$script" || return 1'));
});