r=dkl a=justdave git-svn-id: svn://10.0.0.236/trunk@265346 18797224-902f-48f8-a5cc-f745e15eee43
2350 lines
107 KiB
Cheetah
2350 lines
107 KiB
Cheetah
[%# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
#
|
|
# This Source Code Form is "Incompatible With Secondary Licenses", as
|
|
# defined by the Mozilla Public License, v. 2.0.
|
|
#%]
|
|
|
|
[% SET title = "Bugzilla 4.4 Release Notes" %]
|
|
[% INCLUDE global/header.html.tmpl
|
|
title = title
|
|
bodyclasses = ['narrow_page']
|
|
%]
|
|
|
|
<h1>[% title FILTER html %]</h1>
|
|
|
|
<ul class="bz_toc">
|
|
<li><a href="#v44_introduction">Introduction</a></li>
|
|
<li><a href="#v44_point">Updates in this 4.4.x Release</a></li>
|
|
<li><a href="#v44_req">Minimum Requirements</a></li>
|
|
<li><a href="#v44_feat">New Features and Improvements</a></li>
|
|
<li><a href="#v44_issues">Outstanding Issues</a></li>
|
|
<li><a href="#v44_upgrading">Notes On Upgrading From a Previous Version</a></li>
|
|
<li><a href="#v44_code_changes">Code Changes Which May Affect
|
|
Customizations and Extensions</a></li>
|
|
<li><a href="#v44_previous">Release Notes for Previous Versions</a></li>
|
|
</ul>
|
|
|
|
<h2 id="v44_introduction">Introduction</h2>
|
|
|
|
<p>Welcome to Bugzilla 4.4! It has been over a year since we
|
|
released Bugzilla 4.2 on February 2012, and this new major
|
|
release comes with several new features and improvements. This release
|
|
contains major improvements to WebServices, which were our main target in
|
|
this release, a rewritten tagging system, a real MIME type auto-detection for
|
|
attachments, improved support for Oracle, performance improvements and lots
|
|
of other enhancements.</p>
|
|
|
|
<p>If you're upgrading, make sure to read <a href="#v44_upgrading">Notes On
|
|
Upgrading From a Previous Version</a>. If you are upgrading from a release
|
|
before 4.2, make sure to read the release notes for all the
|
|
<a href="#v44_previous">previous versions</a> in between your version and
|
|
this one, <strong>particularly the Upgrading section of each version's
|
|
release notes</strong>.</p>
|
|
|
|
<h2 id="v44_point">Updates in this 4.4.x Release</h2>
|
|
|
|
<h3>4.4.4</h3>
|
|
|
|
<p>This release fixes one regression introduced in Bugzilla 4.4.3 by
|
|
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=968576">security [% terms.bug %] 968576</a>:
|
|
URLs in [% terms.bug %] comments are displayed correctly again.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=998323">[% terms.Bug %] 998323</a>)</p>
|
|
|
|
<h3>4.4.3</h3>
|
|
|
|
<p>This release fixes two security issues. See the
|
|
<a href="http://www.bugzilla.org/security/4.0.11/">Security Advisory</a>
|
|
for details.</p>
|
|
|
|
<p>In addition, the following important fixes/changes have been made in this release:</p>
|
|
|
|
<ul>
|
|
<li>The <kbd>User.login</kbd> WebService method now also returns a
|
|
<kbd>token</kbd> argument containing a login token which you can use in
|
|
subsequent calls to authenticate. For security reasons, this method
|
|
no longer generates login cookies.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=893195">[% terms.Bug %] 893195</a>)</li>
|
|
<li>The <kbd>User.get</kbd> WebService method now correctly takes the
|
|
<kbd>maxusermatches</kbd> parameter into account when the <kbd>match</kbd>
|
|
argument is passed. Previously, it was returning all matching accounts.
|
|
To further limit the number of accounts returned by <kbd>User.get</kbd>,
|
|
you can now pass the <kbd>limit</kbd> argument.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=962060">[% terms.Bug %] 962060</a>)</li>
|
|
<li>The sudo cookie is no longer accessible from JavaScript.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=966676">[% terms.Bug %] 966676</a>)</li>
|
|
<li>Large dependency trees with lots of resolved [% terms.bugs %] now load
|
|
much faster.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=961789">[% terms.Bug %] 961789</a>)</li>
|
|
</ul>
|
|
|
|
<h3>4.4.2</h3>
|
|
|
|
<p>The following [% terms.bugs %] have been fixed in this release:</p>
|
|
|
|
<ul>
|
|
<li><kbd>checksetup.pl</kbd> was incorrectly reporting DBI 1.630 (1.63) as
|
|
being older than 1.614, preventing the upgrade to complete.
|
|
If you still use Perl 5.10.0 or older, make sure you have the
|
|
<a href="http://search.cpan.org/~jpeacock/version/lib/version.pod">version</a>
|
|
module installed before running <kbd>checksetup.pl</kbd>.
|
|
If you use Perl 5.10.1 or newer, this module is already available and
|
|
no special action is required.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=938300">[% terms.Bug %] 938300</a>)</li>
|
|
<li>An error about <kbd>longdescs.comment_id</kbd> was thrown by MySQL 5.0
|
|
and 5.1 when upgrading to Bugzilla 4.4 or 4.4.1.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=870369">[% terms.Bug %] 870369</a>)</li>
|
|
<li>Saved searches containing Unicode characters in their name could not
|
|
be run if Digest::SHA 5.82 or newer is installed.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=964113">[% terms.Bug %] 964113</a>)</li>
|
|
<li>A regression in Bugzilla 4.4.1 caused <kbd>email_in.pl</kbd> to fail
|
|
with an "invalid token" error message.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=928331">[% terms.Bug %] 928331</a> and
|
|
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=930013">[% terms.bug %] 930013</a>)</li>
|
|
<li>The PROJECT environment variable is now correctly taken into account
|
|
when mod_perl is enabled (this variable allows several installations to
|
|
share the same codebase).
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=843457">[% terms.Bug %] 843457</a>)</li>
|
|
<li>Mandatory custom fields whose visibility depends on a component are now
|
|
correctly required on [% terms.bug %] creation.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=895813">[% terms.Bug %] 895813</a>)</li>
|
|
<li>Windows 8.1 is now recognized when reporting new [% terms.bugs %].
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=928092">[% terms.Bug %] 928092</a>)</li>
|
|
<li>Bugzilla no longer crashes when the <kbd>shutdownhtml</kbd> parameter
|
|
is set and using a non-cookie based authentication method.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=748095">[% terms.Bug %] 748095</a>)</li>
|
|
<li><kbd>importxml.pl</kbd> no longer ignores the <kbd>maxattachmentsize</kbd>
|
|
and <kbd>maxlocalattachment</kbd> parameters when importing [% terms.bugs %].
|
|
This means that large attachments are now stored locally in
|
|
<kbd>data/attachments/</kbd> if parameters are configured this way.
|
|
The script must now be run as the webserver user (e.g. apache) to make these
|
|
attachments readable from web browsers.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=360231">[% terms.Bug %] 360231</a>)</li>
|
|
<li>The default date and time format used for SQLite has been fixed.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=938161">[% terms.Bug %] 938161</a>)</li>
|
|
</ul>
|
|
|
|
<h3>4.4.1</h3>
|
|
|
|
<p>This release fixes several security issues. See the
|
|
<a href="http://www.bugzilla.org/security/4.0.10/">Security Advisory</a>
|
|
for details.</p>
|
|
|
|
<p>In addition, the following [% terms.bugs %] have been fixed in this release:</p>
|
|
|
|
<ul>
|
|
<li><kbd>checksetup.pl</kbd> no longer fails with "Invalid version format (non-numeric data)"
|
|
when a Perl module contains an invalid version number.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=781672">[% terms.Bug %] 781672</a>)</li>
|
|
<li>Internet Explorer 11 and KHTML-based browsers such as Konqueror can now
|
|
display buglists correctly.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=902515">[% terms.Bug %] 902515</a> and
|
|
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=914262">[% terms.bug %] 914262</a>)</li>
|
|
<li>When editing several [% terms.bugs %] at once and moving them into a new
|
|
product, [% terms.bugs %] restricted to a group in the old product could
|
|
loose these group restrictions in the new product.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=769134">[% terms.Bug %] 769134</a>)</li>
|
|
<li>When the <kbd>password_complexity</kbd> parameter was set to
|
|
'letters_numbers_specialchars', passwords containing numbers and special
|
|
characters only were accepted. Now it makes sure that a letter is also present.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=897264">[% terms.Bug %] 897264</a>)</li>
|
|
<li>Large dependency trees are now displayed much faster.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=917370">[% terms.Bug %] 917370</a>)</li>
|
|
<li>When a user has set many votes, the "Votes" page is now displayed much faster.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=851267">[% terms.Bug %] 851267</a>)</li>
|
|
<li>The "My Requests" page now correctly uses the AND/OR operator for the
|
|
requester and requestee fields only instead of using it for all fields.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=891311">[% terms.Bug %] 891311</a>)</li>
|
|
<li>With DB servers doing case-insensitive comparisons, such as MySQL, tokens
|
|
and login cookies were not correctly validated as the case was ignored.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=906745">[% terms.Bug %] 906745</a> and
|
|
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=907438">[% terms.bug %] 907438</a>)</li>
|
|
<li>All security headers (such as X-Frame-Options) are now returned when using XML-RPC.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=787328">[% terms.Bug %] 787328</a>)</li>
|
|
<li>Oracle crashed when reporting a new [% terms.bug %] if a custom free-text field
|
|
was non-mandatory and left empty.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=919475">[% terms.Bug %] 919475</a>)</li>
|
|
<li>It was not possible to import [% terms.bugs %] using <kbd>importxml.pl</kbd> with Oracle.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=848063">[% terms.Bug %] 848063</a>)</li>
|
|
</ul>
|
|
|
|
<h2 id="v44_req">Minimum Requirements</h2>
|
|
|
|
<p>Any requirements that are new since 4.2 will look like
|
|
<span class="req_new">this</span>.</p>
|
|
|
|
<ul>
|
|
<li><a href="#v44_req_perl">Perl</a></li>
|
|
<li><a href="#v44_req_mysql">For MySQL Users</a></li>
|
|
<li><a href="#v44_req_pg">For PostgreSQL Users</a></li>
|
|
<li><a href="#v44_req_oracle">For Oracle Users</a></li>
|
|
<li><a href="#v44_req_sqlite">For SQLite Users</a></li>
|
|
<li><a href="#v44_req_modules">Required Perl Modules</a></li>
|
|
<li><a href="#v44_req_optional_mod">Optional Perl Modules</a></li>
|
|
<li><a href="#v44_req_apache">Optional Apache Modules</a></li>
|
|
</ul>
|
|
|
|
<h3 id="v44_req_perl">Perl</h3>
|
|
|
|
<p>Perl v5.8.1</p>
|
|
|
|
<p><strong>IMPORTANT:</strong> This is the last major release to support
|
|
Perl 5.8.x! The next major release, Bugzilla 5.0, will require
|
|
Perl 5.10.1 as a minimum.</p>
|
|
|
|
[% INCLUDE db_req db='mysql' %]
|
|
|
|
[% INCLUDE db_req db='pg' dbd_new => 1 %]
|
|
|
|
[% INCLUDE db_req db='oracle' %]
|
|
|
|
[% INCLUDE db_req db='sqlite' %]
|
|
|
|
<h3 id="v44_req_modules">Required Perl Modules</h3>
|
|
|
|
[% INCLUDE req_table reqs = REQUIRED_MODULES
|
|
updated = ['TimeDate', 'DBI', 'Email-Send', 'List-MoreUtils'] %]
|
|
|
|
<h3 id="v44_req_optional_mod">Optional Perl Modules</h3>
|
|
|
|
<p>The following perl modules, if installed, enable various
|
|
features of Bugzilla:</p>
|
|
|
|
[% INCLUDE req_table reqs = OPTIONAL_MODULES
|
|
new = ['Net-SMTP-SSL', 'HTML-FormatText-WithLinks',
|
|
'File-MimeInfo', 'IO-stringy']
|
|
updated = ['TheSchwartz']
|
|
include_feature = 1 %]
|
|
|
|
<h3 id="v44_req_apache">Optional Apache Modules</h3>
|
|
|
|
<p>If you are using Apache as your webserver, Bugzilla can
|
|
take advantage of some Apache features if you have the below Apache
|
|
modules installed and enabled. Currently,
|
|
<a href="#v40_feat_js_css_update">certain Bugzilla features</a>
|
|
are enabled only if you have all of the following modules installed
|
|
and enabled:</p>
|
|
|
|
<ul>
|
|
<li>mod_headers</li>
|
|
<li>mod_expires</li>
|
|
<li>mod_env</li>
|
|
</ul>
|
|
|
|
<p>On most systems (but not on Windows), <kbd>checksetup.pl</kbd> is able to
|
|
tell whether or not you have these modules installed, and it will tell
|
|
you.</p>
|
|
|
|
|
|
<h2 id="v44_feat">New Features and Improvements</h2>
|
|
|
|
<ul>
|
|
<li><a href="#v44_feat_search">Allow Multiple Search Criteria to Match one Field</a></li>
|
|
<li><a href="#v44_feat_search_perf">Improved Performance for Searches</a></li>
|
|
<li><a href="#v44_feat_bug_tags">Overhaul of the Tagging System</a></li>
|
|
<li><a href="#v44_feat_mimetype_autodetect">Auto-Detection of the Attachment MIME Type</a></li>
|
|
<li><a href="#v44_feat_saved_reports">Saving Tabular and Graphical Reports</a></li>
|
|
<li><a href="#v44_feat_whining">Custom Columns in Whine Emails</a></li>
|
|
<li><a href="#v44_feat_webservices">Improved WebServices</a></li>
|
|
<li><a href="#v44_feat_apache_config">New Apache Configuration</a></li>
|
|
<li><a href="#v44_feat_other">Other Enhancements and Changes</a></li>
|
|
</ul>
|
|
|
|
<h3 id="v44_feat_search">Allow Multiple Search Criteria to Match one Field</h3>
|
|
|
|
<p>
|
|
In the "Advanced Search" page, it is now possible to build queries using
|
|
multiple custom search criteria against the same field. In Bugzilla
|
|
4.2 and older, queries of the form
|
|
<br><br>
|
|
<kbd>"Status changed to VERIFIED" AND "Status changed by foo@bar.com"</kbd>
|
|
<br><br>
|
|
were returning all [% terms.bugs %] which had their status changed to VERIFIED
|
|
by some user and which were edited by foo@bar.com once, but both actions could
|
|
be independent. In Bugzilla 4.4, you can now decide if both
|
|
criteria must match the exact same action or not, i.e. if you want
|
|
[%+ terms.bugs %] whose status has been set to VERIFIED by foo@bar.com himself.
|
|
In the same way, queries of the form
|
|
<br><br>
|
|
<kbd>"Flags changed to approval+" AND "Flags changed by foo@bar.com"</kbd>
|
|
<br><br>
|
|
can now return [% terms.bugs %] for which the approval flag has been set to
|
|
"+" by foo@bar.com himself. In previous versions, both actions were treated
|
|
independently and [% terms.bugs %] for which foo@bar.com set the approval flag
|
|
to "?" and which is then set to "+" by someone else were also returned.
|
|
</p>
|
|
<p>
|
|
This new feature gives you the ability to build more accurate queries and to
|
|
get more relevant results.
|
|
</p>
|
|
|
|
<h3 id="v44_feat_search_perf">Improved Performance for Searches</h3>
|
|
|
|
<p>
|
|
The search system got a performance boost which in some cases decreases the
|
|
time spent to run queries from several minutes to a few seconds only.
|
|
The more complex your queries are, the more visible the performance win
|
|
should be.
|
|
</p>
|
|
|
|
<h3 id="v44_feat_bug_tags">Overhaul of the Tagging System</h3>
|
|
|
|
<p>
|
|
The old tagging system which was in the footer of all pages had severe design
|
|
and usability limitations and has been replaced by a shiny new one which lets
|
|
you tag [% terms.bugs %] from the [% terms.bug %] report directly. Tags now
|
|
mostly work like keywords, but with two major differences. First of all, they
|
|
are personal, meaning that tags you set on [% terms.bugs %] are only visible
|
|
by you, and nobody else is notified nor can see which tags you set. This
|
|
behavior is the same as the old tagging system and so this feature didn't
|
|
change. The second major difference is that the list of available tags is
|
|
unlimited and is in no way hardcoded by administrators. You can type either
|
|
a new tag of your choice, or you can select one from an auto-generated list
|
|
of tags which you already used in other [% terms.bugs %]. Again, this feature
|
|
was already present in the old tagging system, but its usability has been
|
|
greatly improved. In particular, this means that tags are now displayed in
|
|
[%+ terms.bug %] reports directly, so that you immediately know which tags
|
|
you already set for that [% terms.bug %]. This feature is new in this release.
|
|
</p>
|
|
<p>
|
|
Another new feature is that your personal tags can now be listed in buglists.
|
|
They can also be used as search criteria in your queries. If you decide to
|
|
share a saved search which uses tags as criteria, this will work too! Note
|
|
that when you add a new tag, no saved search based on this tag is created
|
|
anymore, as you can easily create it yourself if you really need it.
|
|
</p>
|
|
<p>
|
|
The tags set with the old tagging system are automatically migrated to the
|
|
new system.
|
|
</p>
|
|
|
|
<h3 id="v44_feat_mimetype_autodetect">Auto-Detection of the Attachment MIME Type</h3>
|
|
|
|
<p>
|
|
When a user uploads a new attachment and lets the "Content Type" field set to
|
|
"auto-detect", Bugzilla now does its own MIME type detection
|
|
if the web browser tells them that the attachment is of type
|
|
"application/octet-stream", in an attempt to make a better guess than the web
|
|
browser. In all other cases, Bugzilla still trusts what the browser
|
|
tells them.
|
|
</p>
|
|
<p>
|
|
Check the <a href="#v44_req_optional_mod">list of optional Perl modules</a> to
|
|
know which modules to install in order to enable MIME type sniffing.
|
|
</p>
|
|
|
|
<h3 id="v44_feat_saved_reports">Saving Tabular and Graphical Reports</h3>
|
|
|
|
<p>
|
|
It is now possible to save tabular and graphical reports in the same way as
|
|
you save searches. Saved reports will appear in the footer of pages, below
|
|
saved searches.
|
|
</p>
|
|
<p>
|
|
Unlike saved searches, it is not yet possible to share saved reports with
|
|
other users.
|
|
</p>
|
|
|
|
<h3 id="v44_feat_whining">Custom Columns in Whine Emails</h3>
|
|
|
|
<p>
|
|
The list of columns to display in buglists contained in emails sent by the
|
|
whining system on a regular basis is no longer hardcoded. If the saved
|
|
search used for whining emails contains a list of columns, these columns are
|
|
used to be displayed in the emails. If no custom list is found, the default
|
|
column list is used instead.
|
|
</p>
|
|
<p>
|
|
This means that depending on the kind of email notifications you want, you
|
|
can fully customize data to return, on a per saved search basis!
|
|
</p>
|
|
|
|
<h3 id="v44_feat_webservices">Improved WebServices</h3>
|
|
|
|
<p>
|
|
This release got major improvements in its WebServices interface. Many new
|
|
methods have been implemented to let third-party applications interact with
|
|
Bugzilla even more closely. For instance, it is now possible to
|
|
know what parameters are set to using <kbd>B[%%]ugzilla.parameters</kbd>.
|
|
It is now also possible to update tags, products, groups or user accounts
|
|
using our API.
|
|
<p>
|
|
<p>
|
|
Several existing methods have also been improved to return data which
|
|
weren't available till now, such as [% terms.bug %] and attachment flags
|
|
using <kbd>B[%%]ug.get</kbd>, <kbd>B[%%]ug.attachments</kbd> or
|
|
<kbd>Product.get</kbd>. Users can also get their saved searches and reports
|
|
using <kbd>User.get</kbd>; and much more, see the
|
|
<a href="#v44_feat_webservices_details">detailed list</a> below.
|
|
</p>
|
|
|
|
<h3 id="v44_feat_apache_config">New Apache Configuration</h3>
|
|
|
|
<p>
|
|
For improved security, Bugzilla now prevents directory browsing
|
|
by default. If you run Bugzilla under Apache (as most people do),
|
|
you most likely require a <strong>new Apache configuration</strong> for this
|
|
version of Bugzilla. See the
|
|
<a href="#v44_upgrading">Notes On Upgrading From a Previous Version</a>
|
|
section for details.
|
|
</p>
|
|
|
|
<h3 id="v44_feat_other">Other Enhancements and Changes</h3>
|
|
|
|
<h4>Enhancements for Users</h4>
|
|
|
|
<ul>
|
|
<li><strong>[% terms.Bugs %]:</strong> It is now possible to add yourself to
|
|
the CC list when uploading an attachment and when editing an existing one.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> There is a new user preference to be
|
|
automatically added to the CC list of [% terms.bugs %] for which a flag
|
|
request is addressed to you (the flag has you as the requestee).</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> Changes to the CC list no longer
|
|
causes midair collisions.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> There is now a <em>(take)</em> link
|
|
besides the QA Contact field to easily set yourself as QA contact.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> [% terms.Bugs %] are no longer
|
|
reassigned to the default assignee when moving the [% terms.bug %] into
|
|
another product or component if the current assignee is not the default
|
|
one. Same goes for the QA contact.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> When reporting a new [% terms.bug %],
|
|
flags which are not available for the selected component and those which
|
|
the reporter cannot edit are now hidden instead of being disabled. For
|
|
existing [% terms.bugs %], unset flags are also hidden by default. Clicking
|
|
the <em>(set flags)</em> or <em>(more flags)</em> link will make them
|
|
appear.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> When viewing [% terms.abug %], the list
|
|
of duplicated [% terms.bugs %] is now listed near the top of the page.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> Private comments now always remain
|
|
visible to their author. Previously, the author of a comment couldn't see
|
|
it anymore if the comment was marked private and the author isn't in the
|
|
insider group.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> The See Also field now supports URLs
|
|
pointing to GitHub by default. If the new MoreBugUrl extension included in
|
|
this release is enabled, then you can also add URLs pointing to:
|
|
b[%%]ugs.php.net, RT, appspot.com (Rietveld), Review Board, and
|
|
getsatisfaction.com.</li>
|
|
<li><strong>Searches:</strong> The alias of [% terms.bugs %] you cannot see
|
|
are no longer resolved to their [% terms.bug %] ID, meaning that it is no
|
|
longer possible to connect an alias with its ID unless you can see the
|
|
[%+ terms.bug %].</li>
|
|
<li><strong>Searches:</strong> Custom multi-select fields are now available
|
|
in the "Search By Change History" section of the query page.</li>
|
|
<li><strong>Searches:</strong> The <em>changed by</em> operator in boolean
|
|
charts now accepts pronouns.</li>
|
|
<li><strong>Searches:</strong> The requester and requestee fields in boolean
|
|
charts now accept pronouns.</li>
|
|
<li><strong>Searches:</strong> It is now possible to hide the description of
|
|
queries appearing at the top of buglists.</li>
|
|
<li><strong>Requests:</strong> The "My Requests" page now displays an AND/OR
|
|
radio button to define the interaction between the requester and requestee
|
|
fields.</li>
|
|
<li><strong>Email Notifications:</strong> There is a new user preference to
|
|
not prepend "New:" to the subject of [% terms.bug %]mails when reporting
|
|
a new [% terms.bug %]. Some email clients couldn't thread emails correctly
|
|
due to this.</li>
|
|
<li><strong>Email Notifications:</strong> There is a new email event to get
|
|
notifications when the product or component of [% terms.abug %] changes.</li>
|
|
<li><strong>Email Notifications:</strong> All [% terms.bug %]mails now have
|
|
a <em>X-Bugzilla-Flags</em> email header, listing currently set flags.</li>
|
|
<li><strong>Email Notifications:</strong> All [% terms.bug %]mails now have
|
|
a <em>X-Bugzilla-Version</em> email header with the current product
|
|
version.</li>
|
|
<li><strong>Whining:</strong> The sort order of the saved search is used to
|
|
sort [% terms.bugs %] in the emails.</li>
|
|
<li><strong>User Accounts:</strong> To confirm an email address change, the
|
|
password is now requested instead of the old email address.</li>
|
|
<li><strong>Graphical Reports:</strong> The size of graphical reports is now
|
|
set dynamically to fit within the window of the web browser.
|
|
The Taller/Thinner/Fatter/Shorter links are now gone.</li>
|
|
<li><strong>Incoming Emails:</strong> <kbd>email_in.pl</kbd> now accepts
|
|
HTML-only emails to create and edit [% terms.bugs %] by email.</li>
|
|
<li><strong>Incoming Emails:</strong> When creating a new [% terms.bug %],
|
|
<kbd>email_in.pl</kbd> will look at the <em>Importance</em> and
|
|
<em>X-Priority</em> email headers to increase or decrease the initial
|
|
priority of the [% terms.bug %], unless the priority is already explicitly
|
|
set in the email itself.</li>
|
|
<li><strong>Skins:</strong> Bugzilla no longer fetches all skins
|
|
available when viewing a page. It only loads the skin selected by the user
|
|
in their preferences, which results in less requests to the server.</li>
|
|
</ul>
|
|
|
|
<h4>Enhancements for Administrators and Developers</h4>
|
|
|
|
<ul>
|
|
<li><strong>License:</strong> The Bugzilla code is now released
|
|
under the MPL 2.0 license (previously was MPL 1.1).</li>
|
|
<li><strong>Installation:</strong> On mod_perl, templates now remain in
|
|
memory for one hour, which can cause an increase in memory requirements.
|
|
This also means that it can take up to one hour before changes in templates
|
|
become active (unless you restart Apache).</li>
|
|
<li><strong>Installation:</strong> Running
|
|
<kbd>checksetup.pl --make-admin=foo@bar.com</kbd> now automatically
|
|
re-enables the user account if it was disabled.</li>
|
|
<li><strong>Configuration:</strong> A new parameter <em>smtp_ssl</em> can be
|
|
turned on to enable SSL connections to the SMTP server to send email
|
|
notifications.</li>
|
|
<li><strong>Administration:</strong> Custom fields now have a new <em>Long
|
|
description</em> attribute to better describe what the custom field is
|
|
about. This description then appears as a tooltip when hovering the custom
|
|
field in [% terms.bug %] reports.</li>
|
|
<li><strong>Administration:</strong> When creating a new product, the form
|
|
lets you add a component at the same time.</li>
|
|
<li><strong>Administration:</strong> When viewing a user account in
|
|
<kbd>editusers.cgi</kbd>, the date of the last login is displayed. Users
|
|
who did not log in since you upgraded to 4.4 will have this field empty.</li>
|
|
<li><strong>Administration:</strong> It is now possible to exclude disabled
|
|
user accounts when running a query in <kbd>editusers.cgi</kbd>.</li>
|
|
<li><strong>Administration:</strong> The default CC list is now also displayed
|
|
when listing components in <kbd>editcomponents.cgi</kbd>.</li>
|
|
<li><strong>Administration:</strong> Target milestones can now be 64 characters
|
|
long, for consistency with versions (previously was limited to 20 characters
|
|
only).</li>
|
|
<li><strong>Administration:</strong> The result code returned by
|
|
<kbd>contrib/bugzilla-queue.rhel</kbd> when it's not running is now 2
|
|
instead of 0.</li>
|
|
<li><strong>Database:</strong> Support for MySQL 5.6 has been added.</li>
|
|
<li><strong>Database:</strong> Support for Oracle has been greatly improved.</li>
|
|
<li><strong>Security:</strong> For improved security, the
|
|
"X-Content-Type-Options: nosniff" and "X-XSS-Protection: block"
|
|
headers are now sent with every response.</li>
|
|
<li><strong>Security:</strong> Tokens are now generated using HMAC SHA-256
|
|
instead of MD5.</li>
|
|
<li><strong>Documentation:</strong> The documentation is now generated with
|
|
<kbd>xmlto</kbd> and <kbd>dblatex</kbd> instead of <kbd>jade</kbd>.</li>
|
|
</ul>
|
|
|
|
<h4 id="v44_feat_webservices_details">WebService Changes</h4>
|
|
|
|
<ul>
|
|
<li>Several new methods have been added: <kbd>B[%%]ug.update_tags</kbd>,
|
|
<kbd>B[%%]ugzilla.parameters</kbd>, <kbd>B[%%]ugzilla.last_audit_time</kbd>,
|
|
<kbd>Classification.get</kbd>, <kbd>Group.update</kbd>,
|
|
<kbd>Product.update</kbd>, <kbd>User.update</kbd>.</li>
|
|
<li><kbd>B[%%]ug.add_attachment</kbd> now only returns the ID of the newly
|
|
created attachments instead of all the attachment data.</li>
|
|
<li><kbd>B[%%]ug.attachments</kbd> now also returns the <kbd>size</kbd> field
|
|
containing the size of the attachment.</li>
|
|
<li><kbd>B[%%]ug.attachments</kbd> and <kbd>B[%%]ug.get</kbd> now return
|
|
data about flags.</li>
|
|
<li><kbd>B[%%]ug.comments</kbd> now also returns <kbd>creation_time</kbd>
|
|
which is exactly the same as <kbd>time</kbd>, but is provided for
|
|
consistency with <kbd>B[%%]ug.get</kbd> and <kbd>B[%%]ug.attachments</kbd>.
|
|
The <kbd>time</kbd> field may be deprecated and removed in a future release,
|
|
so you should use <kbd>creation_time</kbd> instead.</li>
|
|
<li><kbd>B[%%]ug.comments</kbd> now also returns the <kbd>count</kbd> field
|
|
containing the comment ID relative to the [% terms.bug %] it belongs to.
|
|
This is the same comment ID as the one you can see in [% terms.bug %]
|
|
reports.</li>
|
|
<li>It is now possible to create new [% terms.bugs %] with a closed status with
|
|
<kbd>B[%%]ug.create</kbd>.</li>
|
|
<li>The <kbd>bug_status</kbd> field returned by <kbd>B[%%]ug.fields</kbd> now
|
|
also includes [% terms.bug %] statuses available on [% terms.bug %] creation.</li>
|
|
<li><kbd>B[%%]ug.fields</kbd> now also returns keyword descriptions, not only
|
|
their names.</li>
|
|
<li><kbd>B[%%]ug.fields</kbd> now also returns the <kbd>is_active</kbd> field
|
|
for product-specific fields.</li>
|
|
<li>For users in the timetracking group, <kbd>B[%%]ug.get</kbd> now also
|
|
returns the <kbd>actual_time</kbd> field with the total number of hours
|
|
spent in the [% terms.bug %].</li>
|
|
<li>Field names returned in the <kbd>field_name</kbd> field of the
|
|
<kbd>B[%%]ug.history</kbd> method have changed to be consistent with other
|
|
methods.</li>
|
|
<li>The <kbd>B[%%]ug.search</kbd> method was returning all visible [% terms.bugs %]
|
|
when called with no arguments, ignoring the <kbd>max_search_results</kbd>
|
|
and <kbd>search_allow_no_criteria</kbd> parameters. This has been fixed.</li>
|
|
<li><kbd>Product.get</kbd> now also returns the <kbd>flag_types</kbd> field
|
|
containing all the relevant data for attachment and [% terms.bug %] flag types.</li>
|
|
<li><kbd>Product.get</kbd> now throws an error if neither <kbd>ids</kbd> nor
|
|
<kbd>names</kbd> is passed to the method.</li>
|
|
<li>When requesting data for your own account using <kbd>User.get</kbd>,
|
|
this method now returns two additional fields: <kbd>saved_searches</kbd>
|
|
and <kbd>saved_reports</kbd> containing all your saved searches and
|
|
graphical and tabular reports.</li>
|
|
<li><kbd>User.get</kbd> now also returns the <kbd>groups</kbd> field
|
|
containing the list of groups the user belongs to. The list is filtered
|
|
based on your privileges.</li>
|
|
</ul>
|
|
|
|
|
|
<h2 id="v44_issues">Outstanding Issues</h2>
|
|
|
|
<ul>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=89822">
|
|
[%- terms.Bug %] 89822</a>: When changing multiple [% terms.bugs %] at
|
|
the same time, there is no "mid-air collision" protection.</li>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=276230">
|
|
[%- terms.Bug %] 276230</a>: The support for restricting access to
|
|
particular Categories of New Charts is not complete. You should treat the
|
|
<em>chartgroup</em> parameter as the only access mechanism available.</li>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=584742">
|
|
[%- terms.Bug %] 584742</a>: When viewing [% terms.abug %], WebKit-based
|
|
browsers can automatically reset a field's selected value when the field
|
|
has disabled values.</li>
|
|
</ul>
|
|
|
|
|
|
<h2 id="v44_upgrading">Notes On Upgrading From a Previous Version</h2>
|
|
|
|
<h3>IMPORTANT: Apache Configuration Change</h3>
|
|
|
|
<p>
|
|
For improved security, Bugzilla now prevents directory browsing
|
|
by default. In order to do that, the root <kbd>bugzilla/.htaccess</kbd> file
|
|
now contains the <kbd>Options -Indexes</kbd> directive. By default, this
|
|
directive is not allowed in <kbd>.htaccess</kbd> and so you must configure
|
|
Apache to allow it. To do that, add <kbd>Options</kbd> to the
|
|
<kbd>AllowOverride</kbd> directive in <kbd>httpd.conf</kbd>. This means you
|
|
should now have something like this:
|
|
<p>
|
|
<kbd>AllowOverride Limit FileInfo Indexes Options</kbd>
|
|
</p>
|
|
Check the
|
|
<a href="http://www.bugzilla.org/docs/4.4/en/html/configuration.html#http-apache">documentation</a>
|
|
for more information about how to configure Apache.
|
|
</p>
|
|
|
|
<h2 id="v44_code_changes">Code Changes Which May Affect Customizations and Extensions</h2>
|
|
|
|
<ul>
|
|
<li>The <em>usebugaliases</em> parameter has been removed. Aliases are now
|
|
always available.</li>
|
|
<li>There is a new code hook <kbd>admin_editusers_action</kbd> to alter the
|
|
way <kbd>editusers.cgi</kbd> works.</li>
|
|
<li>There is a new code hook <kbd>buglist_column_joins</kbd> to alter the way
|
|
tables and columns are joined in queries. In combination with the
|
|
<kbd>buglist_columns</kbd> hook, this permits to customize the list of
|
|
columns to display in buglists.</li>
|
|
<li>There is a new code hook <kbd>bug_start_of_update</kbd> which is called
|
|
after <kbd>object_end_of_update</kbd> but before <kbd>bug_end_of_update</kbd>
|
|
for a better control on how to update [% terms.bugs %].</li>
|
|
<li>There is a new code hook <kbd>bug_url_sub_classes</kbd> to support
|
|
additional URLs in the See Also field.</li>
|
|
<li>There is a new code hook <kbd>error_catch</kbd> to catch errors thrown
|
|
by Bugzilla and to take the appropriate actions.</li>
|
|
<li>There is a new code hook <kbd>path_info_whitelist</kbd> to whitelist
|
|
scripts which should still get the Path-Info information from URLs. By
|
|
default, Path-Info is now removed before being passed to CGI scripts.</li>
|
|
<li>It is now illegal to have a product with no components and no versions.
|
|
Trying to delete the last component or version of a product is now
|
|
rejected.</li>
|
|
<li>Trying to set the component, target milestone or version of [% terms.abug %]
|
|
to a disabled value is no longer accepted. The change will be rejected.</li>
|
|
<li>The comment box now checks the returned value of check_can_change_field()
|
|
to determine if it should be displayed or not. This means its visibility
|
|
can now be controlled by the <kbd>bug_check_can_change_field</kbd> hook.</li>
|
|
<li>Flags now checks the returned value of check_can_change_field() to
|
|
determine if they should appear as editable or not. This means their
|
|
visibility can now be controlled by the <kbd>bug_check_can_change_field</kbd>
|
|
hook.</li>
|
|
<li>Quips can no longer exceed 512 characters. Existing quips longer than
|
|
that are automatically truncated when upgrading.</li>
|
|
<li>The static <kbd>bugzilla.dtd</kbd> file has been replaced by a dynamic
|
|
one to take custom fields into account. The old
|
|
<em><urlbase>/bugzilla.dtd</em> URL is now
|
|
<em><urlbase>/page.cgi?id=bugzilla.dtd</em>.</li>
|
|
<li>There is a new extension located at <kbd>extensions/MoreBugUrl/</kbd>
|
|
which permits to add new classes of URLs in the See Also field. It uses
|
|
the <kbd>bug_url_sub_classes</kbd> hook mentioned above.</li>
|
|
<li>There is a new <kbd>B[%%]ugzilla->process_cache</kbd> method to store
|
|
data which should remain available for the lifetime of the worker process,
|
|
on mod_perl. On mod_cgi, it behaves the same way as
|
|
<kbd>B[%%]ugzilla->request_cache</kbd>.</li>
|
|
<li>In the RDF output of <kbd>config.cgi</kbd>, URIs used to identify
|
|
versions and target milestones have been changed to be unique across
|
|
products.</li>
|
|
<li>The RDF output of <kbd>config.cgi</kbd> now also returns data about
|
|
classifications.</li>
|
|
<li>It is now legal to call <kbd>B[%%]ugzilla::Version->check({ id => $id })</kbd>
|
|
and <kbd>B[%%]ugzilla::Milestone->check({ id => $id })</kbd> to validate
|
|
and get an object using its ID.</li>
|
|
<li>Rows in the <kbd>dependencies</kbd>, <kbd>flaginclusions</kbd> and
|
|
<kbd>flagexclusions</kbd> DB tables are now enforced to be unique.</li>
|
|
<li>The <kbd>b[%%]ugs_activity</kbd> and <kbd>profiles_activity</kbd> DB
|
|
tables now have an auto-incremented primary key named <kbd>id</kbd>.</li>
|
|
<li>A custom <kbd>B[%%]ugzilla.pm</kbd> module has been added into
|
|
<kbd>contrib/</kbd> to help packagers to package B[%%]ugzilla in their
|
|
Linux distros.</li>
|
|
</ul>
|
|
|
|
|
|
<h1 id="v44_previous">Bugzilla 4.2 Release Notes</h1>
|
|
|
|
<ul class="bz_toc">
|
|
<li><a href="#v42_introduction">Introduction</a></li>
|
|
<li><a href="#v42_point">Updates in this 4.2.x Release</a></li>
|
|
<li><a href="#v42_req">Minimum Requirements</a></li>
|
|
<li><a href="#v42_feat">New Features and Improvements</a></li>
|
|
<li><a href="#v42_issues">Outstanding Issues</a></li>
|
|
<li><a href="#v42_code_changes">Code Changes Which May Affect
|
|
Customizations and Extensions</a></li>
|
|
<li><a href="#v42_previous">Release Notes for Previous Versions</a></li>
|
|
</ul>
|
|
|
|
<h2 id="v42_introduction">Introduction</h2>
|
|
|
|
<p>Welcome to Bugzilla 4.2! It has been almost a year since we
|
|
released Bugzilla 4.0 on February 2011, and this new major
|
|
release comes with several new features and improvements. This release
|
|
contains major improvements to search, support for SQLite, improved
|
|
WebServices, and lots of other enhancements.</p>
|
|
|
|
<p>If you are upgrading from a release before 4.0, make sure to read the
|
|
release notes for all the <a href="#v42_previous">previous versions</a>
|
|
in between your version and this one, <strong>particularly the Upgrading
|
|
section of each version's release notes</strong>.</p>
|
|
|
|
<h2 id="v42_point">Updates in this 4.2.x Release</h2>
|
|
|
|
<h3>4.2.3</h3>
|
|
|
|
<p>This release fixes two security issues. See the
|
|
<a href="http://www.bugzilla.org/security/3.6.10/">Security Advisory</a>
|
|
for details.</p>
|
|
|
|
<p>In addition, the following important fixes/changes have been made in this
|
|
release:</p>
|
|
|
|
<ul>
|
|
<li>Attaching a file to [% terms.abug %] was broken due to a change in
|
|
Perl 5.16.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=771100">[% terms.Bug %] 771100</a>)</li>
|
|
<li>A regression in Bugzilla 4.2.2 made Oracle crash when
|
|
displaying a buglist.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=780028">[% terms.Bug %] 780028</a>)</li>
|
|
<li>It was possible to search on history for comments and attachments you
|
|
cannot see (though these private comments and attachments are never disclosed).
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=779709">[% terms.Bug %] 779709</a>)</li>
|
|
<li>PostgreSQL databases could be created with the wrong encoding despite
|
|
the utf8 parameter being enabled.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=783786">[% terms.Bug %] 783786</a>)</li>
|
|
<li>Scheduled whines could be sent at the wrong time on Oracle.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=559539">[% terms.Bug %] 559539</a>)</li>
|
|
<li>Tokens are no longer included in saved queries.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=772953">[% terms.Bug %] 772953</a>)</li>
|
|
<li>An admin could unintentionally break the display of buglists if a custom
|
|
field description contains a < or > character, because these characters
|
|
were not filtered.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=785917">[% terms.Bug %] 785917</a>)</li>
|
|
<li>Adding or removing a DB column in Oracle didn't handle SERIAL columns
|
|
correctly.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=731156">[% terms.Bug %] 731156</a>)</li>
|
|
<li>A minor CSRF vulnerability in token.cgi allowed possible unauthorized
|
|
password reset e-mail requests.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=706271">[% terms.Bug %] 706271</a>)</li>
|
|
</ul>
|
|
|
|
<h3>4.2.2</h3>
|
|
|
|
<p>This release fixes two security issues. See the
|
|
<a href="http://www.bugzilla.org/security/3.6.9/">Security Advisory</a>
|
|
for details.</p>
|
|
|
|
<p>In addition, the following important fixes/changes have been made in this
|
|
release:</p>
|
|
|
|
<ul>
|
|
<li>A regression introduced in Bugzilla 4.0 caused some login
|
|
names to be ignored when entered in the CC list of [% terms.bugs %].
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=756314">[% terms.Bug %] 756314</a>)</li>
|
|
<li>Some queries could trigger an invalid SQL query if strings entered by
|
|
the user contained leading or trailing whitespaces.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=760075">[% terms.Bug %] 760075</a>)</li>
|
|
<li>The auto-completion form for keywords no longer automatically selects
|
|
the first keyword in the list when the field is empty.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=764517">[% terms.Bug %] 764517</a>)</li>
|
|
<li>A regression in Bugzilla 4.2 prevented classifications
|
|
from being used in graphical and tabular reports in the "Multiple Tables"
|
|
field.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=753688">[% terms.Bug %] 753688</a>)</li>
|
|
<li>Attachments created by the <kbd>email_in.pl</kbd> script were associated
|
|
to the wrong comment.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=762785">[% terms.Bug %] 762785</a>)</li>
|
|
<li>Very long dependency lists can now be viewed correctly.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=762783">[% terms.Bug %] 762783</a>)</li>
|
|
<li>Keywords are now correctly escaped in the auto-completion form to prevent
|
|
any XSS abuse.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=754561">[% terms.Bug %] 754561</a>)</li>
|
|
<li>A regression introduced in Bugzilla 4.0rc2 when fixing
|
|
CVE-2011-0046 caused the "Un-forget the search" link to not work correctly
|
|
anymore when restoring a deleted saved search, because this link was
|
|
lacking a valid token.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=768870">[% terms.Bug %] 768870</a>)</li>
|
|
<li>Two minor CSRF vulnerabilities have been fixed which could let an attacker
|
|
alter your default search criteria in the Advanced Search page.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=754672">[% terms.Bugs %] 754672</a>
|
|
and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=754673">754673</a>)</li>
|
|
</ul>
|
|
|
|
<h3>4.2.1</h3>
|
|
|
|
<p>This release fixes one security issue. See the
|
|
<a href="http://www.bugzilla.org/security/3.6.8/">Security Advisory</a>
|
|
for details.</p>
|
|
|
|
<p>In addition, the following important fixes/changes have been made in this
|
|
release:</p>
|
|
|
|
<ul>
|
|
<li>Due to a regression introduced when fixing CVE-2012-0453, if an XML-RPC
|
|
client sets the charset as part of its Content-Type header, we were
|
|
incorrectly rejecting the request. The header is now correctly parsed.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=731219">[% terms.Bug %] 731219</a>)</li>
|
|
<li>Email notifications about status changes in blockers were incorrectly
|
|
formatted. Several pieces of text were missing in the emails.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=731586">[% terms.Bug %] 731586</a>)</li>
|
|
<li>Many [% terms.bugs %] related to the searching system have been fixed.
|
|
(<a href="https://bugzilla.mozilla.org/buglist.cgi?bug_id=58179,715270,730984,731163,737436">
|
|
[% terms.Bugs %] 58179, 715270, 730984, 731163 and 737436</a>)</li>
|
|
<li>When using the QuickSearch box, complex queries are now parsed correctly.
|
|
It also behaves correctly with non-ASCII characters (such as é, ä, ü, etc.).
|
|
(<a href="https://bugzilla.mozilla.org/buglist.cgi?bug_id=554819,663377,730207">
|
|
[% terms.Bugs %] 554819, 663377 and 730207</a>)</li>
|
|
<li>The 'take' link besides the assignee field now works correctly when
|
|
the <kbd>usemenuforusers</kbd> parameter is turned on.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=734997">[% terms.Bug %] 734997</a>)</li>
|
|
<li>URLs in the 'Total' row at the bottom of tabular reports were broken
|
|
when JavaScript was enabled and a user field was used for the vertical
|
|
axis.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=731323">[% terms.Bug %] 731323</a>)</li>
|
|
<li>Some performance problems have been fixed for installations with many
|
|
products, components or versions.
|
|
(<a href="https://bugzilla.mozilla.org/buglist.cgi?bug_id=695514,731055">
|
|
[% terms.Bugs %] 695514 and 731055</a>)</li>
|
|
<li>A new hook named <kbd>buglist_column_joins</kbd> has been added to let
|
|
extensions alter the <kbd>Bugzilla::Search::COLUMN_JOINS</kbd> hash.
|
|
Now more fields can be displayed as columns in buglists, in combination
|
|
with the already existing <kbd>buglist_columns</kbd> hook.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=743991">[% terms.Bug %] 743991</a>)</li>
|
|
<li>A new hook named <kbd>admin_editusers_action</kbd> has been added to let
|
|
extensions alter the behavior of <kbd>editusers.cgi</kbd>. This lets you add
|
|
new features to this script very easily.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=730794">[% terms.Bug %] 730794</a>)</li>
|
|
</ul>
|
|
|
|
<h2 id="v42_req">Minimum Requirements</h2>
|
|
|
|
<p>Any requirements that are new since 4.0.2 will look like
|
|
<span class="req_new">this</span>.</p>
|
|
|
|
<ul>
|
|
<li><a href="#v42_req_perl">Perl</a></li>
|
|
<li><a href="#v42_req_mysql">For MySQL Users</a></li>
|
|
<li><a href="#v42_req_pg">For PostgreSQL Users</a></li>
|
|
<li><a href="#v42_req_oracle">For Oracle Users</a></li>
|
|
<li><a href="#v42_req_sqlite">For SQLite Users</a></li>
|
|
<li><a href="#v42_req_modules">Required Perl Modules</a></li>
|
|
<li><a href="#v42_req_optional_mod">Optional Perl Modules</a></li>
|
|
<li><a href="#v42_req_apache">Optional Apache Modules</a></li>
|
|
</ul>
|
|
|
|
<h3 id="v42_req_perl">Perl</h3>
|
|
|
|
<p>Perl v5.8.1</p>
|
|
|
|
<h3 id="v42_req_mysql">For MySQL Users</h3>
|
|
|
|
<ul>
|
|
<li>MySQL <span class="req_new">v5.0.15</span></li>
|
|
<li><strong>perl module:</strong> DBD::mysql <span class="req_new">v4.001</span></li>
|
|
</ul>
|
|
|
|
<h3 id="v42_req_pg">For PostgreSQL Users</h3>
|
|
|
|
<ul>
|
|
<li>PostgreSQL <span class="req_new">v8.03.0000</span></li>
|
|
<li><strong>perl module:</strong> DBD::Pg v1.45</li>
|
|
</ul>
|
|
|
|
<h3 id="v42_req_oracle">For Oracle Users</h3>
|
|
|
|
<ul>
|
|
<li>Oracle v10.02.0</li>
|
|
<li><strong>perl module:</strong> DBD::Oracle v1.19</li>
|
|
</ul>
|
|
|
|
<h3 id="v42_req_sqlite">For SQLite Users</h3>
|
|
|
|
<ul>
|
|
<li>SQLite v3.6.22</li>
|
|
<li><strong>perl module:</strong> DBD::SQLite v1.29</li>
|
|
</ul>
|
|
|
|
<h3 id="v42_req_modules">Required Perl Modules</h3>
|
|
|
|
|
|
<table class="req_table">
|
|
<tbody>
|
|
<tr>
|
|
<th>Module</th>
|
|
<th>Version</th>
|
|
</tr>
|
|
<tr>
|
|
<td>CGI</td>
|
|
<td>3.51</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Digest::SHA</td>
|
|
<td>(Any)</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Date::Format</td>
|
|
<td>2.21</td>
|
|
</tr>
|
|
<tr>
|
|
<td>DateTime</td>
|
|
<td>0.28</td>
|
|
</tr>
|
|
<tr>
|
|
<td>DateTime::TimeZone</td>
|
|
<td>0.71</td>
|
|
</tr>
|
|
<tr>
|
|
<td>DBI</td>
|
|
<td>1.614</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Template</td>
|
|
<td>2.22</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Email::Send</td>
|
|
<td>2.00</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Email::MIME</td>
|
|
<td>1.904</td>
|
|
</tr>
|
|
<tr>
|
|
<td>URI</td>
|
|
<td class="req_new">1.37</td>
|
|
</tr>
|
|
<tr>
|
|
<td>List::MoreUtils</td>
|
|
<td>0.22</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="req_new">Math::Random::ISAAC</td>
|
|
<td class="req_new">1.0.1</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<h3 id="v42_req_optional_mod">Optional Perl Modules</h3>
|
|
|
|
<p>The following perl modules, if installed, enable various
|
|
features of Bugzilla:</p>
|
|
|
|
|
|
<table class="req_table">
|
|
<tbody>
|
|
<tr>
|
|
<th>Module</th>
|
|
<th>Version</th>
|
|
<th>Enables Feature</th>
|
|
</tr>
|
|
<tr>
|
|
<td>GD</td>
|
|
<td>1.20</td>
|
|
<td>Graphical Reports, New Charts, Old Charts</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Chart::Lines</td>
|
|
<td>2.1</td>
|
|
<td>New Charts, Old Charts</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Template::Plugin::GD::Image</td>
|
|
<td>(Any)</td>
|
|
<td>Graphical Reports</td>
|
|
</tr>
|
|
<tr>
|
|
<td>GD::Text</td>
|
|
<td>(Any)</td>
|
|
<td>Graphical Reports</td>
|
|
</tr>
|
|
<tr>
|
|
<td>GD::Graph</td>
|
|
<td>(Any)</td>
|
|
<td>Graphical Reports</td>
|
|
</tr>
|
|
<tr>
|
|
<td>MIME::Parser</td>
|
|
<td>5.406</td>
|
|
<td>Move [% terms.Bugs %] Between Installations</td>
|
|
</tr>
|
|
<tr>
|
|
<td>LWP::UserAgent</td>
|
|
<td>(Any)</td>
|
|
<td>Automatic Update Notifications</td>
|
|
</tr>
|
|
<tr>
|
|
<td>XML::Twig</td>
|
|
<td>(Any)</td>
|
|
<td>Move [% terms.Bugs %] Between Installations, Automatic Update Notifications</td>
|
|
</tr>
|
|
<tr>
|
|
<td>PatchReader</td>
|
|
<td class="req_new">0.9.6</td>
|
|
<td>Patch Viewer</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Net::LDAP</td>
|
|
<td>(Any)</td>
|
|
<td>LDAP Authentication</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Authen::SASL</td>
|
|
<td>(Any)</td>
|
|
<td>SMTP Authentication</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Authen::Radius</td>
|
|
<td>(Any)</td>
|
|
<td>RADIUS Authentication</td>
|
|
</tr>
|
|
<tr>
|
|
<td>SOAP::Lite</td>
|
|
<td>0.712</td>
|
|
<td>XML-RPC Interface</td>
|
|
</tr>
|
|
<tr>
|
|
<td>JSON::RPC</td>
|
|
<td>(Any)</td>
|
|
<td>JSON-RPC Interface</td>
|
|
</tr>
|
|
<tr>
|
|
<td>JSON::XS</td>
|
|
<td>2.0</td>
|
|
<td>Make JSON-RPC Faster</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Test::Taint</td>
|
|
<td>(Any)</td>
|
|
<td>JSON-RPC Interface, XML-RPC Interface</td>
|
|
</tr>
|
|
<tr>
|
|
<td>HTML::Parser</td>
|
|
<td>3.67</td>
|
|
<td>More HTML in Product/Group Descriptions</td>
|
|
</tr>
|
|
<tr>
|
|
<td>HTML::Scrubber</td>
|
|
<td>(Any)</td>
|
|
<td>More HTML in Product/Group Descriptions</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="req_new">Encode</td>
|
|
<td class="req_new">2.21</td>
|
|
<td>Automatic charset detection for text attachments</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="req_new">Encode::Detect</td>
|
|
<td class="req_new">(Any)</td>
|
|
<td>Automatic charset detection for text attachments</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Email::MIME::Attachment::Stripper</td>
|
|
<td>(Any)</td>
|
|
<td>Inbound Email</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Email::Reply</td>
|
|
<td>(Any)</td>
|
|
<td>Inbound Email</td>
|
|
</tr>
|
|
<tr>
|
|
<td>TheSchwartz</td>
|
|
<td>(Any)</td>
|
|
<td>Mail Queueing</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Daemon::Generic</td>
|
|
<td>(Any)</td>
|
|
<td>Mail Queueing</td>
|
|
</tr>
|
|
<tr>
|
|
<td>mod_perl2</td>
|
|
<td>1.999022</td>
|
|
<td>mod_perl</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Apache2::SizeLimit</td>
|
|
<td class="req_new">0.96</td>
|
|
<td>mod_perl</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<h3 id="v42_req_apache">Optional Apache Modules</h3>
|
|
|
|
<p>If you are using Apache as your webserver, Bugzilla can
|
|
take advantage of some Apache features if you have the below Apache
|
|
modules installed and enabled. Currently,
|
|
<a href="#v40_feat_js_css_update">certain Bugzilla features</a>
|
|
are enabled only if you have all of the following modules installed
|
|
and enabled:</p>
|
|
|
|
<ul>
|
|
<li>mod_headers</li>
|
|
<li>mod_expires</li>
|
|
<li>mod_env</li>
|
|
</ul>
|
|
|
|
<p>On most systems (but not on Windows), <kbd>checksetup.pl</kbd> is able to
|
|
tell whether or not you have these modules installed, and it will tell
|
|
you.</p>
|
|
|
|
|
|
<h2 id="v42_feat">New Features and Improvements</h2>
|
|
|
|
<ul>
|
|
<li><a href="#v42_feat_sqlite">Experimental SQLite Support</a></li>
|
|
<li><a href="#v42_feat_attach">Creating an Attachment by Pasting Text Into
|
|
a Text Field</a></li>
|
|
<li><a href="#v42_feat_email">HTML [% terms.Bug %]mail</a></li>
|
|
<li><a href="#v42_feat_search">Improved Searching System</a></li>
|
|
<li><a href="#v42_feat_product">Disabling Old Components, Versions and Milestones</a></li>
|
|
<li><a href="#v42_feat_custom">Displaying a Custom Field Value Based on Multiple
|
|
Values of Another Field</a></li>
|
|
<li><a href="#v42_feat_audit">Auditing of All Changes Within Bugzilla</a></li>
|
|
<li><a href="#v42_feat_wai">Accessibility Improvements</a></li>
|
|
<li><a href="#v42_feat_other">Other Enhancements and Changes</a></li>
|
|
</ul>
|
|
|
|
<h3 id="v42_feat_sqlite">Experimental SQLite Support</h3>
|
|
|
|
<p>SQLite is now supported by Bugzilla and becomes the 4th supported
|
|
database besides MySQL, PostgreSQL and Oracle. SQLite support must be considered
|
|
as experimental, at least till the next major release.</p>
|
|
|
|
<p>Note that use of SQLite is only recommended for small installations. Larger
|
|
installations should use MySQL, PostgreSQL, or Oracle.</p>
|
|
|
|
<h3 id="v42_feat_attach">Creating an Attachment by Pasting Text Into a Text Field</h3>
|
|
|
|
<p>You can now create a new attachment simply by pasting some text into a text
|
|
field, in addition to the normal upload process for attachments.</p>
|
|
|
|
<h3 id="v42_feat_email">HTML [% terms.Bug %]mail</h3>
|
|
|
|
<p>By default, [% terms.bug %]mails (email notifications about changes to
|
|
[%+ terms.bugs %]) are now sent in an HTML format that is more readable than
|
|
the old text format. Those who prefer the old text format can still choose it
|
|
in their Preferences, however.</p>
|
|
|
|
<h3 id="v42_feat_search">Improved Searching System</h3>
|
|
|
|
<p>The Custom Search section in the Advanced Search page has been redesigned
|
|
to work in a more sensible way. Complex queries are easier to build and have
|
|
more sensible results, as they are built using a more intuitive logic.
|
|
Some very complicated queries are still impossible to generate, though.
|
|
Things should improve in future releases.</p>
|
|
|
|
<h3 id="v42_feat_product">Disabling Old Components, Versions and Milestones</h3>
|
|
|
|
<p>Older components, versions and milestones can now be disabled. [% terms.Bugs %]
|
|
already using them are not affected, but these values will no longer be
|
|
available for new [% terms.bugs %].</p>
|
|
|
|
<h3 id="v42_feat_custom">Displaying a Custom Field Value Based on Multiple Values
|
|
of Another Field</h3>
|
|
|
|
<p>A custom field can now be displayed based on multiple values of another field.
|
|
(For example, one custom field could now appear in multiple products.)
|
|
Previously, you could only display a custom field based on a single value of
|
|
another field.</p>
|
|
|
|
<h3 id="v42_feat_audit">Auditing of All Changes Within Bugzilla</h3>
|
|
|
|
<p>Most changes made through the admin interface are now logged to the database,
|
|
in the <kbd>audit_log</kbd> table. There is no UI to access this table yet,
|
|
but developers are free to create their own tools to track changes made into
|
|
their installation. This is only a first step, and improvements are expected
|
|
in future releases.</p>
|
|
|
|
<h3 id="v42_feat_wai">Accessibility Improvements</h3>
|
|
|
|
<p>A project has started thanks to Francisco Donalisio from IBM to make
|
|
Bugzilla compliant with the W3C Web Accessibility Initiative
|
|
standards. A lot more work still needs to be done, but we expect a much
|
|
better compatibility for the next major release.</p>
|
|
|
|
<h3 id="v42_feat_other">Other Enhancements and Changes</h3>
|
|
|
|
<h4>Enhancements for Users</h4>
|
|
|
|
<ul>
|
|
<li><strong>[% terms.Bugs %]:</strong> Users without editbugs privileges can
|
|
no longer remove other users from the CC list of [% terms.bugs %].</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> Local [% terms.bug %] IDs are now valid
|
|
in the See Also field. Adding such an ID will also add a reciprocal link in
|
|
the other [% terms.bug %].</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> After editing [% terms.abug %] or an
|
|
attachment, the URL is automatically changed to <kbd>show_bug.cgi</kbd>
|
|
instead of <kbd>post_bug.cgi</kbd>, <kbd>process_bug.cgi</kbd> or
|
|
<kbd>attachment.cgi</kbd> so that reloading the page (for instance when
|
|
restarting the web browser) displays the right page. This feature is supported
|
|
by Firefox, Chrome and Safari, but not by Internet Explorer 9.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> Inactive accounts are no longer
|
|
displayed in user fields when user-autocompletion is enabled.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> User-autocompletion is now much faster
|
|
on installations with many user accounts.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> The See Also field now accepts URLs
|
|
pointing to MantisBT, Trac, JIRA and the sourceforge.net b[%%]ug trackers.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> Displaying [% terms.abug %] with many
|
|
dependencies is now much faster.</li>
|
|
<li><strong>Attachments:</strong> The encoding of text files can be automatically
|
|
detected when uploading them as attachments.</li>
|
|
<li><strong>Attachments:</strong> Clickjacking could possibly occur in an attachment
|
|
Details page if a user attached a specially formatted HTML file. To fix this
|
|
potential problem, the Details page always displays the HTML source instead and
|
|
users can see rendered page by clicking on View.</li>
|
|
<li><strong>Flags:</strong> Changing the requestee of a flag no longer changes
|
|
the requester.</li>
|
|
<li><strong>Reports:</strong> If JavaScript is enabled in your web browser,
|
|
tabular reports are now sortable based on any displayed column.</li>
|
|
<li><strong>Dependency graphs:</strong> The <em>Show every [% terms.bug %] in
|
|
the system with dependencies</em> option has been removed.</li>
|
|
<li><strong>Searches:</strong> The columns displayed by default in
|
|
[%+ terms.bug %]lists have changed. These columns are now displayed by default
|
|
unless otherwise specified:<br>
|
|
<kbd>product | component | assignee | [% terms.bug %] status | resolution |
|
|
[%+ terms.bug %] summary | last change date</kbd><br>
|
|
This means that the priority, severity and operating system columns are no
|
|
longer displayed by default.</li>
|
|
<li><strong>Searches:</strong> [% terms.Bug %]lists will now only display the
|
|
first 500 [% terms.bugs %] by default. It is still possible to display the
|
|
whole list, though.</li>
|
|
<li><strong>Searches:</strong> When using relative dates and times, <kbd>-1w</kbd>
|
|
is now a synonym for <kbd>-7d</kbd> and means exactly 7 days. Previously,
|
|
<kbd>-1w</kbd> meant the beginning of the week, which was confusing some users.
|
|
The same confusion existed for <kbd>-1d</kbd> which was different from
|
|
<kbd>-24h</kbd>, and for <kbd>-1m</kbd> which was different from <kbd>-30d</kbd>.
|
|
Now if you really want the beginning of the day, week or month, you must use
|
|
<kbd>-1ds</kbd>, <kbd>-1ws</kbd>, and <kbd>-1ms</kbd> respectively, where
|
|
"s" means "start of". This change will affect existing saved searches using
|
|
relative dates.</li>
|
|
<li><strong>Searches:</strong> A new <em>Include fulltext when performing quick
|
|
searches</em> user preference has been added which permits users to include
|
|
or exclude comments when using quicksearches.</li>
|
|
<li><strong>Searches:</strong> It is now possible to query for [% terms.bugs %]
|
|
based on personal tags in the Custom Search section in the Advanced Search
|
|
page.</li>
|
|
<li><strong>Email notifications: </strong> The date and time of comments are no
|
|
longer displayed in the comment header in [% terms.bug%]mails. This information
|
|
is already available in the email header itself.</li>
|
|
</ul>
|
|
|
|
<h4>Enhancements for Administrators and Developers</h4>
|
|
|
|
<ul>
|
|
<li><strong>Installation:</strong> <kbd>checksetup.pl</kbd> is now much quieter
|
|
when creating a new database.</li>
|
|
<li><strong>Security:</strong> Bugzilla 4.0 is using
|
|
<kbd>Math::Random::Secure</kbd> to generate cryptographically secure
|
|
pseudorandom numbers, but it appeared that installing this Perl module from
|
|
CPAN caused a lot of trouble for some people due to its numerous dependencies.
|
|
So the RNG code has been rewritten to only depend on <kbd>Math::Random::ISAAC</kbd>,
|
|
which was already in use in previous versions of Bugzilla.</li>
|
|
<li><strong>Security:</strong> <kbd>X-Frame-Options = SAMEORIGIN</kbd> is now
|
|
passed to all page headers (except when viewing attachments, as they can be
|
|
on a different host) to protect users from framing and subsequent possible
|
|
clickjacking problems.</li>
|
|
<li><strong>Configuration:</strong> A new parameter <em>password_complexity</em>
|
|
has been added (default: no_constraints) which allows admins to force users
|
|
to use passwords with a higher complexity, such as a combination of uppercase
|
|
and lowercase letters, numbers and special characters, or a subset of them.</li>
|
|
<li><strong>Configuration:</strong> A new parameter <em>search_allow_no_criteria</em>
|
|
has been added (default: on) which allows admins to forbid queries with no
|
|
criteria. This is particularly useful for large installations with several
|
|
tens of thousands [% terms.bugs %] where returning all [% terms.bugs %]
|
|
doesn't make sense and would have a performance impact on the database.</li>
|
|
<li><strong>Configuration:</strong> A new parameter <em>default_search_limit</em>
|
|
has been added (default: 500) which limits the number of [% terms.bugs %]
|
|
displayed by default in a [% terms.bug%]list. The user can ask to see a larger
|
|
list, though.</li>
|
|
<li><strong>Configuration:</strong> A new parameter <em>max_search_results</em>
|
|
has been added (default: 10000) which limits the number of [% terms.bugs %]
|
|
a user can request at once in a [% terms.bug%]list. This is a hard limit and
|
|
a user cannot bypass this value.</li>
|
|
<li><strong>Configuration:</strong> A new parameter <em>ajax_user_autocompletion</em>
|
|
has been added (default: on) to allow administrators to disable auto-completion
|
|
when typing characters in user fields. This parameter should only be disabled
|
|
if your installation is unable to support the load generated by this feature.</li>
|
|
<li><strong>Configuration:</strong> The <em>config_modify_panels</em> hook now
|
|
lets you add additional parameters to existing parameters panels.</li>
|
|
<li><strong>Flags:</strong> Users with local editcomponents privileges can now
|
|
edit flag types for products they can administer.</li>
|
|
<li><strong>Quips:</strong> A new system group <em>bz_quip_moderators</em> has
|
|
been created to moderate quips. Till now, you had to be in the <em>admin</em>
|
|
group to do that.</li>
|
|
<li><kbd>importxml.pl</kbd> now inserts each comment separately into the imported
|
|
[%+ terms.bug %] instead of concatenating them all into a single comment.</li>
|
|
<li><kbd>email_in.pl</kbd> now ignores auto-submitted incoming emails (for
|
|
instance, all these "out of office" emails).</li>
|
|
<li>New code hooks: email_in_before_parse, email_in_after_parse,
|
|
install_filesystem, install_update_db_fielddefs, job_map, object_end_of_create,
|
|
quicksearch_map, user_preferences.</li>
|
|
</ul>
|
|
|
|
<h4>WebService Changes</h4>
|
|
|
|
<ul>
|
|
<li>Two new methods have been added: <kbd>Product.create</kbd> and
|
|
<kbd>Group.create</kbd>.</li>
|
|
<li><kbd>B[%%]ug.update</kbd> no longer throws an error when passing an empty
|
|
string to <kbd>see_also</kbd>. It now simply ignores this empty value.</li>
|
|
<li><kbd>Product.get</kbd> now also returns data about the classification it
|
|
belongs to as well as its components, milestones and versions. It also
|
|
returns the <kbd>default_milestone</kbd> and <kbd>has_unconfirmed</kbd>
|
|
attributes.</li>
|
|
<li>In <kbd>B[%%]ug.fields</kbd>, the <kbd>sortkey</kbd> attribute used in
|
|
<kbd>values</kbd> has been renamed to <kbd>sort_key</kbd>.</li>
|
|
<li>In <kbd>B[%%]ug.attachments</kbd> and <kbd>B[%%]ug.add_attachment</kbd>,
|
|
the <kbd>is_url</kbd> attribute no longer exists.</li>
|
|
</ul>
|
|
|
|
|
|
<h2 id="v42_issues">Outstanding Issues</h2>
|
|
|
|
<ul>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=89822">
|
|
[%- terms.Bug %] 89822</a>: When changing multiple [% terms.bugs %] at
|
|
the same time, there is no "mid-air collision" protection.</li>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=276230">
|
|
[%- terms.Bug %] 276230</a>: The support for restricting access to
|
|
particular Categories of New Charts is not complete. You should treat the
|
|
<em>chartgroup</em> parameter as the only access mechanism available.</li>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=584742">
|
|
[%- terms.Bug %] 584742</a>: When viewing [% terms.abug %], WebKit-based
|
|
browsers can automatically reset a field's selected value when the field
|
|
has disabled values.</li>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=780053">
|
|
[%- terms.Bug %] 780053</a>: Oracle crashes when listing keywords, tags
|
|
or flags in buglists.</li>
|
|
</ul>
|
|
|
|
|
|
<h2 id="v42_code_changes">Code Changes Which May Affect Customizations and Extensions</h2>
|
|
|
|
<ul>
|
|
<li>The <kbd>email/newchangedmail.txt.tmpl</kbd> template is now fully templatized,
|
|
meaning that the diff table displaying changes in [% terms.bug %] fields is
|
|
now generated in the template itself. This means [% terms.bug %]mails are now
|
|
fully localizable.</li>
|
|
<li>The bugmail_recipients hook has been modified to pass <kbd>diffs</kbd> with
|
|
changes made to the [% terms.bug %] as well as <kbd>users</kbd> including
|
|
recipients of the email notification.</li>
|
|
<li>YUI has been upgraded to 2.9.0.</li>
|
|
<li>Due to the major code refactor of <kbd>B[%%]ugzilla/Search.pm</kbd>, any
|
|
customization made against this file will probably need to be rewritten.</li>
|
|
<li>The Bugzilla-specific <kbd>url_quote</kbd> filter used in templates
|
|
has been removed and replaced by the <kbd>uri</kbd> filter from Template::Toolkit
|
|
as they are now similar.</li>
|
|
<li><kbd>long_list.cgi</kbd>, <kbd>showattachment.cgi</kbd> and <kbd>xml.cgi</kbd>
|
|
have been removed from the codebase. As <a href="#v40_code_changes">announced</a>
|
|
in the release notes of Bugzilla 4.0, these scripts were deprecated
|
|
since Bugzilla 2.19.</li>
|
|
<li><kbd>sidebar.cgi</kbd> has been removed, because Gecko-based browsers no
|
|
longer support remote XUL, and its popularity is very low.</li>
|
|
<li><kbd>contrib/yp_nomail.sh</kbd> has been removed. This script is no longer
|
|
useful since Bugzilla 3.0.</li>
|
|
<li><kbd>contrib/bugzilla_ldapsync.rb</kbd> has been removed. This script didn't
|
|
work for a long time.</li>
|
|
</ul>
|
|
|
|
|
|
<h1 id="v42_previous">Bugzilla 4.0 Release Notes</h1>
|
|
|
|
<ul class="bz_toc">
|
|
<li><a href="#v40_introduction">Introduction</a></li>
|
|
<li><a href="#v40_point">Updates in this 4.0.x Release</a></li>
|
|
<li><a href="#v40_req">Minimum Requirements</a></li>
|
|
<li><a href="#v40_feat">New Features and Improvements</a></li>
|
|
<li><a href="#v40_issues">Outstanding Issues</a></li>
|
|
<li><a href="#v40_upgrading">Notes On Upgrading From a Previous Version</a></li>
|
|
<li><a href="#v40_code_changes">Code Changes Which May Affect
|
|
Customizations and Extensions</a></li>
|
|
<li><a href="#v40_previous">Release Notes for Previous Versions</a></li>
|
|
</ul>
|
|
|
|
<h2 id="v40_introduction">Introduction</h2>
|
|
|
|
<p>This is Bugzilla 4.0! Since 3.6 (our previous major
|
|
release) we've come a long way, and we've come even further compared to
|
|
3.0 in 2007! Since Bugzilla 3.0, almost every major user
|
|
interface in Bugzilla has been redesigned, the WebServices have
|
|
evolved enormously, there's a great new Extensions system, and there
|
|
are hundreds of other new features. With the major redesigns that come
|
|
particularly in this release compared to 3.6, we felt that it was time to
|
|
call this release 4.0.</p>
|
|
|
|
<p>It's not just major WebService and UI enhancements that are new in
|
|
Bugzilla 4.0—there are many other exciting new features,
|
|
including automatic duplicate detection, enhanced custom field
|
|
functionality, autocomplete for users, search improvements, and much
|
|
more. Overall, 4.0 is far and away the best version of Bugzilla
|
|
we've ever released.</p>
|
|
|
|
<p>If you're upgrading, make sure to read <a href="#v40_upgrading">Notes
|
|
On Upgrading From a Previous Version</a>. If you are upgrading from a release
|
|
before 3.6, make sure to read the release notes for all the
|
|
<a href="#v40_previous">previous versions</a> in between your version
|
|
and this one, <strong>particularly the Upgrading section of each
|
|
version's release notes</strong>.</p>
|
|
|
|
<p>We would like to thank
|
|
<a href="http://www.itasoftware.com/">ITA Software</a>,
|
|
the <a href="http://www.ibm.com/linux/ltc/">IBM Linux Technology Center</a>,
|
|
and <a href="http://www.redhat.com/">Red Hat</a> for funding the development
|
|
of certain features and improvements in this release of
|
|
Bugzilla.</p>
|
|
|
|
<h2 id="v40_point">Updates in this 4.0.x Release</h2>
|
|
|
|
<h3>4.0.2</h3>
|
|
|
|
<p>This release fixes several security issues. See the
|
|
<a href="http://www.bugzilla.org/security/3.4.11/">Security Advisory</a>
|
|
for details.</p>
|
|
|
|
<p>In addition, the following important fixes/changes have been made in this
|
|
release:</p>
|
|
|
|
<ul>
|
|
<li>The <kbd>B[% %]ug.create</kbd> WebService method now throws an error if you
|
|
pass a group name which doesn't exist. In Bugzilla 4.0 and 4.0.1,
|
|
this group name was silently ignored, leaving your [% terms.bug %] unsecure
|
|
if no other group applied.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=653341">[% terms.Bug %] 653341</a>)</li>
|
|
<li>Moving several [% terms.bugs %] at once into another product displayed the
|
|
same confirmation page again and again, and changes were never committed
|
|
(regressed in 4.0).
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=663208">[% terms.Bug %] 663208</a>)</li>
|
|
<li>Marking [% terms.abug %] as a duplicate now works in Internet Explorer 9.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=656769">[% terms.Bug %] 656769</a>)</li>
|
|
<li><kbd>importxml.pl</kbd> no longer crashes when importing keywords (regressed
|
|
in 4.0).
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=657707">[% terms.Bug %] 657707</a>)</li>
|
|
<li>Data entered while reporting a new [% terms.bug %] could be lost if you had
|
|
to click the "Back" button of your web browser.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=652427">[% terms.Bug %] 652427</a>)</li>
|
|
<li>WebServices methods will return undefined [% terms.bug %] fields as undefined
|
|
instead of as an empty string. This change is consistent with how
|
|
Bugzilla 4.2 behaves.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=657561">[% terms.Bug %] 657561</a>)</li>
|
|
<li>The XML-RPC interface now works with SOAP::Lite 0.711 and 0.712 under mod_perl.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=600810">[% terms.Bug %] 600810</a>)</li>
|
|
<li>LWP 6.00 and newer require Perl 5.8.8 and above. When installing this module
|
|
using <kbd>install-module.pl</kbd> on a Perl installation older than 5.8.8,
|
|
LWP 5.837 will be installed instead.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=655912">[% terms.Bug %] 655912</a>)</li>
|
|
<li>Viewing [% terms.abug %] report should be significantly faster when your
|
|
installation has many custom fields.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=634812">[% terms.Bug %] 634812</a>)</li>
|
|
</ul>
|
|
|
|
<h3>4.0.1</h3>
|
|
|
|
<ul>
|
|
<li>During installation, the CPAN module Math::Random::Secure would
|
|
sometimes fail to install properly and give an error about
|
|
<kbd>Math::Random::Secure::irand</kbd>. Now, when using
|
|
<kbd>install-module.pl</kbd> to install Math::Random::Secure, this
|
|
will no longer happen. If you are currently experiencing this b[% %]ug
|
|
and it prevented you from installing 4.0, remove Math::Random::Secure
|
|
from your <kbd>lib/</kbd> directory, like:
|
|
<p><kbd>rm -rf lib/Math/Random/Secure*</kbd></p>
|
|
<p>(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=646578">[% terms.Bug %] 646578</a>)</p></li>
|
|
<li>The "Remember values as bookmarkable template" button on the
|
|
[%+ terms.bug %] entry page will now work even when some required fields
|
|
are empty.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=640719">[% terms.Bug %] 640719</a>)</li>
|
|
<li>Email notifications about dependencies and flags had the wrong
|
|
timestamp.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=643910">[% terms.Bug %] 643910</a>
|
|
and (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=652165">[% terms.Bug %] 652165</a>)</li>
|
|
<li>You can now select "UTC" as a valid timezone in General Preferences.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=646209">[% terms.Bug %] 646209</a>)</li>
|
|
<li>Automatic duplicate detection now works on PostgreSQL (although
|
|
it is not as high-quality as on other DB platforms).
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=634144">[% terms.Bug %] 634144</a>)</li>
|
|
<li>Autcomplete for users now works even if you are using the
|
|
"emailsuffix" option.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=641519">[% terms.Bug %] 641519</a>)</li>
|
|
<li>Javascript errors during series creation in New Charts have been
|
|
fixed.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=644285">[% terms.Bug %] 644285</a>)</li>
|
|
<li>The "Show Votes" page now works, for installations using the Voting
|
|
extension.
|
|
(<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=652381">[% terms.Bug %] 652381</a>)</li>
|
|
</ul>
|
|
|
|
<h2 id="v40_req">Minimum Requirements</h2>
|
|
|
|
<p>Any requirements that are new since 3.6.3 will look like
|
|
<span class="req_new">this</span>.</p>
|
|
|
|
<ul>
|
|
<li><a href="#v40_req_perl">Perl</a></li>
|
|
<li><a href="#v40_req_mysql">For MySQL Users</a></li>
|
|
<li><a href="#v40_req_pg">For PostgreSQL Users</a></li>
|
|
<li><a href="#v40_req_oracle">For Oracle Users</a></li>
|
|
<li><a href="#v40_req_modules">Required Perl Modules</a></li>
|
|
<li><a href="#v40_req_optional_mod">Optional Perl Modules</a></li>
|
|
<li><a href="#v40_req_apache">Optional Apache Modules</a></li>
|
|
</ul>
|
|
|
|
<h3 id="v40_req_perl">Perl</h3>
|
|
|
|
<p>Perl v5.8.1</p>
|
|
<h3 id="v40_req_mysql">For MySQL Users</h3>
|
|
|
|
<ul>
|
|
<li>MySQL v4.1.2</li>
|
|
<li><strong>perl module:</strong> DBD::mysql v4.00</li>
|
|
</ul>
|
|
|
|
<h3 id="v40_req_pg">For PostgreSQL Users</h3>
|
|
|
|
<ul>
|
|
<li>PostgreSQL v8.00.0000</li>
|
|
<li><strong>perl module:</strong> DBD::Pg v1.45</li>
|
|
</ul>
|
|
|
|
<h3 id="v40_req_oracle">For Oracle Users</h3>
|
|
|
|
<ul>
|
|
<li>Oracle v10.02.0</li>
|
|
<li><strong>perl module:</strong> DBD::Oracle v1.19</li>
|
|
</ul>
|
|
|
|
<h3 id="v40_req_modules">Required Perl Modules</h3>
|
|
|
|
<table class="req_table">
|
|
<tbody>
|
|
<tr>
|
|
<th>Module</th><th>Version</th>
|
|
</tr>
|
|
<tr>
|
|
<td>CGI</td>
|
|
<td class="req_new">3.51</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Digest::SHA</td>
|
|
<td>(Any)</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Date::Format</td>
|
|
<td>2.21</td>
|
|
</tr>
|
|
<tr>
|
|
<td>DateTime</td>
|
|
<td>0.28</td>
|
|
</tr>
|
|
<tr>
|
|
<td>DateTime::TimeZone</td>
|
|
<td>0.71</td>
|
|
</tr>
|
|
<tr>
|
|
<td>DBI</td>
|
|
<td>1.41</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Template</td>
|
|
<td>2.22</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Email::Send</td>
|
|
<td>2.00</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Email::MIME</td>
|
|
<td class="req_new">1.904</td>
|
|
</tr>
|
|
<tr>
|
|
<td>URI</td>
|
|
<td>(Any)</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="req_new">List::MoreUtils</td>
|
|
<td class="req_new">0.22</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<h3 id="v40_req_optional_mod">Optional Perl Modules</h3>
|
|
|
|
<p>The following perl modules, if installed, enable various
|
|
features of Bugzilla:</p>
|
|
|
|
<table class="req_table">
|
|
<tbody>
|
|
<tr>
|
|
<th>Module</th><th>Version</th><th>Enables Feature</th>
|
|
</tr>
|
|
<tr>
|
|
<td>GD</td>
|
|
<td>1.20</td>
|
|
<td>Graphical Reports, New Charts, Old Charts</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Chart::Lines</td>
|
|
<td>2.1</td>
|
|
<td>New Charts, Old Charts</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Template::Plugin::GD::Image</td>
|
|
<td>(Any)</td>
|
|
<td>Graphical Reports</td>
|
|
</tr>
|
|
<tr>
|
|
<td>GD::Text</td>
|
|
<td>(Any)</td>
|
|
<td>Graphical Reports</td>
|
|
</tr>
|
|
<tr>
|
|
<td>GD::Graph</td>
|
|
<td>(Any)</td>
|
|
<td>Graphical Reports</td>
|
|
</tr>
|
|
<tr>
|
|
<td>MIME::Parser</td>
|
|
<td>5.406</td>
|
|
<td>Move [% terms.Bugs %] Between Installations</td>
|
|
</tr>
|
|
<tr>
|
|
<td>LWP::UserAgent</td>
|
|
<td>(Any)</td>
|
|
<td>Automatic Update Notifications</td>
|
|
</tr>
|
|
<tr>
|
|
<td>XML::Twig</td>
|
|
<td>(Any)</td>
|
|
<td>Move [% terms.Bugs %] Between Installations, Automatic Update
|
|
Notifications</td>
|
|
</tr>
|
|
<tr>
|
|
<td>PatchReader</td>
|
|
<td>0.9.4</td>
|
|
<td>Patch Viewer</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Net::LDAP</td>
|
|
<td>(Any)</td>
|
|
<td>LDAP Authentication</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Authen::SASL</td>
|
|
<td>(Any)</td>
|
|
<td>SMTP Authentication</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Authen::Radius</td>
|
|
<td>(Any)</td>
|
|
<td>RADIUS Authentication</td>
|
|
</tr>
|
|
<tr>
|
|
<td>SOAP::Lite</td>
|
|
<td class="req_new">0.712</td>
|
|
<td>XML-RPC Interface</td>
|
|
</tr>
|
|
<tr>
|
|
<td>JSON::RPC</td>
|
|
<td>(Any)</td>
|
|
<td>JSON-RPC Interface</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="req_new">JSON::XS</td>
|
|
<td class="req_new">2.0</td>
|
|
<td>Make JSON-RPC Faster</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Test::Taint</td>
|
|
<td>(Any)</td>
|
|
<td>JSON-RPC Interface, XML-RPC Interface</td>
|
|
</tr>
|
|
<tr>
|
|
<td>HTML::Parser</td>
|
|
<td>3.40</td>
|
|
<td>More HTML in Product/Group Descriptions</td>
|
|
</tr>
|
|
<tr>
|
|
<td>HTML::Scrubber</td>
|
|
<td>(Any)</td>
|
|
<td>More HTML in Product/Group Descriptions</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Email::MIME::Attachment::Stripper</td>
|
|
<td>(Any)</td>
|
|
<td>Inbound Email</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Email::Reply</td>
|
|
<td>(Any)</td>
|
|
<td>Inbound Email</td>
|
|
</tr>
|
|
<tr>
|
|
<td>TheSchwartz</td>
|
|
<td>(Any)</td>
|
|
<td>Mail Queueing</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Daemon::Generic</td>
|
|
<td>(Any)</td>
|
|
<td>Mail Queueing</td>
|
|
</tr>
|
|
<tr>
|
|
<td>mod_perl2</td>
|
|
<td>1.999022</td>
|
|
<td>mod_perl</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Apache2::SizeLimit</td>
|
|
<td class="req_new">0.93</td>
|
|
<td>mod_perl</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="req_new">Math::Random::Secure</td>
|
|
<td class="req_new">0.05</td>
|
|
<td>Improve cookie and token security</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<h3 id="v40_req_apache">Optional Apache Modules</h3>
|
|
|
|
<p>If you are using Apache as your webserver, Bugzilla can
|
|
now take advantage of some Apache features if you have the below Apache
|
|
modules installed and enabled. Currently,
|
|
<a href="#v40_feat_js_css_update">certain Bugzilla features</a>
|
|
are enabled only if you have all of the following modules installed
|
|
and enabled:</p>
|
|
|
|
<ul>
|
|
<li>mod_headers</li>
|
|
<li>mod_expires</li>
|
|
<li>mod_env</li>
|
|
</ul>
|
|
|
|
<p>On most systems (but not on Windows), <kbd>checksetup.pl</kbd> is able to
|
|
tell whether or not you have these modules installed, and it will tell
|
|
you.</p>
|
|
|
|
<h2 id="v40_feat">New Features and Improvements</h2>
|
|
|
|
<ul>
|
|
<li><a href="#v40_feat_dup">Automatic Duplicate Detection When Filing
|
|
[%+ terms.Bugs %]</a></li>
|
|
<li><a href="#v40_feat_search_ui">New Advanced Search UI</a></li>
|
|
<li><a href="#v40_feat_attach_ui">New Attachment Details UI</a></li>
|
|
<li><a href="#v40_feat_autocomplete">Autocomplete for Users and
|
|
Keywords</a></li>
|
|
<li><a href="#v40_feat_ui">General Usability Improvements</a></li>
|
|
<li><a href="#v40_feat_workflow">New Default Status Workflow</a></li>
|
|
<li><a href="#v40_feat_lists">"Last Search" Now Remembers Multiple
|
|
Searches</a></li>
|
|
<li><a href="#v40_feat_jsonp">Cross-Domain WebServices with JSONP</a></li>
|
|
<li><a href="#v40_feat_ws">Major WebService Enhancements</a></li>
|
|
<li><a href="#v40_feat_mandatory">Mandatory Custom Fields</a></li>
|
|
<li><a href="#v40_feat_vot_ext">Voting Is Now An Extension</a></li>
|
|
<li><a href="#v40_feat_js_css_update">Users Get New CSS and Javascript
|
|
Automatically</a></li>
|
|
<li><a href="#v40_feat_hooks">Many New Hooks</a></li>
|
|
<li><a href="#v40_feat_apache_config">New Apache Configuration</a></li>
|
|
<li><a href="#v40_feat_other">Other Enhancements and Changes</a></li>
|
|
</ul>
|
|
|
|
<h3 id="v40_feat_dup">Automatic Duplicate Detection When Filing
|
|
[%+ terms.Bugs %]</h3>
|
|
|
|
<p>When filing [% terms.abug %], as soon as you start typing in the summary
|
|
field, Bugzilla will suggest possible duplicates of the
|
|
[%+ terms.bug %] you are filing.</p>
|
|
|
|
<p>In order for this feature to work, all pre-requisites for JSON-RPC
|
|
support must be installed on your Bugzilla. It will be
|
|
much faster on installations that run under mod_perl than it will
|
|
be on other installations.</p>
|
|
|
|
<h3 id="v40_feat_search_ui">New Advanced Search UI</h3>
|
|
|
|
<p>Thanks to the UI work of <a href="http://guy-pyrzak.blogspot.com/">Guy
|
|
Pyrzak</a>, the Advanced Search UI has been completely redesigned.
|
|
It is now much simpler, and far more approachable for new users, while
|
|
still retaining all of the features that power users are used to.</p>
|
|
|
|
<h3 id="v40_feat_attach_ui">New Attachment Details UI</h3>
|
|
|
|
<p>The UI used for editing attachment details has been completely
|
|
redesigned, allowing for a normally-size comment box to be used
|
|
when commenting on attachments, and allowing nearly the entire screen
|
|
width to be used when doing code reviews or editing an attachment as
|
|
a comment.</p>
|
|
|
|
<p>Thanks to <a href="http://guy-pyrzak.blogspot.com/">Guy Pyrzak</a> for
|
|
his excellent work on this UI redesign.</p>
|
|
|
|
<h3 id="v40_feat_autocomplete">Autocomplete for Users and Keywords</h3>
|
|
|
|
<p>Once you type at least three characters in any field that can contain a user
|
|
(including the [% field_descs.cc FILTER html %],
|
|
[%+ field_descs.qa_contact FILTER html %], or
|
|
[%+ field_descs.assigned_to FILTER html %] fields), a list will appear
|
|
containing all of the users whose real names or usernames match what you are
|
|
typing. Your Bugzilla must have all of the optional Perl
|
|
modules required for JSON-RPC support installed, though, in order for
|
|
this feature to work. Also, this feature will be <strong>much</strong>
|
|
faster on installations that run under mod_perl than it will be on
|
|
other installations.</p>
|
|
|
|
<p>There is also a similar autocomplete for the Keywords field. The
|
|
Keywords autocomplete does not require JSON-RPC.</p>
|
|
|
|
<h3 id="v40_feat_ui">General Usability Improvements</h3>
|
|
|
|
<p>In addition to the enhancements listed above, there have been
|
|
<strong>many</strong> improvements made across the Bugzilla
|
|
user interface. For a list of specific enhancements that were significant,
|
|
see the <a href="#v40_feat_other">Other Enhancements and Changes</a>
|
|
section.</p>
|
|
|
|
<h3 id="v40_feat_workflow">New Default Status Workflow</h3>
|
|
|
|
<p>For new installations of Bugzilla, the default set of
|
|
statuses will now be:</p>
|
|
|
|
<ul>
|
|
<li>UNCONFIRMED</li>
|
|
<li>CONFIRMED</li>
|
|
<li>IN_PROGRESS</li>
|
|
<li>RESOLVED</li>
|
|
<li>VERIFIED</li>
|
|
</ul>
|
|
|
|
<p>And the UNCONFIRMED status will be enabled by default in all products.</p>
|
|
|
|
<p>On upgrade, existing installations will not be affected--you will retain
|
|
your existing status workflow. However, we strongly recommend that you
|
|
update your existing workflow to the new one, using a special tool
|
|
we've included, <kbd>contrib/convert-workflow.pl</kbd>, which you
|
|
can run after you use <kbd>checksetup.pl</kbd> to upgrade. The
|
|
<kbd>whineatnews.pl</kbd> and <kbd>bugzilla-submit</kbd> scripts
|
|
will probably not work properly if you continue to use the old workflow
|
|
(though most other parts of Bugzilla will still function
|
|
normally).</p>
|
|
|
|
<p>For more information about the workflow and our rationale for changing
|
|
it, see the
|
|
<a href="http://bugzillaupdate.wordpress.com/2010/07/06/bugzilla-4-0-has-a-new-default-status-workflow/">blog
|
|
post about it</a> and the
|
|
<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=486292">[% terms.bug %]
|
|
where the change was made</a>.</p>
|
|
|
|
<h3 id="v40_feat_lists">"Last Search" Now Remembers Multiple Searches</h3>
|
|
|
|
<p>At the top of every [% terms.bug %] in Bugzilla, there are
|
|
links that look like: "First", "Last", "Prev", "Next", and
|
|
"Show last search results". In earlier versions of Bugzilla,
|
|
if you did two separate searches in separate windows, these links would
|
|
only work for the <em>last</em> search you did. Now, Bugzilla
|
|
will "remember" which search result you came from and give you the right
|
|
"last search results" or "next [% terms.bug %]" from <em>that</em> list,
|
|
instead of always using your most recent search.</p>
|
|
|
|
<p>There are still some situations where Bugzilla will have to
|
|
"guess" which search you are trying to navigate through, but it does its
|
|
best to get it right.</p>
|
|
|
|
<h3 id="v40_feat_jsonp">Cross-Domain WebServices with JSONP</h3>
|
|
|
|
<p>Bugzilla now supports making WebService calls from
|
|
another domain, inside of a web browser, thanks to support for
|
|
<a href="http://bob.pythonmac.org/archives/2005/12/05/remote-json-jsonp/">JSONP</a>.
|
|
This will allow for web "mash-ups" to use Bugzilla data.
|
|
When using JSONP, you may only call functions that <em>get</em> data,
|
|
you may not call functions that <em>change</em> data.</p>
|
|
|
|
<p>For more details, see the
|
|
<a href="[% docs_urlbase FILTER html %]api/Bugzilla/WebService/Server/JSONRPC.html#JSONP">JSONP
|
|
section</a> of the JSON-RPC WebService documentation.</p>
|
|
|
|
<h3 id="v40_feat_ws">Major WebService Enhancements</h3>
|
|
|
|
<p>The WebService has been expanded considerably. The WebService should now be
|
|
able to do everything with [% terms.bugs %] that you can do via the
|
|
web interface, including updating [% terms.bugs %], adding attachments,
|
|
and getting attachment data. For specifics, see the
|
|
<a href="#v40_feat_ws_changes">WebService Changes</a> section of these
|
|
release notes.</p>
|
|
|
|
<h3 id="v40_feat_mandatory">Mandatory Custom Fields</h3>
|
|
|
|
<p>You can now specify that certain custom fields are "mandatory",
|
|
meaning that they must have a value when [% terms.abug %] is filed,
|
|
and they can never be empty after that.</p>
|
|
|
|
<h3 id="v40_feat_vot_ext">Voting Is Now An Extension</h3>
|
|
|
|
<p>All of the code for voting in Bugzilla has been moved
|
|
into an extension, called "Voting", in the <kbd>extensions/Voting/</kbd>
|
|
directory. To enable it, you must remove the <kbd>disabled</kbd> file
|
|
from that directory, and run <kbd>checksetup.pl</kbd>.</p>
|
|
|
|
<p>In a future version of Bugzilla, the Voting extension will
|
|
be moved outside of the Bugzilla core code, so we are looking
|
|
for somebody who has an interest in the Voting system and would like to
|
|
maintain it as a separate extension. There are many enhancement requests
|
|
that have been made against the Voting system, and the best way for those
|
|
to get addressed is for somebody to step up and offer to maintain the
|
|
system outside of Bugzilla's core code.</p>
|
|
|
|
<h3 id="v40_feat_js_css_update">Users Get New CSS and Javascript
|
|
Automatically</h3>
|
|
|
|
<p>In past versions of Bugzilla, if you changed
|
|
Bugzilla's CSS or Javascript files, then every user of
|
|
Bugzilla would have to clear their cache in order to get
|
|
the updated files. Now, if you are using Apache as your webserver and
|
|
you have the <a href="#v40_req_apache">optional Apache modules</a>
|
|
installed and enabled, users will automatically get every new version of
|
|
Bugzilla's Javascript and CSS without having to clear
|
|
their caches.</p>
|
|
|
|
<p>This feature also gives a slight performance speedup to
|
|
Bugzilla in some cases, and so we recommend that all
|
|
administrators install and enable the optional Apache modules if possible.</p>
|
|
|
|
<h3 id="v40_feat_hooks">Many New Hooks</h3>
|
|
|
|
<p>Many new code hooks have been added for use by Extensions,
|
|
in Bugzilla 4.0. Now Extensions can access and modify
|
|
nearly every part of Bugzilla.</p>
|
|
|
|
<h3 id="v40_feat_apache_config">New Apache Configuration</h3>
|
|
|
|
<p>If you run Bugzilla under Apache (as most people do),
|
|
you most likely require a <strong>new Apache configuration</strong>
|
|
for this version of Bugzilla. See the
|
|
<a href="#v40_upgrading">Notes On Upgrading From a Previous Version</a>
|
|
section for details.</p>
|
|
|
|
<h3 id="v40_feat_other">Other Enhancements and Changes</h3>
|
|
|
|
<h4>Enhancements for Users</h4>
|
|
|
|
<ul>
|
|
<li>Now, everywhere in Bugzilla where you can enter a date,
|
|
there is a Calendar widget where you can select the date on a
|
|
calendar.</li>
|
|
<li>The big icons on the front page have been replaced with much nicer
|
|
icons, thanks to Jon Pink of <a href="http://www.jpink.co.uk/">J. Pink Design</a>!</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> When filing [% terms.bugs %],
|
|
you will now be warned if you forgot to fill in any mandatory fields,
|
|
<em>before</em> the page is submitted.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> When filing [% terms.abug %],
|
|
you can hover your mouse over any of the field labels on the page
|
|
to get a brief description of what that field is and what its purpose
|
|
is.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> When adding Hours Worked to [% terms.abug %],
|
|
you are no longer required to comment.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> There is now a user preference
|
|
for whether the comment box appears above or below the existing
|
|
comments.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> Bugzilla will now
|
|
send an email for every comment that you mark or un-mark as being
|
|
private. (Previous versions of Bugzilla did not send emails
|
|
to users about this change.) The state of comments being made private
|
|
is also now stored in [% terms.abug %]'s history.</li>
|
|
<li><strong>[% terms.Bugs %]:</strong> The box to "Add [% terms.Bug %] URLs"
|
|
in the See Also field is now hidden behind an "(add)" link that you
|
|
have to click to see the box.</li>
|
|
|
|
<li><strong>Searches:</strong> You can now properly search for field values
|
|
that have commas in their name, when using the Advanced Search form.</li>
|
|
<li><strong>Searches:</strong> The "URL" field can now be shown as a column
|
|
in search results.</li>
|
|
<li><strong>Searches:</strong> When viewing a search result, you can now
|
|
click on the Summary of the [% terms.bug %] in order to go to the
|
|
[%+ terms.bug %]-view page, in addition to being able to click on the
|
|
[%+ terms.bug %] ID.</li>
|
|
<li><strong>Searches:</strong> When doing a search using the "quicksearch"
|
|
box in the header or footer, the box will still contain what you searched
|
|
for when viewing the search results page.</li>
|
|
<li><strong>Searches:</strong> Multi-select custom fields can now be
|
|
shown as columns in the search results.</li>
|
|
<li><strong>Searches:</strong> When using the Boolean Charts (now called
|
|
"Custom Search"), if you specify both a criterion for an attachment
|
|
and a criteron for a flag, then only [% terms.bugs %] that have
|
|
attachments with that flag will be found.</li>
|
|
<li><strong>Searches:</strong> If you hover your mouse over the field labels
|
|
on the Advanced Search page, you will get a description of what that
|
|
field is.</li>
|
|
<li><strong>Searches:</strong> When searching via a saved search, if you
|
|
accidentally click on "Forget Search", there is a link to undo it.</li>
|
|
<li><strong>Searches:</strong> When using the Boolean Charts (now called
|
|
"Custom Search"), you can search for values "greater than or equal to"
|
|
or "less than or equal to" some value.</li>
|
|
|
|
<li><strong>Flags:</strong> If you hover your mouse over the name of
|
|
a flag setter when viewing [% terms.abug %], you can see that
|
|
flag setter's full name and complete username.</li>
|
|
<li><strong>Flags:</strong> When setting a flag on [% terms.abug %],
|
|
the box for entering a requestee does not appear until you set the flag
|
|
to "?", now.</li>
|
|
<li><strong>Flags:</strong> On the "My Requests" page, [% terms.bugs %]
|
|
that are restricted to certain groups now properly have the "padlock"
|
|
icon shown next to them to indicate that they may contain confidential
|
|
information.</li>
|
|
|
|
<li>When using the Reports interface, you can now choose many more fields
|
|
as the X, Y, or Z axis of a report, including custom fields.</li>
|
|
<li>Bugzilla now prevents
|
|
Internet Explorer 8 and later from attempting to render
|
|
<kbd>text/plain</kbd> attachments as HTML.</li>
|
|
<li>If you receive a Whine mail that is empty, there will now be a brief
|
|
message explaining that your search found no results.</li>
|
|
<li>The <a href="page.cgi?id=fields.html">Field Help Page</a> now
|
|
contains a description of every single field that can be on
|
|
[%+ terms.abug %] in Bugzilla.</li>
|
|
</ul>
|
|
|
|
<h4>Enhancements for Administrators and Developers</h4>
|
|
|
|
<ul>
|
|
<li>The system for moving [% terms.bugs %] between installations has been
|
|
moved into an extension called <kbd>OldBugMove</kbd>. This system was used
|
|
by very few Bugzilla installations--if you aren't certain
|
|
whether or not you are using it, you're not using it. To enable the system,
|
|
you have to remove the file <kbd>extensions/OldBugMove/disabled</kbd>
|
|
and then run <kbd>checksetup.pl</kbd>. In a future version of Bugzilla,
|
|
this extension may be moved outside of the core Bugzilla code,
|
|
so if you are interested in maintaining it, please let us know.</li>
|
|
<li><strong>Custom Fields: </strong> "[% terms.Bug %] ID" custom fields can
|
|
now represent relationships between [% terms.bugs %], similarly to how the
|
|
[%+ field_descs.blocked FILTER html %] and
|
|
[%+ field_descs.dependson FILTER html %] fields work now.</li>
|
|
<li><strong>Custom Fields:</strong> You can now restrict the visibility
|
|
of custom fields and their values to a specific Component or
|
|
Classification.</li>
|
|
<li>The "keyword cache" has been removed. When you edit keywords, you no
|
|
longer will have to "rebuild the keyword cache" after you are done.</li>
|
|
<li>Running <kbd>./collectstats.pl --regenerate</kbd> will now take
|
|
minutes or hours, instead of days.</li>
|
|
<li>When using <kbd>email_in.pl</kbd>, there are two new switches,
|
|
<kbd>--default</kbd> and <kbd>--override</kbd>, which allow you to
|
|
specify certain default values or override specified values for
|
|
<kbd>@field</kbd> values sent in emails. (This also allows you to specify
|
|
defaults for everything so that people do not have to specify any field
|
|
values when filing [% terms.abug %] via email.)</li>
|
|
<li><strong>Installation:</strong> If you are using a localized version of
|
|
Bugzilla and your terminal does not understand Unicode,
|
|
<kbd>checksetup.pl</kbd> will now attempt to output its messages in your
|
|
terminal's character set.</li>
|
|
<li><strong>Installation:</strong> Bugzilla no longer needs empty
|
|
"placeholder" CSS in the <kbd>skins/custom</kbd> directory and other
|
|
directories. When you update, <kbd>checksetup.pl</kbd> will remove these.
|
|
This also significantly reduces the number of HTTP requests required to
|
|
load a page for the first time in Bugzilla.</li>
|
|
<li><strong>Installation:</strong> For Windows users, Bugzilla
|
|
now supports Strawberry Perl fully.</li>
|
|
<li><strong>Installation:</strong> Now, whenever <kbd>checksetup.pl</kbd>
|
|
throws an error, it will be printed in the color red, to make it
|
|
obvious that something is wrong.</li>
|
|
<li><strong>Installation:</strong> Some actions of <kbd>checksetup.pl</kbd> were
|
|
silent, in the past. Now, <kbd>checksetup.pl</kbd> will print a message for
|
|
almost anything it does.</li>
|
|
<li><strong>Installation:</strong> The process of adding foreign keys
|
|
to a table is now much faster. This will particularly improve the speed
|
|
of upgrading from Bugzilla 3.4 or earlier.</li>
|
|
<li>If you are using <kbd>jobqueue.pl</kbd> and email gets heavily delayed
|
|
for some reason, those emails will now have a Date header reflecting the
|
|
time they were <em>supposed</em> to be sent, instead of when they actually
|
|
<em>were</em> sent.</li>
|
|
<li><kbd>./jobqueue.pl install</kbd> now works on SuSE Linux.</li>
|
|
<li>Bugzilla now runs much better in Apache's suexec mode
|
|
than it used to. As part of this, <kbd>checksetup.pl</kbd> sets
|
|
much stricter permissions on all the files in Bugzilla
|
|
than it used to. In particular, any files that Bugzilla
|
|
does not know about will not be readable by the webserver.</li>
|
|
<li>The <kbd>sendmailnow</kbd> parameter has been removed, as it was
|
|
not necessary for any modern version of Sendmail or other Mail Transfer
|
|
Agent.</li>
|
|
<li>When editing a user via the Users administration panel, you can now
|
|
see if they are a Default CC on any component.</li>
|
|
<li>For new installations of Bugzilla, all users will be
|
|
able to see and use the Whining system by default.</li>
|
|
<li>When you are using SSL with Bugzilla, you can now
|
|
turn on the <kbd>strict_transport_security</kbd> parameter to
|
|
send the
|
|
<a href="https://developer.mozilla.org/en/Security/HTTP_Strict_Transport_Security">Strict-Transport-Security</a>
|
|
header with every HTTPS connection, for additional security.</li>
|
|
<li>New code hooks (see their documentation in
|
|
<a href="[% docs_urlbase FILTER html %]api/Bugzilla/Hook.html">Bugzilla::Hook</a>):
|
|
bug_check_can_change_field, search_operator_field_override,
|
|
bugmail_relationships, object_columns, object_update_columns,
|
|
and object_validators. The colchange_columns hook has been removed,
|
|
as it is no longer necessary (buglist_columns will be used for data
|
|
about which columns can be on the [% terms.bug %] list).</li>
|
|
<li>When Bugzilla throws certain types of errors, it will
|
|
now include a "traceback" of where exactly the error occurred in the
|
|
code, to help administrators and developers debug problems.</li>
|
|
<li>There is now a test, <kbd>xt/search.t</kbd>, that assures that all
|
|
of the functionality of <kbd>Bugzilla::Search</kbd> is working properly.
|
|
If you customize the search functionality of Bugzilla,
|
|
you may wish to run this test to assure that your changes are correct.
|
|
You can see more information about running this test by doing
|
|
<kbd>perldoc xt/search.t</kbd> at the command line.</li>
|
|
<li>Bugzilla now sends the
|
|
<a href="https://developer.mozilla.org/en/the_x-frame-options_response_header"><code>X-Frame-Options: SAMEORIGIN</code></a> header
|
|
with every page request in order to prevent "clickjacking" attacks. Note
|
|
that this prevents other domains from displaying Bugzilla
|
|
in an HTML frame.</li>
|
|
</ul>
|
|
|
|
<h4 id="v40_feat_ws_changes">WebService Changes</h4>
|
|
|
|
<ul>
|
|
<li>You can now call some JSON-RPC methods using HTTP GET, in addition to
|
|
using HTTP POST. See the
|
|
<a href="[% docs_urlbase FILTER html %]api/Bugzilla/WebService/Server/JSONRPC.html#Connecting_via_GET">JSON-RPC
|
|
documentation</a> for details.</li>
|
|
<li>You can now update existing [% terms.bugs %] using the
|
|
<a href="[% docs_urlbase FILTER html %]api/Bugzilla/WebService/Bug.html#update">B[% %]ug.update</a>
|
|
function.</li>
|
|
<li>You can now add attachments to [% terms.bugs %] using the
|
|
<a href="[% docs_urlbase FILTER html %]api/Bugzilla/WebService/Bug.html#add_attachment">B[% %]ug.add_attachment</a>
|
|
function.</li>
|
|
<li>The <kbd>B[% %]ug.get</kbd> function now returns all of [% terms.abug %]'s
|
|
information other than comments and attachments.</li>
|
|
<li><kbd>B[% %]ug.get</kbd> no longer returns the <kbd>internals</kbd> hash.</li>
|
|
<li>The <kbd>B[% %]ug.attachments</kbd> function now also returns attachment
|
|
data.</li>
|
|
<li>The following functions now support the <kbd>include_fields</kbd>
|
|
and <kbd>exclude_fields</kbd> arguments: <kbd>B[% %]ug.get</kbd>,
|
|
<kbd>B[% %]ug.search</kbd>, and <kbd>B[% %]ug.attachments</kbd>. Also,
|
|
server-side performance of the WebService is actually increased when
|
|
using these arguments, now, as Bugzilla will no longer
|
|
get data from the database for fields you haven't asked for.</li>
|
|
<li>You can now mark the initial description of [% terms.abug %] as
|
|
private when filing [% terms.abug %] via the <kbd>B[% %]ug.create</kbd>
|
|
function.</li>
|
|
<li>You can now specify groups to put [% terms.abug %] in, in the
|
|
<a href="[% docs_urlbase FILTER html %]api/Bugzilla/WebService/Bug.html#create">B[% %]ug.create</a>
|
|
function. (This also means that you can specify groups when filing
|
|
[%+ terms.abug %] via email_in.pl.)</li>
|
|
<li>The <kbd>User.get</kbd> function now accepts <kbd>groups</kbd>
|
|
and <kbd>group_ids</kbd> arguments, to limit the returned values to
|
|
only users in the specified groups.</li>
|
|
<li>There is a new, undocumented B[% %]ug.possible_duplicates
|
|
function that helps implement the automatic duplicate detection
|
|
system. Because this function is not documented, its API may change
|
|
between releases of Bugzilla.</li>
|
|
<li>You can no longer search using the <kbd>votes</kbd> argument in
|
|
<kbd>B[% %]ug.search</kbd>.</li>
|
|
<li><kbd>B[% %]ug.attachments</kbd> now returns the attachment's description
|
|
using the name "summary" instead of the name "description", to be
|
|
consistent with the fact that [% terms.bug %] summaries are called
|
|
"summary". The value is still <em>also</em> returned as "description",
|
|
for backwards compatibility, but this backwards compatibility will go
|
|
away in Bugzilla 5.0.</li>
|
|
<li>In the return values of various <kbd>B[% %]ug</kbd> functions, the author
|
|
of comments, [% terms.bugs %], and attachments is now called "creator",
|
|
instead of sometimes being called "reporter", "author", or "attacher".
|
|
The old names are retained for backwards-compatibility, and will stay
|
|
around until Bugzilla 5.0.</li>
|
|
</ul>
|
|
|
|
<h2 id="v40_issues">Outstanding Issues</h2>
|
|
|
|
<ul>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=423439">
|
|
[%- terms.Bug %] 423439</a>: Tabs in comments will be converted
|
|
to four spaces, due to a b<!-- -->ug in Perl as of Perl 5.8.8.</li>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=89822">
|
|
[%- terms.Bug %] 89822</a>: When changing multiple [% terms.bugs %] at
|
|
the same time, there is no "mid-air collision" protection.</li>
|
|
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=276230">
|
|
[%- terms.Bug %] 276230</a>: The support for restricting access to
|
|
particular Categories of New Charts is not complete. You should treat
|
|
the 'chartgroup' Param as the only access mechanism available.<br>
|
|
However, charts migrated from Old Charts will be restricted to
|
|
the groups that are marked MANDATORY for the corresponding Product.
|
|
There is currently no way to change this restriction, and the
|
|
groupings will not be updated if the group configuration
|
|
for the Product changes.</li>
|
|
</ul>
|
|
|
|
<h2 id="v40_upgrading">Notes On Upgrading From a Previous Version</h2>
|
|
|
|
<h3>IMPORTANT: Apache Configuration Change</h3>
|
|
|
|
<h4>mod_cgi</h4>
|
|
|
|
<p>If you run Bugzilla under mod_cgi (this is the most common
|
|
configuration, involving a <Directory> block in your Apache config
|
|
file), you will need to update the configuration of Apache for
|
|
Bugzilla. In particular, this line in the Bugzilla
|
|
<kbd><Directory></kbd> block:</p>
|
|
|
|
<blockquote><code>AllowOverride Limit</code></blockquote>
|
|
|
|
<p>needs to become:</p>
|
|
|
|
<blockquote><code>AllowOverride Limit FileInfo Indexes</code></blockquote>
|
|
|
|
<p>For full details on how to configure Apache for Bugzilla,
|
|
see the
|
|
<a href="[% docs_urlbase FILTER html %]configuration.html#http-apache">Configuration</a>
|
|
section of the Bugzilla Guide.</p>
|
|
|
|
<h4>mod_perl</h4>
|
|
|
|
<p>If your Bugzilla runs under mod_perl, the required Apache
|
|
configuration is now simpler. The line that used to look like:</p>
|
|
|
|
<blockquote><code>PerlSwitches -w -T -I/var/www/html/bugzilla
|
|
-I/var/www/html/bugzilla/lib</code></blockquote>
|
|
|
|
<p>Now should be only:</p>
|
|
|
|
<blockquote><code>PerlSwitches -w -T</code></blockquote>
|
|
|
|
<p>The <code>PerlConfigRequire</code> line should stay the same, however.</p>
|
|
|
|
<h3>New .htaccess file</h3>
|
|
|
|
<p>In previous versions of Bugzilla, there was a file
|
|
in Bugzilla's root directory called ".htaccess" that was
|
|
generated by <kbd>checksetup.pl</kbd>. This file is now shipped with
|
|
Bugzilla instead of being generated during installation.</p>
|
|
|
|
<p>If you update via CVS or bzr, you will get a message that your existing
|
|
.htaccess file conflicts with the new one. You must
|
|
<strong>remove your existing .htaccess file</strong> and use the new one
|
|
instead. Continuing to use your old .htaccess file will cause certain new
|
|
features of Bugzilla to not work properly, and may also lead
|
|
to security issues for your system in the future.</p>
|
|
|
|
<h2 id="v40_code_changes">Code Changes Which May Affect Customizations and
|
|
Extensions</h2>
|
|
|
|
<ul>
|
|
<li>In Extensions, if you want to serve files to the user via the web,
|
|
they must now be in a <kbd>web/</kbd> subdirectory of your Extension.
|
|
(For example, <kbd>extensions/Foo/web/</kbd>). <kbd>checksetup.pl</kbd>
|
|
sets permissions on extensions much more strictly now, and files in
|
|
other locations (such as your base <kbd>extensions/Foo/</kbd> directory)
|
|
will no longer be available to Bugzilla users via the web
|
|
under certain configurations.</li>
|
|
<li>Previous versions of Bugzilla used to allow putting a
|
|
single file into the "skins" directory and having that be an entire
|
|
skin. That is no longer allowed, and on upgrade, <kbd>checksetup.pl</kbd>
|
|
will convert any such skins into a directory with a single
|
|
<kbd>global.css</kbd> file in them.</li>
|
|
<li>When updating [% terms.bugs %], you should now use
|
|
<code>$bug->set_all</code> instead of using the individual
|
|
<kbd>set_</kbd> methods. In particular, <kbd>set_all</kbd> is now the
|
|
<em>only</em> way to set the product of [% terms.abug %]. See
|
|
<kbd>process_bug.cgi</kbd> for an example of how <kbd>set_all</kbd>
|
|
should be used.</li>
|
|
<li>You should not insert <script> tags and <link> CSS tags
|
|
into HTML anymore, in Extensions or in your customizations. Instead,
|
|
you should push new values into the <kbd>style_urls</kbd> or
|
|
<kbd>javascript_urls</kbd> parameters. If you have to insert manual
|
|
tags for some reason, be sure to call "FILTER mtime" on the URL. (Search
|
|
for other uses of "FILTER mtime" in the templates to see how it is
|
|
used.)</li>
|
|
<li>When calling <kbd>Bugzilla::BugMail::Send</kbd>, the "changer"
|
|
argument must now be a <kbd>Bugzilla::User</kbd> object, not just
|
|
a login name. The "owner" and "qacontact" arguments are still
|
|
just login names.</li>
|
|
<li>When creating a new subclass of Bugzilla::Object, you should no
|
|
longer use <kbd>UPDATE_VALIDATORS</kbd>. Also, in most cases you will
|
|
no longer need to override <kbd>run_create_validators</kbd>. Instead,
|
|
there is a new constant called
|
|
<a href="[% docs_urlbase FILTER html %]api/Bugzilla/Object.html#VALIDATOR_DEPENDENCIES">VALIDATOR_DEPENDENCIES</a>,
|
|
that specifies that certain fields have to be validated before other fields.
|
|
Then, all validators receive each already-validated value in a hash
|
|
as their fourth argument, so each validator can know the other values
|
|
that were passed in, while an object is being created. For an example of
|
|
how to use <kbd>VALIDATOR_DEPENDENCIES</kbd>, see
|
|
<kbd>Bugzilla/Field.pm</kbd>.</li>
|
|
<li>In previous versions of Bugzilla, you had to call
|
|
<code>Bugzilla->template_inner("")</code> after any time
|
|
that you called <kbd>template_inner</kbd> for a specific language.
|
|
It is no longer necessary to do this second <kbd>template_inner</kbd>
|
|
call.</li>
|
|
<li><kbd>post_bug.cgi</kbd> and <kbd>Bugzilla::Bug->create</kbd> now take
|
|
the <em>names</em> of groups instead of group ids.</li>
|
|
<li>Bugzilla::Bugmail now uses Bugzilla::Bug objects internally instead of
|
|
a lot of direct SQL.</li>
|
|
<li>For sending changes about [% terms.bugs %], there is now a method
|
|
called <kbd>send_changes</kbd> that you can call on Bugzilla::Bug
|
|
objects. For an example of its use, see <kbd>process_bug.cgi</kbd>.</li>
|
|
<li>The <kbd>Bugzilla::Search</kbd> class has been refactored, and should
|
|
now be easier to customize.</li>
|
|
<li>The <kbd>Bugzilla::Util::lsearch</kbd> function is gone. Use
|
|
<kbd>firstidx</kbd> from <kbd>List::MoreUtils</kbd>, instead.</li>
|
|
<li>Bugzilla now includes YUI 2.8.2.</li>
|
|
<li><kbd>long_list.cgi</kbd>, <kbd>showattachment.cgi</kbd> and
|
|
<kbd>xml.cgi</kbd> are deprecated scripts which are no longer actively
|
|
used since Bugzilla 2.19. These scripts will be removed in
|
|
Bugzilla 4.2.</li>
|
|
</ul>
|
|
|
|
<h2 id="v40_previous">Release Notes For Previous Versions</h2>
|
|
|
|
<p><a href="page.cgi?id=release-notes3.html">Release Notes for
|
|
Bugzilla 3.x and Earlier</a></p>
|
|
|
|
[% INCLUDE global/footer.html.tmpl %]
|
|
|
|
[% BLOCK db_req %]
|
|
[% SET m = DB_MODULE.$db %]
|
|
<h3 id="v40_req_[% db FILTER html %]">For [% m.name FILTER html %] Users</h3>
|
|
|
|
<ul>
|
|
<li>[% m.name FILTER html %]
|
|
[%+ '<span class="req_new">' IF db_new %]v[% m.db_version FILTER html %]
|
|
[% '</span>' IF db_new %]
|
|
</li>
|
|
<li><strong>perl module:</strong>
|
|
[%+ m.dbd.module FILTER html %]
|
|
[% '<span class="req_new">' IF dbd_new %]v[% m.dbd.version FILTER html %]
|
|
[% '</span>' IF dbd_new %]</li>
|
|
</ul>
|
|
[% END %]
|
|
|
|
|
|
[% BLOCK req_table %]
|
|
<table class="req_table">
|
|
<tr>
|
|
<th>Module</th> <th>Version</th>
|
|
[% IF include_feature %]
|
|
<th>Enables Feature</th>
|
|
[% END %]
|
|
</tr>
|
|
[% FOREACH req = reqs %]
|
|
<tr>
|
|
<td [% ' class="req_new"' IF new.contains(req.package) %]>
|
|
[%- req.module FILTER html %]</td>
|
|
<td [% ' class="req_new"' IF updated.contains(req.package)
|
|
OR new.contains(req.package) %]>
|
|
[%- IF req.version == 0 %]
|
|
(Any)
|
|
[% ELSE %]
|
|
[%- req.version FILTER html %]
|
|
[% END %]
|
|
</td>
|
|
[% IF include_feature %]
|
|
<td>[% req.feature.join(', ') FILTER html %]</td>
|
|
[% END %]
|
|
</tr>
|
|
[% END %]
|
|
</table>
|
|
[% END %]
|