Show More
@@ -23,6 +23,8 news | |||||
23 | - #415: Adding comment to changeset causes reload. |
|
23 | - #415: Adding comment to changeset causes reload. | |
24 | Comments are now added via ajax and doesn't reload the page |
|
24 | Comments are now added via ajax and doesn't reload the page | |
25 | - #374 LDAP config is discarded when LDAP can't be activated |
|
25 | - #374 LDAP config is discarded when LDAP can't be activated | |
|
26 | - limited push/pull operations are now logged for git in the journal | |||
|
27 | - bumped mercurial to 2.2.X series | |||
26 |
|
28 | |||
27 | fixes |
|
29 | fixes | |
28 | +++++ |
|
30 | +++++ | |
@@ -31,7 +33,7 fixes | |||||
31 | - fixed missing permission checks on show forks page |
|
33 | - fixed missing permission checks on show forks page | |
32 | - #418 cast to unicode fixes in notification objects |
|
34 | - #418 cast to unicode fixes in notification objects | |
33 | - #426 fixed mention extracting regex |
|
35 | - #426 fixed mention extracting regex | |
34 |
|
36 | - fixed remote-pulling for git remotes remopositories | ||
35 |
|
37 | |||
36 | 1.3.4 (**2012-03-28**) |
|
38 | 1.3.4 (**2012-03-28**) | |
37 | ---------------------- |
|
39 | ---------------------- |
@@ -67,7 +67,8 class SettingsController(BaseController) | |||||
67 | c.admin_user = session.get('admin_user') |
|
67 | c.admin_user = session.get('admin_user') | |
68 | c.admin_username = session.get('admin_username') |
|
68 | c.admin_username = session.get('admin_username') | |
69 | c.modules = sorted([(p.project_name, p.version) |
|
69 | c.modules = sorted([(p.project_name, p.version) | |
70 |
for p in pkg_resources.working_set] |
|
70 | for p in pkg_resources.working_set], | |
|
71 | key=lambda k: k[0].lower()) | |||
71 | c.py_version = platform.python_version() |
|
72 | c.py_version = platform.python_version() | |
72 | c.platform = platform.platform() |
|
73 | c.platform = platform.platform() | |
73 | super(SettingsController, self).__before__() |
|
74 | super(SettingsController, self).__before__() |
@@ -126,7 +126,12 class ChangelogController(BaseRepoContro | |||||
126 |
|
126 | |||
127 | elif repo.alias == 'hg': |
|
127 | elif repo.alias == 'hg': | |
128 | dag = graphmod.dagwalker(repo._repo, revs) |
|
128 | dag = graphmod.dagwalker(repo._repo, revs) | |
129 | c.dag = graphmod.colored(dag, repo._repo) |
|
129 | try: | |
|
130 | c.dag = graphmod.colored(dag) | |||
|
131 | except: | |||
|
132 | #HG 2.2+ | |||
|
133 | c.dag = graphmod.colored(dag, repo._repo) | |||
|
134 | ||||
130 | for (id, type, ctx, vtx, edges) in c.dag: |
|
135 | for (id, type, ctx, vtx, edges) in c.dag: | |
131 | if type != graphmod.CHANGESET: |
|
136 | if type != graphmod.CHANGESET: | |
132 | continue |
|
137 | continue |
@@ -226,7 +226,7 | |||||
226 | <tbody> |
|
226 | <tbody> | |
227 | %for key, value in c.modules: |
|
227 | %for key, value in c.modules: | |
228 | <tr> |
|
228 | <tr> | |
229 | <th>${key}</th> |
|
229 | <th style="text-align: right;padding-right:5px;">${key}</th> | |
230 | <td>${value}</td> |
|
230 | <td>${value}</td> | |
231 | </tr> |
|
231 | </tr> | |
232 | %endfor |
|
232 | %endfor |
@@ -16,7 +16,7 | |||||
16 | <div class="code-header"> |
|
16 | <div class="code-header"> | |
17 | <div class="stats"> |
|
17 | <div class="stats"> | |
18 | <div class="left img"><img src="${h.url('/images/icons/file.png')}"/></div> |
|
18 | <div class="left img"><img src="${h.url('/images/icons/file.png')}"/></div> | |
19 | <div class="left item"><pre>${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))}</pre></div> |
|
19 | <div class="left item"><pre class="tooltip" title="${c.file.changeset.date}">${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))}</pre></div> | |
20 | <div class="left item"><pre>${h.format_byte_size(c.file.size,binary=True)}</pre></div> |
|
20 | <div class="left item"><pre>${h.format_byte_size(c.file.size,binary=True)}</pre></div> | |
21 | <div class="left item last"><pre>${c.file.mimetype}</pre></div> |
|
21 | <div class="left item last"><pre>${c.file.mimetype}</pre></div> | |
22 | <div class="buttons"> |
|
22 | <div class="buttons"> |
@@ -42,8 +42,22 from os.path import dirname as dn | |||||
42 | sys.path.append(__root__) |
|
42 | sys.path.append(__root__) | |
43 |
|
43 | |||
44 | from rhodecode.lib import vcs |
|
44 | from rhodecode.lib import vcs | |
|
45 | from rhodecode.lib.compat import OrderedSet | |||
|
46 | from rhodecode.lib.vcs.exceptions import RepositoryError | |||
45 |
|
47 | |||
46 | BASE_URI = 'http://127.0.0.1:5001/%s' |
|
48 | PASES = 3 | |
|
49 | HOST = 'http://127.0.0.1' | |||
|
50 | PORT = 5000 | |||
|
51 | BASE_URI = '%s:%s/' % (HOST, PORT) | |||
|
52 | ||||
|
53 | if len(sys.argv) == 2: | |||
|
54 | BASE_URI = sys.argv[1] | |||
|
55 | ||||
|
56 | if not BASE_URI.endswith('/'): | |||
|
57 | BASE_URI += '/' | |||
|
58 | ||||
|
59 | print 'Crawling @ %s' % BASE_URI | |||
|
60 | BASE_URI += '%s' | |||
47 | PROJECT_PATH = jn('/', 'home', 'marcink', 'hg_repos') |
|
61 | PROJECT_PATH = jn('/', 'home', 'marcink', 'hg_repos') | |
48 | PROJECTS = [ |
|
62 | PROJECTS = [ | |
49 | 'linux-magx-pbranch', |
|
63 | 'linux-magx-pbranch', | |
@@ -62,7 +76,20 o.addheaders = [ | |||||
62 | urllib2.install_opener(o) |
|
76 | urllib2.install_opener(o) | |
63 |
|
77 | |||
64 |
|
78 | |||
|
79 | def _get_repo(proj): | |||
|
80 | if isinstance(proj, basestring): | |||
|
81 | repo = vcs.get_repo(jn(PROJECT_PATH, proj)) | |||
|
82 | proj = proj | |||
|
83 | else: | |||
|
84 | repo = proj | |||
|
85 | proj = repo.name | |||
|
86 | ||||
|
87 | return repo, proj | |||
|
88 | ||||
|
89 | ||||
65 | def test_changelog_walk(proj, pages=100): |
|
90 | def test_changelog_walk(proj, pages=100): | |
|
91 | repo, proj = _get_repo(proj) | |||
|
92 | ||||
66 | total_time = 0 |
|
93 | total_time = 0 | |
67 | for i in range(1, pages): |
|
94 | for i in range(1, pages): | |
68 |
|
95 | |||
@@ -81,10 +108,11 def test_changelog_walk(proj, pages=100) | |||||
81 |
|
108 | |||
82 |
|
109 | |||
83 | def test_changeset_walk(proj, limit=None): |
|
110 | def test_changeset_walk(proj, limit=None): | |
|
111 | repo, proj = _get_repo(proj) | |||
|
112 | ||||
84 | print 'processing', jn(PROJECT_PATH, proj) |
|
113 | print 'processing', jn(PROJECT_PATH, proj) | |
85 | total_time = 0 |
|
114 | total_time = 0 | |
86 |
|
115 | |||
87 | repo = vcs.get_repo(jn(PROJECT_PATH, proj)) |
|
|||
88 | cnt = 0 |
|
116 | cnt = 0 | |
89 | for i in repo: |
|
117 | for i in repo: | |
90 | cnt += 1 |
|
118 | cnt += 1 | |
@@ -106,14 +134,11 def test_changeset_walk(proj, limit=None | |||||
106 |
|
134 | |||
107 |
|
135 | |||
108 | def test_files_walk(proj, limit=100): |
|
136 | def test_files_walk(proj, limit=100): | |
|
137 | repo, proj = _get_repo(proj) | |||
|
138 | ||||
109 | print 'processing', jn(PROJECT_PATH, proj) |
|
139 | print 'processing', jn(PROJECT_PATH, proj) | |
110 | total_time = 0 |
|
140 | total_time = 0 | |
111 |
|
141 | |||
112 | repo = vcs.get_repo(jn(PROJECT_PATH, proj)) |
|
|||
113 |
|
||||
114 | from rhodecode.lib.compat import OrderedSet |
|
|||
115 | from rhodecode.lib.vcs.exceptions import RepositoryError |
|
|||
116 |
|
||||
117 | paths_ = OrderedSet(['']) |
|
142 | paths_ = OrderedSet(['']) | |
118 | try: |
|
143 | try: | |
119 | tip = repo.get_changeset('tip') |
|
144 | tip = repo.get_changeset('tip') | |
@@ -150,10 +175,10 def test_files_walk(proj, limit=100): | |||||
150 | print 'average on req', total_time / float(cnt) |
|
175 | print 'average on req', total_time / float(cnt) | |
151 |
|
176 | |||
152 | if __name__ == '__main__': |
|
177 | if __name__ == '__main__': | |
153 |
|
178 | for path in PROJECTS: | ||
154 | for p in PROJECTS: |
|
179 | repo = vcs.get_repo(jn(PROJECT_PATH, path)) | |
155 | test_changelog_walk(p, 40) |
|
180 | for i in range(PASES): | |
156 | time.sleep(2) |
|
181 | print 'PASS %s/%s' % (i, PASES) | |
157 |
test_change |
|
182 | test_changelog_walk(repo, pages=80) | |
158 | time.sleep(2) |
|
183 | test_changeset_walk(repo, limit=100) | |
159 | test_files_walk(p, 100) |
|
184 | test_files_walk(repo, limit=100) |
General Comments 0
You need to be logged in to leave comments.
Login now