From fa306daf3295b6ce67d3b3657259ee265f10a605 Mon Sep 17 00:00:00 2001 From: "mkanat%bugzilla.org" <> Date: Fri, 23 Feb 2007 02:41:29 +0000 Subject: Bug 349423: Release Notes for Bugzilla 3.0 Patch By Max Kanat-Alexander r=LpSolit, a=mkanat --- template/en/default/pages/release-notes.html.tmpl | 747 ++++++++++++++++++++++ 1 file changed, 747 insertions(+) create mode 100644 template/en/default/pages/release-notes.html.tmpl (limited to 'template/en/default/pages') diff --git a/template/en/default/pages/release-notes.html.tmpl b/template/en/default/pages/release-notes.html.tmpl new file mode 100644 index 000000000..b81eb28d7 --- /dev/null +++ b/template/en/default/pages/release-notes.html.tmpl @@ -0,0 +1,747 @@ +[%# 1.0@bugzilla.org %] +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved. + # Portions created by Everything Solved are Copyright (C) 2006 + # Everything Solved. All Rights Reserved. + # + # Contributor(s): Max Kanat-Alexander + #%] + +[% PROCESS global/variables.none.tmpl %] +[% INCLUDE global/header.html.tmpl + title = "$terms.Bugzilla 3.0 Release Notes" + style_urls = ['skins/standard/release-notes.css'] +%] + +

These release notes are currently a DRAFT.

+ +

Table of Contents

+ + + +

Introduction

+ +

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

+ +

If you're upgrading, make sure to read How to + Upgrade From An Older Version. If you are upgrading from a release + before 2.22, make sure to read the release notes for all the + previous versions in between your version + and [% terms.Bugzilla %] 3.0.

+ +

Minimum Requirements

+ +

Any requirements that are new since 2.22 will look like + this.

+ + + + +

Perl

+ + + +[% PROCESS db_req db='mysql' %] + +[% PROCESS db_req db='pg' %] + +

Required Perl Modules

+ +[% INCLUDE req_table reqs = REQUIRED_MODULES + new = ['Email-MIME-Modifier', 'Email-Send'] + updated = ['DBI'] %] + +

Optional Perl Modules

+ +

The following perl modules, if installed, enable various + features of [% terms.Bugzilla %]:

+ +[% INCLUDE req_table reqs = OPTIONAL_MODULES + new = ['libwww-perl', 'SOAP-Lite', 'mod_perl', + 'Apache-DBI', 'Email-MIME-Attachment-Stripper', + 'Email-Reply'] + updated = ['CGI'] + include_feature = 1 %] + +

New Features and Improvements

+ + + +

Custom Fields

+ +

[% terms.Bugzilla %] now includes very basic support for custom fields.

+ +

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

+ +

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

+ +

mod_perl Support

+ +

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

+ +

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

+ +

mod_perl brings total enterprise-level performance to + [% terms.Bugzilla %], allowing a single installation to efficiently and + effectively support a large number of concurrent users.

+ +

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

+ +

Shared Saved Searches

+ +

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

+ +

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

+ +

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

+ +

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

+ +

Attachments and Flags on New + [% terms.Bugs %]

+ +

You can now add an attachment while you are filing a new + [% terms.bug %].

+ +

You can also set flags on the [% terms.bug %] and on attachments, while + filing a new [% terms.bug %].

+ +

Custom Resolutions

+ +

You can now customize the list of resolutions available + in [% terms.Bugzilla %], including renaming the default resolutions.

+ +

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

+ +

Per-Product Permissions

+ +

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

+ +

User Interface Improvements

+ +

There has been some work on the user interface for [% terms.Bugzilla %] 3.0, + including:

+ + + +

XML-RPC Interface

+ +

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

+ +

Documentation can be found in the + [% terms.Bugzilla %] + API Docs, in the various Bugzilla::WebService modules.

+ +

Skins

+ +

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

+ +

We currently don't have any alternate skins shipping with + [% terms.Bugzilla %]. If you write an alternate skin, please + let us know!

+ +

Unchangeable Fields Appear + Unchangeable

+ +

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

+ +

All Emails in Templates

+ +

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

+ +

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

+ +

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

+ +

No More Double-Filed [% terms.Bugs %]

+ +

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

+ +

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

+ +

Default CC List for Components

+ +

You can specify a list of users who will always be added to + the CC list of new [% terms.bugs %] in a component.

+ +

File/Modify [% terms.Bugs %] By Email

+ +

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

+ +

For more details see the documentation + for email_in.pl.

+ +

Users Who Get All [% terms.Bug %] + Notifications

+ +

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

+ +

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

+ +

Improved UTF-8 Support

+ +

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

+ +

Automatic Update Notification

+ +

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

+ +

You can control these notifications by changing the + upgrade_notification parameter.

+ +

Welcome Page for New Installs

+ +

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

+ +

QuickSearch Plugin for IE7 and Firefox 2

+ +

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

+ +

Other Enhancements and Changes

+ +

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

+ +

Enhancements That Affect [% terms.Bugzilla %] Users

+ + + +

Enhancements For Administrators

+ + + +

Outstanding Issues

+ + + +

How to Upgrade From An Older Version

+ +

Notes For Upgraders

+ + + +

Steps For Upgrading

+ +
    +
  1. Read these entire Release Notes, particularly the "Notes for + Upgraders" section above.
  2. + +
  3. View the Sanity Check page on your + installation before upgrading. Attempt to fix all warnings that + the page produces before you go any further, or you may experience + problems during your upgrade.
  4. + +
  5. Make a backup of the [% terms.Bugzilla %] database before you upgrade, + perhaps by using mysqldump. THIS IS VERY + IMPORTANT. If anything goes wrong during the upgrade, your + installation can be corrupted beyond recovery. Having a backup keeps you + safe. + +

    Example: mysqldump -u root -p [% terms.bugs %] > + [% terms.bugs %]-db.sql

  6. + +
  7. Replace the files in your installation with the new version of + [% terms.Bugzilla %], or you can try to use CVS to upgrade. + +

    You can also use a brand-new [% terms.Bugzilla %] directory, as long + as you copy over the old data/ directory and the + localconfig file to the new installation.

  8. + +
  9. Now follow the standard + + [%- terms.Bugzilla %] installation process.
  10. + +
  11. Run checksetup.pl after you install the new version.
  12. + +
  13. View the Sanity Check page again after + you run checksetup.pl.
  14. + +
  15. It is recommended that, if possible, you fix any problems you find + immediately. Failure to do this may mean that [% terms.Bugzilla %] will + not work correctly. Be aware that if the sanity check page contains more + errors after an upgrade, it doesn't necessarily mean there are more + errors in your database than there were before, as additional tests + are added to the sanity check over time, and it is possible that those + errors weren't being checked for in the old version.
  16. +
+ +

Code Changes Which May Affect + Customizations

+ + + +

Packagers: Location + Variables Have Moved

+ +

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

+ +

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

+ +

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

+ +

Hooks!

+ +

[% terms.Bugzilla %] now supports a code hook mechanism. See the + documentation for + Bugzilla::Hook + for more details.

+ +

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

+ +

If you need more hooks, please + File a + bug!

+ +

API Documentation

+ +

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

+ +

Elimination of globals.pl

+ +

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

+ +

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

+ +

Cleaned Up Variable Scoping Issues

+ +

In normal perl, you can have code like this:

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

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

+ +

No More SendSQL

+ +

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

+ +

For more information about how to use + DBI with + [% terms.Bugzilla %], see the + Developer's + Guide Section About DBI

+ +

Auth Re-write

+ +

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

+ +

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

+ +

Bugzilla::Object

+ +

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

+ +

Bugzilla->request-cache

+ +

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

+ +

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

+ +

Other Changes

+ + + +

Release Notes For Previous Versions

+ +

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

+ +[% INCLUDE global/footer.html.tmpl %] + +[% BLOCK db_req %] + [% SET m = DB_MODULE.$db %] +

For [% m.name FILTER html %] + Users

+ + +[% END %] + + +[% BLOCK req_table %] + + + + [% IF include_feature %] + + [% END %] + + [% FOREACH req = reqs %] + + + + [% IF include_feature %] + + [% END %] + + [% END %] +
Module VersionEnables Feature
+ [%- req.module FILTER html %] + [%- IF req.version == 0 %] + (Any) + [% ELSE %] + [%- req.version FILTER html %] + [% END %] + [% req.feature FILTER html %]
+[% END %] -- cgit v1.2.3-24-g4f1b