@@ -45,6 +45,7 @@ static_files = true
lang=en
cache_dir = %(here)s/data
index_dir = %(here)s/data/index
cut_off_limit = 256000
####################################
### CELERY CONFIG ####
@@ -45,6 +45,7 @@ static_files = false
@@ -46,6 +46,7 @@ lang=en
app_instance_uuid = ${app_instance_uuid}
#!/usr/bin/env python
# encoding: utf-8
# changeset controller for pylons
# Copyright (C) 2009-2010 Marcin Kuzminski <marcin@python-works.com>
# -*- coding: utf-8 -*-
"""
rhodecode.controllers.changeset
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
changeset controller for pylons
:created_on: Apr 25, 2010
:author: marcink
:copyright: (C) 2009-2010 Marcin Kuzminski <marcin@python-works.com>
:license: GPLv3, see COPYING for more details.
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; version 2
@@ -16,24 +24,22 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301, USA.
Created on April 25, 2010
@author: marcink
import logging
import traceback
from pylons import tmpl_context as c, url, request, response
from pylons.i18n.translation import _
from pylons.controllers.util import redirect
import rhodecode.lib.helpers as h
from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator
from rhodecode.lib.base import BaseController, render
from rhodecode.lib.utils import EmptyChangeset
from rhodecode.model.scm import ScmModel
from vcs.exceptions import RepositoryError, ChangesetError
from vcs.nodes import FileNode
from vcs.utils import diffs as differ
log = logging.getLogger(__name__)
@@ -47,7 +53,6 @@ class ChangesetController(BaseController
def index(self, revision):
hg_model = ScmModel()
cut_off_limit = 1024 * 250
def wrap_to_table(str):
@@ -82,7 +87,7 @@ class ChangesetController(BaseController
diff = wrap_to_table(_('binary file'))
else:
c.sum_added += node.size
if c.sum_added < cut_off_limit:
if c.sum_added < self.cut_off_limit:
f_udiff = differ.get_udiff(filenode_old, node)
diff = differ.DiffProcessor(f_udiff).as_html()
@@ -108,7 +113,7 @@ class ChangesetController(BaseController
if c.sum_removed < cut_off_limit:
if c.sum_removed < self.cut_off_limit:
if diff:
@@ -151,7 +156,7 @@ class ChangesetController(BaseController
for node in c.changeset.added:
filenode_old = FileNode(node.path, '')
if filenode_old.is_binary or node.is_binary:
diff = _('binary file') +'\n'
diff = _('binary file') + '\n'
diff = differ.DiffProcessor(f_udiff).raw_diff()
@@ -173,15 +178,15 @@ class ChangesetController(BaseController
c.changes.append(('changed', node, diff, cs1, cs2))
response.content_type = 'text/plain'
if method == 'download':
response.content_disposition = 'attachment; filename=%s.patch' % revision
parent = True if len(c.changeset.parents) > 0 else False
c.parent_tmpl = 'Parent %s' % c.changeset.parents[0].raw_id if parent else ''
c.diffs = ''
for x in c.changes:
c.diffs += x[2]
return render('changeset/raw_changeset.html')
# files controller for pylons
rhodecode.controllers.files
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Files controller for RhodeCode
:created_on: Apr 21, 2010
@@ -17,25 +24,24 @@
Created on April 21, 2010
files controller for pylons
import tempfile
from mercurial import archival
from pylons import request, response, session, tmpl_context as c, url
@@ -46,7 +52,6 @@ class FilesController(BaseController):
'repository.admin')
def __before__(self):
super(FilesController, self).__before__()
c.file_size_limit = 250 * 1024 #limit of file size to display
def index(self, repo_name, revision, f_path):
@@ -197,13 +202,13 @@ class FilesController(BaseController):
return diff.raw_diff()
elif c.action == 'diff':
if node1.size > c.file_size_limit or node2.size > c.file_size_limit:
if node1.size > self.cut_off_limit or node2.size > self.cut_off_limit:
c.cur_diff = _('Diff is to big to display')
c.cur_diff = diff.as_html()
#default option
@@ -20,7 +20,7 @@ class BaseController(WSGIController):
c.repo_name = get_repo_slug(request)
c.cached_repo_list = ScmModel().get_repos()
c.backends = BACKENDS.keys()
self.cut_off_limit = int(config['cut_off_limit'])
self.sa = meta.Session()
scm_model = ScmModel(self.sa)
#c.unread_journal = scm_model.get_unread_journal()
@@ -44,6 +44,7 @@ static_files = true
index_dir = /tmp/index
Status change: