Commit Graph

  • da29d9dd70 feat(companion): Set process title for forked companions set_proctile Tanmoy Sarkar 2026-06-17 12:35:09 +05:30
  • f189de0ec3
    Merge pull request #15 from tanmoysrt/companion_manager master Ankush Menat 2026-06-13 23:18:54 +05:30
  • 7f39839a8c fix(companion): Back off manager respawn and quiet expected exits Tanmoy Sarkar 2026-06-13 11:42:02 +05:30
  • 10a41a1cc5 fix(ci): Avoid pylint pointless-statement in signal validation Tanmoy Sarkar 2026-06-13 00:00:07 +05:30
  • db212bdc12 docs: Regenerate settings.rst for companion settings Tanmoy Sarkar 2026-06-12 23:57:24 +05:30
  • 78014d0cc4 fix(ci): Silence pylint exec-used on companion config loader Tanmoy Sarkar 2026-06-12 23:53:07 +05:30
  • 1d9b64c9bc docs(companion): Add human-readable companion processes guide Tanmoy Sarkar 2026-06-12 23:51:47 +05:30
  • 220bbfe150 fix(companion): Only reload companion manager when its config changed Tanmoy Sarkar 2026-06-12 23:44:32 +05:30
  • 910c6ada40 docs(companion): Document USR2 reexec limitation Tanmoy Sarkar 2026-06-12 23:30:48 +05:30
  • a0e4806962 refactor(companion): Cache configs for shutdown, drop dead setting Tanmoy Sarkar 2026-06-12 23:30:48 +05:30
  • 672c45a9c7 fix(companion): Harden manager and control against runtime errors Tanmoy Sarkar 2026-06-12 23:30:48 +05:30
  • 3b972fe310 fix(companion): Validate stop_signal and harden control dispatch Tanmoy Sarkar 2026-06-12 23:25:26 +05:30
  • 68ac2e4bb2 fix(companion): Cancel pending restart when stopping a companion Tanmoy Sarkar 2026-06-12 23:23:18 +05:30
  • 642387dd0e fix(companion): Apply dead config settings and validate specs Tanmoy Sarkar 2026-06-12 22:51:19 +05:30
  • 79c8e58429 fix(ci): Linting and code quality Tanmoy Sarkar 2026-06-10 00:52:49 +05:30
  • 9c2a6adcd5 feat(companion): Add documentation Tanmoy Sarkar 2026-06-09 23:38:02 +05:30
  • 88e8ef0f36 feat(companion): Add gunicorn-companion control CLI Tanmoy Sarkar 2026-06-09 23:22:41 +05:30
  • a90eba0c17 fix(companion): Correct manager pid and reset companion signals Tanmoy Sarkar 2026-06-09 23:18:54 +05:30
  • 1827667cb2 test(companion): Assert HTTP worker path is unchanged Tanmoy Sarkar 2026-06-09 23:08:29 +05:30
  • 1fc57b22a8 test(companion): Add transactional reread test Tanmoy Sarkar 2026-06-09 23:06:28 +05:30
  • 4d554c2fac test(companion): Add control command tests Tanmoy Sarkar 2026-06-09 23:05:41 +05:30
  • e15dd583b9 test(companion): Add state transition tests Tanmoy Sarkar 2026-06-09 23:04:40 +05:30
  • e780484d24 test(companion): Add config validation tests Tanmoy Sarkar 2026-06-09 23:03:43 +05:30
  • 465aff870d feat(companion): Add lifecycle logs for companion transitions Tanmoy Sarkar 2026-06-09 23:01:20 +05:30
  • 9c4d81726d feat(companion): Add parent-death cleanup for manager and companions Tanmoy Sarkar 2026-06-09 22:56:21 +05:30
  • f21d0310be feat(companion): Close manager-only fds in the companion child Tanmoy Sarkar 2026-06-09 22:52:17 +05:30
  • 31e08aac58 feat(companion): Close Gunicorn-only fds in the manager child Tanmoy Sarkar 2026-06-09 22:50:52 +05:30
  • 22431f24e6 feat(companion): Restart the manager on Gunicorn reload Tanmoy Sarkar 2026-06-09 22:32:59 +05:30
  • 073a0b2e7d feat(companion): Shut down the manager from the arbiter Tanmoy Sarkar 2026-06-09 22:30:58 +05:30
  • 457bc5a69a feat(companion): Spawn and reap the manager from the arbiter Tanmoy Sarkar 2026-06-09 22:24:53 +05:30
  • 9f3762d6b6 refactor(companion): Spell out abbreviated identifiers Tanmoy Sarkar 2026-06-09 22:03:13 +05:30
  • 5db503295c feat(companion): Implement transactional reread Tanmoy Sarkar 2026-06-09 21:55:51 +05:30
  • ef6e42ecc1 feat(companion): Implement status, start, stop, and restart commands Tanmoy Sarkar 2026-06-09 21:44:27 +05:30
  • 104bfcebdd feat(companion): Add Unix control socket and JSON command protocol Tanmoy Sarkar 2026-06-09 18:23:03 +05:30
  • c82df2ab94 feat(companion): Make manual_stop ownership explicit Tanmoy Sarkar 2026-06-09 18:17:44 +05:30
  • 8e0ca34277 feat(companion): Implement restart_process control command Tanmoy Sarkar 2026-06-09 18:10:40 +05:30
  • 8d9eb76e3d feat(companion): Implement stop_process control command Tanmoy Sarkar 2026-06-09 18:06:58 +05:30
  • 8c9aa962ae feat(companion): Implement start_process control command Tanmoy Sarkar 2026-06-09 17:59:35 +05:30
  • 87bc4cf70e feat(companion): Implement BACKOFF with fixed restart delay Tanmoy Sarkar 2026-06-09 17:56:22 +05:30
  • 84d69c46fd feat(companion): Promote companions from STARTING to RUNNING after startsecs Tanmoy Sarkar 2026-06-09 17:52:25 +05:30
  • bd8a91f656 feat(companion): Reap exited companion processes Tanmoy Sarkar 2026-06-09 17:49:27 +05:30
  • 2bf7e1b1fb feat(companion): Redirect companion stdout and stderr Tanmoy Sarkar 2026-06-09 17:30:18 +05:30
  • ea2748a209 feat(companion): Apply cwd and env in spawned companion child Tanmoy Sarkar 2026-06-09 17:06:42 +05:30
  • 5639d467f3 feat(companion): Add CompanionManager skeleton and single-companion spawn Tanmoy Sarkar 2026-06-09 16:57:18 +05:30
  • 78d67197b6 feat(companion): Add CompanionProcess runtime state and status helpers Tanmoy Sarkar 2026-06-09 16:21:46 +05:30
  • 2241dd4031 feat(companion): Add states and CompanionConfig with config hash Tanmoy Sarkar 2026-06-09 15:34:50 +05:30
  • 3f479157d7 feat(companion): Add companion process config settings Tanmoy Sarkar 2026-06-09 15:17:43 +05:30
  • 6fd0c2b236 feat: Add plan for companion process manager Tanmoy Sarkar 2026-06-09 14:25:20 +05:30
  • 6d09a2e912 Merge upstream gunicorn 26.0.0 into Frappe fork update-26.0.0 Ankush Menat 2026-05-30 12:28:45 +05:30
  • 54b59ca884
    fix: Avoid queue time in slow req prediction (#13) Ankush Menat 2026-05-29 10:47:16 +05:30
  • 20792589c7 fix: add basic logging for adaptive queueing fix_slow_req_pred Ankush Menat 2026-05-29 10:37:43 +05:30
  • 140c4d13eb fix: Avoid queue time in slow req prediction Ankush Menat 2026-05-29 09:07:00 +05:30
  • f61e5845f3
    Merge pull request #12 from frappe/multi_queue Ankush Menat 2026-05-28 17:07:53 +05:30
  • c20f3a3784 fix: Support configuring via envvar Ankush Menat 2026-05-28 16:37:55 +05:30
  • c24711b795 fix: Increase default slow request threshold Ankush Menat 2026-05-28 16:36:49 +05:30
  • 7dc4d184be refactor: Simpler implementation Ankush Menat 2026-05-28 16:33:54 +05:30
  • ec6af68013 fix: Remove hardcoded paths for slow prediction Ankush Menat 2026-05-28 16:01:02 +05:30
  • 2471050b3a refactor: Use only 2 pool variables. Ankush Menat 2026-05-28 15:54:33 +05:30
  • 48260712ea fix: Limit peek to 8KB Ankush Menat 2026-05-28 15:53:39 +05:30
  • ee9bf1e950 feat: Adaptive queueing of slow/fast requests Ankush Menat 2026-05-27 11:30:02 +05:30
  • 9bc5891b4b fix: drop body framing on HEAD/1xx/204/304 in WSGI responses Benoit Chesneau 2026-05-05 11:30:24 +02:00
  • 5d819cf360 release: 26.0.0 Benoit Chesneau 2026-05-05 08:34:34 +02:00
  • b45c70df10
    Merge pull request #3611 from zc-mattcen/docs-typo Benoit Chesneau 2026-05-05 01:23:24 +02:00
  • 99c8d48acf
    Merge pull request #3623 from benoitc/chore/drop-eventlet-add-h2-uvloop-test-deps Benoit Chesneau 2026-05-05 00:47:48 +02:00
  • 5a655af50f
    Merge pull request #3622 from benoitc/test/docker-port-and-ipv4-fixes Benoit Chesneau 2026-05-05 00:47:22 +02:00
  • 201df19a80 chore: remove eventlet worker; add h2 and uvloop to test deps Benoit Chesneau 2026-05-05 00:36:46 +02:00
  • f4ac8e1f1b test: pass action name to dirty client and stabilize after TTOU spam Benoit Chesneau 2026-05-04 10:32:44 +02:00
  • 54d38afddf test: unblock docker fixtures on macOS hosts Benoit Chesneau 2026-05-04 09:47:38 +02:00
  • 68843c8893
    Merge pull request #3621 from benoitc/fix/asgi-preserve-content-length-on-head-and-304 Benoit Chesneau 2026-05-03 22:56:24 +02:00
  • 31f2618f73
    Merge pull request #3620 from benoitc/fix/asgi-proxy-protocol-trust-and-parsing Benoit Chesneau 2026-05-03 22:56:03 +02:00
  • 41ec7527db fix: keep Content-Length on HEAD and 304 responses Benoit Chesneau 2026-05-03 22:32:28 +02:00
  • 112d5353c1 fix: enforce proxy_allow_ips and tighten PROXY parsing in ASGI Benoit Chesneau 2026-05-03 22:28:48 +02:00
  • 9902bc761c
    Merge pull request #3619 from benoitc/test/asgi-pipelined-smuggling-fast-parser Benoit Chesneau 2026-05-03 21:25:30 +02:00
  • 35c6a2abef test: parametrize smuggling regression across python and fast parsers Benoit Chesneau 2026-05-03 21:18:15 +02:00
  • 4e4a60ee77
    Merge pull request #3618 from benoitc/test/asgi-pipelined-smuggling-regression Benoit Chesneau 2026-05-03 21:15:14 +02:00
  • 0a736ea4a2 fix: keep _body_receiver alive across the keepalive smuggling gate Benoit Chesneau 2026-05-03 21:03:49 +02:00
  • 8d9d9030ff
    Merge pull request #3617 from benoitc/fix/asgi-bodyreceiver-closed-semantic-split Benoit Chesneau 2026-05-03 20:53:20 +02:00
  • fe3655b9d3 refactor: split BodyReceiver._closed into transport vs body-wait Benoit Chesneau 2026-05-03 20:42:55 +02:00
  • 02c53cfcfc
    Merge pull request #3616 from benoitc/fix/asgi-protocol-review-followups Benoit Chesneau 2026-05-03 20:38:57 +02:00
  • 0d35d2ae44 fix: warn once when ASGI app emits a body for a no-body response Benoit Chesneau 2026-05-03 20:25:23 +02:00
  • 2191832b8d fix: drop body framing on HEAD/204/304 even when framework set it Benoit Chesneau 2026-05-03 20:17:00 +02:00
  • 1cbe7d189b
    Merge pull request #3614 from benoitc/fix/parser-protocol-findings Benoit Chesneau 2026-05-03 20:12:20 +02:00
  • d6443e5a6e test: poll for control socket re-creation after SIGHUP Benoit Chesneau 2026-05-03 19:13:40 +02:00
  • 8e25cb2400 fix: tighten keepalive gate and scope finish_body byte cap Benoit Chesneau 2026-05-03 18:37:45 +02:00
  • 6f9ed30d23 lint: use dict literal and hoist mock import Benoit Chesneau 2026-05-03 18:23:45 +02:00
  • e90b1c2c1e fix: address six WSGI/ASGI parser and protocol findings Benoit Chesneau 2026-05-03 18:19:08 +02:00
  • 80983a8616
    Looks like this .md crept in as part of the MkDocs migration Matt Cengia 2026-04-30 10:02:29 +10:00
  • 4bcda32a78
    Merge pull request #3604 from benoitc/chore/drop-last-python-only-after-h1c-0.6.5 Benoit Chesneau 2026-04-20 10:35:08 +02:00
  • 98eac0b04e chore: require gunicorn_h1c >=0.6.5 and drop last python_only marker Benoit Chesneau 2026-04-20 07:29:47 +02:00
  • 3af35da8c7
    Merge pull request #3603 from benoitc/chore/drop-python-only-after-h1c-0.6.4 Benoit Chesneau 2026-04-20 07:18:52 +02:00
  • 377e8f81f9 test: skip fast parser on PyPy (gunicorn_h1c C extension is CPython-only) Benoit Chesneau 2026-04-19 23:48:18 +02:00
  • 408b1f0517 chore: require gunicorn_h1c >=0.6.4 and drop python_only markers Benoit Chesneau 2026-04-19 23:40:58 +02:00
  • a635b957c5
    Merge pull request #3602 from benoitc/test/rfc9112-cl-list-form-fixture Benoit Chesneau 2026-04-19 23:30:15 +02:00
  • 73e64364ca test: codify rejection of Content-Length list form (RFC 9112 section 6.3) Benoit Chesneau 2026-04-19 20:49:32 +02:00
  • 4da46edac0
    Merge pull request #3601 from benoitc/test/rfc9110-body-framing-fixtures Benoit Chesneau 2026-04-19 20:46:25 +02:00
  • 8450ae0d10 test: codify body-framing cases (RFC 9110 section 8.6 and RFC 9112 section 6.1) Benoit Chesneau 2026-04-19 20:32:23 +02:00
  • fad75c258d
    Merge pull request #3600 from benoitc/test/rfc9110-field-syntax-fixtures Benoit Chesneau 2026-04-19 17:47:57 +02:00
  • e223e302af test: codify field-syntax cases (RFC 9110 section 5.5 and 5.6.2) Benoit Chesneau 2026-04-19 14:02:58 +02:00
  • 5d0f1e9b15
    Merge pull request #3599 from benoitc/test/rfc9112-chunked-edge-cases Benoit Chesneau 2026-04-19 13:59:45 +02:00
  • 2391901b40 test: codify chunked size/extension edge cases (RFC 9112 section 7.1) Benoit Chesneau 2026-04-19 13:21:20 +02:00