Added an optional ability to keep a read-only shadow database, so that
bug queries can be run against it, so that these slow queries won't be
able to tie up the rest of the system.
Display all possible state transitions in a bug if the user is not
logged in. Since they haven't logged in, we don't know what they will
be allowed to do. And users who disable cookies tend to pretty often
not be logged in.
Major spankage. Added a new state, UNCONFIRMED. Added new groups,
"editbugs" and "canconfirm". People without these states are now much
more limited in what they can do.
For backwards compatability, by default all users will have the
editbugs and canconfirm bits on them. Installing this changes as is
should only have one major visible effect -- an UNCONFIRMED state
will appear in the query page. But no bugs will become in that state,
until you tweak some of the new voting-related parameters you'll find
when editing products.
Lock the tables as low-priority when writing. Maybe makes people making changes wait longer, but people doing read-only stuff should now never block for very long.
This implements canonical email address transformation. i.e., you have the option of setting up bug_email.pl to search the profiles database for a username which has the same username (before the @) same username and base domain (seth@cs.brandeis.edu = seth@job.cs.brandeis.edu) or identical email address (old behavior) based on the From email address. See the code for a more sensical description.
o this is a minor step towards getting canonical email addresses to work, and not via a gross hack (the script with a gross hack is in use in a production environment, so ...)
Anyways, this address the findUser() sub and email transforms of none, base domain, and name only. base_domain is not properly implemented yet. an email transform of none does an exact match on email addresses in the profiles table. A name only transform does a regular expression match (via mysql's RLIKE operator) on the name portion of the address (i.e., seth from seth@job.cs.brandeis.edu). This is sloppy, but useful in an environment where there are only a few users.
the base_domain is next, probably tomorrow. I need to figure out how to implement it first.
this is the initial checkin of the bug_email.pl script into the bugzilla cvs tree under the contrib directory. This is not my code, but I'm championing its maintanence right now, since I'm using and hacking on it heavily. The list of contributors can be found in the file itself.
Changes I've made :
- updated to the newest CVS pull of bugzilla
- works out of contrib/bugzilla
- put in the MPL license header
Directions for use are in the file itself. Essentially, you put in a procmailrc entry which cats the message to this script.
Changes coming in the near future ...
- canonical email transformation (i.e., seth@job.cs.brandeis.edu == seth@cs.brandeis.edu)
- default product and component (i.e., if you don't specify a product and component, it goes into a PENDING product)
- querying a bug over email
- appending a bug over email
- keywords over email
- use the globals.pl parameters functionality to edit and save this script's parameters
- integrate some setup in the checksetup.pl script
FWIW, the first two things are necessary for this to be useful in my setup, so they get an overwhelming bit of priority
Reworked preferences UI. Added ability to turn off "My bugs" link at
bottom. Made "My bugs" show bugs you own AND bugs you submitted.
Added ability to display your named queries in the footer. Many
random bugfixes.
Named queries (and the default query) are now stored server side, in
the database, rather than in cookies. This means you have to log
in to use these features, but I have plans that require them to be
server-side. (Besides, some people were beginning to run out of
cookie space.)
The "login_name" field in the "profiles" table was not declared to be
unique. Sure enough, somehow, I got 22 duplicated entries in my
database. This code detects that, cleans up the duplicates, and then
tweaks the table to declare the field to be unique. What a pain.
AACK! checksetup.pl was stomping all over the new fielddefs table if
it got run more than once. This checkin fixes that, and also changes
the DumpBugActivity() routine to give me enough information to
hopefully repair the damaged mozilla.org database...
Remember the previous sort order in a cookie, and make that the
default sort order for new queries. Add a new "show list" link to the
navigation header to return you to the list of selected bugs.
Patch by Christine Begle <cbegle@mozilla.org>>, with heavy
modifications by me -- let you query for "any words" and "all words",
as well as the existing substring and regexp stuff.
Patch by Klaas Freitag <freitag@suse.de>, with modifications by me --
don't generate HTML tables with more than 50 lines, as browsers generally
can't cope with huge tables.
Patch by Holger Schurig <holger@holger.om.org> -- add new localconfig
option to skip the database check (since that code doesn't work with
all versions of MySQL/Msql-mysql/Perl/moonphase).
Added a new table fielddefs that records information about the
different fields we keep an activity log on. The bugs_activity table
now has a pointer into that table instead of recording the name directly.
Set up a new, highly experimental email-notification scheme. To turn
it on, the maintainer has to turn on the "New email tech" param, and
then individual users have to turn on the "New email tech" preference.
Moved all the long descriptions out of the bugs table, and into a new
table. There is now a separate entry for each new long description,
rather than appending them all together in one big field.