bump version to 3.0.3rc1
Bump version for 3.2.0rc1
Correct a Plugins vs Plugin typo in README
Avoid bad links in online docs

rt-static-docs contains an exception for rt.example.com in README, but
doesn't for localhost.  Switching avoids weird links in README.html on
docs.bestpractical.com.
Copyright tag two files

add_constituency was missed because license_tag only gets etc/ugprade/
not etc/ and ExtraShowHistoryArguments is a new file.
Failing test for creation of ticket with default Constituency

RT's e092e23 changed ticket creation to expect that the user creating a
ticket would be able to load and see all the CFs passed to
RT::Ticket->Create.  This was done to avoid trying to add Transaction
CFs to Tickets, but means that RTIR can no longer pass in a default
value for the Constituency CF during ticket creation by non DutyTeam
members.

Unfortunately, RTIR needs to do this during RT::Ticket->Create, not
after, so that Scrips fired on On Create will have access to the
Constituency (such as all the core Correspondence scrips that change
$CorrespondAddress based on the value of Constituency).

Previously, no part of RTIR tested ticket creation except as DutyTeam
members.
bump Module::Install
Bump version for 3.0.3 release
Merge branch '3.0.3-releng' into 3.0-trunk
Merge branch '3.2/constituency-regression-on-email-create' into 3.2.0-releng

Tests pass thanks to rt.git:ab7ea157
Can't delete it yet, flag people to better places

Ideally this will get parsed out into the UPGRADING files and then
deleted.
Update Module::Install
Require RT 4.2.9rc1 to install
Bump version for 3.2.0rc2
Handle multiple-select Constituency

RTIR ships with a "Select One Value" Constituency field and makes a lot
of assumptions elsewhere that the field will be single valued
(especially with the special ACL code and propagation).

RT will not pass along the 'default' values of a select multiple CF
that already has values (the code in EditCustomField explicitly skips
things with MaxValues that aren't 1) this means that RT and RTIR have
code which figures out that the Defaults should be pulled from OCFV.

This code would break on Multiple Select for two reasons.  It tried to
check DefaultConstituency on an empty Queue Object, but even with that
fixed, it was looking for a single value from EditCustomField so would
fail because it would be passed several values and could drop them.
Failing test for UTF-8 input

Digest::SHA 5.74 and later no longer silently take unicode strings and
process them byte by byte.  It will die and prevent further display of
the page with "Wide character in subroutine entry" in server logs.
Calculate the SHA1 of the encoded $$content

This prevents Digest::SHA::sha512_base64 from croaking with wide characters.
Similar to what's done for MD5 in
https://github.com/bestpractical/rt/blob/80bcdcfdea2988329a49bc6823f54da5d304762c/lib/RT/User.pm#L1000

Fixes I#30469
Test redirecting to /RTIR/ on login

Steals liberally from core's t/web/redirect-after-login.t
The thing we care about is that an RTIR user goes to /RTIR/ but REST or
other direct links are left alone.

The login() function doesn't test the login page, so it isn't helpful
for our use case and I'm glad I was able to steal the repetitive code
from core.

Doesn't test everything it could, you still need to manually deal with
WebPath and checking Rt-Authen-ExternalAuth but it's a great help for
the basics.
Don't redirect /REST/ and also handle WebPath better

/bin/rt logs in by passing user and pass in post params, so RT
doesn't see a RedirectTo in that case, we need to be testing path_info
to see if someone came from /NoAuth/Login.html to catch "interactive
logins".

Additionally, WebPath was not getting pushed on in the Redirect, so do
it manually, and handle bailing out if someone has a $RedirectTo of the top
level (which happens for any request with a $WebPath set).

Fixes I#30471
Merge branch '3.0/sha-utf-8-data' into 3.0-trunk