Skip to content

feat(shell): bin/rc で現在シェル有効化を統一・shell-rc 廃止 (PLAN31_1)#53

Merged
takemi-ohama merged 1 commit into
mainfrom
feature/PLAN31_1-bin-rc
Jun 9, 2026
Merged

feat(shell): bin/rc で現在シェル有効化を統一・shell-rc 廃止 (PLAN31_1)#53
takemi-ohama merged 1 commit into
mainfrom
feature/PLAN31_1-bin-rc

Conversation

@takemi-ohama

Copy link
Copy Markdown
Contributor

Summary

  • 破壊的変更: devbase shell-rc サブコマンドを廃止し、source 用の軽量スクリプト bin/rc に統一
  • source "$(devbase shell-rc)"(Python/uv 起動 + コマンド置換)→ . ~/devbase/bin/rc(自己解決・サブプロセスなし)
  • ワンライナーに折り込み: curl -fsSL https://dl.basex.jp/i | bash && . ~/devbase/bin/rc

変更点

  • bin/rc(新規): ${BASH_SOURCE[0]:-$0} で自己位置解決 → DEVBASE_ROOT 設定 + bin を PATH へ(冪等)+ 補完読込(bash: etc/devbase-completion.bash を source / zsh: fpath+compinit、init が rc に書く内容と同一)
  • bin/devbase / lib/devbase/cli.py: shell-rc の dispatch・parser・command list を削除。commands/shell_rc.py を削除(get_shell_rc_file は init が使うため utils/shell.py に残置)
  • install.sh 完了案内・READMEgetting-startedcli-reference のワンライナー/手順を . bin/rc に更新
  • CHANGELOG: Changed/Removed/Added 追記
  • tests/cli/test_bin_rc.py(新規, 5 件)

移行

source "$(devbase shell-rc)" を使うスクリプトは . <DEVBASE_ROOT>/bin/rc に置き換えてください。

Test

  • shellcheck bin/rc(全 severity)指摘ゼロ / bin/devbaseinstall.sh も severity=error 通過
  • pytest tests/cli/test_bin_rc.py → 5 passed
  • 全体回帰 → 479 passed / 1 skipped

破壊的変更: `devbase shell-rc` サブコマンドを削除。rc パスを print して
`source "$(devbase shell-rc)"` する方式 (Python/uv 起動 + コマンド置換) を、
source 用の軽量スクリプト `bin/rc` に置き換える。

- bin/rc: 自身の場所から DEVBASE_ROOT を自己解決し、DEVBASE_ROOT/bin を PATH へ
  追加 (冪等) + 補完を読み込む (bash/zsh 対応・init が rc に書く内容と同一)。
  `. ~/devbase/bin/rc` で現在のシェルを即時有効化できる。
- bin/devbase / cli.py: shell-rc の dispatch・parser・command list を削除。
  shell_rc.py を削除 (get_shell_rc_file は init が使うため utils に残置)。
- install.sh 完了案内・README・getting-started・cli-reference のワンライナー/
  手順を `. bin/rc` に更新。ワンライナーは
  `curl -fsSL https://dl.basex.jp/i | bash && . ~/devbase/bin/rc`。
- tests/cli/test_bin_rc.py: source で DEVBASE_ROOT/PATH 設定・devbase 解決・
  PATH 冪等を検証 (5 件)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@takemi-ohama takemi-ohama merged commit 76a048f into main Jun 9, 2026
5 checks passed
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