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