はじめに
昨日書いた記事の最後にバグレポートを!と書いたので、実際にどのようにしたらいいのか書いてみます。NetBeansはOSSで無料で利用することができます。ときどきつぶやきなどで、これ動かないとか、あれ(有料のソフトなど)と比較して、てんてんぷるぷるなんて書いてあるのをみると(冗談で言ってるのは除きます)ちょっとだけ残念な気持ちになります。
報告するのはちょっと面倒だと感じる方もいるかもしれませんが、自分だけでなく他の人の役に立つかもしれないので、ぜひバグレポートしましょう。
英語はちょっと。。。
NetBeansは日本で開発されていないので、バグレポートをするときには、英語で書かないと受け付けてもらえません。でもそんなときは、日本語コミュニティーを通じて報告してもらうことができます。
NetBeans日本語コミュニティ (@ja_netbeans)
http://twitter.com/ja_netbeans
報告する前に…
当たり前のことかもしれませんが、少しだけ環境などを整理しましょう。たとえば、自分が開発している側だとして、問題の連絡をうけたとします。コメントが「これ動きません!」だけだと自分の環境でも再現させるのは難しいですよね。次のようなものを含めるとわかりやすいと思います。
- PCの環境(OS: linux, windows, mac,… JDK: 1.6.x, 1.7.x, …, 言語)
- NetBeansのバージョン(e.g. 7.2, 7.3, development, …)
- 実行手順
- IDEのログ(例外が発生したときなど)
- 画面のスクリーンショット
- 再現する最小限のものが入ったプロジェクト(zip化)
1や2はNetBeansのヘルプ > バージョン情報で確認することができます。
実行手順について
3は箇条書きすれば問題ないと思います。例えば、
- create a new project
- create a new php file
- run code completion [Ctrl + Space]
- my functions are not displayed on code completion list
多少、文法とか間違っていても、キーワードを書いていればある程度通じると思います。あとは、Google先生に聞きましょう。自分は英語は苦手なのでとりあえず書いてみて、登録する前にG先生に相談します。表現がわからなければ、ググると似たような文の書き方がでてくると思います。(たとえば、「であるとはかぎらない 英語」など。。。)
IDEのログについて
4のIDEのログは、表示 > IDEのログで確認することができます。例外が発生した場合は個々の該当場所をコピーして、公開したくない場所は修正して、テキストデータに保存します。たとえば、stacktrace.txtなどの名前のテキストファイルを作成します。
例外は、ダイアログが表示される場合は気づきやすいですが、ダイアログが表示されずにステータスバー(画面の最下部)に赤いアイコンが表示されることもあるので、その場合はアイコンをクリックして、ログを確認してみましょう。
画面のスクリーンショットについて
説明しにくい場合や文字化けを発見した場合などには、スクリーンショットをとっておくといいと思います。
下は文字化けを発見した場合です。
再現する最小限のものが入ったプロジェクト(zip化)について
自分のプロジェクトの環境では再現するんだけど、中の人の環境では再現できないときもあります。そんなときは、自分のプロジェクトで公開できないものを除いたプロジェクトを用意してそれをzip化して添付するとわかりやすいと思います。
プロジェクトのzip化はIDEの機能にあるのでそれを利用しましょう。
プロジェクトノードを選択して、ファイル > エクスポート > zipへ
準備ができたら報告しましょう。
バグレポートする
方法は2通り有ります。
- webサイトから登録する
- NetBeansから登録する
どちらの方法でもまずはアカウントを作る必要があるので、作成しておきましょう。
Webサイトから登録
Registerのところから登録してReport a Bugに進みます。
3のsearchで既存のバグに報告されていないか確認します。なさそうであれば4のNew Issueに進みます。
該当するカテゴリーを選択します。もしわからなければ、これかなと思う所で問題ないと思います。もし間違っていても、おそらく正しい担当の人に割り当ててくれます。
Summaryは例外が発生していた場合は、ログの例外名の箇所がよく書かれているので、それを書いておけば問題ないと思います。(例えば NullPointerException〜〜〜〜)
Descriptionの部分に環境や手順を書きます。
Attachmentのところに、スクリーンショットやログを添付することができるので、もしある場合は添付します。
ここで注意しないといけないのは、添付ファイルは全員に公開されることです。それなので、zipファイルの場合は公開してはいけないものが入っていないか確認したほうがいいです。
Submit Bugを押して完了です。あとは、修正されるのを待ちます。何かアクションがあれば、メールがとんできます。
NetBeansから登録
NetBeansから登録する機能もあります。使ったことありませんが。(ぇ
ヘルプ > 問題を報告 または チーム > 問題を報告
Webサイトと似てますね。こちらは日本語で表示されます。更に説明の部分に自動的に環境が挿入されます。ここではログファイルすべてが添付されるかもしれません。
検索したい場合はチーム > 問題を検索
機能強化について
バグではなくて、こんな機能がほしい、こうしてほしい等の要望もNetBeansのbugzillaに登録しましょう。その場合はIssue Type をENHANCEMENTにして登録します。
例えば下記の投稿はgithub issueの機能をgitの機能に追加してくれというものです。
http://netbeans.org/bugzilla/show_bug.cgi?id=221046
プラグインの問題について
問題がおきた状態やログをみたときにプラグインの問題だなと思ったら、NetBeansのbugzillaではなくてプラグインの作者(サイト)に報告しましょう。bugzillaに登録しても中の人はどうすることもできないので、WONTFIXの状態になりレポートが閉じられます。運良く、中の人がプラグインのissueの登録先を知っている場合は、そこに登録してくれることもありますが、負担になると思うのでしないほうがいいかと思います。
使い方がおかしい?こんなことはできるの?
疑問などがあった場合は、フォーラムに投稿してみるといいかもしれません。メーリングリストと連携しているので、中の人も確認してくれていると思います。
最後に
リリースされてから、報告するよりベータ版のころに試しに使ってみて報告したほうがより多くの人が幸せになれます。ソーシャルに流して修正されないより、それをバグ管理に流して修正されたほうが嬉しいのではないでしょうか?自分もできているわけではないので、できるだけ実行するようにするためにもこの記事を書きました。
ピンバック: NetBeans PHP : Alt + Enter でヒント・警告の表示とコードの追加 | junichi11の日記~つらつらなるままに~