1
1
from _typeshed import Incomplete , SupportsKeysAndGetItem
2
2
from collections .abc import Callable , Generator , Iterable , Iterator , Mapping
3
3
from contextlib import contextmanager
4
- from typing import Any , ClassVar
5
- from typing_extensions import TypeAlias
4
+ from typing import Any , ClassVar , overload
5
+ from typing_extensions import TypeAlias , deprecated
6
6
7
7
from referencing .jsonschema import Schema , SchemaRegistry
8
8
from referencing .typing import URI
@@ -11,6 +11,7 @@ from ._format import FormatChecker
11
11
from ._types import TypeChecker
12
12
from ._utils import Unset , URIDict
13
13
from .exceptions import ValidationError
14
+ from .protocols import Validator
14
15
15
16
# these type aliases do not exist at runtime, they're only defined here in the stub
16
17
_JsonObject : TypeAlias = Mapping [str , Any ]
@@ -40,15 +41,27 @@ class _Validator:
40
41
@classmethod
41
42
def check_schema (cls , schema : Schema , format_checker : FormatChecker | Unset = ...) -> None : ...
42
43
@property
44
+ @deprecated (
45
+ "Accessing resolver() is deprecated as of v4.18.0, "
46
+ "in favor of the https://github.com/python-jsonschema/referencing library."
47
+ )
43
48
def resolver (self ): ...
44
49
def evolve (self , ** changes ) -> _Validator : ...
45
- def iter_errors (self , instance , _schema : Schema | None = ...) -> Generator [Incomplete , None , None ]: ...
50
+ @overload
51
+ def iter_errors (self , instance ) -> Generator [Incomplete ]: ...
52
+ @overload
53
+ @deprecated ("Passing a schema to Validator.iter_errors is deprecated and will be removed in a future release." )
54
+ def iter_errors (self , instance , _schema : Schema | None ) -> Generator [Incomplete ]: ...
46
55
def descend (
47
56
self , instance , schema : Schema , path : Incomplete | None = ..., schema_path : Incomplete | None = ..., resolver = None
48
57
) -> Generator [Incomplete , None , None ]: ...
49
58
def validate (self , * args , ** kwargs ) -> None : ...
50
- def is_type (self , instance , type ): ...
51
- def is_valid (self , instance , _schema : Schema | None = ...) -> bool : ...
59
+ def is_type (self , instance , type ) -> bool : ...
60
+ @overload
61
+ def is_valid (self , instance ) -> bool : ...
62
+ @overload
63
+ @deprecated ("Passing a schema to Validator.is_valid is deprecated and will be removed in a future release." )
64
+ def is_valid (self , instance , _schema : Schema | None ) -> bool : ...
52
65
53
66
def validates (version : str ) -> Callable [..., Incomplete ]: ...
54
67
def create (
@@ -94,15 +107,16 @@ class RefResolver:
94
107
@property
95
108
def resolution_scope (self ): ...
96
109
@property
97
- def base_uri (self ): ...
110
+ def base_uri (self ) -> str : ...
98
111
@contextmanager
112
+ @deprecated ("jsonschema.RefResolver.in_scope is deprecated and will be removed in a future release." )
99
113
def in_scope (self , scope ) -> Generator [None ]: ...
100
114
@contextmanager
101
- def resolving (self , ref ) -> Generator [Incomplete , None , None ]: ...
102
- def resolve (self , ref ) : ...
103
- def resolve_from_url (self , url ): ...
104
- def resolve_fragment (self , document , fragment ): ...
105
- def resolve_remote (self , uri ): ...
115
+ def resolving (self , ref : str ) -> Generator [Incomplete ]: ...
116
+ def resolve (self , ref : str ) -> tuple [ str , Incomplete ] : ...
117
+ def resolve_from_url (self , url : str ): ...
118
+ def resolve_fragment (self , document , fragment : str ): ...
119
+ def resolve_remote (self , uri : str ): ...
106
120
107
121
def validate (instance : object , schema : Schema , cls : type [_Validator ] | None = None , * args : Any , ** kwargs : Any ) -> None : ...
108
- def validator_for (schema : Schema | bool , default = ...): ...
122
+ def validator_for (schema : Schema | bool , default : type [ Validator ] | Unset = ...) -> type [ Validator ] : ...
0 commit comments