Skip to content

v0.5.0

Pre-release
Pre-release

Choose a tag to compare

@Hum9183 Hum9183 released this 24 Jan 09:06
· 24 commits to master since this release
cfa1a98

deep_reloader v0.5.0

🎉 新機能

ワイルドカードインポート対応の大幅強化

  • クロスパッケージワイルドカードインポート対応: 異なるパッケージ間の from package import * を完全サポート
  • 相対インポートのワイルドカード対応: from . import * パターンを含む全ワイルドカードパターンに対応

サブモジュール検出機能

  • from package import name の name がサブモジュールの場合も正しく追跡されるように改善

アーキテクチャ改善

  • FromClauseクラス導入: from 句の処理を専門化したクラスを追加
  • ImportClauseクラス導入: ImportedSymbols を置き換え、より明確なAPIを提供
  • コード削減: リファクタリングにより約220行削減

🧪 テスト強化

単体テスト追加(46テスト新規作成)

  • ImportClause: 10テスト
  • FromClause: 12テスト
  • SymbolExtractor: 12テスト
  • ModuleInfo: 4テスト
  • deep_reloader: 8テスト

テスト構造改善

  • テストピラミッド実現: 単体テスト79%(46個)、統合テスト21%(12個)の理想的な構造
  • ディレクトリ分割: tests/unit/ と tests/integration/ に整理
  • 冗長テスト削減: 統合テストを38個から12個に削減

⚠️ 破壊的変更

pytest専用化

  • スクリプト実行サポートを完全削除
    • ❌ python tests/test_runner.py - 使用不可
    • ❌ python tests/test_xxx.py - 使用不可
    • ✅ pytest または python -m pytest - 推奨

移行方法:

# 以前(使用不可)
python tests/test_runner.py

# 現在(推奨)
pytest
# または
python -m pytest tests/