アドオンのレビュー申請の前にやっておきたい2つのこと
すでに作者の方々は皆知っている内容と思いますが、
個人の反省も踏まえて、いったん共有しようと思います。
(えぇ、アドオン二つともFull Reviewをrejectされましたorz)
Firefoxのアドオンにはレビューが2段階あります。
1)Preliminary Review
2)Full Review
#公式Add-on Policies - Mozilla | MDN
1個目は簡易的なレビュー。通過するとAMOで検索できます。(ただし、実験的という注意書きがかかれます)
2個目は正式なレビュー。通過すればAMOで検索でき、何の注釈もつきません。(トップページにも表示されるようになったと思います。)
今までは1個目のPreliminary Reviewだけを申請していました。こちらはすんなり通ります。(今は高速サイクルリリースの影響もあって、レビューはかなり遅れ気味です。ただ、レビュワーの方はボランティアで見てくれているので、ただただ感謝です。)
余裕かと思いきや、Full Reviewはきちんと突っ込まれます。
引っかかったのは以下の2点。
1) In order to prevent conflicts with other add-ons that may be installed by users, you need to wrap your "loose" variables and functions within a JavaScript object. You can see examples on how to do this at https://developer.mozilla.org/en/XUL_School/JavaScript_Object_Management.
2) Your add-on uses the 'eval' function unnecessarily, which is something we normally don't accept. There are many reasons *not* to use 'eval', and also simple alternatives to using it. You can read more about it here: https://developer.mozilla.org/en/XUL_School/Appendix_C:_Avoid_using_eval_in_Add-ons
1個目は、アドオンで宣言しているJavaScriptのグローバル名称を管理しなさいということ。
⇒単純に同じ名称のオブジェクトがundefinedか確認するだけ。
2個目は、evalは一切使ってはいけません。ということ。
⇒既存のアドオンでもFullReview通っているからといって油断してはだめでした。
⇒関数の置き換えでわかりやすいように実装する。
せっかく作ったアドオンを早くAMOに載せられるように、ここは最初からきちんと読み込んで対応しておくべきでした。反省。
現在は2つのアドオンともに修正し、再度FullReview待ちの状態です。
FixScrollはRejectされてしまったので、現在はダウンロード不可の状態です。Firefox5対応がまだの状態なので、早くReviewされたいところです。
Reviewerとなってくれた方は外国の人でした。
日本語ばかりの説明なのにレビューしてくれて、ありがとうございました。
Thank you for your review.