I fixed it by forcing a local timezone
localtz = pytz.timezone('Europe/Berlin')
feed.add_item(title=h.shorter(commit.message, 160),
link=url('changeset_home', repo_name=repo_name,
revision=commit.raw_id, qualified=True),
author_name=commit.author,
description=''.join(self.__get_desc(commit)),
pubdate=localtz.localize(commit.date),
)
then it will display matching datetimes as the screenshot shows.
Also, adding to the conversation Marcin gave a link to an old bitbucket issue regarding the problem:
https://bitbucket.org/marcinkuzminski/rhodecode/issues/629/rss-feed-of-the-journal-reports-incorrect
Conclusion was to add timezone info to that date.
Just a technical note:
Trying to use pytz automatic localization didn't seem to do the trick. Using the code below it was still displaying GMT-0 instead of my VM timezone.
pubdate=pytz.utc.localize(commit.date)
So I guess the biggest issue here is how to identify which timezone Rhodecode has.