私は、サードパーティのユーザーと共有される可能性がある一連のpythonスクリプトを用意しています。彼らが厳密に社内で使用されていたとき、私たちはスタッフに対して非推奨バージョンのスクリプトを使用していました。私は、アップデートがリリースされたときにユーザーにスクリプトを更新させる次のバージョンチェックを組み込んだ。 プログラムの実行時のバージョンチェック
CURRENT_VERSION = "61022050"
def version_check():
try:
response = urllib2.urlopen(url)
html = response.read()
d = json.loads(html)
except Exception: #Version Check Failed.
if (d["version"] != CURRENT_VERSION):
#Version Check Outdated. Provide link to download.
#Version Check Passed.
は、バージョンチェックのこの形式は、本当によく働いたが、私はいくつかのユースケースでは、インターネット接続が利用できませんと言われたので、バージョンチェックのこの形式は、自動的にそのような場合に失敗します。
ユーザーが最新のリリースのスクリプトを確実に使用できるようにインターネットを必要としない別の形式のバージョンチェックがありますか?私は毎週新しいバージョンをリリースし、コードに日付をハードコーディングすることを考えましたが、システム日付を変更して回避するのはとても簡単です。
"それを回避してください" - あなたは愚かなことを防ぐことはできません。 –
あなたのサードパーティユーザーはあなたの個人的な使用のためにあなたのプログラムを使用していますか?毎週主な機能変更やマイナーな調整を行っていますか? – BHawk
@BHawk社内向けです。私がリリースした各リビジョンは、後で混乱を招く可能性のある解析問題を修正しました。 – C1pher