diff --git a/rhodecode/controllers/feed.py b/rhodecode/controllers/feed.py
--- a/rhodecode/controllers/feed.py
+++ b/rhodecode/controllers/feed.py
@@ -52,23 +52,23 @@ class FeedController(BaseRepoController)
self.feed_nr = 10
def __changes(self, cs):
- changes = ''
+ changes = []
a = [safe_unicode(n.path) for n in cs.added]
if a:
- changes += '\nA ' + '\nA '.join(a)
+ changes.append('\nA ' + '\nA '.join(a))
m = [safe_unicode(n.path) for n in cs.changed]
if m:
- changes += '\nM ' + '\nM '.join(m)
+ changes.append('\nM ' + '\nM '.join(m))
d = [safe_unicode(n.path) for n in cs.removed]
if d:
- changes += '\nD ' + '\nD '.join(d)
+ changes.append('\nD ' + '\nD '.join(d))
- changes += ''
+ changes.append('')
- return changes
+ return ''.join(changes)
def atom(self, repo_name):
"""Produce an atom-1.0 feed via feedgenerator module"""
@@ -78,16 +78,16 @@ class FeedController(BaseRepoController)
description=self.description % repo_name,
language=self.language,
ttl=self.ttl)
-
+ desc_msg = []
for cs in reversed(list(c.rhodecode_repo[-self.feed_nr:])):
- desc = '%s - %s
' % (cs.author, cs.date) - desc += self.__changes(cs) + desc_msg.append('%s - %s' % (cs.author, cs.date)) + desc_msg.append(self.__changes(cs)) feed.add_item(title=cs.message, link=url('changeset_home', repo_name=repo_name, revision=cs.raw_id, qualified=True), author_name=cs.author, - description=desc) + description=''.join(desc_msg)) response.content_type = feed.mime_type return feed.writeString('utf-8') @@ -100,16 +100,16 @@ class FeedController(BaseRepoController) description=self.description % repo_name, language=self.language, ttl=self.ttl) - + desc_msg = [] for cs in reversed(list(c.rhodecode_repo[-self.feed_nr:])): - desc = '%s - %s' % (cs.author, cs.date) - desc += self.__changes(cs) + desc_msg.append('%s - %s' % (cs.author, cs.date)) + desc_msg.append(self.__changes(cs)) feed.add_item(title=cs.message, link=url('changeset_home', repo_name=repo_name, revision=cs.raw_id, qualified=True), author_name=cs.author, - description=desc, + description=''.join(desc_msg), ) response.content_type = feed.mime_type diff --git a/rhodecode/lib/helpers.py b/rhodecode/lib/helpers.py --- a/rhodecode/lib/helpers.py +++ b/rhodecode/lib/helpers.py @@ -376,12 +376,12 @@ def action_parser(user_log, feed=False): invalidation_list=[]) message = lambda rev: get_changeset_safe(repo, rev).message - - cs_links = " " + ', '.join ([link_to(rev, + cs_links = [] + cs_links.append(" " + ', '.join ([link_to(rev, url('changeset_home', repo_name=repo_name, revision=rev), title=tooltip(message(rev)), - class_='tooltip') for rev in revs[:revs_limit] ]) + class_='tooltip') for rev in revs[:revs_limit] ])) compare_view = ('' '%s ' @@ -399,23 +399,23 @@ def action_parser(user_log, feed=False): '%s ' '%s') if not feed: - cs_links += html_tmpl % (_('and'), uniq_id, _('%s more') \ + cs_links.append(html_tmpl % (_('and'), uniq_id, _('%s more') \ % (len(revs) - revs_limit), - _('revisions')) + _('revisions'))) if not feed: html_tmpl = ' ' else: html_tmpl = ' %s ' - cs_links += html_tmpl % (uniq_id, ', '.join([link_to(rev, + cs_links.append(html_tmpl % (uniq_id, ', '.join([link_to(rev, url('changeset_home', repo_name=repo_name, revision=rev), title=message(rev), class_='tooltip') - for rev in revs[revs_limit:revs_top_limit]])) + for rev in revs[revs_limit:revs_top_limit]]))) if len(revs) > 1: - cs_links += compare_view - return cs_links + cs_links.append(compare_view) + return ''.join(cs_links) def get_fork_name(): repo_name = action_params