Skip to content

Commit

Permalink
Merge branch 'encode:master' into fix/improve-cov-server
Browse files Browse the repository at this point in the history
  • Loading branch information
iudeen committed Oct 31, 2022
2 parents 0dfa766 + 26cace2 commit f039148
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 3 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test-suite.yml
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: "${{ matrix.os }}"
strategy:
matrix:
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11-dev"]
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
os: [windows-latest, ubuntu-latest, macos-latest]
steps:
- uses: "actions/checkout@v3"
Expand Down
9 changes: 9 additions & 0 deletions tests/test_config.py
Expand Up @@ -557,3 +557,12 @@ def test_config_use_subprocess(reload, workers, expected):
config = Config(app=asgi_app, reload=reload, workers=workers)
config.load()
assert config.use_subprocess == expected


def test_warn_when_using_reload_and_workers(caplog: pytest.LogCaptureFixture) -> None:
Config(app=asgi_app, reload=True, workers=2)
assert len(caplog.records) == 1
assert (
'"workers" flag is ignored when reloading is enabled.'
in caplog.records[0].message
)
3 changes: 3 additions & 0 deletions uvicorn/config.py
Expand Up @@ -372,6 +372,9 @@ def __init__(
else:
self.forwarded_allow_ips = forwarded_allow_ips

if self.reload and self.workers > 1:
logger.warning('"workers" flag is ignored when reloading is enabled.')

@property
def asgi_version(self) -> Literal["2.0", "3.0"]:
mapping: Dict[str, Literal["2.0", "3.0"]] = {
Expand Down
4 changes: 2 additions & 2 deletions uvicorn/workers.py
Expand Up @@ -2,7 +2,7 @@
import logging
import signal
import sys
from typing import Any
from typing import Any, Dict

from gunicorn.arbiter import Arbiter
from gunicorn.workers.base import Worker
Expand All @@ -17,7 +17,7 @@ class UvicornWorker(Worker):
rather than a WSGI callable.
"""

CONFIG_KWARGS = {"loop": "auto", "http": "auto"}
CONFIG_KWARGS: Dict[str, Any] = {"loop": "auto", "http": "auto"}

def __init__(self, *args: Any, **kwargs: Any) -> None:
super(UvicornWorker, self).__init__(*args, **kwargs)
Expand Down

0 comments on commit f039148

Please sign in to comment.