Under the hood

 

A peek under the hoodってなことで,9.52の追加修正版が来たのでさっくりとインストール.

チェンジログの前にはパッケージングの話が延々と続いて,QAのblogができましたで終わり.

肝心のチェンジログはとりあえず4件で

  • javascript: なURIでのエンコードの問題の修正.
  • BBC iPlayer ( RealPlayer のプラグイン)の問題の修正.
  • 安定性に関する修正.
  • GMailが読み込まれない問題に関する修正.

と,こまごまとした修正.

OCSP の関係で一部のEVSSLサイトでアドレス欄が緑にならないのも修正されたもよう.

DTBのコメント欄とか,2chのすれをみると,「あのバグ治ってないぞ」なのもいくつかある様子.

微妙なところとしては,opera:configでのProfileフォルダ(Opera Dir)の表示が変ってるっぽい.

前半部分の適当訳

A peek under the hoodの適当訳 MSIのインストーラは扱った経験がないので相当アヤシイ

今日は,いつもとちょっと違ってOpera自体の話ではなく,新しいOperaがあなたに届くまでの話をしようと思います.私たちが,ソースコードの塊からいかにして,様々な環境向けに様々なオプションでコンパイルし,このブログからダウンロードしてインストールできるパッケージにするのかについて説明していきます.

インストールは,それ自体複雑な処理です.インストールについて一度は考えても,二度は考えないでしょう.ですが,実際のところインストールは極めて重要な処理できちんと動作しないと,大好きなソフトを楽しむことはできません.では,どうやってソースコードを実行ファイルにしてインストーラーを作ればいいのでしょう?

基本的には,ビルドとパッケージ化の2つの処理からなり,両方を実現するためのビルドシステムがあります. まずは web 経由で関係者からの要求を集め,それぞれの要求を処理できるサーバへと投げます.次に,それぞれのOSごとに少しずつ異なるスクリプトでそれぞれのサーバでのビルドとパッケージ化が行われます.

ビルドの処理自体はそれぞれのプラットフォームでもほとんど同じです.要求されたバージョンのソースコードを持ってきて,適切なオプションを付けてコンパイルして実行ファイル(とライブラリ)を生成します.コンパイル部分はソースコードが正しい限りプラットフォームごとに特有のコンパイラで処理されます.

この時点で,パッケージ化の準備が全部でき,スクリプトは個々のOS用にまったく異なるものになります. ここからは,特に僕が責任を負っているWindowsでのパッケージ化について詳しく話していきます.

Windows版のOperaには,InstallShield で作る MSI 形式のパッケージと,古いバージョンの WISE インストーラで作る “Classic” パッケージとがあります. WISE インストーラは,専用の言語で書かれたスクリプトを用意して,それを実行するだけなので相対的に設定が容易です.Windows Vistaかどうかを検知するなど専用言語でカバーしきれない処理には,別にDLLを用意して使うこともできます.WISE インストーラは簡単な一方で,Windows98 より新しい Windows にうまく適応していない部分があります.

InstallShield はより強力で,MSI インストーラの組み立てはとても複雑です.ここでは詳細を語りませんが,InstallShield のパッケージでは非常に大量の設定が可能です.MSI インストーラのスクリプトは,パッケージがすべきことを記した XML 形式の ISM ファイルをコンパイルして作ります. パッケージ化のスクリプトはインストーラの定義ファイルを開くことからはじめて,いくつかの設定処理をして,インストーラ自体の言語設定などを準備します.次に,パッケージに必要なファイルの一覧を作成して,所定の位置に配置します.その後,いくつかの調整がなされて,MSI のパッケージが出来上がります.このプロセスをそれぞれのMSIパッケージに対して行います.WISEインストーラは 英語版のMSIパッケージと一緒に作られますが,相対的にみれば大したことではありません.

ビルドシステムとパッケージスクリプトの保守と改善はかなりの量の仕事だけども,重要な仕事です.もし,これらがなければ全部のビルドとパッケージ化を手動でやらなければならないのですから.

今回はOperaの開発の重要な一幕をちょっとだけおなしさせていただきました.

最後ですが,Opera の QA チームのブログを開設しました.「フードの下」にもっと詳しくは,QA blogをお読みください.

opera/wb/d080718_peek_under_the_hood.txt · 最終更新: 2008/09/01 08:10 (外部編集)
 
 
©2008 Another cool website by 80KV