summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Bugzilla/Bug.pm5
-rw-r--r--Bugzilla/Chart.pm2
-rw-r--r--Bugzilla/Config/Query.pm4
-rw-r--r--Bugzilla/DB.pm4
-rw-r--r--Bugzilla/DB/Schema.pm2
-rw-r--r--Bugzilla/Install.pm36
-rw-r--r--Bugzilla/Install/DB.pm12
-rw-r--r--Bugzilla/Migrate.pm2
-rw-r--r--Bugzilla/Migrate/Gnats.pm4
-rw-r--r--Bugzilla/Search/Quicksearch.pm4
-rw-r--r--Bugzilla/Status.pm2
-rwxr-xr-xchecksetup.pl1
-rwxr-xr-xcontrib/bugzilla-submit/bugzilla-submit2
-rw-r--r--contrib/convert-workflow.pl111
-rwxr-xr-xcontrib/jb2bz.py8
-rw-r--r--docs/en/images/bzLifecycle.xml4
-rw-r--r--docs/en/xml/administration.xml8
-rw-r--r--docs/en/xml/installation.xml2
-rwxr-xr-xshowdependencygraph.cgi3
-rw-r--r--template/en/default/admin/params/bugchange.html.tmpl10
-rw-r--r--template/en/default/admin/params/mta.html.tmpl2
-rw-r--r--template/en/default/admin/products/create.html.tmpl2
-rw-r--r--template/en/default/email/whine.txt.tmpl13
-rw-r--r--template/en/default/global/field-descs.none.tmpl2
-rw-r--r--template/en/default/global/messages.html.tmpl3
-rw-r--r--template/en/default/list/list.ics.tmpl2
-rw-r--r--template/en/default/pages/fields.html.tmpl52
-rw-r--r--template/en/default/pages/quicksearch.html.tmpl4
-rwxr-xr-xwhineatnews.pl11
29 files changed, 226 insertions, 91 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm
index 23a92b080..a0c15bafa 100644
--- a/Bugzilla/Bug.pm
+++ b/Bugzilla/Bug.pm
@@ -1323,7 +1323,10 @@ sub _check_bug_status {
}
- if (ref $invocant && $new_status->name eq 'ASSIGNED'
+ if (ref $invocant
+ && ($new_status->name eq 'IN_PROGRESS'
+ # Backwards-compat for the old default workflow.
+ or $new_status->name eq 'ASSIGNED')
&& Bugzilla->params->{"usetargetmilestone"}
&& Bugzilla->params->{"musthavemilestoneonaccept"}
# musthavemilestoneonaccept applies only if at least two
diff --git a/Bugzilla/Chart.pm b/Bugzilla/Chart.pm
index 58089d29e..760db135d 100644
--- a/Bugzilla/Chart.pm
+++ b/Bugzilla/Chart.pm
@@ -67,7 +67,7 @@ sub init {
#
# The URL encoding is:
# line0=67&line0=73&line1=81&line2=67...
- # &label0=B+/+R+/+NEW&label1=...
+ # &label0=B+/+R+/+CONFIRMED&label1=...
# &select0=1&select3=1...
# &cumulate=1&datefrom=2002-02-03&dateto=2002-04-04&ctype=html...
# &gt=1&labelgt=Grand+Total
diff --git a/Bugzilla/Config/Query.pm b/Bugzilla/Config/Query.pm
index 6d570e01a..821f09fc6 100644
--- a/Bugzilla/Config/Query.pm
+++ b/Bugzilla/Config/Query.pm
@@ -58,13 +58,13 @@ sub get_param_list {
{
name => 'mybugstemplate',
type => 't',
- default => 'buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailassigned_to1=1&emailreporter1=1&emailtype1=exact&email1=%userid%&field0-0-0=bug_status&type0-0-0=notequals&value0-0-0=UNCONFIRMED&field0-0-1=reporter&type0-0-1=equals&value0-0-1=%userid%'
+ default => 'buglist.cgi?resolution=---&emailassigned_to1=1&emailreporter1=1&emailtype1=exact&email1=%userid%'
},
{
name => 'defaultquery',
type => 't',
- default => 'bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailassigned_to1=1&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailqa_contact2=1&emaillongdesc3=1&order=Importance&long_desc_type=substring'
+ default => 'resolution=---&emailassigned_to1=1&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailqa_contact2=1&emaillongdesc3=1&order=Importance&long_desc_type=substring'
},
{
diff --git a/Bugzilla/DB.pm b/Bugzilla/DB.pm
index 8c1aba8dd..7173ff896 100644
--- a/Bugzilla/DB.pm
+++ b/Bugzilla/DB.pm
@@ -68,8 +68,8 @@ use constant ENUM_DEFAULTS => {
priority => ["Highest", "High", "Normal", "Low", "Lowest", "---"],
op_sys => ["All","Windows","Mac OS","Linux","Other"],
rep_platform => ["All","PC","Macintosh","Other"],
- bug_status => ["UNCONFIRMED","NEW","ASSIGNED","REOPENED","RESOLVED",
- "VERIFIED","CLOSED"],
+ bug_status => ["UNCONFIRMED","CONFIRMED","IN_PROGRESS","RESOLVED",
+ "VERIFIED"],
resolution => ["","FIXED","INVALID","WONTFIX", "DUPLICATE","WORKSFORME"],
};
diff --git a/Bugzilla/DB/Schema.pm b/Bugzilla/DB/Schema.pm
index 0791cad98..4837ccc5f 100644
--- a/Bugzilla/DB/Schema.pm
+++ b/Bugzilla/DB/Schema.pm
@@ -1223,7 +1223,7 @@ use constant ABSTRACT_SCHEMA => {
defaultmilestone => {TYPE => 'varchar(20)',
NOTNULL => 1, DEFAULT => "'---'"},
allows_unconfirmed => {TYPE => 'BOOLEAN', NOTNULL => 1,
- DEFAULT => 'FALSE'},
+ DEFAULT => 'TRUE'},
],
INDEXES => [
products_name_idx => {FIELDS => ['name'],
diff --git a/Bugzilla/Install.pm b/Bugzilla/Install.pm
index e90fe41db..3754c0787 100644
--- a/Bugzilla/Install.pm
+++ b/Bugzilla/Install.pm
@@ -37,6 +37,24 @@ use Bugzilla::User::Setting;
use Bugzilla::Util qw(get_text);
use Bugzilla::Version;
+use constant STATUS_WORKFLOW => (
+ [undef, 'UNCONFIRMED'],
+ [undef, 'CONFIRMED'],
+ [undef, 'IN_PROGRESS'],
+ ['UNCONFIRMED', 'CONFIRMED'],
+ ['UNCONFIRMED', 'IN_PROGRESS'],
+ ['UNCONFIRMED', 'RESOLVED'],
+ ['CONFIRMED', 'IN_PROGRESS'],
+ ['CONFIRMED', 'RESOLVED'],
+ ['IN_PROGRESS', 'CONFIRMED'],
+ ['IN_PROGRESS', 'RESOLVED'],
+ ['RESOLVED', 'CONFIRMED'],
+ ['RESOLVED', 'VERIFIED'],
+ ['VERIFIED', 'CONFIRMED'],
+ # The RESOLVED/VERIFIED to UNCONFIRMED transition is enabled specially
+ # in the code for bugs that haven't been confirmed.
+);
+
sub SETTINGS {
return {
# 2005-03-03 travis@sedsystems.ca -- Bug 41972
@@ -232,6 +250,24 @@ sub create_default_product {
}
+sub init_workflow {
+ my $dbh = Bugzilla->dbh;
+ my $has_workflow = $dbh->selectrow_array('SELECT 1 FROM status_workflow');
+ return if $has_workflow;
+
+ print get_text('install_workflow_init'), "\n";
+
+ my %status_ids = @{ $dbh->selectcol_arrayref(
+ 'SELECT value, id FROM bug_status', {Columns=>[1,2]}) };
+
+ foreach my $pair (STATUS_WORKFLOW) {
+ my $old_id = $pair->[0] ? $status_ids{$pair->[0]} : undef;
+ my $new_id = $status_ids{$pair->[1]};
+ $dbh->do('INSERT INTO status_workflow (old_status, new_status)
+ VALUES (?,?)', undef, $old_id, $new_id);
+ }
+}
+
sub create_admin {
my ($params) = @_;
my $dbh = Bugzilla->dbh;
diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm
index 069096800..47e881e8f 100644
--- a/Bugzilla/Install/DB.pm
+++ b/Bugzilla/Install/DB.pm
@@ -530,7 +530,7 @@ sub update_table_definitions {
_fix_uppercase_index_names();
# 2007-05-17 LpSolit@gmail.com - Bug 344965
- _initialize_workflow($old_params);
+ _initialize_workflow_for_upgrade($old_params);
# 2007-08-08 LpSolit@gmail.com - Bug 332149
$dbh->bz_add_column('groups', 'icon_url', {TYPE => 'TINYTEXT'});
@@ -2919,10 +2919,12 @@ sub _fix_uppercase_index_names {
}
}
-sub _initialize_workflow {
+sub _initialize_workflow_for_upgrade {
my $old_params = shift;
my $dbh = Bugzilla->dbh;
+ my $had_is_open = $dbh->bz_column_info('bug_status', 'is_open');
+
$dbh->bz_add_column('bug_status', 'is_open',
{TYPE => 'BOOLEAN', NOTNULL => 1, DEFAULT => 'TRUE'});
@@ -2955,6 +2957,10 @@ sub _initialize_workflow {
join(', ', @closed_statuses) . ')');
}
+ # We only populate the workflow here if we're upgrading from a version
+ # before 3.2.
+ return if $had_is_open;
+
# Populate the status_workflow table. We do nothing if the table already
# has entries. If all bug status transitions have been deleted, the
# workflow will be restored to its default schema.
@@ -2974,7 +2980,7 @@ sub _initialize_workflow {
# confirmed bugs, so we use this parameter here.
my $reassign = $old_params->{'commentonreassign'} || 0;
- # This is the default workflow.
+ # This is the default workflow for upgrading installations.
my @workflow = ([undef, 'UNCONFIRMED', $create],
[undef, 'NEW', $create],
[undef, 'ASSIGNED', $create],
diff --git a/Bugzilla/Migrate.pm b/Bugzilla/Migrate.pm
index 2ae638e4f..e72c5c52e 100644
--- a/Bugzilla/Migrate.pm
+++ b/Bugzilla/Migrate.pm
@@ -90,7 +90,7 @@ END
# bug_status => {
# # Translate "Handled" into "RESOLVED".
# "Handled" => "RESOLVED",
-# "In Progress" => "ASSIGNED",
+# "In Progress" => "IN_PROGRESS",
# },
#
# priority => {
diff --git a/Bugzilla/Migrate/Gnats.pm b/Bugzilla/Migrate/Gnats.pm
index ff24f73b5..db628b7d5 100644
--- a/Bugzilla/Migrate/Gnats.pm
+++ b/Bugzilla/Migrate/Gnats.pm
@@ -67,8 +67,8 @@ use constant VALUE_MAP => {
'non-critical' => 'normal',
},
bug_status => {
- 'open' => 'NEW',
- 'analyzed' => 'ASSIGNED',
+ 'open' => 'CONFIRMED',
+ 'analyzed' => 'IN_PROGRESS',
'suspended' => 'RESOLVED',
'feedback' => 'RESOLVED',
'released' => 'VERIFIED',
diff --git a/Bugzilla/Search/Quicksearch.pm b/Bugzilla/Search/Quicksearch.pm
index 7839c4fd5..1a2877674 100644
--- a/Bugzilla/Search/Quicksearch.pm
+++ b/Bugzilla/Search/Quicksearch.pm
@@ -273,8 +273,8 @@ sub _handle_status_and_resolution {
elsif ($words->[0] eq 'OPEN') {
shift @$words;
}
- elsif ($words->[0] =~ /^[A-Z]+(,[A-Z]+)*$/) {
- # e.g. NEW,ASSI,REOP,FIX
+ elsif ($words->[0] =~ /^[A-Z_]+(,[_A-Z]+)*$/) {
+ # e.g. CON,IN_PR,FIX
undef %states;
if (matchPrefixes(\%states,
\%resolutions,
diff --git a/Bugzilla/Status.pm b/Bugzilla/Status.pm
index 0dd17ae39..ffef600de 100644
--- a/Bugzilla/Status.pm
+++ b/Bugzilla/Status.pm
@@ -241,7 +241,7 @@ Bugzilla::Status - Bug status class.
use Bugzilla::Status;
- my $bug_status = new Bugzilla::Status({name => 'ASSIGNED'});
+ my $bug_status = new Bugzilla::Status({ name => 'IN_PROGRESS' });
my $bug_status = new Bugzilla::Status(4);
my @closed_bug_statuses = closed_bug_statuses();
diff --git a/checksetup.pl b/checksetup.pl
index 8993ff08d..0e89447fe 100755
--- a/checksetup.pl
+++ b/checksetup.pl
@@ -190,6 +190,7 @@ Bugzilla::Field::populate_field_definitions();
###########################################################################
Bugzilla::Install::DB::update_table_definitions(\%old_params);
+Bugzilla::Install::init_workflow();
###########################################################################
# Bugzilla uses --GROUPS-- to assign various rights to its users.
diff --git a/contrib/bugzilla-submit/bugzilla-submit b/contrib/bugzilla-submit/bugzilla-submit
index e1e9b64d8..d98e7de8d 100755
--- a/contrib/bugzilla-submit/bugzilla-submit
+++ b/contrib/bugzilla-submit/bugzilla-submit
@@ -152,7 +152,7 @@ def ensure_defaults(data):
if 'rep_platform' not in data:
data['rep_platform'] = 'PC'
if 'bug_status' not in data:
- data['bug_status'] = 'NEW'
+ data['bug_status'] = 'CONFIRMED'
if 'bug_severity' not in data:
data['bug_severity'] = 'normal'
if 'bug_file_loc' not in data:
diff --git a/contrib/convert-workflow.pl b/contrib/convert-workflow.pl
new file mode 100644
index 000000000..c01b751c0
--- /dev/null
+++ b/contrib/convert-workflow.pl
@@ -0,0 +1,111 @@
+#!/usr/bin/perl -w
+#
+# 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, Inc.
+# Portions created by the Initial Developer are Copyright (C) 2009 the
+# Initial Developer. All Rights Reserved.
+#
+# Contributor(s):
+# Max Kanat-Alexander <mkanat@bugzilla.org>
+
+use strict;
+use warnings;
+use lib qw(. lib);
+
+use Bugzilla;
+use Bugzilla::Config qw(:admin);
+use Bugzilla::Status;
+
+my $confirmed = new Bugzilla::Status({ name => 'CONFIRMED' });
+my $in_progress = new Bugzilla::Status({ name => 'IN_PROGRESS' });
+
+if ($confirmed and $in_progress) {
+ print "You are already using the new workflow.\n";
+ exit 1;
+}
+
+print <<END;
+WARNING: This will convert the status of all bugs using the following
+system:
+
+ "NEW" will become "CONFIRMED"
+ "ASSIGNED" will become "IN_PROGRESS"
+ "REOPENED" will become "CONFIRMED" (and the "REOPENED" status will be removed)
+ "CLOSED" will become "VERIFIED" (and the "CLOSED" status will be removed)
+
+This change will be immediate. The history of each bug will also be changed
+so that it appears that these statuses were always in existence.
+
+Emails will not be sent for the change.
+
+To continue, press any key, or press Ctrl-C to stop this program...
+END
+getc;
+
+my $dbh = Bugzilla->dbh;
+my %translation = (
+ NEW => 'CONFIRMED',
+ ASSIGNED => 'IN_PROGRESS',
+ REOPENED => 'CONFIRMED',
+ CLOSED => 'VERIFIED',
+);
+
+my $status_field = Bugzilla::Field->check('bug_status');
+$dbh->bz_start_transaction();
+while (my ($from, $to) = each %translation) {
+ print "Converting $from to $to...\n";
+ $dbh->do('UPDATE bugs SET bug_status = ? WHERE bug_status = ?',
+ undef, $to, $from);
+
+ if (Bugzilla->params->{'duplicate_or_move_bug_status'} eq $from) {
+ SetParam('duplicate_or_move_bug_status', $to);
+ write_params();
+ }
+
+ foreach my $what (qw(added removed)) {
+ $dbh->do("UPDATE bugs_activity SET $what = ?
+ WHERE fieldid = ? AND $what = ?",
+ undef, $to, $status_field->id, $from);
+ }
+
+ # Delete any transitions where it now appears that
+ # a bug moved from a status to itself.
+ $dbh->do('DELETE FROM bugs_activity WHERE fieldid = ? AND added = removed',
+ undef, $status_field->id);
+
+ # If the new status already exists, just delete the old one, but retain
+ # the workflow items from it.
+ if (my $existing = new Bugzilla::Status({ name => $to })) {
+ $dbh->do('DELETE FROM bug_status WHERE value = ?', undef, $from);
+ }
+ # Otherwise, rename the old status to the new one.
+ else {
+ $dbh->do('UPDATE bug_status SET value = ? WHERE value = ?',
+ undef, $to, $from);
+ }
+}
+
+$dbh->bz_commit_transaction();
+
+print <<END;
+Done. There are some things you may want to fix, now:
+
+ * You may want to run ./collectstats.pl --regenerate to regenerate
+ data for the Old Charts system.
+ * You may have to fix the Status Workflow using the Status Workflow
+ panel in "Administration".
+ * You will probably want to update the "mybugstemplate" and "defaultquery"
+ parameters using the Parameters panel in "Administration". (Just
+ resetting them to the default will work.)
+END
diff --git a/contrib/jb2bz.py b/contrib/jb2bz.py
index e2f502927..55cb056b5 100755
--- a/contrib/jb2bz.py
+++ b/contrib/jb2bz.py
@@ -28,7 +28,7 @@ if not mimetypes.types_map.has_key('.doc'):
if not mimetypes.encodings_map.has_key('.bz2'):
mimetypes.encodings_map['.bz2'] = "bzip2"
-bug_status='NEW'
+bug_status='CONFIRMED'
component="default"
version=""
product="" # this is required, the rest of these are defaulted as above
@@ -265,8 +265,8 @@ def usage():
Where OPTIONS are one or more of the following:
-h This help information.
- -s STATUS One of UNCONFIRMED, NEW, ASSIGNED, REOPENED, RESOLVED, VERIFIED, CLOSED
- (default is NEW)
+ -s STATUS One of UNCONFIRMED, CONFIRMED, IN_PROGRESS, RESOLVED, VERIFIED
+ (default is CONFIRMED)
-c COMPONENT The component to attach to each bug as it is important. This should be
valid component for the Product.
-v VERSION Version to assign to these defects.
@@ -285,7 +285,7 @@ def main():
for o,a in opts:
if o == "-s":
- if a in ('UNCONFIRMED','NEW','ASSIGNED','REOPENED','RESOLVED','VERIFIED','CLOSED'):
+ if a in ('UNCONFIRMED','CONFIRMED','IN_PROGRESS','RESOLVED','VERIFIED'):
bug_status = a
elif o == '-c':
component = a
diff --git a/docs/en/images/bzLifecycle.xml b/docs/en/images/bzLifecycle.xml
index dda8ac48a..dc1df1e17 100644
--- a/docs/en/images/bzLifecycle.xml
+++ b/docs/en/images/bzLifecycle.xml
@@ -419,7 +419,7 @@
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#NEW#</dia:string>
+ <dia:string>#CONFIRMED#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="80" name="Helvetica"/>
@@ -467,7 +467,7 @@
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
- <dia:string>#ASSIGNED#</dia:string>
+ <dia:string>#IN_PROGRESS#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="80" name="Helvetica"/>
diff --git a/docs/en/xml/administration.xml b/docs/en/xml/administration.xml
index 2a05404f1..884284365 100644
--- a/docs/en/xml/administration.xml
+++ b/docs/en/xml/administration.xml
@@ -771,7 +771,7 @@
<listitem>
<para>
Set this to the number of days you want to let bugs go
- in the NEW or REOPENED state before notifying people they have
+ in the CONFIRMED state before notifying people they have
untouched new bugs. If you do not plan to use this feature, simply
do not set up the whining cron job described in the installation
instructions, or set this value to "0" (never whine).
@@ -1239,7 +1239,7 @@
basis. The number of <quote>votes</quote> available to
users is set per-product, as is the number of votes
required to move a bug automatically from the UNCONFIRMED
- status to the NEW status.
+ status to the CONFIRMED status.
</para>
<para>
@@ -2547,7 +2547,7 @@ ReadOnly: ENTRY, NA/NA, CANEDIT
This allows developers to gauge
user need for a particular enhancement or bugfix. By allowing bugs with
a certain number of votes to automatically move from "UNCONFIRMED" to
- "NEW", users of the bug system can help high-priority bugs garner
+ "CONFIRMED", users of the bug system can help high-priority bugs garner
attention so they don't sit for a long time awaiting triage.</para>
<para>To modify Voting settings:</para>
@@ -2576,7 +2576,7 @@ ReadOnly: ENTRY, NA/NA, CANEDIT
<para><emphasis>Number of votes a bug in this product needs to
automatically get out of the UNCONFIRMED state</emphasis>:
Setting this field to "0" disables the automatic move of
- bugs from UNCONFIRMED to NEW.
+ bugs from UNCONFIRMED to CONFIRMED.
</para>
</listitem>
diff --git a/docs/en/xml/installation.xml b/docs/en/xml/installation.xml
index bffcb9b4f..b1f4b9ccb 100644
--- a/docs/en/xml/installation.xml
+++ b/docs/en/xml/installation.xml
@@ -1494,7 +1494,7 @@ c:\perl\bin\perl.exe -xc:\bugzilla -wT "%s" %s
<para>What good are
bugs if they're not annoying? To help make them more so you
can set up Bugzilla's automatic whining system to complain at engineers
- which leave their bugs in the NEW or REOPENED state without triaging them.
+ which leave their bugs in the CONFIRMED state without triaging them.
</para>
<para>
This can be done by adding the following command as a daily
diff --git a/showdependencygraph.cgi b/showdependencygraph.cgi
index 5fadce998..162dd2afb 100755
--- a/showdependencygraph.cgi
+++ b/showdependencygraph.cgi
@@ -199,9 +199,6 @@ my $sth = $dbh->prepare(
foreach my $k (keys(%seen)) {
# Retrieve bug information from the database
my ($stat, $resolution, $summary) = $dbh->selectrow_array($sth, undef, $k);
- $stat ||= 'NEW';
- $resolution ||= '';
- $summary ||= '';
# Resolution and summary are shown only if user can see the bug
if (!Bugzilla->user->can_see_bug($k)) {
diff --git a/template/en/default/admin/params/bugchange.html.tmpl b/template/en/default/admin/params/bugchange.html.tmpl
index 9f456ee6f..15d4f1e29 100644
--- a/template/en/default/admin/params/bugchange.html.tmpl
+++ b/template/en/default/admin/params/bugchange.html.tmpl
@@ -23,6 +23,10 @@
desc = "Set up $terms.bug change policies"
%]
+[% PROCESS "global/field-descs.none.tmpl" %]
+
+[% accept_status = display_value('bug_status', 'IN_PROGRESS') FILTER html %]
+
[% param_descs = {
duplicate_or_move_bug_status => "When $terms.abug is marked as a duplicate of another one " _
"or is moved to another installation, use this $terms.bug status."
@@ -37,8 +41,10 @@
"If off, then all $terms.bugs initially have the default " _
"milestone for the product being filed in.",
- musthavemilestoneonaccept => "If you are using Target Milestone, do you want to require that " _
- "the milestone be set in order for a user to ACCEPT a ${terms.bug}?",
+ musthavemilestoneonaccept =>
+ "If you are using ${field_descs.target_milestone}, do you want to require"
+ _ " that the milestone be set in order for a user to set"
+ _ " ${terms.abug}'s status to ${accept_status}?",
commentonchange_resolution => "If this option is on, the user needs to enter a short " _
"comment if the resolution of the $terms.bug changes.",
diff --git a/template/en/default/admin/params/mta.html.tmpl b/template/en/default/admin/params/mta.html.tmpl
index 872db801a..5391a4fc9 100644
--- a/template/en/default/admin/params/mta.html.tmpl
+++ b/template/en/default/admin/params/mta.html.tmpl
@@ -68,7 +68,7 @@
" $terms.Bugzilla and your SMTP server. You can use this to" _
" troubleshoot email problems.",
- whinedays => "The number of days that we'll let a $terms.bug sit untouched in a NEW " _
+ whinedays => "The number of days that we'll let a $terms.bug sit untouched in a CONFIRMED " _
"state before our cronjob will whine at the owner.<br> " _
"Set to 0 to disable whining.",
diff --git a/template/en/default/admin/products/create.html.tmpl b/template/en/default/admin/products/create.html.tmpl
index 6ae400e27..1b50661cf 100644
--- a/template/en/default/admin/products/create.html.tmpl
+++ b/template/en/default/admin/products/create.html.tmpl
@@ -32,7 +32,7 @@
product.is_active = 1,
version = "unspecified",
product.defaultmilestone = constants.DEFAULT_MILESTONE
- product.allows_unconfirmed = 0
+ product.allows_unconfirmed = 1
%]
<form method="post" action="editproducts.cgi">
diff --git a/template/en/default/email/whine.txt.tmpl b/template/en/default/email/whine.txt.tmpl
index e90480e8b..32d8da8a0 100644
--- a/template/en/default/email/whine.txt.tmpl
+++ b/template/en/default/email/whine.txt.tmpl
@@ -30,9 +30,8 @@ You have one or more [% terms.bugs %] assigned to you in the [% terms.Bugzilla %
[% terms.bug %] tracking system ([% urlbase %]) that require
attention.
-All of these [% terms.bugs %] are in the [% display_value("bug_status", "NEW") %] or
-[%= display_value("bug_status", "REOPENED") %] state, and have not been
-touched in [% Param("whinedays") %] days or more.
+All of these [% terms.bugs %] are in the [% display_value("bug_status", "CONFIRMED") %]
+state, and have not been touched in [% Param("whinedays") %] days or more.
You need to take a look at them, and decide on an initial action.
Generally, this means one of three things:
@@ -44,17 +43,17 @@ Generally, this means one of three things:
sure that the Component field seems reasonable, and then use the
"Reset Assignee to default" option.)
(3) You decide the [% terms.bug %] belongs to you, but you can't solve it this moment.
- Accept the [% terms.bug %] by setting the status to [% display_value("bug_status", "ASSIGNED") %].
+ Accept the [% terms.bug %] by setting the status to [% display_value("bug_status", "IN_PROGRESS") %].
-To get a list of all [% display_value("bug_status", "NEW") %]/[% display_value("bug_status", "REOPENED") %] [%+ terms.bugs %], you can use this URL (bookmark
+To get a list of all [% display_value("bug_status", "CONFIRMED") %] [%+ terms.bugs %], you can use this URL (bookmark
it if you like!):
- [% urlbase %]buglist.cgi?bug_status=NEW&bug_status=REOPENED&assigned_to=[% email %]
+ [% urlbase %]buglist.cgi?bug_status=CONFIRMED&assigned_to=[% email %]
Or, you can use the general query page, at
[%+ urlbase %]query.cgi
-Appended below are the individual URLs to get to all of your [% display_value("bug_status", "NEW") %] [%+ terms.bugs %]
+Appended below are the individual URLs to get to all of your [% display_value("bug_status", "CONFIRMED") %] [%+ terms.bugs %]
that haven't been touched for [% Param("whinedays") %] days or more.
You will get this message once a day until you've dealt with these [% terms.bugs %]!
diff --git a/template/en/default/global/field-descs.none.tmpl b/template/en/default/global/field-descs.none.tmpl
index ee75efaa3..2ef558ce4 100644
--- a/template/en/default/global/field-descs.none.tmpl
+++ b/template/en/default/global/field-descs.none.tmpl
@@ -68,7 +68,7 @@
[% value_descs = {
"bug_status" => {
# "UNCONFIRMED" => "UNCO",
- # "NEW" => "NEWISH",
+ # "CONFIRMED" => "ITSABUG",
},
"resolution" => {
diff --git a/template/en/default/global/messages.html.tmpl b/template/en/default/global/messages.html.tmpl
index b45724b73..96225e128 100644
--- a/template/en/default/global/messages.html.tmpl
+++ b/template/en/default/global/messages.html.tmpl
@@ -719,6 +719,9 @@
Verify that the file permissions in your [% terms.Bugzilla %] directory are
suitable for your system. Avoid unnecessary write access.
+ [% ELSIF message_tag == "install_workflow_init" %]
+ Setting up the default status workflow...
+
[% ELSIF message_tag == "product_created" %]
[% title = "Product Created" %]
The product <em>[% product.name FILTER html %]</em> has been created. You will need to
diff --git a/template/en/default/list/list.ics.tmpl b/template/en/default/list/list.ics.tmpl
index 3f9e2b881..b135267f4 100644
--- a/template/en/default/list/list.ics.tmpl
+++ b/template/en/default/list/list.ics.tmpl
@@ -82,7 +82,7 @@ END:VCALENDAR
[% END %]
[% END %]
[% IF NOT status %]
- [% IF bug_status == 'ASSIGNED' %]
+ [% IF bug_status == 'IN_PROGRESS' || bug_status == 'ASSIGNED' %]
[% status = 'IN-PROGRESS' %]
[% ELSE %]
[% status = 'NEEDS-ACTION' %]
diff --git a/template/en/default/pages/fields.html.tmpl b/template/en/default/pages/fields.html.tmpl
index de089ec11..d97a40f96 100644
--- a/template/en/default/pages/fields.html.tmpl
+++ b/template/en/default/pages/fields.html.tmpl
@@ -65,49 +65,33 @@
Nobody has confirmed that this [% terms.bug %] is valid. Users
who have the "canconfirm" permission set may confirm
this [% terms.bug %], changing its state to
- <b>[% display_value("bug_status", "NEW") FILTER html %]</b>.
+ <b>[% display_value("bug_status", "CONFIRMED") FILTER html %]</b>.
Or, it may be directly resolved and marked
<b>[% display_value("bug_status", "RESOLVED") FILTER html %]</b>.
</dd>
<dt>
- [% display_value("bug_status", "NEW") FILTER html %]
+ [% display_value("bug_status", "CONFIRMED") FILTER html %]
</dt>
<dd>
This [% terms.bug %] is valid and has recently been filed.
[%+ terms.Bugs %] in this state become
- <b>[% display_value("bug_status", "ASSIGNED") FILTER html %]</b> when
- somebody is working on them, or become resolved and marked
+ <b>[% display_value("bug_status", "IN_PROGRESS") FILTER html %]</b>
+ when somebody is working on them, or become resolved and marked
<b>[% display_value("bug_status", "RESOLVED") FILTER html %]</b>.
</dd>
<dt>
- [% display_value("bug_status", "ASSIGNED") FILTER html %]
+ [% display_value("bug_status", "IN_PROGRESS") FILTER html %]
</dt>
<dd>
This [% terms.bug %] is not yet resolved, but is assigned to the
proper person who is working on the [% terms.bug %]. From here,
[%+ terms.bugs %] can be given to another person and become
- <b>[% display_value("bug_status", "NEW") FILTER html %]</b>, or
+ <b>[% display_value("bug_status", "CONFIRMED") FILTER html %]</b>, or
resolved and become
<b>[% display_value("bug_status", "RESOLVED") FILTER html %]</b>.
</dd>
-
- <dt>
- [% display_value("bug_status", "REOPENED") FILTER html %]
- </dt>
- <dd>
- This [% terms.bug %] was once resolved, but the resolution was
- deemed incorrect. For example, a
- <b>[% display_value("resolution", "WORKSFORME") FILTER html %]</b>
- [%+ terms.bug %] is marked
- <b>[% display_value("bug_status", "REOPENED") FILTER html %]</b> when
- more information shows up and the [% terms.bug %] is now
- reproducible. From here, [% terms.bugs %] are either marked
- <b>[% display_value("bug_status", "ASSIGNED") FILTER html %]</b> or
- <b>[% display_value("bug_status", "RESOLVED") FILTER html %]</b>.
- </dd>
- </dl>
</td>
<td>
@@ -128,11 +112,9 @@
</dt>
<dd>
A resolution has been performed, and it is awaiting verification by
- QA. From here [% terms.bugs %] are either re-opened and become
- <b>[% display_value("bug_status", "REOPENED") FILTER html %]</b>, are
- marked <b>[% display_value("bug_status", "VERIFIED") FILTER html %]</b>,
- or are closed for good and marked
- <b>[% display_value("bug_status", "CLOSED") FILTER html %]</b>.
+ QA. From here [% terms.bugs %] are either reopened and given some
+ open status, or are verified by QA and marked
+ <b>[% display_value("bug_status", "VERIFIED") FILTER html %]</b>.
</dd>
<dt>
@@ -140,20 +122,8 @@
</dt>
<dd>
QA has looked at the [% terms.bug %] and the resolution and
- agrees that the appropriate resolution has been taken.
- [%+ terms.Bugs %] remain in this state until the product they were
- reported against actually ships, at which point they become
- <b>[% display_value("bug_status", "CLOSED") FILTER html %]</b>.
- </dd>
-
- <dt>
- [% display_value("bug_status", "CLOSED") FILTER html %]
- </dt>
- <dd>
- The [% terms.bug %] is considered dead, the resolution is correct.
- Any zombie [% terms.bugs %] who choose to walk the earth again must
- do so by becoming
- <b>[% display_value("bug_status", "REOPENED") FILTER html %]</b>.
+ agrees that the appropriate resolution has been taken. This is
+ the final staus for bugs.
</dd>
</dl>
</td>
diff --git a/template/en/default/pages/quicksearch.html.tmpl b/template/en/default/pages/quicksearch.html.tmpl
index 1a630671d..486261009 100644
--- a/template/en/default/pages/quicksearch.html.tmpl
+++ b/template/en/default/pages/quicksearch.html.tmpl
@@ -97,8 +97,8 @@
<p>You can specify any of these fields like <kbd>field:value</kbd>
in the search box, to search on them. You can also abbreviate
the field name, as long as your abbreviation matches only one field name.
- So, for example, searching on <kbd>stat:NEW</kbd> will find all
- [%+ terms.bugs %] in the <kbd>NEW</kbd> status. Some fields have
+ So, for example, searching on <kbd>stat:VERIFIED</kbd> will find all
+ [%+ terms.bugs %] in the <kbd>VERIFIED</kbd> status. Some fields have
multiple names, and you can use any of those names to search for them.</p>
[% IF Bugzilla.active_custom_fields.size %]
diff --git a/whineatnews.pl b/whineatnews.pl
index 7be485d29..19b0e44fc 100755
--- a/whineatnews.pl
+++ b/whineatnews.pl
@@ -25,8 +25,10 @@
# This is a script suitable for running once a day from a cron job. It
# looks at all the bugs, and sends whiny mail to anyone who has a bug
-# assigned to them that has status NEW or REOPENED that has not been
-# touched for more than the number of days specified in the whinedays param.
+# assigned to them that has status CONFIRMED, NEW, or REOPENED that has not
+# been touched for more than the number of days specified in the whinedays
+# param. (We have NEW and REOPENED in there to keep compatibility with old
+# Bugzillas.)
use strict;
use lib qw(. lib);
@@ -44,7 +46,7 @@ my $query = q{SELECT bug_id, short_desc, login_name
FROM bugs
INNER JOIN profiles
ON userid = assigned_to
- WHERE (bug_status = ? OR bug_status = ?)
+ WHERE bug_status IN (?,?,?)
AND disable_mail = 0
AND } . $dbh->sql_to_days('NOW()') . " - " .
$dbh->sql_to_days('delta_ts') . " > " .
@@ -54,7 +56,8 @@ my $query = q{SELECT bug_id, short_desc, login_name
my %bugs;
my %desc;
-my $slt_bugs = $dbh->selectall_arrayref($query, undef, 'NEW', 'REOPENED');
+my $slt_bugs = $dbh->selectall_arrayref($query, undef, 'CONFIRMED', 'NEW',
+ 'REOPENED');
foreach my $bug (@$slt_bugs) {
my ($id, $desc, $email) = @$bug;