閑話休題 〜 最近の Mozilla 事情

前へ 目次 次へ

いやぁ、2ヶ月ほど記事をサボっていたら Mozillaの状況もずいぶんと様変わりしています。
f(^^;; ← Mozilla もサボっていたので浦島太郎状態

前回では Mozillaのオブジェクトは一部を除いて互換性があることがわかりました。 今回はもう少し細かく見てプロパティに関する互換性について見てみましょう... と思ったけど、話の筋道を見失ったままなので最近のMozilla事情などについて雑感をば(笑)。


ここ2ヶ月ほどの間に Mozilla開発プロジェクトに大きな変動があったようです。

まずは予想外に Netscape Preview Release3( NN6PR3 )が出たことでしょう。
# 予想外というのは、私が勝手に「次回は年末に正版」と思いこんでいたからなんですけど f(^^;

補足
と言っているそばから 11/14日に正版が出ちゃいました。(^^;

NN6PR3 は Mozilla M18 をベースに公開されました。 これは、M18 が機能的に一応のレベルに達して、NN6 の商品化の段階にまで来たと 判断したためと思われます。 また、予想に反して NN6PR3 のリリースから一週間以上も遅れて M18 がリリースされ、 Mozilla org の nightly build に突然(私にだけです f^^; ) Mtrunk と MN6 が現れました。

実際には 9月下旬に Mozilla のロードマップを見直す宣言がされ、 NN6 は M18 をベースに商品化作業に、M18 以降のマイルストーンは Mozilla0.6 から 1.0 へと続く ( 実際には、その後も計画されている )新しいロードマップに沿った開発作業へと移行したようです。

まあ、Mozilla1.0 と言うと userAgent はどうなるのか疑問に思うところですが、 それは適当にやってくれると期待して(笑)、 この軌道修正を DOM から眺めてみましょう。

... 実は、M18 のツリークローズの噂が流れたころ M18 は結構安定したビルドでした。 が、突然 DOM にかなり大きな変更が入り、起動すらできないような状況が続きました。

どうやら、この時期にロードマップの見直しがされ、NN6 のためのブランチ作成のための修正 ( つまり、Mozilla の主流で開発・修正されるコンポーネントの互換を維持できるようにするための 修正 )を行ったようです。

もう少し内容を細かく見ると

  1. W3C DOM2 に沿っていないメソッドやプロパティを合わせる
  2. WindowInternal と WindowEventOwner オブジェクトの新設 ( XML, XUL, XBL, ... への布石? )

などがあるようです。

この作業の結果として NN6PR3, M18 は一見まともに見えますが、DOM, JavaScript に関しては、 仕様ともバグとも区別できないような動作が結構あります。 f(^^;;

特にイベントまわりは、それまで動作しなかったメソッドが動作するようになったものもあります(*1)が、 逆にイベントの発生順が変わったために動作しなくなったもの(*2)もあります。
# これらの理由で、M18 をどのように扱ったものか悩むところです f(^^;

*1
それまで動かなかった addEventListener は動作するようになったようですが、 タグで記述する onClick 等のイベントとも異なる動作になっています( 仕様?バグ? )。

*2
特に TABLE 関係のオブジェクト上でのマウスイベントは、 イベント発生に伴う動作シーケンスが他と場合と異なるようです( 仕様?バグ? )。

これは私見ですが、これらの修正をする前に1度 M18 をリリースした後に、 これらの変更作業をして安定した後 NN6PR3 を出した方が良かったのでは? と思っています。

やはり、 JavaScript の Mozilla 対応は正版( NN6 または Mozilla1.0 )リリースまで 待った方がムダがないような気もしてきます(笑)。

補足
NN6 正版もやはり、あの M18をベースにビルドされたもののようです。 ということは、今後は結構な頻度で NN6.01, NN6.02, ... ってなリリースもあるかも... (^^
ってことで、次回は前回の続きから始めようと
思っていますが、どーなることか... f(^^;
前へ 目次 次へ

戻る Copyright(c) 2000 ShinSoft All rights reserved.