Projects: Issueshttp://projects.andriylesyuk.com/http://projects.andriylesyuk.com/plugin_assets/andriy_lesyuk/images/s-andy.ico2019-02-08T12:15:55ZProjects
Redmine Extended Fields - Bug #2447 (New): Support Redmine 4.0 NoMethodError: undefined method `attr_prot...http://projects.andriylesyuk.com/issues/24472019-02-08T12:15:55ZMarc M
<p>After the upgrade to redmine 4.0, we can not execute “bundle exec rake db:migrate RAILS_ENV=production” <br />NoMethodError: undefined method `attr_protected’ for #<Class:0x0000000950d030></p>
<p>Log:<br /><pre>
** Invoke db:migrate (first_time)
** Invoke db:load_config (first_time)
** Invoke environment (first_time)
** Execute environment
rake aborted!
NoMethodError: undefined method `attr_protected' for #<Class:0x0000000950d030>
Did you mean? attr_reader
/var/lib/gems/2.3.0/gems/activerecord-5.2.2/lib/active_record/dynamic_matchers.rb:22:in `method_missing'
/usr/share/test_redmine/plugins/wiking/app/models/wiki_macro.rb:14:in `<class:WikiMacro>'
/usr/share/test_redmine/plugins/wiking/app/models/wiki_macro.rb:3:in `<top (required)>'
/var/lib/gems/2.3.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/var/lib/gems/2.3.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `block in require'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:257:in `load_dependency'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `require'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:378:in `block in require_or_load'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:37:in `block in load_interlock'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies/interlock.rb:14:in `block in loading'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/concurrency/share_lock.rb:151:in `exclusive'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies/interlock.rb:13:in `loading'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:37:in `load_interlock'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:356:in `require_or_load'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:510:in `load_missing_constant'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:195:in `const_missing'
/usr/share/test_redmine/plugins/wiking/init.rb:101:in `<top (required)>'
/var/lib/gems/2.3.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/var/lib/gems/2.3.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `block in require'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:257:in `load_dependency'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `require'
/usr/share/test_redmine/lib/redmine/plugin.rb:173:in `block in load'
/usr/share/test_redmine/lib/redmine/plugin.rb:164:in `each'
/usr/share/test_redmine/lib/redmine/plugin.rb:164:in `load'
/usr/share/test_redmine/config/initializers/30-redmine.rb:21:in `<top (required)>'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:285:in `load'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:285:in `block in load'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:257:in `load_dependency'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:285:in `load'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/engine.rb:657:in `block in load_config_initializer'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/notifications.rb:170:in `instrument'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/engine.rb:656:in `load_config_initializer'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/engine.rb:614:in `block (2 levels) in <class:Engine>'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/engine.rb:613:in `each'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/engine.rb:613:in `block in <class:Engine>'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/initializable.rb:32:in `instance_exec'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/initializable.rb:32:in `run'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/initializable.rb:61:in `block in run_initializers'
/usr/lib/ruby/2.3.0/tsort.rb:228:in `block in tsort_each'
/usr/lib/ruby/2.3.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
/usr/lib/ruby/2.3.0/tsort.rb:422:in `block (2 levels) in each_strongly_connected_component_from'
/usr/lib/ruby/2.3.0/tsort.rb:431:in `each_strongly_connected_component_from'
/usr/lib/ruby/2.3.0/tsort.rb:421:in `block in each_strongly_connected_component_from'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/initializable.rb:50:in `each'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/initializable.rb:50:in `tsort_each_child'
/usr/lib/ruby/2.3.0/tsort.rb:415:in `call'
/usr/lib/ruby/2.3.0/tsort.rb:415:in `each_strongly_connected_component_from'
/usr/lib/ruby/2.3.0/tsort.rb:349:in `block in each_strongly_connected_component'
/usr/lib/ruby/2.3.0/tsort.rb:347:in `each'
/usr/lib/ruby/2.3.0/tsort.rb:347:in `call'
/usr/lib/ruby/2.3.0/tsort.rb:347:in `each_strongly_connected_component'
/usr/lib/ruby/2.3.0/tsort.rb:226:in `tsort_each'
/usr/lib/ruby/2.3.0/tsort.rb:205:in `tsort_each'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/initializable.rb:60:in `run_initializers'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/application.rb:361:in `initialize!'
/usr/share/test_redmine/config/environment.rb:16:in `<top (required)>'
/var/lib/gems/2.3.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/var/lib/gems/2.3.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in `require'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `block in require'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:257:in `load_dependency'
/var/lib/gems/2.3.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `require'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/application.rb:337:in `require_environment!'
/var/lib/gems/2.3.0/gems/railties-5.2.2/lib/rails/application.rb:520:in `block in run_tasks_blocks'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:273:in `block in execute'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:273:in `each'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:273:in `execute'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:214:in `block in invoke_with_call_chain'
/usr/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:194:in `invoke_with_call_chain'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:238:in `block in invoke_prerequisites'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:236:in `each'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:236:in `invoke_prerequisites'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:213:in `block in invoke_with_call_chain'
/usr/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:194:in `invoke_with_call_chain'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:238:in `block in invoke_prerequisites'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:236:in `each'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:236:in `invoke_prerequisites'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:213:in `block in invoke_with_call_chain'
/usr/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:194:in `invoke_with_call_chain'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/task.rb:183:in `invoke'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:160:in `invoke_task'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:116:in `block (2 levels) in top_level'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:116:in `each'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:116:in `block in top_level'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:125:in `run_with_threads'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:110:in `top_level'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:83:in `block in run'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:186:in `standard_exception_handling'
/var/lib/gems/2.3.0/gems/rake-12.3.2/lib/rake/application.rb:80:in `run'
/var/lib/gems/2.3.0/gems/rake-12.3.2/exe/rake:27:in `<top (required)>'
/usr/local/bin/rake:23:in `load'
/usr/local/bin/rake:23:in `<main>'
Tasks: TOP => db:migrate => db:load_config => environment
</pre></p> SCM Creator (+Github) - Patch #2446 (New): Supports redmine 3.4http://projects.andriylesyuk.com/issues/24462018-11-26T08:37:50Zmizuki ishikawa
<p>The current plugin raises an exception in redmine 3.4.<br /><img src="http://projects.andriylesyuk.com/attachments/download/672/error.png" style="width: 70%;border: 1px solid #ccc;" alt="" /></p>
<p>I wrote a patch to support redmine 3.4.<br />Applying this patch makes it unavailable unless the version is greater than 3.4.<br />Development repository( <a class="external" href="https://github.com/farend/scm-creator">https://github.com/farend/scm-creator</a> )</p>
<p>I think that there are many people who want to use this plugin in redmine 3.4.<br />I hope to be able to use this plugin with redmine 3.4.</p> ISSUE-id - Bug #ISSUE-17 (Under Verification): SVN integration: Commit with new issue-id does not...http://projects.andriylesyuk.com/issues/ISSUE-172018-07-19T08:38:33Zdaniel wieselwind
<p>Committiong a revision with refers #ISSUE-1234 does not work. The revision is not linked to the issue.</p> ISSUE-id - Omission #ISSUE-16 (Open): Search by new issue-id does not workhttp://projects.andriylesyuk.com/issues/ISSUE-162018-07-19T08:37:39Zdaniel wieselwind
<p>Searching for issues with the new issue ID does not work.</p> Contact Form - Feature #2442 (New): Put sender's email into Fromhttp://projects.andriylesyuk.com/issues/24422018-05-17T09:56:37ZAndriy Lesyuks-andy@andriylesyuk.com
<p>Right now, the plugin puts sender’s email into the Reply-To header and the From header uses the Redmine’s emission email address. As a result, when I click Reply some email clients (such as Thunderbird) do not fill the To address of the replying email (so I need to do this manually each time).</p>
<p>So, I wonder, if the plugin should user the From header instead?</p> Project Sections - Improvement #2441 (Incomplete): Option to collapse sectionhttp://projects.andriylesyuk.com/issues/24412018-03-13T10:13:34ZAdam Pielatowski
<p>Hello,<br />Do you think is it good idea to add option to collapse section and subsections? <span class="wiking smiley smiley-smiley" title=":)"></span></p> WikiNG - Bug #2440 (Open): Footnotes ignore < pre >http://projects.andriylesyuk.com/issues/24402018-02-20T10:11:57ZИльфат Аминов
<p>Inside of < pre > blocks footnotes (double parentheses) not ignored by Wiking formatter.</p>
<p><img src="http://projects.andriylesyuk.com/attachments/download/670/wikiedit.png" alt="" /></p>
<p>⇒</p>
<p><img src="http://projects.andriylesyuk.com/attachments/download/671/wiki.png" alt="" /></p> Red-Andy - Support #2439 (In Progress): Text color in add menu (+) is too darkhttp://projects.andriylesyuk.com/issues/24392018-01-05T20:50:07ZIvan Cenov
<p>Hi,</p>
<p>The color of the menu items in red-andy theme is too dark. Is possible to make the color the same as in the menu tabs?</p>
<p><img src="http://projects.andriylesyuk.com/attachments/download/667/red-andy.PNG" alt="" /></p> WikiNG - Feature #2438 (Open): Screen texthttp://projects.andriylesyuk.com/issues/24382018-01-05T14:56:29ZAndriy Lesyuks-andy@andriylesyuk.com
<p>I often need to highlight somehow a text, which is displayed by the user interface of a discussed application. For example:</p>
<ul>
<li>Click the “Apply” button</li>
<li>Go to “Administration” → “Settings” </li>
<li>Use “to these roles only”</li>
</ul>
<p>The last example demonstrates, why it’s imported to have such text highlighted (otherwise, it can be unclear, where the screen text ends).</p>
<p>It would be ideally, if something like back quotes could be used (which are used for code in Markdown). Quotes look natural. But, I don’t think, that just quotes are a good option. Such screen text should also have different color and/or decoration.</p>
<p>As an option: double single quotes, i.e., <code>''Apply''</code>.</p> WikiNG - Feature #2437 (Open): Ultra-HD-ready graphicshttp://projects.andriylesyuk.com/issues/24372018-01-03T12:40:10ZAndriy Lesyuks-andy@andriylesyuk.com
<p>I think, all the images of WikiNG, including smileys, should be replaced with ones, which are twice bigger and, therefore, will look better on 4K displays.</p>
<p>Alternatively, some of them (or all) can be replaced with SVG images, or just HTML code. However, custom HTML code can cause issues in, e.g., PDF files (after exporting Wiki content), so this is to be investigated before implementing.</p> WikiNG - Bug #2436 (Incomplete): Autocomplete debounce does not work as expectedhttp://projects.andriylesyuk.com/issues/24362018-01-01T21:47:44ZAndriy Lesyuks-andy@andriylesyuk.com
<p>To optimize load of <code>/mentions/autocomplete</code> I set the <code>debounce</code> option of <a href="https://github.com/yuku-t/jquery-textcomplete" class="external">jQuery textcomplete</a> to 500 ms. This should have made the autocomplete function be called with the delay.</p>
<p>In practice, however, with this option set the autocomplete function sometimes is not getting called at all, ever. Usually, this happens, when I put just <code>@</code> or <code>user:</code>, i.e., a user link without any term (without a part of login, name or identifier). If, however, I add any character and then remove it (i.e., get the same <code>@</code> or <code>user:</code> in result), the autocompletion gets executed.</p>
<p>If I remove the <code>debounce</code> option, everything works as expected. This makes me think, that the problem is in how jQuery textcomplete handles the debounce.</p> ISSUE-id - Omission #ISSUE-15 (Open): Searching #ISSUE-idhttp://projects.andriylesyuk.com/issues/ISSUE-152017-12-09T18:09:10ZAndriy Lesyuks-andy@andriylesyuk.com
<p><a href="http://www.iexhibit.com/" class="external">Suvrat Bhat</a> wrote in <a href="http://blog.andriylesyuk.com/sequent-issue-numbers-with-the-project-key/" class="external">his comment</a>:</p>
<blockquote>
<p>Issue-ID plugin works great. Could there be an option to make the issues with ISSUE-ID searchable. I see that the issues with IssueKey-Number are not searchable</p>
</blockquote>
<p>Confirmed: If I put #ISSUE-id into the search box, Redmine does not find the issue.</p> ISSUE-id - Bug #ISSUE-14 (Open): Escaping #ISSUE-id Textile rule does not workhttp://projects.andriylesyuk.com/issues/ISSUE-142017-12-02T21:46:29ZAndriy Lesyuks-andy@andriylesyuk.com
<p>Escaping ISSUE-id’s special Textile syntax rule does not work, if multiple IDs are specified in one line. For example:</p>
<pre>
!#ISSUE-1, !#ISSUE-2 and !#ISSUE-3
</pre>
<p>Demo: <img src="#ISSUE-1," alt="" /><a class="issue tracker-9 status-5 priority-5 priority-default closed" title="Bulgarian translation (Closed)" href="http://projects.andriylesyuk.com/issues/ISSUE-2">#ISSUE-2</a> and #ISSUE-3</p>
<p>This happens because Redmine treats <code>!#ISSUE-1, !</code> as an image. Therefore, <code>parse_redmine_links_with_issue_id</code> gets the following <code>text</code>:</p>
<pre>
Demo: <img src="#ISSUE-1," alt="" />#ISSUE-2 and !#ISSUE-3
</pre>
<p>The same applies to legacy IDs:</p>
<p>Demo: <img src="#1," alt="" /><a class="issue tracker-2 status-5 priority-5 priority-default closed" title="User needs some way to see available activities (Closed)" href="http://projects.andriylesyuk.com/issues/2">#2</a> and <a class="issue tracker-7 status-5 priority-4 priority-low2 closed" title="Create more bug related contexts (Closed)" href="http://projects.andriylesyuk.com/issues/3">#3</a></p>
<p>So, it’s not a problem in the plugin, but in the Redmine core.</p> ISSUE-id - Bug #ISSUE-12 (Deferred): No route matches error for journals#newhttp://projects.andriylesyuk.com/issues/ISSUE-122016-10-29T20:06:32ZAndriy Lesyuks-andy@andriylesyuk.com
<p>Before Rails 4 it was possible to override name routes in <code>config/routes.rb</code>. But, in Rails 4 this is no longer possible, see <a class="source" href="http://projects.andriylesyuk.com/projects/issue-id/repository/revisions/21/entry/config/routes.rb#L12">source:config/routes.rb@21#L12</a>.</p>
<p>For Rails 4.1 it was possible to override the path helper method by including a custom module as follows:</p>
<pre><code class="ruby syntaxhl"><span class="CodeRay"><span class="constant">Rails</span>.application.routes.url_helpers.send(<span class="symbol">:include</span>, <span class="constant">IssueRouterHelper</span>)
</span></code></pre>
<p>But, in Rails 4.2 this does not work as well. Redmine gives the error:</p>
<pre>
No route matches {:action⇒“new”, :controller⇒“journals”, :id⇒#<Issue id: 273, ..., project_key: “ADMIN”, issue_number: 8>} missing required keys: [:id]
</pre>
<p>I tried different methods including something like (found such on StackOverflow):</p>
<pre><code class="ruby syntaxhl"><span class="CodeRay"><span class="constant">Rails</span>.application.routes.named_routes.url_helpers_module.send(<span class="symbol">:include</span>, <span class="constant">IssueRouterHelper</span>)
</span></code></pre>
<p>But, no luck.</p>
<p>Currently, this is fixed by overriding <code>app/views/issues/show.html.erb</code> (see <a class="changeset" title="Fix #quoted_issue_path by overriding issues/show.html.erb (#ISSUE-8, #ISSUE-12)" href="http://projects.andriylesyuk.com/projects/issue-id/repository/revisions/23">r23</a>), but this is not a good workaround. A better one should be found! <em>I assume, Rails 4.3+ should have a fix for this.</em></p> ISSUE-id - Support #ISSUE-1 (Deferred): Need a function to display issue idhttp://projects.andriylesyuk.com/issues/ISSUE-12013-09-03T14:20:15ZAndriy Lesyuks-andy@andriylesyuk.com
<p>The ISSUE-id plugin adds the <code>issue_id</code> function, which is used to generate the featured id. Also the <code>to_param</code> function is used by Redmine to put the correct ID into links etc. The plugin also patches a <ins>lot</ins> of other native Redmine functions to replace native Redmine issue id with the featured one.</p>
<p>This could be <ins>much easier</ins>, if Redmine came with a special function for displaying issue ids, which could be named, e.g., <code>display_id</code>! So when the plugin is released I need to make such suggestion to Redmine guys...</p>