# HG changeset patch # User Marcin Kuzminski # Date 2010-05-22 02:20:26 # Node ID 3d1dd13887f9da2e20379308b5fb47fe41d5a55e # Parent 50a39f923f311da3ac493cde8094d2b41afe4104 invalidate the repo list also for online changes. Small fixes in LoginRequired decorator. Cleaned hgwebdir config. diff --git a/hgwebdir.config b/hgwebdir.config --- a/hgwebdir.config +++ b/hgwebdir.config @@ -10,10 +10,6 @@ hgext.highlight= push_ssl = false allow_archive = gz zip bz2 allow_push = * -templates=/home/marcink/python_workspace/hg_app/pylons_app/templates/ -style = monoblue_custom -pygments_style = trac -staticurl = /hg_static/ baseurl = / [paths] diff --git a/pylons_app/lib/auth.py b/pylons_app/lib/auth.py --- a/pylons_app/lib/auth.py +++ b/pylons_app/lib/auth.py @@ -83,11 +83,11 @@ class LoginRequired(object): pass def __call__(self, func): - log.info('Checking login required') + user = session.get('hg_app_user', AuthUser()) + log.info('Checking login required for %s', user.username) @wraps(func) def _wrapper(*fargs, **fkwargs): - user = session.get('hg_app_user', AuthUser()) if user.is_authenticated: log.info('user %s is authenticated', user.username) func(*fargs) diff --git a/pylons_app/lib/simplehg.py b/pylons_app/lib/simplehg.py --- a/pylons_app/lib/simplehg.py +++ b/pylons_app/lib/simplehg.py @@ -65,6 +65,7 @@ class SimpleHg(object): """we know that some change was made to repositories and we should invalidate the cache to see the changes right away""" invalidate_cache('full_changelog', repo_name) + invalidate_cache('cached_repo_list') return app(environ, start_response) def _make_app(self): diff --git a/pylons_app/lib/utils.py b/pylons_app/lib/utils.py --- a/pylons_app/lib/utils.py +++ b/pylons_app/lib/utils.py @@ -91,10 +91,12 @@ def make_ui(path='hgwebdir.config', chec return baseui def invalidate_cache(name, *args): + """Invalidates given name cache""" + from beaker.cache import region_invalidate log.info('INVALIDATING CACHE FOR %s', name) - """propaget our arguments to make sure invalidation works. First + """propagate our arguments to make sure invalidation works. First argument has to be the name of cached func name give to cache decorator without that the invalidation would not work""" tmp = [name]