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> 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-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> Project Sections - Bug #2346 (Incomplete): Project list shifts when there are more text in sidebarhttp://projects.andriylesyuk.com/issues/23462014-11-06T10:52:09Zcharline ferro
<p>Sorry for my english, I’m using redmine 2.6.0 with your plugin and i noticed something. I think images are better:</p>
<p><img src="http://projects.andriylesyuk.com/attachments/download/629/redmine_pb.jpg" alt="" /></p>
<p>And here the problem :</p>
<p><img src="http://projects.andriylesyuk.com/attachments/download/630/redmine_pb2.jpg" alt="" /></p> WikiNG - Bug #2329 (Under Verification): Mentions visibilityhttp://projects.andriylesyuk.com/issues/23292014-09-12T14:05:06ZRobert Roth
<p>Redmine setup:<br />Project A and B are not public projects, with several common members. Members of only one project can click the links of users involved in both projects, and in their activity they will see the mentions from the issues on the other projects, along with subject, project nam and other sensitive info. Mentions on objects belonging to a projwct whuch is not visible to the current usr should be hidden from activity streams.</p> WikiNG - Bug #2322 (Deferred): Viewing user pages does not work after renamehttp://projects.andriylesyuk.com/issues/23222014-07-28T10:11:29ZKrishna MS
<p>Hi,</p>
<p>I am using the latest version of your plugin. Redmine version is 2.4.3.</p>
<p>If i have a username msk and if i click on <a class="external" href="http://redmine-ip/users/msk">http://redmine-ip/users/msk</a>, it shows the users’ page.<br />However if i rename the username to krishna.ms and if i click on <a class="external" href="http://redmine-ip/users/krishna.ms">http://redmine-ip/users/krishna.ms</a> the page goes blank.</p>
<p>But <a class="external" href="http://redmine-ip/users/124">http://redmine-ip/users/124</a> where 124 is the userid of krishna.ms, it works.</p>
<p>Rename to krishna also works, but any userid which has a . between first name and last name.</p>
<p>Is there a way to make it work for the new user name.</p>
<p>Thanks,<br />Krishna M S</p>
<p>FYI, i tested it in Redmine 2.5.2 too and the problem is there.</p> Extended Fields - Support #2161 (In Progress): Internal error On New Issues tabhttp://projects.andriylesyuk.com/issues/21612013-03-06T17:23:48ZChristi Cummings
<p>Currently cannot input any new issues with this plugin<br />below is what the log reads.</p>
<pre>
Completed 200 OK in 1172ms (Views: 937.4ms | ActiveRecord: 78.1ms)
Started GET "/redmine/custom_fields/new?type=IssueCustomField" for 127.0.0.1 at 2013-03-06 11:04:51 -0600
Processing by CustomFieldsController#new as HTML
Parameters: {"type"=>"IssueCustomField"}
Current user: christi (id=1)
Rendered plugins/extended_fields/app/views/custom_fields/_extended.html.erb (15.6ms)
Rendered custom_fields/_form.html.erb (31.2ms)
Rendered custom_fields/new.html.erb within layouts/admin (46.9ms)
Completed 500 Internal Server Error in 47ms
ActionView::Template::Error (undefined method `hint' for #<IssueCustomField:0x2995020>):
21:
22: <% end %>
23:
24: <p><%= form.text_field(:hint, :size => 50) %></p>
25:
26: <!-- Rails 3 + jQuery -->
27: <% unless defined? observe_field %>
lib/redmine/views/labelled_form_builder.rb:31:in `text_field'
lib/redmine/hook.rb:111:in `block in render_on'
lib/redmine/hook.rb:61:in `block (2 levels) in call_hook'
lib/redmine/hook.rb:61:in `each'
lib/redmine/hook.rb:61:in `block in call_hook'
lib/redmine/hook.rb:58:in `tap'
lib/redmine/hook.rb:58:in `call_hook'
lib/redmine/hook.rb:158:in `call_hook'
app/views/custom_fields/_form.html.erb:29:in `_app_views_custom_fields__form_html_erb___723482694_23243244'
app/views/custom_fields/new.html.erb:6:in `block in _app_views_custom_fields_new_html_erb___727831247_21869232'
app/helpers/application_helper.rb:990:in `labelled_form_for'
app/views/custom_fields/new.html.erb:5:in `_app_views_custom_fields_new_html_erb___727831247_21869232'
</pre> Projects - Improvement #2021 (Incomplete): Spam protecthttp://projects.andriylesyuk.com/issues/20212012-04-07T10:39:59ZAndriy Lesyuks-andy@andriylesyuk.com
<p>I continue getting spam posts like:</p>
<pre>
Thanks for your marvelous posting! I actually enjoyed reading it, you will be a great author.I will ensure that I bookmark your blog and will come back in the foreseeable future. I want to encourage that you continue your great job, have a nice weekend! myFASHION-TRENDSCOM
</pre>
<p>Where “myFASHION-TRENDSCOM” is a link...</p>
<p>There should be some way to protect site against such messages... It looks to be some bot... Need more information about it.</p> Role Shift - Feature #1983 (Open): Default shiftshttp://projects.andriylesyuk.com/issues/19832012-02-19T12:59:00ZAndriy Lesyuks-andy@andriylesyuk.com
<p>Saying you have 3 proprietary and 50 open source projects. The easiest way is to allow <em>Anonymous</em> and <em>Non members</em> to access projects and shift these roles for proprietary ones... But <ins>this method is not recommended</ins> - <ins>basic roles should always be more strict than their shifts</ins> <em>(for a case something goes wrong and the plugin stops to work)</em>! So looks like one is better to define shifts for 50 projects... It’s approximately 100 shifts... And similar shifts should be defined for each new open source project!..</p>
<p>So to avoid this the idea is to define global default shifts which get automatically created when a new project is registered. In this case for proprietary projects you will just need to remove these shifts...</p> Role Shift - Feature #1982 (Open): Redmine.pm patch wanted http://projects.andriylesyuk.com/issues/19822012-02-19T12:54:51ZAndriy Lesyuks-andy@andriylesyuk.com
<p>Without such patch Redmine.pm will ignore role shifts...</p> Projects - Support #1910 (Open): Users verificationhttp://projects.andriylesyuk.com/issues/19102011-12-08T10:02:26ZAndriy Lesyuks-andy@andriylesyuk.com
<p>Seems it’s time to think about verifying OpenID users on login... Saw several spam comments from OpenID users...</p> CD-Index - Feature #1722 (Open): Separate common code into libraryhttp://projects.andriylesyuk.com/issues/17222011-05-03T21:08:49ZAndriy Lesyuks-andy@andriylesyuk.com
<p>Currently source files are compiled into <code>*.o</code> files and then into <code>cdfind</code>, <code>cdindex</code> etc. If a new tool is added the same should be done for it. It’s not good for development for CD-Index. The corresponding code should be moved to e.g. <code>libcdindex</code> library.</p> Orangutan - Feature #1638 (Open): Orangutan bug reportinghttp://projects.andriylesyuk.com/issues/16382011-02-09T18:52:05ZAndriy Lesyuks-andy@andriylesyuk.com
<p>I’m thinking about how people are going to report bugs for Orangutan... Get URL, go for it, register or report anonymously? Too complicated! Most people will just ignore bugs...</p>
<p>How can I make Orangutan bug reporting easier?</p>
<p>The solution which came to my mind:</p>
<p>Orangutan can support special issue creation feature - when some special request is specified instead of local issue Orangutan creates “remote” issue for Orangutan website (which should use Redmine). He can even post this issue remotely using REST API. Of course, for bug reporting Orangutan should use issue creating contexts (maybe just in special mode). And, of course, trackers, categories etc should be taken from Orangutan website (can be hardcoded).</p>