##// END OF EJS Templates
docs, and changelog update
marcink -
r1252:c8974135 rhodecode-0.0.1.1.8 default
parent child Browse files
Show More
@@ -1,266 +1,267 b''
1 1 .. _changelog:
2 2
3 3 Changelog
4 4 =========
5 5
6 6
7 1.1.8 (**2011-04-XX**)
7 1.1.8 (**2011-04-12**)
8 8 ======================
9 9
10 10 news
11 11 ----
12 12
13 - improved windows support
14
13 15 fixes
14 16 -----
15 17
16 18 - fixed #140 freeze of python dateutil library, since new version is python2.x
17 19 incompatible
18 20 - setup-app will check for write permission in given path
19 21 - cleaned up license info issue #149
20 - fixes for issues #137,#116 and #116, problems with unicode and
21 accented characters.
22 - fixes for issues #137,#116 and problems with unicode and accented characters.
22 23 - fixes crashes on gravatar, when passed in email as unicode
23 24 - fixed tooltip flickering problems
24 25 - fixed came_from redirection on windows
25 - fixed logging modules,and sql formatters
26 - windows fixes for os.kill #133
26 - fixed logging modules, and sql formatters
27 - windows fixes for os.kill issue #133
27 28 - fixes path splitting for windows issues #148
28 29 - fixed issue #143 wrong import on migration to 1.1.X
29 30 - fixed problems with displaying binary files, thanks to Thomas Waldmann
30 - removed name from archive files since it's breaking ui for long names
31 - fixed issue witg archive headers sent to browser, thanks to Thomas Waldmann
31 - removed name from archive files since it's breaking ui for long repo names
32 - fixed issue with archive headers sent to browser, thanks to Thomas Waldmann
32 33 - fixed compatibility for 1024px displays, and larger dpi settings, thanks to
33 34 Thomas Waldmann
34 35 - fixed issue #166 summary pager was skipping 10 revisions on second page
35 36
36 37 1.1.7 (**2011-03-23**)
37 38 ======================
38 39
39 40 news
40 41 ----
41 42
42 43 fixes
43 44 -----
44 45
45 46 - fixed (again) #136 installation support for FreeBSD
46 47
47 48
48 49 1.1.6 (**2011-03-21**)
49 50 ======================
50 51
51 52 news
52 53 ----
53 54
54 55 fixes
55 56 -----
56 57
57 58 - fixed #136 installation support for FreeBSD
58 59 - RhodeCode will check for python version during installation
59 60
60 61 1.1.5 (**2011-03-17**)
61 62 ======================
62 63
63 64 news
64 65 ----
65 66
66 67 - basic windows support, by exchanging pybcrypt into sha256 for windows only
67 68 highly inspired by idea of mantis406
68 69
69 70 fixes
70 71 -----
71 72
72 73 - fixed sorting by author in main page
73 74 - fixed crashes with diffs on binary files
74 75 - fixed #131 problem with boolean values for LDAP
75 76 - fixed #122 mysql problems thanks to striker69
76 77 - fixed problem with errors on calling raw/raw_files/annotate functions
77 78 with unknown revisions
78 79 - fixed returned rawfiles attachment names with international character
79 80 - cleaned out docs, big thanks to Jason Harris
80 81
81 82 1.1.4 (**2011-02-19**)
82 83 ======================
83 84
84 85 news
85 86 ----
86 87
87 88 fixes
88 89 -----
89 90
90 91 - fixed formencode import problem on settings page, that caused server crash
91 92 when that page was accessed as first after server start
92 93 - journal fixes
93 94 - fixed option to access repository just by entering http://server/<repo_name>
94 95
95 96
96 97 1.1.3 (**2011-02-16**)
97 98 ======================
98 99
99 100 news
100 101 ----
101 102
102 103 - implemented #102 allowing the '.' character in username
103 104 - added option to access repository just by entering http://server/<repo_name>
104 105 - celery task ignores result for better performance
105 106
106 107 fixes
107 108 -----
108 109
109 110 - fixed ehlo command and non auth mail servers on smtp_lib. Thanks to
110 111 apollo13 and Johan Walles
111 112 - small fixes in journal
112 113 - fixed problems with getting setting for celery from .ini files
113 114 - registration, password reset and login boxes share the same title as main
114 115 application now
115 116 - fixed #113: to high permissions to fork repository
116 117 - fixed problem with '[' chars in commit messages in journal
117 118 - removed issue with space inside renamed repository after deletion
118 119 - db transaction fixes when filesystem repository creation failed
119 120 - fixed #106 relation issues on databases different than sqlite
120 121 - fixed static files paths links to use of url() method
121 122
122 123 1.1.2 (**2011-01-12**)
123 124 ======================
124 125
125 126 news
126 127 ----
127 128
128 129
129 130 fixes
130 131 -----
131 132
132 133 - fixes #98 protection against float division of percentage stats
133 134 - fixed graph bug
134 135 - forced webhelpers version since it was making troubles during installation
135 136
136 137 1.1.1 (**2011-01-06**)
137 138 ======================
138 139
139 140 news
140 141 ----
141 142
142 143 - added force https option into ini files for easier https usage (no need to
143 144 set server headers with this options)
144 145 - small css updates
145 146
146 147 fixes
147 148 -----
148 149
149 150 - fixed #96 redirect loop on files view on repositories without changesets
150 151 - fixed #97 unicode string passed into server header in special cases (mod_wsgi)
151 152 and server crashed with errors
152 153 - fixed large tooltips problems on main page
153 154 - fixed #92 whoosh indexer is more error proof
154 155
155 156 1.1.0 (**2010-12-18**)
156 157 ======================
157 158
158 159 news
159 160 ----
160 161
161 162 - rewrite of internals for vcs >=0.1.10
162 163 - uses mercurial 1.7 with dotencode disabled for maintaining compatibility
163 164 with older clients
164 165 - anonymous access, authentication via ldap
165 166 - performance upgrade for cached repos list - each repository has it's own
166 167 cache that's invalidated when needed.
167 168 - performance upgrades on repositories with large amount of commits (20K+)
168 169 - main page quick filter for filtering repositories
169 170 - user dashboards with ability to follow chosen repositories actions
170 171 - sends email to admin on new user registration
171 172 - added cache/statistics reset options into repository settings
172 173 - more detailed action logger (based on hooks) with pushed changesets lists
173 174 and options to disable those hooks from admin panel
174 175 - introduced new enhanced changelog for merges that shows more accurate results
175 176 - new improved and faster code stats (based on pygments lexers mapping tables,
176 177 showing up to 10 trending sources for each repository. Additionally stats
177 178 can be disabled in repository settings.
178 179 - gui optimizations, fixed application width to 1024px
179 180 - added cut off (for large files/changesets) limit into config files
180 181 - whoosh, celeryd, upgrade moved to paster command
181 182 - other than sqlite database backends can be used
182 183
183 184 fixes
184 185 -----
185 186
186 187 - fixes #61 forked repo was showing only after cache expired
187 188 - fixes #76 no confirmation on user deletes
188 189 - fixes #66 Name field misspelled
189 190 - fixes #72 block user removal when he owns repositories
190 191 - fixes #69 added password confirmation fields
191 192 - fixes #87 RhodeCode crashes occasionally on updating repository owner
192 193 - fixes #82 broken annotations on files with more than 1 blank line at the end
193 194 - a lot of fixes and tweaks for file browser
194 195 - fixed detached session issues
195 196 - fixed when user had no repos he would see all repos listed in my account
196 197 - fixed ui() instance bug when global hgrc settings was loaded for server
197 198 instance and all hgrc options were merged with our db ui() object
198 199 - numerous small bugfixes
199 200
200 201 (special thanks for TkSoh for detailed feedback)
201 202
202 203
203 204 1.0.2 (**2010-11-12**)
204 205 ======================
205 206
206 207 news
207 208 ----
208 209
209 210 - tested under python2.7
210 211 - bumped sqlalchemy and celery versions
211 212
212 213 fixes
213 214 -----
214 215
215 216 - fixed #59 missing graph.js
216 217 - fixed repo_size crash when repository had broken symlinks
217 218 - fixed python2.5 crashes.
218 219
219 220
220 221 1.0.1 (**2010-11-10**)
221 222 ======================
222 223
223 224 news
224 225 ----
225 226
226 227 - small css updated
227 228
228 229 fixes
229 230 -----
230 231
231 232 - fixed #53 python2.5 incompatible enumerate calls
232 233 - fixed #52 disable mercurial extension for web
233 234 - fixed #51 deleting repositories don't delete it's dependent objects
234 235
235 236
236 237 1.0.0 (**2010-11-02**)
237 238 ======================
238 239
239 240 - security bugfix simplehg wasn't checking for permissions on commands
240 241 other than pull or push.
241 242 - fixed doubled messages after push or pull in admin journal
242 243 - templating and css corrections, fixed repo switcher on chrome, updated titles
243 244 - admin menu accessible from options menu on repository view
244 245 - permissions cached queries
245 246
246 247 1.0.0rc4 (**2010-10-12**)
247 248 ==========================
248 249
249 250 - fixed python2.5 missing simplejson imports (thanks to Jens BΓ€ckman)
250 251 - removed cache_manager settings from sqlalchemy meta
251 252 - added sqlalchemy cache settings to ini files
252 253 - validated password length and added second try of failure on paster setup-app
253 254 - fixed setup database destroy prompt even when there was no db
254 255
255 256
256 257 1.0.0rc3 (**2010-10-11**)
257 258 =========================
258 259
259 260 - fixed i18n during installation.
260 261
261 262 1.0.0rc2 (**2010-10-11**)
262 263 =========================
263 264
264 265 - Disabled dirsize in file browser, it's causing nasty bug when dir renames
265 266 occure. After vcs is fixed it'll be put back again.
266 267 - templating/css rewrites, optimized css. No newline at end of file
@@ -1,385 +1,435 b''
1 1 .. _setup:
2 2
3 3 Setup
4 4 =====
5 5
6 6
7 7 Setting up RhodeCode
8 8 --------------------------
9 9
10 10 First, you will need to create a RhodeCode configuration file. Run the following
11 11 command to do this::
12 12
13 13 paster make-config RhodeCode production.ini
14 14
15 15 - This will create the file `production.ini` in the current directory. This
16 16 configuration file contains the various settings for RhodeCode, e.g proxy port,
17 17 email settings, usage of static files, cache, celery settings and logging.
18 18
19 19
20 20 Next, you need to create the databases used by RhodeCode. I recommend that you
21 21 use sqlite (default) or postgresql. If you choose a database other than the
22 22 default ensure you properly adjust the db url in your production.ini
23 23 configuration file to use this other database. Create the databases by running
24 24 the following command::
25 25
26 26 paster setup-app production.ini
27 27
28 28 This will prompt you for a "root" path. This "root" path is the location where
29 29 RhodeCode will store all of its repositories on the current machine. After
30 30 entering this "root" path ``setup-app`` will also prompt you for a username and password
31 31 for the initial admin account which ``setup-app`` sets up for you.
32 32
33 33 - The ``setup-app`` command will create all of the needed tables and an admin
34 34 account. When choosing a root path you can either use a new empty location, or a
35 35 location which already contains existing repositories. If you choose a location
36 36 which contains existing repositories RhodeCode will simply add all of the
37 37 repositories at the chosen location to it's database. (Note: make sure you
38 38 specify the correct path to the root).
39 39 - Note: the given path for mercurial_ repositories **must** be write accessible
40 40 for the application. It's very important since the RhodeCode web interface will
41 41 work without write access, but when trying to do a push it will eventually fail
42 42 with permission denied errors unless it has write access.
43 43
44 44 You are now ready to use RhodeCode, to run it simply execute::
45 45
46 46 paster serve production.ini
47 47
48 48 - This command runs the RhodeCode server. The web app should be available at the
49 49 127.0.0.1:5000. This ip and port is configurable via the production.ini
50 50 file created in previous step
51 51 - Use the admin account you created above when running ``setup-app`` to login to the web app.
52 52 - The default permissions on each repository is read, and the owner is admin.
53 53 Remember to update these if needed.
54 54 - In the admin panel you can toggle ldap, anonymous, permissions settings. As
55 55 well as edit more advanced options on users and repositories
56 56
57 57 Try copying your own mercurial repository into the "root" directory you are
58 58 using, then from within the RhodeCode web application choose Admin >
59 59 repositories. Then choose Add New Repository. Add the repository you copied into
60 60 the root. Test that you can browse your repository from within RhodeCode and then
61 61 try cloning your repository from RhodeCode with::
62 62
63 63 hg clone http://127.0.0.1:5000/<repository name>
64 64
65 65 where *repository name* is replaced by the name of your repository.
66 66
67 67 Using RhodeCode with SSH
68 68 ------------------------
69 69
70 70 RhodeCode currently only hosts repositories using http and https. (The addition of
71 71 ssh hosting is a planned future feature.) However you can easily use ssh in
72 72 parallel with RhodeCode. (Repository access via ssh is a standard "out of
73 73 the box" feature of mercurial_ and you can use this to access any of the
74 74 repositories that RhodeCode is hosting. See PublishingRepositories_)
75 75
76 76 RhodeCode repository structures are kept in directories with the same name
77 77 as the project. When using repository groups, each group is a subdirectory.
78 78 This allows you to easily use ssh for accessing repositories.
79 79
80 80 In order to use ssh you need to make sure that your web-server and the users login
81 81 accounts have the correct permissions set on the appropriate directories. (Note
82 82 that these permissions are independent of any permissions you have set up using
83 83 the RhodeCode web interface.)
84 84
85 85 If your main directory (the same as set in RhodeCode settings) is for example
86 86 set to **/home/hg** and the repository you are using is named `rhodecode`, then
87 87 to clone via ssh you should run::
88 88
89 89 hg clone ssh://user@server.com/home/hg/rhodecode
90 90
91 91 Using other external tools such as mercurial-server_ or using ssh key based
92 92 authentication is fully supported.
93 93
94 94 Note: In an advanced setup, in order for your ssh access to use the same
95 95 permissions as set up via the RhodeCode web interface, you can create an
96 96 authentication hook to connect to the rhodecode db and runs check functions for
97 97 permissions against that.
98 98
99 99
100 100
101 101 Setting up Whoosh full text search
102 102 ----------------------------------
103 103
104 104 Starting from version 1.1 the whoosh index can be build by using the paster
105 105 command ``make-index``. To use ``make-index`` you must specify the configuration
106 106 file that stores the location of the index, and the location of the repositories
107 107 (`--repo-location`).
108 108
109 109 You may optionally pass the option `-f` to enable a full index rebuild. Without
110 110 the `-f` option, indexing will run always in "incremental" mode.
111 111
112 112 For an incremental index build use::
113 113
114 114 paster make-index production.ini --repo-location=<location for repos>
115 115
116 116 For a full index rebuild use::
117 117
118 118 paster make-index production.ini -f --repo-location=<location for repos>
119 119
120 120 - For full text search you can either put crontab entry for
121 121
122 122 In order to do periodical index builds and keep your index always up to date.
123 123 It's recommended to do a crontab entry for incremental indexing.
124 124 An example entry might look like this::
125 125
126 126 /path/to/python/bin/paster /path/to/rhodecode/production.ini --repo-location=<location for repos>
127 127
128 128 When using incremental mode (the default) whoosh will check the last
129 129 modification date of each file and add it to be reindexed if a newer file is
130 130 available. The indexing daemon checks for any removed files and removes them
131 131 from index.
132 132
133 133 If you want to rebuild index from scratch, you can use the `-f` flag as above,
134 134 or in the admin panel you can check `build from scratch` flag.
135 135
136 136
137 137 Setting up LDAP support
138 138 -----------------------
139 139
140 140 RhodeCode starting from version 1.1 supports ldap authentication. In order
141 141 to use LDAP, you have to install the python-ldap_ package. This package is available
142 142 via pypi, so you can install it by running
143 143
144 144 ::
145 145
146 146 easy_install python-ldap
147 147
148 148 ::
149 149
150 150 pip install python-ldap
151 151
152 152 .. note::
153 153 python-ldap requires some certain libs on your system, so before installing
154 154 it check that you have at least `openldap`, and `sasl` libraries.
155 155
156 156 ldap settings are located in admin->ldap section,
157 157
158 158 Here's a typical ldap setup::
159 159
160 160 Enable ldap = checked #controls if ldap access is enabled
161 161 Host = host.domain.org #actual ldap server to connect
162 162 Port = 389 or 689 for ldaps #ldap server ports
163 163 Enable LDAPS = unchecked #enable disable ldaps
164 164 Account = <account> #access for ldap server(if required)
165 165 Password = <password> #password for ldap server(if required)
166 166 Base DN = uid=%(user)s,CN=users,DC=host,DC=domain,DC=org
167 167
168 168
169 169 `Account` and `Password` are optional, and used for two-phase ldap
170 170 authentication so those are credentials to access your ldap, if it doesn't
171 171 support anonymous search/user lookups.
172 172
173 173 Base DN must have the %(user)s template inside, it's a place holder where your uid
174 174 used to login would go. It allows admins to specify non-standard schema for the
175 175 uid variable.
176 176
177 177 If all of the data is correctly entered, and `python-ldap` is properly
178 178 installed, then users should be granted access to RhodeCode with ldap accounts.
179 179 When logging in the first time a special ldap account is created inside
180 180 RhodeCode, so you can control the permissions even on ldap users. If such users
181 181 already exist in the RhodeCode database, then the ldap user with the same
182 182 username would be not be able to access RhodeCode.
183 183
184 184 If you have problems with ldap access and believe you have correctly entered the
185 185 required information then proceed by investigating the RhodeCode logs. Any
186 186 error messages sent from ldap will be saved there.
187 187
188 188
189 189
190 190 Setting Up Celery
191 191 -----------------
192 192
193 193 Since version 1.1 celery is configured by the rhodecode ini configuration files.
194 194 Simply set use_celery=true in the ini file then add / change the configuration
195 195 variables inside the ini file.
196 196
197 197 Remember that the ini files use the format with '.' not with '_' like celery.
198 198 So for example setting `BROKER_HOST` in celery means setting `broker.host` in
199 199 the config file.
200 200
201 201 In order to start using celery run::
202 202
203 203 paster celeryd <configfile.ini>
204 204
205 205
206 206 .. note::
207 207 Make sure you run this command from the same virtualenv, and with the same user
208 208 that rhodecode runs.
209 209
210 210 HTTPS support
211 211 -------------
212 212
213 213 There are two ways to enable https:
214 214
215 215 - Set HTTP_X_URL_SCHEME in your http server headers, than rhodecode will
216 216 recognize this headers and make proper https redirections
217 217 - Alternatively, set `force_https = true` in the ini configuration to force using
218 218 https, no headers are needed than to enable https
219 219
220 220
221 221 Nginx virtual host example
222 222 --------------------------
223 223
224 224 Sample config for nginx using proxy::
225 225
226 226 server {
227 227 listen 80;
228 228 server_name hg.myserver.com;
229 229 access_log /var/log/nginx/rhodecode.access.log;
230 230 error_log /var/log/nginx/rhodecode.error.log;
231 231 location / {
232 232 root /var/www/rhodecode/rhodecode/public/;
233 233 if (!-f $request_filename){
234 234 proxy_pass http://127.0.0.1:5000;
235 235 }
236 236 #this is important if you want to use https !!!
237 237 proxy_set_header X-Url-Scheme $scheme;
238 238 include /etc/nginx/proxy.conf;
239 239 }
240 240 }
241 241
242 242 Here's the proxy.conf. It's tuned so it will not timeout on long
243 243 pushes or large pushes::
244 244
245 245 proxy_redirect off;
246 246 proxy_set_header Host $host;
247 247 proxy_set_header X-Host $http_host;
248 248 proxy_set_header X-Real-IP $remote_addr;
249 249 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
250 250 proxy_set_header Proxy-host $proxy_host;
251 251 client_max_body_size 400m;
252 252 client_body_buffer_size 128k;
253 253 proxy_buffering off;
254 254 proxy_connect_timeout 3600;
255 255 proxy_send_timeout 3600;
256 256 proxy_read_timeout 3600;
257 257 proxy_buffer_size 16k;
258 258 proxy_buffers 4 16k;
259 259 proxy_busy_buffers_size 64k;
260 260 proxy_temp_file_write_size 64k;
261 261
262 262 Also, when using root path with nginx you might set the static files to false
263 263 in the production.ini file::
264 264
265 265 [app:main]
266 266 use = egg:rhodecode
267 267 full_stack = true
268 268 static_files = false
269 269 lang=en
270 270 cache_dir = %(here)s/data
271 271
272 272 In order to not have the statics served by the application. This improves speed.
273 273
274 274
275 275 Apache virtual host example
276 276 ---------------------------
277 277
278 278 Here is a sample configuration file for apache using proxy::
279 279
280 280 <VirtualHost *:80>
281 281 ServerName hg.myserver.com
282 282 ServerAlias hg.myserver.com
283 283
284 284 <Proxy *>
285 285 Order allow,deny
286 286 Allow from all
287 287 </Proxy>
288 288
289 289 #important !
290 290 #Directive to properly generate url (clone url) for pylons
291 291 ProxyPreserveHost On
292 292
293 293 #rhodecode instance
294 294 ProxyPass / http://127.0.0.1:5000/
295 295 ProxyPassReverse / http://127.0.0.1:5000/
296 296
297 297 #to enable https use line below
298 298 #SetEnvIf X-Url-Scheme https HTTPS=1
299 299
300 300 </VirtualHost>
301 301
302 302
303 303 Additional tutorial
304 304 http://wiki.pylonshq.com/display/pylonscookbook/Apache+as+a+reverse+proxy+for+Pylons
305 305
306 306
307 307 Apache as subdirectory
308 308 ----------------------
309 309
310 310 Apache subdirectory part::
311 311
312 312 <Location /<someprefix> >
313 313 ProxyPass http://127.0.0.1:5000/<someprefix>
314 314 ProxyPassReverse http://127.0.0.1:5000/<someprefix>
315 315 SetEnvIf X-Url-Scheme https HTTPS=1
316 316 </Location>
317 317
318 318 Besides the regular apache setup you will need to add the following to your .ini file::
319 319
320 320 filter-with = proxy-prefix
321 321
322 322 Add the following at the end of the .ini file::
323 323
324 324 [filter:proxy-prefix]
325 325 use = egg:PasteDeploy#prefix
326 326 prefix = /<someprefix>
327 327
328 328
329 329 then change <someprefix> into your choosen prefix
330 330
331 Apache's example FCGI config
332 ----------------------------
331 Apache's example WSGI+SSL config
332 --------------------------------
333
334 virtual host example::
333 335
334 TODO !
336 <VirtualHost *:443>
337 ServerName hg.domain.eu:443
338 DocumentRoot /var/www
339
340 SSLEngine on
341 SSLCertificateFile /etc/apache2/ssl/hg.domain.eu.cert
342 SSLCertificateKeyFile /etc/apache2/ssl/hg.domain.eu.key
343 SSLCertificateChainFile /etc/apache2/ssl/ca.cert
344 SetEnv HTTP_X_URL_SCHEME https
345
346 Alias /css /home/web/virtualenvs/hg/lib/python2.6/site-packages/rhodecode/public/css
347 Alias /images /home/web/virtualenvs/hg/lib/python2.6/site-packages/rhodecode/public/images
348 Alias /js /home/web/virtualenvs/hg/lib/python2.6/site-packages/rhodecode/public/js
349
350 WSGIDaemonProcess hg user=web group=web processes=1 threads=10 display-name=%{GROUP} python-path=/home/web/virtualenvs/hg/lib/python2.6/site-packages
351
352 WSGIPassAuthorization On
353 WSGIProcessGroup hg
354 WSGIApplicationGroup hg
355 WSGIScriptAlias / /home/web/apache/conf/hg.wsgi
356
357 <Directory /home/web/apache/conf>
358 Order deny,allow
359 Allow from all
360 </Directory>
361 <Directory /var/www>
362 Order deny,allow
363 Allow from all
364 </Directory>
365
366 </VirtualHost>
367
368 <VirtualHost *:80>
369 ServerName hg.domain.eu
370 Redirect permanent / https://hg.domain.eu/
371 </VirtualHost>
372
373
374 HG.WSGI::
375
376 import os
377 os.environ["HGENCODING"] = "UTF-8"
378
379 from paste.deploy import loadapp
380 from paste.script.util.logging_config import fileConfig
381
382 fileConfig('/home/web/virtualenvs/hg/config/production.ini')
383 application = loadapp('config:/home/web/virtualenvs/hg/config/production.ini'
384
335 385
336 386 Other configuration files
337 387 -------------------------
338 388
339 389 Some example init.d scripts can be found here, for debian and gentoo:
340 390
341 391 https://rhodeocode.org/rhodecode/files/tip/init.d
342 392
343 393
344 394 Troubleshooting
345 395 ---------------
346 396
347 397 :Q: **Missing static files?**
348 398 :A: Make sure either to set the `static_files = true` in the .ini file or
349 399 double check the root path for your http setup. It should point to
350 400 for example:
351 401 /home/my-virtual-python/lib/python2.6/site-packages/rhodecode/public
352 402
353 403 |
354 404
355 405 :Q: **Can't install celery/rabbitmq**
356 406 :A: Don't worry RhodeCode works without them too. No extra setup is required.
357 407
358 408 |
359 409
360 410 :Q: **Long lasting push timeouts?**
361 411 :A: Make sure you set a longer timeouts in your proxy/fcgi settings, timeouts
362 412 are caused by https server and not RhodeCode.
363 413
364 414 |
365 415
366 416 :Q: **Large pushes timeouts?**
367 417 :A: Make sure you set a proper max_body_size for the http server.
368 418
369 419 |
370 420
371 421 :Q: **Apache doesn't pass basicAuth on pull/push?**
372 422 :A: Make sure you added `WSGIPassAuthorization true`.
373 423
374 424 For further questions search the `Issues tracker`_, or post a message in the `google group rhodecode`_
375 425
376 426 .. _virtualenv: http://pypi.python.org/pypi/virtualenv
377 427 .. _python: http://www.python.org/
378 428 .. _mercurial: http://mercurial.selenic.com/
379 429 .. _celery: http://celeryproject.org/
380 430 .. _rabbitmq: http://www.rabbitmq.com/
381 431 .. _python-ldap: http://www.python-ldap.org/
382 432 .. _mercurial-server: http://www.lshift.net/mercurial-server.html
383 433 .. _PublishingRepositories: http://mercurial.selenic.com/wiki/PublishingRepositories
384 434 .. _Issues tracker: https://bitbucket.org/marcinkuzminski/rhodecode/issues
385 435 .. _google group rhodecode: http://groups.google.com/group/rhodecode No newline at end of file
@@ -1,229 +1,229 b''
1 1 /**
2 2 * Sphinx stylesheet -- default theme
3 3 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4 4 */
5 5
6 6 @import url("basic.css");
7 7
8 8 /* -- page layout ----------------------------------------------------------- */
9 9
10 10 body {
11 11 font-family: Arial, sans-serif;
12 12 font-size: 100%;
13 13 background-color: #111;
14 14 color: #555;
15 15 margin: 0;
16 16 padding: 0;
17 17 }
18 18
19 19 div.documentwrapper {
20 20 float: left;
21 21 width: 100%;
22 22 }
23 23
24 24 div.bodywrapper {
25 25 margin: 0 0 0 230px;
26 26 }
27 27
28 28 hr{
29 29 border: 1px solid #B1B4B6;
30 30 }
31 31
32 32 div.document {
33 33 background-color: #eee;
34 34 }
35 35
36 36 div.body {
37 37 background-color: #ffffff;
38 38 color: #3E4349;
39 39 padding: 0 30px 30px 30px;
40 40 font-size: 0.8em;
41 41 }
42 42
43 43 div.footer {
44 44 color: #555;
45 45 width: 100%;
46 46 padding: 13px 0;
47 47 text-align: center;
48 48 font-size: 75%;
49 49 }
50 50
51 51 div.footer a {
52 52 color: #444;
53 53 text-decoration: underline;
54 54 }
55 55
56 56 div.related {
57 background-color: #6BA81E;
57 background-color: #003367;
58 58 line-height: 32px;
59 59 color: #fff;
60 60 text-shadow: 0px 1px 0 #444;
61 61 font-size: 0.80em;
62 62 }
63 63
64 64 div.related a {
65 65 color: #E2F3CC;
66 66 }
67 67
68 68 div.sphinxsidebar {
69 69 font-size: 0.75em;
70 70 line-height: 1.5em;
71 71 }
72 72
73 73 div.sphinxsidebarwrapper{
74 74 padding: 20px 0;
75 75 }
76 76
77 77 div.sphinxsidebar h3,
78 78 div.sphinxsidebar h4 {
79 79 font-family: Arial, sans-serif;
80 80 color: #222;
81 81 font-size: 1.2em;
82 82 font-weight: normal;
83 83 margin: 0;
84 84 padding: 5px 10px;
85 85 background-color: #ddd;
86 86 text-shadow: 1px 1px 0 white
87 87 }
88 88
89 89 div.sphinxsidebar h4{
90 90 font-size: 1.1em;
91 91 }
92 92
93 93 div.sphinxsidebar h3 a {
94 94 color: #444;
95 95 }
96 96
97 97
98 98 div.sphinxsidebar p {
99 99 color: #888;
100 100 padding: 5px 20px;
101 101 }
102 102
103 103 div.sphinxsidebar p.topless {
104 104 }
105 105
106 106 div.sphinxsidebar ul {
107 107 margin: 10px 20px;
108 108 padding: 0;
109 109 color: #000;
110 110 }
111 111
112 112 div.sphinxsidebar a {
113 113 color: #444;
114 114 }
115 115
116 116 div.sphinxsidebar input {
117 117 border: 1px solid #ccc;
118 118 font-family: sans-serif;
119 119 font-size: 1em;
120 120 }
121 121
122 122 div.sphinxsidebar input[type=text]{
123 123 margin-left: 20px;
124 124 }
125 125
126 126 /* -- body styles ----------------------------------------------------------- */
127 127
128 128 a {
129 129 color: #005B81;
130 130 text-decoration: none;
131 131 }
132 132
133 133 a:hover {
134 134 color: #E32E00;
135 135 text-decoration: underline;
136 136 }
137 137
138 138 div.body h1,
139 139 div.body h2,
140 140 div.body h3,
141 141 div.body h4,
142 142 div.body h5,
143 143 div.body h6 {
144 144 font-family: Arial, sans-serif;
145 145 background-color: #BED4EB;
146 146 font-weight: normal;
147 147 color: #212224;
148 148 margin: 30px 0px 10px 0px;
149 149 padding: 5px 0 5px 10px;
150 150 text-shadow: 0px 1px 0 white
151 151 }
152 152
153 153 div.body h1 { border-top: 20px solid white; margin-top: 0; font-size: 200%; }
154 154 div.body h2 { font-size: 150%; background-color: #C8D5E3; }
155 155 div.body h3 { font-size: 120%; background-color: #D8DEE3; }
156 156 div.body h4 { font-size: 110%; background-color: #D8DEE3; }
157 157 div.body h5 { font-size: 100%; background-color: #D8DEE3; }
158 158 div.body h6 { font-size: 100%; background-color: #D8DEE3; }
159 159
160 160 a.headerlink {
161 161 color: #c60f0f;
162 162 font-size: 0.8em;
163 163 padding: 0 4px 0 4px;
164 164 text-decoration: none;
165 165 }
166 166
167 167 a.headerlink:hover {
168 168 background-color: #c60f0f;
169 169 color: white;
170 170 }
171 171
172 172 div.body p, div.body dd, div.body li {
173 173 line-height: 1.5em;
174 174 }
175 175
176 176 div.admonition p.admonition-title + p {
177 177 display: inline;
178 178 }
179 179
180 180 div.highlight{
181 181 background-color: white;
182 182 }
183 183
184 184 div.note {
185 185 background-color: #eee;
186 186 border: 1px solid #ccc;
187 187 }
188 188
189 189 div.seealso {
190 190 background-color: #ffc;
191 191 border: 1px solid #ff6;
192 192 }
193 193
194 194 div.topic {
195 195 background-color: #eee;
196 196 }
197 197
198 198 div.warning {
199 199 background-color: #ffe4e4;
200 200 border: 1px solid #f66;
201 201 }
202 202
203 203 p.admonition-title {
204 204 display: inline;
205 205 }
206 206
207 207 p.admonition-title:after {
208 208 content: ":";
209 209 }
210 210
211 211 pre {
212 212 padding: 10px;
213 213 background-color: White;
214 214 color: #222;
215 215 line-height: 1.2em;
216 216 border: 1px solid #C6C9CB;
217 217 font-size: 1.2em;
218 218 margin: 1.5em 0 1.5em 0;
219 219 -webkit-box-shadow: 1px 1px 1px #d8d8d8;
220 220 -moz-box-shadow: 1px 1px 1px #d8d8d8;
221 221 }
222 222
223 223 tt {
224 224 background-color: #ecf0f3;
225 225 color: #222;
226 226 padding: 1px 2px;
227 227 font-size: 1.2em;
228 228 font-family: monospace;
229 229 }
General Comments 0
You need to be logged in to leave comments. Login now