2016-05-04 19 views
1

apscheduler(3.0.1)をapscheduler(3.1.0)にアップグレードしています。私はこれをアップグレードした場合 私はこのエラーapscheduler 3.0.1 apschedulerで3.0.1から3.1.0へのapschedulerのアップグレード

Traceback (most recent call last): 
    from apscheduler.jobstores.base import JobLookupError 
    File "/mydir/env/local/lib/python2.7/site-packages/apscheduler/__init__.py", line 3, in <module> 
    version_info = tuple(int(x) if x.isdigit() else x for x in parsed_version.public.split('.')) 
    AttributeError: 'tuple' object has no attribute 'public 

/の.pyファイルは

にapscheduler 3.1.0ファイルの変更で

version_info = (3, 0, 5) 
    version = '3.0.5' 
    release = '3.0.5' 
__version__ = release # PEP 396 

のようなものですのinitを得ました

parsed_version = __import__('pkg_resources').get_distribution('APScheduler').parsed_version version_info = tuple(int(x) if x.isdigit() else x for x in parsed_version.public.split('.')) version = parsed_version.base_version release = __version__ = parsed_version.public del parsed_version 

のためparsed_versionには、属性名publicがありません。それはthrです。このエラーが原因です。

私は、以前のバージョンのようにするには、このファイルを編集してから、私はapscheduler/util.pyライン14で新しい例外を得た:

from funcsigs import signature 

ないモジュールの名前funcsigsを。

ap-schedulerのバージョンを安全にアップグレードする方法は何ですか?

P.S:私は、Pythonに事前に2.7

感謝を使用しています。

答えて

2

非常に古いバージョンのsetuptoolsを使用しているようです。これらの問題は完全に解決されますが、この不一致はすでにthis commitに修正されています。 funcsigsパッケージも自動的にインストールされていなければなりませんが、setuptoolsは古いものでなければならないので、条件付きの依存関係を処理する方法がわかりません。

+0

** pip install -U pip wheel setuptools **を使用してセットアップツールをアップグレードしてから** pip install APScheduler == 3.1.0 ** – tom

+0

こんにちは、私はRedisをスケジューラのジョブストアとして使用していますそれをアップグレードして再起動すると警告が表示され、スケジュールされたすべてのジョブがフラッシュされます。 – tom

関連する問題