ADSにおいて、特にデベロッパにとって重要な意味を持つ「リリース番号」について解説します。
リリース番号はエージェントのバージョンを識別するための番号でADSに関わるプログラムがバージョンを判別するための内部データの一種です。
エージェント情報の「バージョン」は書式が制限されておらず、デベロッパが好きな表現で決めることができます。あくまでも表示のためのものであり、ユーザに見せるための情報と言い換えることができます。
これに対してリリース番号は単純な数値でパッケージの世代を表すもので、パッケージマネージャやオートアップデータがエージェントの更新をチェックするために比較の材料として使います。
前提となるリリース番号による更新チェックの仕組みは以下の様になっています。
パッケージマネージャやオートアップデータ(以下、クライアント)は更新をチェックしたいエージェントのリリース番号をサーバに問い合わせます。
サーバはADSに登録されているエージェント情報から最新版のリリース番号を返します。
クライアントはインストールされているエージェントのリリース番号とサーバから返されたリリース番号を比較します。
クライアント側のリリース番号よりサーバ側のリリース番号の方が大きい値を示していた場合、アップデート可能な最新版がADSに登録されたことを認識します。
クライアント側のリリース番号とサーバ側のリリース番号が一致すればインストールされているエージェントが最新版である事を意味します。
エージェントの新規登録からユーザ側の更新チェックまでの流れを以下にまとめてみます。
| 1.エージェントの新規登録
デベロッパが新しいエージェントをADSに登録します。 |
![]() |
| 2.エージェントの登録完了
エージェントの情報がADSに登録され、ユーザからの問い合わせに応じる準備が完了します。 |
![]() |
| 3.ユーザがエージェントをインストール
登録されたエージェントをユーザがパッケージマネージャを使ってインストールします。 |
![]() |
| 4.エージェントの情報が保存される
パッケージマネージャはエージェントをインストールすると、エージェントの情報を保存します。 |
![]() |
| 5.デベロッパがエージェントを更新する
デベロッパがエージェントを修正したり機能を強化するなど、ADSの登録情報に更新を加えます。 エージェントの更新時、リリース番号は「上げること」と「変えないこと」は可能ですが、「下げること」はできません。仮にADSに登録されたリリース番号より小さい値で更新しようとしてもサーバはこれを適切に無視します。 |
![]() |
| 6.エージェント更新完了
ADSのエージェント情報が更新され、ADSはエージェントのバージョンアップを認識します。 |
![]() |
| 7.ユーザの更新問い合わせ
既にエージェントAをインストールしているユーザが更新を問い合わせます。 |
![]() |
| 8.アップデート可能エージェントの認識
サーバが返したエージェントAのリリース番号は2。 |
![]() |
ユーザの立場からはリリース番号を気にする必要がありません。
ユーザにとって重要なのはそのエージェントがアップデート可能であるか否かであり、その判断はパッケージマネージャやオートアップデータが行います。
通常、リリース番号はユーザの目に触れる事はありません。
デベロッパの立場から見たリリース番号は重要な意味がありますが、その扱い方は単純です。
「エージェントを更新した際、ユーザにアップデートして欲しい場合はリリース番号を上げる」
これだけです。もう少し現実に近い言い方をすれば、
「エージェントのバージョンを上げるときはバージョンを書き換えて、リリース番号を上げる」
というのがリリース番号の扱い方のほとんどを占めます。
「ほとんど」以外のケースとして以下に2つの例をあげます。
バージョン表記を書き換えなくてもリリース番号さえ上げればユーザはそのエージェントをアップデートする事ができます。
しかし、バージョン表記が変化していないのにアップデート可能になっている理由はユーザにはわかりません。従ってこのような方法は推奨されません。
逆に「更新時にリリース番号を上げたがバージョン表記を書き換えるのを忘れた」ような場合には、バージョン表記だけ修正すればよく、ここでリリース番号も上げてしまうと、ユーザに同じパッケージで二度以上アップデートさせてしまう場合があります。