RhodeCode - issues: Issueshttps://issues.rhodecode.com/https://issues.rhodecode.com/favicon.ico?16960560042020-04-02T14:34:35ZRhodeCode - issues
Redmine RhodeCode CE/EE - Bug #5610 (Resolved): Files navigation looses the at=<name> markerhttps://issues.rhodecode.com/issues/56102020-04-02T14:34:35ZDaniel Ddaniel@rhodecode.com
<p>During investigation of <a class="issue tracker-1 status-3 priority-2 priority-default" title="Bug: SVN navigation to trunk fails (Resolved)" href="https://issues.rhodecode.com/issues/5599">#5599</a> we also discovered that the ?at= GET marker that indicates current reference we're browsing is getting lost when navigating via tree/files. We'd need to fix this to preserve that marker especially for SVN</p>
RhodeCode CE/EE - Bug #5608 (Resolved): svn+ssh user set incorrectlyhttps://issues.rhodecode.com/issues/56082020-03-31T17:04:34ZLuke Mauldin
<p>Scenario:</p>
<ol>
<li>Create a repository <code>teststructure</code></li>
<li>Checkout the repository via svn+ssh</li>
<li>Add a file commit it</li>
<li>Edit the file and commit it</li>
</ol>
<p>Expected: the author of the SVN commit should be the user performing the commit. Actual: <code>rhodecode</code> is set as the author of the commit.<br>
If I checkout the repository using https + svn, then the author is set correctly in the commit.</p>
<p>See the below debugging information.</p>
<pre><code>vim trunk/foo/test_b.sql
svn commit -m "Updating file again"
2020-03-31 09:55:19.903 [71611] DEBUG [rhodecode.config.middleware] DEBUG MODE ON | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.903 [71611] DEBUG [rhodecode.config.middleware] Using the following Mako template directories: ['rhodecode:templates'] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.904 [71611] DEBUG [rhodecode.config.middleware] Using the following pyramid.includes: [] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.938 [71611] INFO [rhodecode.model] RhodeCode 4.18.2 initializing db for postgresql://rhodecode:XXXXX@127.0.0.1:5432/rhodecode | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.939 [71611] INFO [rhodecode.config.environment] Enabled VCS backends: ['svn', 'git'] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.942 [71611] DEBUG [rhodecode.config.middleware] Initializing main includeme from middleware.pyc | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.967 [71611] DEBUG [rhodecode.lib.rc_cache] dogpile: found following cache regions: set(['cache_perms', 'cache_repo_longterm', 'sql_cache_short', 'cache_license', 'cache_repo']) | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.971 [71611] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_perms[{'async_creation_runner': None, 'name': 'cache_perms', 'function_key_generator': <function wrapper at 0x7fbe2f4678c0>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7fbe2f4542d0>, '_actual_backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7fbe2f454f10>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7fbe39988de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7fbe3a788c50>, 'key_mangler': None, 'expiration_time': 300, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7fbe2f454f10>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.971 [71611] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_repo_longterm[{'async_creation_runner': None, 'name': 'cache_repo_longterm', 'function_key_generator': <function wrapper at 0x7fbe2f46e6e0>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7fbe3a788d50>, '_actual_backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7fbe3a788e50>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7fbe39988de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7fbe2f470110>, 'key_mangler': None, 'expiration_time': 2592000, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7fbe3a788e50>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.972 [71611] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region sql_cache_short[{'async_creation_runner': None, 'name': 'sql_cache_short', 'function_key_generator': <function wrapper at 0x7fbe2f46e7d0>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7fbe2f4701d0>, '_actual_backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7fbe2f470210>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7fbe39988de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7fbe2f4702d0>, 'key_mangler': None, 'expiration_time': 30, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7fbe2f470210>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.972 [71611] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_license[{'async_creation_runner': None, 'name': 'cache_license', 'function_key_generator': <function wrapper at 0x7fbe2f46e938>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7fbe2f470350>, '_actual_backend': <class 'rhodecode.lib.rc_cache.backends.FileNamespaceBackend'> `/home/rhodecode/.rccontrol/community-1/data/rc_cache_3`, 'function_multi_key_generator': <function function_multi_key_generator at 0x7fbe39988de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7fbe2f470490>, 'key_mangler': None, 'expiration_time': 300, '_user_defined_key_mangler': None, 'backend': <class 'rhodecode.lib.rc_cache.backends.FileNamespaceBackend'> `/home/rhodecode/.rccontrol/community-1/data/rc_cache_3`}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:19.973 [71611] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_repo[{'async_creation_runner': None, 'name': 'cache_repo', 'function_key_generator': <function wrapper at 0x7fbe2f46ea28>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7fbe2f470510>, '_actual_backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7fbe2f4705d0>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7fbe39988de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7fbe2f470550>, 'key_mangler': None, 'expiration_time': 2592000, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7fbe2f4705d0>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:20.145 [71611] INFO [celery.rhodecode.loader] Configuring celery based on `/home/rhodecode/.rccontrol/community-1/rhodecode.ini` file | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:20.151 [71611] DEBUG [celery.rhodecode.loader] Got custom celery conf: {u'task_always_eager': False, u'broker_url': u'redis://localhost:6379/8', u'max_tasks_per_child': 100} | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:20.151 [71611] INFO [rhodecode.config.middleware] Pyramid app `pyramid_app_with_cleanup` created and configured in 0.25s | req_id:00000000-0000-0000-0000-000000000000
2020-03-31 09:55:20.156 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends] Mode: `auto` User: `mauldinl:5` Shell: `False` SSH Command: `"svnserve -t"` SCM_DETECTED: `svn` SCM Mode: `auto` SCM Repo: `None` | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.379 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends] Update key id:`2` fingerprint:`MD5:9e:12:51:5d:00:36:87:79:56:0f:6e:c0:52:1a:0b:8e` access time | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.379 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends] SSH Connection info {'client_port': '50004', 'client_ip': '138.254.18.106', 'server_ip': '138.254.135.35', 'server_port': '22'} | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.381 [71611] DEBUG [rhodecode.lib.auth] AuthUser: starting data propagation for new potential user | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.384 [71611] DEBUG [rhodecode.lib.auth] Trying Auth User lookup by USER ID: `5` | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.384 [71611] DEBUG [rhodecode.model.user] AuthUser: fill data execution based on: user_id:5 api_key:None username:None | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.385 [71611] DEBUG [rhodecode.model.user] AuthUser: filling found user:<User('id:5:mauldinl')> data | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.391 [71611] DEBUG [rhodecode.lib.auth] AuthUser: propagated user is now <AuthUser('id:5[mauldinl] ip:None auth:False')> | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.391 [71611] DEBUG [rhodecode.lib.auth] Computing PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> scope `None` with caching: True[TTL: 300s] | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.395 [71611] DEBUG [rhodecode.lib.auth] PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> computed in 0.0035s: [('repositories', 545), ('repositories_groups', 18), ('global', 2), ('repository_branches', 0), ('user_groups', 5)] | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.406 [71611] DEBUG [rhodecode.lib.auth] Computing PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> scope `OrderedDict([('repo_id', -1), ('user_group_id', -1), ('repo_group_id', -1), ('repo_name', None)])` with caching: True[TTL: 300s] | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.407 [71611] DEBUG [rhodecode.lib.auth] PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> computed in 0.0003s: [('repositories', 0), ('global', 2), ('repository_branches', 0), ('repositories_groups', 0), ('user_groups', 0)] | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.409 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends] VCS detected:`svn` mode: `auto` repo_name: None, branch_permission_checks:False | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.409 [71611] DEBUG [rhodecode.lib.hooks_daemon] Preparing HTTP callback daemon at `127.0.0.1:37319` and registering hook object | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.409 [71611] DEBUG [rhodecode.lib.hooks_daemon] Prepared a callback daemon: HttpHooksCallbackDaemon at url `127.0.0.1:37319` | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.409 [71611] DEBUG [rhodecode.lib.hooks_daemon] Running `HttpHooksCallbackDaemon` callback daemon | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.409 [71611] DEBUG [rhodecode.lib.hooks_daemon] Running event loop of callback daemon in background thread | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.410 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Using svn binaries from path ~/.rccontrol/vcsserver-1/profile/bin/svnserve | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.410 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Final CMD: ~/.rccontrol/vcsserver-1/profile/bin/svnserve -t --config-file /tmp/tmpSpzroh -r /srv/rhodecode/repos/ | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
svnserve: warning: cannot set LC_CTYPE locale
svnserve: warning: environment variable LANG is en_US.UTF-8
svnserve: warning: please check that your locale name is correct
2020-03-31 09:55:20.605 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Extracting repository name from subdir path playground/teststructure/trunk/foo | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.606 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Found prefix playground/teststructure/ match, returning proper repository name | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.606 [71611] DEBUG [rhodecode.apps.ssh_support.lib.backends.base] permission for <User('id:5:mauldinl')> on playground/teststructure are: repository.admin | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
2020-03-31 09:55:20.606 [71611] INFO [rhodecode.apps.ssh_support.lib.backends.base] READ Permissions for User "<User('id:5:mauldinl')>" detected to repo "playground/teststructure"! | req_id:19beac90-52d8-4d06-8981-7bcfa54e68e6
Sending trunk/foo/test_b.sql
Transmitting file data .done
Committing transaction...
Committed revision 19.
</code></pre>
<p>See the svn log output:</p>
<pre><code>svn log -l 3
svnserve: warning: cannot set LC_CTYPE locale
svnserve: warning: environment variable LANG is en_US.UTF-8
svnserve: warning: please check that your locale name is correct
------------------------------------------------------------------------
r17 | rhodecode | 2020-03-31 09:01:50 -0500 (Tue, 31 Mar 2020) | 1 line
Move file
------------------------------------------------------------------------
r16 | mauldinl | 2020-03-19 09:42:40 -0500 (Thu, 19 Mar 2020) | 1 line
Moving file
------------------------------------------------------------------------
r15 | mauldinl | 2020-03-19 09:39:38 -0500 (Thu, 19 Mar 2020) | 1 line
</code></pre>
<p>Revision 17 was commited via svn+ssh (incorrect author), but revisions 15 and 16 were commited via svn+https (which has the correct author).</p>
<p>Rhodecode version: 4.18.2</p>
RhodeCode CE/EE - Bug #5606 (Resolved): SVN + ssh subdirectory failurehttps://issues.rhodecode.com/issues/56062020-03-30T15:33:39ZLuke Mauldin
<p>Encountered a bug when using SVN + ssh.<br>
Scenario:</p>
<ol>
<li>Create a new SVN repository: teststructure</li>
<li>Checkout repository as HTTPS</li>
<li>mkdir and commit <code>/trunk/foo</code></li>
<li>Add and commit file <code>/trunk/foo/test.sql</code></li>
<li><p>Svn move <code>/trunk/foo/test.sql</code> to <code>/trunk/foo/test_a.sql</code> and commit<br>
The above steps all work as expected</p></li>
<li><p>Checkout teststructure repository as svn+ssh</p></li>
<li><p>Svn move <code>/trunk/foo/test_a.sql</code> to <code>/trunk/foo/test_b.sql</code> and commit<br>
this step fails with a permission error (see details below)</p></li>
</ol>
<p>Other information: my user account <code>mauldinl</code> is a "super admin" in the tool and all HTTPS operations with SVN work as expected. svn+ssh operations work as expected in the root level of an SVN repository but write operations fail in subdirectories. All git SSH operations work as expected. I have restarted Rhodecode and ran steps to invalidate all cached keys in case it is a caching issue. Experienced the same issue with both file and Redis caching.</p>
<p>Version: Rhodecode 4.18.2<br>
OS: RHEL 8</p>
<p>Debugging information:</p>
<pre><code>❰mauldinl❙/tmp❱✔≻ svn co svn+ssh://rhodecode@XXXXX/playground/teststructure teststructure_ssh
2020-03-30 06:37:34.811 [99778] DEBUG [rhodecode.config.middleware] DEBUG MODE ON | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.811 [99778] DEBUG [rhodecode.config.middleware] Using the following Mako template directories: ['rhodecode:templates'] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.812 [99778] DEBUG [rhodecode.config.middleware] Using the following pyramid.includes: [] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.844 [99778] INFO [rhodecode.model] RhodeCode 4.18.2 initializing db for postgresql://rhodecode:XXXXX@127.0.0.1:5432/rhodecode | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.846 [99778] INFO [rhodecode.config.environment] Enabled VCS backends: ['svn', 'git'] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.849 [99778] DEBUG [rhodecode.config.middleware] Initializing main includeme from middleware.pyc | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.874 [99778] DEBUG [rhodecode.lib.rc_cache] dogpile: found following cache regions: set(['cache_perms', 'cache_repo_longterm', 'sql_cache_short', 'cache_license', 'cache_repo']) | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.877 [99778] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_perms[{'async_creation_runner': None, 'name': 'cache_perms', 'function_key_generator': <function wrapper at 0x7f4276711848>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f42766fd290>, '_actual_backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f42766fded0>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f4280c39de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f4281a39c50>, 'key_mangler': None, 'expiration_time': 300, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f42766fded0>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.878 [99778] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_repo_longterm[{'async_creation_runner': None, 'name': 'cache_repo_longterm', 'function_key_generator': <function wrapper at 0x7f4276718668>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f4281a39d50>, '_actual_backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f4281a39e50>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f4280c39de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f427671b0d0>, 'key_mangler': None, 'expiration_time': 2592000, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f4281a39e50>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.878 [99778] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region sql_cache_short[{'async_creation_runner': None, 'name': 'sql_cache_short', 'function_key_generator': <function wrapper at 0x7f4276718758>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f427671b190>, '_actual_backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f427671b1d0>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f4280c39de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f427671b290>, 'key_mangler': None, 'expiration_time': 30, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f427671b1d0>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.879 [99778] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_license[{'async_creation_runner': None, 'name': 'cache_license', 'function_key_generator': <function wrapper at 0x7f42767188c0>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f427671b310>, '_actual_backend': <class 'rhodecode.lib.rc_cache.backends.FileNamespaceBackend'> `/home/rhodecode/.rccontrol/community-1/data/rc_cache_3`, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f4280c39de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f427671b450>, 'key_mangler': None, 'expiration_time': 300, '_user_defined_key_mangler': None, 'backend': <class 'rhodecode.lib.rc_cache.backends.FileNamespaceBackend'> `/home/rhodecode/.rccontrol/community-1/data/rc_cache_3`}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:34.880 [99778] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_repo[{'async_creation_runner': None, 'name': 'cache_repo', 'function_key_generator': <function wrapper at 0x7f42767189b0>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f427671b4d0>, '_actual_backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f427671b590>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f4280c39de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f427671b510>, 'key_mangler': None, 'expiration_time': 2592000, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f427671b590>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:35.046 [99778] INFO [celery.rhodecode.loader] Configuring celery based on `/home/rhodecode/.rccontrol/community-1/rhodecode.ini` file | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:35.052 [99778] DEBUG [celery.rhodecode.loader] Got custom celery conf: {u'task_always_eager': False, u'broker_url': u'redis://localhost:6379/8', u'max_tasks_per_child': 100} | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:35.052 [99778] INFO [rhodecode.config.middleware] Pyramid app `pyramid_app_with_cleanup` created and configured in 0.24s | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:37:35.057 [99778] DEBUG [rhodecode.apps.ssh_support.lib.backends] Mode: `auto` User: `mauldinl:5` Shell: `False` SSH Command: `"svnserve -t"` SCM_DETECTED: `svn` SCM Mode: `auto` SCM Repo: `None` | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.282 [99778] DEBUG [rhodecode.apps.ssh_support.lib.backends] Update key id:`2` fingerprint:`MD5:9e:12:51:5d:00:36:87:79:56:0f:6e:c0:52:1a:0b:8e` access time | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.282 [99778] DEBUG [rhodecode.apps.ssh_support.lib.backends] SSH Connection info {'client_port': '52644', 'client_ip': '138.254.18.237', 'server_ip': '138.254.135.35', 'server_port': '22'} | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.284 [99778] DEBUG [rhodecode.lib.auth] AuthUser: starting data propagation for new potential user | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.286 [99778] DEBUG [rhodecode.lib.auth] Trying Auth User lookup by USER ID: `5` | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.287 [99778] DEBUG [rhodecode.model.user] AuthUser: fill data execution based on: user_id:5 api_key:None username:None | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.287 [99778] DEBUG [rhodecode.model.user] AuthUser: filling found user:<User('id:5:mauldinl')> data | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.294 [99778] DEBUG [rhodecode.lib.auth] AuthUser: propagated user is now <AuthUser('id:5[mauldinl] ip:None auth:False')> | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.294 [99778] DEBUG [rhodecode.lib.auth] Computing PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> scope `None` with caching: True[TTL: 300s] | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.298 [99778] DEBUG [rhodecode.lib.auth] PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> computed in 0.0036s: [('repositories', 541), ('global', 2), ('repositories_groups', 18), ('repository_branches', 0), ('user_groups', 5)] | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.310 [99778] DEBUG [rhodecode.lib.auth] Computing PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> scope `OrderedDict([('repo_id', -1), ('user_group_id', -1), ('repo_group_id', -1), ('repo_name', None)])` with caching: True[TTL: 300s] | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.347 [99778] DEBUG [rhodecode.lib.auth] PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> computed in 0.0370s: [('repository_branches', 0), ('global', 2), ('repositories', 0), ('repositories_groups', 0), ('user_groups', 0)] | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.349 [99778] DEBUG [rhodecode.apps.ssh_support.lib.backends] VCS detected:`svn` mode: `auto` repo_name: None, branch_permission_checks:False | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.349 [99778] DEBUG [rhodecode.lib.hooks_daemon] Preparing HTTP callback daemon at `127.0.0.1:36369` and registering hook object | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.350 [99778] DEBUG [rhodecode.lib.hooks_daemon] Prepared a callback daemon: HttpHooksCallbackDaemon at url `127.0.0.1:36369` | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.350 [99778] DEBUG [rhodecode.lib.hooks_daemon] Running `HttpHooksCallbackDaemon` callback daemon | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.350 [99778] DEBUG [rhodecode.lib.hooks_daemon] Running event loop of callback daemon in background thread | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.350 [99778] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Using svn binaries from path ~/.rccontrol/vcsserver-1/profile/bin/svnserve | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.350 [99778] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Final CMD: ~/.rccontrol/vcsserver-1/profile/bin/svnserve -t --config-file /tmp/tmp3ldrQa -r /srv/rhodecode/repos/ | req_id:80516960-5025-4885-8e80-84dfefb2483e
svnserve: warning: cannot set LC_CTYPE locale
svnserve: warning: environment variable LANG is en_US.UTF-8
svnserve: warning: please check that your locale name is correct
2020-03-30 06:37:35.510 [99778] DEBUG [rhodecode.apps.ssh_support.lib.backends.base] permission for <User('id:5:mauldinl')> on playground/teststructure are: repository.admin | req_id:80516960-5025-4885-8e80-84dfefb2483e
2020-03-30 06:37:35.510 [99778] INFO [rhodecode.apps.ssh_support.lib.backends.base] READ Permissions for User "<User('id:5:mauldinl')>" detected to repo "playground/teststructure"! | req_id:80516960-5025-4885-8e80-84dfefb2483e
A teststructure_ssh/trunk
A teststructure_ssh/trunk/bar
A teststructure_ssh/trunk/bar/test_b2.sql
A teststructure_ssh/trunk/bar/test_b3.sql
A teststructure_ssh/trunk/bar/test_b5.sql
A teststructure_ssh/trunk/bar/test_b7.sql
A teststructure_ssh/trunk/foo
A teststructure_ssh/trunk/foo/test_a.sql
Checked out revision 16.
❰mauldinl❙/tmp❱✔≻ cd teststructure_ssh/trunk/
❰mauldinl❙/tmp/teststructure_ssh/trunk❱✔≻ ls
bar/ foo/
❰mauldinl❙/tmp/teststructure_ssh/trunk❱✔≻ cd foo
❰mauldinl❙/tmp/teststructure_ssh/trunk/foo❱✔≻ ls
test_a.sql
❰mauldinl❙/tmp/teststructure_ssh/trunk/foo❱✔≻ svn mv test_a.sql test_b.sql
A test_b.sql
D test_a.sql
❰mauldinl❙/tmp/teststructure_ssh/trunk/foo❱✔≻ svn commit -m "Move file"
2020-03-30 06:38:07.291 [99839] DEBUG [rhodecode.config.middleware] DEBUG MODE ON | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.292 [99839] DEBUG [rhodecode.config.middleware] Using the following Mako template directories: ['rhodecode:templates'] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.292 [99839] DEBUG [rhodecode.config.middleware] Using the following pyramid.includes: [] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.325 [99839] INFO [rhodecode.model] RhodeCode 4.18.2 initializing db for postgresql://rhodecode:XXXXX@127.0.0.1:5432/rhodecode | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.326 [99839] INFO [rhodecode.config.environment] Enabled VCS backends: ['svn', 'git'] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.330 [99839] DEBUG [rhodecode.config.middleware] Initializing main includeme from middleware.pyc | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.355 [99839] DEBUG [rhodecode.lib.rc_cache] dogpile: found following cache regions: set(['cache_perms', 'cache_repo_longterm', 'sql_cache_short', 'cache_license', 'cache_repo']) | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.358 [99839] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_perms[{'async_creation_runner': None, 'name': 'cache_perms', 'function_key_generator': <function wrapper at 0x7f8fdae5d848>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f8fdae49290>, '_actual_backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f8fdae49ed0>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f8fe5385de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f8fe6185c50>, 'key_mangler': None, 'expiration_time': 300, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f8fdae49ed0>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.359 [99839] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_repo_longterm[{'async_creation_runner': None, 'name': 'cache_repo_longterm', 'function_key_generator': <function wrapper at 0x7f8fdae64668>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f8fe6185d50>, '_actual_backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f8fe6185e50>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f8fe5385de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f8fdae670d0>, 'key_mangler': None, 'expiration_time': 2592000, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f8fe6185e50>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.359 [99839] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region sql_cache_short[{'async_creation_runner': None, 'name': 'sql_cache_short', 'function_key_generator': <function wrapper at 0x7f8fdae64758>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f8fdae67190>, '_actual_backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f8fdae671d0>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f8fe5385de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f8fdae67290>, 'key_mangler': None, 'expiration_time': 30, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.LRUMemoryBackend object at 0x7f8fdae671d0>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.360 [99839] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_license[{'async_creation_runner': None, 'name': 'cache_license', 'function_key_generator': <function wrapper at 0x7f8fdae648c0>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f8fdae67310>, '_actual_backend': <class 'rhodecode.lib.rc_cache.backends.FileNamespaceBackend'> `/home/rhodecode/.rccontrol/community-1/data/rc_cache_3`, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f8fe5385de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f8fdae67450>, 'key_mangler': None, 'expiration_time': 300, '_user_defined_key_mangler': None, 'backend': <class 'rhodecode.lib.rc_cache.backends.FileNamespaceBackend'> `/home/rhodecode/.rccontrol/community-1/data/rc_cache_3`}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.361 [99839] DEBUG [rhodecode.lib.rc_cache] dogpile: registering a new region cache_repo[{'async_creation_runner': None, 'name': 'cache_repo', 'function_key_generator': <function wrapper at 0x7f8fdae649b0>, 'region_invalidator': <dogpile.cache.region.DefaultInvalidationStrategy object at 0x7f8fdae674d0>, '_actual_backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f8fdae67590>, 'function_multi_key_generator': <function function_multi_key_generator at 0x7f8fe5385de8>, '_lock_registry': <dogpile.util.nameregistry.NameRegistry object at 0x7f8fdae67510>, 'key_mangler': None, 'expiration_time': 2592000, '_user_defined_key_mangler': None, 'backend': <rhodecode.lib.rc_cache.backends.RedisPickleBackend object at 0x7f8fdae67590>}] | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.526 [99839] INFO [celery.rhodecode.loader] Configuring celery based on `/home/rhodecode/.rccontrol/community-1/rhodecode.ini` file | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.532 [99839] DEBUG [celery.rhodecode.loader] Got custom celery conf: {u'task_always_eager': False, u'broker_url': u'redis://localhost:6379/8', u'max_tasks_per_child': 100} | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.532 [99839] INFO [rhodecode.config.middleware] Pyramid app `pyramid_app_with_cleanup` created and configured in 0.24s | req_id:00000000-0000-0000-0000-000000000000
2020-03-30 06:38:07.537 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends] Mode: `auto` User: `mauldinl:5` Shell: `False` SSH Command: `"svnserve -t"` SCM_DETECTED: `svn` SCM Mode: `auto` SCM Repo: `None` | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.758 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends] Update key id:`2` fingerprint:`MD5:9e:12:51:5d:00:36:87:79:56:0f:6e:c0:52:1a:0b:8e` access time | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.758 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends] SSH Connection info {'client_port': '52644', 'client_ip': '138.254.18.237', 'server_ip': '138.254.135.35', 'server_port': '22'} | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.760 [99839] DEBUG [rhodecode.lib.auth] AuthUser: starting data propagation for new potential user | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.763 [99839] DEBUG [rhodecode.lib.auth] Trying Auth User lookup by USER ID: `5` | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.763 [99839] DEBUG [rhodecode.model.user] AuthUser: fill data execution based on: user_id:5 api_key:None username:None | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.763 [99839] DEBUG [rhodecode.model.user] AuthUser: filling found user:<User('id:5:mauldinl')> data | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.770 [99839] DEBUG [rhodecode.lib.auth] AuthUser: propagated user is now <AuthUser('id:5[mauldinl] ip:None auth:False')> | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.770 [99839] DEBUG [rhodecode.lib.auth] Computing PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> scope `None` with caching: True[TTL: 300s] | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.774 [99839] DEBUG [rhodecode.lib.auth] PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> computed in 0.0034s: [('repositories', 541), ('global', 2), ('repositories_groups', 18), ('repository_branches', 0), ('user_groups', 5)] | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.785 [99839] DEBUG [rhodecode.lib.auth] Computing PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> scope `OrderedDict([('repo_id', -1), ('user_group_id', -1), ('repo_group_id', -1), ('repo_name', None)])` with caching: True[TTL: 300s] | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.786 [99839] DEBUG [rhodecode.lib.auth] PERMISSION tree for user <AuthUser('id:5[mauldinl] ip:None auth:False')> computed in 0.0004s: [('repositories', 0), ('global', 2), ('repository_branches', 0), ('repositories_groups', 0), ('user_groups', 0)] | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.788 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends] VCS detected:`svn` mode: `auto` repo_name: None, branch_permission_checks:False | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.788 [99839] DEBUG [rhodecode.lib.hooks_daemon] Preparing HTTP callback daemon at `127.0.0.1:56149` and registering hook object | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.788 [99839] DEBUG [rhodecode.lib.hooks_daemon] Prepared a callback daemon: HttpHooksCallbackDaemon at url `127.0.0.1:56149` | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.789 [99839] DEBUG [rhodecode.lib.hooks_daemon] Running `HttpHooksCallbackDaemon` callback daemon | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.789 [99839] DEBUG [rhodecode.lib.hooks_daemon] Running event loop of callback daemon in background thread | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.789 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Using svn binaries from path ~/.rccontrol/vcsserver-1/profile/bin/svnserve | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.789 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends.svn] Final CMD: ~/.rccontrol/vcsserver-1/profile/bin/svnserve -t --config-file /tmp/tmpz0gGYF -r /srv/rhodecode/repos/ | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
svnserve: warning: cannot set LC_CTYPE locale
svnserve: warning: environment variable LANG is en_US.UTF-8
svnserve: warning: please check that your locale name is correct
2020-03-30 06:38:07.969 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends.base] permission for <User('id:5:mauldinl')> on playground/teststructure/trunk/foo are: None | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.969 [99839] ERROR [rhodecode.apps.ssh_support.lib.backends.base] user `<User('id:5:mauldinl')>` permissions to repo:playground/teststructure/trunk/foo are empty. Forbidding access. | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.970 [99839] DEBUG [rhodecode.apps.ssh_support.lib.backends.base] Running cleanup with cache invalidation | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.976 [99839] DEBUG [rhodecode.lib.hooks_daemon] Exiting `HttpHooksCallbackDaemon` callback daemon | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.976 [99839] DEBUG [rhodecode.lib.hooks_daemon] Waiting for background thread to finish. | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
2020-03-30 06:38:07.983 [99839] DEBUG [rhodecode.lib.hooks_daemon] Background thread done. | req_id:f2d3044f-0809-458c-9342-082d91e7c7ef
svnserve: E210002: Network connection closed unexpectedly
svn: E170013: Commit failed (details follow):
svn: E170013: Unable to connect to a repository at URL 'svn+ssh://rhodecode@XXXXX/playground/teststructure/trunk/foo'
svn: E210002: Network connection closed unexpectedly
</code></pre> RhodeCode CE/EE - Bug #5604 (Resolved): Search error on second result pagehttps://issues.rhodecode.com/issues/56042020-03-27T19:55:33ZLuke Mauldin
<p>Encountered error when using a smultiple search terms and navigating to the second page.<br><br>
Scenario:</p>
<ol>
<li>Search for: FromError AND extension:go --- the url generated is: httpsXXXXcom/_admin/search?q=FromError+AND+extension%3Ago&type=content&max_lines</li>
<li>Navigate to the second page of the results. =10The search query is changed in the search box to be: FromError%20AND%20extension%3Ago and the generated url is: httpsXXXXXcom/_admin/search?q=FromError%2520AND%2520extension%253Ago&max_lines=10&sort=desc%3Adate&type=content&pag</li>
</ol>
<p>It looks like the application is trying to encode the spaces in the URL but it is not working as expected.e=2</p>
RhodeCode CE/EE - Bug #5599 (Resolved): SVN navigation to trunk failshttps://issues.rhodecode.com/issues/55992020-03-27T16:23:49ZLuke Mauldin
<p>In an SVN repository navigation fails when trying to navigate to the version of the file on the trunk.</p>
<p>Scenario:</p>
<ul>
<li>Setup SVN repository with normal layout: branches, tags, trunk</li>
<li>Create a file trunk/test_4.txt and commit multiple changes to it</li>
<li>Navigate to view a non-HEAD revision (assume HEAD is revision 20, but view revision 18) - example: <a href="https://XXXXX/playground/testrepo/files/18/trunk/test_4.txt" class="external">https://XXXXX/playground/testrepo/files/18/trunk/test_4.txt</a></li>
<li>In the left hand side from the revision list choose 'trunk' and the URL generated link is wrong - <a href="https://etsgit.gvl.is.l-3com.com/playground/testrepo/files/trunk/test_4.txt@20/trunk/test_4.txt" class="external">https://etsgit.gvl.is.l-3com.com/playground/testrepo/files/trunk/test_4.txt@20/trunk/test_4.txt</a></li>
<li>If I manually edit the address to the following then it workshttps://etsgit.gvl.is.l-3com.com/playground/testrepo/files/20/trunk/test_4.txt: </li>
</ul>
<p>I have not been able to reproduce this with a Git repository.</p>
<p>Version: RhodeCode Enterprise 4.18.2 Community Edition </p>
RhodeCode CE/EE - Bug #5579 (Resolved): JS bug when a commit message can be parsed as a numberhttps://issues.rhodecode.com/issues/55792019-12-29T21:40:15ZOlivier Renaud
<p>Steps to reproduce:</p>
<ul>
<li>Push a commit in a feature branch, with the message "123"</li>
<li>Go to the Pull Request creation page, and select the branch in the "source" drop down.</li>
</ul>
<p>Javascript fails with "TypeError: rawMessage.split is not a function" in getTitleAndDescription (script.js:55503).<br>
The debugger shows that rawMessage is a number at this point, and not a string.</p>
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 - Bug #4296 (Resolved): [ee] Can not create pull requests with reviewers.https://issues.rhodecode.com/issues/42962016-10-24T17:20:47ZMartin Bornholdmartin@rhodecode.com
<a name="Description"></a>
<h1 >Description<a href="#Description" class="wiki-anchor">¶</a></h1>
<p>If i create a PR in CE it works but in EE it fails. I also get no error message.</p>
<a name="Steps-to-reproduce"></a>
<h1 >Steps to reproduce<a href="#Steps-to-reproduce" class="wiki-anchor">¶</a></h1>
<ol>
<li>Create a pr as admin user</li>
<li>Leave the default reviewer (admin itself) in place</li>
<li>Try to submit the PR</li>
<li>Error happens without error message.</li>
</ol>
<a name="Investigations-so-far"></a>
<h1 >Investigations so far<a href="#Investigations-so-far" class="wiki-anchor">¶</a></h1>
<p>The difference is in the data which is posted to the controller. In CE it works and the POST data looks like this:</p>
<pre><code>{u'review_members': [{u'reasons': [], 'user_id': u'2'}], 'target_repo': u'TestRepos/project', 'pullrequest_title': u'Default', 'source_repo': u'TestRepos/project-fork', 'target_ref': u'branch:default:89a6bb805daafd7fd64f398c20163fd393401f0a', 'user': u'', 'pullrequest_desc': u'- fork\r\n- fork\r\n', 'save': u'Submit Pull Request', u'revisions': [u'7fecd3f02a2cc73ac03d267ab234cabbfbb5bf31', u'06c48b467036bba03305640d1fb7854632dce351'], 'source_ref': u'branch:default:06c48b467036bba03305640d1fb7854632dce351'}
</code></pre>
<p>In EE it fails and the POST data looks like this:</p>
<pre><code>{'review_members': u'2', 'target_repo': u'TestRepos/project', 'pullrequest_title': u'Default', 'source_repo': u'TestRepos/project-fork', 'target_ref': u'branch:default:89a6bb805daafd7fd64f398c20163fd393401f0a', 'user': u'', 'pullrequest_desc': u'- fork\r\n- fork\r\n', 'save': u'Submit Pull Request', 'revisions': u'06c48b467036bba03305640d1fb7854632dce351', 'source_ref': u'branch:default:06c48b467036bba03305640d1fb7854632dce351'}
</code></pre>
<a name="Traceback"></a>
<h1 >Traceback<a href="#Traceback" class="wiki-anchor">¶</a></h1>
<pre><code>2016-10-24 16:56:06.533 ERROR [rhodecode.controllers.pullrequests] Error creating pull request: review_members: Errors:
The input must be dict-like (not a <type 'unicode'>: u'2')
Traceback (most recent call last):
File "/nix/store/l1rdgp35mnr58w3hww23l3h8q5zbcld7-python2.7-rhodecode-enterprise-ce-4.5.0/lib/python2.7/site-packages/rhodecode/controllers/pullrequests.py", line 411, in create
_form = PullRequestForm(repo.repo_id)().to_python(controls)
File "/nix/store/b6lchaz3i9a7gv71hlh60qgnw5z6k63c-python2.7-FormEncode-1.2.4/lib/python2.7/site-packages/formencode/api.py", line 419, in to_python
value = tp(value, state)
File "/nix/store/b6lchaz3i9a7gv71hlh60qgnw5z6k63c-python2.7-FormEncode-1.2.4/lib/python2.7/site-packages/formencode/schema.py", line 153, in _to_python
new[name] = validator.to_python(value, state)
Invalid: review_members: Errors:
The input must be dict-like (not a <type 'unicode'>: u'2')
</code></pre> 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 - Bug #4268 (Resolved): [ee] default reviewers from changed lines is returning wr...https://issues.rhodecode.com/issues/42682016-10-06T14:18:07ZDaniel Ddaniel@rhodecode.com
<p>When getting default reviewers from authors of changed lines, not all the hunks are being processed, just the first one, meaning the changed lines are wrong (too low)</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 #4233 (Resolved): slack, git push problemhttps://issues.rhodecode.com/issues/42332016-09-19T13:24:56ZMarcin Kuzminski [CTO]marcin@rhodecode.com
<p>got this while pushing to the website project:</p>
<pre><code>2016-09-19 10:52:04.619 CRITI [rhodecode.integrations.types.slack] {'author': u'Marcin Kuzminski <marcin@rhodecode.com>', 'branch': None, 'mentions': [], 'issues': [], 'url': 'https://internal-code.rhodecode.com/rhodecode-website/changeset/50586183192a283ea3dfbb2347174ec67a70574e', 'date': datetime.datetime(2016, 9, 19, 10, 51, 5), 'raw_id': '50586183192a283ea3dfbb2347174ec67a70574e', 'revision': 1879, 'short_id': '50586183192a', 'message_html': literal(u'settings: updated with latest changes\n'), 'reviewers': [], 'parents': [{'raw_id': 'ab5b2b1ad9c3058f374aba0434f71f987eaee3b7'}], 'message': u'settings: updated with latest changes\n'}
2016-09-19 10:52:04.619 ERROR [rhodecode.integrations] failure occured when sending event <rhodecode.events.repo.RepoPushEvent object at 0x7f8d29d05410> to integration <Integration(u'slack', 'root_repos')>
Traceback (most recent call last):
File "/nix/store/xa9k1grs480djz8cq6778cq828x3d6xs-python2.7-rhodecode-enterprise-ce-4.5.0+20160919x085905xb55b9717656ax48ec43f7e442/lib/python2.7/site-packages/rhodecode/integrations/__init__.py", line 54, in integrations_event_handler
integration_model.send_event(integration, event)
File "/nix/store/xa9k1grs480djz8cq6778cq828x3d6xs-python2.7-rhodecode-enterprise-ce-4.5.0+20160919x085905xb55b9717656ax48ec43f7e442/lib/python2.7/site-packages/rhodecode/model/integration.py", line 108, in send_event
handler.send_event(event)
File "/nix/store/xa9k1grs480djz8cq6778cq828x3d6xs-python2.7-rhodecode-enterprise-ce-4.5.0+20160919x085905xb55b9717656ax48ec43f7e442/lib/python2.7/site-packages/rhodecode/integrations/types/slack.py", line 139, in send_event
text = self.format_repo_push_event(data)
File "/nix/store/xa9k1grs480djz8cq6778cq828x3d6xs-python2.7-rhodecode-enterprise-ce-4.5.0+20160919x085905xb55b9717656ax48ec43f7e442/lib/python2.7/site-packages/rhodecode/integrations/types/slack.py", line 227, in format_repo_push_event
branch_commits = {'branch': branch_data[commit['branch']],
KeyError: None
</code></pre> 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>