1458 Commits

Author SHA1 Message Date
kracekumar
c6d650ebd2 Sys imported twice. 2013-10-14 00:43:02 +05:30
Benoit Chesneau
d673ffa9bc Merge pull request #626 from wong2/tweak
Small tweaks of wsgiapp.py
2013-10-09 08:55:22 -07:00
Benoit Chesneau
0ef6b4e332 Merge pull request #623 from simlun/patch-1
Fix typo in comment
2013-10-09 08:54:53 -07:00
wong2
bbd8b16b6f fix a typo 2013-10-09 16:43:49 +08:00
wong2
8a94f901bc remove unused import 2013-10-09 16:43:34 +08:00
Simon Lundmark
b62c1839e3 Fix typo in comment 2013-10-05 17:06:25 +02:00
benoitc
feb86d3fb2 don't display the traceback in the HTTP response 2013-09-27 09:09:15 +02:00
benoitc
5ff75b194c regenerate settings 2013-09-26 22:50:16 +02:00
Randall Leeds
840f23ee80 Merge pull request #612 from Locker537/typo_fix
Fix a single typo.
2013-09-18 14:48:40 -07:00
Stephen DiCato
79ed7851ae Fix a single typo. 2013-09-13 15:08:21 -04:00
benoitc
4e67942ae4 add Stephane Wirtel to THANKS 2013-08-31 10:43:55 +02:00
benoitc
e927972848 add Alex Gaynor to THANKS 2013-08-31 10:43:04 +02:00
Benoit Chesneau
36e5ae05bb Merge pull request #603 from alex/compile-re-once
Only compiled some regexes used in HTTP parsing once
2013-08-31 01:40:27 -07:00
Alex Gaynor
b5c1810722 Only compiled some regexes used in HTTP parsing once
Currently they are parsed and compiled once per-HTTP request, which is
unnescary computation and makes stuff slower than it could be.
2013-08-28 20:23:53 -07:00
benoitc
24fe380982 typos 2013-08-28 00:40:48 +02:00
benoitc
d3b1687e03 update the changes 2013-08-28 00:31:27 +02:00
benoitc
644ae4d4f2 Revert "oups this the 17.6 version"
This reverts commit bb71bc841f7422333324b95c988ba0677779304d.
2013-08-28 00:14:58 +02:00
benoitc
bb71bc841f oups this the 17.6 version 2013-08-28 00:11:51 +02:00
benoitc
e32f08cd4a bump to 18.0 2013-08-27 23:55:39 +02:00
benoitc
7e40442978 simplify the eventlet worker.
sockets are a;lready greened. make sure we also switch to the acceptor quickly.
2013-08-27 23:49:18 +02:00
benoitc
4a2eaf202c fix wsgiapp loading 2013-08-27 23:25:16 +02:00
benoitc
b6af364c79 add the --paste option and deprecate gunicorn_paster
Instead of having multiple command line just use the gunicorn one.
gunicorn_django is deprecated as well.
2013-08-27 23:16:35 +02:00
benoitc
f886d86b46 deprecate gunicorn_django 2013-08-27 21:17:33 +02:00
benoitc
bdec5975ef remove any notion of gunicorn in main WSGIApplication
if someone want to use a django application and load a specific module it is
better to use the --env option.
2013-08-27 20:38:49 +02:00
benoitc
1eceed0ad5 monleypatch sendfile for the eventlet worker
makesure sendfile isn't blocking on eventlet
2013-08-27 18:32:33 +02:00
benoitc
25094605cf monkeypatch wsgi.sendfile for gevent
make sendfile usage non blocking with gevent
2013-08-27 18:18:35 +02:00
benoitc
4e3702c3ca fix tests 2013-08-27 17:14:12 +02:00
benoitc
82256a93a5 add --chdir option
chdir to specified directory before apps loading.

Ex:

	$ gunicorn --chdir ./examples test:app

fix #384
2013-08-27 16:52:49 +02:00
benoitc
3452379108 remove useless lines in example 2013-08-27 15:32:01 +02:00
benoitc
3d0b0fe012 value can be None 2013-08-27 15:31:06 +02:00
benoitc
4e3428af0e add -e/--env command line argunment
This command line argunment allows someone to pass an environement variable to
gunicorn:

	$ gunicorn --env FOO=1 test:app

With the command line above the application will be able to use the FOO
environment vatriable.
2013-08-27 13:21:53 +02:00
Benoit Chesneau
054f1135db Merge pull request #600 from matrixise/master
Close all the listener sockets
2013-08-27 02:51:29 -07:00
benoitc
dc97e54412 handle io.BytesIO object with file_wrapper
fix #595
2013-08-27 11:45:32 +02:00
Stephane Wirtel
7ed7ca998d Close all the listener sockets 2013-08-27 11:24:32 +02:00
benoitc
40bc38bb2f support wsgi.file_wrapper in async workers 2013-08-27 11:17:03 +02:00
benoitc
ded4df3ed5 we support python 3 since a while 2013-08-19 10:38:10 +02:00
benoitc
b3d85a0b67 optimise response connection header check
Get the status code from the response once so we can use it to check the need
for the connection header later without parsing the string each time we need it.
2013-08-12 11:39:11 +02:00
Dima Barsky
9f4cf4181f responses 1xx, 204 and 304 should not force the connection to be closed
Only these types of responses are allowed to have empty body

fix #581
2013-08-12 11:17:20 +02:00
Randall Leeds
fa9d028d09 After closing for error do not keep alive
Raise a StopIteration rather than returning so that the keep-alive
loop is terminated. If gunicorn has closed the socket there is no
sense in trying to read another request and it may cause spurious
EBADF errors to try.
2013-08-07 19:57:56 -07:00
Randall Leeds
90fb09f618 Don't reload the paster app when run with pserve
Using gunicorn with paster command line causes the application to
load before gunicorn. In this case, there is no choice but to preload
the application. Document this fact.

Fixes #528.
2013-08-06 03:29:58 -07:00
Randall Leeds
63600aa6b3 [ggevent] Don't die when logging requests
Some requests, such as websocket requests, may not have headers.
2013-08-06 02:56:48 -07:00
Randall Leeds
68b48b9694 Forward-compatibility for gevent graceful shutdown
This commit closes the loop on fd6c712.

Aforementioned commit fixed observable problems in my testing with
gevent 1.0 release candidates but the explanation given at the time
was curiously bogus. It came from a misreading of pools and servers
as used in the ggevent worker.

With this change, both versions of gevent should support graceful
and non-graceful shutdown.
2013-08-06 02:56:47 -07:00
Randall Leeds
33f7c96db6 [ggevent] Stop quickly and cleanly on ppid change
This change should improve interaction with reloaders and ensure that
ports are not stuck open if the arbiter gets a hard kill signal or
otherwise exits during any graceful or non-graceful shutdown.
2013-08-06 02:56:47 -07:00
Randall Leeds
5afb03e6f4 Merge pull request #583 from pypeng/resp-maybe-none
resp maybe None when pre_request raises exceptions
2013-08-06 01:48:15 -07:00
Randall Leeds
cbc55843bd typo 2013-08-05 22:19:02 -07:00
Randall Leeds
0c34c4213b typo 2013-08-05 22:04:53 -07:00
Randall Leeds
ec2ee0b127 Support for python config file option in paster
It is now possible to specify a file with "config" as an application
configuration key in a paste deploy configuration file. This allows
paster applications to use the full range of gunicorn settings even
when using paste/pserve rather than gunicorn_paster.

Fixes #540.
2013-08-05 22:04:43 -07:00
py
b4c286bc81 resp maybe None when pre_request raise exceptions 2013-07-30 17:27:51 +08:00
benoitc
53c4484bb8 fix null timmeout and gunicorn.
if no timeout is given the synchronous worker will never wait and will
use the CPU for nothing. This minimal timeout prevent it.

fix #567
2013-07-12 10:04:52 +02:00
benoitc
546c2e71fd add a verssionninbg not to the doc as well. 2013-07-10 08:14:07 +02:00