Project

General

Profile

Changelog 5 1 » History » Version 15

Marius BĂLTEANU, 2026-01-06 03:27
Updates for 5.1.1 version.

1 2 Alex Chernyakevich
h1. Changelog 5.1.x
2 1 Go MAEDA
3 15 Marius BĂLTEANU
h2. version:5.1.11 (2026-01-05)
4
5
h3. [Code cleanup/refactoring]
6
7
* Defect #43441: Fix failures in test/system/issues_test.rb
8
* Patch #43638: Update copyright year to 2026
9
10
h3. [Gems support]
11
12
* Defect #43609: Tests fail with minitest 6.0
13
14
h3. [Security]
15
16
* Defect #43451: PostScript disguised as PDF can lead to arbitrary file operations via thumbnail generation
17
* Defect #43634: Authorization bypass in Redmine allows modification of attachment metadata on invisible issues
18
* Defect #43635: Authorization bypass in Redmine allows deletion of attachment on invisible issues external
19
20 14 Marius BĂLTEANU
h2. version:5.1.10 (2025-09-21)
21
22
h3. [Importers]
23
24
* Defect #42957: Incorrect "for" attribute in labels of issue relations import
25
26
h3. [Security]
27
28
* Defect #42998: Username and password stored in login form
29
* Defect #43083: Information disclosure in Two-Factor Authentication
30
* Defect #43161: When copying issues, all existing custom values are set to the new issue without sufficient validation
31
32
h3. [SCM]
33
34
* Defect #43002: RepositoriesSubversionControllerTest fails in 5.1-stable due to missing foo.js in test repository
35
36
h3. [UI]
37
38
* Defect #43175: Fix some issues with missing or misplaced html tags
39
40 13 Marius BĂLTEANU
h2. version:5.1.9 (2025-07-07)
41
42
h3. [Code cleanup/refactoring]
43
44
* Defect #42687: Fix random failures in several system tests with Chrome 133 and later
45
* Patch #42422: Use Capybara's assert_current_path in "log_user" steps to wait for page in ApplicationSystemTestCase
46
* Patch #42600: Suppress "Change your password" popup for stable system tests
47
* Patch #42756: Update tests for rails-dom-testing 2.3.0 whitespace collapsing
48
49
h3. [Database]
50
51
* Defect #42622: Joining both atom_token and api_token on the User model causes an error due to the ambiguous column name "action"
52
53
h3. [Email receiving]
54
55
* Defect #42962: Mail handler fails to create issues from emails over 4MB on Rack >= 3.1.14
56
57
h3. [Gems support]
58
59
* Defect #42606: RuboCop warning about deprecated `EnsureNode#body` with rubocop-ast >= 1.41
60
61
h3. [I18n]
62
63
* Defect #42815: Limit available locales to those defined by Redmine itself no longer works
64
65
h3. [Issues workflow]
66
67
* Defect #42875: "Page not found" error when saving workflows with many statuses on Rack >= 3.1.14
68
69
h3. [No category]
70
71
* Patch #42688: Run system tests on GitHub CI
72
73
h3. [Performance]
74
75
* Defect #42933: Fix N+1 query issue in Wiki history page when loading authors of  Wiki content versions
76
77
h3. [SCM]
78
79
* Defect #42839: Downloading .js files from the repository browser fails with a 422 error due to ActionController::InvalidCrossOriginRequest
80
* Patch #42597: Skip some Mercurial tests when using Mercurial 5.1 or later in Redmine 6.0 or 5.1
81
82
h3. [Security]
83
84
* Patch #42662: Require net-imap gem 0.2.5, 0.3.9, 0.4.20, 0.5.7, or later to address CVE-2025-43857
85
86
h3. [Text formatting]
87
88
* Defect #42648: Wiki/CommonMark: Broken references for multiple footnote usage
89
90
h3. [UI]
91
92
* Defect #42640: Query totals overlaps query buttons when an RTL language is used
93
* Patch #42794: Hide irrelevant information when printing
94
95 12 Marius BĂLTEANU
h2. version:5.1.8 (2025-04-20)
96
97
h3. [Administration]
98
99
* Defect #42584: NoMethodError when creating a user with an invalid email address and domain restrictions are enabled
100
101
h3. [Attachments]
102
103
* Defect #42394: Inconsistent behaviour between attachment download routes with and without filename
104
105
h3. [Code cleanup/refactoring]
106
107
* Patch #42562: Fix random test failure in ProjectAdminQueryTest due to missing language setting
108
* Patch #42572: Fix random test failure in MemberTest#test_update_roles_with_inherited_roles due to non-deterministic ordering
109
110
h3. [Custom fields]
111
112
* Patch #41935: Add "editable" attribute in the custom fields API response
113
114
h3. [Gantt]
115
116
* Defect #42145: MiniMagick (> 5) removed cli_path, result crash when supplied imagemagick_convert_command
117
118
h3. [Issues]
119
120
* Defect #42458: "For all projects" checkbox should be disabled when editing an existing query in which the checkbox is already checked
121
122
h3. [Performance]
123
124
* Defect #40728: Slow loading of global spent time list in MySQL
125
* Feature #42574: Optimize autocomplete issue listing triggered by typing "##" by eager loading trackers
126
127
h3. [Text formatting]
128
129
* Defect #42545: Commit message in issue history might be rendered in incorrect context
130
131
h3. [UI]
132
133
* Defect #41828: In mobile view, delete relation svg icon in 'Related Issues' on an issue page, overflow text
134
* Defect #41947: Collapse arrow shows the wrong direction at /workflows/edit
135
* Patch #42497: Adjust the position of the news comment delete button
136
* Patch #42596: Do not show user icon in add watchers modal when gravatar is disabled
137
138 10 Marius BĂLTEANU
h2. version:5.1.7 (2025-03-10)
139
140
h3. [Code cleanup/refactoring]
141
142
* Defect #42200: InlineAutocompleteSystemTest login test fails randomly
143
* Patch #42244: Fix random failures in IssuesTest#test_bulk_copy due to StaleElementReferenceError
144
145
h3. [Gems support]
146
147
* Defect #42245: 5.1-stable: Redmine fails to start with error: Unknown database adapter `"mysql2"` found in config/database.yml
148
149
h3. [No category]
150
151
* Feature #30069: Use GitHub Actions as a secondary CI solution to run tests through the existing mirroring
152
153
h3. [Security]
154 11 Marius BĂLTEANU
155 10 Marius BĂLTEANU
* Defect #42326: Stored Cross-Site Scripting (XSS) in macros
156
* Defect #42352: ProjectQuery leaks details of private projects
157
* Defect #42194: /my/account does not correctly enforce sudo mode
158
* Patch #42333: Update Nokogiri to 1.18.3
159
160 9 Go MAEDA
h2. version:5.1.6 (2025-01-29)
161
162
h3. [Code cleanup/refactoring]
163
164
* Patch #41961: Use `fixtures :all` to ensure consistent test data and improve test reliability
165
* Patch #42140: Update footer copyright year to 2025
166
167
h3. [Gems support]
168
169
* Defect #42013: Redmine fails to start with error: Unknown database adapter `"mysql2"` found in config/database.yml
170
171
h3. [Issues]
172
173
* Defect #42066: NoMethodError exception occurs in IssuePriority#high and #low when both default and active priorities are absent
174
175
h3. [Permissions and roles]
176
177
* Defect #42106: Member roles are incorrectly added when a user's memberships are updated
178
179
h3. [Rails support]
180
181
* Defect #42113: Redmine 5.x not starting with ActiveSupport Logger error
182
183 8 Marius BĂLTEANU
h2. version:5.1.5 (2024-12-11)
184
185
h3. [Accounts / authentication]
186
187
* Feature #41927: Enable browser autocomplete for 2FA input fields
188
* Feature #41937: Enable browser autocomplete for login input fields
189
190
h3. [Code cleanup/refactoring]
191
192
* Defect #41795: Missing fixture: a test does not pass if the 'issue_categories' fixtures are not already loaded
193
* Patch #41881: Improper deletion of custom fields in IssueNestedSetConcurrencyTest causes test failures of other tests
194
* Patch #41889: Fix random test failures in Redmine::Acts::MentionableTest due to unsorted mentioned_users
195
* Patch #41894: Fix random test failure by ensuring WatchersController#find_objects_from_params returns results in consistent order
196
* Patch #41901: Fix random test failure in DestroyProjectsJobTest due to unsorted @projects
197
* Patch #41902: Fix class name to match file name in keyboard_shortcuts_test.rb
198
* Patch #41931: Fix random failures in IssueRelationTest#test_create_with_initialized_journals due to ambiguous conditions for retrieving the expected detail
199
* Patch #41934: Fix random test failure in ProjectsControllerTest::test_post_copy_should_copy_requested_items due to missing :issue_categories fixture
200
* Patch #41951: Fix random test failure in IssueTest due to unsorted expected_statuses
201
202
h3. [Gems support]
203
204
* Defect #41749: Warning during startup: "Unresolved or ambiguous specs during Gem::Specification.reset"
205
206
h3. [Issues]
207
208
* Defect #40301: Error when create a version with custom field of "File" type from Issue page
209
210
h3. [UI]
211
212
* Defect #41778: Name field in custom query creation/edit form is not marked as required
213
214 7 Marius BĂLTEANU
h2. version:5.1.4 (2024-11-03)
215
216
h3. [Code cleanup/refactoring]
217
218
* Patch #41313: Fix test/unit/issue_test.rb to use correct IANA timezone name "Asia/Hong_Kong" instead of deprecated "Hongkong"
219
220
h3. [Filters]
221
222
* Defect #41079: Incorrect sorting of users grouped by status in issue filters for administrators
223
224
h3. [Gantt]
225
226
* Defect #41263: Gantt progress line misrendering for 0% progress issues/versions with future start dates beyond chart range
227
228
h3. [I18n]
229
230
* Defect #37072: Capitalization issue for object names in I18n keys: button_save_object, button_edit_object, and button_delete_object
231
* Defect #39778: Untranslated string "OK" in the repository browser
232
233
h3. [Importers]
234
235
* Defect #41465: "Import issues" and "Import time entries" pages are visible to users without "Add issues" and "Log spent time" permissions
236
237
h3. [Issues]
238
239
* Defect #8539: Fix NoMethodError in Issue#blocked? due to invalid issue_from_id in Issue#relations_from
240
* Defect #40860: Creating a new issue fails with an internal error if no issue priorities are defined
241
242
h3. [Projects]
243
244
* Defect #41217: Broken project list table when filter scheduled for deletion
245
246
h3. [Ruby support]
247
248
* Patch #41489: Update Rails to 6.1.7.10
249
250
h3. [SCM]
251
252
* Defect #40948: ActiveRecord::ValueTooLong error with git author longer than 255 characters
253
254
h3. [Security]
255
256
* Defect #40946: Watcher list visible with only add watchers permissions
257
258
h3. [Text formatting]
259
260
* Defect #41096: "##" syntax auto complete does not work
261
262
h3. [Time tracking]
263
264
* Defect #40924: Spent Hours ignoring "Time Span Format" Setting on several pages
265
266
h3. [Translations]
267
268
* Patch #40875: Improve Czech translation for "two-factor authentication"
269
* Patch #40950: Improve english translation for invalid watcher notice
270
* Patch #41254: Brazilian Portuguese translation update for 5.1-stable
271
* Patch #41420: Italian translation update for 5.1-stable
272
273
h3. [UI]
274
275
* Patch #41624: CSS-fix to prevent 'blinking' tooltips
276
277
h3. [Wiki]
278
279
* Defect #40655: Revisions count is wrong on the wiki content page
280
* Defect #40716: "Edit this section" on Wiki pages misinterprets issue links with double hash (##nnn) as ATX headings
281
282 6 Go MAEDA
h2. version:5.1.3 (2024-06-12)
283
284
h3. [Code cleanup/refactoring]
285
286
* Defect #40389: Missing fixture: add :groups_users fixture to Redmine::ApiTest::UsersTest
287
288
h3. [Gems support]
289
290
* Defect #40603: Mocha 2.2.0 causes test failure: "unexpected invocation"
291
* Patch #40802: Support builder 3.3.0
292
293
h3. [Issues]
294
295
* Defect #40410: Watcher groups on new issue form get dereferenced on validation error
296
* Defect #40412: Issue list filter "Watched by: me" only shows issues watched via group for projects with the view_issue_watchers permission
297
* Feature #40556: Focus on the textarea after clicking the Edit Journal button
298
299
h3. [Issues workflow]
300
301
* Patch #40693: Ignore status in roleld_up_status if workflow only defines identity transition
302
303
h3. [Performance]
304
305
* Defect #40610: Slow display of projects list when including project description column
306
307
h3. [Rails support]
308
309
* Patch #40818: Update Rails to 6.1.7.8
310
311
h3. [Translations]
312
313
* Patch #40682: Czech translation update for 5.1-stable
314
315 4 Marius BĂLTEANU
h2. version:5.1.2 (2024-03-04)
316
317
h3. [Activity view]
318
319
* Defect #39995: Project Activities and Roadmap views disclose presence of private sub projects
320
321
h3. [Administration]
322
323
* Defect #40166: Internationalize "Check all / Uncheck all" tooltip in project list for admins
324
325
h3. [Code cleanup/refactoring]
326
327
* Defect #39864: Backport fix of random failing integration test for plugin routes
328
* Defect #40239: Add missing fixtures in Redmine::ApiTest::IssuesTest
329
* Patch #39894: Explicitly render a 404 on non-JS requests to watchers#new
330
* Patch #39999: Explicitly render a 404 on non-JS requests to messages#quote
331
* Patch #40043: Remove year ranges from all copyright headers
332
333
h3. [Database]
334
335 5 Marius BĂLTEANU
* Patch #39865: Extend mysql8? test helper to handle complex version strings
336 4 Marius BĂLTEANU
337
h3. [Filters]
338
339
* Defect #39991: Fix "any" operator for text filters to exclude empty text values
340
341
h3. [Issues]
342
343
* Defect #39932: Incorrect position of "Edited" mark in issue notes with h4 headings
344
345
h3. [Plugin API]
346
347
* Defect #39862: Attachments functionality for (custom) plugins broken since fix for CVE-2022-44030
348
* Feature #39948: Add Redmine::Plugin proxy method for Redmine::Acts::Attachable::ObjectTypeConstraint.register_object_type
349
350
h3. [REST API]
351
352
* Defect #40099: User api filtering by status=* broke on upgrade from 5.0 to 5.1
353
354
h3. [Rails support]
355
356
* Patch #40319: Update Rails to 6.1.7.7
357
358
h3. [SEO]
359
360
* Defect #40208: An ActionController::RespondToMismatchError occurred in welcome#robots
361
362
h3. [Security]
363
364
* Defect #39875: Mitigate CVE-2023-23913 (rails-ujs)
365
366
h3. [Text formatting]
367
368
* Defect #39755: CommonMark Markdown help page does not reflect user's language setting
369
* Defect #40193: Performance issue with email address auto-linking in the default ("none") formatter
370
* Feature #39884: Allow multiple footnotes per single word
371
372
h3. [Translations]
373
374
* Defect #39801: Fix typo in Russian translation of text_status_no_workflow
375
* Patch #39751: Additional translation for Tamil language
376
* Patch #39781: Persian translation update for 5.1-stable
377
* Patch #39782: Russian translation update for 5.1-stable
378
* Patch #40240: Catalan translation update for 5.1-stable
379
380
h3. [UI]
381
382
* Defect #39780: User select element on activity sidebar views cutoff when displaying long user names
383
* Defect #39802: Fix click event handling in mobile view after closing flyout menu
384
* Defect #40237: Error in autocomplete (`ActionController::BadRequest (Invalid query parameters: invalid %-encoding (%)`)
385
386 3 Marius BĂLTEANU
h2. version:5.1.1 (2023-11-27)
387
388
h3. [Database]
389
390
* Defect #39437: MySQL / MariaDB issue nested set deadlocks and consistency
391
* Defect #39443: Invalid statement query error on MSSQL when role filter is used in issues query
392
* Patch #39737: Support MySQL 8
393
394
h3. [Email notifications]
395
396
* Defect #39553: Mention notification is not sent (MENTION_PATTERN / LINKS_RE inconsistency)
397
398
h3. [Filters]
399
400
* Defect #39714: Query grouping filter not working for custom field relations
401
402
h3. [Gems support]
403
404
* Defect #39576: `rake yard` does not work with Ruby >= 3.2
405
406
h3. [Issues]
407
408
* Defect #39521: Mention autocomplete not displaying for users without "Edit issues" permission
409
410
h3. [PDF export]
411
412
* Defect #39534: Error (undefined method) in issue list PDF export
413
414
h3. [Text formatting]
415
416
* Defect #38852: ## issue syntax is not kept when selecting an issue from the inline autocomplete
417
418
h3. [Translations]
419
420
* Patch #39513: Bulgarian translation update for 5.1-stable
421
* Patch #39551: Simplified Chinese translation update for 5.1-stable
422
423 1 Go MAEDA
h2. version:5.1.0 (2023-10-31)
424
425
h3. [Accounts / authentication]
426
427
* Defect #6254: Remove "Unknown user" notification on password request with non-existent email address
428
* Defect #36969: EmailAddress regex matches invalid email addresses
429
* Feature #33660: Information text on sudo password entry
430
* Feature #35450: Better validation error message when the domain of email is not allowed
431
* Feature #37679: Raise the maximum length of the last name to 255 characters
432
433
h3. [Administration]
434
435
* Defect #37692: Plugins page does not have a table header
436
* Feature #33422: Re-implement admin project list using ProjectQuery system
437
* Feature #36691: Background job and dedicated status for project deletion
438
* Feature #36695: Add check in Redmine information page if default queue adapter is used in production
439
* Feature #36891: Ask more specific confirmation questions when closing/reopening/archiving projects
440
* Feature #37674: Upgrade Admin/Users list to use the query system
441
442
h3. [Attachments]
443
444
* Feature #38168: WebP images support
445
* Patch #37597: Don't create two thumbnails of different resolutions for a single image
446
447
h3. [Calendar]
448
449
* Feature #27346: Use the new pagination style for the calendars view
450
* Feature #33682: Display calendar in vertical list layout on mobile screens
451
452
h3. [Code cleanup/refactoring]
453
454
* Defect #15667: Fix shadowing variable in ApplicationHelper#textilizable
455
* Defect #20042: A test fail when running it with PostgreSQL
456
* Defect #37389: Add missing fixture to JournalObserverTest
457
* Defect #37586: Typo in method names
458
* Defect #37587: Unnecessary requirement in /lib/redmine/scm/adapters/filesystem_adapter.rb
459
* Defect #38145: Unreachable branch in ApplicationHelper#format_object due to the use of the deprecated Fixnum class
460
* Defect #38250: config/settings.yml not closed in Setting.load_available_settings
461
* Defect #39180: Fix an intermittent test failure in JournalTest
462
* Feature #37119: Drop redcarpet dependency for common_mark formatter
463
* Patch #36844: Cleanup orphaned query and role ids from habtm join table queries_roles
464
* Patch #37448: Add missing fixture users to RoleTest
465
* Patch #37451: Add missing fixture versions to IssuesPdfHelperTest
466
* Patch #37466: Add missing fixture issue_categories to VersionTest
467
* Patch #37469: Add missing fixture versions to RepositoryTest
468
* Patch #37470: Add missing fixture versions to MailHandlerControllerTest
469
* Patch #37477: Add missing fixture issue_categories to MyControllerTest
470
* Patch #37482: Replace JQuery `.focus()` method with HTML `autofocus` attribute
471
* Patch #37507: Normalize HTML in app/views/settings/_users.html.erb
472
* Patch #37591: Use start_with? or end_with? to check the first or last character of a string
473
* Patch #37599: Remove extra call of Attachment#thumbnailable? in AttachmentsController#thumbnail
474
* Patch #37614: Cleanup app/models/repository/git.rb
475
* Patch #37657: Rename Repository#supports_all_revisions? to Repository#supports_history?
476
* Patch #37668: Fix bad I18n `t` call in macro error handler
477
* Patch #37682: Add the `# frozen_string_literal: true` magic comment to config/initializers/secret_token.rb
478
* Patch #37851: Add missing fixture to test/integration/issue_test.rb
479
* Patch #37974: Database migration to remove unused "mention_users" permission
480
* Patch #38054: Remove unused i18n keys label_sort_highest, label_sort_higher, label_sort_lower, and label_sort_lowest
481
* Patch #38091: Fix redundant 'private' modifier in repositories_git_controller_test.rb
482
* Patch #38093: Use require_relative instead of generating the full path for a file
483
* Patch #38139: Add guard clause to time_tag method to handle nil time
484
* Patch #38228: Remove X-UA-Compatible meta tag for Internet Explorer
485
* Patch #38478: Remove unused i18n key label_last_login
486
* Patch #38496: Add missing fixtures to SearchControllerTest
487
* Patch #38646: Remove unused locale entry: label_optgroup_others
488
* Patch #38772: <=> should return nil when invoked with an incomparable object
489
* Patch #39021: Add ".byebug_history" to svn:ignore, .gitignore, and .hgignore
490
* Patch #39066: Remove set_language_if_valid from MyController
491
* Patch #39109: Improving Test Reliability with Capybara Assertions
492
* Patch #39184: Cleanup debug code in app/models/mail_handler.rb
493
* Patch #39207: Replace `YAML.load` with `YAML.load_file` in locales.rake and improve error reporting for invalid YAML files
494
495
h3. [Custom fields]
496
497
* Patch #37750: Use existing html pipeline based sanitization for links in custom fields
498
499
h3. [Email notifications]
500
501
* Feature #2746: Send out issue priority in the email notification header
502
* Feature #34302: Show parent issues in notification email
503
* Feature #38238: Auto watch issues on issue creation
504
505
h3. [Email receiving]
506
507
* Feature #38263: Try importing journal replies as issue reply where applicable
508
* Feature #38273: Improve errors in MailHandler: add MissingContainer and LockedTopic exception
509
* Feature #38274: Receive e-mail replies to news and news comments
510
* Patch #38408: Remove experimental flag from "Preferred part of multipart (HTML) emails" setting
511
512
h3. [Filters]
513
514
* Feature #38435: "contains any of" operator for text filters to perform OR search of multiple terms
515
* Feature #38456: OR search with multiple terms for "starts with" and "ends with" filter operators
516
517
h3. [Gems support]
518
519
* Patch #36919: Update RuboCop to 1.57
520
* Patch #37236: Update Rouge to 4.2
521
* Patch #37247: Update RuboCop Performance to 1.19
522
* Patch #37248: Update RuboCop Rails to 2.22
523
* Patch #37401: Update I18n to 1.14
524
* Patch #37525: Update Pg to 1.5
525
* Patch #37558: Update webdrivers to 5.0
526
* Patch #37656: Update sqlite3 gem to 1.5
527
* Patch #37993: Update Mail gem to 2.8
528
* Patch #38121: Update MiniMagick to 4.12
529
* Patch #38122: Remove Bundler from requirements
530
* Patch #38124: Update csv, net-imap, net-pop, and net-smtp gems to the same versions shipped with Ruby 3.2.0
531
* Patch #38137: Update SimpleCov to 0.22
532
* Patch #38181: Update Nokogiri to 1.15.2
533
* Patch #38187: Update SQLite3 gem to 1.6
534
* Patch #38220: Update Redcarpet to 3.6
535
* Patch #39211: Update roadie-rails to 3.1
536
537
h3. [I18n]
538
539
* Defect #38509: Untranslated string "OK" in the repository browser
540
* Feature #37878: Allow using ideographic space (U+3000) as a separator for search terms
541
* Patch #38529: Limit available locales to those defined by Redmine itself
542
543
h3. [Importers]
544
545
* Feature #36823: Allow to import time entries for issues in different projects
546
547
h3. [Issues]
548
549
* Defect #38458: Display order of watchers in the sidebar is indeterminate
550
* Defect #38493: The related issues count on the issue view is not updated after deleting one of the related issues
551
* Defect #39186: Missing synchronization between watchers and watcher_users for unsaved objects
552
* Feature #2568: Description for issue statuses
553
* Feature #16207: Use query name as the file name when exporting queries
554
* Feature #31505: Mark edited journal notes as "Edited"
555
* Feature #37362: CSV export of issues report
556
* Feature #37532: Add CSS class for relation type to related issues list
557
* Feature #37621: Add field separator option to CSV export dialog
558
* Feature #38416: Ability to disable the priority field
559
* Patch #38820: Retry in case of stale issue during Issue.update_versions
560
561
h3. [Issues filter]
562
563
* Feature #38301: Multiple issue ids in "Related to" filter
564
* Feature #38402: "Any searchable text" filter for issues
565
* Feature #38527: New issues filter operators "has been", "has never been", and "changed from"
566
567
h3. [Issues workflow]
568
569
* Defect #37635: Respect Role#consider_workflow? when checking for allowed status transitions
570
* Patch #37636: Ignore statuses if workflow only defines identity transition
571
572
h3. [News]
573
574
* Feature #2631: Add breadcrumbs to news pages
575
576
h3. [PDF export]
577
578
* Feature #38368: WebP images support in PDF output
579
580
h3. [Performance]
581
582
* Patch #29171: Add an index to improve the performance of issue queries involving custom fields
583
* Patch #37057: Query optimization for attachments activity
584
* Patch #37528: Don't load changesets when IssuesController#show processes API requests without "include=changesets"
585
* Patch #37687: Retrieve attachments with a single query when rendering a journal
586
* Patch #38146: Fix all performance-related RuboCop offenses
587
* Patch #38198: Improve MySQL query plan for Project#project_condition
588
* Patch #38319: Optimize IssueQuery#sql_for_assigned_to_role_field for PostgreSQL performance
589
* Patch #38474: Preload default_status when listing trackers
590
591
h3. [Permissions and roles]
592
593
* Feature #37807: Allow access to /robots.txt even if logins are required
594
* Feature #38048: Introduce permission to set a project public
595
596
h3. [Plugin API]
597
598
* Defect #31116: Database migrations don't run correctly for plugins when specifying the `VERSION` env variable
599
* Defect #38707: Fix order of loading plugins' config/routes.rb
600
* Feature #38730: Generate snake-case file name by redmine_plugin_migration
601
602
h3. [REST API]
603
604
* Defect #38668: Unable to retrieve custom fields set as "For all projects" via Projects API
605
* Feature #37617: Add description field to custom fields API
606
* Feature #39113: Add missing Homepage attribute in Projects API response
607
608
h3. [Rails support]
609
610
* Feature #38216: Add template filenames as comments to HTML output in development mode
611
612
h3. [Roadmap]
613
614
* Feature #36679: Export a version as changelog text
615
616
h3. [Ruby support]
617
618
* Feature #37159: Drop Ruby 2.5 support
619
* Feature #38099: Add Ruby 3.2 support
620
* Feature #38134: Drop Ruby 2.6 support
621
622
h3. [SCM]
623
624
* Feature #35432: Git: View annotation prior to the change
625
626
h3. [Search engine]
627
628
* Feature #38459: Support "My bookmarks" in the search
629
* Feature #38481: Further narrow search results with issues filter
630
631
h3. [Text formatting]
632
633
* Feature #34863: Change default text formatter for new installations from textile to common_mark
634
* Patch #36807: Remove CommonMark experimental flag and mark as deprecated the RedCarpet Markdown
635
636
h3. [Third-party libraries]
637
638
* Feature #39400: Migrate Stylelint to 15.11.0
639
* Patch #37538: Update Chart.js to 3.9.1
640
* Patch #38162: Update jQuery UI Datepicker i18n files to 1.13.2
641
642
h3. [Time tracking]
643
644
* Feature #10314: Make the only enabled activity in a project the default one for time entry
645
* Feature #27821: "Issue's subject" filter for spent time
646
* Feature #29286: Add default spent time activity per role
647
* Feature #37623: Add Parent task filter and column to Spent time
648
649
h3. [Translations]
650
651
* Defect #38477: Fix the English and Japanese translations of field_last_login_on
652
* Defect #38871: Fix mistranslation of label_board_sticky in Spanish translation
653
* Feature #34924: Add Tamil language support
654
* Feature #36938: Update translations of field_principal to User or Group
655
* Patch #32435: Change Russian translation for "Submit"
656
657
h3. [UI]
658
659
* Feature #1069: Open Help in a separate tab
660
* Feature #36908: Improve wording on password change form
661
* Feature #38231: Limit the year to 4 digits in date input
662
* Patch #38449: Align buttons in modal dialogs to the left instead of right
663
664
h3. [UI - Responsive]
665
666
* Patch #38360: Do not apply table-layout:fixed in potentially wide tables of detailed issue reports
667
668
h3. [Wiki]
669
670
* Defect #34634: Deletion of project wiki leaves the project wiki inaccessible (404) until module reactivation