这是indexloc提供的服务,不要输入任何密码
Skip to content

🚀 SourceSage v7.0.0 リリースノート

Latest

Choose a tag to compare

@Sunwood-ai-labs Sunwood-ai-labs released this 29 Aug 13:19
· 24 commits to main since this release
EMXN1y8qTQoGdXBsb2FkEg55bGFiLXN0dW50LXNncBoza2xpbmcvZG93bmxvYWQvTWpnNE5EUTBPRFUwTXpJM05UY3dNVGcxTmpFNE5UTTJNdz09

概要

SourceSage v7.0.0は、プロジェクトの方向性を再定義し、コア機能に焦点を当てたメジャーアップデートです。
これまでのAIを活用した多彩な実験的機能(CommitCraft, DocuMind, IssueWizeなど)を廃止し、「リポジトリの静的分析」と「リリースレポート生成」という2つの強力な機能に特化しました。

この変更により、ツールはよりシンプルで軽量になり、CI/CDパイプラインへの統合やローカルでの手軽な分析がさらに容易になりました。

また、内部的にも大きな刷新を行っており、Pythonのモダンなパッケージング手法 (pyproject.toml) への完全移行や、高速なパッケージ管理ツール uv への正式対応、そして rich ライブラリ導入によるCLIの表現力向上など、開発体験と使いやすさを大幅に改善しています。

✨ 主な変更点

🎯 機能の絞り込みとシンプル化

  • コア機能への集中: 実験的なAI機能群を削除し、以下の2つの安定した機能に特化しました。
    1. Repository Summary Generation: リポジトリ構造を解析し、AIが読みやすい形式のサマリーを生成します。
    2. Release Report Generation: 2つのGitタグ間の差分からリリースレポートを自動生成します。
  • コードベースのスリム化: 不要になった多数のモジュールを削除し、メンテナンス性と信頼性を向上させました。

🛠️ モダンな開発環境への移行

  • pyproject.tomlへの完全移行: 従来のsetup.pyを廃止し、PEP 621に準拠したpyproject.tomlでのパッケージ管理に完全に移行しました。ビルドバックエンドにはhatchlingを採用しています。
  • uvの公式サポート: 高速なパッケージ管理ツールuvを全面的にサポートし、開発環境のセットアップを高速化しました。(uv.lockファイルを追加)
  • ss短縮コマンドの追加: sourcesageコマンドのエイリアスとしてssを導入し、より素早くコマンドを実行できるようになりました。

💅 CLIの改善

  • リッチなUI/UX: richライブラリを導入し、コマンドラインの出力を視覚的に分かりやすく刷新しました。カスタムヘルプ画面や、処理状況を示すステータス表示により、操作性が向上しています。

💥 破壊的変更

  • 以下の実験的機能と、それに関連するCLIオプションは削除されました。
    • CommitCraft (コミットメッセージ生成支援)
    • DocuMind (リリースノート自動生成)
    • IssueWize (GitHub Issue作成支援)
  • これに伴い、google-generativeai, litellmなどの大規模言語モデル関連の依存ライブラリも削除されました。

📝 ファイル変更の詳細

追加された主要ファイル

  • pyproject.toml: 新しいパッケージ定義ファイル。依存関係、ビルド設定、スクリプトなどが集約されています。
  • uv.lock: uv用の依存関係ロックファイル。
  • sourcesage/logging_utils.py: richライブラリを利用した新しいロギング設定モジュール。
  • sourcesage/modules/DiffReport/: リリースレポート生成機能がこの新しいモジュールに再構成されました。

削除された主要ファイル

  • setup.py: pyproject.tomlへの移行に伴い削除されました。
  • .aira/: AIRA連携用の設定ファイルが削除されました。
  • sourcesage/modules/: CommitCraft, DocuMind, IssueWize, ChangelogGenerator, GitHubIssueRetrieveなど、廃止された機能に関連する多数のモジュールが削除されました。
  • sourcesage/config/: STAGE_INFOISSUES_RESOLVEなどのテンプレートファイルが削除されました。

更新された主要ファイル

  • README.md: プロジェクトの新しい方針に合わせて、機能説明やクイックスタートなどを全面的に書き直しました。
  • sourcesage/cli.py: richを統合し、不要なコマンドオプションを削除するなど、大幅にリファクタリングされました。
  • sourcesage/core.py: 廃止された機能の呼び出しを削除し、コアロジックがシンプルになりました。
  • .SourceSageignore: Terraform関連ファイル、各種ロックファイル (uv.lock, yarn.lockなど) を無視するようルールを拡張しました。