目次

導入

Bugzilla 3.4 にようこそ! Bugzilla 3.4 は、 ユーザインタフェースに関するさまざまな改良、たくさんの興味深い新機能、 たくさんの古くからの要望が実装されたなど、 前のバージョンからは多くの拡張がなされています。

アップグレードを考えている場合、古いバージョンからの アップグレード方法 を読んでください。3.2 より前のリリースからアップグレードする場合、 以前のバージョン のリリースノートのうち、 あなたが利用しているバージョンとこのバージョンの間の全てのものを読んでください。 特に各バージョンのリリースノートでの "アップグレード利用者向け" の章に目を通してください。

Canonical Ltd.による新機能を 一つ開発するためのの資金提供、NASA による San Jose State University Foundation経由のいくつかの新機能の開発のための資金提供 に感謝いたします。

3.4.x リリースでの更新点

3.4.2

このリリースでは複数のセキュリティー問題への修正を含み、うち一つは緊急の脆弱性です。 詳細に関しては、 セキュリティーアドバイザり を参照してください。

加えて、以下の重要な修正や変更がこのリリースでは行われました。

3.4.1

このリリースでは重大なセキュリティー問題を修正しています。詳細については、 セキュリティーアドバイザリ をご覧ください。

動作環境

3.2.3 以降の新しい必要条件は このように 表示されます。

Perl

Perl v5.8.1

MySQL ユーザ

PostgreSQL ユーザ

Oracle ユーザ

必須 Perl モジュール

モジュール バージョン
CGI 3.33
Date::Format 2.21
File::Spec 0.84
DBI 1.41
Template 2.15
Email::Send 2.00
Email::MIME 1.861
Email::MIME::Encodings 1.313
Email::MIME::Modifier 1.442

追加の Perl モジュール

以下の Perl モジュールについては、インストールされていれば、いくつかの Bugzillaの機能が有効になります。

モジュール バージョン 有効になる機能
LWP::UserAgent (指定なし) Automatic Update Notifications
Template::Plugin::GD::Image (指定なし) Graphical Reports
GD::Text (指定なし) Graphical Reports
GD::Graph (指定なし) Graphical Reports
GD 1.20 Graphical Reports, New Charts, Old Charts
Email::MIME::Attachment::Stripper (指定なし) Inbound Email
Email::Reply (指定なし) Inbound Email
Net::LDAP (指定なし) LDAP Authentication
HTML::Parser 3.40 More HTML in Product/Group Descriptions
HTML::Scrubber (指定なし) More HTML in Product/Group Descriptions
XML::Twig (指定なし) Move Bugs Between Installations
MIME::Parser 5.406 Move Bugs Between Installations
Chart::Base 1.0 New Charts, Old Charts
Image::Magick (指定なし) Optionally Convert BMP Attachments to PNGs
PatchReader 0.9.4 Patch Viewer
Authen::Radius (指定なし) RADIUS Authentication
Authen::SASL (指定なし) SMTP Authentication
SOAP::Lite (指定なし) XML-RPC Interface
mod_perl2 1.999022 mod_perl

新機能と改良点

簡単な bug 登録

新規 bug 登録時、ほとんどのフィールドは最初は隠されるようになり、 登録フォームの見た目がより簡単になりました。必要であれば "詳細フィールドの表示" をクリックするとそれらのフィールドは表示されます。Bugzilla は最後の bug 登録フォーム利用時に、 "詳細" と "簡単" のどちらを利用したかを記憶し、次の bug 登録時には同じバージョンを表示します。

新しいホームページ

Bugzilla のフロントページがデザイン変更され、新規ユーザにとって、 よく利用される機能がより分かりやすい形で表示されるようになりました。 ホームページのより高機能化は将来の Bugzilla で行われます。

ログアウトユーザに対してのメールアドレスの隠蔽

Bugzilla ユーザへの spam を防止するために、Bugzilla に保存されているすべてのメールアドレスはログイン時にのみ表示されるようになりました。 ログアウトしているときは、メールアドレスの "@" の前の部分のみが表示されます。 これには bug リスト、bug の表示、XML 形式でのbug、他のメールアドレスが表示されるすべてのウェブインターフェースも 含まれます。

bug コメントにあるメールアドレスはフィルターされません。 ウェブサービスでは、ログアウトしていても完全なメールアドレスを返します。

より短い検索 URL

検索を実行したとき、すべての利用していないフィールドが URL から除かれ、 検索 URL がより短い意味のあるものになりました。

非同期メール送信

過去の Bugzilla での最大のパフォーマンス問題は、bug を更新する際に、通知が必要なすべてのユーザにメールが即座に送信され、 process_bug.cgi がその送信完了を待ってしまうというものでした。

Bugzilla には bug の更新の際に、 メール送信をキューし、バックエンドで送信する機能が実装されました。 この機能は管理者が Bugzilla に含まれる、 jobqueue.pl デーモンを実行し、 use_mailer_queue パラメータを有効にする必要があります。

バックグラウンドメール送信デーモンを直接メール送信の代わりに利用すると、 大規模サイトでの bug 更新ではかなりの高速化になります。

日時のユーザのタイムゾーンでの表示

ユーザは自身の居るタイムゾーンを選択できるようになり、Bugzilla は表示する日時をそのタイムゾーンにあわせます。しかしながら、 ユーザが入力する日時は Bugzilla のタイムゾーンに従わねばなりません。

他のフィールドが特定の値に設定されているときのみ 表示されるカスタムフィールド機能

新しいカスタムフィールドを作成する (もしくは既存のカスタムフィールドの 定義を更新するとき) ときに、ユーザは "このフィールドはフィールド X が Y の値であるときのみ表示する" と設定可能になりました。 (将来的に、複数の "Y" を選択できるようになり、 フィールドはそれらのいずれかが選択されているときに表示されるようになるでしょう。)

この機能はフィールドを単純に隠します。その値を消し去るわけではありません。 つまり、bug はそれらのフィールド値での検索に引っかかりますが、 ユーザインターフェースでは表示されない状態になります。

この機能はプロダクトに特有のフィールドに有用です。

他のフィールドの値によって変化するカスタムフィールドの 有効値リスト

ドロップダウンもしくは複数選択のカスタムフィールドを作成するとき、 他のフィールドを "値を制限する" フィールドとして設定できます。 これにより、このフィールドに値を追加するとき、 特定の値を他のフィールドが特定の値になっているときのみ表示するように設定可能です。

たとえば、"Colors" フィールドを作成するとして、プロダクトをこの Colors の "値を制限する" フィールドに選択します。そして、 Blue, Red, Black, Yellow を有効な値としてフィールドに追加します。 そして "Blue" と "Red" をプロダクト A でのみ有効な選択肢、 "Yellow" をプロダクト B でのみ、"Black" を 常に 有効とします。

この機能は ユーザインターフェース でのみ有効な値の制限機能です。Bugzilla そのもののバックエンドでは、 どのような値の組み合わせでも有効とし受け入れます。

新しいカスタムフィールド型: bug ID

単一の bug ID への参照を追加可能なカスタムフィールドを 作成できるようになりました。将来的にはこのフィールドを経由して相互にbug を参照可能にする拡張がなされるでしょう。

"参照先" フィールド

新しい標準的なフィールド "参照先" が追加されました。このフィールドには、 関連するどの Bugzilla サイトの複数の bug URL を設定できます。この機能はまた、Launchpad の bug も追加可能です。

現在、このフィールドは単純に URL を検証し、表示するだけです。将来的には、 他のサイトから bug についての情報を取得し、 他の情報についてもアップデートするようになるでしょう。

サイトがこのフィールドを必要としない場合、 use_see_also パラメータ を無効化することで隠せます。

検索結果でのカラム並び順変更

検索結果で表示されるカラムの選択を行うユーザインターフェースが変更になり、bug リストでの表示で、 どの順序で左から右に並べるかを設定できるようになりました。

検索の説明

検索結果の表示で、Bugzilla は、bug リストの先頭に検索条件の概要を表示するようになりました。

他の機能拡張や変更点

ユーザ向けの機能拡張

管理者や開発者向けの機能拡張

ウェブサービスの更新

既知の問題点

古いバージョンからのアップグレード方法

3.4 にアップグレードする際、checksetup.pl は、 データベースのさまざまなカラムに外部キーを設定します。これを実行する前に、 データベースの整合性を確認します。もし、整合性に未解決の問題がある場合、 データベースのどのテーブルやカラムに無効値が入っているかと、 どの値が無効であるかを表示します。もし、何をすべきか分からない場合、 データベースにログインし、次のコマンドを実行することで、 無効地を含むデータベースレコードを削除してください。

DELETE FROM table WHERE column IN (1, 2, 3, 4)

"table" と "column" を checksetup.pl が表示した名前に、 "1, 2, 3, 4" を checksetup.pl が表示した無効な値に置き換えてください。

なお、必ずアップグレード前にデータベースのバックアップをとることを忘れないでください。

カスタマイズに影響するコードの変更

Bugzilla 3.2 リリースノート

目次

導入

Bugzilla 3.2 にようこそ! これは、Bugzilla 3.0 以来はじめての機能追加のリリースで、さまざまな改善と、Bugzilla の利便性改善を含んでいます。

アップグレードを考えている場合、古いバージョンからの アップグレード方法 を読んでください。3.0 より前のリリースからアップグレードする場合、 以前のバージョン のリリースノートのうち、 あなたが利用しているバージョンとこのバージョンの間の全てのものを読んでください。 特に各バージョンのリリースノートでの "アップグレード利用者向け" の章に目を通してください。

3.2.x リリースでの更新内容

この節では 3.2 以降の最新の Bugzilla 修正版リリースでの変更点を説明しています。 それぞれのリリースでの最も重要な修正のみが掲載されています。 もし、各リリースでどのような変更が加えられたかのすべての詳細が必要なら、 変更点一覧 (英語) を参照してください。

3.2.3

このリリースではセキュリティー修正も含んでいます。 詳細に関しては セキュリティー修正の項 をご覧ください。

3.2.2

このリリースでは 3.2.1 を mod_perl 環境でインストールしたときに発生する 重大なセキュリティー問題1件を修正しています。詳細については、 セキュリティーアドバイザリ をご覧ください。

3.2.1

3.2.x リリースでのセキュリティー更新

3.2.3

このリリースでは添付ファイルに関するセキュリティー問題1件を修正しています。 詳細については、セキュリティーアドバイザリ をご覧ください。

3.2.2

このリリースでは 3.2.1 を mod_perl 環境でインストールしたときに発生する 重大なセキュリティー問題1件を修正しています。詳細については、 セキュリティーアドバイザリ をご覧ください。

3.2.1

このリリースでは複数のセキュリティー更新を含みます。中には、process_bug.cgi を直接呼び出すような自動スクリプトすべてに影響する問題もあります。 これらの詳細について、このリリースの セキュリティーアドバイザリ を読むことを強く推奨します。

動作環境

3.0.5 以降の動作環境の更新は このように 表示されます。

Perl

Perl v5.8.1

MySQL ユーザ

PostgreSQL ユーザ

Oracle ユーザ

必須 Perl モジュール

Module Version
CGI 3.21 (on Perl 5.8.x) or 3.33 (on Perl 5.10.x)
Date::Format 2.21
File::Spec 0.84
DBI 1.41
Template 2.15
Email::Send 2.00
Email::MIME 1.861
Email::MIME::Encodings 1.313
Email::MIME::Modifier 1.442

追加の Perl モジュール

以下の perl モジュールがインストールされていれば、Bugzilla のさまざまな機能が有効化されます:

モジュール バージョン 有効になる機能
LWP::UserAgent (Any) Automatic Update Notifications
Template::Plugin::GD::Image (Any) Graphical Reports
GD::Text (Any) Graphical Reports
GD::Graph (Any) Graphical Reports
GD 1.20 Graphical Reports, New Charts, Old Charts
Email::MIME::Attachment::Stripper (Any) Inbound Email
Email::Reply (Any) Inbound Email
Net::LDAP (Any) LDAP Authentication
HTML::Parser 3.40 More HTML in Product/Group Descriptions
HTML::Scrubber (Any) More HTML in Product/Group Descriptions
XML::Twig (Any) Move bug Between Installations
MIME::Parser 5.406 Move bug Between Installations
Chart::Base 1.0 New Charts, Old Charts
Image::Magick (Any) Optionally Convert BMP Attachments to PNGs
PatchReader 0.9.4 Patch Viewer
Authen::Radius (Any) RADIUS Authentication
Authen::SASL (Any) SMTP Authentication
SOAP::Lite (Any) XML-RPC Interface
mod_perl2 1.999022 mod_perl

新機能と改善点

主な UI の改善

Bugzilla 3.2 では NASA HCI と新しい Bugzilla UI チーム による新しい UI が導入されました。

特に、新スキン に加え、bug 編集フォームの内容が大幅に更新されています。

新しい既定のスキン: Dusk

Bugzilla 3.2 では新しい "Dusk" と呼ばれるスキンを利用しています。 これは古い既定の "Classic" スキンに比べて少しカラフルになっています。

アップグレードを行うと、既定は "Classic" スキンのままになりますが、 管理者はコントロールパネルの規定の設定から変更できます。 ユーザも自身の設定から古いスキンを選択することも可能です。 (もしくは、Firefox の表示 :: スタイルシートメニューから。)

Bugzilla に Dusk を適用するための変更により Bugzilla のスキンがより作りやすくなりました。 アドオンページ にある追加のスキンや、自分のを作ってみてください !

カスタムステータスワークフロー

Bugzilla でのステータスのリストやステータス間の遷移を、 カスタマイズ可能になりました。

特定の遷移を行う際にコメントを入力しなければならないように設定することも可能です。

新しいカスタムフィールド型

Bugzilla 3.2 から3つの新しいカスタムフィールドの型が利用可能です :

より簡単なインストール

Bugzilla に、install-module.pl スクリプトが添付されるようになり、Bugzilla に必要な Perl モジュールを、 自動的にダウンロードしてインストール可能です。 このスクリプトでは、Bugzilla のディレクトリの下にインストールするので、 ホストの管理者レベルの権限が必要なく、システムの Perl に変更なしに利用可能になります。

checksetup.pl で、install-module.pl の利用方法を出力しますし、 ドキュメント にも解説があります。

実験的な Oracle サポート

Bugzilla 3.2 では Oracle をデータベースに利用するための、 実験的なサポートを含みます。Bugzilla のいくつかの機能は、 Oracle では動かないことが確認されていますが、 次のリリースでは動作するようになるでしょう。

Bugzilla プロジェクトは、オープンソースプロジェクトとして、 もちろんのことながらプロプラエタリなデータベース環境を強要するわけではありません。 しかしながら、あなたの組織が Oracle を利用することを指定しているなら、 この実装により Bugzilla を利用することができるようになります !

Bugzilla プロジェクトは Oracle 社に対し、 Oracle が利用可能になった Bugzilla への多大な開発での貢献について感謝します。

UTF-8 サポートの改善

Bugzilla 3.2 ではコード自体の UTF-8 サポートが強化され、 多バイト言語での切り詰めやラッピングも改善されました。 多バイトなどの言語での主な問題は解決され、Bugzilla は最低限の (か少ない) カスタマイズで全ての国で 利用可能になっています。

グループアイコン

管理者は特定のグループに所属するユーザに対して、 コメントに表示される名前の後ろにアイコンを表示するように指定可能です。bug 報告者の中から開発者を見分けるために便利なこともあります。

他の機能追加と変更

これ以外にも細かい機能追加や、短い説明でわかる拡張があります。 ただ、これらの中にも有用なものもあります !

ユーザ向け

管理者向け

ローカライゼーション向け (もしくはローカライズされたインストール)

既知の問題点

古いバージョンからのアップグレード方法

アップグレード用のメモ

アップグレード方法

上記の注意を読んだあとは、 アップグレードに関するドキュメント を参照してアップグレードしてください。

カスタマイズに影響するコードの変更

よりよくなったフック機構!

3.0 に比べて 3.2 ではよりフックできる場所が増えました。詳細に関しては、 Bugzilla::Hook のドキュメントを参照してください。

Search.pm 再構成

Bugzilla/Search.pm は大幅に書き換えられ、より簡単に読め、 利用できるようになりました。3.0 と大部分は同じコードですが、 移動され、単純な形に再構築されました。

lib ディレクトリ

install-module.pl の実装上、 標準的なシステムパスに加えて、ローカルの lib ディレクトリを、 モジュール検索のパスに Bugzilla が追加するようになりました。

これは、全ての Bugzilla スクリプトが、 use lib qw(. lib); を先頭の行として始まることを意味します。

その他の変更

Bugzilla 3.0.x リリースノート

(日本語注: この部分は将来的にも翻訳されません。)

目次

導入

Welcome to Bugzilla 3.0! It's been over eight years since we released Bugzilla 2.0, and everything has changed since then. Even just since our previous release, Bugzilla 2.22, we've added a lot of new features. So enjoy the release, we're happy to bring it to you.

If you're upgrading, make sure to read How to Upgrade From An Older Version. If you are upgrading from a release before 2.22, make sure to read the release notes for all the previous versions in between your version and this one.

3.0.x リリースでの更新

This section describes what's changed in the most recent bug-fix releases of Bugzilla after 3.0. We only list the most important fixes in each release. If you want a detailed list of everything that's changed in each version, you should use our Change Log Page.

3.0.6

See also the Security Advisory section for information about a security issue fixed in this release.

3.0.5

See also the Security Advisory section for information about security issues fixed in this release.

3.0.4

See also the Security Advisory section for information about security issues fixed in this release.

3.0.3

3.0.2

See also the Security Advisory section for information about an important security issue fixed in this release.

3.0.1

動作環境

2.22 以降の動作環境の更新は このように 表示されます。

Perl

MySQL ユーザ

PostgreSQL ユーザ

必須 Perl モジュール

モジュール バージョン
CGI 2.93
Date::Format 2.21
DBI 1.41
File::Spec 0.84
Template 2.12
Email::Send 2.00
Email::MIME 1.861
Email::MIME::Modifier 1.442

追加の Perl モジュール

以下の perl モジュールがインストールされていれば、Bugzilla のさまざまな機能が有効化されます:

モジュール バージョン 有効化される機能
LWP::UserAgent (指定なし) Automatic Update Notifications
Template::Plugin::GD::Image (指定なし) Graphical Reports
GD::Graph (指定なし) Graphical Reports
GD::Text (指定なし) Graphical Reports
GD 1.20 Graphical Reports, New Charts, Old Charts
Email::MIME::Attachment::Stripper (指定なし) Inbound Email
Email::Reply (指定なし) Inbound Email
Net::LDAP (指定なし) LDAP Authentication
HTML::Parser 3.40 More HTML in Product/Group Descriptions
HTML::Scrubber (指定なし) More HTML in Product/Group Descriptions
XML::Twig (指定なし) Move bug Between Installations
MIME::Parser 5.406 Move bug Between Installations
Chart::Base 1.0 New Charts, Old Charts
Image::Magick (指定なし) Optionally Convert BMP Attachments to PNGs
PatchReader 0.9.4 Patch Viewer
SOAP::Lite (指定なし) XML-RPC Interface
mod_perl2 1.999022 mod_perl
CGI 3.11 mod_perl

新機能と改善点

Custom Fields

Bugzilla now includes very basic support for custom fields.

Users in the admin group can add plain-text or drop-down custom fields. You can edit the values available for drop-down fields using the "Field Values" control panel.

Don't add too many custom fields! It can make Bugzilla very difficult to use. Try your best to get along with the default fields, and then if you find that you can't live without custom fields after a few weeks of using Bugzilla, only then should you start your custom fields.

mod_perl Support

Bugzilla 3.0 supports mod_perl, which allows for extremely enhanced page-load performance. mod_perl trades memory usage for performance, allowing near-instantaneous page loads, but using much more memory.

If you want to enable mod_perl for your Bugzilla, we recommend a minimum of 1.5GB of RAM, and for a site with heavy traffic, 4GB to 8GB.

If performance isn't that critical on your installation, you don't have the memory, or you are running some other web server than Apache, Bugzilla still runs perfectly as a normal CGI application, as well.

Shared Saved Searches

Users can now choose to "share" their saved searches with a certain group. That group will then be able to "subscribe" to those searches, and have them appear in their footer.

If the sharer can "bless" the group he's sharing to, (that is, if he can add users to that group), it's considered that he's a manager of that group, and his queries show up automatically in that group's footer (although they can unsubscribe from any particular search, if they want.)

In order to allow a user to share their queries, they also have to be a member of the group specified in the querysharegroup parameter.

Users can control their shared and subscribed queries from the "Preferences" screen.

Attachments and Flags on New bug

You can now add an attachment while you are filing a new bug.

You can also set flags on the bug and on attachments, while filing a new bug.

Custom Resolutions

You can now customize the list of resolutions available in Bugzilla, including renaming the default resolutions.

The resolutions FIXED, DUPLICATE and MOVED have a special meaning to Bugzilla, though, and cannot be renamed or deleted.

Per-Product Permissions

You can now grant users editbugs and canconfirm for only certain products. You can also grant users editcomponents on a product, which means they will be able to edit that product including adding/removing components and other product-specific controls.

User Interface Improvements

There has been some work on the user interface for Bugzilla 3.0, including:

XML-RPC Interface

Bugzilla now has a Web Services interface using the XML-RPC protocol. It can be accessed by external applications by going to the xmlrpc.cgi on your installation.

Documentation can be found in the Bugzilla API Docs, in the various Bugzilla::WebService modules.

Skins

Bugzilla can have multiple "skins" installed, and users can pick between them. To write a skin, you just have to write several CSS files. See the Custom Skins Documentation for more details.

We currently don't have any alternate skins shipping withBugzilla. If you write an alternate skin, please let us know!

Unchangeable Fields Appear Unchangeable

As long as you are logged in, when viewing bug, if you cannot change a field, it will not look like you can change it. That is, the value will just appear as plain text.

All Emails in Templates

All outbound emails are now controlled by the templating system. What used to be the passwordmail, whinemail, newchangedmail and voteremovedmail parameters are now all templates in the template/ directory.

This means that it's now much easier to customize your outbound emails, and it's also possible for localizers to have more localized emails as part of their language packs, if they want.

We also added a mailfrom parameter to let you set who shows up in the From field on all emails that Bugzilla sends.

No More Double-Filed bug

Users of Bugzilla will sometimes accidentally submit bug twice, either by going back in their web browser, or just by refreshing a page. In the past, this could file the same bug twice (or even three times) in a row, irritating developers and confusing users.

Now, if you try to submit bug twice from the same screen (by going back or by refreshing the page), Bugzilla will warn you about what you're doing, before it actually submits the duplicate bug.

Default CC List for Components

You can specify a list of users who will always be added to the CC list of new bug in a component.

File/Modify bug By Email

You can now file or modify bug via email. Previous versions of Bugzilla included this feature only as an unsupported add-on, but it is now an official interface to Bugzilla.

For more details see the documentation for email_in.pl.

Users Who Get All bug Notifications

There is now a parameter called globalwatchers. This is a comma-separated list of Bugzilla users who will get all bug notifications generated by Bugzilla.

Group controls still apply, though, so users who can't see a bug still won't get notifications about that bug.

Improved UTF-8 Support

Bugzilla users running MySQL should now have excellent UTF-8 support if they turn on the utf8 parameter. (New installs have this parameter on by default.) Bugzilla now correctly supports searching and sorting in non-English languages, including multi-bytes languages such as Chinese.

Automatic Update Notification

If you belong to the admin group, you will be notified when you log in if there is a new release of Bugzilla available to download.

You can control these notifications by changing the upgrade_notification parameter.

If your Bugzilla installation is on a machine that needs to go through a proxy to access the web, you may also have to set the proxy_url parameter.

Welcome Page for New Installs

When you log in for the first time on a brand-new Bugzilla installation, you will be presented with a page that describes where you should go from here, and what parameters you should set.

QuickSearch Plugin for IE7 and Firefox 2

Firefox 2 users and Internet Explorer 7 users will be presented with the option to add Bugzilla to their search bar. This uses the QuickSearch syntax.

Other Enhancements and Changes

These are either minor enhancements, or enhancements that have very short descriptions. Some of these are very useful, though!

Enhancements That Affect Bugzilla Users

Enhancements For Administrators

既知の問題点

セキュリティー更新

3.0.6

Bugzilla contains a minor security fix. 詳細は セキュリティアドバイザリ を参照してください。

3.0.5

Bugzilla contains one security fix for importxml.pl. 詳細は セキュリティアドバイザリ を参照してください。

3.0.4

Bugzilla 3.0.4 contains three security fixes. 詳細は セキュリティアドバイザリ を参照してください。

3.0.3

セキュリティー更新はありませんでした。

3.0.2

Bugzilla 3.0.1 had an important security fix that is critical for public installations with "requirelogin" turned on. 詳細は セキュリティアドバイザリ を参照してください。

3.0.1

Bugzilla 3.0 had three security issues that have been fixed in this release: one minor information leak, one hole only exploitable by an admin or using email_in.pl, and one in an uncommonly-used template. 詳細は セキュリティアドバイザリ を参照してください。

旧バージョンからのアップグレード

アップグレードユーザ用のメモ

Steps For Upgrading

Once you have read the notes above, see the Upgrading documentation for instructions on how to upgrade.

Code Changes Which May Affect Customizations

Packagers: Location Variables Have Moved

In previous versions of Bugzilla, Bugzilla::Config held all the paths for different things, such as the path to localconfig and the path to the data/ directory.

Now, all of this data is stored in a subroutine, Bugzilla::Constants::bz_locations.

Also, note that for mod_perl, bz_locations must return absolute (not relative) paths. There is already code in that subroutine to help you with this.

Hooks!

Bugzilla now supports a code hook mechanism. See the documentation for Bugzilla::Hook for more details.

This gives Bugzilla very advanced plugin support. You can hook templates, hook code, add new parameters, and use the XML-RPC interface. So we'd like to see some Bugzilla plugins written! Let us know on the developers@bugzilla.org mailing list if you write a plugin.

If you need more hooks, please File a bug!

API Documentation

Bugzilla now ships with all of its perldoc built as HTML. Go ahead and read the API Documentation for all of the Bugzilla modules now! Even scripts like checksetup.pl have HTML documentation.

Elimination of globals.pl

The old file globals.pl has been eliminated. Its code is now in various modules. Each function went to the module that was appropriate for it.

Usually we filed bug in bugzilla.mozilla.org for each function we moved. You can search there for the old name of the function, and that should get you the information about what it's called now and where it lives.

Cleaned Up Variable Scoping Issues

In normal perl, you can have code like this:

my $var = 0;
sub y { $var++ }

However, under mod_perl that doesn't work. So variables are no longer "shared" with subroutines--instead all variables that a subroutine needs must be declared inside the subroutine itself.

No More SendSQL

The old SendSQL function and all of its companions are gone. Instead, we now use DBI for all database interaction.

For more information about how to use DBI with Bugzilla, see the Developer's Guide Section About DBI

Auth Re-write

The Bugzilla::Auth family of modules have been completely re-written. For details on how the new structure of authentication, read the Bugzilla::Auth API docs.

It should be very easy to write new authentication plugins, now.

Bugzilla::Object

There is a new base class for most of our objects, Bugzilla::Object. It makes it really easy to create new objects based on things that are in the database.

Bugzilla->request-cache

Bugzilla.pm used to cache things like the database connection in package-global variables (like $_dbh). That doesn't work in mod_perl, so instead now there's a hash that can be accessed through Bugzilla->request_cache to store things for the rest of the current page request.

You shouldn't access Bugzilla->request_cache directly, but you should use it inside of Bugzilla.pm if you modify that. The only time you should be accessing it directly is if you need to reset one of the caches. Hash keys are always named after the function that they cache, so to reset the template object, you'd do: delete Bugzilla->request_cache->{template};.

Other Changes

Release Notes For Previous Versions

Release notes for versions of Bugzilla for versions prior to 3.0 are only available in text format: Release Notes for Bugzilla 2.22 and Earlier.