dai-motoki / zoltraak

GNU General Public License v3.0
415 stars 47 forks source link

AttributeError: 'MarkdownToPythonConverter' object has no attribute 'handle_target_file_modification' #141

Open ituki-u97 opened 6 months ago

ituki-u97 commented 6 months ago

zoltraak/converter.pyの display_source_diffについて

2024/05/10時点の89行目 self.handle_target_file_modification()がクラス MarkdownToPythonConverter内に存在しない。

発生状況

  1. python zoltraak book.md -p "本を書きたい" -c biz_consult を実行
  2. 魔法術式から領域術式を実行するかの確認メッセージでyと入力
  3. 別のエラーで止まる(generated/requirements/,past_md_files,requirements に book.py,book.md,book.md作成される)
  4. 再度 1. python zoltraak book.md -p "本を書きたい" -c biz_consultを実行
  5. 再度 2. 魔法術式から領域術式を実行するかの確認メッセージでyと入力
  6. MarkdownToPythonConverterhandle_existing_target_fileの実行時に本件のエラーAttributeError: 'MarkdownToPythonConverter' object has no attribute 'handle_target_file_modification' が発生

再現方法(予想)

普段は発生状況の3が起きないので、予想で再現方法を記述します。

  1. generated/requirements,past_md_files,requirementsの直下に、XXX.py,XXX.md,XXX.mdを配置
  2. python zoltraak XXX.md -p "本を書きたい" -c biz_consult を実行
  3. エラー発生
wmoto-ai commented 6 months ago

私の環境でも同様のエラーが再現しました。

再現手順

  1. python zoltraak book.md -p "本を書きたい" -c biz_consult を実行
  2. 魔法術式から領域術式を実行するかの確認メッセージで y と入力
  3. ターゲットファイルにハッシュ値を埋め込みました:xxxx で終了。(上記のように別のエラーでは止まりませんでした)
  4. 再度手順 1 を実行
  5. 再度手順 2 を実行
  6. MarkdownToPythonConverterhandle_existing_target_file 実行時に本エラーが発生

原因

handle_target_file_modification メソッドが未定義であるため、prompt が指定されていない場合にソースファイルの変更内容に基づいてターゲットファイルを更新できないと思われます。

解決案

  1. handle_target_file_modification メソッドを定義し、prompt が指定されていない場合の処理を実装する。
  2. prompt が指定されている場合の handle_target_file_modification の動作を定義する。

環境

この問題の解決にご協力をお願いします。 @all-contributors please add @wmoto-ai for test

allcontributors[bot] commented 6 months ago

@wmoto-ai

I've put up a pull request to add @wmoto-ai! :tada:

nobu007 commented 2 months ago

@ituki-u97 @wmoto-ai workaroundですが、こちらの修正でエラーがなくなりました。 https://github.com/nobu007/zoltraak_auto/commit/1fd0628b8df7caef6a6a13c1f25a45fcf2db808a