fix: move ssl import out of TYPE_CHECKING to fix NameError in CertParamType
The ssl module was only imported under TYPE_CHECKING but was referenced in the runtime class signature of CertParamType (click.ParamType[..., ssl.SSLContext]). With --future annotations, this should work, but click.ParamType is not subscriptable and the type argument triggers eager evaluation. Fix: import ssl unconditionally and remove the subscript from ParamType since it is not a generic type. Tests: 491 passed
This commit is contained in:
parent
954f5684e4
commit
b6ca6c99f4
1 changed files with 3 additions and 3 deletions
|
|
@ -24,9 +24,9 @@ from .globals import current_app
|
||||||
from .helpers import get_debug_flag
|
from .helpers import get_debug_flag
|
||||||
from .helpers import get_load_dotenv
|
from .helpers import get_load_dotenv
|
||||||
|
|
||||||
if t.TYPE_CHECKING:
|
import ssl
|
||||||
import ssl
|
|
||||||
|
|
||||||
|
if t.TYPE_CHECKING:
|
||||||
from _typeshed.wsgi import StartResponse
|
from _typeshed.wsgi import StartResponse
|
||||||
from _typeshed.wsgi import WSGIApplication
|
from _typeshed.wsgi import WSGIApplication
|
||||||
from _typeshed.wsgi import WSGIEnvironment
|
from _typeshed.wsgi import WSGIEnvironment
|
||||||
|
|
@ -777,7 +777,7 @@ def show_server_banner(debug: bool, app_import_path: str | None) -> None:
|
||||||
click.echo(f" * Debug mode: {'on' if debug else 'off'}")
|
click.echo(f" * Debug mode: {'on' if debug else 'off'}")
|
||||||
|
|
||||||
|
|
||||||
class CertParamType(click.ParamType[str | os.PathLike[str] | ssl.SSLContext]):
|
class CertParamType(click.ParamType): # type: ignore[type-arg]
|
||||||
"""Click option type for the ``--cert`` option. Allows either an
|
"""Click option type for the ``--cert`` option. Allows either an
|
||||||
existing file, the string ``'adhoc'``, or an import for a
|
existing file, the string ``'adhoc'``, or an import for a
|
||||||
:class:`~ssl.SSLContext` object.
|
:class:`~ssl.SSLContext` object.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue