##// END OF EJS Templates
#37 fixed json imports for python2.5...
marcink -
r592:0a48c1ec default
parent child Browse files
Show More
@@ -47,15 +47,26 b' cache_dir = %(here)s/data'
47 ####################################
47 ####################################
48 ### BEAKER CACHE ####
48 ### BEAKER CACHE ####
49 ####################################
49 ####################################
50 beaker.cache.data_dir=/%(here)s/data/cache/data
50 beaker.cache.data_dir=/%(here)s/data/cache/data
51 beaker.cache.lock_dir=/%(here)s/data/cache/lock
51 beaker.cache.lock_dir=/%(here)s/data/cache/lock
52 beaker.cache.regions=super_short_term,short_term,long_term
52 beaker.cache.regions=super_short_term,short_term,long_term,sql_cache_short,sql_cache_med,sql_cache_long
53 beaker.cache.long_term.type=memory
53 beaker.cache.long_term.type=memory
54 beaker.cache.long_term.expire=36000
54 beaker.cache.long_term.expire=36000
55 beaker.cache.short_term.type=memory
55
56 beaker.cache.short_term.expire=60
56 beaker.cache.short_term.type=memory
57 beaker.cache.super_short_term.type=memory
57 beaker.cache.short_term.expire=60
58 beaker.cache.super_short_term.expire=10
58
59 beaker.cache.super_short_term.type=memory
60 beaker.cache.super_short_term.expire=10
61
62 beaker.cache.sql_cache_short.type=memory
63 beaker.cache.sql_cache_short.expire=5
64
65 beaker.cache.sql_cache_med.type=memory
66 beaker.cache.sql_cache_med.expire=360
67
68 beaker.cache.sql_cache_long.type=file
69 beaker.cache.sql_cache_long.expire=3600
59
70
60 ####################################
71 ####################################
61 ### BEAKER SESSION ####
72 ### BEAKER SESSION ####
@@ -3,12 +3,17 b''
3 Changelog
3 Changelog
4 =========
4 =========
5
5
6 1.0.0rc4 (**2010-10-12**)
6
7
7 1.0.0rc3 (**tip**)
8 - fixed python2.5 missing simplejson imports (thanks to Jens Bäckman)
9 - removed cache_manager settings from sqlalchemy meta
10 - added sqlalchemy cache settings to ini files
11
12 1.0.0rc3 (**2010-10-11**)
8
13
9 - fixed i18n during installation.
14 - fixed i18n during installation.
10
15
11 1.0.0rc2 (**tip**)
16 1.0.0rc2 (**2010-10-11**)
12
17
13 - Disabled dirsize in file browser, it's causing nasty bug when dir renames
18 - Disabled dirsize in file browser, it's causing nasty bug when dir renames
14 occure. After vcs is fixed it'll be put back again.
19 occure. After vcs is fixed it'll be put back again.
@@ -26,7 +26,7 b' Setting up the application'
26 - Remember that the given path for mercurial_ repositories must be write
26 - Remember that the given path for mercurial_ repositories must be write
27 accessible for the application. It's very important since RhodeCode web interface
27 accessible for the application. It's very important since RhodeCode web interface
28 will work even without such an access but, when trying to do a push it'll
28 will work even without such an access but, when trying to do a push it'll
29 eventually faile with permission denied errors.
29 eventually fail with permission denied errors.
30 - Run
30 - Run
31
31
32 ::
32 ::
@@ -35,15 +35,12 b' Setting up the application'
35
35
36 - This command runs the rhodecode server the app should be available at the
36 - This command runs the rhodecode server the app should be available at the
37 127.0.0.1:5000. This ip and port is configurable via the production.ini
37 127.0.0.1:5000. This ip and port is configurable via the production.ini
38 file created in previos step
38 file created in previous step
39 - Use admin account you created to login.
39 - Use admin account you created to login.
40 - Default permissions on each repository is read, and owner is admin. So
40 - Default permissions on each repository is read, and owner is admin. So
41 remember to update these.
41 remember to update these if needed.
42
43 - All needed configs are inside rhodecode sources ie. celeryconfig.py,
44 development.ini, production.ini You can configure the email, ports, loggers,
45 workers from there.
46
42
43
47 Setting up Whoosh
44 Setting up Whoosh
48 -----------------
45 -----------------
49
46
@@ -51,7 +48,7 b' Setting up Whoosh'
51
48
52 ::
49 ::
53
50
54 python /var/www/rhodecode/rhodecode/lib/indexers/daemon.py incremental <put_here_path_to_repos>
51 python /var/www/rhodecode/<rhodecode_installation_path>/lib/indexers/daemon.py incremental <put_here_path_to_repos>
55
52
56 When using incremental mode whoosh will check last modification date of each file
53 When using incremental mode whoosh will check last modification date of each file
57 and add it to reindex if newer file is available. Also indexing daemon checks
54 and add it to reindex if newer file is available. Also indexing daemon checks
@@ -69,7 +66,7 b' Sample config for nginx::'
69 listen 80;
66 listen 80;
70 server_name hg.myserver.com;
67 server_name hg.myserver.com;
71 access_log /var/log/nginx/rhodecode.access.log;
68 access_log /var/log/nginx/rhodecode.access.log;
72 error_log /var/log/nginx/rhodecode.error.log;
69 error_log /var/log/nginx/rhodecode.error.log;
73 location / {
70 location / {
74 root /var/www/rhodecode/rhodecode/public/;
71 root /var/www/rhodecode/rhodecode/public/;
75 if (!-f $request_filename){
72 if (!-f $request_filename){
@@ -81,7 +78,7 b' Sample config for nginx::'
81 }
78 }
82 }
79 }
83
80
84 Here's the proxy.conf. It's tunned so it'll not timeout on long
81 Here's the proxy.conf. It's tuned so it'll not timeout on long
85 pushes and also on large pushes::
82 pushes and also on large pushes::
86
83
87 proxy_redirect off;
84 proxy_redirect off;
@@ -111,7 +108,7 b' in production.ini file::'
111 lang=en
108 lang=en
112 cache_dir = %(here)s/data
109 cache_dir = %(here)s/data
113
110
114 To not have the statics served by the application.
111 To not have the statics served by the application. And improve speed.
115
112
116
113
117 Other configuration files
114 Other configuration files
@@ -47,21 +47,32 b' cache_dir = %(here)s/data'
47 ####################################
47 ####################################
48 ### BEAKER CACHE ####
48 ### BEAKER CACHE ####
49 ####################################
49 ####################################
50 beaker.cache.data_dir=/%(here)s/data/cache/data
50 beaker.cache.data_dir=/%(here)s/data/cache/data
51 beaker.cache.lock_dir=/%(here)s/data/cache/lock
51 beaker.cache.lock_dir=/%(here)s/data/cache/lock
52 beaker.cache.regions=super_short_term,short_term,long_term
52 beaker.cache.regions=super_short_term,short_term,long_term,sql_cache_short,sql_cache_med,sql_cache_long
53 beaker.cache.long_term.type=memory
53 beaker.cache.long_term.type=memory
54 beaker.cache.long_term.expire=36000
54 beaker.cache.long_term.expire=36000
55 beaker.cache.short_term.type=memory
55
56 beaker.cache.short_term.expire=60
56 beaker.cache.short_term.type=memory
57 beaker.cache.super_short_term.type=memory
57 beaker.cache.short_term.expire=60
58 beaker.cache.super_short_term.expire=10
58
59 beaker.cache.super_short_term.type=memory
60 beaker.cache.super_short_term.expire=10
61
62 beaker.cache.sql_cache_short.type=memory
63 beaker.cache.sql_cache_short.expire=5
64
65 beaker.cache.sql_cache_med.type=memory
66 beaker.cache.sql_cache_med.expire=360
67
68 beaker.cache.sql_cache_long.type=file
69 beaker.cache.sql_cache_long.expire=3600
59
70
60 ####################################
71 ####################################
61 ### BEAKER SESSION ####
72 ### BEAKER SESSION ####
62 ####################################
73 ####################################
63 ## Type of storage used for the session, current types are
74 ## Type of storage used for the session, current types are
64 ## dbm, file, memcached, database, and memory.
75 ## "dbm", "file", "memcached", "database", and "memory".
65 ## The storage uses the Container API
76 ## The storage uses the Container API
66 ##that is also used by the cache system.
77 ##that is also used by the cache system.
67 beaker.session.type = file
78 beaker.session.type = file
@@ -24,7 +24,7 b' versioning implementation: http://semver'
24 @author: marcink
24 @author: marcink
25 """
25 """
26
26
27 VERSION = (1, 0, 0, 'rc3')
27 VERSION = (1, 0, 0, 'rc4')
28
28
29 __version__ = '.'.join((str(each) for each in VERSION[:4]))
29 __version__ = '.'.join((str(each) for each in VERSION[:4]))
30
30
@@ -48,21 +48,32 b' app_instance_uuid = ${app_instance_uuid}'
48 ####################################
48 ####################################
49 ### BEAKER CACHE ####
49 ### BEAKER CACHE ####
50 ####################################
50 ####################################
51 beaker.cache.data_dir=/%(here)s/data/cache/data
51 beaker.cache.data_dir=/%(here)s/data/cache/data
52 beaker.cache.lock_dir=/%(here)s/data/cache/lock
52 beaker.cache.lock_dir=/%(here)s/data/cache/lock
53 beaker.cache.regions=super_short_term,short_term,long_term
53 beaker.cache.regions=super_short_term,short_term,long_term,sql_cache_short,sql_cache_med,sql_cache_long
54 beaker.cache.long_term.type=memory
54 beaker.cache.long_term.type=memory
55 beaker.cache.long_term.expire=36000
55 beaker.cache.long_term.expire=36000
56 beaker.cache.short_term.type=memory
56
57 beaker.cache.short_term.expire=60
57 beaker.cache.short_term.type=memory
58 beaker.cache.super_short_term.type=memory
58 beaker.cache.short_term.expire=60
59 beaker.cache.super_short_term.expire=10
59
60 beaker.cache.super_short_term.type=memory
61 beaker.cache.super_short_term.expire=10
62
63 beaker.cache.sql_cache_short.type=memory
64 beaker.cache.sql_cache_short.expire=5
65
66 beaker.cache.sql_cache_med.type=memory
67 beaker.cache.sql_cache_med.expire=360
68
69 beaker.cache.sql_cache_long.type=file
70 beaker.cache.sql_cache_long.expire=3600
60
71
61 ####################################
72 ####################################
62 ### BEAKER SESSION ####
73 ### BEAKER SESSION ####
63 ####################################
74 ####################################
64 ## Type of storage used for the session, current types are
75 ## Type of storage used for the session, current types are
65 ## dbm, file, memcached, database, and memory.
76 ## "dbm", "file", "memcached", "database", and "memory".
66 ## The storage uses the Container API
77 ## The storage uses the Container API
67 ##that is also used by the cache system.
78 ##that is also used by the cache system.
68 beaker.session.type = file
79 beaker.session.type = file
@@ -22,7 +22,7 b' Created on April 21, 2010'
22 changelog controller for pylons
22 changelog controller for pylons
23 @author: marcink
23 @author: marcink
24 """
24 """
25 from json import dumps
25
26 from mercurial.graphmod import colored, CHANGESET, revisions as graph_rev
26 from mercurial.graphmod import colored, CHANGESET, revisions as graph_rev
27 from pylons import request, session, tmpl_context as c
27 from pylons import request, session, tmpl_context as c
28 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator
28 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator
@@ -32,6 +32,12 b' from webhelpers.paginate import Page'
32 import logging
32 import logging
33 log = logging.getLogger(__name__)
33 log = logging.getLogger(__name__)
34
34
35 try:
36 import json
37 except ImportError:
38 #python 2.5 compatibility
39 import simplejson as json
40
35 class ChangelogController(BaseController):
41 class ChangelogController(BaseController):
36
42
37 @LoginRequired()
43 @LoginRequired()
@@ -69,7 +75,7 b' class ChangelogController(BaseController'
69
75
70 def _graph(self, repo, size, p):
76 def _graph(self, repo, size, p):
71 revcount = size
77 revcount = size
72 if not repo.revisions:return dumps([]), 0
78 if not repo.revisions:return json.dumps([]), 0
73
79
74 max_rev = repo.revisions[-1]
80 max_rev = repo.revisions[-1]
75 offset = 1 if p == 1 else ((p - 1) * revcount + 1)
81 offset = 1 if p == 1 else ((p - 1) * revcount + 1)
@@ -86,5 +92,5 b' class ChangelogController(BaseController'
86 continue
92 continue
87 data.append(('', vtx, edges))
93 data.append(('', vtx, edges))
88
94
89 c.jsdata = dumps(data)
95 c.jsdata = json.dumps(data)
90
96
@@ -35,7 +35,11 b' from datetime import datetime, timedelta'
35 from time import mktime
35 from time import mktime
36 import calendar
36 import calendar
37 import logging
37 import logging
38 import json
38 try:
39 import json
40 except ImportError:
41 #python 2.5 compatibility
42 import simplejson as json
39 log = logging.getLogger(__name__)
43 log = logging.getLogger(__name__)
40
44
41 class SummaryController(BaseController):
45 class SummaryController(BaseController):
@@ -3,9 +3,6 b' from sqlalchemy.ext.declarative import d'
3 from sqlalchemy.orm import scoped_session, sessionmaker
3 from sqlalchemy.orm import scoped_session, sessionmaker
4 from rhodecode.model import caching_query
4 from rhodecode.model import caching_query
5 from beaker import cache
5 from beaker import cache
6 import os
7 from os.path import join as jn, dirname as dn, abspath
8 import time
9
6
10 # Beaker CacheManager. A home base for cache configurations.
7 # Beaker CacheManager. A home base for cache configurations.
11 cache_manager = cache.CacheManager()
8 cache_manager = cache.CacheManager()
@@ -25,39 +22,5 b' Base = declarative_base()'
25 #For another db...
22 #For another db...
26 #Base2 = declarative_base()
23 #Base2 = declarative_base()
27
24
28 #===============================================================================
29 # CACHE OPTIONS
30 #===============================================================================
31 cache_base = jn(dn(dn(dn(abspath(__file__)))), 'data')
32 cache_dir = jn(cache_base, 'cache')
33
34 if not os.path.isdir(cache_base):
35 os.mkdir(cache_base)
36
37 if not os.path.isdir(cache_dir):
38 os.mkdir(cache_dir)
39 # set start_time to current time
40 # to re-cache everything
41 # upon application startup
42 start_time = time.time()
43 # configure the "sqlalchemy" cache region.
44 cache_manager.regions['sql_cache_short'] = {
45 'type':'memory',
46 'data_dir':cache_dir,
47 'expire':10,
48 'start_time':start_time
49 }
50 cache_manager.regions['sql_cache_med'] = {
51 'type':'memory',
52 'data_dir':cache_dir,
53 'expire':360,
54 'start_time':start_time
55 }
56 cache_manager.regions['sql_cache_long'] = {
57 'type':'file',
58 'data_dir':cache_dir,
59 'expire':3600,
60 'start_time':start_time
61 }
62 #to use cache use this in query
25 #to use cache use this in query
63 #.options(FromCache("sqlalchemy_cache_type", "cachekey"))
26 #.options(FromCache("sqlalchemy_cache_type", "cachekey"))
@@ -1,5 +1,5 b''
1 [egg_info]
1 [egg_info]
2 tag_build = rc3
2 tag_build = rc4
3 tag_svn_revision = true
3 tag_svn_revision = true
4
4
5 [easy_install]
5 [easy_install]
@@ -32,3 +32,11 b' domain = rhodecode'
32 input_file = rhodecode/i18n/rhodecode.pot
32 input_file = rhodecode/i18n/rhodecode.pot
33 output_dir = rhodecode/i18n
33 output_dir = rhodecode/i18n
34 previous = true
34 previous = true
35
36 [build_sphinx]
37 source-dir = docs/
38 build-dir = docs/_build
39 all_files = 1
40
41 [upload_sphinx]
42 upload-dir = docs/_build/html No newline at end of file
General Comments 0
You need to be logged in to leave comments. Login now