##// END OF EJS Templates
Merged r9831 from trunk....
Jean-Philippe Lang -
r9661:b3b829c025f9
parent child
Show More
@@ -1,2014 +1,2015
1 1 == Redmine changelog
2 2
3 3 Redmine - project management software
4 4 Copyright (C) 2006-2012 Jean-Philippe Lang
5 5 http://www.redmine.org/
6 6
7 7 == TBD v1.4.4
8 8
9 * Defect #11160: SQL Error on time report if a custom field has multiple values for an entry
9 10 * Defect #11061: Cannot choose commit versions to view differences in Git/Mercurial repository view
10 11 * Defect #11112: REST API - custom fields in POST/PUT ignored for time_entries
11 12 * Defect #11133: Wiki-page section edit link can point to incorrect section
12 13 * Feature #6597: Configurable session lifetime and timeout
13 14 * Patch #11113: Small glitch in German localization
14 15
15 16 == 2012-06-05 v1.4.3
16 17
17 18 * Defect #11038: "Create and continue" should preserve project, issue and activity when logging time
18 19 * Defect #11046: Redmine.pm does not support "bind as user" ldap authentication
19 20 * Defect #11051: reposman.rb fails in 1.4.2 because of missing require for rubygems
20 21 * Fix for Rails vulnerability CVE-2012-2660
21 22
22 23 == 2012-05-13 v1.4.2
23 24
24 25 * Defect #10744: rake task redmine:email:test broken
25 26 * Defect #10787: "Allow users to unsubscribe" option is confusing
26 27 * Defect #10827: Cannot access Repositories page and Settings in a Project - Error 500
27 28 * Defect #10829: db:migrate fails 0.8.2 -> 1.4.1
28 29 * Defect #10832: REST Uploads fail with fastcgi
29 30 * Defect #10837: reposman and rdm-mailhandler not working with ruby 1.9.x
30 31 * Defect #10856: can not load translations from hr.yml with ruby1.9.3-p194
31 32 * Defect #10865: Filter reset when deleting locked user
32 33 * Feature #9790: Allow filtering text custom fields on "is null" and "is not null"
33 34 * Feature #10778: svn:ignore for config/additional_environment.rb
34 35 * Feature #10875: Partial Albanian Translations
35 36 * Feature #10888: Bring back List-Id to help aid Gmail filtering
36 37 * Patch #10733: Traditional Chinese language file (to r9502)
37 38 * Patch #10745: Japanese translation update (r9519)
38 39 * Patch #10750: Swedish Translation for r9522
39 40 * Patch #10785: Bulgarian translation (jstoolbar)
40 41 * Patch #10800: Simplified Chinese translation
41 42
42 43 == 2012-04-20 v1.4.1
43 44
44 45 * Defect #8574: Time report: date range fields not enabled when using the calendar popup
45 46 * Defect #10642: Nested textile ol/ul lists generate invalid HTML
46 47 * Defect #10668: RSS key is generated twice when user is not reloaded
47 48 * Defect #10669: Token.destroy_expired should not delete API tokens
48 49 * Defect #10675: "Submit and continue" is broken
49 50 * Defect #10711: User cannot change account details with "Login has already been taken" error
50 51 * Feature #10664: Unsubscribe Own User Account
51 52 * Patch #10693: German Translation Update
52 53
53 54 == 2012-04-14 v1.4.0
54 55
55 56 * Defect #2719: Increase username length limit from 30 to 60
56 57 * Defect #3087: Revision referring to issues across all projects
57 58 * Defect #4824: Unable to connect (can't convert Net::LDAP::LdapError into String)
58 59 * Defect #5058: reminder mails are not sent when delivery_method is :async_smtp
59 60 * Defect #6859: Moving issues to a tracker with different custom fields should let fill these fields
60 61 * Defect #7398: Error when trying to quick create a version with required custom field
61 62 * Defect #7495: Python multiline comments highlighting problem in Repository browser
62 63 * Defect #7826: bigdecimal-segfault-fix.rb must be removed for Oracle
63 64 * Defect #7920: Attempted to update a stale object when copying a project
64 65 * Defect #8857: Git: Too long in fetching repositories after upgrade from 1.1 or new branch at first time
65 66 * Defect #9472: The git scm module causes an excess amount of DB traffic.
66 67 * Defect #9685: Adding multiple times the same related issue relation is possible
67 68 * Defect #9798: Release 1.3.0 does not detect rubytree under ruby 1.9.3p0 / rails 2.3.14
68 69 * Defect #9978: Japanese "permission_add_issue_watchers" is wrong
69 70 * Defect #10006: Email reminders are sent for closed issues
70 71 * Defect #10150: CSV export and spent time: rounding issue
71 72 * Defect #10168: CSV export breaks custom columns
72 73 * Defect #10181: Issue context menu and bulk edit form show irrelevant statuses
73 74 * Defect #10198: message_id regex in pop3.rb only recognizes Message-ID header (not Message-Id)
74 75 * Defect #10251: Description diff link in note details is relative when received by email
75 76 * Defect #10272: Ruby 1.9.3: "incompatible character encoding" with LDAP auth
76 77 * Defect #10275: Message object not passed to wiki macros for head topic and in preview edit mode
77 78 * Defect #10334: Full name is not unquoted when creating users from emails
78 79 * Defect #10410: [Localization] Grammar issue of Simplified Chinese in zh.yml
79 80 * Defect #10442: Ruby 1.9.3 Time Zone setting Internal error.
80 81 * Defect #10467: Confusing behavior while moving issue to a project with disabled Issues module
81 82 * Defect #10575: Uploading of attachments which filename contains non-ASCII chars fails with Ruby 1.9
82 83 * Defect #10590: WikiContent::Version#text return string with #<Encoding:ASCII-8BIT> when uncompressed
83 84 * Defect #10593: Error: 'incompatible character encodings: UTF-8 and ASCII-8BIT' (old annoing issue) on ruby-1.9.3
84 85 * Defect #10600: Watchers search generates an Internal error
85 86 * Defect #10605: Bulk edit selected issues does not allow selection of blank values for custom fields
86 87 * Defect #10619: When changing status before tracker, it shows improper status
87 88 * Feature #779: Multiple SCM per project
88 89 * Feature #971: Add "Spent time" column to query
89 90 * Feature #1060: Add a LDAP-filter using external auth sources
90 91 * Feature #1102: Shortcut for assigning an issue to me
91 92 * Feature #1189: Multiselect custom fields
92 93 * Feature #1363: Allow underscores in project identifiers
93 94 * Feature #1913: LDAP - authenticate as user
94 95 * Feature #1972: Attachments for News
95 96 * Feature #2009: Manually add related revisions
96 97 * Feature #2323: Workflow permissions for administrators
97 98 * Feature #2416: {background:color} doesn't work in text formatting
98 99 * Feature #2694: Notification on loosing assignment
99 100 * Feature #2715: "Magic links" to notes
100 101 * Feature #2850: Add next/previous navigation to issue
101 102 * Feature #3055: Option to copy attachments when copying an issue
102 103 * Feature #3108: set parent automatically for new pages
103 104 * Feature #3463: Export all wiki pages to PDF
104 105 * Feature #4050: Ruby 1.9 support
105 106 * Feature #4769: Ability to move an issue to a different project from the update form
106 107 * Feature #4774: Change the hyperlink for file attachment to view and download
107 108 * Feature #5159: Ability to add Non-Member watchers to the watch list
108 109 * Feature #5638: Use Bundler (Gemfile) for gem management
109 110 * Feature #5643: Add X-Redmine-Sender header to email notifications
110 111 * Feature #6296: Bulk-edit custom fields through context menu
111 112 * Feature #6386: Issue mail should render the HTML version of the issue details
112 113 * Feature #6449: Edit a wiki page's parent on the edit page
113 114 * Feature #6555: Double-click on "Submit" and "Save" buttons should not send two requests to server
114 115 * Feature #7361: Highlight active query in the side bar
115 116 * Feature #7420: Rest API for projects members
116 117 * Feature #7603: Please make editing issues more obvious than "Change properties (More)"
117 118 * Feature #8171: Adding attachments through the REST API
118 119 * Feature #8691: Better handling of issue update conflict
119 120 * Feature #9803: Change project through REST API issue update
120 121 * Feature #9923: User type custom fields should be filterable by "Me".
121 122 * Feature #9985: Group time report by the Status field
122 123 * Feature #9995: Time entries insertion, "Create and continue" button
123 124 * Feature #10020: Enable global time logging at /time_entries/new
124 125 * Feature #10042: Bulk change private flag
125 126 * Feature #10126: Add members of subprojects in the assignee and author filters
126 127 * Feature #10131: Include custom fiels in time entries API responses
127 128 * Feature #10207: Git: use default branch from HEAD
128 129 * Feature #10208: Estonian translation
129 130 * Feature #10253: Better handling of attachments when validation fails
130 131 * Feature #10350: Bulk copy should allow for changing the target version
131 132 * Feature #10607: Ignore out-of-office incoming emails
132 133 * Feature #10635: Adding time like "123 Min" is invalid
133 134 * Patch #9998: Make attachement "Optional Description" less wide
134 135 * Patch #10066: i18n not working with russian gem
135 136 * Patch #10128: Disable IE 8 compatibility mode to fix wrong div.autoscroll scroll bar behaviour
136 137 * Patch #10155: Russian translation changed
137 138 * Patch #10464: Enhanced PDF output for Issues list
138 139 * Patch #10470: Efficiently process new git revisions in a single batch
139 140 * Patch #10513: Dutch translation improvement
140 141
141 142 == 2012-04-14 v1.3.3
142 143
143 144 * Defect #10505: Error when exporting to PDF with NoMethodError (undefined method `downcase' for nil:NilClass)
144 145 * Defect #10554: Defect symbols when exporting tasks in pdf
145 146 * Defect #10564: Unable to change locked, sticky flags and board when editing a message
146 147 * Defect #10591: Dutch "label_file_added" translation is wrong
147 148 * Defect #10622: "Default administrator account changed" is always true
148 149 * Patch #10555: rake redmine:send_reminders aborted if issue assigned to group
149 150 * Patch #10611: Simplified Chinese translations for 1.3-stable
150 151
151 152 == 2012-03-11 v1.3.2
152 153
153 154 * Defect #8194: {{toc}} uses identical anchors for subsections with the same name
154 155 * Defect #9143: Partial diff comparison should be done on actual code, not on html
155 156 * Defect #9523: {{toc}} does not display headers with @ code markup
156 157 * Defect #9815: Release 1.3.0 does not detect rubytree with rubgems 1.8
157 158 * Defect #10053: undefined method `<=>' for nil:NilClass when accessing the settings of a project
158 159 * Defect #10135: ActionView::TemplateError (can't convert Fixnum into String)
159 160 * Defect #10193: Unappropriate icons in highlighted code block
160 161 * Defect #10199: No wiki section edit when title contains code
161 162 * Defect #10218: Error when creating a project with a version custom field
162 163 * Defect #10241: "get version by ID" fails with "401 not authorized" error when using API access key
163 164 * Defect #10284: Note added by commit from a subproject does not contain project identifier
164 165 * Defect #10374: User list is empty when adding users to project / group if remaining users are added late
165 166 * Defect #10390: Mass assignment security vulnerability
166 167 * Patch #8413: Confirmation message before deleting a relationship
167 168 * Patch #10160: Bulgarian translation (r8777)
168 169 * Patch #10242: Migrate Redmine.pm from Digest::Sha1 to Digest::Sha
169 170 * Patch #10258: Italian translation for 1.3-stable
170 171
171 172 == 2012-02-06 v1.3.1
172 173
173 174 * Defect #9775: app/views/repository/_revision_graph.html.erb sets window.onload directly..
174 175 * Defect #9792: Ruby 1.9: [v1.3.0] Error: incompatible character encodings for it translation on Calendar page
175 176 * Defect #9793: Bad spacing between numbered list and heading (recently broken).
176 177 * Defect #9795: Unrelated error message when creating a group with an invalid name
177 178 * Defect #9832: Revision graph height should depend on height of rows in revisions table
178 179 * Defect #9937: Repository settings are not saved when all SCM are disabled
179 180 * Defect #9961: Ukrainian "default_tracker_bug" is wrong
180 181 * Defect #10013: Rest API - Create Version -> Internal server error 500
181 182 * Defect #10115: Javascript error - Can't attach more than 1 file on IE 6 and 7
182 183 * Defect #10130: Broken italic text style in edited comment preview
183 184 * Defect #10152: Attachment diff type is not saved in user preference
184 185 * Feature #9943: Arabic translation
185 186 * Patch #9874: pt-BR translation updates
186 187 * Patch #9922: Spanish translation updated
187 188 * Patch #10137: Korean language file ko.yml updated to Redmine 1.3.0
188 189
189 190 == 2011-12-10 v1.3.0
190 191
191 192 * Defect #2109: Context menu is being submitted twice per right click
192 193 * Defect #7717: MailHandler user creation for unknown_user impossible due to diverging length-limits of login and email fields
193 194 * Defect #7917: Creating users via email fails if user real name containes special chars
194 195 * Defect #7966: MailHandler does not include JournalDetail for attached files
195 196 * Defect #8368: Bad decimal separator in time entry CSV
196 197 * Defect #8371: MySQL error when filtering a custom field using the REST api
197 198 * Defect #8549: Export CSV has character encoding error
198 199 * Defect #8573: Do not show inactive Enumerations where not needed
199 200 * Defect #8611: rake/rdoctask is deprecated
200 201 * Defect #8751: Email notification: bug, when number of recipients more then 8
201 202 * Defect #8894: Private issues - make it more obvious in the UI?
202 203 * Defect #8994: Hardcoded French string "anonyme"
203 204 * Defect #9043: Hardcoded string "diff" in Wiki#show and Repositories_Helper
204 205 * Defect #9051: wrong "text_issue_added" in russian translation.
205 206 * Defect #9108: Custom query not saving status filter
206 207 * Defect #9252: Regression: application title escaped 2 times
207 208 * Defect #9264: Bad Portuguese translation
208 209 * Defect #9470: News list is missing Avatars
209 210 * Defect #9471: Inline markup broken in Wiki link labels
210 211 * Defect #9489: Label all input field and control tags
211 212 * Defect #9534: Precedence: bulk email header is non standard and discouraged
212 213 * Defect #9540: Issue filter by assigned_to_role is not project specific
213 214 * Defect #9619: Time zone ignored when logging time while editing ticket
214 215 * Defect #9638: Inconsistent image filename extensions
215 216 * Defect #9669: Issue list doesn't sort assignees/authors regarding user display format
216 217 * Defect #9672: Message-quoting in forums module broken
217 218 * Defect #9719: Filtering by numeric custom field types broken after update to master
218 219 * Defect #9724: Can't remote add new categories
219 220 * Defect #9738: Setting of cross-project custom query is not remembered inside project
220 221 * Defect #9748: Error about configuration.yml validness should mention file path
221 222 * Feature #69: Textilized description in PDF
222 223 * Feature #401: Add pdf export for WIKI page
223 224 * Feature #1567: Make author column sortable and groupable
224 225 * Feature #2222: Single section edit.
225 226 * Feature #2269: Default issue start date should become configurable.
226 227 * Feature #2371: character encoding for attachment file
227 228 * Feature #2964: Ability to assign issues to groups
228 229 * Feature #3033: Bug Reporting: Using "Create and continue" should show bug id of saved bug
229 230 * Feature #3261: support attachment images in PDF export
230 231 * Feature #4264: Update CodeRay to 1.0 final
231 232 * Feature #4324: Redmine renames my files, it shouldn't.
232 233 * Feature #4729: Add Date-Based Filters for Issues List
233 234 * Feature #4742: CSV export: option to export selected or all columns
234 235 * Feature #4976: Allow rdm-mailhandler to read the API key from a file
235 236 * Feature #5501: Git: Mercurial: Adding visual merge/branch history to repository view
236 237 * Feature #5634: Export issue to PDF does not include Subtasks and Related Issues
237 238 * Feature #5670: Cancel option for file upload
238 239 * Feature #5737: Custom Queries available through the REST Api
239 240 * Feature #6180: Searchable custom fields do not provide adequate operators
240 241 * Feature #6954: Filter from date to date
241 242 * Feature #7180: List of statuses in REST API
242 243 * Feature #7181: List of trackers in REST API
243 244 * Feature #7366: REST API for Issue Relations
244 245 * Feature #7403: REST API for Versions
245 246 * Feature #7671: REST API for reading attachments
246 247 * Feature #7832: Ability to assign issue categories to groups
247 248 * Feature #8420: Consider removing #7013 workaround
248 249 * Feature #9196: Improve logging in MailHandler when user creation fails
249 250 * Feature #9496: Adds an option in mailhandler to disable server certificate verification
250 251 * Feature #9553: CRUD operations for "Issue categories" in REST API
251 252 * Feature #9593: HTML title should be reordered
252 253 * Feature #9600: Wiki links for news and forums
253 254 * Feature #9607: Filter for issues without start date (or any another field based on date type)
254 255 * Feature #9609: Upgrade to Rails 2.3.14
255 256 * Feature #9612: "side by side" and "inline" patch view for attachments
256 257 * Feature #9667: Check attachment size before upload
257 258 * Feature #9690: Link in notification pointing to the actual update
258 259 * Feature #9720: Add note number for single issue's PDF
259 260 * Patch #8617: Indent subject of subtask ticket in exported issues PDF
260 261 * Patch #8778: Traditional Chinese 'issue' translation change
261 262 * Patch #9053: Fix up Russian translation
262 263 * Patch #9129: Improve wording of Git repository note at project setting
263 264 * Patch #9148: Better handling of field_due_date italian translation
264 265 * Patch #9273: Fix typos in russian localization
265 266 * Patch #9484: Limit SCM annotate to text files under the maximum file size for viewing
266 267 * Patch #9659: Indexing rows in auth_sources/index view
267 268 * Patch #9692: Fix Textilized description in PDF for CodeRay
268 269
269 270 == 2011-12-10 v1.2.3
270 271
271 272 * Defect #8707: Reposman: wrong constant name
272 273 * Defect #8809: Table in timelog report overflows
273 274 * Defect #9055: Version files in Files module cannot be downloaded if issue tracking is disabled
274 275 * Defect #9137: db:encrypt fails to handle repositories with blank password
275 276 * Defect #9394: Custom date field only validating on regex and not a valid date
276 277 * Defect #9405: Any user with :log_time permission can edit time entries via context menu
277 278 * Defect #9448: The attached images are not shown in documents
278 279 * Defect #9520: Copied private query not visible after project copy
279 280 * Defect #9552: Error when reading ciphered text from the database without cipher key configured
280 281 * Defect #9566: Redmine.pm considers all projects private when login_required is enabled
281 282 * Defect #9567: Redmine.pm potential security issue with cache credential enabled and subversion
282 283 * Defect #9577: Deleting a subtasks doesn't update parent's rgt & lft values
283 284 * Defect #9597: Broken version links in wiki annotate history
284 285 * Defect #9682: Wiki HTML Export only useful when Access history is accessible
285 286 * Defect #9737: Custom values deleted before issue submit
286 287 * Defect #9741: calendar-hr.js (Croatian) is not UTF-8
287 288 * Patch #9558: Simplified Chinese translation for 1.2.2 updated
288 289 * Patch #9695: Bulgarian translation (r7942)
289 290
290 291 == 2011-11-11 v1.2.2
291 292
292 293 * Defect #3276: Incorrect handling of anchors in Wiki to HTML export
293 294 * Defect #7215: Wiki formatting mangles links to internal headers
294 295 * Defect #7613: Generated test instances may share the same attribute value object
295 296 * Defect #8411: Can't remove "Project" column on custom query
296 297 * Defect #8615: Custom 'version' fields don't show shared versions
297 298 * Defect #8633: Pagination counts non visible issues
298 299 * Defect #8651: Email attachments are not added to issues any more in v1.2
299 300 * Defect #8825: JRuby + Windows: SCMs do not work on Redmine 1.2
300 301 * Defect #8836: Additional workflow transitions not available when set to both author and assignee
301 302 * Defect #8865: Custom field regular expression is not validated
302 303 * Defect #8880: Error deleting issue with grandchild
303 304 * Defect #8884: Assignee is cleared when updating issue with locked assignee
304 305 * Defect #8892: Unused fonts in rfpdf plugin folder
305 306 * Defect #9161: pt-BR field_warn_on_leaving_unsaved has a small gramatical error
306 307 * Defect #9308: Search fails when a role haven't "view wiki" permission
307 308 * Defect #9465: Mercurial: can't browse named branch below Mercurial 1.5
308 309
309 310 == 2011-07-11 v1.2.1
310 311
311 312 * Defect #5089: i18N error on truncated revision diff view
312 313 * Defect #7501: Search options get lost after clicking on a specific result type
313 314 * Defect #8229: "project.xml" response does not include the parent ID
314 315 * Defect #8449: Wiki annotated page does not display author of version 1
315 316 * Defect #8467: Missing german translation - Warn me when leaving a page with unsaved text
316 317 * Defect #8468: No warning when leaving page with unsaved text that has not lost focus
317 318 * Defect #8472: Private checkbox ignored on issue creation with "Set own issues public or private" permission
318 319 * Defect #8510: JRuby: Can't open administrator panel if scm command is not available
319 320 * Defect #8512: Syntax highlighter on Welcome page
320 321 * Defect #8554: Translation missing error on custom field validation
321 322 * Defect #8565: JRuby: Japanese PDF export error
322 323 * Defect #8566: Exported PDF UTF-8 Vietnamese not correct
323 324 * Defect #8569: JRuby: PDF export error with TypeError
324 325 * Defect #8576: Missing german translation - different things
325 326 * Defect #8616: Circular relations
326 327 * Defect #8646: Russian translation "label_follows" and "label_follows" are wrong
327 328 * Defect #8712: False 'Description updated' journal details messages
328 329 * Defect #8729: Not-public queries are not private
329 330 * Defect #8737: Broken line of long issue description on issue PDF.
330 331 * Defect #8738: Missing revision number/id of associated revisions on issue PDF
331 332 * Defect #8739: Workflow copy does not copy advanced workflow settings
332 333 * Defect #8759: Setting issue attributes from mail should be case-insensitive
333 334 * Defect #8777: Mercurial: Not able to Resetting Redmine project respository
334 335
335 336 == 2011-05-30 v1.2.0
336 337
337 338 * Defect #61: Broken character encoding in pdf export
338 339 * Defect #1965: Redmine is not Tab Safe
339 340 * Defect #2274: Filesystem Repository path encoding of non UTF-8 characters
340 341 * Defect #2664: Mercurial: Repository path encoding of non UTF-8 characters
341 342 * Defect #3421: Mercurial reads files from working dir instead of changesets
342 343 * Defect #3462: CVS: Repository path encoding of non UTF-8 characters
343 344 * Defect #3715: Login page should not show projects link and search box if authentication is required
344 345 * Defect #3724: Mercurial repositories display revision ID instead of changeset ID
345 346 * Defect #3761: Most recent CVS revisions are missing in "revisions" view
346 347 * Defect #4270: CVS Repository view in Project doesn't show Author, Revision, Comment
347 348 * Defect #5138: Don't use Ajax for pagination
348 349 * Defect #5152: Cannot use certain characters for user and role names.
349 350 * Defect #5251: Git: Repository path encoding of non UTF-8 characters
350 351 * Defect #5373: Translation missing when adding invalid watchers
351 352 * Defect #5817: Shared versions not shown in subproject's gantt chart
352 353 * Defect #6013: git tab,browsing, very slow -- even after first time
353 354 * Defect #6148: Quoting, newlines, and nightmares...
354 355 * Defect #6256: Redmine considers non ASCII and UTF-16 text files as binary in SCM
355 356 * Defect #6476: Subproject's issues are not shown in the subproject's gantt
356 357 * Defect #6496: Remove i18n 0.3.x/0.4.x hack for Rails 2.3.5
357 358 * Defect #6562: Context-menu deletion of issues deletes all subtasks too without explicit prompt
358 359 * Defect #6604: Issues targeted at parent project versions' are not shown on gantt chart
359 360 * Defect #6706: Resolving issues with the commit message produces the wrong comment with CVS
360 361 * Defect #6901: Copy/Move an issue does not give any history of who actually did the action.
361 362 * Defect #6905: Specific heading-content breaks CSS
362 363 * Defect #7000: Project filter not applied on versions in Gantt chart
363 364 * Defect #7097: Starting day of week cannot be set to Saturday
364 365 * Defect #7114: New gantt doesn't display some projects
365 366 * Defect #7146: Git adapter lost commits before 7 days from database latest changeset
366 367 * Defect #7218: Date range error on issue query
367 368 * Defect #7257: "Issues by" version links bad criterias
368 369 * Defect #7279: CSS class ".icon-home" is not used.
369 370 * Defect #7320: circular dependency >2 issues
370 371 * Defect #7352: Filters not working in Gantt charts
371 372 * Defect #7367: Receiving pop3 email should not output debug messages
372 373 * Defect #7373: Error with PDF output and ruby 1.9.2
373 374 * Defect #7379: Remove extraneous hidden_field on wiki history
374 375 * Defect #7516: Redmine does not work with RubyGems 1.5.0
375 376 * Defect #7518: Mercurial diff can be wrong if the previous changeset isn't the parent
376 377 * Defect #7581: Not including a spent time value on the main issue update screen causes silent data loss
377 378 * Defect #7582: hiding form pages from search engines
378 379 * Defect #7597: Subversion and Mercurial log have the possibility to miss encoding
379 380 * Defect #7604: ActionView::TemplateError (undefined method `name' for nil:NilClass)
380 381 * Defect #7605: Using custom queries always redirects to "Issues" tab
381 382 * Defect #7615: CVS diffs do not handle new files properly
382 383 * Defect #7618: SCM diffs do not handle one line new files properly
383 384 * Defect #7639: Some date fields do not have requested format.
384 385 * Defect #7657: Wrong commit range in git log command on Windows
385 386 * Defect #7818: Wiki pages don't use the local timezone to display the "Updated ? hours ago" mouseover
386 387 * Defect #7821: Git "previous" and "next" revisions are incorrect
387 388 * Defect #7827: CVS: Age column on repository view is off by timezone delta
388 389 * Defect #7843: Add a relation between issues = explicit login window ! (basic authentication popup is prompted on AJAX request)
389 390 * Defect #8011: {{toc}} does not display headlines with inline code markup
390 391 * Defect #8029: List of users for adding to a group may be empty if 100 first users have been added
391 392 * Defect #8064: Text custom fields do not wrap on the issue list
392 393 * Defect #8071: Watching a subtask from the context menu updates main issue watch link
393 394 * Defect #8072: Two untranslatable default role names
394 395 * Defect #8075: Some "notifiable" names are not i18n-enabled
395 396 * Defect #8081: GIT: Commits missing when user has the "decorate" git option enabled
396 397 * Defect #8088: Colorful indentation of subprojects must be on right in RTL locales
397 398 * Defect #8239: notes field is not propagated during issue copy
398 399 * Defect #8356: GET /time_entries.xml ignores limit/offset parameters
399 400 * Defect #8432: Private issues information shows up on Activity page for unauthorized users
400 401 * Feature #746: Versioned issue descriptions
401 402 * Feature #1067: Differentiate public/private saved queries in the sidebar
402 403 * Feature #1236: Make destination folder for attachment uploads configurable
403 404 * Feature #1735: Per project repository log encoding setting
404 405 * Feature #1763: Autologin-cookie should be configurable
405 406 * Feature #1981: display mercurial tags
406 407 * Feature #2074: Sending email notifications when comments are added in the news section
407 408 * Feature #2096: Custom fields referencing system tables (users and versions)
408 409 * Feature #2732: Allow additional workflow transitions for author and assignee
409 410 * Feature #2910: Warning on leaving edited issue/wiki page without saving
410 411 * Feature #3396: Git: use --encoding=UTF-8 in "git log"
411 412 * Feature #4273: SCM command availability automatic check in administration panel
412 413 * Feature #4477: Use mime types in downloading from repository
413 414 * Feature #5518: Graceful fallback for "missing translation" needed
414 415 * Feature #5520: Text format buttons and preview link missing when editing comment
415 416 * Feature #5831: Parent Task to Issue Bulk Edit
416 417 * Feature #6887: Upgrade to Rails 2.3.11
417 418 * Feature #7139: Highlight changes inside diff lines
418 419 * Feature #7236: Collapse All for Groups
419 420 * Feature #7246: Handle "named branch" for mercurial
420 421 * Feature #7296: Ability for admin to delete users
421 422 * Feature #7318: Add user agent to Redmine Mailhandler
422 423 * Feature #7408: Add an application configuration file
423 424 * Feature #7409: Cross project Redmine links
424 425 * Feature #7410: Add salt to user passwords
425 426 * Feature #7411: Option to cipher LDAP ans SCM passwords stored in the database
426 427 * Feature #7412: Add an issue visibility level to each role
427 428 * Feature #7414: Private issues
428 429 * Feature #7517: Configurable path of executable for scm adapters
429 430 * Feature #7640: Add "mystery man" gravatar to options
430 431 * Feature #7858: RubyGems 1.6 support
431 432 * Feature #7893: Group filter on the users list
432 433 * Feature #7899: Box for editing comments should open with the formatting toolbar
433 434 * Feature #7921: issues by pulldown should have 'status' option
434 435 * Feature #7996: Bulk edit and context menu for time entries
435 436 * Feature #8006: Right click context menu for Related Issues
436 437 * Feature #8209: I18n YAML files not parsable with psych yaml library
437 438 * Feature #8345: Link to user profile from account page
438 439 * Feature #8365: Git: per project setting to report last commit or not in repository tree
439 440 * Patch #5148: metaKey not handled in issues selection
440 441 * Patch #5629: Wrap text fields properly in PDF
441 442 * Patch #7418: Redmine Persian Translation
442 443 * Patch #8295: Wrap title fields properly in PDF
443 444 * Patch #8310: fixes automatic line break problem with TCPDF
444 445 * Patch #8312: Switch to TCPDF from FPDF for PDF export
445 446
446 447 == 2011-04-29 v1.1.3
447 448
448 449 * Defect #5773: Email reminders are sent to locked users
449 450 * Defect #6590: Wrong file list link in email notification on new file upload
450 451 * Defect #7589: Wiki page with backslash in title can not be found
451 452 * Defect #7785: Mailhandler keywords are not removed when updating issues
452 453 * Defect #7794: Internal server error on formatting an issue as a PDF in Japanese
453 454 * Defect #7838: Gantt- Issues does not show up in green when start and end date are the same
454 455 * Defect #7846: Headers (h1, etc.) containing backslash followed by a digit are not displayed correctly
455 456 * Defect #7875: CSV export separators in polish locale (pl.yml)
456 457 * Defect #7890: Internal server error when referencing an issue without project in commit message
457 458 * Defect #7904: Subprojects not properly deleted when deleting a parent project
458 459 * Defect #7939: Simultaneous Wiki Updates Cause Internal Error
459 460 * Defect #7951: Atom links broken on wiki index
460 461 * Defect #7954: IE 9 can not select issues, does not display context menu
461 462 * Defect #7985: Trying to do a bulk edit results in "Internal Error"
462 463 * Defect #8003: Error raised by reposman.rb under Windows server 2003
463 464 * Defect #8012: Wrong selection of modules when adding new project after validation error
464 465 * Defect #8038: Associated Revisions OL/LI items are not styled properly in issue view
465 466 * Defect #8067: CSV exporting in Italian locale
466 467 * Defect #8235: bulk edit issues and copy issues error in es, gl and ca locales
467 468 * Defect #8244: selected modules are not activated when copying a project
468 469 * Patch #7278: Update Simplified Chinese translation to 1.1
469 470 * Patch #7390: Fixes in Czech localization
470 471 * Patch #7963: Reminder email: Link for show all issues does not sort
471 472
472 473 == 2011-03-07 v1.1.2
473 474
474 475 * Defect #3132: Bulk editing menu non-functional in Opera browser
475 476 * Defect #6090: Most binary files become corrupted when downloading from CVS repository browser when Redmine is running on a Windows server
476 477 * Defect #7280: Issues subjects wrap in Gantt
477 478 * Defect #7288: Non ASCII filename downloaded from repo is broken on Internet Explorer.
478 479 * Defect #7317: Gantt tab gives internal error due to nil avatar icon
479 480 * Defect #7497: Aptana Studio .project file added to version 1.1.1-stable
480 481 * Defect #7611: Workflow summary shows X icon for workflow with exactly 1 status transition
481 482 * Defect #7625: Syntax highlighting unavailable from board new topic or topic edit preview
482 483 * Defect #7630: Spent time in commits not recognized
483 484 * Defect #7656: MySQL SQL Syntax Error when filtering issues by Assignee's Group
484 485 * Defect #7718: Minutes logged in commit message are converted to hours
485 486 * Defect #7763: Email notification are sent to watchers even if 'No events' setting is chosen
486 487 * Feature #7608: Add "retro" gravatars
487 488 * Patch #7598: Extensible MailHandler
488 489 * Patch #7795: Internal server error at journals#index with custom fields
489 490
490 491 == 2011-01-30 v1.1.1
491 492
492 493 * Defect #4899: Redmine fails to list files for darcs repository
493 494 * Defect #7245: Wiki fails to find pages with cyrillic characters using postgresql
494 495 * Defect #7256: redmine/public/.htaccess must be moved for non-fastcgi installs/upgrades
495 496 * Defect #7258: Automatic spent time logging does not work properly with SQLite3
496 497 * Defect #7259: Released 1.1.0 uses "devel" label inside admin information
497 498 * Defect #7265: "Loading..." icon does not disappear after add project member
498 499 * Defect #7266: Test test_due_date_distance_in_words fail due to undefined locale
499 500 * Defect #7274: CSV value separator in dutch locale
500 501 * Defect #7277: Enabling gravatas causes usernames to overlap first name field in user list
501 502 * Defect #7294: "Notifiy for only project I select" is not available anymore in 1.1.0
502 503 * Defect #7307: HTTP 500 error on query for empty revision
503 504 * Defect #7313: Label not translated in french in Settings/Email Notification tab
504 505 * Defect #7329: <code class="javascript"> with long strings may hang server
505 506 * Defect #7337: My page french translation
506 507 * Defect #7348: French Translation of "Connection"
507 508 * Defect #7385: Error when viewing an issue which was related to a deleted subtask
508 509 * Defect #7386: NoMethodError on pdf export
509 510 * Defect #7415: Darcs adapter recognizes new files as modified files above Darcs 2.4
510 511 * Defect #7421: no email sent with 'Notifiy for any event on the selected projects only'
511 512 * Feature #5344: Update to latest CodeRay 0.9.x
512 513
513 514 == 2011-01-09 v1.1.0
514 515
515 516 * Defect #2038: Italics in wiki headers show-up wrong in the toc
516 517 * Defect #3449: Redmine Takes Too Long On Large Mercurial Repository
517 518 * Defect #3567: Sorting for changesets might go wrong on Mercurial repos
518 519 * Defect #3707: {{toc}} doesn't work with {{include}}
519 520 * Defect #5096: Redmine hangs up while browsing Git repository
520 521 * Defect #6000: Safe Attributes prevents plugin extension of Issue model...
521 522 * Defect #6064: Modules not assigned to projects created via API
522 523 * Defect #6110: MailHandler should allow updating Issue Priority and Custom fields
523 524 * Defect #6136: JSON API holds less information than XML API
524 525 * Defect #6345: xml used by rest API is invalid
525 526 * Defect #6348: Gantt chart PDF rendering errors
526 527 * Defect #6403: Updating an issue with custom fields fails
527 528 * Defect #6467: "Member of role", "Member of group" filter not work correctly
528 529 * Defect #6473: New gantt broken after clearing issue filters
529 530 * Defect #6541: Email notifications send to everybody
530 531 * Defect #6549: Notification settings not migrated properly
531 532 * Defect #6591: Acronyms must have a minimum of three characters
532 533 * Defect #6674: Delete time log broken after changes to REST
533 534 * Defect #6681: Mercurial, Bazaar and Darcs auto close issue text should be commit id instead of revision number
534 535 * Defect #6724: Wiki uploads does not work anymore (SVN 4266)
535 536 * Defect #6746: Wiki links are broken on Activity page
536 537 * Defect #6747: Wiki diff does not work since r4265
537 538 * Defect #6763: New gantt charts: subject displayed twice on issues
538 539 * Defect #6826: Clicking "Add" twice creates duplicate member record
539 540 * Defect #6844: Unchecking status filter on the issue list has no effect
540 541 * Defect #6895: Wrong Polish translation of "blocks"
541 542 * Defect #6943: Migration from boolean to varchar fails on PostgreSQL 8.1
542 543 * Defect #7064: Mercurial adapter does not recognize non alphabetic nor numeric in UTF-8 copied files
543 544 * Defect #7128: New gantt chart does not render subtasks under parent task
544 545 * Defect #7135: paging mechanism returns the same last page forever
545 546 * Defect #7188: Activity page not refreshed when changing language
546 547 * Defect #7195: Apply CLI-supplied defaults for incoming mail only to new issues not replies
547 548 * Defect #7197: Tracker reset to default when replying to an issue email
548 549 * Defect #7213: Copy project does not copy all roles and permissions
549 550 * Defect #7225: Project settings: Trackers & Custom fields only relevant if module Issue tracking is active
550 551 * Feature #630: Allow non-unique names for projects
551 552 * Feature #1738: Add a "Visible" flag to project/user custom fields
552 553 * Feature #2803: Support for Javascript in Themes
553 554 * Feature #2852: Clean Incoming Email of quoted text "----- Reply above this line ------"
554 555 * Feature #2995: Improve error message when trying to access an archived project
555 556 * Feature #3170: Autocomplete issue relations on subject
556 557 * Feature #3503: Administrator Be Able To Modify Email settings Of Users
557 558 * Feature #4155: Automatic spent time logging from commit messages
558 559 * Feature #5136: Parent select on Wiki rename page
559 560 * Feature #5338: Descendants (subtasks) should be available via REST API
560 561 * Feature #5494: Wiki TOC should display heading from level 4
561 562 * Feature #5594: Improve MailHandler's keyword handling
562 563 * Feature #5622: Allow version to be set via incoming email
563 564 * Feature #5712: Reload themes
564 565 * Feature #5869: Issue filters by Group and Role
565 566 * Feature #6092: Truncate Git revision labels in Activity page/feed and allow configurable length
566 567 * Feature #6112: Accept localized keywords when receiving emails
567 568 * Feature #6140: REST issues response with issue count limit and offset
568 569 * Feature #6260: REST API for Users
569 570 * Feature #6276: Gantt Chart rewrite
570 571 * Feature #6446: Remove length limits on project identifier and name
571 572 * Feature #6628: Improvements in truncate email
572 573 * Feature #6779: Project JSON API
573 574 * Feature #6823: REST API for time tracker.
574 575 * Feature #7072: REST API for news
575 576 * Feature #7111: Expose more detail on journal entries
576 577 * Feature #7141: REST API: get information about current user
577 578 * Patch #4807: Allow to set the done_ratio field with the incoming mail system
578 579 * Patch #5441: Initialize TimeEntry attributes with params[:time_entry]
579 580 * Patch #6762: Use GET instead of POST to retrieve context_menu
580 581 * Patch #7160: French translation ofr "not_a_date" is missing
581 582 * Patch #7212: Missing remove_index in AddUniqueIndexOnMembers down migration
582 583
583 584
584 585 == 2010-12-23 v1.0.5
585 586
586 587 * #6656: Mercurial adapter loses seconds of commit times
587 588 * #6996: Migration trac(sqlite3) -> redmine(postgresql) doesnt escape ' char
588 589 * #7013: v-1.0.4 trunk - see {{count}} in page display rather than value
589 590 * #7016: redundant 'field_start_date' in ja.yml
590 591 * #7018: 'undefined method `reschedule_after' for nil:NilClass' on new issues
591 592 * #7024: E-mail notifications about Wiki changes.
592 593 * #7033: 'class' attribute of <pre> tag shouldn't be truncate
593 594 * #7035: CSV value separator in russian
594 595 * #7122: Issue-description Quote-button missing
595 596 * #7144: custom queries making use of deleted custom fields cause a 500 error
596 597 * #7162: Multiply defined label in french translation
597 598
598 599 == 2010-11-28 v1.0.4
599 600
600 601 * #5324: Git not working if color.ui is enabled
601 602 * #6447: Issues API doesn't allow full key auth for all actions
602 603 * #6457: Edit User group problem
603 604 * #6575: start date being filled with current date even when blank value is submitted
604 605 * #6740: Max attachment size, incorrect usage of 'KB'
605 606 * #6760: Select box sorted by ID instead of name in Issue Category
606 607 * #6766: Changing target version name can cause an internal error
607 608 * #6784: Redmine not working with i18n gem 0.4.2
608 609 * #6839: Hardcoded absolute links in my/page_layout
609 610 * #6841: Projects API doesn't allow full key auth for all actions
610 611 * #6860: svn: Write error: Broken pipe when browsing repository
611 612 * #6874: API should return XML description when creating a project
612 613 * #6932: submitting wrong parent task input creates a 500 error
613 614 * #6966: Records of Forums are remained, deleting project
614 615 * #6990: Layout problem in workflow overview
615 616 * #5117: mercurial_adapter should ensure the right LANG environment variable
616 617 * #6782: Traditional Chinese language file (to r4352)
617 618 * #6783: Swedish Translation for r4352
618 619 * #6804: Bugfix: spelling fixes
619 620 * #6814: Japanese Translation for r4362
620 621 * #6948: Bulgarian translation
621 622 * #6973: Update es.yml
622 623
623 624 == 2010-10-31 v1.0.3
624 625
625 626 * #4065: Redmine.pm doesn't work with LDAPS and a non-standard port
626 627 * #4416: Link from version details page to edit the wiki.
627 628 * #5484: Add new issue as subtask to an existing ticket
628 629 * #5948: Update help/wiki_syntax_detailed.html with more link options
629 630 * #6494: Typo in pt_BR translation for 1.0.2
630 631 * #6508: Japanese translation update
631 632 * #6509: Localization pt-PT (new strings)
632 633 * #6511: Rake task to test email
633 634 * #6525: Traditional Chinese language file (to r4225)
634 635 * #6536: Patch for swedish translation
635 636 * #6548: Rake tasks to add/remove i18n strings
636 637 * #6569: Updated Hebrew translation
637 638 * #6570: Japanese Translation for r4231
638 639 * #6596: pt-BR translation updates
639 640 * #6629: Change field-name of issues start date
640 641 * #6669: Bulgarian translation
641 642 * #6731: Macedonian translation fix
642 643 * #6732: Japanese Translation for r4287
643 644 * #6735: Add user-agent to reposman
644 645 * #6736: Traditional Chinese language file (to r4288)
645 646 * #6739: Swedish Translation for r4288
646 647 * #6765: Traditional Chinese language file (to r4302)
647 648 * Fixed #5324: Git not working if color.ui is enabled
648 649 * Fixed #5652: Bad URL parsing in the wiki when it ends with right-angle-bracket(greater-than mark).
649 650 * Fixed #5803: Precedes/Follows Relationships Broke
650 651 * Fixed #6435: Links to wikipages bound to versions do not respect version-sharing in Settings -> Versions
651 652 * Fixed #6438: Autologin cannot be disabled again once it's enabled
652 653 * Fixed #6513: "Move" and "Copy" are not displayed when deployed in subdirectory
653 654 * Fixed #6521: Tooltip/label for user "search-refinment" field on group/project member list
654 655 * Fixed #6563: i18n-issues on calendar view
655 656 * Fixed #6598: Wrong caption for button_create_and_continue in German language file
656 657 * Fixed #6607: Unclear caption for german button_update
657 658 * Fixed #6612: SortHelper missing from CalendarsController
658 659 * Fixed #6740: Max attachment size, incorrect usage of 'KB'
659 660 * Fixed #6750: ActionView::TemplateError (undefined method `empty?' for nil:NilClass) on line #12 of app/views/context_menus/issues.html.erb:
660 661
661 662 == 2010-09-26 v1.0.2
662 663
663 664 * #2285: issue-refinement: pressing enter should result to an "apply"
664 665 * #3411: Allow mass status update trough context menu
665 666 * #5929: https-enabled gravatars when called over https
666 667 * #6189: Japanese Translation for r4011
667 668 * #6197: Traditional Chinese language file (to r4036)
668 669 * #6198: Updated german translation
669 670 * #6208: Macedonian translation
670 671 * #6210: Swedish Translation for r4039
671 672 * #6248: nl translation update for r4050
672 673 * #6263: Catalan translation update
673 674 * #6275: After submitting a related issue, the Issue field should be re-focused
674 675 * #6289: Checkboxes in issues list shouldn't be displayed when printing
675 676 * #6290: Make journals theming easier
676 677 * #6291: User#allowed_to? is not tested
677 678 * #6306: Traditional Chinese language file (to r4061)
678 679 * #6307: Korean translation update for 4066(4061)
679 680 * #6316: pt_BR update
680 681 * #6339: SERBIAN Updated
681 682 * #6358: Updated Polish translation
682 683 * #6363: Japanese Translation for r4080
683 684 * #6365: Traditional Chinese language file (to r4081)
684 685 * #6382: Issue PDF export variable usage
685 686 * #6428: Interim solution for i18n >= 0.4
686 687 * #6441: Japanese Translation for r4162
687 688 * #6451: Traditional Chinese language file (to r4167)
688 689 * #6465: Japanese Translation for r4171
689 690 * #6466: Traditional Chinese language file (to r4171)
690 691 * #6490: pt-BR translation for 1.0.2
691 692 * Fixed #3935: stylesheet_link_tag with plugin doesn't take into account relative_url_root
692 693 * Fixed #4998: Global issue list's context menu has enabled options for parent menus but there are no valid selections
693 694 * Fixed #5170: Done ratio can not revert to 0% if status is used for done ratio
694 695 * Fixed #5608: broken with i18n 0.4.0
695 696 * Fixed #6054: Error 500 on filenames with whitespace in git reposities
696 697 * Fixed #6135: Default logger configuration grows without bound.
697 698 * Fixed #6191: Deletion of a main task deletes all subtasks
698 699 * Fixed #6195: Missing move issues between projects
699 700 * Fixed #6242: can't switch between inline and side-by-side diff
700 701 * Fixed #6249: Create and continue returns 404
701 702 * Fixed #6267: changing the authentication mode from ldap to internal with setting the password
702 703 * Fixed #6270: diff coderay malformed in the "news" page
703 704 * Fixed #6278: missing "cant_link_an_issue_with_a_descendant"from locale files
704 705 * Fixed #6333: Create and continue results in a 404 Error
705 706 * Fixed #6346: Age column on repository view is skewed for git, probably CVS too
706 707 * Fixed #6351: Context menu on roadmap broken
707 708 * Fixed #6388: New Subproject leads to a 404
708 709 * Fixed #6392: Updated/Created links to activity broken
709 710 * Fixed #6413: Error in SQL
710 711 * Fixed #6443: Redirect to project settings after Copying a Project
711 712 * Fixed #6448: Saving a wiki page with no content has a translation missing
712 713 * Fixed #6452: Unhandled exception on creating File
713 714 * Fixed #6471: Typo in label_report in Czech translation
714 715 * Fixed #6479: Changing tracker type will lose watchers
715 716 * Fixed #6499: Files with leading or trailing whitespace are not shown in git.
716 717
717 718 == 2010-08-22 v1.0.1
718 719
719 720 * #819: Add a body ID and class to all pages
720 721 * #871: Commit new CSS styles!
721 722 * #3301: Add favicon to base layout
722 723 * #4656: On Issue#show page, clicking on Ò€œAdd related issueҀ� should focus on the input
723 724 * #4896: Project identifier should be a limited field
724 725 * #5084: Filter all isssues by projects
725 726 * #5477: Replace Test::Unit::TestCase with ActiveSupport::TestCase
726 727 * #5591: 'calendar' action is used with 'issue' controller in issue/sidebar
727 728 * #5735: Traditional Chinese language file (to r3810)
728 729 * #5740: Swedish Translation for r3810
729 730 * #5785: pt-BR translation update
730 731 * #5898: Projects should be displayed as links in users/memberships
731 732 * #5910: Chinese translation to redmine-1.0.0
732 733 * #5912: Translation update for french locale
733 734 * #5962: Hungarian translation update to r3892
734 735 * #5971: Remove falsly applied chrome on revision links
735 736 * #5972: Updated Hebrew translation for 1.0.0
736 737 * #5982: Updated german translation
737 738 * #6008: Move admin_menu to Redmine::MenuManager
738 739 * #6012: RTL layout
739 740 * #6021: Spanish translation 1.0.0-RC
740 741 * #6025: nl translation updated for r3905
741 742 * #6030: Japanese Translation for r3907
742 743 * #6074: sr-CY.yml contains DOS-type newlines (\r\n)
743 744 * #6087: SERBIAN translation updated
744 745 * #6093: Updated italian translation
745 746 * #6142: Swedish Translation for r3940
746 747 * #6153: Move view_calendar and view_gantt to own modules
747 748 * #6169: Add issue status to issue tooltip
748 749 * Fixed #3834: Add a warning when not choosing a member role
749 750 * Fixed #3922: Bad english arround "Assigned to" text in journal entries
750 751 * Fixed #5158: Simplified Chinese language file zh.yml updated to r3608
751 752 * Fixed #5162: translation missing: zh-TW, field_time_entrie
752 753 * Fixed #5297: openid not validated correctly
753 754 * Fixed #5628: Wrong commit range in git log command
754 755 * Fixed #5760: Assigned_to and author filters in "Projects>View all issues" should be based on user's project visibility
755 756 * Fixed #5771: Problem when importing git repository
756 757 * Fixed #5775: ldap authentication in admin menu should have an icon
757 758 * Fixed #5811: deleting statuses doesnt delete workflow entries
758 759 * Fixed #5834: Emails with trailing spaces incorrectly detected as invalid
759 760 * Fixed #5846: ChangeChangesPathLengthLimit does not remove default for MySQL
760 761 * Fixed #5861: Vertical scrollbar always visible in Wiki "code" blocks in Chrome.
761 762 * Fixed #5883: correct label_project_latest Chinese translation
762 763 * Fixed #5892: Changing status from contextual menu opens the ticket instead
763 764 * Fixed #5904: Global gantt PDF and PNG should display project names
764 765 * Fixed #5925: parent task's priority edit should be disabled through shortcut menu in issues list page
765 766 * Fixed #5935: Add Another file to ticket doesn't work in IE Internet Explorer
766 767 * Fixed #5937: Harmonize french locale "zero" translation with other locales
767 768 * Fixed #5945: Forum message permalinks don't take pagination into account
768 769 * Fixed #5978: Debug code still remains
769 770 * Fixed #6009: When using "English (British)", the repository browser (svn) shows files over 1000 bytes as floating point (2.334355)
770 771 * Fixed #6045: Repository file Diff view sometimes shows more than selected file
771 772 * Fixed #6079: German Translation error in TimeEntryActivity
772 773 * Fixed #6100: User's profile should display all visible projects
773 774 * Fixed #6132: Allow Key based authentication in the Boards atom feed
774 775 * Fixed #6163: Bad CSS class for calendar project menu_item
775 776 * Fixed #6172: Browsing to a missing user's page shows the admin sidebar
776 777
777 778 == 2010-07-18 v1.0.0 (Release candidate)
778 779
779 780 * #443: Adds context menu to the roadmap issue lists
780 781 * #443: Subtasking
781 782 * #741: Description preview while editing an issue
782 783 * #1131: Add support for alternate (non-LDAP) authentication
783 784 * #1214: REST API for Issues
784 785 * #1223: File upload on wiki edit form
785 786 * #1755: add "blocked by" as a related issues option
786 787 * #2420: Fetching emails from an POP server
787 788 * #2482: Named scopes in Issue and ActsAsWatchable plus some view refactoring (logic extraction).
788 789 * #2924: Make the right click menu more discoverable using a cursor property
789 790 * #2985: Make syntax highlighting pluggable
790 791 * #3201: Workflow Check/Uncheck All Rows/Columns
791 792 * #3359: Update CodeRay 0.9
792 793 * #3706: Allow assigned_to field configuration on Issue creation by email
793 794 * #3936: configurable list of models to include in search
794 795 * #4480: Create a link to the user profile from the administration interface
795 796 * #4482: Cache textile rendering
796 797 * #4572: Make it harder to ruin your database
797 798 * #4573: Move github gems to Gemcutter
798 799 * #4664: Add pagination to forum threads
799 800 * #4732: Make login case-insensitive also for PostgreSQL
800 801 * #4812: Create links to other projects
801 802 * #4819: Replace images with smushed ones for speed
802 803 * #4945: Allow custom fields attached to project to be searchable
803 804 * #5121: Fix issues list layout overflow
804 805 * #5169: Issue list view hook request
805 806 * #5208: Aibility to edit wiki sidebar
806 807 * #5281: Remove empty ul tags in the issue history
807 808 * #5291: Updated basque translations
808 809 * #5328: Automatically add "Repository" menu_item after repository creation
809 810 * #5415: Fewer SQL statements generated for watcher_recipients
810 811 * #5416: Exclude "fields_for" from overridden methods in TabularFormBuilder
811 812 * #5573: Allow issue assignment in email
812 813 * #5595: Allow start date and due dates to be set via incoming email
813 814 * #5752: The projects view (/projects) renders ul's wrong
814 815 * #5781: Allow to use more macros on the welcome page and project list
815 816 * Fixed #1288: Unable to past escaped wiki syntax in an issue description
816 817 * Fixed #1334: Wiki formatting character *_ and _*
817 818 * Fixed #1416: Inline code with less-then/greater-than produces @lt; and @gt; respectively
818 819 * Fixed #2473: Login and mail should not be case sensitive
819 820 * Fixed #2990: Ruby 1.9 - wrong number of arguments (1 for 0) on rake db:migrate
820 821 * Fixed #3089: Text formatting sometimes breaks when combined
821 822 * Fixed #3690: Status change info duplicates on the issue screen
822 823 * Fixed #3691: Redmine allows two files with the same file name to be uploaded to the same issue
823 824 * Fixed #3764: ApplicationHelperTest fails with JRuby
824 825 * Fixed #4265: Unclosed code tags in issue descriptions affects main UI
825 826 * Fixed #4745: Bug in index.xml.builder (issues)
826 827 * Fixed #4852: changing user/roles of project member not possible without javascript
827 828 * Fixed #4857: Week number calculation in date picker is wrong if a week starts with Sunday
828 829 * Fixed #4883: Bottom "contextual" placement in issue with associated changeset
829 830 * Fixed #4918: Revisions r3453 and r3454 broke On-the-fly user creation with LDAP
830 831 * Fixed #4935: Navigation to the Master Timesheet page (time_entries)
831 832 * Fixed #5043: Flash messages are not displayed after the project settings[module/activity] saved
832 833 * Fixed #5081: Broken links on public/help/wiki_syntax_detailed.html
833 834 * Fixed #5104: Description of document not wikified on documents index
834 835 * Fixed #5108: Issue linking fails inside of []s
835 836 * Fixed #5199: diff code coloring using coderay
836 837 * Fixed #5233: Add a hook to the issue report (Summary) view
837 838 * Fixed #5265: timetracking: subtasks time is added to the main task
838 839 * Fixed #5343: acts_as_event Doesn't Accept Outside URLs
839 840 * Fixed #5440: UI Inconsistency : Administration > Enumerations table row headers should be enclosed in <thead>
840 841 * Fixed #5463: 0.9.4 INSTALL and/or UPGRADE, missing session_store.rb
841 842 * Fixed #5524: Update_parent_attributes doesn't work for the old parent issue when reparenting
842 843 * Fixed #5548: SVN Repository: Can not list content of a folder which includes square brackets.
843 844 * Fixed #5589: "with subproject" malfunction
844 845 * Fixed #5676: Search for Numeric Value
845 846 * Fixed #5696: Redmine + PostgreSQL 8.4.4 fails on _dir_list_content.rhtml
846 847 * Fixed #5698: redmine:email:receive_imap fails silently for mails with subject longer than 255 characters
847 848 * Fixed #5700: TimelogController#destroy assumes success
848 849 * Fixed #5751: developer role is mispelled
849 850 * Fixed #5769: Popup Calendar doesn't Advance in Chrome
850 851 * Fixed #5771: Problem when importing git repository
851 852 * Fixed #5823: Error in comments in plugin.rb
852 853
853 854
854 855 == 2010-07-07 v0.9.6
855 856
856 857 * Fixed: Redmine.pm access by unauthorized users
857 858
858 859 == 2010-06-24 v0.9.5
859 860
860 861 * Linkify folder names on revision view
861 862 * "fiters" and "options" should be hidden in print view via css
862 863 * Fixed: NoMethodError when no issue params are submitted
863 864 * Fixed: projects.atom with required authentication
864 865 * Fixed: External links not correctly displayed in Wiki TOC
865 866 * Fixed: Member role forms in project settings are not hidden after member added
866 867 * Fixed: pre can't be inside p
867 868 * Fixed: session cookie path does not respect RAILS_RELATIVE_URL_ROOT
868 869 * Fixed: mail handler fails when the from address is empty
869 870
870 871
871 872 == 2010-05-01 v0.9.4
872 873
873 874 * Filters collapsed by default on issues index page for a saved query
874 875 * Fixed: When categories list is too big the popup menu doesn't adjust (ex. in the issue list)
875 876 * Fixed: remove "main-menu" div when the menu is empty
876 877 * Fixed: Code syntax highlighting not working in Document page
877 878 * Fixed: Git blame/annotate fails on moved files
878 879 * Fixed: Failing test in test_show_atom
879 880 * Fixed: Migrate from trac - not displayed Wikis
880 881 * Fixed: Email notifications on file upload sent to empty recipient list
881 882 * Fixed: Migrating from trac is not possible, fails to allocate memory
882 883 * Fixed: Lost password no longer flashes a confirmation message
883 884 * Fixed: Crash while deleting in-use enumeration
884 885 * Fixed: Hard coded English string at the selection of issue watchers
885 886 * Fixed: Bazaar v2.1.0 changed behaviour
886 887 * Fixed: Roadmap display can raise an exception if no trackers are selected
887 888 * Fixed: Gravatar breaks layout of "logged in" page
888 889 * Fixed: Reposman.rb on Windows
889 890 * Fixed: Possible error 500 while moving an issue to another project with SQLite
890 891 * Fixed: backslashes in issue description/note should be escaped when quoted
891 892 * Fixed: Long text in <pre> disrupts Associated revisions
892 893 * Fixed: Links to missing wiki pages not red on project overview page
893 894 * Fixed: Cannot delete a project with subprojects that shares versions
894 895 * Fixed: Update of Subversion changesets broken under Solaris
895 896 * Fixed: "Move issues" permission not working for Non member
896 897 * Fixed: Sidebar overlap on Users tab of Group editor
897 898 * Fixed: Error on db:migrate with table prefix set (hardcoded name in principal.rb)
898 899 * Fixed: Report shows sub-projects for non-members
899 900 * Fixed: 500 internal error when browsing any Redmine page in epiphany
900 901 * Fixed: Watchers selection lost when issue creation fails
901 902 * Fixed: When copying projects, redmine should not generate an email to people who created issues
902 903 * Fixed: Issue "#" table cells should have a class attribute to enable fine-grained CSS theme
903 904 * Fixed: Plugin generators should display help if no parameter is given
904 905
905 906
906 907 == 2010-02-28 v0.9.3
907 908
908 909 * Adds filter for system shared versions on the cross project issue list
909 910 * Makes project identifiers searchable
910 911 * Remove invalid utf8 sequences from commit comments and author name
911 912 * Fixed: Wrong link when "http" not included in project "Homepage" link
912 913 * Fixed: Escaping in html email templates
913 914 * Fixed: Pound (#) followed by number with leading zero (0) removes leading zero when rendered in wiki
914 915 * Fixed: Deselecting textile text formatting causes interning empty string errors
915 916 * Fixed: error with postgres when entering a non-numeric id for an issue relation
916 917 * Fixed: div.task incorrectly wrapping on Gantt Chart
917 918 * Fixed: Project copy loses wiki pages hierarchy
918 919 * Fixed: parent project field doesn't include blank value when a member with 'add subproject' permission edits a child project
919 920 * Fixed: Repository.fetch_changesets tries to fetch changesets for archived projects
920 921 * Fixed: Duplicated project name for subproject version on gantt chart
921 922 * Fixed: roadmap shows subprojects issues even if subprojects is unchecked
922 923 * Fixed: IndexError if all the :last menu items are deleted from a menu
923 924 * Fixed: Very high CPU usage for a long time when fetching commits from a large Git repository
924 925
925 926
926 927 == 2010-02-07 v0.9.2
927 928
928 929 * Fixed: Sub-project repository commits not displayed on parent project issues
929 930 * Fixed: Potential security leak on my page calendar
930 931 * Fixed: Project tree structure is broken by deleting the project with the subproject
931 932 * Fixed: Error message shown duplicated when creating a new group
932 933 * Fixed: Firefox cuts off large pages
933 934 * Fixed: Invalid format parameter returns a DoubleRenderError on issues index
934 935 * Fixed: Unnecessary Quote button on locked forum message
935 936 * Fixed: Error raised when trying to view the gantt or calendar with a grouped query
936 937 * Fixed: PDF support for Korean locale
937 938 * Fixed: Deprecation warning in extra/svn/reposman.rb
938 939
939 940
940 941 == 2010-01-30 v0.9.1
941 942
942 943 * Vertical alignment for inline images in formatted text set to 'middle'
943 944 * Fixed: Redmine.pm error "closing dbh with active statement handles at /usr/lib/perl5/Apache/Redmine.pm"
944 945 * Fixed: copyright year in footer set to 2010
945 946 * Fixed: Trac migration script may not output query lines
946 947 * Fixed: Email notifications may affect language of notice messages on the UI
947 948 * Fixed: Can not search for 2 letters word
948 949 * Fixed: Attachments get saved on issue update even if validation fails
949 950 * Fixed: Tab's 'border-bottom' not absent when selected
950 951 * Fixed: Issue summary tables that list by user are not sorted
951 952 * Fixed: Issue pdf export fails if target version is set
952 953 * Fixed: Issue list export to PDF breaks when issues are sorted by a custom field
953 954 * Fixed: SQL error when adding a group
954 955 * Fixes: Min password length during password reset always displays as 4 chars
955 956
956 957
957 958 == 2010-01-09 v0.9.0 (Release candidate)
958 959
959 960 * Unlimited subproject nesting
960 961 * Multiple roles per user per project
961 962 * User groups
962 963 * Inheritence of versions
963 964 * OpenID login
964 965 * "Watched by me" issue filter
965 966 * Project copy
966 967 * Project creation by non admin users
967 968 * Accept emails from anyone on a private project
968 969 * Add email notification on Wiki changes
969 970 * Make issue description non-required field
970 971 * Custom fields for Versions
971 972 * Being able to sort the issue list by custom fields
972 973 * Ability to close versions
973 974 * User display/editing of custom fields attached to their user profile
974 975 * Add "follows" issue relation
975 976 * Copy workflows between trackers and roles
976 977 * Defaults enabled modules list for project creation
977 978 * Weighted version completion percentage on the roadmap
978 979 * Autocreate user account when user submits email that creates new issue
979 980 * CSS class on overdue issues on the issue list
980 981 * Enable tracker update on issue edit form
981 982 * Remove issue watchers
982 983 * Ability to move threads between project forums
983 984 * Changed custom field "Possible values" to a textarea
984 985 * Adds projects association on tracker form
985 986 * Set session store to cookie store by default
986 987 * Set a default wiki page on project creation
987 988 * Roadmap for main project should see Roadmaps for sub projects
988 989 * Ticket grouping on the issue list
989 990 * Hierarchical Project links in the page header
990 991 * Allow My Page blocks to be added to from a plugin
991 992 * Sort issues by multiple columns
992 993 * Filters of saved query are now visible and be adjusted without editing the query
993 994 * Saving "sort order" in custom queries
994 995 * Url to fetch changesets for a repository
995 996 * Managers able to create subprojects
996 997 * Issue Totals on My Page Modules
997 998 * Convert Enumerations to single table inheritance (STI)
998 999 * Allow custom my_page blocks to define drop-down names
999 1000 * "View Issues" user permission added
1000 1001 * Ask user what to do with child pages when deleting a parent wiki page
1001 1002 * Contextual quick search
1002 1003 * Allow resending of password by email
1003 1004 * Change reply subject to be a link to the reply itself
1004 1005 * Include Logged Time as part of the project's Activity history
1005 1006 * REST API for authentication
1006 1007 * Browse through Git branches
1007 1008 * Setup Object Daddy to replace test fixtures
1008 1009 * Setup shoulda to make it easier to test
1009 1010 * Custom fields and overrides on Enumerations
1010 1011 * Add or remove columns from the issue list
1011 1012 * Ability to add new version from issues screen
1012 1013 * Setting to choose which day calendars start
1013 1014 * Asynchronous email delivery method
1014 1015 * RESTful URLs for (almost) everything
1015 1016 * Include issue status in search results and activity pages
1016 1017 * Add email to admin user search filter
1017 1018 * Proper content type for plain text mails
1018 1019 * Default value of project jump box
1019 1020 * Tree based menus
1020 1021 * Ability to use issue status to update percent done
1021 1022 * Second set of issue "Action Links" at the bottom of an issue page
1022 1023 * Proper exist status code for rdm-mailhandler.rb
1023 1024 * Remove incoming email body via a delimiter
1024 1025 * Fixed: Custom querry 'Export to PDF' ignores field selection
1025 1026 * Fixed: Related e-mail notifications aren't threaded
1026 1027 * Fixed: No warning when the creation of a categories from the issue form fails
1027 1028 * Fixed: Actually block issues from closing when relation 'blocked by' isn't closed
1028 1029 * Fixed: Include both first and last name when sorting by users
1029 1030 * Fixed: Table cell with multiple line text
1030 1031 * Fixed: Project overview page shows disabled trackers
1031 1032 * Fixed: Cross project issue relations and user permissions
1032 1033 * Fixed: My page shows tickets the user doesn't have access to
1033 1034 * Fixed: TOC does not parse wiki page reference links with description
1034 1035 * Fixed: Target version-list on bulk edit form is incorrectly sorted
1035 1036 * Fixed: Cannot modify/delete project named "Documents"
1036 1037 * Fixed: Email address in brackets breaks html
1037 1038 * Fixed: Timelog detail loose issue filter passing to report tab
1038 1039 * Fixed: Inform about custom field's name maximum length
1039 1040 * Fixed: Activity page and Atom feed links contain project id instead of identifier
1040 1041 * Fixed: no Atom key for forums with only 1 forum
1041 1042 * Fixed: When reading RSS feed in MS Outlook, the inline links are broken.
1042 1043 * Fixed: Sometimes new posts don't show up in the topic list of a forum.
1043 1044 * Fixed: The all/active filter selection in the project view does not stick.
1044 1045 * Fixed: Login box has Different width
1045 1046 * Fixed: User removed from project - still getting project update emails
1046 1047 * Fixed: Project with the identifier of 'new' cannot be viewed
1047 1048 * Fixed: Artefacts in search view (Cyrillic)
1048 1049 * Fixed: Allow [#id] as subject to reply by email
1049 1050 * Fixed: Wrong language used when closing an issue via a commit message
1050 1051 * Fixed: email handler drops emails for new issues with no subject
1051 1052 * Fixed: Calendar misspelled under Roles/Permissions
1052 1053 * Fixed: Emails from no-reply redmine's address hell cycle
1053 1054 * Fixed: child_pages macro fails on wiki page history
1054 1055 * Fixed: Pre-filled time tracking date ignores timezone
1055 1056 * Fixed: Links on locked users lead to 404 page
1056 1057 * Fixed: Page changes in issue-list when using context menu
1057 1058 * Fixed: diff parser removes lines starting with multiple dashes
1058 1059 * Fixed: Quoting in forums resets message subject
1059 1060 * Fixed: Editing issue comment removes quote link
1060 1061 * Fixed: Redmine.pm ignore browse_repository permission
1061 1062 * Fixed: text formatting breaks on [msg1][msg2]
1062 1063 * Fixed: Spent Time Default Value of 0.0
1063 1064 * Fixed: Wiki pages in search results are referenced by project number, not by project identifier.
1064 1065 * Fixed: When logging in via an autologin cookie the user's last_login_on should be updated
1065 1066 * Fixed: 50k users cause problems in project->settings->members screen
1066 1067 * Fixed: Document timestamp needs to show updated timestamps
1067 1068 * Fixed: Users getting notifications for issues they are no longer allowed to view
1068 1069 * Fixed: issue summary counts should link to the issue list without subprojects
1069 1070 * Fixed: 'Delete' link on LDAP list has no effect
1070 1071
1071 1072
1072 1073 == 2009-11-15 v0.8.7
1073 1074
1074 1075 * Fixed: Hide paragraph terminator at the end of headings on html export
1075 1076 * Fixed: pre tags containing "<pre*"
1076 1077 * Fixed: First date of the date range not included in the time report with SQLite
1077 1078 * Fixed: Password field not styled correctly on alternative stylesheet
1078 1079 * Fixed: Error when sumbitting a POST request that requires a login
1079 1080 * Fixed: CSRF vulnerabilities
1080 1081
1081 1082
1082 1083 == 2009-11-04 v0.8.6
1083 1084
1084 1085 * Change links to closed issues to be a grey color
1085 1086 * Change subversion adapter to not cache authentication and run non interactively
1086 1087 * Fixed: Custom Values with a nil value cause HTTP error 500
1087 1088 * Fixed: Failure to convert HTML entities when editing an Issue reply
1088 1089 * Fixed: Error trying to show repository when there are no comments in a changeset
1089 1090 * Fixed: account/show/:user_id should not be accessible for other users not in your projects
1090 1091 * Fixed: XSS vulnerabilities
1091 1092 * Fixed: IssuesController#destroy should accept POST only
1092 1093 * Fixed: Inline images in wiki headings
1093 1094
1094 1095
1095 1096 == 2009-09-13 v0.8.5
1096 1097
1097 1098 * Incoming mail handler : Allow spaces between keywords and colon
1098 1099 * Do not require a non-word character after a comma in Redmine links
1099 1100 * Include issue hyperlinks in reminder emails
1100 1101 * Prevent nil error when retrieving svn version
1101 1102 * Various plugin hooks added
1102 1103 * Add plugins information to script/about
1103 1104 * Fixed: 500 Internal Server Error is raised if add an empty comment to the news
1104 1105 * Fixed: Atom links for wiki pages are not correct
1105 1106 * Fixed: Atom feeds leak email address
1106 1107 * Fixed: Case sensitivity in Issue filtering
1107 1108 * Fixed: When reading RSS feed, the inline-embedded images are not properly shown
1108 1109
1109 1110
1110 1111 == 2009-05-17 v0.8.4
1111 1112
1112 1113 * Allow textile mailto links
1113 1114 * Fixed: memory consumption when uploading file
1114 1115 * Fixed: Mercurial integration doesn't work if Redmine is installed in folder path containing space
1115 1116 * Fixed: an error is raised when no tab is available on project settings
1116 1117 * Fixed: insert image macro corrupts urls with excalamation marks
1117 1118 * Fixed: error on cross-project gantt PNG export
1118 1119 * Fixed: self and alternate links in atom feeds do not respect Atom specs
1119 1120 * Fixed: accept any svn tunnel scheme in repository URL
1120 1121 * Fixed: issues/show should accept user's rss key
1121 1122 * Fixed: consistency of custom fields display on the issue detail view
1122 1123 * Fixed: wiki comments length validation is missing
1123 1124 * Fixed: weak autologin token generation algorithm causes duplicate tokens
1124 1125
1125 1126
1126 1127 == 2009-04-05 v0.8.3
1127 1128
1128 1129 * Separate project field and subject in cross-project issue view
1129 1130 * Ability to set language for redmine:load_default_data task using REDMINE_LANG environment variable
1130 1131 * Rescue Redmine::DefaultData::DataAlreadyLoaded in redmine:load_default_data task
1131 1132 * CSS classes to highlight own and assigned issues
1132 1133 * Hide "New file" link on wiki pages from printing
1133 1134 * Flush buffer when asking for language in redmine:load_default_data task
1134 1135 * Minimum project identifier length set to 1
1135 1136 * Include headers so that emails don't trigger vacation auto-responders
1136 1137 * Fixed: Time entries csv export links for all projects are malformed
1137 1138 * Fixed: Files without Version aren't visible in the Activity page
1138 1139 * Fixed: Commit logs are centered in the repo browser
1139 1140 * Fixed: News summary field content is not searchable
1140 1141 * Fixed: Journal#save has a wrong signature
1141 1142 * Fixed: Email footer signature convention
1142 1143 * Fixed: Timelog report do not show time for non-versioned issues
1143 1144
1144 1145
1145 1146 == 2009-03-07 v0.8.2
1146 1147
1147 1148 * Send an email to the user when an administrator activates a registered user
1148 1149 * Strip keywords from received email body
1149 1150 * Footer updated to 2009
1150 1151 * Show RSS-link even when no issues is found
1151 1152 * One click filter action in activity view
1152 1153 * Clickable/linkable line #'s while browsing the repo or viewing a file
1153 1154 * Links to versions on files list
1154 1155 * Added request and controller objects to the hooks by default
1155 1156 * Fixed: exporting an issue with attachments to PDF raises an error
1156 1157 * Fixed: "too few arguments" error may occur on activerecord error translation
1157 1158 * Fixed: "Default columns Displayed on the Issues list" setting is not easy to read
1158 1159 * Fixed: visited links to closed tickets are not striked through with IE6
1159 1160 * Fixed: MailHandler#plain_text_body returns nil if there was nothing to strip
1160 1161 * Fixed: MailHandler raises an error when processing an email without From header
1161 1162
1162 1163
1163 1164 == 2009-02-15 v0.8.1
1164 1165
1165 1166 * Select watchers on new issue form
1166 1167 * Issue description is no longer a required field
1167 1168 * Files module: ability to add files without version
1168 1169 * Jump to the current tab when using the project quick-jump combo
1169 1170 * Display a warning if some attachments were not saved
1170 1171 * Import custom fields values from emails on issue creation
1171 1172 * Show view/annotate/download links on entry and annotate views
1172 1173 * Admin Info Screen: Display if plugin assets directory is writable
1173 1174 * Adds a 'Create and continue' button on the new issue form
1174 1175 * IMAP: add options to move received emails
1175 1176 * Do not show Category field when categories are not defined
1176 1177 * Lower the project identifier limit to a minimum of two characters
1177 1178 * Add "closed" html class to closed entries in issue list
1178 1179 * Fixed: broken redirect URL on login failure
1179 1180 * Fixed: Deleted files are shown when using Darcs
1180 1181 * Fixed: Darcs adapter works on Win32 only
1181 1182 * Fixed: syntax highlight doesn't appear in new ticket preview
1182 1183 * Fixed: email notification for changes I make still occurs when running Repository.fetch_changesets
1183 1184 * Fixed: no error is raised when entering invalid hours on the issue update form
1184 1185 * Fixed: Details time log report CSV export doesn't honour date format from settings
1185 1186 * Fixed: invalid css classes on issue details
1186 1187 * Fixed: Trac importer creates duplicate custom values
1187 1188 * Fixed: inline attached image should not match partial filename
1188 1189
1189 1190
1190 1191 == 2008-12-30 v0.8.0
1191 1192
1192 1193 * Setting added in order to limit the number of diff lines that should be displayed
1193 1194 * Makes logged-in username in topbar linking to
1194 1195 * Mail handler: strip tags when receiving a html-only email
1195 1196 * Mail handler: add watchers before sending notification
1196 1197 * Adds a css class (overdue) to overdue issues on issue lists and detail views
1197 1198 * Fixed: project activity truncated after viewing user's activity
1198 1199 * Fixed: email address entered for password recovery shouldn't be case-sensitive
1199 1200 * Fixed: default flag removed when editing a default enumeration
1200 1201 * Fixed: default category ignored when adding a document
1201 1202 * Fixed: error on repository user mapping when a repository username is blank
1202 1203 * Fixed: Firefox cuts off large diffs
1203 1204 * Fixed: CVS browser should not show dead revisions (deleted files)
1204 1205 * Fixed: escape double-quotes in image titles
1205 1206 * Fixed: escape textarea content when editing a issue note
1206 1207 * Fixed: JS error on context menu with IE
1207 1208 * Fixed: bold syntax around single character in series doesn't work
1208 1209 * Fixed several XSS vulnerabilities
1209 1210 * Fixed a SQL injection vulnerability
1210 1211
1211 1212
1212 1213 == 2008-12-07 v0.8.0-rc1
1213 1214
1214 1215 * Wiki page protection
1215 1216 * Wiki page hierarchy. Parent page can be assigned on the Rename screen
1216 1217 * Adds support for issue creation via email
1217 1218 * Adds support for free ticket filtering and custom queries on Gantt chart and calendar
1218 1219 * Cross-project search
1219 1220 * Ability to search a project and its subprojects
1220 1221 * Ability to search the projects the user belongs to
1221 1222 * Adds custom fields on time entries
1222 1223 * Adds boolean and list custom fields for time entries as criteria on time report
1223 1224 * Cross-project time reports
1224 1225 * Display latest user's activity on account/show view
1225 1226 * Show last connexion time on user's page
1226 1227 * Obfuscates email address on user's account page using javascript
1227 1228 * wiki TOC rendered as an unordered list
1228 1229 * Adds the ability to search for a user on the administration users list
1229 1230 * Adds the ability to search for a project name or identifier on the administration projects list
1230 1231 * Redirect user to the previous page after logging in
1231 1232 * Adds a permission 'view wiki edits' so that wiki history can be hidden to certain users
1232 1233 * Adds permissions for viewing the watcher list and adding new watchers on the issue detail view
1233 1234 * Adds permissions to let users edit and/or delete their messages
1234 1235 * Link to activity view when displaying dates
1235 1236 * Hide Redmine version in atom feeds and pdf properties
1236 1237 * Maps repository users to Redmine users. Users with same username or email are automatically mapped. Mapping can be manually adjusted in repository settings. Multiple usernames can be mapped to the same Redmine user.
1237 1238 * Sort users by their display names so that user dropdown lists are sorted alphabetically
1238 1239 * Adds estimated hours to issue filters
1239 1240 * Switch order of current and previous revisions in side-by-side diff
1240 1241 * Render the commit changes list as a tree
1241 1242 * Adds watch/unwatch functionality at forum topic level
1242 1243 * When moving an issue to another project, reassign it to the category with same name if any
1243 1244 * Adds child_pages macro for wiki pages
1244 1245 * Use GET instead of POST on roadmap (#718), gantt and calendar forms
1245 1246 * Search engine: display total results count and count by result type
1246 1247 * Email delivery configuration moved to an unversioned YAML file (config/email.yml, see the sample file)
1247 1248 * Adds icons on search results
1248 1249 * Adds 'Edit' link on account/show for admin users
1249 1250 * Adds Lock/Unlock/Activate link on user edit screen
1250 1251 * Adds user count in status drop down on admin user list
1251 1252 * Adds multi-levels blockquotes support by using > at the beginning of lines
1252 1253 * Adds a Reply link to each issue note
1253 1254 * Adds plain text only option for mail notifications
1254 1255 * Gravatar support for issue detail, user grid, and activity stream (disabled by default)
1255 1256 * Adds 'Delete wiki pages attachments' permission
1256 1257 * Show the most recent file when displaying an inline image
1257 1258 * Makes permission screens localized
1258 1259 * AuthSource list: display associated users count and disable 'Delete' buton if any
1259 1260 * Make the 'duplicates of' relation asymmetric
1260 1261 * Adds username to the password reminder email
1261 1262 * Adds links to forum messages using message#id syntax
1262 1263 * Allow same name for custom fields on different object types
1263 1264 * One-click bulk edition using the issue list context menu within the same project
1264 1265 * Adds support for commit logs reencoding to UTF-8 before insertion in the database. Source encoding of commit logs can be selected in Application settings -> Repositories.
1265 1266 * Adds checkboxes toggle links on permissions report
1266 1267 * Adds Trac-Like anchors on wiki headings
1267 1268 * Adds support for wiki links with anchor
1268 1269 * Adds category to the issue context menu
1269 1270 * Adds a workflow overview screen
1270 1271 * Appends the filename to the attachment url so that clients that ignore content-disposition http header get the real filename
1271 1272 * Dots allowed in custom field name
1272 1273 * Adds posts quoting functionality
1273 1274 * Adds an option to generate sequential project identifiers
1274 1275 * Adds mailto link on the user administration list
1275 1276 * Ability to remove enumerations (activities, priorities, document categories) that are in use. Associated objects can be reassigned to another value
1276 1277 * Gantt chart: display issues that don't have a due date if they are assigned to a version with a date
1277 1278 * Change projects homepage limit to 255 chars
1278 1279 * Improved on-the-fly account creation. If some attributes are missing (eg. not present in the LDAP) or are invalid, the registration form is displayed so that the user is able to fill or fix these attributes
1279 1280 * Adds "please select" to activity select box if no activity is set as default
1280 1281 * Do not silently ignore timelog validation failure on issue edit
1281 1282 * Adds a rake task to send reminder emails
1282 1283 * Allow empty cells in wiki tables
1283 1284 * Makes wiki text formatter pluggable
1284 1285 * Adds back textile acronyms support
1285 1286 * Remove pre tag attributes
1286 1287 * Plugin hooks
1287 1288 * Pluggable admin menu
1288 1289 * Plugins can provide activity content
1289 1290 * Moves plugin list to its own administration menu item
1290 1291 * Adds url and author_url plugin attributes
1291 1292 * Adds Plugin#requires_redmine method so that plugin compatibility can be checked against current Redmine version
1292 1293 * Adds atom feed on time entries details
1293 1294 * Adds project name to issues feed title
1294 1295 * Adds a css class on menu items in order to apply item specific styles (eg. icons)
1295 1296 * Adds a Redmine plugin generators
1296 1297 * Adds timelog link to the issue context menu
1297 1298 * Adds links to the user page on various views
1298 1299 * Turkish translation by Ismail Sezen
1299 1300 * Catalan translation
1300 1301 * Vietnamese translation
1301 1302 * Slovak translation
1302 1303 * Better naming of activity feed if only one kind of event is displayed
1303 1304 * Enable syntax highlight on issues, messages and news
1304 1305 * Add target version to the issue list context menu
1305 1306 * Hide 'Target version' filter if no version is defined
1306 1307 * Add filters on cross-project issue list for custom fields marked as 'For all projects'
1307 1308 * Turn ftp urls into links
1308 1309 * Hiding the View Differences button when a wiki page's history only has one version
1309 1310 * Messages on a Board can now be sorted by the number of replies
1310 1311 * Adds a class ('me') to events of the activity view created by current user
1311 1312 * Strip pre/code tags content from activity view events
1312 1313 * Display issue notes in the activity view
1313 1314 * Adds links to changesets atom feed on repository browser
1314 1315 * Track project and tracker changes in issue history
1315 1316 * Adds anchor to atom feed messages links
1316 1317 * Adds a key in lang files to set the decimal separator (point or comma) in csv exports
1317 1318 * Makes importer work with Trac 0.8.x
1318 1319 * Upgraded to Prototype 1.6.0.1
1319 1320 * File viewer for attached text files
1320 1321 * Menu mapper: add support for :before, :after and :last options to #push method and add #delete method
1321 1322 * Removed inconsistent revision numbers on diff view
1322 1323 * CVS: add support for modules names with spaces
1323 1324 * Log the user in after registration if account activation is not needed
1324 1325 * Mercurial adapter improvements
1325 1326 * Trac importer: read session_attribute table to find user's email and real name
1326 1327 * Ability to disable unused SCM adapters in application settings
1327 1328 * Adds Filesystem adapter
1328 1329 * Clear changesets and changes with raw sql when deleting a repository for performance
1329 1330 * Redmine.pm now uses the 'commit access' permission defined in Redmine
1330 1331 * Reposman can create any type of scm (--scm option)
1331 1332 * Reposman creates a repository if the 'repository' module is enabled at project level only
1332 1333 * Display svn properties in the browser, svn >= 1.5.0 only
1333 1334 * Reduces memory usage when importing large git repositories
1334 1335 * Wider SVG graphs in repository stats
1335 1336 * SubversionAdapter#entries performance improvement
1336 1337 * SCM browser: ability to download raw unified diffs
1337 1338 * More detailed error message in log when scm command fails
1338 1339 * Adds support for file viewing with Darcs 2.0+
1339 1340 * Check that git changeset is not in the database before creating it
1340 1341 * Unified diff viewer for attached files with .patch or .diff extension
1341 1342 * File size display with Bazaar repositories
1342 1343 * Git adapter: use commit time instead of author time
1343 1344 * Prettier url for changesets
1344 1345 * Makes changes link to entries on the revision view
1345 1346 * Adds a field on the repository view to browse at specific revision
1346 1347 * Adds new projects atom feed
1347 1348 * Added rake tasks to generate rcov code coverage reports
1348 1349 * Add Redcloth's :block_markdown_rule to allow horizontal rules in wiki
1349 1350 * Show the project hierarchy in the drop down list for new membership on user administration screen
1350 1351 * Split user edit screen into tabs
1351 1352 * Renames bundled RedCloth to RedCloth3 to avoid RedCloth 4 to be loaded instead
1352 1353 * Fixed: Roadmap crashes when a version has a due date > 2037
1353 1354 * Fixed: invalid effective date (eg. 99999-01-01) causes an error on version edition screen
1354 1355 * Fixed: login filter providing incorrect back_url for Redmine installed in sub-directory
1355 1356 * Fixed: logtime entry duplicated when edited from parent project
1356 1357 * Fixed: wrong digest for text files under Windows
1357 1358 * Fixed: associated revisions are displayed in wrong order on issue view
1358 1359 * Fixed: Git Adapter date parsing ignores timezone
1359 1360 * Fixed: Printing long roadmap doesn't split across pages
1360 1361 * Fixes custom fields display order at several places
1361 1362 * Fixed: urls containing @ are parsed as email adress by the wiki formatter
1362 1363 * Fixed date filters accuracy with SQLite
1363 1364 * Fixed: tokens not escaped in highlight_tokens regexp
1364 1365 * Fixed Bazaar shared repository browsing
1365 1366 * Fixes platform determination under JRuby
1366 1367 * Fixed: Estimated time in issue's journal should be rounded to two decimals
1367 1368 * Fixed: 'search titles only' box ignored after one search is done on titles only
1368 1369 * Fixed: non-ASCII subversion path can't be displayed
1369 1370 * Fixed: Inline images don't work if file name has upper case letters or if image is in BMP format
1370 1371 * Fixed: document listing shows on "my page" when viewing documents is disabled for the role
1371 1372 * Fixed: Latest news appear on the homepage for projects with the News module disabled
1372 1373 * Fixed: cross-project issue list should not show issues of projects for which the issue tracking module was disabled
1373 1374 * Fixed: the default status is lost when reordering issue statuses
1374 1375 * Fixes error with Postgresql and non-UTF8 commit logs
1375 1376 * Fixed: textile footnotes no longer work
1376 1377 * Fixed: http links containing parentheses fail to reder correctly
1377 1378 * Fixed: GitAdapter#get_rev should use current branch instead of hardwiring master
1378 1379
1379 1380
1380 1381 == 2008-07-06 v0.7.3
1381 1382
1382 1383 * Allow dot in firstnames and lastnames
1383 1384 * Add project name to cross-project Atom feeds
1384 1385 * Encoding set to utf8 in example database.yml
1385 1386 * HTML titles on forums related views
1386 1387 * Fixed: various XSS vulnerabilities
1387 1388 * Fixed: Entourage (and some old client) fails to correctly render notification styles
1388 1389 * Fixed: Fixed: timelog redirects inappropriately when :back_url is blank
1389 1390 * Fixed: wrong relative paths to images in wiki_syntax.html
1390 1391
1391 1392
1392 1393 == 2008-06-15 v0.7.2
1393 1394
1394 1395 * "New Project" link on Projects page
1395 1396 * Links to repository directories on the repo browser
1396 1397 * Move status to front in Activity View
1397 1398 * Remove edit step from Status context menu
1398 1399 * Fixed: No way to do textile horizontal rule
1399 1400 * Fixed: Repository: View differences doesn't work
1400 1401 * Fixed: attachement's name maybe invalid.
1401 1402 * Fixed: Error when creating a new issue
1402 1403 * Fixed: NoMethodError on @available_filters.has_key?
1403 1404 * Fixed: Check All / Uncheck All in Email Settings
1404 1405 * Fixed: "View differences" of one file at /repositories/revision/ fails
1405 1406 * Fixed: Column width in "my page"
1406 1407 * Fixed: private subprojects are listed on Issues view
1407 1408 * Fixed: Textile: bold, italics, underline, etc... not working after parentheses
1408 1409 * Fixed: Update issue form: comment field from log time end out of screen
1409 1410 * Fixed: Editing role: "issue can be assigned to this role" out of box
1410 1411 * Fixed: Unable use angular braces after include word
1411 1412 * Fixed: Using '*' as keyword for repository referencing keywords doesn't work
1412 1413 * Fixed: Subversion repository "View differences" on each file rise ERROR
1413 1414 * Fixed: View differences for individual file of a changeset fails if the repository URL doesn't point to the repository root
1414 1415 * Fixed: It is possible to lock out the last admin account
1415 1416 * Fixed: Wikis are viewable for anonymous users on public projects, despite not granting access
1416 1417 * Fixed: Issue number display clipped on 'my issues'
1417 1418 * Fixed: Roadmap version list links not carrying state
1418 1419 * Fixed: Log Time fieldset in IssueController#edit doesn't set default Activity as default
1419 1420 * Fixed: git's "get_rev" API should use repo's current branch instead of hardwiring "master"
1420 1421 * Fixed: browser's language subcodes ignored
1421 1422 * Fixed: Error on project selection with numeric (only) identifier.
1422 1423 * Fixed: Link to PDF doesn't work after creating new issue
1423 1424 * Fixed: "Replies" should not be shown on forum threads that are locked
1424 1425 * Fixed: SVN errors lead to svn username/password being displayed to end users (security issue)
1425 1426 * Fixed: http links containing hashes don't display correct
1426 1427 * Fixed: Allow ampersands in Enumeration names
1427 1428 * Fixed: Atom link on saved query does not include query_id
1428 1429 * Fixed: Logtime info lost when there's an error updating an issue
1429 1430 * Fixed: TOC does not parse colorization markups
1430 1431 * Fixed: CVS: add support for modules names with spaces
1431 1432 * Fixed: Bad rendering on projects/add
1432 1433 * Fixed: exception when viewing differences on cvs
1433 1434 * Fixed: export issue to pdf will messup when use Chinese language
1434 1435 * Fixed: Redmine::Scm::Adapters::GitAdapter#get_rev ignored GIT_BIN constant
1435 1436 * Fixed: Adding non-ASCII new issue type in the New Issue page have encoding error using IE
1436 1437 * Fixed: Importing from trac : some wiki links are messed
1437 1438 * Fixed: Incorrect weekend definition in Hebrew calendar locale
1438 1439 * Fixed: Atom feeds don't provide author section for repository revisions
1439 1440 * Fixed: In Activity views, changesets titles can be multiline while they should not
1440 1441 * Fixed: Ignore unreadable subversion directories (read disabled using authz)
1441 1442 * Fixed: lib/SVG/Graph/Graph.rb can't externalize stylesheets
1442 1443 * Fixed: Close statement handler in Redmine.pm
1443 1444
1444 1445
1445 1446 == 2008-05-04 v0.7.1
1446 1447
1447 1448 * Thai translation added (Gampol Thitinilnithi)
1448 1449 * Translations updates
1449 1450 * Escape HTML comment tags
1450 1451 * Prevent "can't convert nil into String" error when :sort_order param is not present
1451 1452 * Fixed: Updating tickets add a time log with zero hours
1452 1453 * Fixed: private subprojects names are revealed on the project overview
1453 1454 * Fixed: Search for target version of "none" fails with postgres 8.3
1454 1455 * Fixed: Home, Logout, Login links shouldn't be absolute links
1455 1456 * Fixed: 'Latest projects' box on the welcome screen should be hidden if there are no projects
1456 1457 * Fixed: error when using upcase language name in coderay
1457 1458 * Fixed: error on Trac import when :due attribute is nil
1458 1459
1459 1460
1460 1461 == 2008-04-28 v0.7.0
1461 1462
1462 1463 * Forces Redmine to use rails 2.0.2 gem when vendor/rails is not present
1463 1464 * Queries can be marked as 'For all projects'. Such queries will be available on all projects and on the global issue list.
1464 1465 * Add predefined date ranges to the time report
1465 1466 * Time report can be done at issue level
1466 1467 * Various timelog report enhancements
1467 1468 * Accept the following formats for "hours" field: 1h, 1 h, 1 hour, 2 hours, 30m, 30min, 1h30, 1h30m, 1:30
1468 1469 * Display the context menu above and/or to the left of the click if needed
1469 1470 * Make the admin project files list sortable
1470 1471 * Mercurial: display working directory files sizes unless browsing a specific revision
1471 1472 * Preserve status filter and page number when using lock/unlock/activate links on the users list
1472 1473 * Redmine.pm support for LDAP authentication
1473 1474 * Better error message and AR errors in log for failed LDAP on-the-fly user creation
1474 1475 * Redirected user to where he is coming from after logging hours
1475 1476 * Warn user that subprojects are also deleted when deleting a project
1476 1477 * Include subprojects versions on calendar and gantt
1477 1478 * Notify project members when a message is posted if they want to receive notifications
1478 1479 * Fixed: Feed content limit setting has no effect
1479 1480 * Fixed: Priorities not ordered when displayed as a filter in issue list
1480 1481 * Fixed: can not display attached images inline in message replies
1481 1482 * Fixed: Boards are not deleted when project is deleted
1482 1483 * Fixed: trying to preview a new issue raises an exception with postgresql
1483 1484 * Fixed: single file 'View difference' links do not work because of duplicate slashes in url
1484 1485 * Fixed: inline image not displayed when including a wiki page
1485 1486 * Fixed: CVS duplicate key violation
1486 1487 * Fixed: ActiveRecord::StaleObjectError exception on closing a set of circular duplicate issues
1487 1488 * Fixed: custom field filters behaviour
1488 1489 * Fixed: Postgresql 8.3 compatibility
1489 1490 * Fixed: Links to repository directories don't work
1490 1491
1491 1492
1492 1493 == 2008-03-29 v0.7.0-rc1
1493 1494
1494 1495 * Overall activity view and feed added, link is available on the project list
1495 1496 * Git VCS support
1496 1497 * Rails 2.0 sessions cookie store compatibility
1497 1498 * Use project identifiers in urls instead of ids
1498 1499 * Default configuration data can now be loaded from the administration screen
1499 1500 * Administration settings screen split to tabs (email notifications options moved to 'Settings')
1500 1501 * Project description is now unlimited and optional
1501 1502 * Wiki annotate view
1502 1503 * Escape HTML tag in textile content
1503 1504 * Add Redmine links to documents, versions, attachments and repository files
1504 1505 * New setting to specify how many objects should be displayed on paginated lists. There are 2 ways to select a set of issues on the issue list:
1505 1506 * by using checkbox and/or the little pencil that will select/unselect all issues
1506 1507 * by clicking on the rows (but not on the links), Ctrl and Shift keys can be used to select multiple issues
1507 1508 * Context menu disabled on links so that the default context menu of the browser is displayed when right-clicking on a link (click anywhere else on the row to display the context menu)
1508 1509 * User display format is now configurable in administration settings
1509 1510 * Issue list now supports bulk edit/move/delete (for a set of issues that belong to the same project)
1510 1511 * Merged 'change status', 'edit issue' and 'add note' actions:
1511 1512 * Users with 'edit issues' permission can now update any property including custom fields when adding a note or changing the status
1512 1513 * 'Change issue status' permission removed. To change an issue status, a user just needs to have either 'Edit' or 'Add note' permissions and some workflow transitions allowed
1513 1514 * Details by assignees on issue summary view
1514 1515 * 'New issue' link in the main menu (accesskey 7). The drop-down lists to add an issue on the project overview and the issue list are removed
1515 1516 * Change status select box default to current status
1516 1517 * Preview for issue notes, news and messages
1517 1518 * Optional description for attachments
1518 1519 * 'Fixed version' label changed to 'Target version'
1519 1520 * Let the user choose when deleting issues with reported hours to:
1520 1521 * delete the hours
1521 1522 * assign the hours to the project
1522 1523 * reassign the hours to another issue
1523 1524 * Date range filter and pagination on time entries detail view
1524 1525 * Propagate time tracking to the parent project
1525 1526 * Switch added on the project activity view to include subprojects
1526 1527 * Display total estimated and spent hours on the version detail view
1527 1528 * Weekly time tracking block for 'My page'
1528 1529 * Permissions to edit time entries
1529 1530 * Include subprojects on the issue list, calendar, gantt and timelog by default (can be turned off is administration settings)
1530 1531 * Roadmap enhancements (separate related issues from wiki contents, leading h1 in version wiki pages is hidden, smaller wiki headings)
1531 1532 * Make versions with same date sorted by name
1532 1533 * Allow issue list to be sorted by target version
1533 1534 * Related changesets messages displayed on the issue details view
1534 1535 * Create a journal and send an email when an issue is closed by commit
1535 1536 * Add 'Author' to the available columns for the issue list
1536 1537 * More appropriate default sort order on sortable columns
1537 1538 * Add issue subject to the time entries view and issue subject, description and tracker to the csv export
1538 1539 * Permissions to edit issue notes
1539 1540 * Display date/time instead of date on files list
1540 1541 * Do not show Roadmap menu item if the project doesn't define any versions
1541 1542 * Allow longer version names (60 chars)
1542 1543 * Ability to copy an existing workflow when creating a new role
1543 1544 * Display custom fields in two columns on the issue form
1544 1545 * Added 'estimated time' in the csv export of the issue list
1545 1546 * Display the last 30 days on the activity view rather than the current month (number of days can be configured in the application settings)
1546 1547 * Setting for whether new projects should be public by default
1547 1548 * User preference to choose how comments/replies are displayed: in chronological or reverse chronological order
1548 1549 * Added default value for custom fields
1549 1550 * Added tabindex property on wiki toolbar buttons (to easily move from field to field using the tab key)
1550 1551 * Redirect to issue page after creating a new issue
1551 1552 * Wiki toolbar improvements (mainly for Firefox)
1552 1553 * Display wiki syntax quick ref link on all wiki textareas
1553 1554 * Display links to Atom feeds
1554 1555 * Breadcrumb nav for the forums
1555 1556 * Show replies when choosing to display messages in the activity
1556 1557 * Added 'include' macro to include another wiki page
1557 1558 * RedmineWikiFormatting page available as a static HTML file locally
1558 1559 * Wrap diff content
1559 1560 * Strip out email address from authors in repository screens
1560 1561 * Highlight the current item of the main menu
1561 1562 * Added simple syntax highlighters for php and java languages
1562 1563 * Do not show empty diffs
1563 1564 * Show explicit error message when the scm command failed (eg. when svn binary is not available)
1564 1565 * Lithuanian translation added (Sergej Jegorov)
1565 1566 * Ukrainan translation added (Natalia Konovka & Mykhaylo Sorochan)
1566 1567 * Danish translation added (Mads Vestergaard)
1567 1568 * Added i18n support to the jstoolbar and various settings screen
1568 1569 * RedCloth's glyphs no longer user
1569 1570 * New icons for the wiki toolbar (from http://www.famfamfam.com/lab/icons/silk/)
1570 1571 * The following menus can now be extended by plugins: top_menu, account_menu, application_menu
1571 1572 * Added a simple rake task to fetch changesets from the repositories: rake redmine:fetch_changesets
1572 1573 * Remove hardcoded "Redmine" strings in account related emails and use application title instead
1573 1574 * Mantis importer preserve bug ids
1574 1575 * Trac importer: Trac guide wiki pages skipped
1575 1576 * Trac importer: wiki attachments migration added
1576 1577 * Trac importer: support database schema for Trac migration
1577 1578 * Trac importer: support CamelCase links
1578 1579 * Removes the Redmine version from the footer (can be viewed on admin -> info)
1579 1580 * Rescue and display an error message when trying to delete a role that is in use
1580 1581 * Add various 'X-Redmine' headers to email notifications: X-Redmine-Host, X-Redmine-Site, X-Redmine-Project, X-Redmine-Issue-Id, -Author, -Assignee, X-Redmine-Topic-Id
1581 1582 * Add "--encoding utf8" option to the Mercurial "hg log" command in order to get utf8 encoded commit logs
1582 1583 * Fixed: Gantt and calendar not properly refreshed (fragment caching removed)
1583 1584 * Fixed: Textile image with style attribute cause internal server error
1584 1585 * Fixed: wiki TOC not rendered properly when used in an issue or document description
1585 1586 * Fixed: 'has already been taken' error message on username and email fields if left empty
1586 1587 * Fixed: non-ascii attachement filename with IE
1587 1588 * Fixed: wrong url for wiki syntax pop-up when Redmine urls are prefixed
1588 1589 * Fixed: search for all words doesn't work
1589 1590 * Fixed: Do not show sticky and locked checkboxes when replying to a message
1590 1591 * Fixed: Mantis importer: do not duplicate Mantis username in firstname and lastname if realname is blank
1591 1592 * Fixed: Date custom fields not displayed as specified in application settings
1592 1593 * Fixed: titles not escaped in the activity view
1593 1594 * Fixed: issue queries can not use custom fields marked as 'for all projects' in a project context
1594 1595 * Fixed: on calendar, gantt and in the tracker filter on the issue list, only active trackers of the project (and its sub projects) should be available
1595 1596 * Fixed: locked users should not receive email notifications
1596 1597 * Fixed: custom field selection is not saved when unchecking them all on project settings
1597 1598 * Fixed: can not lock a topic when creating it
1598 1599 * Fixed: Incorrect filtering for unset values when using 'is not' filter
1599 1600 * Fixed: PostgreSQL issues_seq_id not updated when using Trac importer
1600 1601 * Fixed: ajax pagination does not scroll up
1601 1602 * Fixed: error when uploading a file with no content-type specified by the browser
1602 1603 * Fixed: wiki and changeset links not displayed when previewing issue description or notes
1603 1604 * Fixed: 'LdapError: no bind result' error when authenticating
1604 1605 * Fixed: 'LdapError: invalid binding information' when no username/password are set on the LDAP account
1605 1606 * Fixed: CVS repository doesn't work if port is used in the url
1606 1607 * Fixed: Email notifications: host name is missing in generated links
1607 1608 * Fixed: Email notifications: referenced changesets, wiki pages, attachments... are not turned into links
1608 1609 * Fixed: Do not clear issue relations when moving an issue to another project if cross-project issue relations are allowed
1609 1610 * Fixed: "undefined method 'textilizable'" error on email notification when running Repository#fetch_changesets from the console
1610 1611 * Fixed: Do not send an email with no recipient, cc or bcc
1611 1612 * Fixed: fetch_changesets fails on commit comments that close 2 duplicates issues.
1612 1613 * Fixed: Mercurial browsing under unix-like os and for directory depth > 2
1613 1614 * Fixed: Wiki links with pipe can not be used in wiki tables
1614 1615 * Fixed: migrate_from_trac doesn't import timestamps of wiki and tickets
1615 1616 * Fixed: when bulk editing, setting "Assigned to" to "nobody" causes an sql error with Postgresql
1616 1617
1617 1618
1618 1619 == 2008-03-12 v0.6.4
1619 1620
1620 1621 * Fixed: private projects name are displayed on account/show even if the current user doesn't have access to these private projects
1621 1622 * Fixed: potential LDAP authentication security flaw
1622 1623 * Fixed: context submenus on the issue list don't show up with IE6.
1623 1624 * Fixed: Themes are not applied with Rails 2.0
1624 1625 * Fixed: crash when fetching Mercurial changesets if changeset[:files] is nil
1625 1626 * Fixed: Mercurial repository browsing
1626 1627 * Fixed: undefined local variable or method 'log' in CvsAdapter when a cvs command fails
1627 1628 * Fixed: not null constraints not removed with Postgresql
1628 1629 * Doctype set to transitional
1629 1630
1630 1631
1631 1632 == 2007-12-18 v0.6.3
1632 1633
1633 1634 * Fixed: upload doesn't work in 'Files' section
1634 1635
1635 1636
1636 1637 == 2007-12-16 v0.6.2
1637 1638
1638 1639 * Search engine: issue custom fields can now be searched
1639 1640 * News comments are now textilized
1640 1641 * Updated Japanese translation (Satoru Kurashiki)
1641 1642 * Updated Chinese translation (Shortie Lo)
1642 1643 * Fixed Rails 2.0 compatibility bugs:
1643 1644 * Unable to create a wiki
1644 1645 * Gantt and calendar error
1645 1646 * Trac importer error (readonly? is defined by ActiveRecord)
1646 1647 * Fixed: 'assigned to me' filter broken
1647 1648 * Fixed: crash when validation fails on issue edition with no custom fields
1648 1649 * Fixed: reposman "can't find group" error
1649 1650 * Fixed: 'LDAP account password is too long' error when leaving the field empty on creation
1650 1651 * Fixed: empty lines when displaying repository files with Windows style eol
1651 1652 * Fixed: missing body closing tag in repository annotate and entry views
1652 1653
1653 1654
1654 1655 == 2007-12-10 v0.6.1
1655 1656
1656 1657 * Rails 2.0 compatibility
1657 1658 * Custom fields can now be displayed as columns on the issue list
1658 1659 * Added version details view (accessible from the roadmap)
1659 1660 * Roadmap: more accurate completion percentage calculation (done ratio of open issues is now taken into account)
1660 1661 * Added per-project tracker selection. Trackers can be selected on project settings
1661 1662 * Anonymous users can now be allowed to create, edit, comment issues, comment news and post messages in the forums
1662 1663 * Forums: messages can now be edited/deleted (explicit permissions need to be given)
1663 1664 * Forums: topics can be locked so that no reply can be added
1664 1665 * Forums: topics can be marked as sticky so that they always appear at the top of the list
1665 1666 * Forums: attachments can now be added to replies
1666 1667 * Added time zone support
1667 1668 * Added a setting to choose the account activation strategy (available in application settings)
1668 1669 * Added 'Classic' theme (inspired from the v0.51 design)
1669 1670 * Added an alternate theme which provides issue list colorization based on issues priority
1670 1671 * Added Bazaar SCM adapter
1671 1672 * Added Annotate/Blame view in the repository browser (except for Darcs SCM)
1672 1673 * Diff style (inline or side by side) automatically saved as a user preference
1673 1674 * Added issues status changes on the activity view (by Cyril Mougel)
1674 1675 * Added forums topics on the activity view (disabled by default)
1675 1676 * Added an option on 'My account' for users who don't want to be notified of changes that they make
1676 1677 * Trac importer now supports mysql and postgresql databases
1677 1678 * Trac importer improvements (by Mat Trudel)
1678 1679 * 'fixed version' field can now be displayed on the issue list
1679 1680 * Added a couple of new formats for the 'date format' setting
1680 1681 * Added Traditional Chinese translation (by Shortie Lo)
1681 1682 * Added Russian translation (iGor kMeta)
1682 1683 * Project name format limitation removed (name can now contain any character)
1683 1684 * Project identifier maximum length changed from 12 to 20
1684 1685 * Changed the maximum length of LDAP account to 255 characters
1685 1686 * Removed the 12 characters limit on passwords
1686 1687 * Added wiki macros support
1687 1688 * Performance improvement on workflow setup screen
1688 1689 * More detailed html title on several views
1689 1690 * Custom fields can now be reordered
1690 1691 * Search engine: search can be restricted to an exact phrase by using quotation marks
1691 1692 * Added custom fields marked as 'For all projects' to the csv export of the cross project issue list
1692 1693 * Email notifications are now sent as Blind carbon copy by default
1693 1694 * Fixed: all members (including non active) should be deleted when deleting a project
1694 1695 * Fixed: Error on wiki syntax link (accessible from wiki/edit)
1695 1696 * Fixed: 'quick jump to a revision' form on the revisions list
1696 1697 * Fixed: error on admin/info if there's more than 1 plugin installed
1697 1698 * Fixed: svn or ldap password can be found in clear text in the html source in editing mode
1698 1699 * Fixed: 'Assigned to' drop down list is not sorted
1699 1700 * Fixed: 'View all issues' link doesn't work on issues/show
1700 1701 * Fixed: error on account/register when validation fails
1701 1702 * Fixed: Error when displaying the issue list if a float custom field is marked as 'used as filter'
1702 1703 * Fixed: Mercurial adapter breaks on missing :files entry in changeset hash (James Britt)
1703 1704 * Fixed: Wrong feed URLs on the home page
1704 1705 * Fixed: Update of time entry fails when the issue has been moved to an other project
1705 1706 * Fixed: Error when moving an issue without changing its tracker (Postgresql)
1706 1707 * Fixed: Changes not recorded when using :pserver string (CVS adapter)
1707 1708 * Fixed: admin should be able to move issues to any project
1708 1709 * Fixed: adding an attachment is not possible when changing the status of an issue
1709 1710 * Fixed: No mime-types in documents/files downloading
1710 1711 * Fixed: error when sorting the messages if there's only one board for the project
1711 1712 * Fixed: 'me' doesn't appear in the drop down filters on a project issue list.
1712 1713
1713 1714 == 2007-11-04 v0.6.0
1714 1715
1715 1716 * Permission model refactoring.
1716 1717 * Permissions: there are now 2 builtin roles that can be used to specify permissions given to other users than members of projects
1717 1718 * Permissions: some permissions (eg. browse the repository) can be removed for certain roles
1718 1719 * Permissions: modules (eg. issue tracking, news, documents...) can be enabled/disabled at project level
1719 1720 * Added Mantis and Trac importers
1720 1721 * New application layout
1721 1722 * Added "Bulk edit" functionality on the issue list
1722 1723 * More flexible mail notifications settings at user level
1723 1724 * Added AJAX based context menu on the project issue list that provide shortcuts for editing, re-assigning, changing the status or the priority, moving or deleting an issue
1724 1725 * Added the hability to copy an issue. It can be done from the "issue/show" view or from the context menu on the issue list
1725 1726 * Added the ability to customize issue list columns (at application level or for each saved query)
1726 1727 * Overdue versions (date reached and open issues > 0) are now always displayed on the roadmap
1727 1728 * Added the ability to rename wiki pages (specific permission required)
1728 1729 * Search engines now supports pagination. Results are sorted in reverse chronological order
1729 1730 * Added "Estimated hours" attribute on issues
1730 1731 * A category with assigned issue can now be deleted. 2 options are proposed: remove assignments or reassign issues to another category
1731 1732 * Forum notifications are now also sent to the authors of the thread, even if they donΓ―ΒΏΒ½t watch the board
1732 1733 * Added an application setting to specify the application protocol (http or https) used to generate urls in emails
1733 1734 * Gantt chart: now starts at the current month by default
1734 1735 * Gantt chart: month count and zoom factor are automatically saved as user preferences
1735 1736 * Wiki links can now refer to other project wikis
1736 1737 * Added wiki index by date
1737 1738 * Added preview on add/edit issue form
1738 1739 * Emails footer can now be customized from the admin interface (Admin -> Email notifications)
1739 1740 * Default encodings for repository files can now be set in application settings (used to convert files content and diff to UTF-8 so that theyΓ―ΒΏΒ½re properly displayed)
1740 1741 * Calendar: first day of week can now be set in lang files
1741 1742 * Automatic closing of duplicate issues
1742 1743 * Added a cross-project issue list
1743 1744 * AJAXified the SCM browser (tree view)
1744 1745 * Pretty URL for the repository browser (Cyril Mougel)
1745 1746 * Search engine: added a checkbox to search titles only
1746 1747 * Added "% done" in the filter list
1747 1748 * Enumerations: values can now be reordered and a default value can be specified (eg. default issue priority)
1748 1749 * Added some accesskeys
1749 1750 * Added "Float" as a custom field format
1750 1751 * Added basic Theme support
1751 1752 * Added the ability to set the Γ―ΒΏΒ½done ratioΓ―ΒΏΒ½ of issues fixed by commit (Nikolay Solakov)
1752 1753 * Added custom fields in issue related mail notifications
1753 1754 * Email notifications are now sent in plain text and html
1754 1755 * Gantt chart can now be exported to a graphic file (png). This functionality is only available if RMagick is installed.
1755 1756 * Added syntax highlightment for repository files and wiki
1756 1757 * Improved automatic Redmine links
1757 1758 * Added automatic table of content support on wiki pages
1758 1759 * Added radio buttons on the documents list to sort documents by category, date, title or author
1759 1760 * Added basic plugin support, with a sample plugin
1760 1761 * Added a link to add a new category when creating or editing an issue
1761 1762 * Added a "Assignable" boolean on the Role model. If unchecked, issues can not be assigned to users having this role.
1762 1763 * Added an option to be able to relate issues in different projects
1763 1764 * Added the ability to move issues (to another project) without changing their trackers.
1764 1765 * Atom feeds added on project activity, news and changesets
1765 1766 * Added the ability to reset its own RSS access key
1766 1767 * Main project list now displays root projects with their subprojects
1767 1768 * Added anchor links to issue notes
1768 1769 * Added reposman Ruby version. This script can now register created repositories in Redmine (Nicolas Chuche)
1769 1770 * Issue notes are now included in search
1770 1771 * Added email sending test functionality
1771 1772 * Added LDAPS support for LDAP authentication
1772 1773 * Removed hard-coded URLs in mail templates
1773 1774 * Subprojects are now grouped by projects in the navigation drop-down menu
1774 1775 * Added a new value for date filters: this week
1775 1776 * Added cache for application settings
1776 1777 * Added Polish translation (Tomasz Gawryl)
1777 1778 * Added Czech translation (Jan Kadlecek)
1778 1779 * Added Romanian translation (Csongor Bartus)
1779 1780 * Added Hebrew translation (Bob Builder)
1780 1781 * Added Serbian translation (Dragan Matic)
1781 1782 * Added Korean translation (Choi Jong Yoon)
1782 1783 * Fixed: the link to delete issue relations is displayed even if the user is not authorized to delete relations
1783 1784 * Performance improvement on calendar and gantt
1784 1785 * Fixed: wiki preview doesnΓ―ΒΏΒ½t work on long entries
1785 1786 * Fixed: queries with multiple custom fields return no result
1786 1787 * Fixed: Can not authenticate user against LDAP if its DN contains non-ascii characters
1787 1788 * Fixed: URL with ~ broken in wiki formatting
1788 1789 * Fixed: some quotation marks are rendered as strange characters in pdf
1789 1790
1790 1791
1791 1792 == 2007-07-15 v0.5.1
1792 1793
1793 1794 * per project forums added
1794 1795 * added the ability to archive projects
1795 1796 * added Γ―ΒΏΒ½WatchΓ―ΒΏΒ½ functionality on issues. It allows users to receive notifications about issue changes
1796 1797 * custom fields for issues can now be used as filters on issue list
1797 1798 * added per user custom queries
1798 1799 * commit messages are now scanned for referenced or fixed issue IDs (keywords defined in Admin -> Settings)
1799 1800 * projects list now shows the list of public projects and private projects for which the user is a member
1800 1801 * versions can now be created with no date
1801 1802 * added issue count details for versions on Reports view
1802 1803 * added time report, by member/activity/tracker/version and year/month/week for the selected period
1803 1804 * each category can now be associated to a user, so that new issues in that category are automatically assigned to that user
1804 1805 * added autologin feature (disabled by default)
1805 1806 * optimistic locking added for wiki edits
1806 1807 * added wiki diff
1807 1808 * added the ability to destroy wiki pages (requires permission)
1808 1809 * a wiki page can now be attached to each version, and displayed on the roadmap
1809 1810 * attachments can now be added to wiki pages (original patch by Pavol Murin) and displayed online
1810 1811 * added an option to see all versions in the roadmap view (including completed ones)
1811 1812 * added basic issue relations
1812 1813 * added the ability to log time when changing an issue status
1813 1814 * account information can now be sent to the user when creating an account
1814 1815 * author and assignee of an issue always receive notifications (even if they turned of mail notifications)
1815 1816 * added a quick search form in page header
1816 1817 * added 'me' value for 'assigned to' and 'author' query filters
1817 1818 * added a link on revision screen to see the entire diff for the revision
1818 1819 * added last commit message for each entry in repository browser
1819 1820 * added the ability to view a file diff with free to/from revision selection.
1820 1821 * text files can now be viewed online when browsing the repository
1821 1822 * added basic support for other SCM: CVS (Ralph Vater), Mercurial and Darcs
1822 1823 * added fragment caching for svn diffs
1823 1824 * added fragment caching for calendar and gantt views
1824 1825 * login field automatically focused on login form
1825 1826 * subproject name displayed on issue list, calendar and gantt
1826 1827 * added an option to choose the date format: language based or ISO 8601
1827 1828 * added a simple mail handler. It lets users add notes to an existing issue by replying to the initial notification email.
1828 1829 * a 403 error page is now displayed (instead of a blank page) when trying to access a protected page
1829 1830 * added portuguese translation (Joao Carlos Clementoni)
1830 1831 * added partial online help japanese translation (Ken Date)
1831 1832 * added bulgarian translation (Nikolay Solakov)
1832 1833 * added dutch translation (Linda van den Brink)
1833 1834 * added swedish translation (Thomas Habets)
1834 1835 * italian translation update (Alessio Spadaro)
1835 1836 * japanese translation update (Satoru Kurashiki)
1836 1837 * fixed: error on history atom feed when thereΓ―ΒΏΒ½s no notes on an issue change
1837 1838 * fixed: error in journalizing an issue with longtext custom fields (Postgresql)
1838 1839 * fixed: creation of Oracle schema
1839 1840 * fixed: last day of the month not included in project activity
1840 1841 * fixed: files with an apostrophe in their names can't be accessed in SVN repository
1841 1842 * fixed: performance issue on RepositoriesController#revisions when a changeset has a great number of changes (eg. 100,000)
1842 1843 * fixed: open/closed issue counts are always 0 on reports view (postgresql)
1843 1844 * fixed: date query filters (wrong results and sql error with postgresql)
1844 1845 * fixed: confidentiality issue on account/show (private project names displayed to anyone)
1845 1846 * fixed: Long text custom fields displayed without line breaks
1846 1847 * fixed: Error when editing the wokflow after deleting a status
1847 1848 * fixed: SVN commit dates are now stored as local time
1848 1849
1849 1850
1850 1851 == 2007-04-11 v0.5.0
1851 1852
1852 1853 * added per project Wiki
1853 1854 * added rss/atom feeds at project level (custom queries can be used as feeds)
1854 1855 * added search engine (search in issues, news, commits, wiki pages, documents)
1855 1856 * simple time tracking functionality added
1856 1857 * added version due dates on calendar and gantt
1857 1858 * added subprojects issue count on project Reports page
1858 1859 * added the ability to copy an existing workflow when creating a new tracker
1859 1860 * added the ability to include subprojects on calendar and gantt
1860 1861 * added the ability to select trackers to display on calendar and gantt (Jeffrey Jones)
1861 1862 * added side by side svn diff view (Cyril Mougel)
1862 1863 * added back subproject filter on issue list
1863 1864 * added permissions report in admin area
1864 1865 * added a status filter on users list
1865 1866 * support for password-protected SVN repositories
1866 1867 * SVN commits are now stored in the database
1867 1868 * added simple svn statistics SVG graphs
1868 1869 * progress bars for roadmap versions (Nick Read)
1869 1870 * issue history now shows file uploads and deletions
1870 1871 * #id patterns are turned into links to issues in descriptions and commit messages
1871 1872 * japanese translation added (Satoru Kurashiki)
1872 1873 * chinese simplified translation added (Andy Wu)
1873 1874 * italian translation added (Alessio Spadaro)
1874 1875 * added scripts to manage SVN repositories creation and user access control using ssh+svn (Nicolas Chuche)
1875 1876 * better calendar rendering time
1876 1877 * fixed migration scripts to work with mysql 5 running in strict mode
1877 1878 * fixed: error when clicking "add" with no block selected on my/page_layout
1878 1879 * fixed: hard coded links in navigation bar
1879 1880 * fixed: table_name pre/suffix support
1880 1881
1881 1882
1882 1883 == 2007-02-18 v0.4.2
1883 1884
1884 1885 * Rails 1.2 is now required
1885 1886 * settings are now stored in the database and editable through the application in: Admin -> Settings (config_custom.rb is no longer used)
1886 1887 * added project roadmap view
1887 1888 * mail notifications added when a document, a file or an attachment is added
1888 1889 * tooltips added on Gantt chart and calender to view the details of the issues
1889 1890 * ability to set the sort order for roles, trackers, issue statuses
1890 1891 * added missing fields to csv export: priority, start date, due date, done ratio
1891 1892 * added total number of issues per tracker on project overview
1892 1893 * all icons replaced (new icons are based on GPL icon set: "KDE Crystal Diamond 2.5" -by paolino- and "kNeu! Alpha v0.1" -by Pablo Fabregat-)
1893 1894 * added back "fixed version" field on issue screen and in filters
1894 1895 * project settings screen split in 4 tabs
1895 1896 * custom fields screen split in 3 tabs (one for each kind of custom field)
1896 1897 * multiple issues pdf export now rendered as a table
1897 1898 * added a button on users/list to manually activate an account
1898 1899 * added a setting option to disable "password lost" functionality
1899 1900 * added a setting option to set max number of issues in csv/pdf exports
1900 1901 * fixed: subprojects count is always 0 on projects list
1901 1902 * fixed: locked users are proposed when adding a member to a project
1902 1903 * fixed: setting an issue status as default status leads to an sql error with SQLite
1903 1904 * fixed: unable to delete an issue status even if it's not used yet
1904 1905 * fixed: filters ignored when exporting a predefined query to csv/pdf
1905 1906 * fixed: crash when french "issue_edit" email notification is sent
1906 1907 * fixed: hide mail preference not saved (my/account)
1907 1908 * fixed: crash when a new user try to edit its "my page" layout
1908 1909
1909 1910
1910 1911 == 2007-01-03 v0.4.1
1911 1912
1912 1913 * fixed: emails have no recipient when one of the project members has notifications disabled
1913 1914
1914 1915
1915 1916 == 2007-01-02 v0.4.0
1916 1917
1917 1918 * simple SVN browser added (just needs svn binaries in PATH)
1918 1919 * comments can now be added on news
1919 1920 * "my page" is now customizable
1920 1921 * more powerfull and savable filters for issues lists
1921 1922 * improved issues change history
1922 1923 * new functionality: move an issue to another project or tracker
1923 1924 * new functionality: add a note to an issue
1924 1925 * new report: project activity
1925 1926 * "start date" and "% done" fields added on issues
1926 1927 * project calendar added
1927 1928 * gantt chart added (exportable to pdf)
1928 1929 * single/multiple issues pdf export added
1929 1930 * issues reports improvements
1930 1931 * multiple file upload for issues, documents and files
1931 1932 * option to set maximum size of uploaded files
1932 1933 * textile formating of issue and news descritions (RedCloth required)
1933 1934 * integration of DotClear jstoolbar for textile formatting
1934 1935 * calendar date picker for date fields (LGPL DHTML Calendar http://sourceforge.net/projects/jscalendar)
1935 1936 * new filter in issues list: Author
1936 1937 * ajaxified paginators
1937 1938 * news rss feed added
1938 1939 * option to set number of results per page on issues list
1939 1940 * localized csv separator (comma/semicolon)
1940 1941 * csv output encoded to ISO-8859-1
1941 1942 * user custom field displayed on account/show
1942 1943 * default configuration improved (default roles, trackers, status, permissions and workflows)
1943 1944 * language for default configuration data can now be chosen when running 'load_default_data' task
1944 1945 * javascript added on custom field form to show/hide fields according to the format of custom field
1945 1946 * fixed: custom fields not in csv exports
1946 1947 * fixed: project settings now displayed according to user's permissions
1947 1948 * fixed: application error when no version is selected on projects/add_file
1948 1949 * fixed: public actions not authorized for members of non public projects
1949 1950 * fixed: non public projects were shown on welcome screen even if current user is not a member
1950 1951
1951 1952
1952 1953 == 2006-10-08 v0.3.0
1953 1954
1954 1955 * user authentication against multiple LDAP (optional)
1955 1956 * token based "lost password" functionality
1956 1957 * user self-registration functionality (optional)
1957 1958 * custom fields now available for issues, users and projects
1958 1959 * new custom field format "text" (displayed as a textarea field)
1959 1960 * project & administration drop down menus in navigation bar for quicker access
1960 1961 * text formatting is preserved for long text fields (issues, projects and news descriptions)
1961 1962 * urls and emails are turned into clickable links in long text fields
1962 1963 * "due date" field added on issues
1963 1964 * tracker selection filter added on change log
1964 1965 * Localization plugin replaced with GLoc 1.1.0 (iconv required)
1965 1966 * error messages internationalization
1966 1967 * german translation added (thanks to Karim Trott)
1967 1968 * data locking for issues to prevent update conflicts (using ActiveRecord builtin optimistic locking)
1968 1969 * new filter in issues list: "Fixed version"
1969 1970 * active filters are displayed with colored background on issues list
1970 1971 * custom configuration is now defined in config/config_custom.rb
1971 1972 * user object no more stored in session (only user_id)
1972 1973 * news summary field is no longer required
1973 1974 * tables and forms redesign
1974 1975 * Fixed: boolean custom field not working
1975 1976 * Fixed: error messages for custom fields are not displayed
1976 1977 * Fixed: invalid custom fields should have a red border
1977 1978 * Fixed: custom fields values are not validated on issue update
1978 1979 * Fixed: unable to choose an empty value for 'List' custom fields
1979 1980 * Fixed: no issue categories sorting
1980 1981 * Fixed: incorrect versions sorting
1981 1982
1982 1983
1983 1984 == 2006-07-12 - v0.2.2
1984 1985
1985 1986 * Fixed: bug in "issues list"
1986 1987
1987 1988
1988 1989 == 2006-07-09 - v0.2.1
1989 1990
1990 1991 * new databases supported: Oracle, PostgreSQL, SQL Server
1991 1992 * projects/subprojects hierarchy (1 level of subprojects only)
1992 1993 * environment information display in admin/info
1993 1994 * more filter options in issues list (rev6)
1994 1995 * default language based on browser settings (Accept-Language HTTP header)
1995 1996 * issues list exportable to CSV (rev6)
1996 1997 * simple_format and auto_link on long text fields
1997 1998 * more data validations
1998 1999 * Fixed: error when all mail notifications are unchecked in admin/mail_options
1999 2000 * Fixed: all project news are displayed on project summary
2000 2001 * Fixed: Can't change user password in users/edit
2001 2002 * Fixed: Error on tables creation with PostgreSQL (rev5)
2002 2003 * Fixed: SQL error in "issue reports" view with PostgreSQL (rev5)
2003 2004
2004 2005
2005 2006 == 2006-06-25 - v0.1.0
2006 2007
2007 2008 * multiple users/multiple projects
2008 2009 * role based access control
2009 2010 * issue tracking system
2010 2011 * fully customizable workflow
2011 2012 * documents/files repository
2012 2013 * email notifications on issue creation and update
2013 2014 * multilanguage support (except for error messages):english, french, spanish
2014 2015 * online manual in french (unfinished)
@@ -1,164 +1,164
1 1 # Redmine - project management software
2 2 # Copyright (C) 2006-2011 Jean-Philippe Lang
3 3 #
4 4 # This program is free software; you can redistribute it and/or
5 5 # modify it under the terms of the GNU General Public License
6 6 # as published by the Free Software Foundation; either version 2
7 7 # of the License, or (at your option) any later version.
8 8 #
9 9 # This program is distributed in the hope that it will be useful,
10 10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 12 # GNU General Public License for more details.
13 13 #
14 14 # You should have received a copy of the GNU General Public License
15 15 # along with this program; if not, write to the Free Software
16 16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 17
18 18 module Redmine
19 19 module Helpers
20 20 class TimeReport
21 21 attr_reader :criteria, :columns, :from, :to, :hours, :total_hours, :periods
22 22
23 23 def initialize(project, issue, criteria, columns, from, to)
24 24 @project = project
25 25 @issue = issue
26 26
27 27 @criteria = criteria || []
28 28 @criteria = @criteria.select{|criteria| available_criteria.has_key? criteria}
29 29 @criteria.uniq!
30 30 @criteria = @criteria[0,3]
31 31
32 32 @columns = (columns && %w(year month week day).include?(columns)) ? columns : 'month'
33 33 @from = from
34 34 @to = to
35 35
36 36 run
37 37 end
38 38
39 39 def available_criteria
40 40 @available_criteria || load_available_criteria
41 41 end
42 42
43 43 private
44 44
45 45 def run
46 46 unless @criteria.empty?
47 47 scope = TimeEntry.visible.spent_between(@from, @to)
48 48 if @issue
49 49 scope = scope.on_issue(@issue)
50 50 elsif @project
51 51 scope = scope.on_project(@project, Setting.display_subprojects_issues?)
52 52 end
53 53 time_columns = %w(tyear tmonth tweek spent_on)
54 54 @hours = []
55 55 scope.sum(:hours, :include => :issue, :group => @criteria.collect{|criteria| @available_criteria[criteria][:sql]} + time_columns).each do |hash, hours|
56 56 h = {'hours' => hours}
57 57 (@criteria + time_columns).each_with_index do |name, i|
58 58 h[name] = hash[i]
59 59 end
60 60 @hours << h
61 61 end
62 62
63 63 @hours.each do |row|
64 64 case @columns
65 65 when 'year'
66 66 row['year'] = row['tyear']
67 67 when 'month'
68 68 row['month'] = "#{row['tyear']}-#{row['tmonth']}"
69 69 when 'week'
70 70 row['week'] = "#{row['tyear']}-#{row['tweek']}"
71 71 when 'day'
72 72 row['day'] = "#{row['spent_on']}"
73 73 end
74 74 end
75 75
76 76 if @from.nil?
77 77 min = @hours.collect {|row| row['spent_on']}.min
78 78 @from = min ? min.to_date : Date.today
79 79 end
80 80
81 81 if @to.nil?
82 82 max = @hours.collect {|row| row['spent_on']}.max
83 83 @to = max ? max.to_date : Date.today
84 84 end
85 85
86 86 @total_hours = @hours.inject(0) {|s,k| s = s + k['hours'].to_f}
87 87
88 88 @periods = []
89 89 # Date#at_beginning_of_ not supported in Rails 1.2.x
90 90 date_from = @from.to_time
91 91 # 100 columns max
92 92 while date_from <= @to.to_time && @periods.length < 100
93 93 case @columns
94 94 when 'year'
95 95 @periods << "#{date_from.year}"
96 96 date_from = (date_from + 1.year).at_beginning_of_year
97 97 when 'month'
98 98 @periods << "#{date_from.year}-#{date_from.month}"
99 99 date_from = (date_from + 1.month).at_beginning_of_month
100 100 when 'week'
101 101 @periods << "#{date_from.year}-#{date_from.to_date.cweek}"
102 102 date_from = (date_from + 7.day).at_beginning_of_week
103 103 when 'day'
104 104 @periods << "#{date_from.to_date}"
105 105 date_from = date_from + 1.day
106 106 end
107 107 end
108 108 end
109 109 end
110 110
111 111 def load_available_criteria
112 112 @available_criteria = { 'project' => {:sql => "#{TimeEntry.table_name}.project_id",
113 113 :klass => Project,
114 114 :label => :label_project},
115 115 'status' => {:sql => "#{Issue.table_name}.status_id",
116 116 :klass => IssueStatus,
117 117 :label => :field_status},
118 118 'version' => {:sql => "#{Issue.table_name}.fixed_version_id",
119 119 :klass => Version,
120 120 :label => :label_version},
121 121 'category' => {:sql => "#{Issue.table_name}.category_id",
122 122 :klass => IssueCategory,
123 123 :label => :field_category},
124 124 'member' => {:sql => "#{TimeEntry.table_name}.user_id",
125 125 :klass => User,
126 126 :label => :label_member},
127 127 'tracker' => {:sql => "#{Issue.table_name}.tracker_id",
128 128 :klass => Tracker,
129 129 :label => :label_tracker},
130 130 'activity' => {:sql => "#{TimeEntry.table_name}.activity_id",
131 131 :klass => TimeEntryActivity,
132 132 :label => :label_activity},
133 133 'issue' => {:sql => "#{TimeEntry.table_name}.issue_id",
134 134 :klass => Issue,
135 135 :label => :label_issue}
136 136 }
137 137
138 138 # Add list and boolean custom fields as available criteria
139 139 custom_fields = (@project.nil? ? IssueCustomField.for_all : @project.all_issue_custom_fields)
140 140 custom_fields.select {|cf| %w(list bool).include? cf.field_format }.each do |cf|
141 @available_criteria["cf_#{cf.id}"] = {:sql => "(SELECT c.value FROM #{CustomValue.table_name} c WHERE c.custom_field_id = #{cf.id} AND c.customized_type = 'Issue' AND c.customized_id = #{Issue.table_name}.id)",
141 @available_criteria["cf_#{cf.id}"] = {:sql => "(SELECT c.value FROM #{CustomValue.table_name} c WHERE c.custom_field_id = #{cf.id} AND c.customized_type = 'Issue' AND c.customized_id = #{Issue.table_name}.id ORDER BY c.value LIMIT 1)",
142 142 :format => cf.field_format,
143 143 :label => cf.name}
144 144 end if @project
145 145
146 146 # Add list and boolean time entry custom fields
147 147 TimeEntryCustomField.find(:all).select {|cf| %w(list bool).include? cf.field_format }.each do |cf|
148 @available_criteria["cf_#{cf.id}"] = {:sql => "(SELECT c.value FROM #{CustomValue.table_name} c WHERE c.custom_field_id = #{cf.id} AND c.customized_type = 'TimeEntry' AND c.customized_id = #{TimeEntry.table_name}.id)",
148 @available_criteria["cf_#{cf.id}"] = {:sql => "(SELECT c.value FROM #{CustomValue.table_name} c WHERE c.custom_field_id = #{cf.id} AND c.customized_type = 'TimeEntry' AND c.customized_id = #{TimeEntry.table_name}.id ORDER BY c.value LIMIT 1)",
149 149 :format => cf.field_format,
150 150 :label => cf.name}
151 151 end
152 152
153 153 # Add list and boolean time entry activity custom fields
154 154 TimeEntryActivityCustomField.find(:all).select {|cf| %w(list bool).include? cf.field_format }.each do |cf|
155 @available_criteria["cf_#{cf.id}"] = {:sql => "(SELECT c.value FROM #{CustomValue.table_name} c WHERE c.custom_field_id = #{cf.id} AND c.customized_type = 'Enumeration' AND c.customized_id = #{TimeEntry.table_name}.activity_id)",
155 @available_criteria["cf_#{cf.id}"] = {:sql => "(SELECT c.value FROM #{CustomValue.table_name} c WHERE c.custom_field_id = #{cf.id} AND c.customized_type = 'Enumeration' AND c.customized_id = #{TimeEntry.table_name}.activity_id ORDER BY c.value LIMIT 1)",
156 156 :format => cf.field_format,
157 157 :label => cf.name}
158 158 end
159 159
160 160 @available_criteria
161 161 end
162 162 end
163 163 end
164 164 end
@@ -1,307 +1,317
1 1 # -*- coding: utf-8 -*-
2 2 require File.expand_path('../../test_helper', __FILE__)
3 3
4 4 class TimeEntryReportsControllerTest < ActionController::TestCase
5 5 tests TimelogController
6 6
7 7 fixtures :projects, :enabled_modules, :roles, :members, :member_roles,
8 8 :issues, :time_entries, :users, :trackers, :enumerations,
9 9 :issue_statuses, :custom_fields, :custom_values
10 10
11 11 include Redmine::I18n
12 12
13 13 def setup
14 14 Setting.default_language = "en"
15 15 end
16 16
17 17 def test_report_at_project_level
18 18 get :report, :project_id => 'ecookbook'
19 19 assert_response :success
20 20 assert_template 'report'
21 21 assert_tag :form,
22 22 :attributes => {:action => "/projects/ecookbook/time_entries/report", :id => 'query_form'}
23 23 end
24 24
25 25 def test_report_all_projects
26 26 get :report
27 27 assert_response :success
28 28 assert_template 'report'
29 29 assert_tag :form,
30 30 :attributes => {:action => "/time_entries/report", :id => 'query_form'}
31 31 end
32 32
33 33 def test_report_all_projects_denied
34 34 r = Role.anonymous
35 35 r.permissions.delete(:view_time_entries)
36 36 r.permissions_will_change!
37 37 r.save
38 38 get :report
39 39 assert_redirected_to '/login?back_url=http%3A%2F%2Ftest.host%2Ftime_entries%2Freport'
40 40 end
41 41
42 42 def test_report_all_projects_one_criteria
43 43 get :report, :columns => 'week', :from => "2007-04-01", :to => "2007-04-30", :criteria => ['project']
44 44 assert_response :success
45 45 assert_template 'report'
46 46 assert_not_nil assigns(:report)
47 47 assert_equal "8.65", "%.2f" % assigns(:report).total_hours
48 48 end
49 49
50 50 def test_report_all_time
51 51 get :report, :project_id => 1, :criteria => ['project', 'issue']
52 52 assert_response :success
53 53 assert_template 'report'
54 54 assert_not_nil assigns(:report)
55 55 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
56 56 end
57 57
58 58 def test_report_all_time_by_day
59 59 get :report, :project_id => 1, :criteria => ['project', 'issue'], :columns => 'day'
60 60 assert_response :success
61 61 assert_template 'report'
62 62 assert_not_nil assigns(:report)
63 63 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
64 64 assert_tag :tag => 'th', :content => '2007-03-12'
65 65 end
66 66
67 67 def test_report_one_criteria
68 68 get :report, :project_id => 1, :columns => 'week', :from => "2007-04-01", :to => "2007-04-30", :criteria => ['project']
69 69 assert_response :success
70 70 assert_template 'report'
71 71 assert_not_nil assigns(:report)
72 72 assert_equal "8.65", "%.2f" % assigns(:report).total_hours
73 73 end
74 74
75 75 def test_report_two_criteria
76 76 get :report, :project_id => 1, :columns => 'month', :from => "2007-01-01", :to => "2007-12-31", :criteria => ["member", "activity"]
77 77 assert_response :success
78 78 assert_template 'report'
79 79 assert_not_nil assigns(:report)
80 80 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
81 81 end
82 82
83 def test_report_custom_field_criteria_with_multiple_values
84 field = TimeEntryCustomField.create!(:name => 'multi', :field_format => 'list', :possible_values => ['value1', 'value2'])
85 entry = TimeEntry.create!(:project => Project.find(1), :hours => 1, :activity_id => 10, :user => User.find(2), :spent_on => Date.today)
86 CustomValue.create!(:customized => entry, :custom_field => field, :value => 'value1')
87 CustomValue.create!(:customized => entry, :custom_field => field, :value => 'value2')
88
89 get :report, :project_id => 1, :columns => 'day', :criteria => ["cf_#{field.id}"]
90 assert_response :success
91 end
92
83 93 def test_report_one_day
84 94 get :report, :project_id => 1, :columns => 'day', :from => "2007-03-23", :to => "2007-03-23", :criteria => ["member", "activity"]
85 95 assert_response :success
86 96 assert_template 'report'
87 97 assert_not_nil assigns(:report)
88 98 assert_equal "4.25", "%.2f" % assigns(:report).total_hours
89 99 end
90 100
91 101 def test_report_at_issue_level
92 102 get :report, :project_id => 1, :issue_id => 1, :columns => 'month', :from => "2007-01-01", :to => "2007-12-31", :criteria => ["member", "activity"]
93 103 assert_response :success
94 104 assert_template 'report'
95 105 assert_not_nil assigns(:report)
96 106 assert_equal "154.25", "%.2f" % assigns(:report).total_hours
97 107 assert_tag :form,
98 108 :attributes => {:action => "/projects/ecookbook/issues/1/time_entries/report", :id => 'query_form'}
99 109 end
100 110
101 111 def test_report_custom_field_criteria
102 112 get :report, :project_id => 1, :criteria => ['project', 'cf_1', 'cf_7']
103 113 assert_response :success
104 114 assert_template 'report'
105 115 assert_not_nil assigns(:report)
106 116 assert_equal 3, assigns(:report).criteria.size
107 117 assert_equal "162.90", "%.2f" % assigns(:report).total_hours
108 118 # Custom field column
109 119 assert_tag :tag => 'th', :content => 'Database'
110 120 # Custom field row
111 121 assert_tag :tag => 'td', :content => 'MySQL',
112 122 :sibling => { :tag => 'td', :attributes => { :class => 'hours' },
113 123 :child => { :tag => 'span', :attributes => { :class => 'hours hours-int' },
114 124 :content => '1' }}
115 125 # Second custom field column
116 126 assert_tag :tag => 'th', :content => 'Billable'
117 127 end
118 128
119 129 def test_report_one_criteria_no_result
120 130 get :report, :project_id => 1, :columns => 'week', :from => "1998-04-01", :to => "1998-04-30", :criteria => ['project']
121 131 assert_response :success
122 132 assert_template 'report'
123 133 assert_not_nil assigns(:report)
124 134 assert_equal "0.00", "%.2f" % assigns(:report).total_hours
125 135 end
126 136
127 137 def test_report_status_criterion
128 138 get :report, :project_id => 1, :criteria => ['status']
129 139 assert_response :success
130 140 assert_template 'report'
131 141 assert_tag :tag => 'th', :content => 'Status'
132 142 assert_tag :tag => 'td', :content => 'New'
133 143 end
134 144
135 145 def test_report_all_projects_csv_export
136 146 get :report, :columns => 'month', :from => "2007-01-01", :to => "2007-06-30",
137 147 :criteria => ["project", "member", "activity"], :format => "csv"
138 148 assert_response :success
139 149 assert_equal 'text/csv', @response.content_type
140 150 lines = @response.body.chomp.split("\n")
141 151 # Headers
142 152 assert_equal 'Project,Member,Activity,2007-1,2007-2,2007-3,2007-4,2007-5,2007-6,Total',
143 153 lines.first
144 154 # Total row
145 155 assert_equal 'Total,"","","","",154.25,8.65,"","",162.90', lines.last
146 156 end
147 157
148 158 def test_report_csv_export
149 159 get :report, :project_id => 1, :columns => 'month',
150 160 :from => "2007-01-01", :to => "2007-06-30",
151 161 :criteria => ["project", "member", "activity"], :format => "csv"
152 162 assert_response :success
153 163 assert_equal 'text/csv', @response.content_type
154 164 lines = @response.body.chomp.split("\n")
155 165 # Headers
156 166 assert_equal 'Project,Member,Activity,2007-1,2007-2,2007-3,2007-4,2007-5,2007-6,Total',
157 167 lines.first
158 168 # Total row
159 169 assert_equal 'Total,"","","","",154.25,8.65,"","",162.90', lines.last
160 170 end
161 171
162 172 def test_csv_big_5
163 173 Setting.default_language = "zh-TW"
164 174 str_utf8 = "\xe4\xb8\x80\xe6\x9c\x88"
165 175 str_big5 = "\xa4@\xa4\xeb"
166 176 if str_utf8.respond_to?(:force_encoding)
167 177 str_utf8.force_encoding('UTF-8')
168 178 str_big5.force_encoding('Big5')
169 179 end
170 180 user = User.find_by_id(3)
171 181 user.firstname = str_utf8
172 182 user.lastname = "test-lastname"
173 183 assert user.save
174 184 comments = "test_csv_big_5"
175 185 te1 = TimeEntry.create(:spent_on => '2011-11-11',
176 186 :hours => 7.3,
177 187 :project => Project.find(1),
178 188 :user => user,
179 189 :activity => TimeEntryActivity.find_by_name('Design'),
180 190 :comments => comments)
181 191
182 192 te2 = TimeEntry.find_by_comments(comments)
183 193 assert_not_nil te2
184 194 assert_equal 7.3, te2.hours
185 195 assert_equal 3, te2.user_id
186 196
187 197 get :report, :project_id => 1, :columns => 'day',
188 198 :from => "2011-11-11", :to => "2011-11-11",
189 199 :criteria => ["member"], :format => "csv"
190 200 assert_response :success
191 201 assert_equal 'text/csv', @response.content_type
192 202 lines = @response.body.chomp.split("\n")
193 203 # Headers
194 204 s1 = "\xa6\xa8\xad\xfb,2011-11-11,\xc1`\xadp"
195 205 s2 = "\xc1`\xadp"
196 206 if s1.respond_to?(:force_encoding)
197 207 s1.force_encoding('Big5')
198 208 s2.force_encoding('Big5')
199 209 end
200 210 assert_equal s1, lines.first
201 211 # Total row
202 212 assert_equal "#{str_big5} #{user.lastname},7.30,7.30", lines[1]
203 213 assert_equal "#{s2},7.30,7.30", lines[2]
204 214
205 215 str_tw = "Traditional Chinese (\xe7\xb9\x81\xe9\xab\x94\xe4\xb8\xad\xe6\x96\x87)"
206 216 if str_tw.respond_to?(:force_encoding)
207 217 str_tw.force_encoding('UTF-8')
208 218 end
209 219 assert_equal str_tw, l(:general_lang_name)
210 220 assert_equal 'Big5', l(:general_csv_encoding)
211 221 assert_equal ',', l(:general_csv_separator)
212 222 assert_equal '.', l(:general_csv_decimal_separator)
213 223 end
214 224
215 225 def test_csv_cannot_convert_should_be_replaced_big_5
216 226 Setting.default_language = "zh-TW"
217 227 str_utf8 = "\xe4\xbb\xa5\xe5\x86\x85"
218 228 if str_utf8.respond_to?(:force_encoding)
219 229 str_utf8.force_encoding('UTF-8')
220 230 end
221 231 user = User.find_by_id(3)
222 232 user.firstname = str_utf8
223 233 user.lastname = "test-lastname"
224 234 assert user.save
225 235 comments = "test_replaced"
226 236 te1 = TimeEntry.create(:spent_on => '2011-11-11',
227 237 :hours => 7.3,
228 238 :project => Project.find(1),
229 239 :user => user,
230 240 :activity => TimeEntryActivity.find_by_name('Design'),
231 241 :comments => comments)
232 242
233 243 te2 = TimeEntry.find_by_comments(comments)
234 244 assert_not_nil te2
235 245 assert_equal 7.3, te2.hours
236 246 assert_equal 3, te2.user_id
237 247
238 248 get :report, :project_id => 1, :columns => 'day',
239 249 :from => "2011-11-11", :to => "2011-11-11",
240 250 :criteria => ["member"], :format => "csv"
241 251 assert_response :success
242 252 assert_equal 'text/csv', @response.content_type
243 253 lines = @response.body.chomp.split("\n")
244 254 # Headers
245 255 s1 = "\xa6\xa8\xad\xfb,2011-11-11,\xc1`\xadp"
246 256 if s1.respond_to?(:force_encoding)
247 257 s1.force_encoding('Big5')
248 258 end
249 259 assert_equal s1, lines.first
250 260 # Total row
251 261 s2 = ""
252 262 if s2.respond_to?(:force_encoding)
253 263 s2 = "\xa5H?"
254 264 s2.force_encoding('Big5')
255 265 elsif RUBY_PLATFORM == 'java'
256 266 s2 = "??"
257 267 else
258 268 s2 = "\xa5H???"
259 269 end
260 270 assert_equal "#{s2} #{user.lastname},7.30,7.30", lines[1]
261 271 end
262 272
263 273 def test_csv_fr
264 274 with_settings :default_language => "fr" do
265 275 str1 = "test_csv_fr"
266 276 user = User.find_by_id(3)
267 277 te1 = TimeEntry.create(:spent_on => '2011-11-11',
268 278 :hours => 7.3,
269 279 :project => Project.find(1),
270 280 :user => user,
271 281 :activity => TimeEntryActivity.find_by_name('Design'),
272 282 :comments => str1)
273 283
274 284 te2 = TimeEntry.find_by_comments(str1)
275 285 assert_not_nil te2
276 286 assert_equal 7.3, te2.hours
277 287 assert_equal 3, te2.user_id
278 288
279 289 get :report, :project_id => 1, :columns => 'day',
280 290 :from => "2011-11-11", :to => "2011-11-11",
281 291 :criteria => ["member"], :format => "csv"
282 292 assert_response :success
283 293 assert_equal 'text/csv', @response.content_type
284 294 lines = @response.body.chomp.split("\n")
285 295 # Headers
286 296 s1 = "Membre;2011-11-11;Total"
287 297 s2 = "Total"
288 298 if s1.respond_to?(:force_encoding)
289 299 s1.force_encoding('ISO-8859-1')
290 300 s2.force_encoding('ISO-8859-1')
291 301 end
292 302 assert_equal s1, lines.first
293 303 # Total row
294 304 assert_equal "#{user.firstname} #{user.lastname};7,30;7,30", lines[1]
295 305 assert_equal "#{s2};7,30;7,30", lines[2]
296 306
297 307 str_fr = "Fran\xc3\xa7ais"
298 308 if str_fr.respond_to?(:force_encoding)
299 309 str_fr.force_encoding('UTF-8')
300 310 end
301 311 assert_equal str_fr, l(:general_lang_name)
302 312 assert_equal 'ISO-8859-1', l(:general_csv_encoding)
303 313 assert_equal ';', l(:general_csv_separator)
304 314 assert_equal ',', l(:general_csv_decimal_separator)
305 315 end
306 316 end
307 317 end
General Comments 0
You need to be logged in to leave comments. Login now