読者です 読者をやめる 読者になる 読者になる

一角獣は夜に啼く

ただの日記です。

思ってることとか考えたこととか適当に書きます。 まじめな話は 「ひだまりソケットは壊れない」 に書いています。

Chrome 拡張を chrome ウェブストアにアップロードできない : 『エラーが発生しました: 無効なマニフェストです』 というエラーが発生

今日あったつらい話。

Chrome 拡張を Chrome ウェブストア にアップロードしたら、以下のエラーメッセージが表示されてしまって Chrome 拡張のアップデートができなかった。

エラーが発生しました: 無効なマニフェストです。ギャラリーはまだコメントに対応していないため、マニフェストにコメントを追加した場合は削除してください。

英語だと以下。

An error occurred: Invalid manifest. If your manifest includes comments, please remove them as our gallery does not support them yet.

manifest.json に (JavaScript 形式の) コメントが含まれていたり、配列の中身の末尾にカンマがあるなど、manifest.json が JSON として仕様にあわない場合 *1 にはこういうエラーメッセージが表示されるようだけれど、今回はそれが原因ではない。

アップロードした Chrome 拡張の manifest.json の manifest version は 1 だったのだけれど、manifest.json のバージョンを 2 にしないとアップデートできなくなるようになる、という話もあるので、予定より早いけどその変更があったのかなー、と思ったり。 しかし調べてみてもとくにそういう話もなく。

よくわかんないなーと思いながら調べていると、なにやら zip にするさいに無圧縮で zip に固めないと chrome ウェブストアにはじかれるという話があった。

Try zipping the file with no compression (in WinRAR, "Store Only").

This solved the problem for me. Weird, I know.

"Invalid manifest" error when uploading an update - Google Groups

実際にやってみたらこれでうまくいった。 つらい。 多分そのうち直るだろうけど (もしかしたら既に直ってるかもだけど)、この問題ではまってる人がいれば無圧縮で zip に固めてみたら良いかと思う。

*1:JSON の仕様としては RFC 4627 を参照。 Chrome ウェブストアが RFC 4627 に適合しているかどうかを見ているのかどうかは不明だが。