{"issues": [{"id": 35721, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 123153, "name": "Pavel Rosick\u00fd"}, "category": {"id": 19, "name": "Attachments"}, "subject": "Unlink files after they're closed", "description": "Tests are trying to unlink the file inside the block while the file descriptor is still active.\r\n\r\nthey were introduced by https://redmine.org/issues/35539\r\n\r\nfixes _Errno::EACCES: Permission denied_\r\n\r\n
\r\n\r\ndiff --git a/test/unit/attachment_test.rb b/test/unit/attachment_test.rb\r\nindex 2aee87964..a870e3697 100644\r\n--- a/test/unit/attachment_test.rb\r\n+++ b/test/unit/attachment_test.rb\r\n@@ -276,27 +276,31 @@ class AttachmentTest < ActiveSupport::TestCase\r\n   end\r\n \r\n   def test_create_diskfile\r\n+    path = nil\r\n     Attachment.create_diskfile(\"test_file.txt\") do |f|\r\n       path = f.path\r\n       assert_match(/^\\d{12}_test_file.txt$/, File.basename(path))\r\n       assert_equal 'test_file.txt', File.basename(path)[13..-1]\r\n-      File.unlink f.path\r\n     end\r\n+    File.unlink path\r\n \r\n     Attachment.create_diskfile(\"test_accentu\u00e9.txt\") do |f|\r\n+      path = f.path\r\n       assert_equal '770c509475505f37c2b8fb6030434d6b.txt', File.basename(f.path)[13..-1]\r\n-      File.unlink f.path\r\n     end\r\n+    File.unlink path\r\n \r\n     Attachment.create_diskfile(\"test_accentu\u00e9\") do |f|\r\n+      path = f.path\r\n       assert_equal 'f8139524ebb8f32e51976982cd20a85d', File.basename(f.path)[13..-1]\r\n-      File.unlink f.path\r\n     end\r\n+    File.unlink path\r\n \r\n     Attachment.create_diskfile(\"test_accentu\u00e9.\u00e7a\") do |f|\r\n+      path = f.path\r\n       assert_equal 'cbb5b0f30978ba03731d61f9f6d10011', File.basename(f.path)[13..-1]\r\n-      File.unlink f.path\r\n     end\r\n+    File.unlink path\r\n   end\r\n \r\n   def test_title\r\n\r\n
", "done_ratio": 0, "created_on": "2021-08-06T15:33:29Z", "updated_on": "2021-08-06T15:33:29Z"}, {"id": 35720, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 123153, "name": "Pavel Rosick\u00fd"}, "category": {"id": 19, "name": "Attachments"}, "subject": "Defect: Binmode specified twice", "description": "after https://redmine.org/issues/35539 I'm getting failures\r\n\r\n
\r\nArgumentError: binmode specified twice\r\n    app/models/attachment.rb:572:in `initialize'\r\n    app/models/attachment.rb:572:in `open'\r\n    app/models/attachment.rb:572:in `create_diskfile'\r\n    app/models/attachment.rb:142:in `files_to_final_location'\r\n
\r\n\r\n_File::BINARY_ flag should be enough to setup a binary mode\r\n\r\n
\r\ndiff --git a/app/models/attachment.rb b/app/models/attachment.rb\r\nindex c65c56722..b0b0a02ba 100644\r\n--- a/app/models/attachment.rb\r\n+++ b/app/models/attachment.rb\r\n@@ -572,7 +572,6 @@ class Attachment < ActiveRecord::Base\r\n         File.open(\r\n           File.join(path, name),\r\n           flags: File::CREAT | File::EXCL | File::BINARY | File::WRONLY,\r\n-          binmode: true,\r\n           &block\r\n         )\r\n       rescue Errno::EEXIST\r\n
", "done_ratio": 0, "created_on": "2021-08-06T14:43:42Z", "updated_on": "2021-08-07T09:56:27Z"}, {"id": 35715, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 532347, "name": "Cyprien D"}, "category": {"id": 19, "name": "Attachments"}, "subject": "Attachments fails - 500 Internal Server Error on uploads.js POST", "description": "Hello,\r\n\r\nAttachments are broken since I have upgrade my Redmine from 4.2.1 to 4.2.2.\r\nPOST fail with a 500 error and this error is logged:\r\n
\r\nStarted POST \"/uploads.js?attachment_id=2&filename=placeholder.jpeg&content_type=image%2Fjpeg\" for X.X.X.X at 2021-08-05 17:48:28 +0200\r\nProcessing by AttachmentsController#upload as JS\r\n  Parameters: {\"attachment_id\"=>\"2\", \"filename\"=>\"placeholder.jpeg\", \"content_type\"=>\"image/jpeg\"}\r\n  Current user: cyprien (id=121)\r\nCompleted 500 Internal Server Error in 5ms (ActiveRecord: 0.9ms)\r\n  \r\nNoMethodError (undefined method `size' for #):\r\n  \r\napp/models/attachment.rb:123:in `file='\r\napp/controllers/attachments_controller.rb:108:in `upload'\r\nlib/redmine/sudo_mode.rb:61:in `sudo_mode'\r\n
\r\n\r\nIt seems to come from this change introduced to 4.2.2\r\n
\r\ndiff redmine-4.2.1/app/controllers/attachments_controller.rb redmine-4.2.2/app/controllers/attachments_controller.rb\r\n108c108\r\n<     @attachment = Attachment.new(:file => request.raw_post)\r\n---\r\n>     @attachment = Attachment.new(:file => request.body)\r\n
\r\nIf I switch back from request.body to request.raw_post the error is fixed", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "168"}], "created_on": "2021-08-06T08:50:30Z", "updated_on": "2021-08-06T15:05:06Z"}, {"id": 35688, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 49905, "name": "Brice Beaumesnil"}, "category": {"id": 44, "name": "Rails support"}, "subject": "OpenIdAuthentication alias_method_chain", "description": "Hello,\r\n\r\nIn redmine\\lib\\plugins\\open_id_authentication\\lib\\open_id_authentication\\request.rb\r\n\r\nA alias_method_chain already exist.\r\n\r\nIt could be change change to :\r\n\r\n
\r\n        alias_method :request_method_without_openid, :request_method\r\n        alias_method :request_method, :request_method_with_openid\r\n
\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "168"}], "created_on": "2021-08-05T09:32:01Z", "updated_on": "2021-08-05T09:32:01Z"}, {"id": 35687, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 188597, "name": "Guillermo ML"}, "category": {"id": 12, "name": "Translations"}, "subject": " Galician translation update", "description": "Added translations for missing strings against current trunk.\r\n* gl.yml\r\n* jstoolbar-gl.js", "done_ratio": 0, "created_on": "2021-08-05T07:57:47Z", "updated_on": "2021-08-05T07:57:47Z"}, {"id": 35685, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 97902, "name": "Martin Jungowski"}, "category": {"id": 21, "name": "Database"}, "subject": "Support for MySQL > 5.7 or MariaDB", "description": "Given that I cannot see anything on the roadmap I'd like to ask what the state of MySQL support is. As stated on the Install page the latest officially supported release is MySQL 5.6, which has been EOL since February of 2021. MySQL 5.7 seems to work just fine but is not yet officially supported (it's on the roadmap for the next major release after 5.0!) and has an EOL date of October 2023 (aka slightly over 2 years from today). At the current speed of development I fear that MySQL will be EOL long before it is officially supported by Redmine. MariaDB is not supported at all.\r\n\r\nAny insight?", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-04T20:23:06Z", "updated_on": "2021-08-04T20:23:06Z"}, {"id": 35683, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 40856, "name": "Jens Kr\u00e4mer"}, "category": {"id": 39, "name": "PDF export"}, "fixed_version": {"id": 33, "name": "Candidate for next minor release"}, "subject": "PDF rendering improvements", "description": "Two PDF generation improvements:\r\n\r\n1. Currently, when rendering an issue PDF, macros are only expanded in the description, but not when rendering custom fields with fulltext formatting enabled. The patch changes the behaviour so that formatted full-width custom fields are rendered in the same way the description is rendered, fully interpreting macros. The behaviour for rendering normal-width custom fields is unchanged, probably it is better to leave it as is due to space constraints.\r\n2. Thumbnail macro output was not rendered properly (in the issue description and elsewhere) because the thumbnail image file could not be retrieved - the second patch extends @get_image_filename@ to check for thumbnail URLs and retrieve the proper file path in that case.\r\n\r\nBoth patches were initially developed for \"Planio\":https://plan.io/redmine-hosting .", "done_ratio": 0, "created_on": "2021-08-04T11:01:57Z", "updated_on": "2021-08-06T21:30:36Z"}, {"id": 35680, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 365663, "name": "Markus Boremski"}, "category": {"id": 3, "name": "SCM"}, "subject": "Error while using local hashes gitlab-repository", "description": "In our company we have many small projects with files in a git-repo.\r\n\r\nWe wanted to get rid of this crontab-solution: \"HowTo: Easily integrate a (SSH secured) GIT repository into redmine\":https://www.redmine.org/projects/redmine/wiki/HowTo_Easily_integrate_a_(SSH_secured)_GIT_repository_into_redmine\r\nAlso we never even tried the plugin \"redmine_git_remote\":https://www.redmine.org/plugins/redmine_git_remote because it doessnt seems to be maintained anymore.\r\n\r\nSo we set up a single VM running gitlab and redmine side by side.\r\nThis setup was choosen to keep usage of git repositories in redmine easy.\r\nWe planned to use the local repo-storage of gitlab directly in redmine.\r\n\r\nNow, everything is set up, we see the following issue:\r\n* Set up a repository in redmine and use the local path of the gitlab-repo:\r\ne.g.: @/var/opt/gitlab/git-data/repositories/@hashed/7a/df/3ada92f28b4ceda38562ebf047c6ff0xxxxxxxxxxxxxxxxxxxxxxxx.git@\r\n* calling the repo leads to a @404-error@\r\n* production.log says:\r\n
\r\nStarted GET \"/projects/our_project_id/repository/test_local\" for xx.xx.xx.xx at 2021-08-04 09:30:19 +0200\r\nProcessing by RepositoriesController#show as HTML\r\n  Parameters: {\"id\"=>\"our_project_id\", \"repository_id\"=>\"test_local\"}\r\n  Current user: boremski (id=xx)\r\n  Rendering common/error.html.erb within layouts/base\r\n  Rendered common/error.html.erb within layouts/base (1.0ms)\r\n  Rendering inline template\r\n  Rendered inline template (0.8ms)\r\n  Rendered plugins/redmine_tags/app/views/tags/_header_assets.html.erb (0.4ms)\r\n  Rendered plugins/additionals/app/views/additionals/_html_head.html.slim (0.6ms)\r\n  Rendered plugins/additionals/app/views/additionals/_body_top.slim (0.2ms)\r\n  Rendered plugins/redmine_local_avatars/app/views/hooks/redmine_local_avatars/_base_body_bottom.erb (0.3ms)\r\n  Rendered plugins/time_logger/app/views/time_loggers/_embed_menu.html.erb (18.9ms)\r\n  Rendered plugins/time_logger/app/views/time_loggers/_update_menu.html.erb (20.0ms) [cache hit]\r\n  Rendered plugins/additionals/app/views/additionals/_body_bottom.html.slim (0.3ms)\r\nCompleted 404 Not Found in 156ms (Views: 134.0ms | ActiveRecord: 10.3ms)\r\n
\r\n\r\nFurther information:\r\n* redmine runs as root on our system\r\nSo I dont think this might eb an issue with access-rights.\r\nTo verify I changed the ownder of the repo-folder recursively.\r\nNo change.\r\n* I also tried to use a soft-link to this folder.\r\nalso no change.\r\n\r\nMaybe there is an issue with the @ in the path?\r\n\r\nSystem-Informations:\r\n
\r\nEnvironment:\r\n  Redmine version                4.1.2.stable.20855\r\n  Ruby version                   2.5.5-p157 (2019-03-15) [x86_64-linux-gnu]\r\n  Rails version                  5.2.4.5\r\n  Environment                    production\r\n  Database adapter               Mysql2\r\n  Mailer queue                   ActiveJob::QueueAdapters::AsyncAdapter\r\n  Mailer delivery                smtp\r\nSCM:\r\n  Subversion                     1.10.4\r\n  Git                            2.20.1\r\n  Filesystem                     \r\nRedmine plugins:\r\n  additionals                    3.0.2-master\r\n  msproject_import               0.6\r\n  redmine_issue_evm              5.5.1\r\n  redmine_local_avatars          1.0.5.2.0\r\n  redmine_mail_from              2.0.0\r\n  redmine_subtask_list_accordion 2.2.0\r\n  redmine_tags                   4.0.0\r\n  redmine_workload               1.1.0\r\n  time_logger                    0.5.4\r\n
", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-08-04T07:40:25Z", "updated_on": "2021-08-04T07:40:25Z"}, {"id": 35679, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 3866, "name": "Felix Sch\u00e4fer"}, "category": {"id": 29, "name": "Email receiving"}, "subject": "Ignore text email parts only stating that the email should be viewed as HTML", "description": "As already discussed in #30838 some emails now contain \"Your email client does not support HTML messages.\" in the text part and the interesting bits in the HTML part. This can be solved with the \"prefer HTML\" setting introduced in #30838.\r\n\r\nWe would like to propose a patch to still ignore email text parts stating \"Your email client does not support HTML messages.\" or similar with a blacklist. This way users preferring text parts and/or not aware of the new option do not need to see those parts in Redmine.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-03T20:06:47Z", "updated_on": "2021-08-03T20:14:12Z"}, {"id": 35677, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 40856, "name": "Jens Kr\u00e4mer"}, "category": {"id": 26, "name": "Text formatting"}, "fixed_version": {"id": 155, "name": "5.0.0"}, "subject": "Preserve leading white space when quoting using the JS toolbar", "description": "the attached patch changes the quote/unquote toolbar.js regular expressions so they preserve leading spaces. This is helpful i.e. when quoting blocks of code.", "done_ratio": 0, "created_on": "2021-08-03T10:54:01Z", "updated_on": "2021-08-04T08:07:19Z"}, {"id": 35676, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 53, "name": "Performance"}, "subject": "Optimize performance of syntax highlighting implementation", "description": "* re-implement performance optimizations of #26055\r\n* don't send input through syntax highlighting if it:\r\n** does not need to be highlighted, or\r\n** can not be highlighted\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-03T10:11:22Z", "updated_on": "2021-08-03T10:11:22Z"}, {"id": 35674, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 10, "name": "UI"}, "subject": "Several improvements (with fixes of inconsistencies) for the issues show view", "description": "I'll leave an untested WIP-patch against current trunk.\r\n\r\nChange descriptions by file:\r\n\r\n* +_app/views/issues/show.html.erb_+\r\n** blank (unset) value rendering of issue core attributes (currently a dash [@-@] is rendered for several attributes, while nothing is rendered for other attributes):\r\n*** consistently render a dash for issue core attributes with a blank (unset) value\r\n** spent time rendering (currently the field is not rendered when there's no spent time on the issue):\r\n*** consistently show the field and render a dash when there's no spent time on the issue (if spent time module is disabled the field and dash won't be rendered)\r\n** blank description rendering (currently the field is not rendered when it has a blank [unset] value):\r\n*** consistently show the field and render a dash for blank description attribute (partly the same as #24015)\r\n** full-width custom field rendering (the field is rendered below the attachments section):\r\n*** render the field above the attachments section (and below the description core attribute)\r\n\r\n* +_app/helpers/issues_helper.rb_+\r\n** blank (unset) value rendering of issue core attributes for related issues and subtasks sections (currently nothing is rendered):\r\n*** consistently render a dash for issue core attributes with a blank (unset) value for related issues and subtasks sections\r\n** estimated time rendering (currently the field value always shows the 'Total:' label):\r\n*** consistently show the field and render a dash when there's no estimated time on the issue, and only show the 'Total:' label with value when it is appropriate\r\n** blank (unset) value rendering of half-width issue custom field attributes (currently nothing is rendered for custom field attributes):\r\n*** consistently render a dash for half-width issue custom field attributes with a blank (unset) value\r\n** full-width custom field rendering (currently the field is not rendered when it has a blank [unset] value):\r\n*** consistently render a dash for full-width issue custom field attributes with a blank (unset) value\r\n\r\nSome notes and warnings on the patch:\r\n* contains no tests, doesn't modify existing tests and might break existing tests\r\n* doesn't modify email templates and/or API views\r\n\r\nI'd like to get some feedback on the mentioned changes before I spend more time on this patch.", "done_ratio": 0, "created_on": "2021-08-03T02:33:54Z", "updated_on": "2021-08-03T02:33:54Z"}, {"id": 35671, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 30, "name": "Code cleanup/refactoring"}, "fixed_version": {"id": 155, "name": "5.0.0"}, "subject": "Move subtasks section on issues show view into a separate partial", "description": "Subject says it all.\r\n\r\nI'll attach a patch that does this.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-02T23:30:35Z", "updated_on": "2021-08-02T23:38:40Z"}, {"id": 35670, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 40, "name": "Issues planning"}, "subject": "Graphs in the Issues Report details are too large.", "description": "I think the subject says it all. They should be resized to a more subtle size.\r\n\r\nAdditionally, they should be made printable too as they currently don't size well when they are printed (they are cut-of when they exceed page sizes).", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "127"}], "created_on": "2021-08-02T23:04:52Z", "updated_on": "2021-08-02T23:04:52Z"}, {"id": 35669, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 40, "name": "Issues planning"}, "subject": "Prints of Issues Report details are messed-up due to the size of the graphs", "description": "When printing the Issues Report details I get lots of unwanted pages due to the large graphs (graph sizes should additionally be decreased independent of this issue, though [see #35670]) that are beneath the table. And the graphs that are actually printed are messed-up due to their size too.\r\n\r\nI think the best solution currently is to hide the charts when printing, like so:\r\n\r\n
\r\ndiff --git a/app/views/reports/_details.html.erb b/app/views/reports/_details.html.erb\r\nindex 9b8f3b5e5..701591c74 100644\r\n--- a/app/views/reports/_details.html.erb\r\n+++ b/app/views/reports/_details.html.erb\r\n@@ -25,10 +25,10 @@\r\n <% end %>\r\n \r\n \r\n-
\r\n+
\r\n \">\r\n
\r\n-
\r\n+
\r\n \r\n
\r\n <%= javascript_tag do %>\r\n
", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "127"}], "created_on": "2021-08-02T22:56:15Z", "updated_on": "2021-08-02T23:06:13Z"}, {"id": 35667, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 40, "name": "Issues planning"}, "subject": "Consider generalization of My page block mechanism for use on the Issues Reports view", "description": "Given the current implementation of the Issues Reports view it might be sensible to generalize the My page block mechanism and re-implement the Issues Reports view to use that generalization. This would provide:\r\n* addition of user personalization of the Issues Reports view\r\n* addition of plugin extensibility of the Issues Reports view", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-02T16:08:05Z", "updated_on": "2021-08-02T16:08:05Z"}, {"id": 35666, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 2, "name": "Issues"}, "subject": "Review incorrect usage of Setting.display_subprojects_issues", "description": "@Setting.display_subprojects_issues@ was originally intended to provide a default value that can be overridden by users. It's used in several other places now too where the user might not have the ability to override its value while it would still make sense to provide the user this ability. These usages should be reviewed and fixed if necessary.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-08-02T13:42:53Z", "updated_on": "2021-08-02T13:42:53Z"}, {"id": 35664, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 40, "name": "Issues planning"}, "subject": "Inconsistencies in rendering of subproject data on Issues Reports", "description": "There are several inconsistencies in rendering of subproject data on Issues Reports after the addition of subprojects-inclusion introduced in #2529 and its extension by #34185. I've put my findings in a table:\r\n\r\n|_<. Block: |_<. Shows subproject values: |_<. Shows subproject data: |\r\n|_<. _Tracker_ | yes, if with_subprojects=1 | yes, if with_subprojects=1 |\r\n|_<. _Priority_ | yes, always ** | yes, if with_subprojects=1 |\r\n|_<. _Assignee_ | no | yes, if with_subprojects=1 and only if subproject value is available in current project |\r\n|_<. _Author_ | no | yes, if with_subprojects=1 and only if subproject value is available in current project |\r\n|_<. _Version_ | yes, always | yes, if with_subprojects=1 |\r\n|_<. _Subproject_ * | yes, always * | yes, always * |\r\n|_<. _Category_ | no | no |\r\n\r\n|_\\3. Legend: |\r\n| * | = | only shown when @@project.children.any? == true@ |\r\n| ** | = | these values are global |\r\n| with_subprojects=1 | = | @Setting.display_subprojects_issues == 1@ |", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "99"}], "created_on": "2021-08-02T13:26:16Z", "updated_on": "2021-08-02T13:26:16Z"}, {"id": 35663, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 434198, "name": "Simeon Trifonov"}, "category": {"id": 32, "name": "REST API"}, "subject": "Access custom fields in project specific activities via Redmine API", "description": "I created a custom field in the activities that should contain different code for each activity. Also the codes could be different in the different projects. This is supported from Redmine and works fine.\r\n\r\n!activities.png!\r\n\r\nI tried to access this data from outside (using Python-Redmin library) and it seems to be impossible. The developers of the library said that this is not supported from the Redmine API and they cannot solve this problem. I will appreciate extension of the Redmine API that will allow access to custom fields in the activities.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-02T11:26:44Z", "updated_on": "2021-08-02T13:26:55Z"}, {"id": 35658, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 531763, "name": "Sebastian Hunziker"}, "category": {"id": 17, "name": "Permissions and roles"}, "subject": "Administration -> Role -> Users Visibility", "description": "In the dropdown list menu, adding \"None users\" as an option. For some approaches, It would be really useful to be able to select this option to set up a role that can be part of a project but cannot see other members.\r\n\r\n!RoleUserVisibility.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-01T17:48:18Z", "updated_on": "2021-08-02T10:31:12Z"}, {"id": 35657, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 2, "name": "Issues"}, "subject": "Spent time ratio column and filter", "description": "I suggest adding a new column and a new filter to the issues list.\r\n\r\nThe name of the column and the filter is \"Spent time ratio\". \"Spent time ratio\" column displays the percentage of a spent time divided by an estimated time. The column is useful to see the sign of overspending of man-hours and find issues that took more time than estimated.\r\n\r\n\"Easy Redmine\":https://www.easyredmine.com/ already has the same column and filter.\r\n\r\n!{width: 1023px; border: 1px solid grey;}.spent-time-ratio.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-08-01T14:07:22Z", "updated_on": "2021-08-01T14:26:31Z"}, {"id": 35656, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 107353, "name": "Marius BALTEANU"}, "category": {"id": 15, "name": "Importers"}, "fixed_version": {"id": 33, "name": "Candidate for next minor release"}, "subject": "When importing issue relations, the validation messages are not shown in the UI", "description": "If you import a CSV with invalid relations, the validations messages are not shown in the UI.\r\n\r\nThe attached CSV can be used to reproduce the problem and it should generate the following error in the logs:\r\n
\r\nActiveRecord::RecordInvalid (Validation failed: Related issue cannot be blank):\r\n  \r\napp/models/issue_import.rb:289:in `block (2 levels) in build_relations'\r\napp/models/issue_import.rb:252:in `each'\r\napp/models/issue_import.rb:252:in `block in build_relations'\r\napp/models/issue_import.rb:248:in `each_key'\r\napp/models/issue_import.rb:248:in `build_relations'\r\napp/models/issue_import.rb:244:in `extend_object'\r\napp/models/import.rb:215:in `block in run'\r\napp/models/import.rb:142:in `block in read_items'\r\napp/models/import.rb:256:in `block in read_rows'\r\napp/models/import.rb:255:in `read_rows'\r\napp/models/import.rb:136:in `read_items'\r\napp/models/import.rb:194:in `run'\r\napp/controllers/imports_controller.rb:91:in `run'\r\nlib/redmine/sudo_mode.rb:61:in `sudo_mode'\r\n
", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "152"}], "created_on": "2021-08-01T14:06:13Z", "updated_on": "2021-08-01T14:06:13Z"}, {"id": 35655, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 107353, "name": "Marius BALTEANU"}, "assigned_to": {"id": 107353, "name": "Marius BALTEANU"}, "category": {"id": 2, "name": "Issues"}, "fixed_version": {"id": 170, "name": "4.2.3"}, "subject": "Create duplicated follows relations fails with 500 internal error", "description": "It seems that the relation validations are not covering all the cases and if you try to add two duplicated follows relations, the request fails with 500 internal error. The issue reproduces only on 4.2.* versions and it's caused by #33418.\r\n\r\n
\r\nI, [2021-08-01T16:29:31.426087 #19530]  INFO -- : Completed 500 Internal Server Error in 117ms (ActiveRecord: 70.3ms | Allocations: 8146)\r\n\r\n\r\nF, [2021-08-01T16:29:31.427135 #19530] FATAL -- :   \r\nActiveRecord::RecordNotUnique (Mysql2::Error: Duplicate entry '1-2' for key 'issue_relations.index_issue_relations_on_issue_from_id_and_issue_to_id'):\r\n  \r\napp/controllers/issue_relations_controller.rb:67:in `block in create'\r\napp/controllers/issue_relations_controller.rb:51:in `each'\r\napp/controllers/issue_relations_controller.rb:51:in `create'\r\n\r\n
", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "152"}], "created_on": "2021-08-01T13:41:29Z", "updated_on": "2021-08-05T23:52:23Z"}, {"id": 35648, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 107353, "name": "Marius BALTEANU"}, "subject": "Changelog generator should allow merging two or more versions", "description": "The script used to generate the changelog for releases should allow merging two or more versions.\r\n\r\nFor example, for the latest releases, we generated the changelog for two versions:\r\n* 4.1.4\r\n* 4.2.2 \r\n\r\nThe changelog for 4.2.2 should contain also the changes for 4.1.4, but the script doesn't do this and we need to manually merge the changelogs which is very error-prone.\r\n\r\nAlso, the script should allow authorised requests in order to pull the security issues which are private at the time of the releases. The authorization should use environment variables.", "done_ratio": 0, "created_on": "2021-08-01T08:15:59Z", "updated_on": "2021-08-01T08:15:59Z"}, {"id": 35647, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 40, "name": "Issues planning"}, "subject": "Allow the user to properly override Setting.display_subprojects_issues on Issue Reports if a project has subprojects", "description": "I'd like to know if there is interest in a feature like this:\r\n\r\n!{width:95%;}.2021-07-31_10-49-52.gif!\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-31T13:04:38Z", "updated_on": "2021-08-03T00:31:59Z"}, {"id": 35645, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 10, "name": "UI"}, "subject": "Request for reconsideration of removal of 'View all issues' link", "description": "Yesterday I started doing some development work on Redmine again. The first thing that I stumbled upon was that the 'View all issues' link in the issues sidebar was removed in r18304. Although I see the merit of its removal with #30294, it really annoys me not having that link available (to such an extend that I quickly created a \"small plugin\":/plugins/redmine_add_all_issues_link_in_issues_sidebar to restore it on the issues show view).\r\nThe reason for this annoyance is that it was the only way to clear the current, not-saved query straight from the issues show view without first going back to the issues index view and then subsequently clicking on the clear button. With the link on issues show it is possible to go back to the default issues list without the need of an additional click on the clear button to clear the in-memory query. All the other (currently available) links that go back to the issues index view (project menu and query links on the index show view) retain the current query.\r\n\r\nSo, to make a long story short, I'd like to request a reconsideration of the decision for the removal of this link. This is also rooted in the fact that I think more (power) users will be/have been bitten by this change.\r\n\r\nFTR:\r\n* I have no problems with the move of the other links ('Summary' and 'Import') to the drop-down menu. This request is just about the 'View all issues' link.\r\n* I haven't looked into the changes of the 'Spent time' sidebar yet, but the points of the 'Issues sidebar' might also apply to those views.\r\n* If the removal decision is indeed reverted then it would be viable to subsequently also revert the addition of the clear query buttons added in #31640, as they would become obsolete if the 'View all issues' link is added back in.\r\n* I am also ok if my request will be declined. I'll then just keep using my plugin to restore the old situation...\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-30T17:14:42Z", "updated_on": "2021-07-31T13:20:05Z"}, {"id": 35642, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 3, "name": "Resolved"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "assigned_to": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 2, "name": "Issues"}, "fixed_version": {"id": 169, "name": "4.1.5"}, "subject": "Long text custom field values are not aligned with their labels", "description": "See the screenshot below. You will see an unnecessary gap above the value of a custom field if all of the following conditions are met:\r\n\r\n* The format of the custom field is \"Long text\"\r\n* Text formatting is enabled for the custom field\r\n\r\nThe attached patch fixes the UI issue.\r\n\r\n!{width: 346px; border: 1px solid grey;}.custom-value-is-not-aligned-with-label.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": "Fixed"}, {"id": 4, "name": "Affected version", "value": "164"}], "created_on": "2021-07-30T02:36:45Z", "updated_on": "2021-08-05T21:51:36Z"}, {"id": 35640, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 361957, "name": "Eugenia B."}, "category": {"id": 2, "name": "Issues"}, "subject": "select / deselect watchers with one click when I copy a single issue", "description": "I have issues with more than 10 watchers and I want to copy the issues without watchers .\r\nIt would be better not to deselect the watchers one by one.\r\n\r\nI want to select / deselect watchers with one click when I copy a single issue\r\n\r\nAlso, I would like to have the option to add a new checkbox to copy watchers when I copy a single issue\r\n\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-29T19:49:13Z", "updated_on": "2021-07-30T00:32:03Z"}, {"id": 35627, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 445357, "name": "token ring"}, "subject": "Database schema", "description": "Please publish latest database schema", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-28T14:04:16Z", "updated_on": "2021-07-28T14:04:16Z"}, {"id": 35626, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 445357, "name": "token ring"}, "category": {"id": 11, "name": "Projects"}, "subject": "Prevent close project", "description": "Please add feature to prevent closing project with opened tasks\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-28T14:03:31Z", "updated_on": "2021-07-28T14:03:31Z"}, {"id": 35616, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 10, "name": "UI"}, "subject": "Remove \"Delete\" from the context menu for related issues", "description": "A related issue has a context menu that is invoked by right-clicking the issue.\r\n\r\nIt contributes to improving usability, but it also causes certain misoperation. This is the accidental deletion of an issue. Sometimes users misunderstand \"Delete\" in the context menu as a menu item to delete the issue relation, and accidentally delete the issue. I have seen such users many times.\r\n\r\nI don't think there are many cases where you want to delete issues in the \"Related issues\" section. In my opinion, It is rather harmful to have \"Delete\" in the menu.\r\n\r\nI suggest removing the \"Delete\" from the context menu in order to avoid such accidents.\r\n\r\n!{width: 393px; border: 1px solid grey;}.delete-in-context-menu.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-27T13:19:13Z", "updated_on": "2021-07-27T19:00:41Z"}, {"id": 35613, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 12, "name": "Translations"}, "subject": "German translation update of wiki_syntax_markdown.html", "description": "Related to #35375, I have updated untranslated de/wiki_syntax_markdown.html based on de/wiki_syntax_textile.html.\r\n\r\nSince I don't understand German, I didn't add any new translations. All translations are from de/wiki_syntax_textile.html.", "done_ratio": 0, "created_on": "2021-07-27T07:45:57Z", "updated_on": "2021-08-06T21:28:51Z"}, {"id": 35608, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 10, "name": "Needs feedback"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 530723, "name": "anderson henrique de oliveira"}, "subject": "ActionView::Template::Error", "description": "
\r\nActionView::Template::Error (Tried to load unspecified class: ActiveSupport::HashWithIndifferentAccess):\r\n     6:   \r\n     7:       <%= label_tag available_tag_id, l(:description_available_columns) %>\r\n     8:       <%= select_tag 'available_columns',\r\n     9:               options_for_select(query_available_inline_columns_options(query)),\r\n    10:               :id => available_tag_id,\r\n    11:               :multiple => true, :size => 10,\r\n    12:               :ondblclick => \"moveOptions(this.form.#{available_tag_id}, this.form.#{selected_tag_id});\" %>\r\n\r\napp/models/custom_field.rb:194:in `full_width_layout?'\r\napp/models/query.rb:129:in `initialize'\r\napp/models/issue_query.rb:227:in `new'\r\napp/models/issue_query.rb:227:in `block in available_columns'\r\napp/models/issue_query.rb:227:in `collect'\r\napp/models/issue_query.rb:227:in `available_columns'\r\napp/models/query.rb:751:in `available_inline_columns'\r\napp/helpers/queries_helper.rb:111:in `query_available_inline_columns_options'\r\napp/views/queries/_columns.html.erb:9:in `_app_views_queries__columns_html_erb__180106743509758731_39790100'\r\napp/helpers/queries_helper.rb:120:in `render_query_columns_selection'\r\napp/views/settings/_issues.html.erb:42:in `block in _app_views_settings__issues_html_erb___3907273758105470640_70343526728380'\r\napp/views/settings/_issues.html.erb:1:in `_app_views_settings__issues_html_erb___3907273758105470640_70343526728380'\r\napp/views/common/_tabs.html.erb:21:in `block in _app_views_common__tabs_html_erb___2021973252971248650_66522480'\r\napp/views/common/_tabs.html.erb:20:in `each'\r\napp/views/common/_tabs.html.erb:20:in `_app_views_common__tabs_html_erb___2021973252971248650_66522480'\r\napp/helpers/application_helper.rb:439:in `render_tabs'\r\napp/views/settings/edit.html.erb:5:in `_app_views_settings_edit_html_erb___2628854012480261892_66449720'\r\napp/controllers/settings_controller.rb:33:in `index'\r\nlib/redmine/sudo_mode.rb:65:in `sudo_mode'\r\n
\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-07-26T13:18:50Z", "updated_on": "2021-07-27T12:01:26Z"}, {"id": 35582, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 529660, "name": "Robinson Torres"}, "category": {"id": 8, "name": "Administration"}, "subject": "Error: Template::Error (Tried to load unspecified class: ActiveSupport::HashWithIndifferentAccess)", "description": "Started GET \"/redmine/roles/3/edit\" for 192.168.1.1 at 2021-07-19 11:31:51 -0500\r\nProcessing by RolesController#edit as HTML\r\n Parameters: {\"id\"=>\"3\"}\r\n Current user: admin (id=1)\r\n Rendered roles/_form.html.erb (35.5ms)\r\n Rendered roles/edit.html.erb within layouts/admin (37.1ms)\r\nCompleted 500 Internal Server Error in 51ms (ActiveRecord: 6.7ms)\r\n\r\nActionView::Template::Error (Tried to load unspecified class: ActiveSupport::HashWithIndifferentAccess):\r\n 84: <%= hidden_field_tag \"role[permissions_all_trackers][#{permission}]\", '0', :id => nil %>\r\n 85: <%= check_box_tag \"role[permissions_all_trackers][#{permission}]\",\r\n 86: '1',\r\n 87: @role.permissions_all_trackers?(permission),\r\n 88: :class => \"#{permission}_shown\",\r\n 89: :data => {:disables => \".#{permission}_tracker\"} %>\r\n 90: \r\n app/models/role.rb:229:in `permissions_all_trackers'\r\n app/models/role.rb:238:in `permissions_all_trackers?'\r\n app/views/roles/_form.html.erb:87:in `block in _app_views_roles__form_html_erb___376610786332119881_69944433040580'\r\n app/views/roles/_form.html.erb:82:in `each'\r\n app/views/roles/_form.html.erb:82:in `_app_views_roles__form_html_erb___376610786332119881_69944433040580'\r\n app/views/roles/edit.html.erb:4:in `block in _app_views_roles_edit_html_erb___4451376381137512519_69944418235820'\r\n app/helpers/application_helper.rb:1190:in `labelled_form_for'\r\n app/views/roles/edit.html.erb:3:in `_app_views_roles_edit_html_erb___4451376381137512519_69944418235820'\r\n lib/redmine/sudo_mode.rb:63:in `sudo_mode'\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "134"}], "created_on": "2021-07-19T16:32:57Z", "updated_on": "2021-07-30T04:51:52Z"}, {"id": 35570, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 434111, "name": "C S"}, "category": {"id": 38, "name": "Themes"}, "subject": "Dynamically adjustable template options", "description": "\r\nAt the moment I use the template Purplemine (https://github.com/mrliptontea/PurpleMine2), because at least in the CSS file it offers the possibility to provide the trackers with different colored labels. This is particularly helpful in the Gant diagram to keep track of things. The colors are also used to highlight the respective IDs in the issue overview.\r\nIt would be even better if I could specify the colors directly in the definition of the tracker (Administration-> Tracker) myself", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-16T07:42:20Z", "updated_on": "2021-07-16T07:42:20Z"}, {"id": 35566, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 140010, "name": "shawn freeman"}, "category": {"id": 19, "name": "Attachments"}, "subject": "option to display thumbnails above file list in Documents", "description": "It would be nice to display the thumbnail of files/images, that are attached to an document, before the list of files (in some cases). I have a document enum to act as a catalog of images, and when the document has more than a few images, the users have to scroll down far to see the images. Here's a small example of the \"as is\", with the files listed BEFORE thumbnails (feature request is for AFTER).\r\n\r\n!Screenshot_20210714_203258.png!\r\n\r\nThank you!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-15T00:51:19Z", "updated_on": "2021-07-15T00:51:19Z"}, {"id": 35559, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 2, "name": "Issues"}, "subject": "Query links for related issues on issue page", "description": "Redmine 4.2.0 and later have query links for subtasks on an issue page (#28471). I think the \"Related issues\" section should also have similar links.\r\n\r\nAlthough there is no filter that can extract all types of related issues as mentioned in #28471, I think the new links can be implemented by using the issue ids filter (#4806).\r\n\r\n!{width: 769px; border: 1px solid grey;}.query-links-for-related-issues.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-13T02:02:47Z", "updated_on": "2021-07-29T13:21:50Z"}, {"id": 35558, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 400484, "name": "David Dole\u017eal"}, "category": {"id": 9, "name": "Email notifications"}, "subject": "Add button \"Send notification again\"", "description": "It happened today. I wrote issue's note wrong and saved it. Users got notification email with wrong information. So I edited my note, corrected all wrong parts (like url for pics, text, ...) and saved it. No notification was send. I think it's ok, because usually nobody change own note after save. But for admins can be usefull to send it again, for example when something crashed on SMTP, etc.\r\n\r\nSo can you add button *Send notification again* for issue journal and protect it with permission.\r\n\r\nHow I think about:\r\nOn issue head will be new button. When I click on it - it send notification about issue like I save it like a new.\r\nOn issue's notes will be new button. When I click on it - it send notication about issue's note like I save it like a new.\r\n\r\nFeel free for question. Maybe I didn't to describe it perfectly.... ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-07-12T11:56:10Z", "updated_on": "2021-07-12T17:15:31Z"}, {"id": 35557, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 9, "name": "Confirmed"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 361769, "name": "Liane Hampe"}, "category": {"id": 14, "name": "Custom fields"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "Fix position when rendering custom field enumerations", "description": "The position of each custom field enumeration is integrated as hidden\r\nfield in the corresponding index.html.erb file.\r\n \r\nWhen iterating over all enumerations for a certain field, the iteration\r\nis done with an index information of the array, what contains all enumerations.\r\n \r\nThis index information again is used as the value for the position. \r\n\r\nThis is wrong, since the (array) index starts counting from zero whereas the position\r\nnumbers start counting from 1.\r\n \r\nThis is fixed now by increasing the position by 1 as stated below.\r\n\r\n
\r\ndiff --git a/app/views/custom_field_enumerations/index.html.erb b/app/views/custom_field_enumerations/index.html.erb\r\nindex 83e9d59c9..45398728f 100755\r\n--- a/app/views/custom_field_enumerations/index.html.erb\r\n+++ b/app/views/custom_field_enumerations/index.html.erb\r\n@@ -7,7 +7,7 @@\r\n   <% @custom_field.enumerations.each_with_index do |value, position| %>\r\n     
  • \r\n \r\n- <%= hidden_field_tag \"custom_field_enumerations[#{value.id}][position]\", position, :class => 'position' %>\r\n+ <%= hidden_field_tag \"custom_field_enumerations[#{value.id}][position]\", position + 1, :class => 'position' %>\r\n <%= text_field_tag \"custom_field_enumerations[#{value.id}][name]\", value.name, :size => 40 %>\r\n <%= hidden_field_tag \"custom_field_enumerations[#{value.id}][active]\", 0 %>\r\n
  • ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "165"}], "created_on": "2021-07-12T10:42:37Z", "updated_on": "2021-07-13T08:09:48Z"}, {"id": 35545, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 361769, "name": "Liane Hampe"}, "category": {"id": 2, "name": "Issues"}, "subject": "Fix css class assignment in issue custom field rendering in show view", "description": "Rendering the issue custom fields in the show view is done by the\r\nclass IssueFieldsRow, which can be found in issues_helper.rb.\r\n \r\nThe method IssueFieldRow#to_html has an error because the\r\nclass 'splitcontentright' will never be assigned.\r\n \r\nThis patch fixes this error by modifying the class in the respective\r\ncontent_tag of the helper method. Thus, it is a one liner.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "165"}], "created_on": "2021-07-08T15:24:39Z", "updated_on": "2021-07-14T08:31:14Z"}, {"id": 35539, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 8, "name": "Reopened"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 40856, "name": "Jens Kr\u00e4mer"}, "assigned_to": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 19, "name": "Attachments"}, "fixed_version": {"id": 155, "name": "5.0.0"}, "subject": "Race condition (possible filename collision) in Attachment.disk_filename", "description": "When two (or more) files with the same name are uploaded at the same time, it may happen that two or more of the resulting attachment records end up using the same disk file, resulting in data loss if the files actually differ in content. This was already previously mentioned in #34479-2 (but was unrelated to that issue and hence got \"lost\")\r\n\r\nThe problem is that @Attachment.disk_filename@ finds a non-existant filename, but fails to \"claim\" this name in the file system while doing so. So nothing stops a parallel process to end up using the same name if it tries to do so before the first process actually creates the file.\r\n\r\nThis patch, extracted from \"Planio\":https://plan.io/redmine-hosting , instead tries to create a file directly, with the @File::EXCL@ flag set, catches the error which means 'filename taken already' and retries until the file is created. This way, filenames are guaranteed to be unique by the underlying file system.\r\n", "done_ratio": 0, "created_on": "2021-07-07T05:25:26Z", "updated_on": "2021-08-08T01:52:53Z", "closed_on": "2021-07-19T13:28:21Z"}, {"id": 35536, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 486714, "name": "Takashi Kato"}, "subject": "Use webpack to improve javascripts and stylesheets management", "description": "I propose the use of webpack as a library management tool for javascript. I also suggest the use of \"simpacker\":https://github.com/hokaccha/simpacker as a tool for linking rails and webpack.\r\n\r\nThe docker environment can be found here.\r\n\r\nhttps://github.com/tohosaku/redmine-docker-wsl2\r\n\r\nh2. Motivation\r\n\r\n* To deal with the problem that #6662 \"js files are not compressed\"\r\n* To be a foundation for future npm package usage. ", "done_ratio": 0, "created_on": "2021-07-06T10:00:04Z", "updated_on": "2021-07-06T10:06:11Z"}, {"id": 35531, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 517334, "name": "anju dhiman"}, "category": {"id": 29, "name": "Email receiving"}, "subject": "redmine unexpected undefined local variable or method `project'\" for mail handler , did you mean project_url", "description": "Hi,\r\n\r\nI am getting an error on Redmine while reading a particular email, error is :\r\nRedmine unexpected undefined local variable or method `project'\" for mail handler, did you mean project_url?\r\n\r\nEmail is getting read but it's not creating tickets in Redmine.\r\n\r\nCould you guys please help us?", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "160"}], "created_on": "2021-07-05T12:22:52Z", "updated_on": "2021-07-13T08:31:46Z"}, {"id": 35471, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 78650, "name": "Sergey Lobanov"}, "category": {"id": 12, "name": "Translations"}, "subject": "Split field_is_private to two labels for correct Russian translation", "description": "Currently, field_is_private is used for comments(notes) and issues\r\n\r\nFor English and many other languages it is OK to use the same word (\"Private\") for a comment(note) and an issue, but in Russian language the form of the adjective depends on the next word. (private comment in Russian is *\u0427\u0430\u0441\u0442\u043d\u044b\u0439* \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 or *\u041f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0439* \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439, but private issue in Russian is *\u0427\u0430\u0441\u0442\u043d\u0430\u044f* \u0437\u0430\u0434\u0430\u0447\u0430 or *\u041f\u0440\u0438\u0432\u0430\u0442\u043d\u0430\u044f* \u0437\u0430\u0434\u0430\u0447\u0430)\r\n\r\nSo it is required to have two labels, e.g. field_issue_is_private and field_note_is_private to make a correct translation to Russian.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-27T23:55:33Z", "updated_on": "2021-07-01T12:24:18Z"}, {"id": 35470, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 10, "name": "Needs feedback"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 482687, "name": "Mark Tomm"}, "category": {"id": 27, "name": "Groups"}, "subject": "Create \"New Group\" results in HTTP code 500", "description": "h1. Redmine logs output\r\n\r\n
    \r\nApp 174 output: I, [2021-06-27T08:09:33.046085 #174]  INFO -- : Started POST \"/redmine/groups\" for 172.30.23.1 at 2021-06-27 08:09:33 +0300\r\nApp 174 output: I, [2021-06-27T08:09:33.047230 #174]  INFO -- : Processing by GroupsController#create as HTML\r\nApp 174 output: I, [2021-06-27T08:09:33.047325 #174]  INFO -- :   Parameters: {\"utf8\"=>\"\u2713\", \"authenticity_token\"=>\"XXXX\", \"group\"=>{\"name\"=>\"test\"}, \"commit\"=>\"Create\"}\r\nApp 174 output: I, [2021-06-27T08:09:33.115818 #174]  INFO -- :   Current user: XXXX (id=XXXX)\r\nApp 174 output: I, [2021-06-27T08:09:33.123919 #174]  INFO -- : Completed 500 Internal Server Error in 76ms (ActiveRecord: 66.7ms)\r\nApp 174 output: F, [2021-06-27T08:09:33.125716 #174] FATAL -- :   \r\nApp 174 output: F, [2021-06-27T08:09:33.125742 #174] FATAL -- : ActiveRecord::NotNullViolation (Mysql2::Error: Field 'mail_notification' doesn't have a default value: INSERT INTO `users` (`login`, `hashed_password`, `firstname`, `lastname`, `created_on`, `updated_on`, `type`) VALUES ('', '', '', 'test', '2021-06-27 08:09:33', '2021-06-27 08:09:33', 'Group')):\r\nApp 174 output: F, [2021-06-27T08:09:33.125773 #174] FATAL -- :   \r\nApp 174 output: F, [2021-06-27T08:09:33.125792 #174] FATAL -- : app/controllers/groups_controller.rb:68:in `block in create'\r\nApp 174 output: app/controllers/groups_controller.rb:67:in `create'\r\nApp 174 output: lib/redmine/sudo_mode.rb:61:in `sudo_mode'\r\n
    \r\n\r\nh1. Redmine info\r\n\r\nRunning official Docker image without modifications (https://hub.docker.com/_/redmine/).\r\nWe have 3 plugins, info listed below.\r\n\r\n
    \r\nEnvironment:\r\n  Redmine version                4.2.1.stable\r\n  Ruby version                   2.7.3-p183 (2021-04-05) [x86_64-linux]\r\n  Rails version                  5.2.5\r\n  Environment                    production\r\n  Database adapter               Mysql2\r\n  Mailer queue                   ActiveJob::QueueAdapters::AsyncAdapter\r\n  Mailer delivery                smtp\r\nSCM:\r\n  Subversion                     1.10.4\r\n  Mercurial                      4.8.2\r\n  Bazaar                         2.8.0\r\n  Git                            2.20.1\r\n  Filesystem                     \r\nRedmine plugins:\r\n  redmine_checklists             3.1.18\r\n  redmine_contacts               4.3.2\r\n  redmineup_tags                 2.0.8\r\n
    \r\n\r\nOur Redmine DB exists from 2011 (from 1.x to 4.x).\r\n\r\n*Setting.default_notification_option* check:\r\n\r\n
    \r\nroot@redmine:/usr/src/redmine# rails c p\r\nLoading production environment (Rails 5.2.5)\r\nirb(main):001:0> Setting.default_notification_option\r\n=> \"only_my_events\" \r\n
    \r\n\r\nh1. Notes\r\n\r\nThe same issue occurred in Redmine 3.x prior to migration to 4.2.1\r\n\r\nRelated issues: #34255\r\n ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "165"}], "created_on": "2021-06-27T10:55:15Z", "updated_on": "2021-07-13T12:46:44Z"}, {"id": 35462, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 19, "name": "Attachments"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "Download all attachments in a journal", "description": "Bulk attachments download for issues has been implemented in Redmine 4.2.0 (#7056). However, sometimes I want to download all attachments of a journal, not an issue.\r\n\r\nFor example, suppose that an issue already has dozens of files. In the most recent update, your colleague has attached 5 more files. In this case, it is not uncommon to want to download only the latest 5 files.\r\n\r\nI believe that bulk downloading of files for each journal is a very useful feature.\r\n\r\n!{width: 766px; border: 1px solid grey;}.bulk-download-journal-attachments.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-25T01:51:12Z", "updated_on": "2021-08-03T07:00:31Z"}, {"id": 35456, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 94920, "name": "James H"}, "category": {"id": 2, "name": "Issues"}, "subject": "Group of Users as Assignable Users per tracker", "description": "Sometimes we need trackers assignable to a group of individuals regardless of their membership/role on any projects.\r\nInstead of adding users or groups to every single project (defeating the use of members/roles), would like this feature:\r\n\r\nHave as an option per tracker, to allow selecting a Group as the list of assignable users instead of the current project members.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-24T20:17:18Z", "updated_on": "2021-06-24T20:17:18Z"}, {"id": 35454, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 365663, "name": "Markus Boremski"}, "category": {"id": 34, "name": "Gantt"}, "subject": "Gantt - Projectbars / (nearly) all Start on 2019-Oct-01", "description": "Could anyone tell me what exaclty causes the start-date of a project-bar in gantt?\r\nWe have about 800 projects and many of them seem to start on 01-oct-2019.\r\n!https://www.redmine.org/attachments/download/27621/2021-06-24%2012_57_33-Gantt-Diagramm.png!\r\n\r\nThis mostly happens for sub-projects, but not in general.\r\nIf I take a closer look on such a project and display all one can see that this project did not start on 01-oct-2019:\r\n!{width:600px;}https://www.redmine.org/attachments/download/27622/2021-06-24%2013_05_01-Gantt-Diagramm.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "162"}], "created_on": "2021-06-24T12:22:23Z", "updated_on": "2021-07-21T14:58:55Z"}, {"id": 35450, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 362529, "name": "Yuichi HARADA"}, "category": {"id": 30, "name": "Code cleanup/refactoring"}, "subject": "Fixed an error message when registering an email address for a disallowed email domain", "description": "When registering an email address with a disallowed email domain with \"My account > Email\", the error message \"Email is invalid\" is displayed.\r\n\r\n!{width:400px;border:1px solid grey;}current-error-message.png!\r\n\r\nI don't understand what the error message wants to convey, so fixed the error message.\r\n\r\n!{width:400px;border:1px solid grey;}fixed-error-message.png!", "done_ratio": 0, "created_on": "2021-06-24T02:00:04Z", "updated_on": "2021-06-24T02:00:04Z"}, {"id": 35439, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 107353, "name": "Marius BALTEANU"}, "assigned_to": {"id": 107353, "name": "Marius BALTEANU"}, "category": {"id": 7, "name": "Accounts / authentication"}, "subject": "Option to require 2FA only for users with administration rights", "description": "#31920 adds the option to enable 2FA only for certain groups when the 2FA setting is set to optional. This is very useful, but it doesn't cover the case when you want to enable 2FA only for administrators. As a best security practice, if you cannot enforce for all users, the administrators should be top priority to secure using 2FA. \r\n\r\nMy proposal is to add a new setting to allow enforcing 2FA only for administrators:\r\n\r\n!{width:60%;}2fa_optional.png!\r\n\r\nWhat do you think?\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-22T21:23:00Z", "updated_on": "2021-06-23T08:34:24Z"}, {"id": 35435, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 3, "name": "Resolved"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 123153, "name": "Pavel Rosick\u00fd"}, "assigned_to": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 45, "name": "Gems support"}, "fixed_version": {"id": 170, "name": "4.2.3"}, "subject": "Psych 4: aliases in database.yml cause Psych::BadAlias exception", "description": "see for details\r\nhttps://github.com/ruby/psych/pull/487\r\nhttps://github.com/rails/rails/commit/1e56b1d1152e8ab74203db30625116844614cc78\r\n\r\npatch\r\n
    \r\ndiff --git a/Gemfile b/Gemfile\r\nindex b83cd2215..8f6bbe946 100644\r\n--- a/Gemfile\r\n+++ b/Gemfile\r\n@@ -52,7 +52,8 @@ require 'erb'\r\n require 'yaml'\r\n database_file = File.join(File.dirname(__FILE__), \"config/database.yml\")\r\n if File.exist?(database_file)\r\n-  database_config = YAML::load(ERB.new(IO.read(database_file)).result)\r\n+  yaml_config = ERB.new(IO.read(database_file)).result\r\n+  database_config = YAML.respond_to?(:unsafe_load) ? YAML.unsafe_load(yaml_config) : YAML.load(yaml_config)\r\n   adapters = database_config.values.map {|c| c['adapter']}.compact.uniq\r\n   if adapters.any?\r\n     adapters.each do |adapter|\r\n
    \r\n\r\nwithout this change, Psych 4 will break aliases in config/database.yml\r\n
    \r\nproduction: &alias\r\n  adapter: mysql2\r\n  database: xxx\r\n\r\ndevelopment: *alias\r\n
    \r\n\r\nerror\r\n
    \r\nCannot load database configuration: (Psych::BadAlias)\r\nUnknown alias: alias\r\n
    ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": "Fixed"}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-06-22T12:33:28Z", "updated_on": "2021-07-27T01:27:16Z"}, {"id": 35432, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 3, "name": "SCM"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "View annotate prior to the change", "description": "The \"Blame\" view of GitHub and Gitlab has a feature called \"View blame prior to this change\". With the feature, you can easily jump to an older change of the line.\r\n\r\nI think it would be useful if Redmine also has the feature. Currently, it requires some manual steps to see older changes in the \"Annotate\" view of Redmine.\r\n\r\n!{width: 634px; border: 1px solid grey;}.gitlab-view-blame-prior-to-this-change.png!\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-22T08:01:18Z", "updated_on": "2021-07-24T07:58:36Z"}, {"id": 35431, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 140059, "name": "Mohamed Attya"}, "category": {"id": 9, "name": "Email notifications"}, "subject": "send notifications to user selected from costum field (user type)", "description": "Hello all\r\ni need an immediate help please, i have an issue that i need to send the issue to more than one assignee and i cant add them in groups because the combination is changable, i add new costum field with type (user) but the selected user(s) from this menu doesnt receive any notifications and doesnt have permission to access this issue.\r\ni tried a plugin with name (custom_users_as_assignees) but after i install the plugin my redmine fails and i have to remove the plugin from the directory to work.\r\nplease help me fixing this problem as i need it immediatly", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "99"}], "created_on": "2021-06-22T07:43:36Z", "updated_on": "2021-06-22T07:43:36Z"}, {"id": 35430, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 10, "name": "Needs feedback"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 147409, "name": "salman mp"}, "category": {"id": 3, "name": "SCM"}, "subject": "Internal error when viewing revisions diff", "description": "When I want to view revisions diff in the one project repository tab, in the first try it is OK, but after refresh or try another revisions diff it throw internal server error 500.\r\nI found that is because of using any deface on 'layout/base'. ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "162"}], "created_on": "2021-06-21T10:39:50Z", "updated_on": "2021-07-01T15:23:33Z"}, {"id": 35429, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 310708, "name": "Martina A."}, "category": {"id": 2, "name": "Issues"}, "subject": "Ticket assignement only to groups not to single users", "description": "https://www.redmine.org/boards/2/topics/65690\r\n\r\nWould be really great, if you can consider this for next update.\r\nMany thanks.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-21T10:27:37Z", "updated_on": "2021-06-22T01:33:33Z"}, {"id": 35422, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 443869, "name": "Martin Hierholzer"}, "category": {"id": 34, "name": "Gantt"}, "subject": "Make timeline in Gantt chart sticky", "description": "When having a bit Gantt chart with many tickets, the timeline is no longer visible after scrolling down. This makes it hard to understand the chart. Also the horizontal scroll bar is always at the very bottom of the chart, so scrolling horizontally is not easy (unless using Shift + scroll wheel in Firefox).\r\n\r\nI think it would be ideal to have the vertical scroll bar similar as the horizontal via css overflow:scroll, such that only the body of the chart scrolls and the header of the chart and the rest of the page stays in position.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-17T09:22:59Z", "updated_on": "2021-06-17T09:22:59Z"}, {"id": 35415, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 523899, "name": "Ludwig Meysel"}, "category": {"id": 20, "name": "Plugin API"}, "subject": "Unified plugin api esp. regarding patches", "description": "Many plugins use different ways to include own lib-code. A common topic I came across is applying patches and consuming hooks. Sometimes the files are @require@'d having something like\r\n\r\n
    \r\nunless FoobarController.included_modules.include? MyPlugin::Patches::FooControllerPatch\r\n  FooController.send(:include, MyPlugin::Patches::FooControllerPatch)\r\nend\r\n
    \r\n\r\nin the bottom.\r\n\r\nSometimes the @require@ is wrapped in Reloader's @to_prepare@-callback (which seems quite useless to me), other plugins have some kind of @apply_patch@-method implemented, which does the same as the code above in a more generic manner (IMO the most elegant way to go).\r\n\r\nWhile all these techniques basically work, it often invites to mess up with the auto reloader. When doing some tweaks in the codebase (or even develop my own plugin), I either have to disable foreign plugins or painfully restart the dev-server with every change, when autoloading is not properly implemented. Otherwise I face the often reported problem of \"Cannot autoload Constant ...\"-Error.\r\n\r\nMy suggestion is to provide a more unified API for applying patches and consuming hooks.\r\n\r\nI could imagine a simple approach e.g. of an @appyl_patch@ function, which forwards the params to an array, which then is processed internally by the @ActiveSupport::Reloader.to_prepare@ callback.\r\n\r\nAnother (more opinionated) approach is to grab all patches from plugins/.../lib/patches/*.rb, after a plugin was registered, which also was applicable to the hooks.\r\n\r\nAnyways, I think there should be some mechanism to provide plugins safely, which do not mess up with the autoloader. This could also catch compatibility-stuff I have also often seen like @Rails.version < '5.1' ? ActionDispatch::Callbacks : ActiveSupport::Reloader@.to_prepare.\r\n\r\n\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-14T06:41:41Z", "updated_on": "2021-06-14T06:41:41Z"}, {"id": 35388, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 10, "name": "Needs feedback"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 94920, "name": "James H"}, "category": {"id": 16, "name": "Search engine"}, "subject": "Search filters in top bar", "description": "Searching takes a very long time when there are lots of text fields included in the search.\r\n\r\nWould like a way to filter the search (projects, issues, etc.) from the top bar without going to the search page first.\r\n\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-09T18:43:00Z", "updated_on": "2021-06-24T00:31:48Z"}, {"id": 35382, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 523420, "name": "Oz Ak"}, "subject": "Copy Project Tracker and Tasks and relations ", "description": "In order to manage our Implementation Project better, I created a Project X. In order to better organize our task I also created a tracker for Project. \r\n\r\nThe trackers I have are:\r\n* Project\r\n* Programming Request\r\n* Support\r\n* Bug\r\n* Training\r\n\r\nThe hierarchy of the project is as follow :\r\n\r\n* Project X\r\n** Project (Tracker) = Project Implementation\r\n*** Programming request 1 - Precedes (Support 2)\r\n*** Support 2 Precedes (Support 3)\r\n*** Support 3\r\n\r\nWhen I make a copy of the Project Implementation, the subtasks Programming request 1, Support 2, Support 3 do copy however the Precedes values does not copy over. \r\n\r\nAnyone else has this issue? \r\n\r\nIdeally what I would love to do is copy the Project Implementation as a template and push the dates based on the Project Implementation for other projects moving forward\r\n\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "165"}], "created_on": "2021-06-09T13:39:24Z", "updated_on": "2021-06-09T13:39:24Z"}, {"id": 35373, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 3866, "name": "Felix Sch\u00e4fer"}, "category": {"id": 10, "name": "UI"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "Improve project deletion warning text", "description": "This is related to #34417\r\n\r\nThe information text when deleting the user clearly states that deleting the user cannot be undone and that locking the user would be an alternative. This patch adds similar text stating the finality of deleting a project and the alternative of archiving the project to the project deletion information text.", "done_ratio": 0, "created_on": "2021-06-08T12:53:10Z", "updated_on": "2021-06-26T10:05:21Z"}, {"id": 35362, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 53326, "name": "\u0412\u0438\u043a\u0442\u043e\u0440 \u0412\u043e\u0435\u0432\u043e\u0434\u0441\u043a\u0438\u0439"}, "category": {"id": 58, "name": "Issues list"}, "subject": "Issues list", "description": "Is it possible the user to see the problem only members of the group? A user \"developer\" has seen the problem of all groups.\r\nAs part of the project are connected by different organizations. There is a need that they are not seen by the task each other. Since each organization is a separate group, it is necessary that users see only the tasks of their group. \u0422ow there is only:\r\nissues_visibility_all\r\nissues_visibility_own\r\nissues_visibility_public\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-06T13:13:36Z", "updated_on": "2021-06-06T13:13:36Z"}, {"id": 35359, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 522962, "name": "Sangram Jadhav"}, "category": {"id": 59, "name": "Filters"}, "subject": "assignee dropdown list ascending order", "description": "How to filter assignee dropdown list by ascending order", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "145"}], "created_on": "2021-06-05T11:02:47Z", "updated_on": "2021-06-05T11:02:47Z"}, {"id": 35356, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 459447, "name": "Angelica Diaz"}, "category": {"id": 59, "name": "Filters"}, "subject": "subtasks field", "description": "Hello, is there the possibility to add \"subtasks\" field to build a query?", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-04T14:28:31Z", "updated_on": "2021-06-04T14:28:31Z"}, {"id": 35355, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 3, "name": "Resolved"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 522881, "name": "Roman K"}, "category": {"id": 7, "name": "Accounts / authentication"}, "subject": "Unable to create or edit users with Cyrillic logins", "description": "Used version: 4.2.1.stable (Bitnami Redmine Stack)\r\nTested on fresh new install.\r\nTested on upgraded from 4.0.3 install.\r\n\r\nI'm unable to create new or modify existing users with Cyrillic login. Error is: \u201cLogin is invalid\u201d.\r\n\r\nExisting user accounts works fine. Also, I can create user manually via direct DB queries without any problems.\r\n\r\nThere was no such problem on 4.0.3.\r\n\r\nAlready reported on Bitmani Forums, but this error occurs even on fresh new install, so I'm also report it here.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "165"}], "created_on": "2021-06-04T11:20:49Z", "updated_on": "2021-06-06T19:42:11Z"}, {"id": 35349, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 522782, "name": "Ilya Belyaev"}, "category": {"id": 9, "name": "Email notifications"}, "subject": "Email notification when Issue description is updated", "description": "Hello! I have a question. How to send notifications when the Description field is updated. \r\nFor a number of reasons, I cannot mark check-box \"Issue updated\". Perhaps you can advise some plugin for advanced configuration of email notifications.\r\nI have tried adding fiel_description to journal.rb and notifiable.rb But I did not understand how to make to understand the change in value \"description\"\r\n\r\nMy setting for email notification is:\r\n\r\n!setting.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-06-03T08:57:54Z", "updated_on": "2021-06-03T08:57:54Z"}, {"id": 35345, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 9, "name": "Confirmed"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 74968, "name": "Massimo Rossello"}, "category": {"id": 20, "name": "Plugin API"}, "subject": "Redmine::Plugin::compare_versions fails with stable and devel branches", "description": "A plugin using Redine::Plugin::require_redmine always fails against stable and development branches. In fact, a version like e.g. 4.0.9.stable (from the latest 4.0.9 tag) can't be matched either against 4.0.9 or 4.0.9.0.\r\n\r\nAttached a workaround based on trunk, which is not satisfactory as it isn't using collect(&:to_i) in compare_versions. But it works.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-06-02T12:16:08Z", "updated_on": "2021-07-22T07:27:47Z"}, {"id": 35320, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 31416, "name": "Jim McAleer"}, "category": {"id": 56, "name": "Issues filter"}, "subject": "When viewing spent time report the Activity, Issue Id and Subject are combined into a single column Issue yet there is no option for filtering on subject.", "description": "Please add the issue's subject as a column to filter by in the spent time reporting. Trying to filter the issue for anything in the subject does not work does not work!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "148"}], "created_on": "2021-05-27T16:02:16Z", "updated_on": "2021-05-27T16:02:16Z"}, {"id": 35309, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 484942, "name": "Immanuel Wilhelmy"}, "category": {"id": 26, "name": "Text formatting"}, "subject": "Hyperlinks ending in \"$\" will be truncated (the trailing \"$\" sign will not be part of the URL to be pointed to)", "description": "Hyperlinks ending in \"$\" will be truncated (the trailing \"$\" sign will not be part of the URL to be loaded).\r\n\r\ne.g.: \r\n\r\nhttps://this.is.a.example/withtrailing$ (hover over the URL and look what is shown in the browser status line, resp. you see the \"$\" is not contained in redmine's URL).\r\n\r\nOur Mail-URL-Scanner replaces incoming URLs with redirects to the scanner. The generated new URL contains a trailing \"$\", so the URLs are no more recognized by the scanner and do not work.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "127"}], "created_on": "2021-05-25T12:33:01Z", "updated_on": "2021-05-26T08:29:57Z"}, {"id": 35298, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 397854, "name": "Wolf Gang"}, "category": {"id": 7, "name": "Accounts / authentication"}, "subject": "LDAP /auth_sources/autocomplete_for_new_user not working when multiple LDAP Servers", "description": "Hello!\r\n\r\nIn my setup I have several different LDAP Servers (~20) I try to query. When I add a new user the progress icon appears and stops after a while appearingly without success. After this for a while, the server returns \"Internal Error\" for a a while (< 1 minute). The following appears in the log files:\r\n\r\n
    \r\nI, [2021-05-23T20:34:25.442329 #1]  INFO -- : Started GET \"/auth_sources/autocomplete_for_new_user?term=ex\" for 92.248.33.178 at 2021-05-23 20:34:25 +0000\r\nI, [2021-05-23T20:34:25.443289 #1]  INFO -- : Processing by AuthSourcesController#autocomplete_for_new_user as JSON\r\nI, [2021-05-23T20:34:25.443327 #1]  INFO -- :   Parameters: {\"term\"=>\"ex\"}\r\nI, [2021-05-23T20:34:25.456248 #1]  INFO -- :   Current user: admin (id=1)\r\nI, [2021-05-23T20:34:34.971175 #1]  INFO -- : Started GET \"/auth_sources/autocomplete_for_new_user?term=exs\" for 92.248.33.178 at 2021-05-23 20:34:34 +0000\r\nI, [2021-05-23T20:34:34.972246 #1]  INFO -- : Processing by AuthSourcesController#autocomplete_for_new_user as JSON\r\nI, [2021-05-23T20:34:34.972279 #1]  INFO -- :   Parameters: {\"term\"=>\"exs\"}\r\nI, [2021-05-23T20:34:34.985667 #1]  INFO -- :   Current user: admin (id=1)\r\nI, [2021-05-23T20:34:35.275884 #1]  INFO -- : Started GET \"/auth_sources/autocomplete_for_new_user?term=exsc\" for 92.248.33.178 at 2021-05-23 20:34:35 +0000\r\nI, [2021-05-23T20:34:35.276661 #1]  INFO -- : Processing by AuthSourcesController#autocomplete_for_new_user as JSON\r\nI, [2021-05-23T20:34:35.276697 #1]  INFO -- :   Parameters: {\"term\"=>\"exsc\"}\r\nI, [2021-05-23T20:34:35.303692 #1]  INFO -- :   Current user: admin (id=1)\r\nI, [2021-05-23T20:34:35.701371 #1]  INFO -- : Started GET \"/auth_sources/autocomplete_for_new_user?term=exsch\" for 92.248.33.178 at 2021-05-23 20:34:35 +0000\r\nI, [2021-05-23T20:34:35.702086 #1]  INFO -- : Processing by AuthSourcesController#autocomplete_for_new_user as JSON\r\nI, [2021-05-23T20:34:35.702117 #1]  INFO -- :   Parameters: {\"term\"=>\"exsch\"}\r\nI, [2021-05-23T20:34:35.707769 #1]  INFO -- :   Current user: admin (id=1)\r\nI, [2021-05-23T20:34:38.076215 #1]  INFO -- : Started GET \"/auth_sources/autocomplete_for_new_user?term=exsch\" for 92.248.33.178 at 2021-05-23 20:34:38 +0000\r\nI, [2021-05-23T20:34:38.076974 #1]  INFO -- : Processing by AuthSourcesController#autocomplete_for_new_user as JSON\r\nI, [2021-05-23T20:34:38.077003 #1]  INFO -- :   Parameters: {\"term\"=>\"exsch\"}\r\nnot verifying SSL hostname of LDAPS server 'lh.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'lh.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'lh.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'lh.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\n172.18.0.7 - - [23/May/2021:20:34:39 UTC] \"GET /auth_sources/autocomplete_for_new_user?term=exscha HTTP/1.0\" 500 46\r\nhttps://noekis-test.lknoe.at/users/new -> /auth_sources/autocomplete_for_new_user?term=exscha\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'lh.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'am.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sp.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sp.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'lf.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'lf.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'tu.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sp.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wy.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'tu.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ks.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ks.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'kl.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'kl.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'zt.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sb.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ma.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'me.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sp.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'sp.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'zt.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wt.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'wt.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'gd.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'gd.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ho.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'ho.nk.lokal:636'\r\nnot verifying SSL hostname of LDAPS server 'mi.nk.lokal:636'\r\n172.18.0.7 - - [23/May/2021:20:34:56 UTC] \"GET /auth_sources/autocomplete_for_new_user?term=exscha HTTP/1.0\" 500 46\r\nhttps://noekis-test.lknoe.at/users/new -> /auth_sources/autocomplete_for_new_user?term=exscha\r\n
    \r\n\r\nI dont know how to further debug that so any support is highly appreciated.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "165"}], "created_on": "2021-05-23T20:45:02Z", "updated_on": "2021-05-28T09:20:29Z"}, {"id": 35282, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 521309, "name": "hagay go"}, "category": {"id": 2, "name": "Issues"}, "subject": "Assign to former/previous assignee short cut", "description": "Hi,\r\n\r\nThe \"Assign to me\" (#29285) feature is very nice and i believe another shortcut would be beneficial.\r\n\r\nOn our team , issues are being assigned form person A to person B and sometimes there is a lot of \"ping pong\" between person A and person B.\r\n\r\nPerson A assigns the issue to person B with comments.\r\nPerson B adds his comments and assigns to issue to Person A.\r\nPerson A sees the comments and adds is own and assigns the issue to Person B.\r\n\r\nIf we'll have a \"Assign to Previous Assignee\" shortcut , it would saves us few clicks and manual user lookup from the drop down (we got 25+ users/groups on the list).\r\n\r\nThnaks in advance.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-05-23T06:44:54Z", "updated_on": "2021-05-23T06:44:54Z"}, {"id": 35281, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 1565, "name": "Mischa The Evil"}, "category": {"id": 10, "name": "UI"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "[Meta] (Issues) Custom (and Standard) Fields Grouping and Positioning", "description": "This is a meta-issue to track all related issues concerning the subject and which acts as a singular entity for scheduling (instead of scheduling individual implementation proposals, like #30919).", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-05-23T04:28:33Z", "updated_on": "2021-05-23T04:28:33Z"}, {"id": 35270, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 94920, "name": "James H"}, "category": {"id": 2, "name": "Issues"}, "subject": "Grouping & Positioning of custom fields", "description": "For individual Issue view page format.\r\n\r\nWould like a more customizable way to group/position the custom fields.\r\nCurrently, trackers with many fields can be a blur of info and needs some grouping/spacers to make finding information faster/easier.\r\n\r\nRequest:\r\nThe most important part would be having a way to add grouping headers, spacers, or notes between custom fields per tracker that looks clean and assists in readability.\r\n\r\nIdeal:\r\nI think a custom positioning checkbox per tracker, and then allow custom indexing/ordering of custom fields and allow creating spacers and grouping headers with alignment and/or grid choices would be amazing.\r\n\r\nThis also could extend to project custom fields and other custom fields, but not really as useful as it would be for issues.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-05-20T20:50:46Z", "updated_on": "2021-05-21T05:22:13Z"}, {"id": 35268, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 291, "name": "Thomas L\u00f6ber"}, "category": {"id": 30, "name": "Code cleanup/refactoring"}, "subject": "Issue.acts_as_searchable columns option cleanup", "description": "Hi,\r\n\r\nJust for the sake of completeness, in @Issue.acts_as_searchable@ the @columns@ option should specify the table name for both columns.\r\n\r\nA patch is attached.\r\n\r\nBest regards,\r\nThomas\r\n", "done_ratio": 0, "created_on": "2021-05-20T14:29:36Z", "updated_on": "2021-05-20T14:29:36Z"}, {"id": 35265, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 10, "name": "Needs feedback"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 520824, "name": "Rajarshi Das"}, "subject": "Readmine: Create IssuePriority Enumeration give error", "description": "h2. I am using readmin 4.2\r\n\r\nwhile create a Issue Priority It give me error.\r\n\r\n [46, 55] in aa/enumerations_controller.rb\r\n 46: def new\r\n 47: end\r\n 48:\r\n 49: def create\r\n 50: byebug\r\n => 51: if request.post? && @enumeration.save\r\n 52: flash[:notice] = l(:notice_successful_create)\r\n 53: redirect_to enumerations_path\r\n 54: else\r\n 55: render :action => 'new'\r\n (byebug) @enumeration #\r\n\r\n\r\nand then I saw the below error\r\n\r\n\r\n (byebug) exception #\r\n\r\n\r\nI am not able to create any enuumeration in redmine\r\n\r\nany help", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-05-20T09:51:03Z", "updated_on": "2021-05-21T12:01:48Z"}, {"id": 35248, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 9, "name": "Confirmed"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 351215, "name": "Kam Nazir"}, "category": {"id": 37, "name": "I18n"}, "subject": "Hard-coded error messages in IssueStatus", "description": "Untranslated hard-coded string exists in source:trunk/app/models/issue_status.rb@20897#L113\r\n
    \r\ndef check_integrity\r\n  if Issue.where(:status_id => id).any?\r\n    raise \"This status is used by some issues\"\r\n  elsif Tracker.where(:default_status_id => id).any?\r\n    raise \"This status is used as the default status by some trackers\"\r\n  end\r\nend\r\n
    ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-05-16T03:05:44Z", "updated_on": "2021-05-18T06:58:07Z"}, {"id": 35237, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 354376, "name": "Darko Palic"}, "category": {"id": 2, "name": "Issues"}, "subject": "Configure default ordering for new Users via global Settingsb", "description": "in #589 there was the fix implemented to allow users to decide.\r\nSo here a user can decide on his own to change the behavior on ordering/sorting the notes in issues.\r\n\r\nThis is good, but new users often do not know what this configuration means. So as a admin I would like to define the defaults for it. So a setting entry in /redmine/settings?tab=display would be great", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-05-14T06:30:14Z", "updated_on": "2021-05-14T06:30:14Z"}, {"id": 35225, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 3, "name": "Resolved"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 116788, "name": "Sergio Serrano"}, "category": {"id": 2, "name": "Issues"}, "subject": "Edit issue shows date in MM/DD/YYYY while the rest of the application shows YYYY/MM/DD", "description": "Dear redmine community\r\n\r\nIssue list DD-MM-YYYY\r\n\r\nIssue detail DD-MM-YYYY\r\n\r\nIssue edit MM-DD-YYYY\r\n\r\nIssue list and Issue details follows redmine date configuration but issue edit always use the MM-DD-YYYY format.\r\n\r\nPlease, any advice what I'm doing wrong?\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "162"}], "created_on": "2021-05-11T06:39:45Z", "updated_on": "2021-05-12T10:50:04Z"}, {"id": 35224, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 518481, "name": "Marc Cramer"}, "category": {"id": 11, "name": "Projects"}, "subject": "Adding new project impossible with mandatory custom field of type users", "description": "Redmine: 4.1.2\r\nRails: 5.2.4.4\r\nPostgreSQL: 12.5\r\nNo Plugins\r\n\r\nI was just hit by this issue, kind of a logical bug:\r\n\r\nI cannot add a new project if there is a mandatory custom field with a user\r\ndrop-down list, since there are no users initially--but I cannot add users\r\nunless the project has been created...\r\n\r\nTo reproduce:\r\n\r\n- Add a custom field to projects\r\n- Field type: Users\r\n- Make the field mandatory\r\n- Try to add a new project\r\n\r\nExpected behaviour:\r\n\r\n- Find a prefilled list of users in the drop down\r\n- Able to submit (create new project)\r\n\r\nCurrent behaviour:\r\n\r\n- User list is empty (possibly because the project has no users?)\r\n- Toggling inheritage of users does not help\r\n- Cannot submit project because the custom field is still empty but mandatory\r\n\r\nWorkaround:\r\n\r\n- Make custom field optional\r\n- Add project (with empty user selection)\r\n- Add users to the project\r\n- Edit project again and select user from drop down list\r\n\r\n\r\nAm I missing something trivial?\r\n\r\nThanks\r\n\r\n\r\n\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "162"}], "created_on": "2021-05-10T19:35:59Z", "updated_on": "2021-05-14T12:05:54Z"}, {"id": 35221, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 259873, "name": "Mizuki ISHIKAWA"}, "category": {"id": 10, "name": "UI"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "Show public badge on project's overview page when the project is public", "description": "This is a feature related to #35044.\r\nAdding a badge in addition to #35044 's features will make it easier to notice that your project is public.\r\n!{width: 500px; border: 1px solid #ccc}screenshot.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-05-10T00:28:21Z", "updated_on": "2021-05-24T01:53:04Z"}, {"id": 35219, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 10, "name": "Needs feedback"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 519732, "name": "Michaela Pawlowski"}, "category": {"id": 2, "name": "Issues"}, "subject": "Unable to add watchers to existing project in Redmine", "description": "We use Redmine within our organization for project management. Recently, we have noticed an issue where the \u201cadd\u201d button for watchers does not function for pre-existing projects. The \u201cadd\u201d button doesn\u2019t do anything when clicked; however, when adding watchers to a new project, the button works as expected. See below.\r\n\r\n!b19ea10232456ae82a5f7138696ea648.png!\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-05-07T15:47:39Z", "updated_on": "2021-05-19T15:06:01Z"}, {"id": 35217, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 40856, "name": "Jens Kr\u00e4mer"}, "subject": "Replace use of Digest::MD5 / Digest::SHA1 with ActiveSupport::Digest", "description": "Rails introduced @ActiveSupport::Digest@ to allow central configuration of the actual digest implementation that is used throughout Rails. This is helpful in environments where certain digest implementations (most notably, MD5) are not available, i.e. to be \"FIPS\":https://www.nist.gov/itl/fips-general-information compliant.\r\n\r\nThe attached patch replaces all uses of @Digest::SHA1@ and @Digest::MD5@ with @ActiveSupport::Digest@. Without further configuration, this will result in @Digest::SHA1@ being used in all these instances since that's the current Rails default. This can be changed by users via the \"config.active_support.hash_digest_class setting\":https://github.com/rails/rails/pull/40213 , i.e.:\r\n\r\n
    \r\nRails.application.config.active_support.hash_digest_class = OpenSSL::Digest::SHA256\r\n
    \r\n", "done_ratio": 0, "created_on": "2021-05-07T03:02:16Z", "updated_on": "2021-05-07T13:14:53Z"}, {"id": 35215, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 470755, "name": "der gl0wn"}, "subject": "tribute.js third party library localization", "description": "Hello there,\r\n\r\nit would be very helpful if we would be able to change the \"No Match Found!\" message that is included via the third party library tribute.js. I could hardcode it into the file itself, but that just seems odd.\r\n\r\nBest regards", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-05-06T09:02:47Z", "updated_on": "2021-05-10T14:49:25Z"}, {"id": 35212, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 3959, "name": "Shaun Gilroy"}, "category": {"id": 2, "name": "Issues"}, "subject": "Issues controller_issues_edit_* hooks not firing on bulk edit actions", "description": "I'm not sure if this was the intended functionality or not, but it seems like a bug to me. We discovered in our installation of redmine 4.2.0.stable that when issues are edited through bulk update actions (right clicking from the issue list) that the following hooks do not trigger:\r\n\r\n* controller_issues_edit_before_save\r\n* controller_issues_edit_after_save\r\n\r\nUpon closer examination of the system, I discovered that the IssueController.bulk_update method does not call the before and after issue.save\r\n\r\nThis seems like an unintentional oversight, so I'm reporting it here. We fixe the issue by simply editing the method in our copy of the application. But this only fixes the issue for us.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "152"}], "created_on": "2021-05-05T16:20:23Z", "updated_on": "2021-05-05T16:20:23Z"}, {"id": 35199, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 12098, "name": "Martin Cizek"}, "category": {"id": 20, "name": "Plugin API"}, "subject": "HookTest resets all listeners - core tests run inconsistently with plugins", "description": "When a test runner is invoked and the tests include either @test/integration/lib/redmine/hook_test.rb@ or @test/unit/lib/redmine/hook_test.rb@, there is a side effect that all hooks classes / listeners are cleared. It is probably related to hook listeners being stored in class variables.\r\n\r\nThis may affect other tests, but most importantly, it makes it difficult to verify redmine core integrity with plugins in place. While plugins' patches are still applied, the listeners are not guaranteed and the results differ between e.g. @rake test@ and @rake test:functionals@.\r\n\r\nMore info about the context below.\r\n\r\n---\r\n\r\nAlthough this might not be necessarily a defect - maybe core tests are not supposed to run with plugins - the consequences of plugin developers not running the core tests are terrible and affect the reputation of whole Redmine ecosystem.\r\n\r\nWhat we've observed:\r\n* We have run Redmine core tests with plugins we use.\r\n* It's even difficult to find a plugin that doesn't break anything in the core.\r\n* A logical objection would be \"plugins modify core functionality, so it's normal that core tests are not passing\". But this turned out NOT to be the case. In fact:\r\n* Around 50% of the errors and failures are that the implementation is not robust enough to withstand testing.\r\n* And the other 50% are user-reproducible bugs, which would have been discovered if core tests had been run.\r\n* In the end, we have not observed any error or failure caused by intentional plugin behavior.\r\n\r\nBased on your feedback, I can provide specific examples and will be happy to update [[plugin_tutorial]] to encourage core testing.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-05-02T22:57:12Z", "updated_on": "2021-05-10T19:26:57Z"}, {"id": 35196, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 519176, "name": "Philippe Cloutier"}, "category": {"id": 56, "name": "Issues filter"}, "subject": "Version tracking (allow filtering out tickets which don't affect given version)", "description": "I am new to Redmine, but one basic feature which appears to be missing is version tracking. There are 2 angles in which version tracking helps:\r\n# It clarifies which versions a given issue affects (mostly relevant to developers).\r\n# It allows to filter out issues which do not affect the version relevant (mostly relevant to users).\r\n\r\nFor me, #2 is the most important benefit. For example, Redmine currently has over 10 thousand issues reported. But it may be that fewer than 5 thousand of these affect the current version (4.2.1). It is therefore critical to properly evaluating a product to have the ability to limit displayed tickets. It is also seriously inefficient to search and report issues in mature software without such a feature.\r\n\r\nA basic scenario is that if a certain issue x is solved in version 2.0, then that issue does not affect version 2.0. However, there are more complex cases. For example, that same issue does not affect version 2.1, as version 2.1 is ulterior to 2.0.\r\n\r\nUnfortunately, this can get tricky. There are cases where a solution is reverted. For example, if issue A is reintroduced in version 2.2, then version 2.3 may be affected, even if it is ulterior to 2.0.\r\n\r\nEven for simpler cases when an issue is solved once for good, branches complicate things. For example, if issue B affects version 1.0.0 but is fixed in version 1.0.3, is version 1.1 affected? Without more information, that cannot be answered.\r\n\r\n\r\nThe ITS engine which properly implements this that I know is Debbugs: https://lwn.net/Articles/144106/\r\nA demonstration of aspect #1 can be seen on \"this libkate issue's graphic\":https://bugs.debian.org/cgi-bin/version.cgi?absolute=0;collapse=1;fixed=libkate%2F0.4.1-5;format=png;found=libkate%2F0.4.1-4;height=;info=1;package=liboggkate-dev;width=;ignore_boring=0\r\nRed versions are affected, green versions are not. Grey versions are those about which the ITS cannot decide.\r\n\r\nDebbugs's approach is to scan changelogs to compute a version ancestry tree. This is very efficient, but based on Debian's mandatory and uniform changelogs. This approach won't readily be usable with Redmine. An alternative would be to enhance versions management allowing administrators to manually build their product's version ancestry tree, or to start with basic semantic inference (if an issue is solved in version 2.0.0, it does not affect versions 2.1.0 and ulterior).\r\n\r\n\r\nThere are several types of version indications possible.\r\n# The best indications are certain, based on code analysis. For example, if a commit which clearly introduces a defect is made between versions 2.0.1 and 2.0.2, then we can indicate in the ticket that version 2.0.2 introduces the issue.\r\n# Very often, indications are unfortunately not so certain, and based on behavior. For example, if a test reveals a defect in version 2.0.1 and the same test does not reveal the same defect in version 2.0.0, we have an indication that version 2.0.1 may have introduced that defect, whose certitude depends on how reproducible the bug is.\r\n\r\nIdeally, tickets could take precise indications about issue introductions and solutions, and Redmine would be able to tell, for any given issue and product version, the risks that it is affected. For example, a given version may:\r\n* *Not be affected* by issue _x_\r\n* *Be affected* by issue _y_\r\n* *Have a 1 in 5 chance of being affected* by issue _z_\r\n\r\nIn practice, that would be quite an achievement. It would already be vastly superior to match Debbugs and simply manage to tell *whether an issue affects, doesn't affect, or may affect* a version, and I will consider this issue solved once that level has been reached.\r\n\r\n\r\nBuilding blocks necessary to achieve this include the aforementioned version indications (possibility to mark certain versions as affected and/or introducing issues, as well as the converse possibility to mark as unaffected and/or solving). This building blocks are treated in ticket #685 (found in version) and ticket #219 (fixed in multiple versions). Defining a version inheritance tree is related to ticket #18126.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-05-02T21:25:03Z", "updated_on": "2021-05-02T21:25:03Z"}, {"id": 35192, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 519068, "name": "Jean-Ren\u00e9 ROUET"}, "assigned_to": {"id": 107353, "name": "Marius BALTEANU"}, "category": {"id": 2, "name": "Issues"}, "subject": "Watchers pop up window appears after a long time", "description": "Hi\r\n\r\npatch #33329 introduces a performance issue\r\n\r\nWhen you want to add a watcher to an issue in a project with many collaborators, the pop-up window take between 10 sec and 20 sec (according to the number of collaborators) to appear.\r\nIt's very disturbing because user has no graphical indication about that.\r\n\r\nregards", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "165"}], "created_on": "2021-04-30T15:42:00Z", "updated_on": "2021-05-04T06:56:24Z"}, {"id": 35189, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 343718, "name": "Yoann AMICHAUD"}, "category": {"id": 9, "name": "Email notifications"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "New email notification option - events of my bookmarked projects", "description": "For now, if you want to be informed about all events of a huge projects portfolio, I have to update the list behind \"For any events of the selected projects only...\" quite often. \r\nIt would be really great if we can receive all notifications of the bookmarked projects adding a new option in the notification option list : \"For any events of my bookmarked projects only...\"\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-30T09:11:54Z", "updated_on": "2021-06-17T04:59:28Z"}, {"id": 35178, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 3866, "name": "Felix Sch\u00e4fer"}, "category": {"id": 30, "name": "Code cleanup/refactoring"}, "subject": "Make adding project settings tabs easier", "description": "Currently it is quite cumbersome to add a tab to the projects settings. It is necessary to patch the @ProjectsHelper@ and override the @project_settings_tabs@, which can be dangerous if the behaviour of the checks in the method change and patching helpers can lead to problems due to load orders.\r\n\r\nI would suggest to at least extract the list of tags from the method to a constant like for the @CustomFieldsHelper::CUSTOM_FIELDS_TABS@ list. This would have the added benefit that it would not be necessary to duplicate any logic from the @project_settings_tabs@ to a plugin if needed.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-28T15:19:20Z", "updated_on": "2021-04-28T15:22:09Z"}, {"id": 35176, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 461592, "name": "Barty Kacz"}, "category": {"id": 19, "name": "Attachments"}, "subject": "Multiple files for issues custom filed", "description": "I can create multiple file custom fields and add it to issue tracker but for each of this field I can add only one attachment.\r\nFor the generic Files field I can add multiple files.\r\nIs it something that I can change in admin panel?", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-28T08:13:22Z", "updated_on": "2021-04-28T08:13:22Z"}, {"id": 35168, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 427018, "name": "David L"}, "category": {"id": 50, "name": "Activity view"}, "subject": "Activity tab not showing recent data", "description": "Even though I committed a change, it does not show up in Activity.\r\n\r\nIssues, Changesets and News were enabled in the Activity view filters.\r\n\r\nI have noticed this problem with regular issues in the past. I linked Redmine to revisions and now see it with that.\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "160"}], "created_on": "2021-04-27T06:02:20Z", "updated_on": "2021-04-27T06:02:20Z"}, {"id": 35153, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 31332, "name": "Kota Shiratsuka"}, "category": {"id": 10, "name": "UI"}, "subject": "Add a touch icon", "description": "The image was edited using [[Logo]]", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-04-25T10:56:26Z", "updated_on": "2021-04-27T11:08:56Z"}, {"id": 35141, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 517598, "name": "Yuriy Millen"}, "category": {"id": 23, "name": "Issues permissions"}, "subject": "Irrelevant groups in \"Add watchers\" list", "description": "Redmine 4.2 introduced an ability to add groups to watchers list.\r\n\r\nThe logic prior was that in the \"Add watchers\" list appeared only users, who have access to a particular tracker. However, this logic is ignored for groups - it is possible to add any group regardless of a whether this group was access to the tracker or not.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "152"}], "created_on": "2021-04-21T14:01:30Z", "updated_on": "2021-04-21T14:01:30Z"}, {"id": 35138, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 8, "name": "Reopened"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 517543, "name": "Jan Kokert"}, "category": {"id": 16, "name": "Search engine"}, "subject": "Allow Version custom fields to be searchable", "description": "Currently, the global search does not take the values of the custom fields into account.\r\nCan you please add this? Many thanks in advance!\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-21T09:36:34Z", "updated_on": "2021-05-13T08:45:52Z", "closed_on": "2021-04-22T12:00:36Z"}, {"id": 35132, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 365663, "name": "Markus Boremski"}, "category": {"id": 14, "name": "Custom fields"}, "subject": "Custum field default value has no effect if field is inaccessible", "description": "Unfortunately with 4.1.2 we now have an issue regarding #33550.\r\nIf we set a default value and the reporting person is not able to edit the field, the default value has no effect.\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "162"}], "created_on": "2021-04-20T05:45:10Z", "updated_on": "2021-05-03T20:22:34Z"}, {"id": 35104, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 12098, "name": "Martin Cizek"}, "category": {"id": 26, "name": "Text formatting"}, "subject": "Code blocks - consistent rendering and retaining user-supplied language name in rendered HTML", "description": "This patch:\r\n\r\n* Makes code block rendering consistent across formats, which is important for plugins, client-side scripts and styling.\r\n* Makes sure rendered language name is escaped.\r\n* Exposes user-supplied language name in an HTML attribute, so that client-side scripts and Redmine plugins can always access it.\r\n\r\nThe patch applies to the current Textile and Markdown formatters. The very same change to the planned CommonMark formatter will be attached to #32424.\r\n\r\nPlease see below for design decisions rationale.\r\n\r\nh3. Code block rendering\r\n\r\n**@<pre><code>@ vs. -just @<pre>@-**:\r\nTextile supports blocks without code (@<pre>...</pre>@), while code can be part of such blocks. Typically, there is just one and only code block per @<pre>@ block, but it's possible to have more than one code block in a @<pre>@ block. So in general, we cannot avoid the @code@ tag in the HTML rendered from Textile.\r\n\r\nWhile it is possible to render only the @pre@ tag for Markdown code blocks and rendering libraries do have option for that, we should use the @code@ tag too to be consistent. Fortunatelly, this is already the case and it is even what CommonMark spec suggests.\r\n\r\n-**No-code blocks in Markdown**-\r\nMarkdown does not have preformatted blocks except for code blocks. Code blocks are either idented or fenced, but both are meant to represent code (\"spec\":https://spec.commonmark.org/0.29/#indented-code-blocks).\r\nThe fenced code blocks can also carry an info string, which is used to determine the languge of the code.\r\n\r\n**Comparison of different renderers:**\r\n\r\n|_<. Formatter |_. No-code block \u2192 HTML |_. Code block w/o lang \u2192 HTML |_. Code block with supported lang \u2192 HTML |_. Code block with unsupported lang \u2192 HTML |\r\n|_<. Redmine Textile | @<pre>...</pre>@ | @<pre><code>...</code></pre>@ | @<pre><code class=\"ruby syntaxhl\">...</code></pre>@ | @<pre><code>...</code></pre>@ |\r\n|_<. CommonMark reference renderer | N/A | @<pre><code>...</code></pre>@ | @<pre><code class=\"language-ruby\">...</code></pre>@ | @<pre><code class=\"language-foo\">...</code></pre>@ |\r\n|_<. Redmine Markdown | N/A | @<pre>...</pre>@ | @<pre><code class=\"ruby syntaxhl\">...</code></pre>@ | @<pre>...</pre>@ |\r\n|_<. Redmine CommonMark #32424 | N/A | @<pre><code>...</code></pre>@ | @<pre><code class=\"ruby syntaxhl\">...</code></pre>@ | @<pre>...</pre>@ |\r\n\r\nIt's quite obvious that we should follow the Textile behavior to be consistent.\r\n\r\nh3. Original data language\r\n\r\nThe user-supplied language information is currently dropped if the particular language does not have any lexer for syntax highlighting. However, there are several use cases when this information is valuable:\r\n* Plugins like \"redmine_wysiwyg_editor\":https://redmine.org/plugins/redmine_wysiwyg_editor\r\n* Data format converters like \"redmine_reformat\":https://redmine.org/plugins/redmine_reformat\r\n* Client-side scripts that could render or decorate specific languages in their own way, e.g. \"mermaid\":https://mermaid-js.github.io/mermaid/#/\r\n\r\nFor the reasons above, the information has to be carried on the @code@ tag. I've examined a few projects and libraries related to the topic to find an appropriate name for such attribute. The conclusion is to use @<code data-language=\"foo\" ...>@.\r\n\r\n**Resulting code block rendering:**\r\n|_<. Formatter |_. No-code block \u2192 HTML |_. Code block w/o lang \u2192 HTML |_. Code block with supported lang \u2192 HTML |_. Code block with unsupported lang \u2192 HTML |\r\n|_<. All Redmine formatters | @<pre>...</pre>@ | @<pre><code>...</code></pre>@ |\r\n@<pre><code class=\"ruby syntaxhl\" data-language=\"ruby\">...</code></pre>@ | @<pre><code data-language=\"foo\">...</code></pre>@ |\r\n\r\nh3. Quality Assurance, Security & Compatibility\r\n\r\n* +QA+: Added new unit tests and updated the existing ones.\r\n* +Security+: Previously, Textile formatter did not escape language name and relied on validating it against syntax highlighter, while expecting language names to be safe. Language names are now always subject to escaping.\r\n* +Compatibility+:\r\n** The rendered HTML is now the same as the HTML from Textile.\r\n** The added @data-language@ attribute should be indeed ignored by unconcerned components.\r\n** I don't really expect that anybody to rely on getting @<pre>@ and not @<pre><code>@, especially when it is the current behavior of Textile. I've verified this on redmine_wysiwyg_editor as a rare example of a potentially concerned plugin.\r\n\r\nSo I'm convinced it is safe to include this in any minor release.", "done_ratio": 0, "created_on": "2021-04-15T19:29:21Z", "updated_on": "2021-06-03T12:46:34Z"}, {"id": 35103, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 94920, "name": "James H"}, "category": {"id": 8, "name": "Administration"}, "subject": "Administration Groups & Users Lags with Many Projects", "description": "This applies to the Groups page, Users page, and possibly others.\r\n\r\nWhen you navigate into the Groups page, it tries to load a few tabs of information. \r\nI have many projects and some users or groups are members of many of them and it takes a very long time to load these pages to even do simple changes. Sometimes unusable.\r\nI suspect the problem is due to the other tabs trying to load all of the related information e.g. all of the projects they are members of.\r\n\r\nCan the projects page be paginated with a sort that makes sense? \r\nIdeally something like the issues viewing list would be most powerful, but most time consuming. \r\nA simple searchable/paginated list of some kind would be great, or just not loading the projects until you go into that tab or similar.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-15T18:09:58Z", "updated_on": "2021-04-15T18:37:37Z"}, {"id": 35102, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 98872, "name": "Pan Tau"}, "subject": "Issue Tracking Details are showning issue statuses even if they are not used within the project", "description": "The Issue Tracking Details show all issue statuses of all trackers used in the project, \r\neven if no project-role uses them in their workflow.\r\n\r\nThat becomes an problem if have many projects using for example the tracker \"Defect\"\r\nand some of the projects have additional issue statuses.\r\nBecause you get an really long table und header and most of the statuses are not used within the project.\r\n\r\nIt would be helpful to filter the shown statuses by project-trackers and their project-role-workflows.\r\n\r\n!many_not_used_issue_statuses.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "152"}], "created_on": "2021-04-15T09:02:37Z", "updated_on": "2021-04-15T09:02:37Z"}, {"id": 35090, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 3866, "name": "Felix Sch\u00e4fer"}, "category": {"id": 10, "name": "UI"}, "subject": "Permission check mismatches button semantics", "description": "In source:/tags/4.2.0/app/views/issues/index.html.erb#L16 the link goes to the @issues@ tab of the project settings. The button is only shown if the user has the @manage_categories@ permission but the permission required for this tab is @edit_project@ source:/tags/4.2.0/app/helpers/projects_helper.rb#L28\r\n\r\nNote that this is only a UI issue, the button might be shown to users that cannot see the tab that it links to or the button might not be shown to users that would be able to see the tab that it links too, but upon following the link the correct permission is checked. There also is no information disclosure associated with this issue.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "152"}], "created_on": "2021-04-14T10:23:28Z", "updated_on": "2021-04-14T10:26:20Z"}, {"id": 35081, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 44, "name": "Rails support"}, "subject": "Update config/environments/*.rb for Rails 6.1", "description": "The attached patch updates Rails environment files (development.rb, production.rb, and test.rb in config/environments directory) for Rails 6.1.\r\n\r\nBy updating the files, several useful new features in Rails 6.1 will be available (e.g. request_id in production.log, verbose_query_logs in development.log). Also, by looking at the commented out settings, the user can easily know what settings are available (e.g. config.force_ssl in config/environments/production.rb).", "done_ratio": 0, "created_on": "2021-04-13T02:21:30Z", "updated_on": "2021-07-04T16:42:44Z"}, {"id": 35077, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 516036, "name": "Dcn Spyridon Papa"}, "category": {"id": 14, "name": "Custom fields"}, "subject": "Custom Strings as Unique Identifiers for issues", "description": "Hello everybody,\r\nI am completely new to Redmine so please forgive me if i am asking nonsensical, obsolete or stupid questions. I need your help and would be very grateful to anyone who can provide us with assistance!\r\nWe are running a large project, which involves the digitisation of cultural heritage. We have an interdisciplinary mix of teams from various institutions, with multiple levels and types of expertise in different areas. Therefore this is not solely a software development project but also involves the management of digitisation procedures, methodology development, webpage development, UI development, reporting, publications etc...\r\nWe have chosen Redmine after a lot of research following recommendations from our partners and now we have set up Redmine on a server and will commence enrichment. We have an existing system for numbering and codifying our tasks and issues. However, looking at Redmine i can see it automatically assigns numbers to issues. Is it feasible to assign our own numbering and codification scheme on existing tasks, features and projects? It will be confusing for us to be seeing a task numbered #34 when we already have the code 3.1.2 for it. We have dozens of tasks and subtasks and relative issues are anticipated to amount to thousands. Any suggestions how we might be able to have the header of the particular issue to be presented as \"3.1.2 ISSUE TITLE\" rather than \"#34 ISSUE TITLE\"?\r\nI will be very grateful for any help.\r\nAll the best to all,\r\nDS", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-12T10:38:18Z", "updated_on": "2021-04-12T10:38:18Z"}, {"id": 35073, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 40856, "name": "Jens Kr\u00e4mer"}, "category": {"id": 21, "name": "Database"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "escape values in LIKE statements to prevent injection of placeholders (_ or %)", "description": "While not technically a security risk, LIKE queries with lots of placeholders can result in high database load, very slow query execution and therefore are a possible vector for denial of service attacks. Further, escaping the wildcard characters in actual query values now allows to actually search for values containing these characters.\r\n\r\nThe attached patches, which have been extracted from \"Planio\":https://plan.io/redmine-hosting are:\r\n\r\n* The first patch removes '%' signs from query strings used in the search test case. These did not matter until now since they just resulted in queries like @field LIKE '%%value%%'@, but now would be looking for a value with literal percent signs. Tests pass before and after that change.\r\n* Patches 2-4 add @sanitize_sql_like@ calls to the various places where we currrently generate sql LIKE statements. Corresponding tests are included.\r\n* The last patch is just a cosmetic change that replaces a @.send@ with a direct call since the called method is now public.\r\n", "done_ratio": 0, "created_on": "2021-04-12T06:50:57Z", "updated_on": "2021-07-29T04:59:56Z"}, {"id": 35066, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 36999, "name": "J\u00e9r\u00f4me BATAILLE"}, "category": {"id": 13, "name": "Time tracking"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "Create time entry and add another on project, initialize project_id", "description": "While using *create and add another* button with \"a plugin I have developed\":https://www.redmine.org/plugins/redmine_queries_for_time_report I have an issue with an empty drop-down in a custom field :\r\n# first step :\r\n!Project_Enumerations_create_and_add_another.png!\r\n# second step :\r\n!Project_Enumerations_create_and_add_another2.png!\r\n\r\nThe issue is caused by a missing intialisation of the TimeEntry.\r\nHere is a patch to fix this.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-09T22:09:01Z", "updated_on": "2021-05-25T11:18:42Z"}, {"id": 35062, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 3866, "name": "Felix Sch\u00e4fer"}, "subject": "Back URLs with \r\n# Title\r\n\r\n## Heading 2\r\n\r\n- item\r\none\r\n-\r\nnot a heading\r\n\r\n## Heading 2\r\nNulla nunc nisi, egestas in ornare vel, posuere ac libero.\r\n\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-05T14:00:34Z", "updated_on": "2021-04-05T14:00:34Z"}, {"id": 35035, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 12098, "name": "Martin Cizek"}, "category": {"id": 26, "name": "Text formatting"}, "subject": "Refactor text formatting to HTML::Pipeline", "description": "After merging the CommonMark patch #32424, Redmine will contain an @HTML::Pipeline@ implementation limited to this new format. It makes then perfect sense to extend the new concept to text formatting generally.\r\n\r\nThe current implementation looks like:\r\n!Text_Formatting-Redmine-4.2.png!\r\n\r\nWhile the new Markdown (CommonMark) implementation is designed like:\r\n!CommonMark-HTML_Pipeline.png!\r\n\r\nMigrating text rendering to @HTML::Pipeline@ should provide several benefits:\r\n* Better separation of concerns.\r\n* Cleaner, safer and DRY code.\r\n* Individual formatters can be freed from excessive restrictions that were introduced as XSS prevention. Especially the absolute prohibition of HTML tags can be pain in specific cases.\r\n* More consistent behavior among formatters (e.g. HTML is currently escaped in Textile, but dropped in Markdown),\r\n* **Controlled level of security** without the need to rely on individual formatter implementations that often use poorly maintained libraries.\r\n* More flexibility for Redmine developers and Redmine plugin developers. Adding some hooks would be nice and would allow e.g. implementing @mermaid@ charts as a custom syntax highlighter - in the same way as GitLab.\r\n\r\nSome inspiration \"can be found in GitLab sources\":https://gitlab.com/gitlab-org/gitlab/-/tree/master/lib/banzai/pipeline, but our pipelines would probably won't need to go that complex.\r\n\r\nIf there were no other timing considerations, it would make sense to implement this together with Redcarpet removal.\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-05T13:28:42Z", "updated_on": "2021-04-12T02:31:44Z"}, {"id": 35028, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 21060, "name": "Ivan Cenov"}, "assigned_to": {"id": 107353, "name": "Marius BALTEANU"}, "category": {"id": 45, "name": "Gems support"}, "subject": "Deprecation message when executing 'bundle install'", "description": "Here is a part of the console output when upgrading Redmine to version 4.2.0:\r\n
    \r\nE:\\data\\redmine>bundle install --without test development\r\n[DEPRECATED] The `--without` flag is deprecated because it relies on being remembered across bundler invocations, which bundler will no longer do in future versions.\r\nInstead please use `bundle config set without 'test development'`, and stop using this flag\r\n[DEPRECATED] Your Gemfile contains multiple primary sources. Using `source` more than once without a block is a security risk, and may result in installing unexpected gems.\r\nTo resolve this warning, use a block to indicate which gems should come from the secondary source.\r\nTo upgrade this warning to an error, run `bundle config set disable_multisource true`.\r\nYour Gemfile lists the gem rake (>= 0) more than once.\r\nYou should probably keep only one of them.\r\nRemove any duplicate entries and specify the gem only once.\r\nWhile it's not a problem now, it could cause errors if you change the version of one of them later.\r\n
    \r\n\r\nEspecially this part:\r\n
    \r\n[DEPRECATED] Your Gemfile contains multiple primary sources. Using `source` more than once without a block is a security risk, and may result in installing unexpected gems.\r\nTo resolve this warning, use a block to indicate which gems should come from the secondary source.\r\n
    Is it something dangerous? I am not a ruby on rails programmer and cannot tell...", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "152"}], "created_on": "2021-04-04T09:52:45Z", "updated_on": "2021-04-04T18:44:49Z"}, {"id": 35027, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 34, "name": "Gantt"}, "fixed_version": {"id": 33, "name": "Candidate for next minor release"}, "subject": "Gantt PNG export ignores imagemagick_convert_command", "description": "Gantt PNG export uses ImageMagick's convert command, but it ignores imagemagick_convert_command in configration.yml.\r\n\r\nSteps to reproduce:\r\n\r\n1. Set incorrect command name (e.g. @/usr/bin/_convert@) to imagemagick_convert_command in configration.yml\r\n2. Restart Redmine\r\n3. Export gantt to PNG. It should not work because imagemagick_convert_command is wrong, but it works fine.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "127"}], "created_on": "2021-04-04T06:54:48Z", "updated_on": "2021-06-19T08:47:39Z"}, {"id": 35014, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 107353, "name": "Marius BALTEANU"}, "assigned_to": {"id": 107353, "name": "Marius BALTEANU"}, "category": {"id": 21, "name": "Database"}, "fixed_version": {"id": 155, "name": "5.0.0"}, "subject": "Review and update supported database engines and versions ", "description": "Supported database engines and versions were not been updated for a while and we should do it in Redmine version:\"5.0.0\". ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-03T06:37:11Z", "updated_on": "2021-04-04T08:29:53Z"}, {"id": 35001, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 7, "name": "Accounts / authentication"}, "subject": "Disable API authentication with username and password when two-factor authentication is enabled for the user", "description": "In Redmine 4.2, two-factor authentication has been introduced.\r\n\r\nWhen two-factor authentication is enabled, it becomes difficult for an attacker to log in to Redmine even if he knows the username and password.\r\n\r\nHowever, API authentication is not covered by two-factor authentication. Currently, there are three methods of API authentication:\r\n\r\n1. send the user's API key via X-Redmine-API-Key header\r\n2. basic authentication with the user's API key ( username is the API key and password is a random string)\r\n3. basic authentication with user name and password\r\n\r\nIf you have two-factor authentication enabled, I think the third method will be problematic. This is because even though the web UI can prevent an attacker from logging in with an illegally obtained username and password, they can still use that username and password to access the data via the API.\r\n\r\nTo address this risk, I suggest disabling basic authentication with username and password for users who have two-factor authentication enabled.\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-04-02T03:18:53Z", "updated_on": "2021-04-02T03:26:27Z"}, {"id": 34995, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 514581, "name": "rafaelteb rafaelteb"}, "category": {"id": 29, "name": "Email receiving"}, "subject": "Running redmine in docker getting ssl error, any ideas what might be the issue?", "description": "Im having an issue with SSL. Im getting pretty crazy currently. Got the feeling that I miss something really simple :D\r\n\r\nWould be very thankful for any help.\r\nMaybe I should add rufus to a Dockerfile like its done here: https://github.com/docker-library/redmine/issues/64?\r\n\r\nCurrently wanted to setup with cron. But Im constantly getting this error:\r\n\r\n**`rake aborted!\r\nOpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate)`**\r\n\r\nMentioned error occurers when I use this command:\r\n`bundle exec rake -f /usr/src/redmine/Rakefile redmine:email:receive_imap RAILS_ENV=\"production\" host=xxx port=993 username=xxx password=xxx ssl=true project=testproject folder=INBOX move_on_success=processed move_on_failure=failed no_permission_check=1 unknown_user=accept`\r\n\r\nFunny thing: When I dirtily switch off ssl-checking by ruby **with some sort of hack, all is working**. I added a file here in /usr/src/redmine/config/initializers/bypass_ssl_verification_for_open_uri.rb with this:\r\n\r\n```\r\nrequire 'openssl'\r\nOpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE\r\n```\r\n\r\nAlso, I did setup ssl. I use redmine passenger with cert files in /usr/local/ca-certifications.\r\nMy Dockerfile looks like this:\r\n\r\n````FROM redmine:4.1.0-passenger\r\n\r\n#install packages\r\nRUN apt update && apt -y install build-essential ca-certificates ruby-xapian\r\n\r\n#import certificates for https\r\nCOPY certificates/redmine.pem /usr/local/share/ca-certificates/\r\nCOPY certificates/redmine.key /usr/local/share/ca-certificates/\r\n#not sure why permissions need to be relaxed...\r\nRUN chmod -R 777 /usr/local/share/ca-certificates/\r\n\r\n\r\nCMD [\"passenger\", \"start\", \"--ssl\", \"--ssl-certificate\", \"/usr/local/share/ca-certificates/redmine.pem\", \"--ssl-certificate-key\", \"/usr/local/share/ca-certificates/redmine.key\", \"--ssl-port\", \"443\"]\r\n````\r\n\r\nAnd my docker-compose.yml looks like this:\r\n````\r\nversion: '3.1'\r\n\r\nservices:\r\n web:\r\n build: .\r\n restart: always\r\n ports:\r\n - 8080:3000\r\n - 443:3443\r\n environment:\r\n REDMINE_DB_MYSQL: db\r\n REDMINE_DB_PASSWORD: example\r\n volumes:\r\n - /data/redmine/redmine-files:/usr/src/redmine/files\r\n - /data/redmine/redmine-plugins:/usr/src/redmine/plugins\r\n - /data/redmine/redmine-themes:/usr/src/redmine/public/themes\r\n db:\r\n image: mysql:5.7\r\n restart: always\r\n environment:\r\n MYSQL_ROOT_PASSWORD: example\r\n MYSQL_DATABASE: redmine\r\n volumes:\r\n - /data/redmine/mysql:/var/lib/mysql\r\n ````\r\n\r\nAny ideas? Very thankfull for tips and help ;)\r\nBest", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "159"}], "created_on": "2021-03-31T13:18:57Z", "updated_on": "2021-03-31T13:18:57Z"}, {"id": 34992, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 3, "name": "Resolved"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "assigned_to": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 33, "name": "Ruby support"}, "fixed_version": {"id": 155, "name": "5.0.0"}, "subject": "Ruby 3.0 support", "description": "Ruby 3.0.0 has been released on 25 Dec 2020.\r\nhttps://www.ruby-lang.org/en/news/2020/12/25/ruby-3-0-0-released/\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": "Fixed"}], "created_on": "2021-03-31T06:40:02Z", "updated_on": "2021-04-03T09:12:02Z"}, {"id": 34988, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 308290, "name": "Bernhard Rohloff"}, "category": {"id": 24, "name": "Documentation"}, "subject": "Add new notification settings for priority based notification to the user guide", "description": "", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-30T12:04:05Z", "updated_on": "2021-03-30T14:18:21Z"}, {"id": 34987, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 123153, "name": "Pavel Rosick\u00fd"}, "category": {"id": 44, "name": "Rails support"}, "subject": "Rails 6.1 destroy async", "description": "Rails 6.1 has a new feature that allows associations to be destroyed asynchronously.\r\n\r\nhttps://bigbinary.com/blog/rails-6-1-allows-associations-to-support-destroy_async-option-with-dependent-key", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-30T11:06:00Z", "updated_on": "2021-03-30T11:06:00Z"}, {"id": 34981, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 43, "name": "Project settings"}, "subject": "Allow to change a project identifier", "description": "Currently, it is not possible to change the identifier of a project. However, you may want to change the project identifier if, for example, you come up with a better identifier later, or if the purpose of the project changes.\r\n\r\nThe problem with changing the project identifier is that the identifier is used as part of URLs, so links from outside Redmine will be invalid.\r\n\r\nHowever, if a person who manages the project (means a member who has \"Edit project\" permission) understands and accepts the disadvantages of changing a project identifier, I think there is no problem to allow changing it. In fact, I am sometimes asked by customers how to change a project identifier.\r\n\r\nMy suggestions:\r\n* Allow to change a project identifier in /projects//settings page\r\n* For Display a warning below the Identifier field on the form (eg: \"Changing the identifier will change the URL of this project and may break links using the URL\")", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-30T02:42:09Z", "updated_on": "2021-07-27T09:55:17Z"}, {"id": 34978, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 107353, "name": "Marius BALTEANU"}, "fixed_version": {"id": 155, "name": "5.0.0"}, "subject": "Drop support for IE 11", "description": "Beginning August 17, 2021, the remaining Microsoft 365 apps and services will no longer support IE 11. Microsoft Teams already ended support. More details \"here\":https://techcommunity.microsoft.com/t5/microsoft-365-blog/microsoft-365-apps-say-farewell-to-internet-explorer-11-and/ba-p/1591666#:~:text=Today%2C%20we're%20announcing%20that,no%20longer%20support%20IE%2011.\r\n\r\nIt's time to drop support for IE11 and supports only Microsoft Edge (Chromium version)", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-28T17:48:43Z", "updated_on": "2021-04-04T01:53:11Z"}, {"id": 34974, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 332, "name": "Go MAEDA"}, "category": {"id": 29, "name": "Email receiving"}, "subject": "Change the default value for \"Preferred part of multipart (HTML) emails\" from \"Text\" to \"HTML\"", "description": "The attached patch changes the default value for \"Preferred part of multipart (HTML) emails\" to \"HTML\".\r\n\r\nThe option to decide whether the text part or the HTML part should be used first when receiving an HTML email was introduced in Redmine 4.1.0 (#30838). At that time, the option to use the HTML part was treated as an experimental feature, and the default was to use the text part as in previous versions.\r\n\r\nOur company has been using the HTML-first option for almost two years, and we have had no problems.\r\n\r\nI think it is time to change the default value for new installations to HTML because the feature is mature enough and more and more emails are sent in HTML format now.\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-28T06:50:58Z", "updated_on": "2021-07-25T05:40:26Z"}, {"id": 34965, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 514068, "name": "Joel Sager"}, "category": {"id": 10, "name": "UI"}, "subject": "UnWatch ticket does not work thows 403 Forbidden when clicked", "description": "When trying to UnWatch a ticket that have watched. It does not work and I get a 403 Forbidden\r\n\r\n\r\nFirebug log: \r\n\r\nXHRDELETEhttps://my.domain.com/watchers/watch?object_id=21079&object_type=issue\r\n[HTTP/1.1 403 Forbidden 227ms]\r\n\r\n\t\r\nDELETE\r\n\thttps://my.domain.com/watchers/watch?object_id=21079&object_type=issue\r\nStatus403\r\nForbidden\r\nVersionHTTP/1.1\r\nTransferred627 B (216 B size)\r\n\r\n\r\nApache Log\r\n\r\nActionController::RoutingError (No route matches [GET] \"/watchers/watch\"):\r\n\r\n\r\n\r\n\r\nEnvironment:\r\n Redmine version 4.1.2.stable\r\n Ruby version 2.6.5-p114 (2019-10-01) [x86_64-linux]\r\n Rails version 5.2.4.5\r\n Environment production\r\n Database adapter Mysql2\r\n Mailer queue ActiveJob::QueueAdapters::AsyncAdapter\r\n Mailer delivery smtp\r\nSCM:\r\n Filesystem \r\nRedmine plugins:\r\n easy_gantt 1.12\r\n easy_gantt_pro 1.10\r\n redmine_agile 1.5.3\r\n redmine_checklists 3.1.16\r\n redmine_contacts 4.3.0\r\n redmine_contacts_helpdesk 4.1.8\r\n redmine_contacts_invoices 4.2.3\r\n redmine_crm_mailchimp 1.0.4\r\n redmine_favorite_projects 2.1.0\r\n redmine_finance 2.1.7\r\n redmine_people 1.5.1\r\n redmine_products 2.1.2\r\n redmine_questions 1.0.2\r\n redmine_reporter 1.0.3\r\n redmine_resources 1.0.2\r\n redmine_work_time 0.4.0\r\n redmine_zenedit 1.0.3\r\n sidebar_hide 0.0.8", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "162"}], "created_on": "2021-03-26T18:06:13Z", "updated_on": "2021-03-26T18:06:13Z"}, {"id": 34957, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 312060, "name": "Alejandro Grijalba"}, "category": {"id": 53, "name": "Performance"}, "subject": "Search issues by custom fields is slow", "description": "We have more than 30k issues, some of them use custom fields.\r\nWe found that searching by custom fields is slow, takes about 20 seconds the search.\r\nIt is slow both searching using API, or searching using GUI.\r\nThe custom field in this case is of type integer.\r\n\r\nThe problem seems to be related to the SQL query that is being done during search.\r\n\r\nThe query looks like this:\r\n
    \r\nSelect * from issues, ...\r\n  AND issues.id IN (SELECT issues.id FROM   issues LEFT OUTER JOIN custom_values\r\n         ...\r\n      )\r\n
    \r\n\r\nThe code for the subquery is at models/issue_custom_field.rb\r\n\r\nThere seem to be performance problems with \"IN\" subqueries in MySQL (https://stackoverflow.com/a/9627668/366209).\r\nIt looks like the subquery cannot be cached in MySQL, only the whole query can. (And that doesn't even help, because SQL cache is flushed when a ticket is created anyway)\r\nIronically the suquery alone runs in less than a second, and the external query alone is fast too.\r\n\r\nSo maybe the suquery could be reworked to use JOIN instead of IN, that's what they suggest in Stack Overflow. That worked in my tests, when I ran modified SQL queries manually.\r\nI wish I could change the code, but it seems a little complicated for me right now.\r\n\r\nOur Redmine was installed from a Bitnami's virtual machine template.\r\n
    \r\nEnvironment:\r\n  Redmine version                3.3.2.stable\r\n  Ruby version                   2.1.10-p492 (2016-04-01) [x86_64-linux]\r\n  Rails version                  4.2.7.1\r\n  Environment                    production\r\n  Database adapter               Mysql2\r\n\r\nMySQL Version: 5.6.35\r\n
    ", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-03-25T17:58:08Z", "updated_on": "2021-03-28T06:12:51Z"}, {"id": 34924, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 3, "name": "Patch"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 44989, "name": "Dhanasingh Krishnapandian"}, "category": {"id": 12, "name": "Translations"}, "subject": "Tamil India language files", "description": "Tamil India language files", "done_ratio": 0, "created_on": "2021-03-18T10:46:12Z", "updated_on": "2021-03-18T10:46:12Z"}, {"id": 34922, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 3866, "name": "Felix Sch\u00e4fer"}, "category": {"id": 10, "name": "UI"}, "subject": "Reload whole time entries form on project change", "description": "Currently parts of the time entries form is reloaded when changing the project/project id, see source:/trunk/app/views/timelog/_form.html.erb@20821#L41\r\n\r\nThis however does not change and restore custom fields for example for time entries.\r\n\r\nWe think this should be changed to reload the whole time entries form similar to what is done for issue forms, see source:/trunk/app/views/issues/_form.html.erb@20821#L15\r\n\r\nDo you think this would be a good addition to Redmine or should this be done another way?", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-03-18T09:42:50Z", "updated_on": "2021-03-18T09:42:50Z"}, {"id": 34917, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 259873, "name": "Mizuki ISHIKAWA"}, "category": {"id": 10, "name": "UI"}, "subject": "Change the label of Remove user action from \"Delete\" to \"Remove\"", "description": "The link that deletes the member record associated with the group appears to delete the user data itself due to the influence of the current label and icon.\r\nHow about adding a button_remove label and using it instead of button_delete?\r\nIn that case, I would like to change the icon as well.\r\n\r\n!{width: 50%; border: 1px solid #ccc}screenshot_2021-03-18_14.15.25.png!\r\n\r\nWhen deleting a watcher record, I think it's a \"delete user\" from the user's point of view. I want to change \"Delete\" to \"Remove\" as well.\r\n!{width: 30%; border: 1px solid #ccc}screenshot_2021-03-18_14.19.31.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-18T05:49:25Z", "updated_on": "2021-03-18T05:49:25Z"}, {"id": 34896, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 259873, "name": "Mizuki ISHIKAWA"}, "category": {"id": 8, "name": "Administration"}, "subject": "PDF thumbnails are not displayed even though \"ImageMagick PDF support available (optional)\" is checked", "description": "This is a issue related to #34397.\r\nDue to recent changes in ImageMagick, PDF cannot be converted to PNG without rewriting the policy.xml file.\r\nhttps://stackoverflow.com/questions/52861946/imagemagick-not-authorized-to-convert-pdf-to-an-image\r\n\r\nI think you should check if ImageMagick has permission to convert PDF to PNG and then check \"ImageMagick PDF support available (optional)\" in Infomation.\r\n!information.png!", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": ""}], "created_on": "2021-03-16T07:21:46Z", "updated_on": "2021-05-05T23:42:47Z"}, {"id": 34870, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 1, "name": "Defect"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 141795, "name": "Adriano Baptistella"}, "category": {"id": 59, "name": "Filters"}, "subject": "Differences in searches for accented words", "description": "Hi, team! \r\nI'm having problem in filter words with accents, see the print down. Have differences \"conv\u00eanio\" and \"convenio\" I would what the filter not had differences accents.\r\nBest regards!\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}, {"id": 4, "name": "Affected version", "value": "160"}], "created_on": "2021-03-09T20:11:23Z", "updated_on": "2021-03-09T20:11:23Z"}, {"id": 34863, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 107353, "name": "Marius BALTEANU"}, "category": {"id": 26, "name": "Text formatting"}, "fixed_version": {"id": 155, "name": "5.0.0"}, "subject": "Change default text formatter for new installations from textile to markdown", "description": "Nowadays, markdown is much more used and known compared with textile. Also, in Redmine, Markdown has better support.\r\n\r\nMy proposal is to change the default setting from textile to markdown.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-09T07:32:49Z", "updated_on": "2021-03-28T06:22:24Z"}, {"id": 34862, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 362529, "name": "Yuichi HARADA"}, "category": {"id": 19, "name": "Attachments"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "Bulk delete forum attachments", "description": "I want to bulk delete attachments on the forum edit page, like a #16410.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-09T05:13:12Z", "updated_on": "2021-03-28T06:22:43Z"}, {"id": 34861, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 362529, "name": "Yuichi HARADA"}, "category": {"id": 19, "name": "Attachments"}, "fixed_version": {"id": 32, "name": "Candidate for next major release"}, "subject": "Bulk delete news attachments", "description": "I want to bulk delete attachments on the news edit page, like a #16410.", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-09T05:12:27Z", "updated_on": "2021-03-28T06:22:52Z"}, {"id": 34860, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 511216, "name": "Bj\u00f6rn Dieding"}, "category": {"id": 9, "name": "Email notifications"}, "subject": "Extended watcher and notification features", "description": "Hi,\r\n\r\nI would like to have more control on how people your me as a watcher and if I shall get notifications or now.\r\n\r\nSo new watcher User Stories can include:\r\n\r\nAs a Redmine User I want to control wheather I can be used as a watcher or not.\r\nAs a Redmine User I want to stop all mail from watches that had been added by others but not me.\r\nAs a Redmine User I want to deny certain users to use me as a watcher.\r\nAs a Redmine Admin I want to warcher permissions so that I can define a group of watchers a group can select.\r\n\r\nI beleive any of those can help my current spam problem.\r\n\r\n", "done_ratio": 0, "custom_fields": [{"id": 2, "name": "Resolution", "value": ""}], "created_on": "2021-03-08T22:19:40Z", "updated_on": "2021-03-08T22:19:40Z"}, {"id": 34858, "project": {"id": 1, "name": "Redmine"}, "tracker": {"id": 2, "name": "Feature"}, "status": {"id": 1, "name": "New"}, "priority": {"id": 4, "name": "Normal"}, "author": {"id": 153583, "name": "Martin von Wittich"}, "category": {"id": 2, "name": "Issues"}, "subject": "Project list when creating/editing issue should be searchable", "description": "We currently have almost 400 projects in our Redmine instance. This makes it very painful to move an issue from one project to the other, because the project list when editing an issue is a simple `