Coverage for archdocs/features/app_servers/const.py: 100%

33 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-18 22:03 +0000

1import dataclasses 

2import enum 

3import re as py_re 

4import typing 

5 

6 

7@typing.final 

8class ApplicationServerEnum(enum.Enum): 

9 granian_server = "granian" 

10 uvicorn_server = "uvicorn" 

11 gunicorn_server = "gunicorn" 

12 hypercorn_server = "hypercorn" 

13 daphne_server = "daphne" 

14 waitress_server = "waitress" 

15 uwsgi_server = "uwsgi" 

16 mod_wsgi_server = "mod_wsgi" 

17 bjoern_server = "bjoern" 

18 meinheld_server = "meinheld" 

19 cheroot_server = "cheroot" 

20 tornado_server = "tornado" 

21 gevent_server = "gevent" 

22 eventlet_server = "eventlet" 

23 werkzeug_server = "werkzeug" 

24 wsgiref_server = "wsgiref" 

25 

26 

27@typing.final 

28@dataclasses.dataclass(slots=True, kw_only=True, frozen=True) 

29class ServerSignature: 

30 server_name: str 

31 prefilter_literals: tuple[str, ...] 

32 compiled_pattern: py_re.Pattern[str] 

33 

34 

35@typing.final 

36@dataclasses.dataclass(slots=True, kw_only=True, frozen=True) 

37class ApplicationServerFeatures: 

38 servers_used: frozenset[str] = frozenset() 

39 workers_count: int = 0 

40 listen_port: int = 0 

41 tls_enabled: bool = False 

42 http2_enabled: bool = False