Switch the 'modify' code of admin/field.php to use templates
[bugdar.git] / docs / changes.txt
1 2.0.0 Beta 1
2 ===============================
3 - Enhancement: Custom columns can now be displayed on the bug listings (bug://report/73)
4
5 1.2.3
6 ===============================
7 - Fixed: #121: Custom select field that is mandatory doesn't accept the first option as a valid entry
8 - Fixed: Improved XHTML compliance in various templates
9 - Fixed: #134: Column headers (defined in includes/definitions.php) were not marked with T() for translation
10 - Change: Required custom select fields will no longer show the empty option (these fields could not be saved as empty, though, because they wouldn't validate -- this is purely an interface change)
11 - Change: The description (first comment) is now stored in a separate variable from the rest of the comments, allowing for one to move its placement in templates/showreport.tpl
12 - Fixed: #148: The permission mask fields were smallint, when they should be int to hold larger int values that permission masks have
13 - Fixed: #67: MySQL's strict mode would cause installation to fail
14 - Change: Authentication configuration settings are now stored in includes/auth/config.php
15 - Fixed: When using an auth module, upon first login via the auth system a bunch of errors could occur that would not affect the actual process
16 - New: Added an IPB2 auth module
17
18 1.2.2
19 ===============================
20 - Fixed: A "Call-time pass-by-reference has been deprecated" on search.php
21 - Fixed: Users could not be approved due to a improper email template paths
22 - Fixed: After mass-updating a search result set, if the search criteria were changed the user would be stuck in a "no results" error (bug://report/93)
23 - Change: Do not show the version number on non-admin pages (bug://report/95)
24 - Fixed: If a user has set a language that does not exist anymore, then bug notifications would fail (bug://report/97)
25 - Fixed: Users of UTF8 languages would experience problems after upgrading (if the $utf8 config directive as ON) because the installer wasn't running in UTF8
26 - Fixed: In Authentication::_createBugdarUser there was a variable capitalization error (bug://report/106)
27 - Fixed: Comments posted by guests could not be deleted (bug://report/120)
28 - Change: There's now a (hidden debug) option to use a custom .mo reader instead of the built-in Gettext extension for localization (bug://report/49)
29
30 1.2.1
31 ===============================
32 - Change: In installation and upgrade documentation, it is now advised that users delete install/global.php (bug://report/91)
33 - Fixed: In order for new results to show up on a rerun search query, the page would have to be refreshed twice (bug://report/90)
34 - Fixed: The installer sets the wrong version number
35
36 1.2.0
37 ===============================
38 - Fixed: In userctrl_search.tpl, the floated elements need to be before unfloated ones otherwise Gecko engine offsets it by a line
39 - Fixed: Closed a SQL injection vector in register.php
40 - Fixed: Users could not vote against a bug due to too tight sanitization (bug://report/84)
41 - Fixed: A "call to undefined function A()" would be thrown under some occasions when viewing a bug
42 - Change: Email templates are now found in the locale/ directory so they can be translated (bug://report/81)
43 - Fixed: Column headers were not translated for multiple languages (bug://report/79)
44 - Fixed: Multibyte language emails are now sent out correctly (bug://report/82)
45
46 1.2.0 Release Candidate 1
47 ===============================
48 - Enhancement: Allow sorting and display of the "assigned to" column on grid display
49 - Fixed: Comments wouldn't be displayed in a right-to-left fashion if the language is RTL (bug://report/80)
50 - Fixed: When submitting the lost password form, error checking was disregarded because we were checking for errors the old way
51 - Change: Force utf8 as the default installation collation for MySQL
52
53 1.2.0 Beta 3
54 ===============================
55 - Fixed: If Gettext isn't installed, a function-not-found error would be thrown
56 - Fixed: On PHP4 systems, a "call to member non-object" error would be thrown because the Authentication class does not have a PHP4 constructor
57 - Fixed: In lost password reset emails, the subject would appear as "Array['trackertitle']" because the variable was not enclosed in curly braces
58 - Fixed: On PHP4 systems, a bug in the BugAPI would prevent any data from being saved because PHP4 doesn't support call_user_func() of parent:: selectors
59 - Change: When clicking the "[Run Search]" link in the "Saved Searches" section of the "Options" tab, force the search to rerun
60 - Fixed: Some email roles would not get notified under certain circumstances because the list of users to notify was reset
61 - Fixed: Errors would occurr on installation due to a problem with not loading all the data at the right time
62 - Enhancement: The installer will now check to ensure that all the proper MySQL permissions are enabled
63 - Fixed: A PHP warning could be generated due to passing an argument by reference (bug://report/78)
64
65 1.2.0 Beta 2
66 ===============================
67 - Fixed: Emails wouldn't be sent out for new comments due to a bug with updating the notices array
68 - Fixed: Searches wouldn't be rerun after 15 minutes because of a typo in the time calculation
69 - Fixed: The installer would show an error if gettext wasn't installed because the emulator wasn't loaded early enough
70 - Fixed: Close a large bug that would cause a PHP error to be thrown regarding string offsets during notification processing
71 - Fixed: Email notifications would be essentially empty in all circumstances
72 - Change: Removed the stylevars system in place of additional CSS classes for formatting of tables and alternate row colors
73 - Fixed: Defining the NO_VERSION_CHECK constant wouldn't work due to a typo in admin/index.php
74 - Fixed: Automations wouldn't properly save custom field changes in the admin section
75 - Fixed: Automations would have no effect on custom fields when running them from the edit screen
76 - Fixed: A SQL error would occur when saving a new usergroup
77 - Fixed: In the product-level permissions screens, not all the products would be listed
78 - Fixed: A minor display issue would occur in a rare instance when showing an error message when trying to add a version without a product
79 - Fixed: If any fields had invalid data in editreport.php no validation errors would be thrown
80 - Fixed: The Logging system would add extra empty logs that would pollute the database; fixed this and then added queries in showhistory.php to clean it up
81 - Fixed: PHP smart tags were used in the installer, which if not enabled on the server would produce strange output (bug://report/67)
82 - Enhancement: Users can now belong to a single primary usergroup and multiple secondary groups, greatly increasing permission flexibility (bug://report/70)
83 - Enahncement: Usergroups can be cloned to allow fast duplication of permissions
84 - Fixed: Even after calling UsergroupAPI::delete(), there would still be usergroup remnants in bugfieldpermission and permission tables
85 - Fixed: The javascript cancel buttons wouldn't work due to a parse error
86 - Fixed: When approving users, the approval email would never be sent and a method not found error would be shown
87
88 1.2.0 Beta 1
89 ===============================
90 - Change: When a user does not have any favorites in his list, show a message instead of an empty screen
91 - Enhancement: Added the ability to show all the users in a paginated list in the admin section (bug://report/55)
92 - Enhancement: Can export search results to an XML file (bug://report/41)
93 - Enhancmenet: Links in comments can be parsed if the option is checked (bug://report/2)
94 - Enhancement: Components can now be displayed on the bug grid (bug://report/43)
95 - Enhancement: Votes can now be displayed and sorted on the bug grid (bug://report/13)
96 - Enhancement: Users can save a search so they can rerun it at any time
97 - Fixed: Component and product changes wouldn't appear correcly on showhistory.php
98 - Enhancement: Versions can be marked "Obsolete" so new bugs cannot be filed against them
99 - Change: When there are no bugs to display on index.php, don't show an empty grid, but rather an error message
100 - Optimize: Reduce a query on bug updates by not querying the automation system if it is not being used
101 - Optimize: Move custom field data into the bug table to reduce the use of JOINs
102 - Optimize: Remove a query on userctrl.php's save options called by build_assignedto() because the API already does this for us
103 - Optimize: Setting system cleanup that improves speed by reducing queries and not using eval()
104 - Enhancement: Search results can be mass-updated to change bug fields
105 - Change: Search system no longer stores the actual query of the search, but rather the paramters
106 - Enhancement: Added a lost password reset system
107 - Fixed: Cached usernames would be cleared by the UserAPI if the display name wasn't set in the values array
108 - Enhancement: Extracted email text to the template system to make it easier to modify them
109 - Enhancement: Improved the admin security system by creating a session system that is much harder to bypass
110 - Change: Cleaned and refactored up the MessageReporter class
111 - Optimize: Template are now cached in the database to greatly improve speed; this does not effect editing templates at all
112 - Enhancement: An Authentication API was created in order to allow custom applications or databases to be used when authenticating at either login or with cookies
113
114 1.1.5
115 ===============================
116 - Fixed a potential SQL error on search.php because no results were found (bug://report/62)
117 - Fixed a SQL error on admin/user.php when adding a new user from the admin section (bug://report/63)
118 - When adding a new user from the admin section, email options were not saved properly
119 - Added an option to only perform header redirects instead of intermediate-stage redirects (bug://report/65)
120 - Fixed a foreach() error after adding a new user in the admin section without email options [admin/user.php#102]
121 - Fixed a minor typo on the guest welcome banner (bug://report/66)
122
123 1.1.4
124 ===============================
125 - Time zones with half-hours are not saved because the field only allows INTs (but://report/38)
126 - Fixed a SQL error received upon deleting a resolution (but://report/40)
127 - When searching and selecting multiple items for a field, only the first one is used in the search (but://report/39)
128 - Need to cast the unserialized data to an array to remove an implode() warning [admin/field.php#235]
129 - When $bugsys->options['pagelinks'] is set to 0, it now actually does its advertised behavior (but://report/45)
130 - Foreign langauge users cannot use the product/component editing system beacause localized strings are used to create the do actions instead of english variable ones (but://report/42)
131 - Fixed a SQL error that would occur when editing a report with no emails linked to it (but://report/46)
132 - Added the ability to delete attachments from the database (but://report/47)
133 - Fixed a scrollpane bug related to new reply <textarea>s in IE (but://report/48)
134 - In the "My Controls" tab, change the name of the email and password fields to prevent autocomplete from working on them
135 - Include the Gettext mimic functions into the installer so people without the PHP extension can install Bugdar (but://report/51)
136 - Fixed a SQL error that would occur when editing or deleting comments (but://report/52)
137 - Allow administrators to set the default time zone which guests view all times and dates in (but://report/53)
138 - The "[Edit]" and "[Delete]" options for attachments were off by one line (but://report/56)
139 - Fixed a spelling error in search.php when there is no search criteria
140 - Adding a quick search feature to the header bar (but://report/57)
141 - Fixed an occurence in header.tpl where the $stylevar align wasn't used, but a hard-coded one was
142 - Only allow JPG, JPEG, PNG, and GIF attachments to be displayed inline because all other types could lead to an XSS attack
143 - Added maxlength attributes to all <input type="text"/> fields so the database doesn't truncate (but://report/58)
144 - Fixed display issues in Firefox for RTL languages in the bug report screen and attachment display (but://report/59)
145 - Localized the version checking information strings in admin/index.php
146 - Localized the word "Home" in the admin/index.php <title>
147 - Fixed a bug in admin/user.php where email options would be changed for the admin making the changes to another user's account instead of that user
148 - Emails weren't being sent under certain conditions for new comments
149
150 1.1.3
151 ===============================
152 - If a user leaves a comment and does not have bug change access, data loss occurs
153 - Fixed IE's redirection issue when using Message_Reporter->redirect() (but://report/32)
154 - On the admin login page, prevent the number "15" from appearing as text and marked another string for translation that was missed
155 - Error messages are no longer hidden in IE6 (but://report/30)
156
157 1.1.2
158 ===============================
159 - Fixed a SQL injection on login.php (but://report/36)
160 - Fixed potential SQL injections on search.php
161 - Fixed potential SQL injections on install/install.php
162
163 1.1.1
164 ===============================
165 - Registration email functions do not work because they are not ISSO2/Mail compatible [register.php]
166 - Removed TABLE_PREFIX-related SQL errors in syndicate.php
167 - Use the correct language variable key for exporting the XML encoding in syndicate.php
168 - API-level errors are not caught in the registration process before insertion because of user_cumulative [register.php]
169 - Remove warnings on explain.php?do=products (but://report/29)
170 - Removed SQL errors when deleting a product or version due to bad column names (but://report/28) [admin/product.php]
171 - Added a way to view and approve "Pending" and "Awaiting" users
172 - Prevent a weird bug with notifications where multiple emails would be sent out to the wrong people
173 - Numerous improvements for RTL languages (but://report/34)
174
175 1.1.0
176 ===============================
177 - When gettext is not installed, a "method call on unobject" error is thrown
178 - Renamed "automatic action" to "automation"
179 - If no user comment is entered but there's an automation comment, then the automation comment is no longer disregarded
180 - Get rid of a foreach() warning if there are no products [admin/product.php#317]
181 - If no custom fields were setup, an empty query error would be thrown [newreport.php#130]
182 - If no custom fields were present, adding an automation would fail [admin/automation.php#74]
183 - Remove a warning when saving a usergroup and there are no custom fields present [admin/usergroup.php#221]
184 - Update cached usernames when the display name changes
185
186 1.1.0 Release Candidate 1
187 ===============================
188 - Fixed many problems with install/install.php
189 - Changed array casting instances to is_array() checks, which are better
190 - Made some of the email notifications better-worded
191 - Fix the correct stylevar for language codes
192 - Fixed another can_perform() product-based permissions check [search.php]
193 - More changes to syndicate.php to increase performance
194 - Add checks to newreport.php and search.php to see if there are products or versions, if there aren't, then throw a message about needing them to be setup
195 - Process custom field data on newreport.php
196 - Add regex matching check to process_custom_fields()
197 - Missed some string conversions to gettext
198 - If cookies do not authenticate right, unset them [includes/init.php]
199
200 1.1.0 Beta 2
201 ===============================
202 - Array casting to remove foreach() warnings [editreport.php#132]
203 - Update last post information after deleting a comment (but://report/25)
204 - Improved Atom feed by using a <table> and properly specifying type information
205 - Changed the access key for "Save Report and Add Another" button to E
206 - Removed potential warnings when there are no products [includes/functions.php#417] (but://report/26)
207 - Removed potential warnings if there is no page navigator [class_pagination.php#243] (but://report/26)
208 - Created a Language API
209 - Fix a call to a non-object error [editcomment.php#116]
210 - Switch to gettext language system instead of the XML-strings format
211 - Fixing warnings related to Printer->page_confirm() throughout the entire admin section
212 - After you delete a resolution, severity, priority, or status, set all bugs with the deleted field item back to the value set as default
213 - Fixed a bug where there could be two <select> menus in userctrl.php because we double-wrapped a <select> [userctrl.tpl]
214 - Cast to array to remove foreach() warnings [userctrl.php#160]
215 - Fixed a bug that would cause searching to result in a SQL error
216 - Added better checking of hidden bugs for the favorites list
217 - Better permissions checking in vote.php, viewattachment.php, attachment.php, showhistory.php, and favorite.php
218 - Fixed numerous permission checks in showreport.php
219 - Added a permission to allow viewing of one's hidden reported bugs ("canviewownhidden")
220 - Added an is_array() check to prevent foreach() warnings [admin/user.php#135]
221
222 1.1.0 Beta 1
223 ===============================
224 - User help cache was not rebuilt for descriptions in custom fields (but://report/7)
225 - Custom fields did not appear on newreport.php (but://report/8)
226 - If the first SQL query fails (datastore fetch), show a link to the installer (but://report/20)
227 - Removed potential divide by 0 warnings in showreport.php under PHP5
228 - No longer highlight the <title> and <input> tags when viewing a bug report (but://report/21)
229 - Removed potential implode() warnings in showreport.php under PHP5
230 - When logging out, you will be redirected to the page you were previously viewing
231 - Rewrote the logging mechanism
232 - Usernames are now cached in the database for bug reports to remove the need to do complex joins at runtime
233 - Added notification system (but://report/11)
234 - When searching, you can now select multiple values for <select> menus (but://report/3)
235 - Add a notice for guests explaining that registration is a good thing (but://report/19)
236 - Create a separate screen that lists a user's favourites (but://report/12)
237 - Atom syndication of the bugs list (but://report/18)
238 - Removed the useless "dependency" table
239 - Added the following APIs:
240 - Attachment
241 - Automatic action
242 - Bug
243 - Comment
244 - Custom field
245 - Priority
246 - Resolution
247 - Severity
248 - User
249 - Usergroup
250 - User help
251 - Added support for DST observation (but://report/22)
252 - Data (bugs and comments) can now be removed (but://report/16)
253 - Specific statuses can be hidden by the administrator and users individually (but://report/9)
254 - Column sorting of bug lists (but://report/14)
255 - Added a version checker in the admin section
256 - Removed the plus sign in "class1 + class2" for HTML CSS class attributes
257
258 1.0.1
259 ===============================
260 - Fixed a SQL error in voting for those with a table prefix (but://report/6)
261 - Users with register_globals ON can now install software
262 - Users with register_globals ON can now log in
263