{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":390510,"defaultBranch":"master","name":"gunicorn","ownerLogin":"benoitc","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2009-11-30T18:18:08.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/14498?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1713308425.0","currentOid":""},"activityList":{"items":[{"before":"f63d59e4d73a8ee28748d2c700fb81c8780bc419","after":"5b68c17b170c7b021a7a982a06c08e3898a5a640","ref":"refs/heads/master","pushedAt":"2024-04-16T23:13:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"fix license year","shortMessageHtmlLink":"fix license year"}},{"before":"bfec3571171e16bb49a82b3afe36813dd1334a77","after":"40c1a77ec809605e99ecf9f920802df36c590da8","ref":"refs/heads/gh-pages","pushedAt":"2024-04-16T23:12:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"Update documentation","shortMessageHtmlLink":"Update documentation"}},{"before":"4ac81e0a1037ba5b570323be7430e09caa233e38","after":"f63d59e4d73a8ee28748d2c700fb81c8780bc419","ref":"refs/heads/master","pushedAt":"2024-04-16T23:00:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"bump to 22.0","shortMessageHtmlLink":"bump to 22.0"}},{"before":"401cecfaed85d79236c7a9a1f7d8946b01c466fc","after":"4ac81e0a1037ba5b570323be7430e09caa233e38","ref":"refs/heads/master","pushedAt":"2024-04-16T22:34:39.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"Merge pull request #3175 from e-kwsm/typo\n\nchore: fix typos","shortMessageHtmlLink":"Merge pull request #3175 from e-kwsm/typo"}},{"before":"88fc4a43152039c28096c8ba3eeadb3fbaa4aff9","after":"401cecfaed85d79236c7a9a1f7d8946b01c466fc","ref":"refs/heads/master","pushedAt":"2024-04-16T22:26:51.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"Merge pull request #3179 from dhdaines/exclude-eventlet-0360\n\nfix(deps): exclude eventlet 0.36.0 to avoid WebSocket bug","shortMessageHtmlLink":"Merge pull request #3179 from dhdaines/exclude-eventlet-0360"}},{"before":"660fd8d850f9424d5adcd50065e6060832a200d4","after":"88fc4a43152039c28096c8ba3eeadb3fbaa4aff9","ref":"refs/heads/master","pushedAt":"2024-01-05T08:24:01.000Z","pushType":"pr_merge","commitsCount":13,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"Merge pull request #3131 from pajod/patch-py12-rebased\n\nCI: add CPython 3.12 and PyPy3.10, stop promising untested versions","shortMessageHtmlLink":"Merge pull request #3131 from pajod/patch-py12-rebased"}},{"before":"f9e61b11c7307d8f533d43b894f31148102b8f07","after":"660fd8d850f9424d5adcd50065e6060832a200d4","ref":"refs/heads/master","pushedAt":"2023-12-29T03:57:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Fix references to non-existent 20.2 version in configuration settings\n\nClose #3043.","shortMessageHtmlLink":"Fix references to non-existent 20.2 version in configuration settings"}},{"before":"b5d78e8bc7439d141dd4339497003965e9cdfcf7","after":"f9e61b11c7307d8f533d43b894f31148102b8f07","ref":"refs/heads/master","pushedAt":"2023-12-29T02:54:52.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Merge pull request #3108 from pajod/patch-githubactions\n\nrestore, and from now on CI-test for entry point","shortMessageHtmlLink":"Merge pull request #3108 from pajod/patch-githubactions"}},{"before":"bc905859a604a73dd2626b07cf12621f3ef36716","after":null,"ref":"refs/heads/fix-gthread","pushedAt":"2023-12-28T09:44:49.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"}},{"before":"bb6c318e8f34721a6ccc3269c8f1bfb03708b75a","after":"a24ff07d3cf899b3fd05287d34ba145e85cbbd80","ref":"refs/heads/unwrapped-sockets","pushedAt":"2023-12-28T09:10:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Use plain socket objects instead of wrapper classes\n\nRefactor socket creation to remove the socket wrapper classes so that\nthese objects have less surprising behavior when used in worker hooks,\nworker classes, and custom applications.\n\nClose #3013.","shortMessageHtmlLink":"Use plain socket objects instead of wrapper classes"}},{"before":"e4a23316f8b8ff833258a738481098f42cdcc366","after":"bb6c318e8f34721a6ccc3269c8f1bfb03708b75a","ref":"refs/heads/unwrapped-sockets","pushedAt":"2023-12-28T09:04:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Use plain socket objects instead of wrapper classes\n\nRefactor socket creation to remove the socket wrapper classes so that\nthese objects have less surprising behavior when used in worker hooks,\nworker classes, and custom applications.\n\nClose #3013.","shortMessageHtmlLink":"Use plain socket objects instead of wrapper classes"}},{"before":null,"after":"e4a23316f8b8ff833258a738481098f42cdcc366","ref":"refs/heads/unwrapped-sockets","pushedAt":"2023-12-28T09:01:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Use plain socket objects instead of wrapper classes\n\nRefactor socket creation to remove the socket wrapper classes so that\nthese objects have less surprising behavior when used in worker hooks,\nworker classes, and custom applications.\n\nClose #3013.","shortMessageHtmlLink":"Use plain socket objects instead of wrapper classes"}},{"before":"1ca598deeed2517b4336b36fcebdd0ead1b06038","after":"a73b073d175efec27eb14a24cef00ef3e454b0fb","ref":"refs/heads/fix/upgrade-forces-close","pushedAt":"2023-12-28T02:30:50.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Force connection close after protocol upgrade\n\nA new protocol, such as WebSockets or HTTP/2, may manage the framing of\nmultiple messages or requests of that protocol over a single connection,\nbut the connection should close once the WSGI callable returns.\n\n- Close connections after completion of any upgraded response.\n\n- Close connections after a response with status code less than 200. Any\n such response should be only for a protocol upgrade since applications\n never see any `Expect` header.\n\n- Ensure that the `status_code` member always exists on instances of the\n `Response` class (close #1210).","shortMessageHtmlLink":"Force connection close after protocol upgrade"}},{"before":"8dcc0fd3583db290eda4b8e4a2577c611637798a","after":"1ca598deeed2517b4336b36fcebdd0ead1b06038","ref":"refs/heads/fix/upgrade-forces-close","pushedAt":"2023-12-28T02:27:02.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Force connection close after protocol upgrade\n\nA new protocol, such as WebSockets or HTTP/2, may manage the framing of\nmultiple messages or requests of that protocol over a single connection,\nbut the connection should close once the WSGI callable returns.\n\n- Close connections after completion of any upgraded response.\n\n- Close connections after a response with status code less than 200. Any\n such response should be only for a protocol upgrade since applications\n never see any `Expect` header.\n\n- Ensure that the `status_code` member always exists on instances of the\n `Response` class (close #1210).","shortMessageHtmlLink":"Force connection close after protocol upgrade"}},{"before":"4991ed9d2869bc6c95bbf13124bbee420cbf931e","after":"8dcc0fd3583db290eda4b8e4a2577c611637798a","ref":"refs/heads/fix/upgrade-forces-close","pushedAt":"2023-12-28T02:26:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Force connection close after protocol upgrade\n\nA new protocol, such as WebSockets or HTTP/2, may manage the framing of\nmultiple messages or requests of that protocol over a single connection.\nOnce the WSGI callable returns, the connection should close.\n\n- Close connections after completion of any upgraded response.\n\n- Close connections after a response with status code less than 200. Any\n such response should be only for a protocol upgrade since applications\n never see any `Expect` header.\n\n- Ensure that the `status_code` member always exists on instances of the\n `Response` class (close #1210).","shortMessageHtmlLink":"Force connection close after protocol upgrade"}},{"before":"70780caa8b59faf141aaefd69566e669eabf2dbd","after":"4991ed9d2869bc6c95bbf13124bbee420cbf931e","ref":"refs/heads/fix/upgrade-forces-close","pushedAt":"2023-12-28T02:25:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Force connection close after protocol upgrade\n\nA new protocol, such as WebSockets or HTTP/2, may manage the framing of\nmultiple messages or requests of that protocol over a single connection.\n\n- Close connections after completion of any upgraded response.\n\n- Close connections after a response with status code less than 200. Any\n such response should be only for a protocol upgrade since applications\n never see any `Expect` header.\n\n- Ensure that the `status_code` member always exists on instances of the\n `Response` class (close #1210).","shortMessageHtmlLink":"Force connection close after protocol upgrade"}},{"before":null,"after":"70780caa8b59faf141aaefd69566e669eabf2dbd","ref":"refs/heads/fix/upgrade-forces-close","pushedAt":"2023-12-28T02:09:44.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Force connection close after protocol upgrade\n\nA new protocol, such as WebSockets or HTTP/2, may manage the framing of\nmultiple messages or requests of that protocol over a single connection.\nWhen the WSGI handler returns, close the socket.","shortMessageHtmlLink":"Force connection close after protocol upgrade"}},{"before":"bd734c573abcffd5fe9b918e1e9c29b3e1b66705","after":"b5d78e8bc7439d141dd4339497003965e9cdfcf7","ref":"refs/heads/master","pushedAt":"2023-12-28T00:19:15.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Merge pull request #1967 from skytoup/master\n\nFix #1965: About gunicorn [CRITICAL] Worker Timeout","shortMessageHtmlLink":"Merge pull request #1967 from skytoup/master"}},{"before":"70007ff2b2deae884cb636551f78189ed36a96b8","after":"7fbeb07b0431a4305b22c013520a829144701e1c","ref":"refs/heads/feature/1846/reload-extra-files-nargs","pushedAt":"2023-12-28T00:00:37.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"change --reload-extra-file option to get multiple files at once\n\nCo-authored-by: Randall Leeds ","shortMessageHtmlLink":"change --reload-extra-file option to get multiple files at once"}},{"before":"9180f55664a4e6b2442b339ef330c98c29e15c0e","after":"70007ff2b2deae884cb636551f78189ed36a96b8","ref":"refs/heads/feature/1846/reload-extra-files-nargs","pushedAt":"2023-12-27T23:58:50.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"change --reload-extra-file option to get multiple files at once\n\nCo-authored-by: Randall Leeds ","shortMessageHtmlLink":"change --reload-extra-file option to get multiple files at once"}},{"before":null,"after":"9180f55664a4e6b2442b339ef330c98c29e15c0e","ref":"refs/heads/feature/1846/reload-extra-files-nargs","pushedAt":"2023-12-27T23:56:56.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"change --reload-extra-file option to get multiple files at once\n\nCo-authored-by: Randall Leeds ","shortMessageHtmlLink":"change --reload-extra-file option to get multiple files at once"}},{"before":"de337267f294d5bab3607d8e209d1d240d62bbc7","after":"a526c008a7aeb3257c4ea7863faf4528edae4556","ref":"refs/heads/safe-reaping","pushedAt":"2023-12-27T22:59:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Reap workers in the main loop\n\nHandle SIGCHLD like every other signal, waking up the arbiter and\nhandling the signal in the main loop rather than in the signal handler.\nTake special care to reinstall the signal handler since Python may not.\n\nClean up workers and call the worker_exit hook in only one place. When\nkilling a worker, do not clean it up. The arbiter will now clean up the\nworker and invoke the hook when it reaps the worker.\n\nEnsure that all workers have their temporary watchdog files closed and\nthat the arbiter does not exit or log about other child processes dying.\n\nWith reaping handled in the main loop and kill_worker delegating\nresponsibility for cleanup to the reaping loop, iterate over the workers\ndictionary everywhere else without concern for concurrent modification.","shortMessageHtmlLink":"Reap workers in the main loop"}},{"before":"7e279d23692aa70154aa0cd5d55529c082fe6796","after":"de337267f294d5bab3607d8e209d1d240d62bbc7","ref":"refs/heads/safe-reaping","pushedAt":"2023-12-27T22:59:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Reap workers in the main loop\n\nHandle SIGCHLD like every other signal, waking up the arbiter and\nhandling the signal in the main loop rather than in the signal handler.\nTake special care to reinstall the signal handler since Python may not.\n\nClean up workers and call the worker_exit hook in only one place. When\nkilling a worker, do not clean it up. The arbiter will now clean up the\nworker and invoke the hook when it reaps the worker.\n\nEnsure that all workers have their temporary watchdog files closed and\nthat the arbiter does not exit or log about other child processes dying.\n\nWith reaping handled in the main loop and kill_worker delegating\nresponsibility for cleanup to the reaping loop, iterate over the workers\ndictionary everywhere else without concern for concurrent modification.","shortMessageHtmlLink":"Reap workers in the main loop"}},{"before":"4387671163328d3c92ca0ef7a45b6697ee669b3c","after":"7e279d23692aa70154aa0cd5d55529c082fe6796","ref":"refs/heads/safe-reaping","pushedAt":"2023-12-27T22:36:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Reap workers in the main loop\n\nHandle SIGCHLD like every other signal, waking up the arbiter and\nhandling the signal in the main loop rather than in the signal handler.\n\nTake special care to reinstall the signal handler in case Python avoided\ndoing so to prevent infinite recursion.\n\nClean up workers and call the worker_exit hook in only one place. When\nkilling a worker, do not clean it up. The arbiter will now clean up the\nworker and invoke the hook when it reaps the worker.\n\nWith reaping handled in the main loop and kill_worker delegating\nresponsibility for cleanup to the reaping loop, iterate over the workers\ndictionary everywhere else without concern for concurrent modification.","shortMessageHtmlLink":"Reap workers in the main loop"}},{"before":"9347afe3714d6e141c2026565e84f16421eda746","after":"4387671163328d3c92ca0ef7a45b6697ee669b3c","ref":"refs/heads/safe-reaping","pushedAt":"2023-12-27T22:36:27.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Reap workers in the main loop\n\nHandle SIGCHLD like every other signal, waking up the arbiter and\nhandling the signal in the main loop rather than in the signal handler.\n\nTake special care to reinstall the signal handler in case Python avoided\ndoing so to prevent infinite recursion.\n\nClean up workers and call the worker_exit hook in only one place. When\nkilling a worker, do not clean it up. The arbiter will now clean up the\nworker and invoke the hook when it reaps the worker.\n\nWith reaping handled in the main loop and kill_worker delegating\nresponsibility for cleanup to the reaping loop, iterate over the workers\ndictionary everywhere else without concern for concurrent modification.","shortMessageHtmlLink":"Reap workers in the main loop"}},{"before":"8ef2e40f42f2021b69c2f242c1296060408fe23a","after":"9347afe3714d6e141c2026565e84f16421eda746","ref":"refs/heads/safe-reaping","pushedAt":"2023-12-27T22:32:01.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Reap workers in the main loop\n\nHandle SIGCHLD like every other signal, waking up the arbiter and\nhandling the signal in the main loop rather than in the signal handler.\n\nTake special care to reinstall the signal handler in case Python avoided\ndoing so to prevent infinite recursion.\n\nClean up workers and call the worker_exit hook in only one place. When\nkilling a worker, do not clean it up. The arbiter will now clean up the\nworker and invoke the hook when it reaps the worker.\n\nWith reaping handled in the main loop and kill_worker delegating\nresponsibility for cleanup to the reaping loop, iterate over the workers\ndictionary everywhere else without concern for concurrent modification.","shortMessageHtmlLink":"Reap workers in the main loop"}},{"before":"0b4c93952723d917d50de09d9c8e43e000a35ccd","after":"bd734c573abcffd5fe9b918e1e9c29b3e1b66705","ref":"refs/heads/master","pushedAt":"2023-12-25T22:08:28.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"tilgovi","name":"Randall Leeds","path":"/tilgovi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20818?s=80&v=4"},"commit":{"message":"Merge pull request #3123 from pajod/patch-1\n\nTypo and email address in Security.md","shortMessageHtmlLink":"Merge pull request #3123 from pajod/patch-1"}},{"before":"26aba9ed9d55f6465fd2271169b71bc119ea8186","after":"0b4c93952723d917d50de09d9c8e43e000a35ccd","ref":"refs/heads/master","pushedAt":"2023-12-25T17:26:20.000Z","pushType":"pr_merge","commitsCount":17,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"Merge pull request #3113 from pajod/patch-security\n\nFix numerous message parsing issues (v2)","shortMessageHtmlLink":"Merge pull request #3113 from pajod/patch-security"}},{"before":"40232284934c32939c0e4e78caad1987c3773e08","after":"26aba9ed9d55f6465fd2271169b71bc119ea8186","ref":"refs/heads/master","pushedAt":"2023-12-07T14:39:01.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"Merge pull request #3102 from deronnax/pyproject-toml-fix-license\n\npyproject.toml: fix embedding of the LICENSE file in the package","shortMessageHtmlLink":"Merge pull request #3102 from deronnax/pyproject-toml-fix-license"}},{"before":"ca9162d9cd0f2403a4b65a54ddb996eb855e8b58","after":"40232284934c32939c0e4e78caad1987c3773e08","ref":"refs/heads/master","pushedAt":"2023-12-07T14:37:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"benoitc","name":"Benoit Chesneau","path":"/benoitc","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14498?s=80&v=4"},"commit":{"message":"let's exception not bubble\nensure we can catch correctly exceptions based on BaseException.\n\nNote: patch was origninally proposed by the pr #2923, but original\nauthor closed it.\n\nFix #2923","shortMessageHtmlLink":"let's exception not bubble"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEMoPFvwA","startCursor":null,"endCursor":null}},"title":"Activity ยท benoitc/gunicorn"}