Skip to content

fix(scripts): sync-version.js が prerelease の版を扱えるようにする - #160

Merged
kochizufan merged 1 commit into
masterfrom
dec26/version-script-prerelease
Nov 6, 2026
Merged

kochizufan merged 1 commit into
masterfrom
dec26/version-script-prerelease

Conversation

@kochizufan

Copy link
Copy Markdown
Member

何を変えるか

scripts/sync-version.js を prerelease の版(1.3.0-rc.1 など)に対応させます。

  • 版の正規表現を \d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)? にし、prerelease を含む版を 1 つの版として置き換えます。これまでは [\d.]+ が 1.2.0 の部分だけを拾うため、1.2.0-rc.1 を 1.3.0 に同期すると 1.3.0-rc.1 が残っていました。
  • 置き換えるのは、もともと版を書いている箇所だけにします。これまでは版の部分が省略可能だったため、README の版の無い npm install @maplat/<名前> の行にも版を足していました。
  • 冒頭のコメントを、今の挙動の説明に書き直しました。

確かめたこと

  • 新しいテスト(一時ディレクトリに写した README とスクリプトで実行。リポジトリのファイルは書き換えない)
    • version を 1.3.0-rc.2 にすると、版つきの行がすべて 1.3.0-rc.2 に替わり、-rc.1 が残らず、版の無い行は変わらない
    • version を 1.3.0 にすると、-rc. が 1 つも残らない
    • 変更前のスクリプトでは 2 件とも失敗することを確かめた
  • 本物の README で node scripts/sync-version.js を走らせた後の git diff は空(version は今のまま)
  • 既存の pnpm test・pnpm run typecheck・eslint は exit 0

🤖 Generated with Claude Code

- 版の正規表現を \d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)? にし、1.3.0-rc.1 のような
  prerelease を 1 つの版として置き換える。これまでは [\d.]+ が 1.2.0 の部分だけを
  拾い、-rc.1 が後ろに残っていた
- 置き換えるのは、もともと版を書いている箇所だけにする。版の無い
  `npm install @maplat/<名前>` などに版を足していた挙動をやめる
- 一時ディレクトリに写した README で、prerelease 版と通常の版への同期を確かめる
  テストを足す

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kochizufan
kochizufan merged commit 3d92f3e into master Nov 6, 2026
5 checks passed
@kochizufan
kochizufan deleted the dec26/version-script-prerelease branch November 6, 2026 12:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant