RhodeCode - issues: Issueshttps://issues.rhodecode.com/https://issues.rhodecode.com/favicon.ico?16960560042017-05-30T16:11:23ZRhodeCode - issues
Redmine RhodeCode CE/EE - Task #5326 (Resolved): Public usergroup profilehttps://issues.rhodecode.com/issues/53262017-05-30T16:11:23ZMarcin Kuzminski [CTO]marcin@rhodecode.com
<p>Somehow similar to user profile e.g <a href="https://code.rhodecode.com/_profiles/marcink" class="external">https://code.rhodecode.com/_profiles/marcink</a> but for usergroups.</p>
<ul>
<li>expose a view that shows an usergroup with members, really simple</li>
<li>the view checks usergroup permissions(view at least read required)</li>
<li>we need similar helper as for users which will expose a link to the usergroup profile</li>
</ul>
RhodeCode CE/EE - Task #5270 (New): Comments updateshttps://issues.rhodecode.com/issues/52702017-04-05T12:39:52ZMarcin Kuzminski [CTO]marcin@rhodecode.com
<p>Think about emails sent out on on comments:</p>
<ul>
<li>maybe they shouldn’t be inside both </li>
<li>add more context (TODO resolution)</li>
<li>Maybe thread that would allow reading those ?</li>
</ul>
RhodeCode CE/EE - Task #4289 (New): [ce, ee] clean up pygments lexer functions + handlinghttps://issues.rhodecode.com/issues/42892016-10-21T14:40:28ZDaniel Ddaniel@rhodecode.com
<p>Currently there are a few lexer functions that seem duplicated/incoherent with each other. This seems to be also tied with the rc extensions which can define custom lexers/file extension mappings in example-ext.py:</p>
<pre><code>
# =============================================================================
# END OF UTILITY FUNCTIONS HERE
# =============================================================================
# Additional mappings that are not present in the pygments lexers
# used for building stats
# format is {'ext':['Names']} eg. {'py':['Python']} note: there can be
# more than one name for extension
# NOTE: that this will override any mappings in LANGUAGES_EXTENSIONS_MAP
# build by pygments
EXTRA_MAPPINGS = {}
# additional lexer definitions for custom files it's overrides pygments lexers,
# and uses defined name of lexer to colorize the files. Format is {'ext':
# 'lexer_name'} List of lexers can be printed running:
# >> python -c "import pprint;from pygments import lexers;
# pprint.pprint([(x[0], x[1]) for x in lexers.get_all_lexers()]);"
EXTRA_LEXERS = {}
</code></pre>
<p>Then there are the functions get_custom_lexer and the FileNode attributes <code>filenode.lexer</code> which don't seem to follow the same logic - the filenode lexer for example seems to prefer a lexer matching the filename instead of a defined custom lexer.</p>
<p>We should use a common base for getting a lexer - one that first returns custom lexer mappings (so that for example .html can be mapped to mako).</p>
<p>Extending on this it could be possible to make the file extension => lexer mapping a per repository setting, exposed via the ui, which would give the best usability in terms of letting each repo specify which lexer to prefer ... again for example <code>.html => mako</code> </p>
RhodeCode CE/EE - Bug #4278 (Resolved): [admin] Clicking the save button in admin -> settings -> ...https://issues.rhodecode.com/issues/42782016-10-14T12:08:32ZMartin Bornholdmartin@rhodecode.com
<a name="Description"></a>
<h1 >Description<a href="#Description" class="wiki-anchor">¶</a></h1>
<p>If i click the save buttton on the issue tracker settings page without having any pattern added and no pattern already in the list it leads to an exception.<br>
If i add a pattern or if there is at least one pattern already present it works fine.</p>
<a name="Steps-to-reproduce"></a>
<h1 >Steps to reproduce<a href="#Steps-to-reproduce" class="wiki-anchor">¶</a></h1>
<ol>
<li>Open the page <a href="http://localhost:5000/_admin/settings/issue-tracker" class="external">http://localhost:5000/_admin/settings/issue-tracker</a> (adapt to your host)</li>
<li>Make sure that no pattern is in the list and don't add one.</li>
<li>Click the save button</li>
<li>Exception happens</li>
</ol>
<a name="Traceback"></a>
<h1 >Traceback<a href="#Traceback" class="wiki-anchor">¶</a></h1>
<p>2016-10-14 12:01:34.209 ERROR [rhodecode.lib.middleware.error_handling] 'NoneType' object has no attribute '<strong>getitem</strong>'<br>
Traceback (most recent call last):<br>
File "/Users/mb/work/ce/rhodecode/lib/middleware/error_handling.py", line 72, in handle_request<br>
response = request.get_response(self.app)<br>
File "/nix/store/5z86vjf0azxh3qjsg5dnv5j6xbl0scgm-python2.7-WebOb-1.3.1/lib/python2.7/site-packages/webob/request.py", line 1320, in send<br>
application, catch_exc_info=False)<br>
File "/nix/store/5z86vjf0azxh3qjsg5dnv5j6xbl0scgm-python2.7-WebOb-1.3.1/lib/python2.7/site-packages/webob/request.py", line 1284, in call_application<br>
app_iter = application(self.environ, start_response)<br>
File "/nix/store/nsdj1vmp0ir7hbgwb7sjb27cr8d8kplv-python2.7-Paste-2.0.2/lib/python2.7/site-packages/paste/registry.py", line 379, in <strong>call</strong><br>
app_iter = self.application(environ, start_response)<br>
File "/nix/store/bzzl9k49f51l3vjjl9fs1q116alpjxhp-python2.7-Pylons-1.0.1-patch1/lib/python2.7/site-packages/pylons/wsgiapp.py", line 103, in <strong>call</strong><br>
response = self.dispatch(controller, environ, start_response)<br>
File "/nix/store/bzzl9k49f51l3vjjl9fs1q116alpjxhp-python2.7-Pylons-1.0.1-patch1/lib/python2.7/site-packages/pylons/wsgiapp.py", line 313, in dispatch<br>
return controller(environ, start_response)<br>
File "/Users/mb/work/ce/rhodecode/lib/base.py", line 502, in <strong>call</strong><br>
return WSGIController.<strong>call</strong>(self, environ, start_response)<br>
File "/nix/store/bzzl9k49f51l3vjjl9fs1q116alpjxhp-python2.7-Pylons-1.0.1-patch1/lib/python2.7/site-packages/pylons/controllers/core.py", line 214, in <strong>call</strong><br>
response = self.<u>dispatch_call()<br>
File "/nix/store/bzzl9k49f51l3vjjl9fs1q116alpjxhp-python2.7-Pylons-1.0.1-patch1/lib/python2.7/site-packages/pylons/controllers/core.py", line 164, in _dispatch_call<br>
response = self._inspect_call(func)<br>
File "/nix/store/bzzl9k49f51l3vjjl9fs1q116alpjxhp-python2.7-Pylons-1.0.1-patch1/lib/python2.7/site-packages/pylons/controllers/core.py", line 107, in _inspect_call<br>
result = self._perform_call(func, args)<br>
File "/nix/store/bzzl9k49f51l3vjjl9fs1q116alpjxhp-python2.7-Pylons-1.0.1-patch1/lib/python2.7/site-packages/pylons/controllers/core.py", line 57, in _perform_call<br>
return func(**args)<br>
File "/Users/mb/work/ce/rhodecode/lib/auth.py", line 1901, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/Users/mb/work/ce/rhodecode/lib/auth.py", line 1334, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/Users/mb/work/ce/rhodecode/lib/auth.py", line 1901, in local_wrapper<br>
return wrapper(func, *args, **kwds)<br>
File "/Users/mb/work/ce/rhodecode/lib/auth.py", line 1143, in __wrapper<br>
return func(*fargs, **fkwargs)<br>
File "/Users/mb/work/ce/rhodecode/controllers/admin/settings.py", line 400, in settings_issuetracker_save<br>
for uid in form['delete_patterns']:<br>
TypeError: 'NoneType' object has no attribute '</u><u>getitem</u>_'</p>
RhodeCode CE/EE - Feature #4267 (Resolved): [ce, ee] jira tracker integration wildcard project ke...https://issues.rhodecode.com/issues/42672016-10-06T13:51:41ZDaniel Ddaniel@rhodecode.com
<p>From <a href="https://rhodecode.tenderapp.com/help/discussions/dedicated-support/409-jira-integration-in-441" class="external">https://rhodecode.tenderapp.com/help/discussions/dedicated-support/409-jira-integration-in-441</a></p>
<blockquote>
<p>We have just updated to 4.4.1 and I would like to test the JIRA integration (one of the features I've been wishing for for a long time!). I went to the overall admin settings and the integration tab. I then tried to create a new JIRA integration. I have entered all of the parameters except JIRA Project Key, but it won't let me save without including a JIRA project key.</p>
<p>I want to set up the JIRA integration to work globally. Each repository in RhodeCode may be related to more than one JIRA project and there are some JIRA projects that relate to multiple RhodeCode repositories.<br>
When a JIRA issue is referenced in a commit message it will be referenced by ID, for example "fixes AE-54". The first part of this is the project key (AE in this case) and the second is the ID within that project (54 in this case) - therefore there is no need for the JIRA integration to know in advance the project key as it will be within the commit message (the existing issue tracker integration looks for [A-Z][A-Z0-9_]+-\d+). If the project key is fixed, then this precludes a user working on embedded software from referencing hardware and software issues in commit messages (as we typically keep the hardware and software as separate JIRA projects).</p>
<p>Please can you help me with this configuration?</p>
</blockquote>
RhodeCode CE/EE - Task #4197 (New): [ce, ee] get list of users with their permissions to a reposi...https://issues.rhodecode.com/issues/41972016-08-24T14:31:24ZDaniel Ddaniel@rhodecode.com
<p>Related to <a href="https://issues.rhodecode.com/issues/4150" class="external">https://issues.rhodecode.com/issues/4150</a></p>
<p>Need a way to get all users from a repository along with their permissions for that repo.</p>
<p>At the moment permissions are generated via a complex python object in rhodecode.lib.auth:AuthUser which calculates the tree for a single user, taking into account default user, repo settings (overriding globals or not), and usergroups.</p>
<p>Iterating over the entire list of users is much too slow, some preliminary benchmarks show that it will take 10seconds / 100users.</p>
<p>In order to do this quickly instead, we would have to generate permissions via sql - A simplish (not completely correct results) query shows it will take about 50ms on internal rhodecode db.</p>
<pre><code>
SELECT
users.username,
repositories.repo_name,
MIN(origin_sort || '-' || permission_name) as perm
FROM (
SELECT
'' as ug,
permissions.permission_name,
user_id,
repository_id,
'1-user' as origin_sort
FROM
repo_to_perm
JOIN
permissions ON
permissions.permission_id = repo_to_perm.permission_id
-- WHERE repository_id = 190
UNION ALL
SELECT
users_groups.users_group_name,
permissions.permission_name,
users_groups_members.user_id,
repository_id,
'2-usergroup-' || users_groups.users_group_name as origin_sort
FROM
users_group_repo_to_perm
JOIN
permissions ON
permissions.permission_id = users_group_repo_to_perm.permission_id
JOIN
users_groups_members
ON
users_groups_members.users_group_id = users_group_repo_to_perm.users_group_id
JOIN
users_groups
ON
users_group_repo_to_perm.users_group_id = users_groups.users_group_id
-- WHERE repository_id = 190
) tmp_user_and_usergroup_perms
JOIN users ON users.user_id = tmp_user_and_usergroup_perms.user_id
JOIN repositories ON repositories.repo_id = tmp_user_and_usergroup_perms.repository_id
GROUP BY users.username, repositories.repo_name
ORDER BY username, perm
;
</code></pre> RhodeCode CE/EE - Bug #4173 (Resolved): [ce, ee] mysql recycle pool timeout not workinghttps://issues.rhodecode.com/issues/41732016-08-12T16:41:27ZDaniel Ddaniel@rhodecode.com
<p>Replication:</p>
<ul>
<li>new config using mysql database</li>
<li>set mysql's wait_timeout to 6</li>
<li><code>threads = 1</code> in ini</li>
<li><code>sqlalchemy.db1.pool_recycle = 3</code> in ini</li>
<li>git push a repo (no changes need, just a push)</li>
<li>wait 7 seconds</li>
<li>git push again</li>
<li>get - <code>OperationalError: (OperationalError) (2006, 'MySQL server has gone away)</code></li>
</ul>
<p>This will also break subsequent requests with <code>StatementError: Can't reconnect until invalid transaction is rolled back</code></p>
RhodeCode CE/EE - Task #4147 (New): [ce, ee, docs] Events documentationhttps://issues.rhodecode.com/issues/41472016-08-04T03:52:39ZDaniel Ddaniel@rhodecode.com
<p>We need to add documentation of the json structure that events emit. Would be a good idea to make this auto generated from dummy events so that there is no sync issue between docs/reality.</p>
RhodeCode CE/EE - Feature #4074 (New): Edit review commenthttps://issues.rhodecode.com/issues/40742016-07-06T16:50:33ZTamas Gemes
<p>Currently you can only create and delete your comments during a review.<br>
This is the same for in-code comments and global (commit or pull request) comments.</p>
<p>It would be nice to have an edit feature too.</p>
Documentation - Task #3093 (New): [API] - update hg/git update pr API. Auto updates PR on pushhttps://issues.rhodecode.com/issues/30932016-01-21T15:30:21ZBrian Butlerbrian@rhodecode.comDocumentation - Task #3092 (New): [RCE, ini] - doc available settings + check tender with Gemalto...https://issues.rhodecode.com/issues/30922016-01-21T15:10:51ZBrian Butlerbrian@rhodecode.comDocumentation - Feature #687 (New): [Integraton ]- Elastic search integrationhttps://issues.rhodecode.com/issues/6872015-01-12T11:07:47ZBrian Butlerbrian@rhodecode.comDocumentation - Task #682 (New): Error Msg guidehttps://issues.rhodecode.com/issues/6822015-01-12T08:56:24ZBrian Butlerbrian@rhodecode.com
<p>We should have a guide that describes the messages, and the actions to take for each one</p>
Documentation - Feature #659 (New): Peer to Peer Failoverhttps://issues.rhodecode.com/issues/6592015-01-08T15:47:01ZBrian Butlerbrian@rhodecode.com
<p>doc this if we have</p>
Documentation - Feature #317 (New): Stylinghttps://issues.rhodecode.com/issues/3172014-11-12T09:44:42ZBrian Butlerbrian@rhodecode.com
<p>Create a Sphinx style for RhodeCode docs</p>