83 Commits

Author SHA1 Message Date
Berker Peksag
7fff5afa39 Minor cosmetic fixes. 2015-07-03 07:43:22 +03:00
Berker Peksag
436c9872a2 Use a pytest fixture in test_default_config_file. 2015-07-03 07:42:56 +03:00
Berker Peksag
a0f05555aa Silence a py.test warning. 2015-07-03 07:41:53 +03:00
Berker Peksag
2af9468940 Parametrize valid request tests. 2015-07-03 07:41:24 +03:00
Berker Peksag
882e00f6b5 Use types.SimpleNamespace where appropriate. 2015-07-03 07:40:32 +03:00
Berker Peksag
337900037f Convert tests to use py.test assertions.
Closes #950
2015-07-03 07:38:36 +03:00
Berker Peksag
945d2ecfc3 Parametrize invalid request tests. 2015-05-09 21:49:10 +03:00
Randall Leeds
72c8be56fc Add test for #1023 2015-05-09 20:46:31 +03:00
Thomas Orozco
410bcfa6e1 Fix statsd logging to work on Python 3
Bytes must be passed to socket.send.

Update tests to ensure an actual socket is used, so that errors like
this can be caught in unit tests in the future.
2015-04-30 14:07:03 +02:00
Berker Peksag
7ce90373a8 Remove unused imports. 2014-12-01 07:00:02 +02:00
Berker Peksag
4713ef7f37 Pass a 'sent' parameter to Mock(). 2014-11-24 23:07:46 +02:00
Sungho Ryu
53a4ea556f Added missing import for platform in tests/support.py for os x. 2014-11-24 14:58:31 +01:00
Berker Peksag
bf3ef8f389 Add selectors module to gunicorn codebase.
Closes #886.
2014-10-16 15:44:10 +03:00
Benoit Chesneau
27c75d5d75 Merge pull request #887 from jssjr/jssjr/statsd-prefix
Allow for statsd metrics to be prefixed
2014-10-03 08:57:53 +02:00
Collin Anderson
f2ba62bc10 six 1.8.0 and gunicorn._compat
closes #904 and #905
2014-10-02 17:00:03 -04:00
Scott Sanders
c9c543dc82 Update tests to demonstrate trailing . handling 2014-09-16 08:34:38 -04:00
Scott Sanders
88bc188407 Add tests for statsd prefix 2014-09-12 14:58:03 -04:00
Collin Anderson
03fbe9429d clean whitespace 2014-09-10 09:52:12 -04:00
benoitc
f80ddf368c fix tests 2014-08-16 12:26:04 +02:00
Randall Leeds
42ff88bbbd Merge pull request #838 from mgood/statsd-timing
Send statsd timing metrics in milliseconds
2014-08-05 00:26:40 -07:00
Matt Good
59bf9b5867 Fix statsd test for millisecond times 2014-08-03 14:39:34 -07:00
Alexis Le-Quoc
bc2e132bce Rework logging to allow for empty log message while pushing metrics 2014-08-03 17:15:13 -04:00
Andrew Svetlov
2b2725dddb Support UNIX sockets in gaiohttp worker 2014-07-23 07:33:18 +03:00
Benoit Chesneau
ceda9c597c Merge pull request #748 from alq666/statsd-logger
gunicorn instrumentation via statsD and a new logger class
2014-06-28 16:45:54 +02:00
Thomas Grainger
2bde8eb103 Support loading config from module 2014-06-20 09:20:37 +01:00
Alexis Le-Quoc
05051aa8b2 Simpler statsd integration
No need to specify a logger class.
--statsd-to is enough to trigger the Statsd logger automatically
2014-06-18 21:33:04 -04:00
Alexis Le-Quoc
c3421a833d Merge branch 'master' of https://github.com/benoitc/gunicorn into statsd-logger 2014-06-18 11:23:36 -04:00
Andrew Svetlov
e9518383da Fix gaiohttp tests for Python 2.5 2014-06-09 19:31:52 +03:00
Andrew Svetlov
e1d97f1bea Add tests for gaiohttp worker 2014-06-09 18:36:46 +03:00
Alexis Le-Quoc
3c3c52fb6a Fix failing test and reorder logging to always log 2014-05-31 13:14:05 -04:00
Alexis Le-Quoc
89a3c96700 Incorporate feedback from PR
Use extra keyword in logger, more pythonic
capture response code as a rate metric
2014-05-31 00:10:51 -04:00
Berker Peksag
829e8d32d4 Remove __future__.with_statement imports.
Gunicorn requires Python 2.6 or newer now:

http://docs.gunicorn.org/en/latest/install.html#requirements
2014-05-15 00:34:02 +03:00
Nick Pillitteri
9c1b46f998 Move setting of environmental variables before preload_app start.
Move setting of env vars from Arbiter.start to Arbiter.setup so that they are available during application start up when 'preload_app' is used.

Closes #735
2014-05-13 15:46:06 -04:00
Stephen Holsapple
c353828351 Define Ciphers config conditionally
We only expose the `Ciphers` config parameter in versions of Python that
support it (i.e., >= Python 2.7).
2014-04-22 12:21:01 -07:00
W. Trevor King
2277901a72 Deprecate the --debug setting
"Limits the number of worker processes to 1" hasn't been true since
06a4dc6 (fix one error in gunicorn_paster, global conf was ignored,
2010-06-22), although it was true when the line was added in 3c7d532
(Large refactor of the documentation and website, 2010-05-22).

"changes some error handling that's sent to clients" hasn't been true
since feb86d3 (don't display the traceback in the HTTP response,
2013-09-27).

The only remaining actions that --debug had were disabling --preload
and hiding debug-level config logging.  The former seems useless (just
disable --preload directly) and the latter at doesn't seem useful
enough for a new setting (just turn down --log-level).  With this
commit, --preload always works and you always get debug-level config
logging.

I left a stub Debug entry in gunicorn.config, which we can leave in
place while folks convert any gunicorn scripts and configurations to
drop --debug.  When the time comes, we can just remove that entry.  I
also the boolean-config tests to use --preload, since that will still
be around after we remove the dummy Debug entry.

Fixes #700.
2014-02-13 12:40:41 -08:00
Benoit Chesneau
26a796f200 Merge pull request #670 from gnotaras/bugfix-request-line-check
Fixed the request line length check.
2014-01-01 07:48:44 -08:00
George Notaras
2d7eb3dc04 Added extra valid request (099) and test (send_special_chunks).
``send_special_chunks`` sends the request data in two chunks, one having a length of 1 byte, which ensures there is no CRLF, and a second chunk containing the rest of the request data. Practically, this forces ``gunicorn.http.message.Request.read_line()`` to get the full request data with two buffer reads and reveal possible bugs related to the internal buffer mechanism. See #670 for more information.
2013-12-30 00:14:46 +02:00
Dariusz Suchojad
5fb61cb841 Added support for more options to ssl.wrap_socket 2013-12-26 14:21:38 +01:00
Jorge Niedbalski R
a716285ed0 Added coverage for get_default_config_file, also a test for default config overrides 2013-06-22 07:14:08 -07:00
benoitc
5e08c27495 improve STDOUT/STDERR logging redirection.
Instead of faking STDIN/STDERR to a fake object that we close on reopen,
simply redirect them to a file and reopen this one when need.

Should fix most of the issues on #309
2013-04-21 11:31:58 +02:00
jean-philippe serafin
87474ffce1 add test_atom_defaults() 2013-04-18 15:58:55 +02:00
benoitc
ac1af72922 s/optparse/argparse 2012-12-25 06:19:06 +01:00
Qiangning Hong
174c34ec9c add nworkers_changed hook
This hook will be called whenever the number of workers is set.
2012-12-21 15:43:26 +01:00
Konstantin Enchant
aac56c9d55 Added response arg for post_request hook. 2012-12-16 10:21:01 +01:00
benoitc
b7b51adf13 allows gunicorn to bind to multiple address
Allows gunicorn to listen on different interface. It can be either ipv6,
unix or ipv4 sockets.

Ex:

    gunicorn -w3 -b 127.0.0.1:8001 -b 127.0.0.1:8000 -b [::1]:8000 test:app

fix #444
2012-12-14 10:18:39 +01:00
Eric Shull
e58f8b59b7 Add isatty method to LazyWriter. 2012-11-16 07:59:55 +01:00
benoitc
bb00d41ff9 fixes for py27 2012-10-24 23:08:15 +02:00
benoitc
8d453fb341 all tests pass under python 3 2012-10-24 22:07:35 +02:00
Konstantin Enchant
8f4edfa0bf Callable hooks for paster config. 2012-09-27 19:14:41 +02:00
Konstantin Kapustin
70534acde8 Implantation proxy protocol 2012-09-27 19:14:40 +02:00