RhodeCode - issues: Issueshttps://issues.rhodecode.com/https://issues.rhodecode.com/favicon.ico?16960560042023-10-17T16:32:54ZRhodeCode - issues
Redmine RhodeCode CE/EE - Bug #5698 (Resolved): 5.0.0 release - documentation 4.X -> 5.X migration step-b...https://issues.rhodecode.com/issues/56982023-10-17T16:32:54ZMarcin Kuzminski [CTO]marcin@rhodecode.com
<p>In order to smoothen the transition from 4.X release we need to write a guide how to move to 5.X series.</p>
RhodeCode CE/EE - Bug #5691 (Resolved): Fix 5.0.0 exceptionhttps://issues.rhodecode.com/issues/56912023-10-17T07:57:13ZMarcin Kuzminski [CTO]marcin@rhodecode.com
<p><a href="https://code.rhodecode.com/_admin/settings/exceptions/140374526066368" class="external">https://code.rhodecode.com/_admin/settings/exceptions/140374526066368</a></p>
<p>This seems to be a regression</p>
RhodeCode CE/EE - Bug #5672 (Resolved): Unable to browse git repository folders with # in nameshttps://issues.rhodecode.com/issues/56722021-12-16T16:00:28ZGreg Gaskill
<p>When browsing a git repository on our Rhodecode EE server web gui, we are unable to descend into folder whose names contain a # symbol.</p>
<p>An example browsing URI:</p>
<pre><code>https://example.com/projects/vendor/site/jobname/files/tip/Code/CP3%231?at=tip
</code></pre>
<p>Example error text for the above message says:</p>
<pre><code>error: There is no file nor directory at the given path: `Code/CP3` at commit xxxx
</code></pre>
<p>The actual folder name in the repository is "Code/CP#3"</p>
<p>Also note the actual rhodecode version running is 4.26 , not 4.24 (but the options didn't allow me to specify it)</p>
RhodeCode CE/EE - Bug #5669 (Resolved): Mercurial commit messages doesn't show cyrillic symbolshttps://issues.rhodecode.com/issues/56692021-10-01T10:11:00ZOleg Schelykalnov
<p>I updated from 4.17 version and cyrillic in commit messages started to shown as ?. </p>
<p>I applied workaround from <a href="https://issues.rhodecode.com/issues/5297" class="external">https://issues.rhodecode.com/issues/5297</a> but it only helped with setlocale python error.</p>
<p>hg log shows messages correctly.</p>
<p>related configurations</p>
<p>supervisord.ini</p>
<pre><code class="ini syntaxhl" data-language="ini"><span class="py">environment</span> <span class="p">=</span> <span class="s">HOME=/home/glassfish,LANG=ru_RU.UTF-8,LC_ALL=ru_RU.UTF-8,LOCALE_ARCHIVE=/home/glassfish/locale-archive,HGENCODING=utf8</span>
</code></pre>
<p>rhodecode.ini</p>
<pre><code class="ini syntaxhl" data-language="ini"><span class="py">lang</span> <span class="p">=</span> <span class="s">ru</span>
<span class="py">default_encoding</span> <span class="p">=</span> <span class="s">UTF-8 # CP1251 also tried</span>
</code></pre>
<p>vcsserver.ini</p>
<pre><code class="ini syntaxhl" data-language="ini"><span class="py">pyramid.default_locale_name</span> <span class="p">=</span> <span class="s">ru</span>
<span class="py">locale</span> <span class="p">=</span> <span class="s">ru_RU.UTF-8</span>
</code></pre> RhodeCode CE/EE - Bug #5664 (Resolved): Regression: When assigning permissions, cannot see own gr...https://issues.rhodecode.com/issues/56642021-07-14T13:27:04ZYechen Qiao
<p>Previously, if you are in group "A", and you own a project. When you try to assign permissions to project, group "A" is available for auto-complete.</p>
<p>Now, if you are not super-admin, do not have at least "Read" access to the group from some other group you also belong to, then when you try to assign your own group to a project, you will notice it is not available for selection at all in auto-complete. And it will clear itself out when you try to type the exact name before saving.</p>
<p>If the group owner tries to assign permission "Read" to its own group, the user gets an error message saying cannot assign group permission to the same group.</p>
<p>Right now, we are using workaround to use 2 groups instead of one for each group that can own a project, and we will have to manually add user of one group to its duplicate group when new users are added. Then with Group "B", I can assign "Read" to group "A", and if group "B" contains all members of group A, all members will now be able to add group A to the project.</p>
<p>Affected Version: 4.25.2 (not available for selection in this bug report page)</p>
RhodeCode CE/EE - Bug #5656 (Resolved): Error for branch permission pagehttps://issues.rhodecode.com/issues/56562021-03-30T15:07:32ZSebastian Elsner
<p>Even tho we don't use it, I found that going to the branch permission page in the community edition installation excepts:</p>
<pre><code class="python syntaxhl" data-language="python"><span class="mi">2021</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">30</span> <span class="mi">13</span><span class="p">:</span><span class="mi">35</span><span class="p">:</span><span class="mf">42.406</span> <span class="p">[</span><span class="mi">838916</span><span class="p">]</span> <span class="n">INFO</span> <span class="p">[</span><span class="n">rhodecode</span><span class="p">.</span><span class="n">lib</span><span class="p">.</span><span class="n">auth</span><span class="p">]</span> <span class="n">user</span> <span class="o"><</span><span class="n">AuthUser</span><span class="p">(</span><span class="s">'id:3[sebels] ip:10.30.11.110 auth:True'</span><span class="p">)</span><span class="o">></span> <span class="n">authent</span>
<span class="n">icating</span> <span class="k">with</span><span class="p">:</span><span class="n">RHODECODE_AUTH</span> <span class="n">IS</span> <span class="n">authenticated</span> <span class="n">on</span> <span class="n">func</span> <span class="n">RepoBranchesView</span><span class="p">:</span><span class="n">branches</span>
<span class="mi">2021</span><span class="o">-</span><span class="mi">03</span><span class="o">-</span><span class="mi">30</span> <span class="mi">13</span><span class="p">:</span><span class="mi">35</span><span class="p">:</span><span class="mf">45.064</span> <span class="p">[</span><span class="mi">838916</span><span class="p">]</span> <span class="n">ERROR</span> <span class="p">[</span><span class="n">rhodecode</span><span class="p">.</span><span class="n">config</span><span class="p">.</span><span class="n">middleware</span><span class="p">]</span> <span class="n">error</span> <span class="n">occurred</span> <span class="n">handling</span> <span class="n">this</span> <span class="n">request</span> <span class="k">for</span> <span class="n">path</span><span class="p">:</span> <span class="o">/</span><span class="n">libpython</span><span class="o">/</span><span class="n">settings</span><span class="o">/</span><span class="n">branch_permissions</span>
<span class="n">Traceback</span> <span class="p">(</span><span class="n">most</span> <span class="n">recent</span> <span class="n">call</span> <span class="n">last</span><span class="p">):</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/tweens.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">41</span><span class="p">,</span> <span class="ow">in</span> <span class="n">excview_tween</span>
<span class="n">response</span> <span class="o">=</span> <span class="n">handler</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/router.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">148</span><span class="p">,</span> <span class="ow">in</span> <span class="n">handle_request</span>
<span class="n">registry</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">context_iface</span><span class="p">,</span> <span class="n">view_name</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/view.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">667</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_call_view</span>
<span class="n">response</span> <span class="o">=</span> <span class="n">view_callable</span><span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/config/views.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">188</span><span class="p">,</span> <span class="ow">in</span> <span class="n">attr_view</span>
<span class="k">return</span> <span class="n">view</span><span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/config/views.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">214</span><span class="p">,</span> <span class="ow">in</span> <span class="n">predicate_wrapper</span>
<span class="k">return</span> <span class="n">view</span><span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/viewderivers.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">460</span><span class="p">,</span> <span class="ow">in</span> <span class="n">rendered_view</span>
<span class="n">request</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="n">view_inst</span><span class="p">,</span> <span class="n">context</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/renderers.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">451</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_view</span>
<span class="k">return</span> <span class="bp">self</span><span class="p">.</span><span class="n">render_to_response</span><span class="p">(</span><span class="n">response</span><span class="p">,</span> <span class="n">system</span><span class="p">,</span> <span class="n">request</span><span class="o">=</span><span class="n">request</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/renderers.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">474</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_to_response</span>
<span class="n">result</span> <span class="o">=</span> <span class="bp">self</span><span class="p">.</span><span class="n">render</span><span class="p">(</span><span class="n">value</span><span class="p">,</span> <span class="n">system_values</span><span class="p">,</span> <span class="n">request</span><span class="o">=</span><span class="n">request</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/renderers.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">470</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render</span>
<span class="n">result</span> <span class="o">=</span> <span class="n">renderer</span><span class="p">(</span><span class="n">value</span><span class="p">,</span> <span class="n">system_values</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/kvmn8s8gcbj3a79vw6nclj9p47aql7zy-python2.7-pyramid-mako-1.1.0/lib/python2.7/site-packages/pyramid_mako/__init__.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">156</span><span class="p">,</span> <span class="ow">in</span> <span class="n">__call__</span>
<span class="n">reraise</span><span class="p">(</span><span class="n">MakoRenderingException</span><span class="p">(</span><span class="n">errtext</span><span class="p">),</span> <span class="bp">None</span><span class="p">,</span> <span class="n">exc_info</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/kvmn8s8gcbj3a79vw6nclj9p47aql7zy-python2.7-pyramid-mako-1.1.0/lib/python2.7/site-packages/pyramid_mako/__init__.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">148</span><span class="p">,</span> <span class="ow">in</span> <span class="n">__call__</span>
<span class="n">result</span> <span class="o">=</span> <span class="n">template</span><span class="p">.</span><span class="n">render_unicode</span><span class="p">(</span><span class="o">**</span><span class="n">system</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/template.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">482</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_unicode</span>
<span class="bp">self</span><span class="p">,</span> <span class="bp">self</span><span class="p">.</span><span class="n">callable_</span><span class="p">,</span> <span class="n">args</span><span class="p">,</span> <span class="n">data</span><span class="p">,</span> <span class="n">as_unicode</span><span class="o">=</span><span class="bp">True</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">883</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_render</span>
<span class="o">**</span><span class="n">_kwargs_for_callable</span><span class="p">(</span><span class="n">callable_</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">920</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_render_context</span>
<span class="n">_exec_template</span><span class="p">(</span><span class="n">inherit</span><span class="p">,</span> <span class="n">lclcontext</span><span class="p">,</span> <span class="n">args</span><span class="o">=</span><span class="n">args</span><span class="p">,</span> <span class="n">kwargs</span><span class="o">=</span><span class="n">kwargs</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">947</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_exec_template</span>
<span class="n">callable_</span><span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"_base_root_mako"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">114</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_body</span>
<span class="n">File</span> <span class="s">"_base_base_mako"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">64</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_body</span>
<span class="n">File</span> <span class="s">"rhodecode_templates_admin_repos_repo_edit_mako"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">52</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_main</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/k2anfrqzq1h27a5l60j3hi9314d1q24k-python2.7-rhodecode-enterprise-ce-4.24.1/lib/python2.7/site-packages/rhodecode/lib/utils2.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">753</span><span class="p">,</span> <span class="ow">in</span> <span class="n">__getattr__</span>
<span class="bp">self</span><span class="p">.</span><span class="n">__class__</span><span class="p">,</span> <span class="n">attr</span><span class="p">))</span>
<span class="n">MakoRenderingException</span><span class="p">:</span>
<span class="n">Traceback</span> <span class="p">(</span><span class="n">most</span> <span class="n">recent</span> <span class="n">call</span> <span class="n">last</span><span class="p">):</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/kvmn8s8gcbj3a79vw6nclj9p47aql7zy-python2.7-pyramid-mako-1.1.0/lib/python2.7/site-packages/pyramid_mako/__init__.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">148</span><span class="p">,</span> <span class="ow">in</span> <span class="n">__call__</span>
<span class="n">result</span> <span class="o">=</span> <span class="n">template</span><span class="p">.</span><span class="n">render_unicode</span><span class="p">(</span><span class="o">**</span><span class="n">system</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/template.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">482</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_unicode</span>
<span class="bp">self</span><span class="p">,</span> <span class="bp">self</span><span class="p">.</span><span class="n">callable_</span><span class="p">,</span> <span class="n">args</span><span class="p">,</span> <span class="n">data</span><span class="p">,</span> <span class="n">as_unicode</span><span class="o">=</span><span class="bp">True</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">883</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_render</span>
<span class="o">**</span><span class="n">_kwargs_for_callable</span><span class="p">(</span><span class="n">callable_</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">920</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_render_context</span>
<span class="n">_exec_template</span><span class="p">(</span><span class="n">inherit</span><span class="p">,</span> <span class="n">lclcontext</span><span class="p">,</span> <span class="n">args</span><span class="o">=</span><span class="n">args</span><span class="p">,</span> <span class="n">kwargs</span><span class="o">=</span><span class="n">kwargs</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">947</span><span class="p">,</span> <span class="ow">in</span> <span class="n">_exec_template</span>
<span class="n">callable_</span><span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/k2anfrqzq1h27a5l60j3hi9314d1q24k-python2.7-rhodecode-enterprise-ce-4.24.1/lib/python2.7/site-packages/rhodecode/templates/base/root.mako"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">160</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_body</span>
<span class="err">$</span><span class="p">{</span><span class="nb">next</span><span class="p">.</span><span class="n">body</span><span class="p">()}</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/k2anfrqzq1h27a5l60j3hi9314d1q24k-python2.7-rhodecode-enterprise-ce-4.24.1/lib/python2.7/site-packages/rhodecode/templates/base/base.mako"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">39</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_body</span>
<span class="err">$</span><span class="p">{</span><span class="nb">next</span><span class="p">.</span><span class="n">main</span><span class="p">()}</span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/k2anfrqzq1h27a5l60j3hi9314d1q24k-python2.7-rhodecode-enterprise-ce-4.24.1/lib/python2.7/site-packages/rhodecode/templates/admin/repos/repo_edit.mako"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">41</span><span class="p">,</span> <span class="ow">in</span> <span class="n">render_main</span>
<span class="o"><</span><span class="n">li</span> <span class="n">class</span><span class="o">=</span><span class="s">"${h.is_active('settings', c.active)}"</span><span class="o">></span>
<span class="n">File</span> <span class="s">"/opt/rhodecode/store/k2anfrqzq1h27a5l60j3hi9314d1q24k-python2.7-rhodecode-enterprise-ce-4.24.1/lib/python2.7/site-packages/rhodecode/lib/utils2.py"</span><span class="p">,</span> <span class="n">line</span> <span class="mi">753</span><span class="p">,</span> <span class="ow">in</span> <span class="n">__getattr__</span>
<span class="bp">self</span><span class="p">.</span><span class="n">__class__</span><span class="p">,</span> <span class="n">attr</span><span class="p">))</span>
<span class="nb">AttributeError</span><span class="p">:</span> <span class="o"><</span><span class="k">class</span> <span class="err">'</span><span class="nc">rhodecode</span><span class="p">.</span><span class="n">apps</span><span class="p">.</span><span class="n">_base</span><span class="p">.</span><span class="n">TemplateArgs</span><span class="s">'> object has no attribute active
</span></code></pre> RhodeCode CE/EE - Bug #5655 (Resolved): New public gist's id is always auto generatedhttps://issues.rhodecode.com/issues/56552021-02-24T12:14:13ZSebastian Elsner
<p>I think this might be a bug, but could also be intended bahaviour.</p>
<p>click "new gist"<br>
enter anything for Gist id<br>
select public gist<br>
click create gist</p>
<p>this will always give me a gist with a auto generated number.</p>
<p>Doing the same sequence, but selecting private gist, will give a gist with the correct name.</p>
RhodeCode CE/EE - Bug #5652 (Resolved): Pull Requests: when title and descriptions contains chara...https://issues.rhodecode.com/issues/56522021-02-01T14:45:21ZYechen Qiao
<p>This happens when attempting to approve such a pull request. (500 internal service error, cannot continue) Apparently it is because an un-escaped character caught in the code somewhere writing an email from email template?</p>
<p>2021-02-01 09:34:32.287 [11824] ERROR [rhodecode.lib.partial_renderer]<br>
Traceback (most recent call last):<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/partial_renderer.py", line 79, in <u>render_with_exc<br>
return render_func.render(*args, **kwargs)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/template.py", line 476, in render<br>
return runtime._render(self, self.callable</u>, args, data)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py", line 883, in <u>render<br>
**_kwargs_for_callable(callable</u>, data)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py", line 924, in <u>render_context<br>
_exec_template(callable</u>, context, args=args, kwargs=kwargs)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py", line 947, in <u>exec_template<br>
callable</u>(context, <em>args, **kwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/templates/email_templates/pull_request_comment.mako", line 35, in render_subject<br>
${subject_template.format(</em><em>data) |n}<br>
IndexError: tuple index out of range<br>
2021-02-01 09:34:32.288 [11824] ERROR [rhodecode.config.middleware] error occurred handling this request for path: /internalproducts/sapiofoundations/sapiofoundations-serverside/pull-request/949/comment<br>
Traceback (most recent call last):<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/tweens.py", line 41, in excview_tween<br>
response = handler(request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/router.py", line 148, in handle_request<br>
registry, request, context, context_iface, view_name<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/view.py", line 667, in _call_view<br>
response = view_callable(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/config/views.py", line 188, in attr_view<br>
return view(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/config/views.py", line 214, in predicate_wrapper<br>
return view(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/viewderivers.py", line 436, in rendered_view<br>
result = view(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/viewderivers.py", line 132, in _class_view<br>
response = getattr(inst, attr)()<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 2507, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 1823, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 2507, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 1867, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 2507, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 1897, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 2507, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 1716, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/apps/repository/views/repo_pull_requests.py", line 1750, in pull_request_comment_create<br>
data = self._pull_request_comments_create(pull_request, [comment_data])<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/apps/repository/views/repo_pull_requests.py", line 1644, in _pull_request_comments_create<br>
send_email=not is_draft, # skip notification for draft comments<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/model/comment.py", line 481, in create<br>
email_kwargs=kwargs,<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/model/notification.py", line 123, in create<br>
EmailNotificationModel().render_email(notification_type, **email_kwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/model/notification.py", line 432, in render_email<br>
subject = email_template.render('subject', *</em><u>kwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/partial_renderer.py", line 95, in render<br>
return self._render_with_exc(tmpl, args, kwargs)<br>
File "/opt/rhodecode/store/5vmp7ipy3w2m4qii4fymlz8amzc9xd3k-python2.7-rhodecode-enterprise-ce-4.23.2/lib/python2.7/site-packages/rhodecode/lib/partial_renderer.py", line 79, in _render_with_exc<br>
return render_func.render(*args, **kwargs)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/template.py", line 476, in render<br>
return runtime._render(self, self.callable</u>, args, data)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py", line 883, in <u>render<br>
**_kwargs_for_callable(callable</u>, data)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py", line 924, in <u>render_context<br>
_exec_template(callable</u>, context, args=args, kwargs=kwargs)<br>
File "/opt/rhodecode/store/9g17akjjvw6s5yv8nnhpv5s9nk06hbjq-python2.7-mako-1.1.0/lib/python2.7/site-packages/mako/runtime.py", line 947, in <u>exec_template<br>
callable</u>(context, *args, **kwargs)<br>
File "rhodecode_templates_email_templates_pull_request_comment_mako", line 240, in render_subject<br>
IndexError: tuple index out of range<br>
2021-02-01 09:34:32.344 [11824] INFO [rhodecode.lib.middleware.request_wrapper] Req[ 1] POST Request to /internalproducts/sapiofoundations/sapiofoundations-serverside/pull-request/949/comment time: 0.4481s [Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36], RhodeCode 4.23.2</p>
RhodeCode CE/EE - Bug #5651 (Resolved): Pull requests can get stuck if the diff is too large (it ...https://issues.rhodecode.com/issues/56512021-01-12T22:54:23ZYechen Qiao
<p><strong>Affected Version: 4.22.0</strong> (There is no such version in the affected version list so I picked the closest one)</p>
<p>It's a new year. So our copyright statement has been updated with 2021 on it. If a developer forget to merge before PR, then this causes huge amount of diffs and causes the following blowup:</p>
<p>2021-01-12 10:26:50.935 [23364] ERROR [rhodecode.config.middleware] error occurred handling this request for path: /internalproducts/sapiofoundations/sapiofoundations-clientside/pull-request/900<br>
Traceback (most recent call last):<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/tweens.py", line 41, in excview_tween<br>
response = handler(request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/router.py", line 148, in handle_request<br>
registry, request, context, context_iface, view_name<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/view.py", line 667, in <u>call_view<br>
response = view_callable(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/config/views.py", line 188, in attr_view<br>
return view(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/config/views.py", line 214, in predicate_wrapper<br>
return view(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/viewderivers.py", line 436, in rendered_view<br>
result = view(context, request)<br>
File "/opt/rhodecode/store/da2il1f83gci4333j0sd256nji9nlhpa-python2.7-pyramid-1.10.4/lib/python2.7/site-packages/pyramid/viewderivers.py", line 132, in _class_view<br>
response = getattr(inst, attr)()<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 2507, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 1823, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 2507, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/lib/auth.py", line 1897, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/apps/repository/views/repo_pull_requests.py", line 442, in pull_request_show<br>
force_shadow_repo_refresh=force_refresh)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/model/pull_request.py", line 2164, in validate<br>
force_shadow_repo_refresh=force_shadow_repo_refresh)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/model/pull_request.py", line 1694, in merge_status<br>
pull_request, force_shadow_repo_refresh=force_shadow_repo_refresh)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/model/pull_request.py", line 1757, in _try_merge<br>
pull_request, target_vcs, target_ref)<br>
File "/opt/rhodecode/store/cnpzq6z5xjxzxw2m3d1cfb5yhpazscn5-python2.7-rhodecode-enterprise-ce-4.22.0/lib/python2.7/site-packages/rhodecode/model/pull_request.py", line 1821, in _refresh_merge_state<br>
Session().commit()<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 1036, in commit<br>
self.transaction.commit()<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 503, in commit<br>
self._prepare_impl()<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 482, in _prepare_impl<br>
self.session.flush()<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2496, in flush<br>
self._flush(objects)<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2637, in _flush<br>
transaction.rollback(_capture_exception=True)<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 69, in __exit</u>_<br>
exc_value, with_traceback=exc_tb,<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/session.py", line 2597, in <u>flush<br>
flush_context.execute()<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 422, in execute<br>
rec.execute(self)<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/unitofwork.py", line 589, in execute<br>
uow,<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 236, in save_obj<br>
update,<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 995, in _emit_update_statements<br>
statement, multiparams<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 984, in execute<br>
return meth(self, multiparams, params)<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/sql/elements.py", line 293, in _execute_on_connection<br>
return connection._execute_clauseelement(self, multiparams, params)<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1103, in _execute_clauseelement<br>
distilled_params,<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1288, in _execute_context<br>
e, statement, parameters, cursor, context<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1482, in _handle_dbapi_exception<br>
sqlalchemy_exception, with_traceback=exc_info[2], from</u>=e<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1248, in _execute_context<br>
cursor, statement, parameters, context<br>
File "/opt/rhodecode/store/d9q26gqyfrarins50zxxq1c611alijr2-python2.7-sqlalchemy-1.3.15/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 588, in do_execute<br>
cursor.execute(statement, parameters)<br>
File "/opt/rhodecode/store/qy6y6npssdfx02kg1cg66lgazr98lx1l-python2.7-mysql-python-1.2.5/lib/python2.7/site-packages/MySQLdb/cursors.py", line 205, in execute<br>
self.errorhandler(self, exc, value)<br>
File "/opt/rhodecode/store/qy6y6npssdfx02kg1cg66lgazr98lx1l-python2.7-mysql-python-1.2.5/lib/python2.7/site-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler<br>
raise errorclass, errorvalue<br>
DataError: (_mysql_exceptions.DataError) (1406, "Data too long for column 'last_merge_metadata' at row 1")<br>
[SQL: UPDATE pull_requests SET last_merge_org_rev=%s, last_merge_other_rev=%s, merge_status=%s, last_merge_metadata=%s WHERE pull_requests.pull_request_id = %s]<br>
[parameters: ('35076a5bccfe3d1904b164ca7afb23cff83d3900', '20798a817a6c488286d204c6be30d6ec17b74a57', 2, '{"unresolved_files": "\n* conflict: U gwtcps_attachmentViewer/src/main/java/com/velox/gwt/client/plugins/attachmentviewertask/callbacks/AttachmentVi ... (132434 characters truncated) ... ion.java\n * conflict: U workflowbuilderCore/src/main/java/com/velox/gwt/client/plugins/workflowbuilderlite/tag/WorkflowBuilderWorkflowOption.java"}', 900L)]<br>
(Background on this error at: <a href="http://sqlalche.me/e/9h9h" class="external">http://sqlalche.me/e/9h9h</a>)</p>
RhodeCode CE/EE - Feature #5643 (Resolved): jump to bottom of reviewhttps://issues.rhodecode.com/issues/56432020-12-02T10:36:16ZSebastian Elsner
<p>As a reviewer I often find myself with a large PR with many files changed, resulting in long PR pages. I scroll to the bottom, approve the PR. Something needs fixing, PR is updated, I reopen the page, approve scrolling down the PR page, PR may be updated, ....</p>
<p>A small improvement for this would be that you place a "Jump to bottom" link at the top. I know, I can press the "end" key on the keyboard, but my right hand is with the mouse and the left with the coffee mug ;)</p>
<p>Maybe like this:</p>
<p><img src="https://issues.rhodecode.com/attachments/download/3086/Selection_021.png" alt="" loading="lazy" /></p>
<p>From Phabricator code review I was used to have the "toolbar" for "Close" and "Merge" and "Add Comment" at the top AND at the bottom. That would be a solution too, but I guess way to over engineered for the problem.</p>
RhodeCode CE/EE - Feature #5642 (Resolved): pull request version column in commit listhttps://issues.rhodecode.com/issues/56422020-12-02T10:22:18ZSebastian Elsner
<p>As a reviewer I often find myself checking single commits between two versions of a PR. Normally I would click "show versions" and then do a diff between the PR versions. Sometimes this gives undesirable results, e.g. when a branch with other major changes was merged into the PR. So I check each commit separately. In this case it would be a productivity boost to see the version annotated in the commits table like below.</p>
<p><img src="https://issues.rhodecode.com/attachments/download/3084/Selection_020.png" alt="" loading="lazy" /></p>
RhodeCode CE/EE - Task #4251 (Feedback): [customer] Pull request with subreposhttps://issues.rhodecode.com/issues/42512016-09-29T13:41:00ZMarcin Kuzminski [CTO]marcin@rhodecode.com
<p>While a lot of time passed since we’ve exchanged emails last time, let me share some details about the way we work at R and what kind of Rhodecode improvements would be useful for us. </p>
<ul>
<li>Most of our iOS/Mac product repositories are Mercurial </li>
<li>We extensively use Mercurial’s subrepositories for internal dependencies: our internal libraries are Mercurial or git repositories, which are added to product repository as a subrepo. </li>
<li>I like github flow: creating feature branches (bookmarks in Mercurial), opening pull request to master (default), code-reviewing this pull request and merging it after review is finished</li>
</ul>
<p>Unfortunately Rhodecode does not allow to create pull request for Mercurial repository in case it contains any subrepo, even if there were no changes in that sub-repositories. </p>
<p>So that’s the main reason why we can’t use github flow with Rhodecode and that’s the reason why we have to Crucible. </p>
<p>I’ve shared these details with team about a year ago : <a href="https://rhodecode.tenderapp.com/help/discussions/support-tickets/1234-unable-to-create-pull-request" class="external">https://rhodecode.tenderapp.com/help/discussions/support-tickets/1234-unable-to-create-pull-request</a></p>
<p>Currently Rhodecode is more like a repository storage for us and while post-commit reviews are possible they are rarely used. That’s why most people at R almost never see Rhodecode web interface. </p>
<p>Let me know if you need any more details or have any workaround that would still allow us to use pull requests. </p>
RhodeCode CE/EE - Bug #4092 (Feedback): [ce, ee] Redmine/JIRA integrations - smart commitshttps://issues.rhodecode.com/issues/40922016-07-15T12:29:44ZDaniel Ddaniel@rhodecode.com
<p>For the redmine case there are 5 states for a ticket:</p>
<ul>
<li>new</li>
<li>in progress</li>
<li>resolved</li>
<li>feedback</li>
<li>closed'</li>
</ul>
<p>Commit messages should be able to auto close/resolve tickets using keywords such as <code>fixes #42</code></p>
<p>The thing to think about is that the user may want 'fixes #20' to set the redmine issue to any of 'resolved', 'feedback' or 'closed' - this should be set in the integration options.</p>
<p>Allowing custom multiple regex => state mappers per integration is the most powerful but might be overkill- making standard keywords might be better eg:</p>
<p>fixes => resolved<br>
closes => closed</p>
<p>Then again this might be no good for international users.</p>
RhodeCode CE/EE - Task #3454 (Feedback): [ce/ee] visually differentiate the two editionshttps://issues.rhodecode.com/issues/34542016-04-07T15:38:27ZOliver Strobeloliver@rhodecode.com
<p>Currently we are only changing the footer to include Community vs. Enterprise differentiation.</p>
<p>Purpose: It should be possible to tell the difference in edition quickly when switching between CE/EE tabs.</p>
<p>Potential solutions:<br>
1) Add the edition name into the header after the logo on the top left<br>
2) Change the colour of the header between editions, eg.<br>
CE = dark grey<br>
EE = black</p>
<p>Thoughts?</p>
RhodeCode CE/EE - Feature #2539 (Feedback): Recursive deletion of resourceshttps://issues.rhodecode.com/issues/25392015-08-25T18:11:48ZMarcin Kuzminski [CTO]marcin@rhodecode.com
<p>Ticket from support: <a href="https://rhodecode.tenderapp.com/help/discussions/problems/7125-rc-225-after-deleting-repo-groups-on-file-system-then-rescan-the-repo-groups-are-always-in-the-db" class="external">https://rhodecode.tenderapp.com/help/discussions/problems/7125-rc-225-after-deleting-repo-groups-on-file-system-then-rescan-the-repo-groups-are-always-in-the-db</a></p>
<p>Use case:</p>
<ul>
<li>gemalto needs to often delete large repository groups, current system doesn't allow doing it from web interface</li>
<li>users need to delete manually each repo inside repo group and then delete the group itself</li>
</ul>
<p>Currently our system supports this operation in cleanup mode, so you can delete whole directory from the filesystem and run remap-and rescan. This is a workaround and should allow<br>
big cleanup, but it's far from being straightforward to do.</p>
<p>We need a consistent interface for deletion of resource that hold other resources. This should currently include two places</p>
<ul>
<li>user deletion (that hold repo groups/user groups/repositories)</li>
<li>repository group deletion (that hold other repositories)</li>
</ul>
<p>You can delete user or repository group in two ways, goind to admin > users or admin > repo groups and clicking delete.<br>
In case there are dependent objects, we should trigger a warning flash message, and redirect user to advanced settings section of user, or repo group. and allow them to do recursive delete.</p>
<p>There's already an interface for that in users advanced section, when you can select if you want to delete or transfer ownership of repositories or groups that user owns. <br>
We should re-use the logic, and make the same option available to deletion of repository groups. The user advanced section also needs some small improvements.</p>
<p>Recursive delete should have two options.</p>
<ul>
<li>delete resources</li>
<li>transfer ownership of resources to a different user in the system</li>
</ul>
<p>Currently part of that is implemented in user > settings > advanced where we have delete or detach option. <br>
Detach option unfortunetly picks the first super admin in the system which leads to<br>
odd results and you cannot control to whom you need to transfer the ownership.</p>