3185 Commits

Author SHA1 Message Date
Ankush Menat
ca67a87c37
chore: update readme 2025-05-07 19:38:21 +05:30
Ankush Menat
73eae94e8b Revert "gthread: only read sockets when they are readable"
This reverts commit 0ebb73aa240f0ecffe3e0922d54cfece19f5bfed.
2025-05-07 19:28:08 +05:30
Ankush Menat
b9a8570039
fix: Drain shutdown event (#5)
Otherwise it goes in a spinny loop
2025-02-03 11:15:01 +05:30
Ankush Menat
4f74f4a4b8 fix: fast shutdown (#4)
Break the poller wait by using shutdown event to let it know its time to wake up.
2025-01-29 11:59:39 +05:30
Ankush Menat
2f5b492339
docs: update readme 2025-01-13 19:07:33 +05:30
Ankush Menat
e5d5bc4e35
perf: increase selector timeout (#2) 2025-01-13 19:00:53 +05:30
Ankush Menat
0c9b266790
fix: Request timeout for gthread workers (#1)
* ci: drop unsupported versions

* fix: a *dirty* request timeout for gthread workers

* fix: drain current futures before exiting

* fix: avoid accepting new connections completely

* refactor: Just rely on graceful_timeout

This has minor side effect of no progress on accepted BUT not "read"
reqeusts. But I feel this makes code simpler and less prone to bugs.

These time outs should be *rare* and fixed anyway.
2025-01-13 18:44:27 +05:30
Benoit Chesneau
bacbf8aa51
Merge pull request #2938 from Affirm/reuse-port-fix
Fix reuse-port to balance requests across Gunicorn workers
2024-10-25 11:36:15 +02:00
Benoit Chesneau
903792f152
Merge pull request #3269 from pajod/patch-include-tox.ini-in-sdist
packaging: include tox.ini in sdist
2024-08-13 21:52:07 +02:00
Paul J. Dorn
0c722b6915 packaging: add .pylintrc to sdist
undo when .pylintrc is moved into pyproject.toml (which is only
supported since pylint 2.5.3+ @ 2020-06-8)
2024-08-12 16:00:56 +02:00
Paul J. Dorn
81c1fc952a packaging: include tox.ini in sdist
tox testing works without full git repo, so no obvious harm in
aiding people running it from source distribution

based on setuptools itself doing it, and suggesting so in an example in
docs:
https://setuptools.pypa.io/en/latest/userguide/miscellaneous.html#controlling-files-in-the-distribution
551eb7f444

beware of .gitattributes / MANIFEST.in precedence when using setuptools-scm
2024-08-12 15:45:52 +02:00
benoitc
7268a61099 fix util.set_owner_process
Python 2.x is not supported anymore, let's remove this extra feature.

fix #3212
2024-08-11 09:52:51 +02:00
Benoit Chesneau
5aeb0652e1
Merge pull request #2887 from python273/patch-1
Fix sendfile.py example
2024-08-11 00:31:24 +02:00
benoitc
411986d619 fix doc 2024-08-10 22:34:28 +02:00
Benoit Chesneau
334392e779
Merge pull request #2559 from laggardkernel/bugfix/reexec-env
Typo fix for reexec related environ variables
2024-08-10 11:07:03 +02:00
Benoit Chesneau
e75c3533e3
Merge pull request #3189 from pajod/patch-py36
chore: eat Python 2 leftovers
2024-08-10 10:40:40 +02:00
benoitc
9357b28dd8 keep document user in access_log_format setting 2024-08-10 10:19:36 +02:00
benoitc
79fdef0822 bump to 23.0.0 2024-08-10 10:06:36 +02:00
Benoit Chesneau
3acd9fbfd1
Merge pull request #2620 from talkerbox/improve-access-log-format-docs
Improve access-log-format documentation section
2024-08-10 09:56:56 +02:00
Benoit Chesneau
3f56d76548
Merge pull request #3192 from pajod/patch-allowed-script-name
22.0.0 regression: We need a better default treatment of SCRIPT_NAME
2024-08-09 09:05:57 +02:00
Paul J. Dorn
256d474a79 docs: revert duped directive 2024-08-09 00:28:08 +02:00
Paul J. Dorn
ffa48b581d test: default change was intentional 2024-08-08 18:37:32 +02:00
Paul J. Dorn
52538ca907 docs: recommend SCRIPT_NAME=/subfolder 2024-08-08 18:32:23 +02:00
Paul J. Dorn
687b78d20c config defaults: PATH_NAME and ::1 for proxy
* PATH_NAME is used like SCRIPT_NAME: include both
* replicate changed forwarded-allow-ips default to proxy_allow_ips
2024-08-08 18:15:42 +02:00
Benoit Chesneau
06d537d55b
Merge pull request #3254 from pajod/patch-header-trailing-ws
Strip trailing optional whitespace (OWS) from single-line header field values
2024-08-08 15:12:29 +02:00
Paul J. Dorn
5bbf373e18 undocumented allow-all for forwarder-headers 2024-08-07 20:15:17 +02:00
Paul J. Dorn
3e042e8269 Configurable list of forwarder headers 2024-08-07 20:15:13 +02:00
Paul J. Dorn
01bcdb1d12 Exempt SCRIPT_NAME from newly introduced --header-map treatment 2024-08-07 20:10:47 +02:00
Paul J. Dorn
2bc931e7d9 whitespace handling in header field values
Strip whitespace also *after* header field value.
Simply refuse obsolete header folding (a default-off
option to revert is temporarily provided).
While we are at it, explicitly handle recently
introduced http error classes with intended status code.
2024-08-07 19:42:16 +02:00
Benoit Chesneau
77b65a0934
Merge pull request #3191 from pajod/patch-severity
logging: swap error/debug severity on socket creation failure
2024-08-07 19:25:31 +02:00
Benoit Chesneau
56324bef7a
Merge pull request #3217 from pajod/patch-docs
CI: verify docs are up to date
2024-08-07 19:23:23 +02:00
Paul J. Dorn
ce039ca71a Swap error/debug severity
debug message: will now sleep(1)
error message: this is what went wrong
2024-08-07 19:02:37 +02:00
Paul J. Dorn
6c3296e177 update docs
re-apply typo fix from 628a0bcb61ef3a211d67dfd68ad1ba161cccb3b8
reflect removal of setting from 555d2fa27f2d891f23bd03890e4a826b5018c6b4
2024-08-07 18:21:36 +02:00
Paul J. Dorn
e3562c94d3 doc: news for 2024 2024-08-07 18:21:35 +02:00
Paul J. Dorn
6245e2c03b docs: unresolved reference (the reference is not named after the class name) 2024-08-07 18:16:20 +02:00
Paul J. Dorn
2a3dfdd2c8 CI: verify docs up to date 2024-08-07 18:16:20 +02:00
Benoit Chesneau
2c38b036a2
Update design.rst
make the asyncio docs more explicit.

YODO: revisit this documentation later to be more exhaustive
2024-08-07 09:12:44 +02:00
Benoit Chesneau
ad7c1de132
Merge pull request #3080 from odyfatouros/Fix-#3079-worker_class-parameter-accepts-class
Fix for issue #3079, worker_class parameter accepts a class
2024-08-07 08:47:20 +02:00
Benoit Chesneau
52234e7b32
Merge pull request #2688 from StarfishStorage/fix_2684
Fix problem that may happen after interrupted chunk-encoding request
2024-08-07 00:24:46 +02:00
Benoit Chesneau
c5727ac92c
Merge pull request #3089 from pataquets/patch-1
news.rst: fix minor typo
2024-08-07 00:20:17 +02:00
Benoit Chesneau
5f820ce37c
Merge pull request #3167 from tbascoul/tiny-example-config-fix
update example_config with latest settings
2024-08-07 00:19:34 +02:00
Benoit Chesneau
ff2109e759
Merge pull request #3260 from benoitc/fix-te
don't tolerate wrong te headers
2024-08-07 00:15:56 +02:00
benoitc
555d2fa27f don't tolerate wrong te headers
changes:

- Just follow the new TE specification (https://datatracker.ietf.org/doc/html/rfc9112#name-transfer-encoding)
 here and accept to introduce a breaking change.
- gandle multiple TE on one line

** breaking changes ** : invalid  headers and position will now return
an error.
2024-08-06 23:47:01 +02:00
Benoit Chesneau
9a96e75808
Merge pull request #3253 from pajod/patch-rfc9110-section5.5
Refuse requests with invalid and dangerous CR/LF/NUL in header field value, as demanded by rfc9110 section 5.5
2024-08-06 22:25:12 +02:00
Benoit Chesneau
cefa314c62
Merge pull request #3257 from pajod/patch-no-docs-build-in-sdist
exclude generate html files from source tarballs (sdist)
2024-08-06 19:38:26 +02:00
Benoit Chesneau
5c0e1571dc
Merge pull request #3255 from pajod/patch-refuse-empty-request-target
refuse empty request-target in HTTP request
2024-08-06 18:26:47 +02:00
Benoit Chesneau
26c22af2e7
Merge pull request #2336 from elendiastarman/gevent-statsd-fix
Fixed two bugs related to gevent + gunicorn + statsd.
2024-08-06 18:08:18 +02:00
Benoit Chesneau
5e39f88622
Update tornadoapp.py 2024-08-06 17:50:16 +02:00
Benoit Chesneau
7f559886cb
Merge pull request #3258 from pajod/patch-empty-chunksize
gracefully handle chunked encoding missing size
2024-08-06 13:20:52 +02:00
Paul J. Dorn
cabc666277 chunked encoding: example invalid requests 2024-07-31 19:21:07 +02:00