PERFORCE DEFECT TRACKING INTEGRATION RELEASE NOTES FOR RELEASE 2.3.1 Nick Barnes, Ravenbrook Limited $Date: 2006/03/01 $ CONTENTS 1. Introduction 2. Supported configurations 3. Getting support 4. Project contacts 5. What's fixed 5.1. What's fixed in release 2.3.2 5.2. What was fixed in release 2.3.1 5.3. What was fixed in release 2.3.0 5.4. What was fixed in release 2.2.2 5.5. What was fixed in release 2.2.1 5.6. What was fixed in release 2.2.0 5.7. What was fixed in release 2.1.2 5.8. What was fixed in release 2.1.1 5.9. What was fixed in release 2.1.0 5.10. What was fixed in release 2.0.0 5.11. What was fixed in release 1.5.3 5.12. What was fixed in release 1.5.2 5.13. What was fixed in release 1.5.1 5.14. What was fixed in releases up to 1.5.0 A. References B. Document history C. Copyright and license 1. INTRODUCTION These are the release notes for release 2.3.2 of the Perforce Defect Tracking Integration (P4DTI). The P4DTI connects your defect tracking system to Perforce, so that you don't have to switch between them and enter duplicate information about your work. It also links changes made in Perforce with defect tracker issues, making it easy to find out why a change was made, find the work that was done to resolve an issue, or generate reports relating issues to files or codelines. For instructions on installing the P4DTI, see the product readme (readme.txt). For up-to-date information about releases of the P4DTI, see the product information page . From there you will find links to the latest releases, including reports of defects found. If you want to adapt or extend the P4DTI, please go to the product information page and download the Integration Kit. It contains full source code and documentation to help you. The readership of this document is anyone who wants to download and use the Perforce Defect Tracking Integration. This document is not confidential. 2. SUPPORTED CONFIGURATIONS Perforce versions: - Perforce 2000.2, 2001.1, 2002.1, 2002.2, 2003.1, 2003.2, 2004.2, or 2005.1, on any platform; The Bugzilla for Unix integration supports: - Bugzilla 2.18.4 or 2.20 on Red Hat Linux or Solaris, storing the data in MySQL 3.23.41 or later; - Python 2.0, or later; - Running the P4DTI replicator on any Unix. Use of Bugzilla 2.16.8 or 2.18 on Red Hat Linux or Solaris is also supported, but is deprecated: support may be dropped in a future version of the P4DTI. Note that although the Bugzilla integration runs on a variety of Unix operating systems, we've only tested it on Red Hat Linux 8. Also note that the P4DTI will not be able to cause Bugzilla to send email reporting bug changes unless it is running on the same machine as Bugzilla itself. The Bugzilla for Windows integration supports: - Bugzilla 2.18.4 or 2.20 on Windows NT4 or Windows 2000; - Python 2.0 or later with Win32 plug-ins; - Running the P4DTI replicator on Windows NT 4 or Windows 2000. Use of Bugzilla 2.18 on Windows is also supported, but is deprecated: support may be dropped in a future version of the P4DTI. Integration with TeamShare's TeamTrack is no longer supported by Perforce Software, or by this software. An integration is available from TeamShare. Contact TeamShare support by writing to or see the TeamShare web site at for further information. 3. GETTING SUPPORT For problems relating to Perforce or the P4DTI in general, contact Perforce Support by writing to or see the technical support page at for contact information. Bugzilla is a community supported project. See . 4. PROJECT CONTACTS You may want to join the p4dti-discussion mailing list. The goals of the list are: 1. to provide feedback to the project on requirements, design, implementation, etc.; 2. to allow people to exchange information and experience with using and adapting the project; 3. to keep people informed about project progress. To join, send a message with the word "subscribe" in the _body_ to or send the word "help" for general information. Please note that the mailing list will be archived and the archive may be published. 5. WHAT'S FIXED This section lists defects that have been fixed. 5.1. WHAT'S FIXED IN RELEASE 2.3.2 CRITICAL job001342: refresh.py doesn't work with p4d 2005.2 The refresh.py script doesn't work with p4d 2005.2: the jobs are refreshed but the logger counter is not updated correctly. 5.2. WHAT WAS FIXED IN RELEASE 2.3.1 ESSENTIAL job001268: Component version documentation/testing is out-of-date The P4DTI depends on various third-party components: Python, MySQL-Python, Python windows extensions. These dependencies are documented in the release notes and in the Administrator's Guide. The documentation notes specific versions of these components, and some of these versions are tested when the replicator starts (MySQL-Python, at least). This needs updating to reflect current versions. job001272: Manuals refer to old Perforce documentation The P4DTI manuals link to online Perforce documentation in various places. All these references should be to the current documentation (2005.1 at the time of writing). Most of them are but some appear to still refer to older documents (e.g. 2004.2). 5.3. WHAT WAS FIXED IN RELEASE 2.3.0 ESSENTIAL job000460: P4DTI not known to support unicode Perforce 2002.1 has a unicode mode, in which files of type "unicode", and all metadata, are stored in UTF-8. Then this UTF-8 data is translated to and from the client character set on every access. The P4DTI has not been tested in this mode, and we don't know whether this works. job000975: User guide does not mention P4V P4V, The Perforce Visual Client, was not available when p4dti was created. Now it is (and has been for a while). The User Guide should explain how to use it carry out the procedures documented in the User Guide. job001258: Bugzilla 'deadline' field not replicated. Bugzilla 2.20 introduces a new time-tracking field called 'deadline'. The P4DTI can replicate this field, but doesn't do so very well (e.g. field name, comments are not good). job001259: P4DTI can't handle new Bugzilla 'enum' tables The P4DTI doesn't correctly figure out Perforce jobspec field specifications for the new implementation of Bugzilla 'enum' fields. Bugzilla used to support these fields with MySQL's 'enum' column type. Bugzilla 2.19.3 and later versions stop this (because it's not portable SQL), and instead have a separate table in the database for each such field, enumerating the possible values. The P4DTI doesn't know this, so provides a jobspec field specification of type 'text'. job001260: P4DTI can't handle null fields in Bugzilla Bugzilla now (2.20) has some 'null' columns in the bugs table (i.e. fields which are allowed to have a null value). For instance, the qa_contact field can be null. These fields are not properly set in Bugzilla when replicating or creating a new bug (the qa_contact field is set from the initial_qacontact field in the components table, which may also be null). job001261: test suite breaks MySQL on Windows The P4DTI test suite invokes the MySQL command-line client on Windows in a way which doesn't reliably work. We say 'mysql -u "" "" -e ""', but for some values of the command this mysteriously fails. Found by reading the logs of a test suite run. job001263: P4DTI doesn't support Bugzilla 2.20. Bugzilla 2.20 was released on 2005-10-01. The P4DTI must be extended to work with it. OPTIONAL job001262: test suite doesn't work with Bugzilla 2.20 checksetup on Windows Bugzilla includes a script called "checksetup" used when creating or upgrading a Bugzilla installation. The P4DTI test suite runs this script to set up and tear down test Bugzillas. It doesn't work with Bugzilla 2.20 on Windows because the set of prompts used by checksetup to get information has changed. job001264: Obsolete Bugzilla versions still supported Our Bugzilla version support needs to be updated to reflect current usage. Supporting really old versions is expensive (in testing) and pointless (because users generally upgrade fairly promptly). 5.4. WHAT WAS FIXED IN RELEASE 2.2.2 ESSENTIAL job001128: Bugzilla 2.18 patch removes some documentation The P4DTI 2.2.1 release includes a patch file for Bugzilla 2.18. Applying this patch removes all the contents from several documentation files. 5.5. WHAT WAS FIXED IN RELEASE 2.2.1 CRITICAL job001081: Bugzilla bug email not working P4DTI 2.2.0 can't send Bugzilla's bug email with Bugzilla 2.18rc1/2/3. It generates the message "Can't locate Bugzilla/BugMail.pm in @INC". ESSENTIAL job000990: no Bugzilla 2.18 patch in P4DTI for Windows The P4DTI for Windows (p4dti-bugzilla-2.2.0.zip and p4dti-bugzilla-2.2.0.exe) only has a patch for Bugzilla 2.14.5. It should also include a patch for Bugzilla 2.18, which is supported on Windows. job000991: Bugzilla patch breaks editparams on Bugzilla 2.18rc2 Applying the P4DTI Bugzilla patch breaks the Bugzilla user interface (for Bugzilla versions from 2.17.7 onwards) until the next time the checksetup.pl Bugzilla script is run. In particular, the editparams.cgi script is broken, and generates the message "No value for param p4dti (try running checksetup.pl again) at Bugzilla/Config.pm line 161.". Running the checksetup.pl script again fixes the problem. job001098: Python 2.4 breaks p4.py Python 2.4 has recently been released. Running the P4DTI under Python 2.4 causes errors when invoking the Perforce client, usually of the form "Unknown field name". job001119: Can't run as Windows Service with Python 2.4 The P4DTI is able to run as a Windows Service, using some of the Win32 extensions to Python. These extensions have changed in Python 2.4, in such a way that the P4DTI Windows Service cannot be started. job001121: P4DTI doesn't support Bugzilla 2.16.7. Bugzilla 2.16.7 was released on 2004-10-24. The P4DTI needs to support this release. job001123: No Bugzilla 2.18 support Bugzilla 2.18 was finally released on 2005-01-15. The P4DTI needs to support it. job001124: P4DTI doesn't support Bugzilla 2.16.8. Bugzilla 2.16.8 was released on 2005-01-15. The P4DTI needs to support this release. OPTIONAL job001083: Bugzilla 2.18rc3 schema not recognised Running P4DTI release 2.2.0 with Bugzilla 2.18rc3 fails to recognise the Bugzilla version, and generates a warning message saying "The P4DTI may fail to operate correctly." In fact it works fine; the Bugzilla version detection code needs to be brought up to date. job001120: Bugzilla schema documentation doesn't cover recent versions The Bugzilla schema documentation written for the P4DTI misses some information (foreign key fields), omits some recent versions, and includes various out-dated text. job001122: P4DTI not tested against Bugzilla 2.18rc3. Bugzilla 2.18rc3 was released on 2004-10-24, as the latest approximation to the forthcoming Bugzilla 2.18 release, which we will support. Many users will update to 2.18rc3; we should work with it if we can. 5.6. WHAT WAS FIXED IN RELEASE 2.2.0 ESSENTIAL job000764: Test suite fails with Bugzilla versions 2.16.1 to 2.16.3 Some tests fail with after emitting the error 'Too late for "-T" option'. job000907: UG makes incorrect statements about p4 change "-s" option The User Guide states that a list of jobs is only presented in a "p4 change" or "p4 submit" form when the "-s" option is given. This is incorrect: the list of jobs is always presented (if the user has a jobview). The "-s" option actually causes a status of "ignore" to be put next to each job (where it can be edited to an actual status). job000948: New Bugzilla groups system not supported The 2.17.x development releases of Bugzilla have a table-driven groups system, replacing the existing "bitset" groups. The P4DTI will need to support this system once the stable Bugzilla 2.18 has been released. Note that the same P4DTI versions will need to support either table groups (2.18 +) or bitset groups (2.16.x). job000949: Can't handle new Bugzilla product and component tables Replicating product or component fields from Bugzilla 2.18 will not work because of a Bugzilla database schema change. job000950: Bugzilla integration too slow Integrating with Bugzilla 2.17.x or 2.18 involves more database access than earlier integrations (e.g. groups tables, product and components tables). When running some stress tests the integration appeared very slow. job000951: Bugzilla bugmail doesn't work any more Bugzilla 2.17.x doesn't have the "processmail" script used by the P4DTI to send bugmail when bugs change. job000952: New Bugzilla permissions rules not followed Bugzilla 2.17.x and 2.18.x have new rules for deciding whether a given user may make a particular change to a particular bug. The P4DTI must enforce the same rules as the version of Bugzilla with which it is running. job000953: No support for Bugzilla's new per-product group controls Bugzilla 2.17.3 introduces per-product group controls, allowing an administrator to specify which groups a bug should (or must) belong to based on its product, and also which groups a user must be in to create a bug in a given product. job000957: Test suite doesn't handle recent Bugzilla releases The P4DTI test suite runs some Bugzilla code as part of testing the Bugzilla integration. Some of the ways in which it invokes this code, and some of the assumptions it makes about the results, are not valid for Bugzilla 2.17.x (and will not be valid for Bugzilla 2.18). job000958: Bugzilla schema doc is out of date The P4DTI design documentation includes a document [1] describing the Bugzilla database schema. This document is considerably out of date: among other things it doesn't describe the new groups system in bugzilla 2.17.x, or the tables controlling flags and charts. This needs to be up-to-date and accurate for us to rewrite the P4DTI Bugzilla interface based upon it. job000960: P4DTI doesn't support Bugzilla 2.16.5 Bugzilla 2.16.5 was released on 2004-03-03 as the latest security patch release in the stable 2.16.x series. The latest P4DTI release (2.1.2) supports various Bugzilla releases including 2.16.4; the next P4DTI release should support Bugzilla 2.16.5. job000961: P4DTI doesn't support Bugzilla 2.16.6 Bugzilla 2.16.6 was released on 2004-07-10 as the latest, and probably last, security patch release in the stable 2.16.x series. The latest P4DTI release (2.1.2) supports various Bugzilla releases including 2.16.4; the next P4DTI release should support Bugzilla 2.16.5 and 2.16.6. job000963: P4DTI does not support Bugzilla 2.18 The Bugzilla project is planning to release Bugzilla 2.18 during 2004. This will be the first new stable version of Bugzilla since 2.16 on 2002-07-28. The P4DTI must support integration with Bugzilla 2.18. Bugzilla 2.18 is also intended to run on Windows (making this the first supported Windows release since 2.14.5 on 2003-01-02), and we must support it there. job000964: Bugzilla emails give incorrect values for user fields Bugzilla sends email to affected users when a bug changes. This email describes the change: stating which fields in the bug have changed and giving old and new values. If the change is to a user field (e.g. "assigned_to" or "qacontact"), the old and new values should appear as the Bugzilla logins (email addresses) of the users in question. However, if the bug is changed by the P4DTI replicator, these values appear as numeric user IDs instead. job000965: User Guide is out-of-date about Perforce interfaces The P4DTI user guide has instructions for achieving various job-related tasks using different Perforce interfaces (command-line, p4win, p4web). These instructions were largely based on P4 2001.1 (the current release when the user guide was originally written). Some of the instructions are now out of date; some other tasks are now possible in a given interface when they were not before. job000968: Interactions with Perforce ticket system not documented The AG has no information or advice on using the P4DTI with Perforce "tickets" (e.g. to allow a Perforce server security level of 3). job000971: No P4DTI section when Bz 2.17+ bug is "formatted for printing" The P4DTI adds a section to the bug display to show Perforce information relating to a bug (e.g. bug fixes). This section is displayed in the regular Bugzilla bug display but not when a bug is "formatted for printing" (either on its own or as part of a long list). This job is specific to Bugzilla 2.17+ because the cause and symptom are different there from on earlier versions of Bugzilla (up to 2.16.6): see also job000956. job000985: MySQLdb 1.0.0 not supported Release 1.0.0 of the MySQLdb Python module is now available, and must be supported by the P4DTI. OPTIONAL job000955: P4DTI section not using Bugzilla template hooks The user interface in Bugzilla is templatized (since Bugzilla 2.16). Since Bugzilla 2.17.7, the template system includes "hooks", allowing site-specific sections to be included in the user interface. Using such a hook for the P4DTI would reduce the size and complexity of the Bugzilla patch needed by the P4DTI. job000959: P4DTI doesn't work with Bugzilla 2.17.x The Bugzilla 2.17.x series of releases are "development versions", and the P4DTI is not intended to support them. However, the development of that series will eventually result in a stable release (Bugzilla 2.18), and the P4DTI must support that release. In the meantime several users have requested integration with Bugzilla 2.17.x releases, especially 2.17.7, which is fairly stable and probably the last 2.17.x release. job000962: P4DTI doesn't work with Bugzilla 2.18rc1 The Bugzilla team have release Bugzilla 2.18rc1 [1], a "release candidate" for the forthcoming Bugzilla 2.18. The P4DTI must support Bugzilla 2.18, and the best way to ensure this support arrives soon after the Bugzilla 2.18 release itself is to make the integration work with 2.18rc1. Such operation need not be supported by a P4DTI release. job000984: P4DTI doesn't work with Bugzilla 2.18rc2 The Bugzilla team have release Bugzilla 2.18rc2 [1], the second "release candidate" for the forthcoming Bugzilla 2.18. The P4DTI must support Bugzilla 2.18, and the best way to ensure this support arrives soon after the Bugzilla 2.18 release itself is to make the integration work with 2.18rc2. Such operation need not be supported by a P4DTI release. 5.7. WHAT WAS FIXED IN RELEASE 2.1.2 CRITICAL job000842: Python 2.3 or 2.3.x breaks Bugzilla integration Under Python 2.3 or 2.3.x, the Bugzilla integration fails with this message: "Bugzilla database error: (P4DTI-1058) Given 'True' when expecting a string or integer." ESSENTIAL job000841: Test suite warnings with Python 2.3 When running the P4DTI test suite under Python 2.3, two DeprecationWarning messages are generated. 5.8. WHAT WAS FIXED IN RELEASE 2.1.1 ESSENTIAL job000837: P4DTI manuals refer to out-of-date Perforce documentation The P4DTI manuals refer to Perforce 2001.1 documentation, instead of 2003.1 versions. job000838: P4DTI can't replicate 'user' fields. Some Bugzilla fields (e.g. 'reporter' 'qa_contact') are user identifiers, which should be replicated as Perforce user names. If the P4DTI 2.1.0 replicator is set to replicate one of these, it fails on startup with the message "NameError: global name 'user_name_length' is not defined". job000839: AG "Table of Commands" omits jobspec commands P4DTI version 2.1 adds some new commands, "python check_jobspec.py" and "python extend_jobspec.py". These were not included in the "Table of Commands" (Appendix D) of the Administrator's Guide in P4DTI 2.1.0. 5.9. WHAT WAS FIXED IN RELEASE 2.1.0 ESSENTIAL job000624: Licence still says copyright 2001. The licence attached to the P4DTI sources says "copyright 2001", but probably ought to say "copyright 2001-2003" (shortly). I am not a lawyer. job000699: P4DTI doesn't allow customizable jobspec The P4DTI completely takes over the Perforce jobspec, in a very constrained way. The jobspec is entirely determined by the replicated_fields configuration item. Users want [1] to be able to customize this jobspec, at the very least to be able to rename and reorder the replicated fields. Ideally they want to be able to set their own jobspec, and prepare it for the P4DTI by adding some fields but not otherwise modifying it. This is requirement 122. job000700: Perforce user password is disclosed on command line When the P4DTI issues Perforce commands, it does so by issuing a system command including all relevant options on the command line, including the password with -P. The command line can be obtained with various system tools such as 'ps', so other users on the system can readily obtain the P4DTI Perforce user's password. job000704: Bugzilla fixes table shows the fixer, not the changer The patched Bugzilla bug form has a fixes table showing Perforce fixes for the bug. The table has one row per fix record, showing the changelist number, date, description, and user. The "user" column shows the user who made the fix record, not the user who made the change. This is counter-intuitive, not very useful, and contrary to the P4DTI documentation, in particular the IG [1]. job000754: AG says that MySQL doc link is for MySQL 4.1.0-alpha The Administrator's Guide has a link (in section 3.3) to the MySQL documentation. This link is to the permanent home of the current MySQL documentation, but in the AG the linked text is "MySQL Reference Manual for version 4.1.0-alpha". This will date. job000755: config.py still has TeamTrack section config.py still has a TeamTrack section, although TeamTrack integration is no longer supported. job000756: MySQL privilege required and not documented Some versions of MySQL have a new privilege: Lock_table_priv. This is required by the P4DTI MySQL user (the P4DTI replicator locks tables during polls). This requirement is not documented in the AG. job000792: Can't detect Bugzilla versions since 2.16 The P4DTI Bugzilla integration has code to detect Bugzilla versions from 2.0 up to 2.16, and then uses this information to decide support status. This code will not work correctly on Bugzilla databases since 2.16.x, so the P4DTI can't even detect versions of Bugzilla since 2.16.x. job000811: P4DTI doesn't work with Perforce 2003.2beta Perforce 2003.2beta has a new format for the output of "p4 -G info", in which each information line is tagged (like p4 -ztag output). The P4DTI uses "p4 -G info" to determine the Perforce server features (using the server changelevel). It isn't expecting the 2003.2beta format, and does not accept it. job000827: P4DTI test suite with PyXML 0.8.3 fails without XHTML DTD file The P4DTI test suite uses Python's XML libraries and PyXML extensions to check the XHTML documentation which forms part of the P4DTI product sources (e.g. manuals, design documents, etc). When used with PyXML 0.8.3 (unlike PyXML 0.7.x), this part of the test suite fails because it can't the XHTML DTD named in the doctype element. job000829: Some messages listed in the AG can never appear. There are a number of P4DTI error messages in the AG which are obsolete (marked as NOT_USED in the message catalog). These should be removed. job000830: No way to check the jobspec The P4DTI requires a Perforce jobspec with various important properties: P4DTI fields with certain specifications, replicated fields of particular types, etc. But there is no way at present to check whether the jobspec has those properties. There should be a script. See also job000699 (configurable jobspec): being able to check the jobspec is important when the jobspec is not in the control of the P4DTI. Also job000831 (extend jobspec): we need to be able to fix problems found when checking the jobspec without completely discarding it. job000831: No way to just extend the jobspec The P4DTI overwrites the jobspec with one based on the configuration (replicated_fields, etc). This prevents the use of additional, non-replicated fields in the jobspec. The P4DTI should instead extend the jobspec, by adding the fields which it requires. Optionally, such extension could change the specification of a field if it is not correct for the P4DTI. And administrators should be able to just extend the jobspec, independently of running the replicator, so that they can see the results before committing themselves. See also job000699 (configurable jobspec): being able to add P4DTI-required fields to a user's existing jobspec is an important part of this. And this can be combined with job000830 (check jobspec): first check_jobspec, then fix any problems either manually or with extend_jobspec. job000833: Bugzilla 2.16.4 not supported. The P4DTI does not support Bugzilla 2.16.4 (released on 2003-11-03). OPTIONAL job000828: "licence" should read "license" In various places in the P4DTI sources, test suite, manuals, and other materials, the word "licence" is used. This is the UK English spelling of the word spelled as "license" in the US. P4DTI project policy is to use US English spelling. NICE job000832: P4DTI checksum script doesn't know jobspec scripts The P4DTI comes with a checksum script to compute a checksum of the P4DTI sources. Two new source files (check_jobspec.py and extend_jobspec.py) are not included. 5.10. WHAT WAS FIXED IN RELEASE 2.0.0 ESSENTIAL job000522: P4DTI may fail if Perforce client exists and is broken The P4DTI creates a Perforce client when it first runs. The client name is "p4dti-" concatenated with the machine name (as returned by Python's socket.gethostname() function). This Perforce client may already exist, and may have a clientspec which is broken in such a way that it prevents the P4DTI from running, as reported by a customer [1]. job000627: P4DTI supports TeamTrack, but Perforce doesn't The P4DTI claims to support TeamTrack integration, but Perforce (and Ravenbrook) no longer supports, maintains, or develops the TeamTrack integration. This has been handed over to TeamShare, who will support, maintain, and develop the integration from now on. job000692: replicate_p documentation needs more examples The replicate_p configuration parameter in the P4DTI allows administrators to select particular issues from the defect tracker for replication. This is documented briefly in the AG and somewhat more extensively in the AAG, but the documentation is still a little sparse. In particular, there is only one example for the Bugzilla integration (currently the only supported integration). job000693: Changing rid and running refresh script causes confusion If the administrator changes the 'rid' configuration parameter after the P4DTI has been installed and run, the replicator will no longer replicate the jobs and issues which it was previously replicating. This is correct behaviour, because those jobs and issues 'belong' to a different replicator (one with the old 'rid'). If the 'refresh.py' script is then run, it attempts to replicate all currently-replicated issues (or new issues which pass the replicate_p test). This is wrong: it should only attempt to replicate issues with the correct rid or new issues which pass the replicate_p test. A deeply confusing error message is generated (a _mysql_exceptions.IntegrityError message, with a lengthy backtrace): job000694: check_jobs doesn't work on Windows if .py file association is set If the .py file association is set on Windows (so typing "p4" runs Python on p4.py), then running the check_jobs.py script in the P4DTI install directory fails with a misleading error message: job000695: AG doesn't specify using P4 'admin' access level Perforce 2002.2 introduces a new access level called 'admin', which has exactly the capabilities required for the P4DTI replicator user. The existing documentation (AG section 5.2.1 [1]) states that the replicator user has to be a "super user", which is no longer true. job000696: P4DTI documentation covers old defect tracker versions The P4DTI documentation is out-of-date with respect to the currently-supported versions of defect trackers. Specifically, TeamTrack is no longer supported at all, and neither are releases of Bugzilla prior to 2.14.4 (on Windows and Linux/Unix) and 2.16.1 (on Linux/Unix). job000698: P4DTI installation docs are lengthy and confusing Installing the P4DTI is not actually hard, but the documentation may make it appear so. The AG devotes thousands of words to describing the installation and initial configuration of the P4DTI. 5.11. WHAT WAS FIXED IN RELEASE 1.5.3 ESSENTIAL job000642: AG "patching Bugzilla" section needs to explain "patch" for Windows The P4DTI for Bugzilla needs to apply a patch to Bugzilla using the program "patch". This program is provided as standard on Unix and Linux, but not on Windows. In the AG, section 3.4.1 "Software Prerequisites", we say that "patch" is required and provide a link to an implementation of "patch" for Windows. However, this information is not included in section 5.4.1, "Patching Bugzilla", which a user installing the P4DTI will be reading when "patch" is actually required. job000643: Perforce 2002.2 not supported The Perforce 2002.2 release is imminent. The P4DTI works with this release but does not say so in the documentation (in particular in the release notes). job000644: Broken WinZip registration causes embarrassing message The copy of WinZip on our release build machine (sandpiper.ravenbrook.com) is licensed, but somehow lost its license key between P4DTI release 1.4.2 and P4DTI release 1.5.0. Running a self-extracting archive created with this copy of WinZip now displays a message: "This copy of WinZip Self-Extractor is NOT LICENSED for distribution. Any distribution of this file is prohibited and is a violation of US Copyright Law and international treaty." This looks bad. 5.12. WHAT WAS FIXED IN RELEASE 1.5.2 ESSENTIAL job000633: Readme.txt has an installer filename wrong The P4DTI readme file, readme.txt, says 'On the Bugzilla Windows machine, run the "p4dti-bugzillawin-1.5.1.exe" installer program that came with this document.' The installer program is actually called "p4dti-bugzilla-1.5.1.exe". job000635: AG doesn't offer "patch" utility for Windows Installing the P4DTI for Bugzilla requires the use of the utility "patch". This is not standard on Windows, and the P4DTI for Bugzilla is now supported on Windows. The AG should explain that "patch" has to be installed, and offer a source of it for Windows. Our test machine has Cygwin installed, which comes with "patch". job000636: Applying Bugzilla patch can put file in wrong place The Bugzilla 2.16.1 patch provided with the P4DTI includes the entirety of a a new file, template/en/custom/bug/edit.html.tmpl. If the patch is applied simply with "patch < bugzilla-2.16.1.patch", this new file is created in the main bugzilla directory. job000637: MySQLdb RPM depends on mx Python module which may not be present The Bugzilla P4DTI requires the Python "MySQLdb" package, to connect to the MySQL database containing the Bugzilla data. This package is available in various forms. The AG links to an RPM for MySQLdb 0.9.1 for Red Hat Linux 7.3. This RPM requires another package, called "mx", to be present in order to install successfully. The AG should either link to an RPM which doesn't require mx or should mention that this mx package is necessary and provide a link to it. OPTIONAL job000632: AG says "doeditparams.pl" not "doeditparams.cgi" In describing the Bugzilla patch, the AG states that it modifies the file "doeditparams.pl". The actual name of this file is "doeditparams.cgi". 5.13. WHAT WAS FIXED IN RELEASE 1.5.1 CRITICAL job000628: Bugzilla 2.16 and 2.16.1 patches are broken The patches provided with P4DTI 1.5.0 for Bugzilla 2.16 and 2.16.1 are broken. Using the Bugzilla bug form with these patches results in a "Software error" message in the Bugzilla user interface, complaining about global symbols "$rid" and "$sid": 5.14. WHAT WAS FIXED IN RELEASES UP TO 1.5.0 For information about what was fixed in releases up to and including 1.5.0, see the release notes for that release: A. REFERENCES None. B. DOCUMENT HISTORY 2002-02-01 GDR Noted support for TeamTrack version 5.5. 2002-02-04 GDR Updated for release 1.4.0. 2002-03-14 NB Removed support for TeamTrack 5.02. 2002-04-09 NB Updated for release 1.4.1. 2002-04-19 NB Updated for release 1.4.2. 2002-06-04 GT Updated for Bugzilla on Windows 2000 port for release 1.4.2. 2002-06-26 RB Merged Bugzilla for Windows 2000 port into Ravenbrook sources. 2002-10-30 NB Tidied up in preparation for 1.5 releases. 2002-11-01 NB Updated for release 1.5.0. 2002-11-14 RB Removed TeamTrack support, as this has been handed off to TeamShare. 2002-11-20 NB Updated for release 1.5.1. 2003-12-13 NB Updated for release 2.1.0. 2003-12-17 NB Updated for release 2.1.1. 2004-01-08 NB Updated for release 2.1.2. 2004-08-02 NB Updated for release 2.2.0. 2005-02-03 NB Updated for release 2.2.1. 2005-02-04 NB Updated for release 2.2.2. 2005-10-21 NB Updated for release 2.3.0. 2006-02-09 NB Updated for release 2.3.1. 2006-03-01 NB Updated for release 2.3.2. C. COPYRIGHT AND LICENSE This document is copyright (C) 2002 Perforce Software, Inc. All rights reserved. Redistribution and use of this document in any form, with or without modification, is permitted provided that redistributions of this document retain the above copyright notice, this condition and the following disclaimer. THIS DOCUMENT IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENT, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. $Id: //info.ravenbrook.com/project/p4dti/release/2.3.2/release-notes.txt#1 $