将来のバージョン:0.16.0
python-ver:3.5
future.moves
またはfuture.backports
パッケージをインポートすると、 import_top_level_modules()
が呼び出され、さまざまなモジュールを名前でインポートしようとしtest.py
がある場合、それも予期せずインポートされます。
ある関連するコミット264f9bcdf0のメッセージによると、 「テストランナーをPy3のtravis-ciで動作させるimport_top_level_modules()
メソッドが導入されました。
このコードをテストパッケージに入れる方が良いのではないでしょうか。
これに関する更新はありますか?
python3でapache_beamを使用しているときに、これに噛まれました。
再現するには:
echo "raise NotImplementedError('This test.py file should not be touched')" >> ./test.py
pip install apache_beam
python -c "import apache_beam as beam"
import_top_level_modules
から呼び出されたexclude_local_folder_imports
のコメントには、次のように記載されています。
(This was need prior to v0.16.0 because the presence of a configparser
folder would otherwise have prevented setuptools from running on Py3. Maybe
it's not needed any more?)
それがなくても問題なく動作するようです。 多分それは時間です。
また、このパッケージに依存するダッシュプロットライブラリを使用しているときに噛まれました。 開発中にパッケージを実験するためにたまたまtest.py
があったため、非常に奇妙な動作をしていました。これは、ローカルテストを実行するたびに実行され、重大な状態をサイレントに変更していたことが判明しました。私のアプリの。 私はこのようなサイレント問題のデバッグが本当に嫌いです。 この動作の削除を優先することを検討してください。
最も参考になるコメント
python3でapache_beamを使用しているときに、これに噛まれました。
再現するには:
import_top_level_modules
から呼び出されたexclude_local_folder_imports
のコメントには、次のように記載されています。それがなくても問題なく動作するようです。 多分それは時間です。