Skip to content

init を new に統合する - #9

Merged
yuki2006 merged 2 commits into
mainfrom
unify-new
Sep 5, 2026
Merged

yuki2006 merged 2 commits into
mainfrom
unify-new

Conversation

@yuki2006

@yuki2006 yuki2006 commented Sep 5, 2026

Copy link
Copy Markdown
Owner

変更内容

init の仕事は「yukicoder.toml が無ければ作る」と .env の gitignore 警告だけで、残り (問題の取得) は new の下位互換でした (new にはさらに testcases/ solutions/ の骨組み・--dir・二重登録チェックがある)。new がリポジトリを見つけられなければカレントディレクトリに yukicoder.toml を作って続行するようにし、init を削除しました。最初の 1 問も 2 問目以降も yuki-tool new <問題ID> の 1 コマンドになります。

  • 壊れた yukicoder.toml は「無い」と同一視せず、読み込みエラーとして止めます (既存リポジトリの中に別の設定を作らないため)
  • エラーメッセージ・README・docs の init への言及も new に置き換え
  • CLI の互換性は壊れます (init が消える) が、v0.2.0 直後の今が変え時という判断です

このブランチは PR #8 (docs のコマンド表記) の上に積んであります。#8 を先にマージするか、これだけマージすれば #8 の分も入ります。

実測

空のディレクトリで yuki-tool new 13954:

  • yukicoder.toml を書きました (ここをリポジトリのルートとして扱います) + .env 警告 → 問題取得 → 骨組み作成まで一気に完了
  • 同じリポジトリでもう一度実行 → 二重登録エラーで停止 (従来どおり)

単体テスト 53 件、clippy -D warnings / fmt 通過。

🤖 Generated with Claude Code

https://claude.ai/code/session_01GDSDbQcqbZqhXQ1dVo9BeE

yuki2006 and others added 2 commits September 5, 2026 09:15
cargo run -- は git clone しか導入手段が無かったころの書き方。バイナリ配布が
あるので yuki-tool を基本にし、ソースから使う場合の補足に落とす。init が
最初の 1 回だけである理由 (yukicoder.toml を作るのはこのときだけ) も添える。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
init の仕事は「yukicoder.toml が無ければ作る」と .env の gitignore 警告だけで、
残りは new の下位互換だった。new がリポジトリを見つけられなければカレント
ディレクトリに作って続行するようにし、init を削除する。最初の 1 問も
2 問目以降も同じコマンドで済む。

壊れた yukicoder.toml は「無い」と同一視しない (既存リポジトリの中に別の
設定を作ってしまうため、読み込みエラーとして止める)。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@yuki2006
yuki2006 merged commit 1d41d1d into main Sep 5, 2026
1 check passed
@yuki2006
yuki2006 deleted the unify-new branch September 5, 2026 00:24
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