##// END OF EJS Templates
release: Merge default into stable for release preparation
marcink -
r3192:689a0c93 merge stable
parent child
Show More

The requested changes are too big and content was truncated. Show full diff

@@ -0,0 +1,10
1 {
2 "presets": [
3 ["env", {
4 "targets": {
5 "browsers": ["last 2 versions"]
6 }
7 }]
8 ],
9 "plugins": ["transform-object-rest-spread"]
10 }
@@ -0,0 +1,44
1 .. _integrations-rcextensions:
2
3
4 rcextensions integrations
5 =========================
6
7
8 Since RhodeCode 4.14 release rcextensions aren't part of rhodecode-tools, and instead
9 they are shipped with the new or upgraded installations.
10
11 The rcextensions template `rcextensions.tmpl` is created in the `etc/` directory
12 of enterprise or community installation. It's always re-created and updated on upgrades.
13
14
15 Activating rcextensions
16 +++++++++++++++++++++++
17
18 To activate rcextensions simply copy or rename the created template rcextensions
19 into the path where the rhodecode.ini file is located::
20
21 pushd ~/rccontrol/enterprise-1/
22 or
23 pushd ~/rccontrol/community-1/
24
25 mv etc/rcextensions.tmpl rcextensions
26
27
28 rcextensions are loaded when |RCE| starts. So a restart is required after activation or
29 change of code in rcextensions.
30
31 Simply restart only the enterprise/community instance::
32
33 rccontrol restart enterprise-1
34 or
35 rccontrol restart community-1
36
37
38 Example usage
39 +++++++++++++
40
41
42 To see examples of usage please check the examples directory under:
43
44 https://code.rhodecode.com/rhodecode-enterprise-ce/files/stable/rhodecode/config/rcextensions/examples
@@ -0,0 +1,114
1 |RCE| 4.14.0 |RNS|
2 ------------------
3
4 Release Date
5 ^^^^^^^^^^^^
6
7 - 2018-11-02
8
9
10 New Features
11 ^^^^^^^^^^^^
12
13 - Diffs: expose range diff inside the PR view. It's now possible to show
14 commit-per-commit view of changes in pull request.
15 - Diffs: new sticky context bar.
16 When browsing diffs we show file path of the current diff so users are aware all the time
17 what file they are reviewing.
18 - Diffs: added quick file selector in diffs views. Now it's possible to select a file
19 in large diffs from the sticky header for quicker access to certain interesting files
20 in diffs.
21 - Diffs: introducing diff menu for whitespace toggle and context changes.
22 It's now possible to show/hide whitespace changes and toggle the file context in
23 all diff places including pull requests.
24 - Comments: allow commenting on empty files without content.
25 - Repositories: added option to archive repositories instead of deleting them.
26 Archived repositories are useful for future auditing, but they are read-only.
27 - rcextensions: new rcextensions. We're introducing new `rcextensions` that will be base
28 for future low-level integrations. It's now possible to expose nice messages back
29 to the users when using `rcextensions`.
30 - Summary page: slightly re-organize summary page for better user experience.
31
32
33 General
34 ^^^^^^^
35
36 - Mailing: switched from custom library to pyramid_mailer with python3 compatibility.
37 - Frontend: Switched to Polymer 3.0.
38 - Frontend: fixed problems with IE11 and brought back support for that browser.
39 - Git: use a fetch_sync based creation of remote repositories.
40 This fixes problems with importing from Bitbucket.
41 - Comments: update comments email templates.
42 - Packaging: only wrap external dependency scripts. This makes execution of scripts
43 roughly 5x faster due to much smaller PATH tree.
44 - HTTP: use application wide detection of invalid bytes sent via URL/GET/POST data.
45 - Fonts/UI: use consistent fonts across the whole application.
46 Few places had non-standard custom fonts.
47 - Google: updated google auth plugin with latest API changes.
48 - Core: handle edge case requesting matched routes but with hg/svn/git or api context.
49 - Dependencies: bumped rhodecode-tools to 1.0.0 release using Apache2 license.
50 - Dependencies: atomicwrites==1.2.1
51 - Dependencies: attrs==18.2.0
52 - Dependencies: dogpile.cache==0.6.7
53 - Dependencies: psutil==5.4.7
54 - Dependencies: pathlib2==2.3.2
55 - Dependencies: subprocess32==3.5.2
56 - Dependencies: gevent==1.3.6
57 - Dependencies: greenlet==0.4.15
58 - Dependencies: pytest==3.8.2
59 - Dependencies: py==1.6.0
60 - Dependencies: pytest-cov==2.6.0
61 - Dependencies: pytest-timeout==1.3.2
62 - Dependencies: coverage==4.5.1
63 - Dependencies: psycopg2==2.7.5
64
65
66 Security
67 ^^^^^^^^
68
69 - RST: improve Javascript RST sandbox.
70 - Jupyter: sanitize markdown cells similar as we do for our own markdown cleanup.
71
72
73 Performance
74 ^^^^^^^^^^^
75
76 - SSH: improved SSH wrapper execution speed by using optimized binary script wrapping.
77 - Core: reduced font and JavaScript load times.
78
79
80 Fixes
81 ^^^^^
82
83 - Comments: ensure we always display unmatched comments.
84 - Branch Permissions: fixed changing rule order for branch permissions.
85 - Users: ensure get_first_superadmin actually gets the 1st created super-admin.
86 - Users: when deleting users ensure we also clear personal flag.
87 This fixes some problems with multiple personal groups.
88 - Diffs: disable the error border on highlight errors.
89 - Integrations: implement retry to HTTP[S] calls for integrations.
90 Web parts will do a 3x retry call in case service is not reachable or
91 responds with 5XX codes.
92 - Git: fixed pull-request updates in case branch names are the same as the file names.
93 - Supervisor: add patch for older kernel support.
94 - Compare: fixed file after/before links in compare view for cross repo compare.
95 - Emails: improve fonts and rendering of email HTML.
96 - Permissions: flush members of user groups permissions to clear caches.
97 - Repository: add check preventing of removal of repo with attached pull requests. Users
98 should use the new archive repo function instead.
99
100
101 Upgrade notes
102 ^^^^^^^^^^^^^
103
104 - In this release, we're shipping a new `rcextensions`. The changes made are
105 backward incompatible. An update of `rcextensions` is required
106 prior to using them again. Please check the new `rcextensions.tmpl` directory
107 located in `etc/rcextensions.tmpl` in your instance installation path.
108 Old code should be 100% portable by just copy&paste to the right function.
109
110 - Mailing: We introduced a new mailing library. The older options should be compatible and
111 generally, old configuration doesn't need any changes in order to send emails.
112 We, however, encourage users to re-check mailing setup in case of some more
113 sophisticated email setups.
114 There's a possibility to send a test email from admin > settings > email section.
1 NO CONTENT: new file 100755
NO CONTENT: new file 100755
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
The requested commit or file is too big and content was truncated. Show full diff
@@ -1,6 +1,6
1 [bumpversion]
1 [bumpversion]
2 current_version = 4.13.3
2 current_version = 4.14.0
3 message = release: Bump version {current_version} to {new_version}
3 message = release: Bump version {current_version} to {new_version}
4
4
5 [bumpversion:file:rhodecode/VERSION]
5 [bumpversion:file:rhodecode/VERSION]
6
6
@@ -1,66 +1,66
1 syntax: glob
1 syntax: glob
2 *.egg
2 *.egg
3 *.egg-info
3 *.egg-info
4 *.idea
4 *.idea
5 *.orig
5 *.orig
6 *.pyc
6 *.pyc
7 *.sqlite-journal
7 *.sqlite-journal
8 *.swp
8 *.swp
9 *.tox
9 *.tox
10 *.DS_Store*
10 *.DS_Store*
11 rhodecode/public/js/src/components/**/*.css
11 rhodecode/public/js/src/components/**/*.css
12
12
13 syntax: regexp
13 syntax: regexp
14
14
15 #.filename
15 #.filename
16 ^\.settings$
16 ^\.settings$
17 ^\.project$
17 ^\.project$
18 ^\.pydevproject$
18 ^\.pydevproject$
19 ^\.coverage$
19 ^\.coverage$
20 ^\.cache.*$
20 ^\.cache.*$
21 ^\.rhodecode$
21 ^\.rhodecode$
22
22
23 ^rcextensions
23 ^rcextensions
24 ^.dev
24 ^.dev
25 ^._dev
25 ^._dev
26 ^build/
26 ^build/
27 ^bower_components/
28 ^coverage\.xml$
27 ^coverage\.xml$
29 ^data$
28 ^data$
30 ^\.eggs/
29 ^\.eggs/
31 ^configs/data$
30 ^configs/data$
32 ^dev.ini$
31 ^dev.ini$
33 ^acceptance_tests/dev.*\.ini$
32 ^acceptance_tests/dev.*\.ini$
34 ^dist/
33 ^dist/
35 ^fabfile.py
34 ^fabfile.py
36 ^htmlcov
35 ^htmlcov
37 ^junit\.xml$
36 ^junit\.xml$
38 ^node_modules/
37 ^node_modules/
38 ^node_binaries/
39 ^pylint.log$
39 ^pylint.log$
40 ^rcextensions/
40 ^rcextensions/
41 ^result$
41 ^result$
42 ^rhodecode/public/css/style.css$
42 ^rhodecode/public/css/style.css$
43 ^rhodecode/public/css/style-polymer.css$
43 ^rhodecode/public/css/style-polymer.css$
44 ^rhodecode/public/js/rhodecode-components.html$
44 ^rhodecode/public/js/rhodecode-components.html$
45 ^rhodecode/public/js/rhodecode-components.js$
45 ^rhodecode/public/js/scripts.js$
46 ^rhodecode/public/js/scripts.js$
46 ^rhodecode/public/js/rhodecode-components.js$
47 ^rhodecode/public/js/src/components/root-styles.gen.html$
47 ^rhodecode/public/js/src/components/root-styles.gen.html$
48 ^rhodecode/public/js/vendors/webcomponentsjs/
48 ^rhodecode/public/js/vendors/webcomponentsjs/
49 ^rhodecode\.db$
49 ^rhodecode\.db$
50 ^rhodecode\.log$
50 ^rhodecode\.log$
51 ^rhodecode_dev\.log$
51 ^rhodecode_dev\.log$
52 ^test\.db$
52 ^test\.db$
53
53
54 # ac-tests
54 # ac-tests
55 ^acceptance_tests/\.cache.*$
55 ^acceptance_tests/\.cache.*$
56 ^acceptance_tests/externals
56 ^acceptance_tests/externals
57 ^acceptance_tests/ghostdriver.log$
57 ^acceptance_tests/ghostdriver.log$
58 ^acceptance_tests/local(_.+)?\.ini$
58 ^acceptance_tests/local(_.+)?\.ini$
59
59
60 # docs
60 # docs
61 ^docs/_build$
61 ^docs/_build$
62 ^docs/result$
62 ^docs/result$
63 ^docs-internal/_build$
63 ^docs-internal/_build$
64
64
65 # Cythonized things
65 # Cythonized things
66 ^rhodecode/.*\.(c|so)$
66 ^rhodecode/.*\.(c|so)$
@@ -1,33 +1,28
1 [DEFAULT]
1 [DEFAULT]
2 done = false
2 done = false
3
3
4 [task:bump_version]
4 [task:bump_version]
5 done = true
5 done = true
6
6
7 [task:rc_tools_pinned]
7 [task:rc_tools_pinned]
8 done = true
9
8
10 [task:fixes_on_stable]
9 [task:fixes_on_stable]
11 done = true
12
10
13 [task:pip2nix_generated]
11 [task:pip2nix_generated]
14 done = true
15
12
16 [task:changelog_updated]
13 [task:changelog_updated]
17 done = true
18
14
19 [task:generate_api_docs]
15 [task:generate_api_docs]
20 done = true
16
17 [task:updated_translation]
21
18
22 [release]
19 [release]
23 state = prepared
20 state = in_progress
24 version = 4.13.3
21 version = 4.14.0
25
26 [task:updated_translation]
27
22
28 [task:generate_js_routes]
23 [task:generate_js_routes]
29
24
30 [task:updated_trial_license]
25 [task:updated_trial_license]
31
26
32 [task:generate_oss_licenses]
27 [task:generate_oss_licenses]
33
28
@@ -1,15 +1,21
1 var gruntConfig = require('./grunt_config.json');
1 var gruntConfig = require('./grunt_config.json');
2 var webpackConfig = require('./webpack.config');
3 gruntConfig["webpack"] = {
4 options: {
5 stats: !process.env.NODE_ENV || process.env.NODE_ENV === 'development'
6 },
7 prod: webpackConfig,
8 dev: Object.assign({ watch: false }, webpackConfig)
9 };
2
10
3 module.exports = function(grunt) {
11 module.exports = function(grunt) {
4 grunt.initConfig(gruntConfig);
12 grunt.initConfig(gruntConfig);
5
13
6 grunt.loadNpmTasks('grunt-contrib-less');
14 grunt.loadNpmTasks('grunt-contrib-less');
7 grunt.loadNpmTasks('grunt-contrib-concat');
15 grunt.loadNpmTasks('grunt-contrib-concat');
8 grunt.loadNpmTasks('grunt-contrib-watch');
16 grunt.loadNpmTasks('grunt-contrib-watch');
9 grunt.loadNpmTasks('grunt-contrib-jshint');
17 grunt.loadNpmTasks('grunt-contrib-jshint');
10 grunt.loadNpmTasks('grunt-vulcanize');
11 grunt.loadNpmTasks('grunt-crisper');
12 grunt.loadNpmTasks('grunt-contrib-copy');
18 grunt.loadNpmTasks('grunt-contrib-copy');
13
19 grunt.loadNpmTasks('grunt-webpack');
14 grunt.registerTask('default', ['less:production', 'less:components', 'concat:polymercss', 'copy', 'concat:dist', 'vulcanize', 'crisper']);
20 grunt.registerTask('default', ['less:production', 'less:components', 'copy', 'webpack', 'concat:dist']);
15 };
21 };
@@ -1,53 +1,52
1 # top level files
1 # top level files
2
2
3 include MANIFEST.in
3 include MANIFEST.in
4 include README.rst
4 include README.rst
5 include CHANGES.rst
5 include CHANGES.rst
6 include LICENSE.txt
6 include LICENSE.txt
7
7
8 include rhodecode/VERSION
8 include rhodecode/VERSION
9
9
10 # docs
10 # docs
11 recursive-include docs *
11 recursive-include docs *
12
12
13 # all config files
13 # all config files
14 recursive-include configs *
14 recursive-include configs *
15
15
16 # translations
16 # translations
17 recursive-include rhodecode/i18n *
17 recursive-include rhodecode/i18n *
18
18
19 # non-python core stuff
19 # non-python core stuff
20 recursive-include rhodecode *.cfg
20 recursive-include rhodecode *.cfg
21 recursive-include rhodecode *.json
21 recursive-include rhodecode *.json
22 recursive-include rhodecode *.ini_tmpl
22 recursive-include rhodecode *.ini_tmpl
23 recursive-include rhodecode *.sh
23 recursive-include rhodecode *.sh
24 recursive-include rhodecode *.mako
24 recursive-include rhodecode *.mako
25
25
26 # 502 page
26 # 502 page
27 include rhodecode/public/502.html
27 include rhodecode/public/502.html
28
28
29 # robots
29 # robots
30 include rhodecode/public/robots.txt
30 include rhodecode/public/robots.txt
31
31
32 # images, css
32 # images, css
33 include rhodecode/public/css/*.css
33 include rhodecode/public/css/*.css
34 include rhodecode/public/images/*.*
34 include rhodecode/public/images/*.*
35 include rhodecode/public/images/ee_features/*.*
35 include rhodecode/public/images/ee_features/*.*
36
36
37 # sound files
37 # sound files
38 include rhodecode/public/sounds/*.mp3
38 include rhodecode/public/sounds/*.mp3
39 include rhodecode/public/sounds/*.wav
39 include rhodecode/public/sounds/*.wav
40
40
41 # fonts
41 # fonts
42 recursive-include rhodecode/public/fonts/ProximaNova *
43 recursive-include rhodecode/public/fonts/RCIcons *
42 recursive-include rhodecode/public/fonts/RCIcons *
44
43
45 # js
44 # js
46 recursive-include rhodecode/public/js *
45 recursive-include rhodecode/public/js *
47
46
48 # templates
47 # templates
49 recursive-include rhodecode/templates *
48 recursive-include rhodecode/templates *
50
49
51 # skip any tests files
50 # skip any tests files
52 recursive-exclude rhodecode/tests *
51 recursive-exclude rhodecode/tests *
53
52
@@ -1,53 +1,53
1
1
2 .PHONY: clean docs docs-clean docs-cleanup test test-clean test-only test-only-postgres test-only-mysql web-build
2 .PHONY: clean docs docs-clean docs-cleanup test test-clean test-only test-only-postgres test-only-mysql web-build
3
3
4 WEBPACK=./node_modules/webpack/bin/webpack.js
5 GRUNT=grunt
6 NODE_PATH=./node_modules
4 NODE_PATH=./node_modules
5 WEBPACK=./node_binaries/webpack
6 GRUNT=./node_binaries/grunt
7
7
8
8
9 clean:
9 clean:
10 make test-clean
10 make test-clean
11 find . -type f \( -iname '*.c' -o -iname '*.pyc' -o -iname '*.so' \) -exec rm '{}' ';'
11 find . -type f \( -iname '*.c' -o -iname '*.pyc' -o -iname '*.so' \) -exec rm '{}' ';'
12
12
13 test:
13 test:
14 make test-clean
14 make test-clean
15 make test-only
15 make test-only
16
16
17 test-clean:
17 test-clean:
18 rm -rf coverage.xml htmlcov junit.xml pylint.log result
18 rm -rf coverage.xml htmlcov junit.xml pylint.log result
19 find . -type d -name "__pycache__" -prune -exec rm -rf '{}' ';'
19 find . -type d -name "__pycache__" -prune -exec rm -rf '{}' ';'
20
20
21 test-only:
21 test-only:
22 PYTHONHASHSEED=random \
22 PYTHONHASHSEED=random \
23 py.test -x -vv -r xw -p no:sugar --cov=rhodecode \
23 py.test -x -vv -r xw -p no:sugar --cov=rhodecode \
24 --cov-report=term-missing --cov-report=html \
24 --cov-report=term-missing --cov-report=html \
25 rhodecode
25 rhodecode
26
26
27 test-only-mysql:
27 test-only-mysql:
28 PYTHONHASHSEED=random \
28 PYTHONHASHSEED=random \
29 py.test -x -vv -r xw -p no:sugar --cov=rhodecode \
29 py.test -x -vv -r xw -p no:sugar --cov=rhodecode \
30 --cov-report=term-missing --cov-report=html \
30 --cov-report=term-missing --cov-report=html \
31 --ini-config-override='{"app:main": {"sqlalchemy.db1.url": "mysql://root:qweqwe@localhost/rhodecode_test"}}' \
31 --ini-config-override='{"app:main": {"sqlalchemy.db1.url": "mysql://root:qweqwe@localhost/rhodecode_test"}}' \
32 rhodecode
32 rhodecode
33
33
34 test-only-postgres:
34 test-only-postgres:
35 PYTHONHASHSEED=random \
35 PYTHONHASHSEED=random \
36 py.test -x -vv -r xw -p no:sugar --cov=rhodecode \
36 py.test -x -vv -r xw -p no:sugar --cov=rhodecode \
37 --cov-report=term-missing --cov-report=html \
37 --cov-report=term-missing --cov-report=html \
38 --ini-config-override='{"app:main": {"sqlalchemy.db1.url": "postgresql://postgres:qweqwe@localhost/rhodecode_test"}}' \
38 --ini-config-override='{"app:main": {"sqlalchemy.db1.url": "postgresql://postgres:qweqwe@localhost/rhodecode_test"}}' \
39 rhodecode
39 rhodecode
40
40
41
41
42 docs:
42 docs:
43 (cd docs; nix-build default.nix -o result; make clean html)
43 (cd docs; nix-build default.nix -o result; make clean html)
44
44
45 docs-clean:
45 docs-clean:
46 (cd docs; make clean)
46 (cd docs; make clean)
47
47
48 docs-cleanup:
48 docs-cleanup:
49 (cd docs; make cleanup)
49 (cd docs; make cleanup)
50
50
51 web-build:
51 web-build:
52 NODE_PATH=$(NODE_PATH) $(GRUNT)
52 NODE_PATH=$(NODE_PATH) $(GRUNT)
53
53
@@ -1,724 +1,724
1
1
2
2
3 ################################################################################
3 ################################################################################
4 ## RHODECODE COMMUNITY EDITION CONFIGURATION ##
4 ## RHODECODE COMMUNITY EDITION CONFIGURATION ##
5 ################################################################################
5 ################################################################################
6
6
7 [DEFAULT]
7 [DEFAULT]
8 debug = true
8 debug = true
9
9
10 ################################################################################
10 ################################################################################
11 ## EMAIL CONFIGURATION ##
11 ## EMAIL CONFIGURATION ##
12 ## Uncomment and replace with the email address which should receive ##
12 ## Uncomment and replace with the email address which should receive ##
13 ## any error reports after an application crash ##
13 ## any error reports after an application crash ##
14 ## Additionally these settings will be used by the RhodeCode mailing system ##
14 ## Additionally these settings will be used by the RhodeCode mailing system ##
15 ################################################################################
15 ################################################################################
16
16
17 ## prefix all emails subjects with given prefix, helps filtering out emails
17 ## prefix all emails subjects with given prefix, helps filtering out emails
18 #email_prefix = [RhodeCode]
18 #email_prefix = [RhodeCode]
19
19
20 ## email FROM address all mails will be sent
20 ## email FROM address all mails will be sent
21 #app_email_from = rhodecode-noreply@localhost
21 #app_email_from = rhodecode-noreply@localhost
22
22
23 #smtp_server = mail.server.com
23 #smtp_server = mail.server.com
24 #smtp_username =
24 #smtp_username =
25 #smtp_password =
25 #smtp_password =
26 #smtp_port =
26 #smtp_port =
27 #smtp_use_tls = false
27 #smtp_use_tls = false
28 #smtp_use_ssl = true
28 #smtp_use_ssl = true
29 ## Specify available auth parameters here (e.g. LOGIN PLAIN CRAM-MD5, etc.)
30 #smtp_auth =
31
29
32 [server:main]
30 [server:main]
33 ## COMMON ##
31 ## COMMON ##
34 host = 127.0.0.1
32 host = 127.0.0.1
35 port = 5000
33 port = 5000
36
34
37 ###########################################################
35 ###########################################################
38 ## WAITRESS WSGI SERVER - Recommended for Development ####
36 ## WAITRESS WSGI SERVER - Recommended for Development ####
39 ###########################################################
37 ###########################################################
40
38
41 use = egg:waitress#main
39 use = egg:waitress#main
42 ## number of worker threads
40 ## number of worker threads
43 threads = 5
41 threads = 5
44 ## MAX BODY SIZE 100GB
42 ## MAX BODY SIZE 100GB
45 max_request_body_size = 107374182400
43 max_request_body_size = 107374182400
46 ## Use poll instead of select, fixes file descriptors limits problems.
44 ## Use poll instead of select, fixes file descriptors limits problems.
47 ## May not work on old windows systems.
45 ## May not work on old windows systems.
48 asyncore_use_poll = true
46 asyncore_use_poll = true
49
47
50
48
51 ##########################
49 ##########################
52 ## GUNICORN WSGI SERVER ##
50 ## GUNICORN WSGI SERVER ##
53 ##########################
51 ##########################
54 ## run with gunicorn --log-config rhodecode.ini --paste rhodecode.ini
52 ## run with gunicorn --log-config rhodecode.ini --paste rhodecode.ini
55
53
56 #use = egg:gunicorn#main
54 #use = egg:gunicorn#main
57 ## Sets the number of process workers. More workers means more concurent connections
55 ## Sets the number of process workers. More workers means more concurent connections
58 ## RhodeCode can handle at the same time. Each additional worker also it increases
56 ## RhodeCode can handle at the same time. Each additional worker also it increases
59 ## memory usage as each has it's own set of caches.
57 ## memory usage as each has it's own set of caches.
60 ## Recommended value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers, but no more
58 ## Recommended value is (2 * NUMBER_OF_CPUS + 1), eg 2CPU = 5 workers, but no more
61 ## than 8-10 unless for really big deployments .e.g 700-1000 users.
59 ## than 8-10 unless for really big deployments .e.g 700-1000 users.
62 ## `instance_id = *` must be set in the [app:main] section below (which is the default)
60 ## `instance_id = *` must be set in the [app:main] section below (which is the default)
63 ## when using more than 1 worker.
61 ## when using more than 1 worker.
64 #workers = 2
62 #workers = 2
65 ## process name visible in process list
63 ## process name visible in process list
66 #proc_name = rhodecode
64 #proc_name = rhodecode
67 ## type of worker class, one of sync, gevent
65 ## type of worker class, one of sync, gevent
68 ## recommended for bigger setup is using of of other than sync one
66 ## recommended for bigger setup is using of of other than sync one
69 #worker_class = gevent
67 #worker_class = gevent
70 ## The maximum number of simultaneous clients. Valid only for Gevent
68 ## The maximum number of simultaneous clients. Valid only for Gevent
71 #worker_connections = 10
69 #worker_connections = 10
72 ## max number of requests that worker will handle before being gracefully
70 ## max number of requests that worker will handle before being gracefully
73 ## restarted, could prevent memory leaks
71 ## restarted, could prevent memory leaks
74 #max_requests = 1000
72 #max_requests = 1000
75 #max_requests_jitter = 30
73 #max_requests_jitter = 30
76 ## amount of time a worker can spend with handling a request before it
74 ## amount of time a worker can spend with handling a request before it
77 ## gets killed and restarted. Set to 6hrs
75 ## gets killed and restarted. Set to 6hrs
78 #timeout = 21600
76 #timeout = 21600
79
77
80
78
81 ## prefix middleware for RhodeCode.
79 ## prefix middleware for RhodeCode.
82 ## recommended when using proxy setup.
80 ## recommended when using proxy setup.
83 ## allows to set RhodeCode under a prefix in server.
81 ## allows to set RhodeCode under a prefix in server.
84 ## eg https://server.com/custom_prefix. Enable `filter-with =` option below as well.
82 ## eg https://server.com/custom_prefix. Enable `filter-with =` option below as well.
85 ## And set your prefix like: `prefix = /custom_prefix`
83 ## And set your prefix like: `prefix = /custom_prefix`
86 ## be sure to also set beaker.session.cookie_path = /custom_prefix if you need
84 ## be sure to also set beaker.session.cookie_path = /custom_prefix if you need
87 ## to make your cookies only work on prefix url
85 ## to make your cookies only work on prefix url
88 [filter:proxy-prefix]
86 [filter:proxy-prefix]
89 use = egg:PasteDeploy#prefix
87 use = egg:PasteDeploy#prefix
90 prefix = /
88 prefix = /
91
89
92 [app:main]
90 [app:main]
93 ## The %(here)s variable will be replaced with the absolute path of parent directory
91 ## The %(here)s variable will be replaced with the absolute path of parent directory
94 ## of this file
92 ## of this file
95 ## In addition ENVIRONMENT variables usage is possible, e.g
93 ## In addition ENVIRONMENT variables usage is possible, e.g
96 ## sqlalchemy.db1.url = {ENV_RC_DB_URL}
94 ## sqlalchemy.db1.url = {ENV_RC_DB_URL}
97
95
98 use = egg:rhodecode-enterprise-ce
96 use = egg:rhodecode-enterprise-ce
99
97
100 ## enable proxy prefix middleware, defined above
98 ## enable proxy prefix middleware, defined above
101 #filter-with = proxy-prefix
99 #filter-with = proxy-prefix
102
100
103 # During development the we want to have the debug toolbar enabled
101 # During development the we want to have the debug toolbar enabled
104 pyramid.includes =
102 pyramid.includes =
105 pyramid_debugtoolbar
103 pyramid_debugtoolbar
106 rhodecode.lib.middleware.request_wrapper
104 rhodecode.lib.middleware.request_wrapper
107
105
108 pyramid.reload_templates = true
106 pyramid.reload_templates = true
109
107
110 debugtoolbar.hosts = 0.0.0.0/0
108 debugtoolbar.hosts = 0.0.0.0/0
111 debugtoolbar.exclude_prefixes =
109 debugtoolbar.exclude_prefixes =
112 /css
110 /css
113 /fonts
111 /fonts
114 /images
112 /images
115 /js
113 /js
116
114
117 ## RHODECODE PLUGINS ##
115 ## RHODECODE PLUGINS ##
118 rhodecode.includes =
116 rhodecode.includes =
119 rhodecode.api
117 rhodecode.api
120
118
121
119
122 # api prefix url
120 # api prefix url
123 rhodecode.api.url = /_admin/api
121 rhodecode.api.url = /_admin/api
124
122
125
123
126 ## END RHODECODE PLUGINS ##
124 ## END RHODECODE PLUGINS ##
127
125
128 ## encryption key used to encrypt social plugin tokens,
126 ## encryption key used to encrypt social plugin tokens,
129 ## remote_urls with credentials etc, if not set it defaults to
127 ## remote_urls with credentials etc, if not set it defaults to
130 ## `beaker.session.secret`
128 ## `beaker.session.secret`
131 #rhodecode.encrypted_values.secret =
129 #rhodecode.encrypted_values.secret =
132
130
133 ## decryption strict mode (enabled by default). It controls if decryption raises
131 ## decryption strict mode (enabled by default). It controls if decryption raises
134 ## `SignatureVerificationError` in case of wrong key, or damaged encryption data.
132 ## `SignatureVerificationError` in case of wrong key, or damaged encryption data.
135 #rhodecode.encrypted_values.strict = false
133 #rhodecode.encrypted_values.strict = false
136
134
137 ## return gzipped responses from Rhodecode (static files/application)
135 ## return gzipped responses from Rhodecode (static files/application)
138 gzip_responses = false
136 gzip_responses = false
139
137
140 ## autogenerate javascript routes file on startup
138 ## autogenerate javascript routes file on startup
141 generate_js_files = false
139 generate_js_files = false
142
140
143 ## System global default language.
141 ## System global default language.
144 ## All available languages: en(default), be, de, es, fr, it, ja, pl, pt, ru, zh
142 ## All available languages: en(default), be, de, es, fr, it, ja, pl, pt, ru, zh
145 lang = en
143 lang = en
146
144
147 ## Perform a full repository scan and import on each server start.
145 ## Perform a full repository scan and import on each server start.
148 ## Settings this to true could lead to very long startup time.
146 ## Settings this to true could lead to very long startup time.
149 startup.import_repos = false
147 startup.import_repos = false
150
148
151 ## Uncomment and set this path to use archive download cache.
149