新機能
- コミットメッセージのフォーマットとタイプの説明を追加
- タイトルに種類と概要を記載するフォーマットを導入
- コミットメッセージの種類(feat, fix, docs, styleなど)の説明を追加
- ドキュメントテンプレートにコミットメッセージのフォーマットとタイプの説明を追記
機能改善
- コマンドラインからソースコードのリポジトリパスを取得するように修正
- `StagedDiffGenerator`クラスのコンストラクタ引数`repo_path`を、定数`const.REPO_PATH`から現在のワーキングディレクトリを取得する`os.getcwd()`に変更
- これにより、コマンドラインから`SourceSage.py`を実行する際に、ソースコードのリポジトリパスを適切に取得できるようになり、より柔軟に利用可能に
- `IssuesToMarkdown`クラスに`loguru`を使用したログ出力を追加
- `load_data()`メソッド内で、データのロード状況をログ出力するように改善
- `create_markdown_files()`メソッド内で、マークダウンファイルの作成状況をログ出力するように改善
- これにより、処理の進行状況や重要な情報がログに記録され、デバッグやモニタリングがしやすくなった
- ドキュメントのフォーマットを改善
- コミットメッセージのフォーマットをマークダウン形式に変更し、種類の説明を追加
- これにより、ドキュメントの読みやすさが向上し、コミットメッセージの作成がより明確に
リファクタリング
- 定数の管理方法を改善
- 環境変数の利用をやめ、定数を一箇所で管理するように変更
- `config/constants.py`ファイルを新規作成し、定数を定義
- `SourceSage.py`の`main`関数内で定数を使用するように修正
- これにより、コードの可読性と保守性が向上し、定数の管理がシンプルになった
- Git関係のモジュールのリファクタリング
- `GitHubIssueRetrieve.py`と`StagedDiffGenerator.py`の重複部分を削除し、`GitHubUtils.py`モジュールにまとめた
- `ChangelogGenerator.py`と`DiffChangelogGenerator.py`の共通部分を`ChangelogUtils.py`モジュールに抽出
- これにより、モジュール間の依存関係が整理され、コードの可読性と保守性が向上
- ドキュメントテンプレートを整理
- ドキュメントのテンプレートファイルを`docs`ディレクトリ下に移動
- テンプレートファイルのパスを定数で管理するように変更
その他の変更
- `.gitignore`ファイルの更新
- パッケージのバージョン番号を3.1.0に更新
以上の変更により、SourceSageの機能性と保守性が向上し、より効率的で使いやすいツールになりました。今後もフィードバックを取り入れながら、継続的な改善を行っていきます。
tag3.0.0
SourceSageは、プロジェクトのソースコードとファイル構成を単一のマークダウンファイルに統合し、AIによる自動修正やドキュメント化を実現するPythonスクリプトです。開発のライフサイクル全体を通して、コードの品質向上と生産性の向上を支援します。
新機能
IssueWise - 開発前の課題解決
- GitHubのオープンIssueを自動取得し、AIによる課題の自動修正をサポート
- 課題を効率的に特定し、迅速に解決策を見つけられます
CommitCraft - 開発中のコミット管理
- 変更差分を追跡し、AIが適切なコミットメッセージを自動生成
- コミットの内容を正確に記述でき、変更履歴を明確に管理できます
DocuMind - リリース後のドキュメント化
- プロジェクトの概要とGitの変更履歴を組み合わせてドキュメント化
- プロジェクトの全体像を把握しやすく、メンテナンス性が向上します
機能改善
- ChangelogGeneratorクラスを導入し、コードの可読性と保守性を向上
- 言語ごとのシンタックスハイライト機能を追加し、複数の言語に対応
- 対象フォルダの指定やファイルの除外設定を複数行に対応させ、柔軟性を向上
- コード生成時のエラー処理を改善
- 設定ファイルの場所を外部化し、全体的な設定の管理が容易になりました
バグ修正
- 2 SourceSage.pyのパラメータを環境変数(.env)から設定できるように修正
- [fix] issue2 SourceSage.pyのパラメータを環境変数(.env)から設定できるようにする
- 7 6 MarkdownファイルからAIに入力して自動修正できる機能を追加
- [feat] コミットメッセージのフォーマットとタイプの説明を追加
- [feat] ステージの差分生成と課題の取得を実装 3
- 4 リファクタリングによるコード構造の改善
- [refactor] Git関連モジュールのリファクタリング
その他の変更
- .SourceSageignoreファイルを導入し、不要なファイルやフォルダを自動的に除外できるようになりました
- ソースコードの可読性と保守性を高めるためのリファクタリングが行われました
- READMEファイルと各種ドキュメントが改善され、プロジェクトの理解が容易になりました