diff --git a/docs/changelog.rst b/docs/changelog.rst --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -23,6 +23,8 @@ news - #415: Adding comment to changeset causes reload. Comments are now added via ajax and doesn't reload the page - #374 LDAP config is discarded when LDAP can't be activated +- limited push/pull operations are now logged for git in the journal +- bumped mercurial to 2.2.X series fixes +++++ @@ -31,7 +33,7 @@ fixes - fixed missing permission checks on show forks page - #418 cast to unicode fixes in notification objects - #426 fixed mention extracting regex - +- fixed remote-pulling for git remotes remopositories 1.3.4 (**2012-03-28**) ---------------------- diff --git a/rhodecode/controllers/admin/settings.py b/rhodecode/controllers/admin/settings.py --- a/rhodecode/controllers/admin/settings.py +++ b/rhodecode/controllers/admin/settings.py @@ -67,7 +67,8 @@ class SettingsController(BaseController) c.admin_user = session.get('admin_user') c.admin_username = session.get('admin_username') c.modules = sorted([(p.project_name, p.version) - for p in pkg_resources.working_set]) + for p in pkg_resources.working_set], + key=lambda k: k[0].lower()) c.py_version = platform.python_version() c.platform = platform.platform() super(SettingsController, self).__before__() diff --git a/rhodecode/controllers/changelog.py b/rhodecode/controllers/changelog.py --- a/rhodecode/controllers/changelog.py +++ b/rhodecode/controllers/changelog.py @@ -126,7 +126,12 @@ class ChangelogController(BaseRepoContro elif repo.alias == 'hg': dag = graphmod.dagwalker(repo._repo, revs) - c.dag = graphmod.colored(dag, repo._repo) + try: + c.dag = graphmod.colored(dag) + except: + #HG 2.2+ + c.dag = graphmod.colored(dag, repo._repo) + for (id, type, ctx, vtx, edges) in c.dag: if type != graphmod.CHANGESET: continue diff --git a/rhodecode/templates/admin/settings/settings.html b/rhodecode/templates/admin/settings/settings.html --- a/rhodecode/templates/admin/settings/settings.html +++ b/rhodecode/templates/admin/settings/settings.html @@ -226,7 +226,7 @@ %for key, value in c.modules: - ${key} + ${key} ${value} %endfor diff --git a/rhodecode/templates/files/files_source.html b/rhodecode/templates/files/files_source.html --- a/rhodecode/templates/files/files_source.html +++ b/rhodecode/templates/files/files_source.html @@ -16,7 +16,7 @@
-
${h.link_to("r%s:%s" % (c.file.changeset.revision,h.short_id(c.file.changeset.raw_id)),h.url('changeset_home',repo_name=c.repo_name,revision=c.file.changeset.raw_id))}
+
${h.link_to("r%s:%s" % (c.file.changeset.revision,h.short_id(c.file.changeset.raw_id)),h.url('changeset_home',repo_name=c.repo_name,revision=c.file.changeset.raw_id))}
${h.format_byte_size(c.file.size,binary=True)}
${c.file.mimetype}
diff --git a/rhodecode/tests/rhodecode_crawler.py b/rhodecode/tests/rhodecode_crawler.py --- a/rhodecode/tests/rhodecode_crawler.py +++ b/rhodecode/tests/rhodecode_crawler.py @@ -42,8 +42,22 @@ __root__ = dn(dn(dn(__here__))) sys.path.append(__root__) from rhodecode.lib import vcs +from rhodecode.lib.compat import OrderedSet +from rhodecode.lib.vcs.exceptions import RepositoryError -BASE_URI = 'http://127.0.0.1:5001/%s' +PASES = 3 +HOST = 'http://127.0.0.1' +PORT = 5000 +BASE_URI = '%s:%s/' % (HOST, PORT) + +if len(sys.argv) == 2: + BASE_URI = sys.argv[1] + +if not BASE_URI.endswith('/'): + BASE_URI += '/' + +print 'Crawling @ %s' % BASE_URI +BASE_URI += '%s' PROJECT_PATH = jn('/', 'home', 'marcink', 'hg_repos') PROJECTS = [ 'linux-magx-pbranch', @@ -62,7 +76,20 @@ o.addheaders = [ urllib2.install_opener(o) +def _get_repo(proj): + if isinstance(proj, basestring): + repo = vcs.get_repo(jn(PROJECT_PATH, proj)) + proj = proj + else: + repo = proj + proj = repo.name + + return repo, proj + + def test_changelog_walk(proj, pages=100): + repo, proj = _get_repo(proj) + total_time = 0 for i in range(1, pages): @@ -81,10 +108,11 @@ def test_changelog_walk(proj, pages=100) def test_changeset_walk(proj, limit=None): + repo, proj = _get_repo(proj) + print 'processing', jn(PROJECT_PATH, proj) total_time = 0 - repo = vcs.get_repo(jn(PROJECT_PATH, proj)) cnt = 0 for i in repo: cnt += 1 @@ -106,14 +134,11 @@ def test_changeset_walk(proj, limit=None def test_files_walk(proj, limit=100): + repo, proj = _get_repo(proj) + print 'processing', jn(PROJECT_PATH, proj) total_time = 0 - repo = vcs.get_repo(jn(PROJECT_PATH, proj)) - - from rhodecode.lib.compat import OrderedSet - from rhodecode.lib.vcs.exceptions import RepositoryError - paths_ = OrderedSet(['']) try: tip = repo.get_changeset('tip') @@ -150,10 +175,10 @@ def test_files_walk(proj, limit=100): print 'average on req', total_time / float(cnt) if __name__ == '__main__': - - for p in PROJECTS: - test_changelog_walk(p, 40) - time.sleep(2) - test_changeset_walk(p, limit=100) - time.sleep(2) - test_files_walk(p, 100) + for path in PROJECTS: + repo = vcs.get_repo(jn(PROJECT_PATH, path)) + for i in range(PASES): + print 'PASS %s/%s' % (i, PASES) + test_changelog_walk(repo, pages=80) + test_changeset_walk(repo, limit=100) + test_files_walk(repo, limit=100)