Skip to content

Commit cdf12f1

Browse files
Merge pull request #33 from flutteruniv/feature/mobile-news-expansion
feat: ✨ Enhance AI prompt for more detailed news explanations
2 parents 23fded0 + f4532f2 commit cdf12f1

File tree

2 files changed

+46
-6
lines changed

2 files changed

+46
-6
lines changed

scripts/generate_article.py

Lines changed: 40 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
# --- ここまで ---
5656

5757
def check_flutter_changelog():
58-
"""Flutter CHANGELOGから最新の更新をチェックする"""
58+
"""Flutter CHANGELOGから最新の更新をチェックし、内容を要約する"""
5959
try:
6060
# GitHub APIを使用してCHANGELOG.mdの最新コミットを取得
6161
api_url = "https://api.github.com/repos/flutter/flutter/commits?path=CHANGELOG.md&per_page=1"
@@ -68,8 +68,38 @@ def check_flutter_changelog():
6868
since_date = datetime.datetime.now() - datetime.timedelta(days=DAYS_AGO)
6969

7070
if commit_date >= since_date:
71-
changelog_url = "https://github.com/flutter/flutter/blob/stable/CHANGELOG.md"
72-
return f"- Title: Flutter CHANGELOG Updated\n URL: {changelog_url}\n Source: Flutter Official\n\n"
71+
# CHANGELOGの内容を取得
72+
changelog_content_url = "https://raw.githubusercontent.com/flutter/flutter/stable/CHANGELOG.md"
73+
changelog_response = requests.get(changelog_content_url)
74+
75+
if changelog_response.status_code == 200:
76+
changelog_content = changelog_response.text
77+
78+
# 最新バージョンセクションを抽出(最初の##から次の##まで)
79+
lines = changelog_content.split('\n')
80+
latest_section = []
81+
in_latest_section = False
82+
section_count = 0
83+
84+
for line in lines:
85+
if line.startswith('## '):
86+
if in_latest_section:
87+
break
88+
in_latest_section = True
89+
section_count += 1
90+
if section_count > 1:
91+
break
92+
elif in_latest_section:
93+
latest_section.append(line)
94+
95+
# 最新の変更内容を要約
96+
latest_changes = '\n'.join(latest_section)
97+
98+
changelog_url = "https://github.com/flutter/flutter/blob/stable/CHANGELOG.md"
99+
return f"- Title: Flutter CHANGELOG Updated\n URL: {changelog_url}\n Source: Flutter Official\n Changes: {latest_changes[:500]}...\n\n"
100+
else:
101+
changelog_url = "https://github.com/flutter/flutter/blob/stable/CHANGELOG.md"
102+
return f"- Title: Flutter CHANGELOG Updated\n URL: {changelog_url}\n Source: Flutter Official\n\n"
73103
except Exception as e:
74104
print(f"Error checking Flutter changelog: {e}")
75105
return ""
@@ -154,7 +184,13 @@ def generate_article_with_ai(articles):
154184
- 新機能や重要なアップデート情報を優先
155185
- ベストプラクティスやアーキテクチャに関する記事を重視
156186
- 個人的な体験談や基本的なチュートリアルは避ける
157-
4. **記事解説**: 各ニュースについて2〜3文程度の詳しい解説や注目ポイント、重要性を追記(「解説:」というプレフィックスは不要)
187+
4. **記事解説**: 各ニュースについて4〜6文程度の詳しい解説を必ず追記する。以下の要素を含める:
188+
- **技術的な詳細**: 何がどのように変更・改善されたのか(CHANGELOGなど実際の内容がある場合は具体的に要約)
189+
- **開発者への影響**: 実際の開発にどう影響するのか
190+
- **注目ポイント**: なぜこのニュースが重要なのか
191+
- **具体的な活用方法**: どのように活用できるのか
192+
- **今後の展望**: 今後どのような発展が期待できるのか
193+
(「解説:」というプレフィックスは不要。「Changes:」フィールドがある場合は、その内容を活用して具体的な変更点を説明する)
158194
5. **まとめセクション**: 最後に「## まとめ」セクションを追加し、全体のまとめや来週への期待を述べるポジティブな締めの文を記述
159195
6. **編集後記セクション**: まとめの後に「## 編集後記」セクションを追加し、「(ここは人間が手動で編集します)」というプレースホルダーテキストのみを記述
160196
7. **言語**: 必ず日本語で記述

src/data/blog/flutter-news-20250714.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ layout: "../../layouts/BlogPost.astro"
1717

1818
https://github.com/flutter/flutter/blob/stable/CHANGELOG.md
1919

20-
Flutter公式からCHANGELOGが更新されました。バグ修正やパフォーマンス改善、そしてもしかしたら新機能の追加もあるかもしれません。詳細を確認し、自身のプロジェクトへの影響を確認しましょう。最新の安定版へのアップデートを検討する良い機会です
20+
Flutter 3.32.6の最新リリースでは、主にAndroid環境でのアプリ安定性向上に焦点を当てた重要な修正が行われています。スクロールビュー内の`LayoutBuilder`に関するヌルチェック演算子のクラッシュが修正され、開発者が遭遇していた予期しないアプリ終了問題が解決されました。さらに、Androidアクティビティ間の遷移時におけるImpeller Vulkanバックエンドでのクラッシュ問題も修正されており、特にAndroid 10-13環境でのプラットフォームビューを使用するアプリで発生していたバックグラウンド/フォアグラウンド遷移時の完全なアプリクラッシュが解消されています。これらの修正により、本番環境でのアプリの信頼性が大幅に向上し、ユーザー体験の改善に直結します。開発者は`flutter channel stable`と`flutter upgrade`コマンドを使用して、できるだけ早く最新版にアップデートすることが推奨されます
2121

2222

2323
### Next.jsWebアプリをFlutterでAndroidネイティブ化した (Claude Codeが)
@@ -87,4 +87,8 @@ https://zenn.dev/syunpp/articles/39d3b74761b677
8787

8888
## 編集後記
8989

90-
(ここは人間が手動で編集します)
90+
Claude Codeと個人開発が流行ってますね。私自身もその一人です。 Claude Codeをマスターして、個人開発をもっと効率的に進めたいですね。
91+
92+
余談ですが、日付変わって7月15日、本日は私の誕生日です。そしてFlutter大学は4月で5周年になりました。このニュースもAIでキャッチアップしつつ、編集後記は私の方で書いていきたいとお思います。
93+
94+
これからも皆様に有益な情報をお届けできるよう、精進してまいりますので、引き続きよろしくお願いいたします!

0 commit comments

Comments
 (0)