Skip to content

Commit 217f187

Browse files
committed
chore: update stub gen file
1 parent 6c9a77d commit 217f187

10 files changed

Lines changed: 114 additions & 112 deletions

File tree

Cargo.lock

Lines changed: 87 additions & 72 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

oxapy/__init__.pyi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,7 @@ class FileStreaming(Response):
315315
)
316316
```
317317
"""
318-
def __new__(cls, path: builtins.str, buf_size: builtins.int = 8192, status: Status = Status.OK, content_type: builtins.str = 'application/octet-stream') -> FileStreaming:
318+
def __new__(cls, path: builtins.str, buf_size: builtins.int = 8192, status: Status = Status.OK, content_type: builtins.str = 'application/octet-stream') -> typing.Self:
319319
r"""
320320
Create a new FileStreaming response.
321321
@@ -655,7 +655,7 @@ class Redirect(Response):
655655
return Redirect("https://example.com")
656656
```
657657
"""
658-
def __new__(cls, location: builtins.str) -> Redirect:
658+
def __new__(cls, location: builtins.str) -> typing.Self:
659659
r"""
660660
Create a new HTTP redirect response.
661661

oxapy/exceptions/__init__.pyi

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class BadRequestError(ClientError):
2424
2525
This exception corresponds to HTTP status code 400.
2626
"""
27-
def __new__(cls, e: typing.Any) -> BadRequestError: ...
27+
def __new__(cls, e: typing.Any) -> typing.Self: ...
2828

2929
class ClientError(builtins.Exception):
3030
r"""
@@ -51,7 +51,7 @@ class ConflictError(ClientError):
5151
5252
This exception corresponds to HTTP status code 409.
5353
"""
54-
def __new__(cls, e: typing.Any) -> ConflictError: ...
54+
def __new__(cls, e: typing.Any) -> typing.Self: ...
5555

5656
@typing.final
5757
class ForbiddenError(ClientError):
@@ -64,7 +64,7 @@ class ForbiddenError(ClientError):
6464
6565
This exception corresponds to HTTP status code 403.
6666
"""
67-
def __new__(cls, e: typing.Any) -> ForbiddenError: ...
67+
def __new__(cls, e: typing.Any) -> typing.Self: ...
6868

6969
@typing.final
7070
class InternalError(builtins.Exception):
@@ -90,7 +90,7 @@ class NotFoundError(ClientError):
9090
9191
This exception corresponds to HTTP status code 404.
9292
"""
93-
def __new__(cls, e: typing.Any) -> NotFoundError: ...
93+
def __new__(cls, e: typing.Any) -> typing.Self: ...
9494

9595
@typing.final
9696
class UnauthorizedError(ClientError):
@@ -102,5 +102,5 @@ class UnauthorizedError(ClientError):
102102
103103
This exception corresponds to HTTP status code 401.
104104
"""
105-
def __new__(cls, e: typing.Any) -> UnauthorizedError: ...
105+
def __new__(cls, e: typing.Any) -> typing.Self: ...
106106

oxapy/jwt/__init__.pyi

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,14 +108,14 @@ class JwtDecodingError(JwtError):
108108
r"""
109109
Occurs when there's an error during JWT decoding/verification.
110110
"""
111-
def __new__(cls, e: typing.Any) -> JwtDecodingError: ...
111+
def __new__(cls, e: typing.Any) -> typing.Self: ...
112112

113113
@typing.final
114114
class JwtEncodingError(JwtError):
115115
r"""
116116
Occurs when there's an error during JWT encoding.
117117
"""
118-
def __new__(cls, e: typing.Any) -> JwtEncodingError: ...
118+
def __new__(cls, e: typing.Any) -> typing.Self: ...
119119

120120
class JwtError(builtins.Exception):
121121
r"""
@@ -128,12 +128,12 @@ class JwtInvalidAlgorithm(JwtError):
128128
r"""
129129
Occurs when the JWT algorithm is invalid or not supported.
130130
"""
131-
def __new__(cls, e: typing.Any) -> JwtInvalidAlgorithm: ...
131+
def __new__(cls, e: typing.Any) -> typing.Self: ...
132132

133133
@typing.final
134134
class JwtInvalidClaim(JwtError):
135135
r"""
136136
Occurs when a JWT claim is invalid (e.g., wrong format).
137137
"""
138-
def __new__(cls, e: typing.Any) -> JwtInvalidClaim: ...
138+
def __new__(cls, e: typing.Any) -> typing.Self: ...
139139

oxapy/serializer/__init__.pyi

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class BooleanField(Field):
2323
r"""
2424
Represents a boolean field.
2525
"""
26-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> BooleanField:
26+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
2727
r"""
2828
Create a new field of this type.
2929
@@ -44,7 +44,7 @@ class CharField(Field):
4444
r"""
4545
Represents a string field.
4646
"""
47-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> CharField:
47+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
4848
r"""
4949
Create a new field of this type.
5050
@@ -65,7 +65,7 @@ class DateField(Field):
6565
r"""
6666
Represents a date field (YYYY-MM-DD).
6767
"""
68-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'date', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> DateField:
68+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'date', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
6969
r"""
7070
Create a new field of this type.
7171
@@ -86,7 +86,7 @@ class DateTimeField(Field):
8686
r"""
8787
Represents a date-time field (RFC 3339).
8888
"""
89-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'date-time', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> DateTimeField:
89+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'date-time', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
9090
r"""
9191
Create a new field of this type.
9292
@@ -107,7 +107,7 @@ class EmailField(Field):
107107
r"""
108108
Represents an email field, validated by format.
109109
"""
110-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'email', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> EmailField:
110+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'email', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
111111
r"""
112112
Create a new field of this type.
113113
@@ -128,7 +128,7 @@ class EnumField(Field):
128128
r"""
129129
Represents an enumerated string field.
130130
"""
131-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> EnumField:
131+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
132132
r"""
133133
Create a new field of this type.
134134
@@ -229,7 +229,7 @@ class IntegerField(Field):
229229
r"""
230230
Represents an integer field in JSON schema.
231231
"""
232-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> IntegerField:
232+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
233233
r"""
234234
Create a new field of this type.
235235
@@ -250,7 +250,7 @@ class NumberField(Field):
250250
r"""
251251
Represents a numeric (float) field.
252252
"""
253-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> NumberField:
253+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = None, many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
254254
r"""
255255
Create a new field of this type.
256256
@@ -312,7 +312,7 @@ class Serializer(Field):
312312
print(serializer.data)
313313
```
314314
"""
315-
def __new__(cls, data: typing.Optional[builtins.str] = None, instance: typing.Optional[typing.Any] = None, required: builtins.bool = True, nullable: builtins.bool = False, many: builtins.bool = False, context: typing.Optional[dict] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> Serializer:
315+
def __new__(cls, data: typing.Optional[builtins.str] = None, instance: typing.Optional[typing.Any] = None, required: builtins.bool = True, nullable: builtins.bool = False, many: builtins.bool = False, context: typing.Optional[dict] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
316316
r"""
317317
Create a new `Serializer` instance.
318318
@@ -504,7 +504,7 @@ class UUIDField(Field):
504504
r"""
505505
Represents a UUID field.
506506
"""
507-
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'uuid', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> UUIDField:
507+
def __new__(cls, required: builtins.bool = True, nullable: builtins.bool = False, format: typing.Optional[builtins.str] = 'uuid', many: builtins.bool = False, length: typing.Optional[builtins.int] = None, min_length: typing.Optional[builtins.int] = None, max_length: typing.Optional[builtins.int] = None, pattern: typing.Optional[builtins.str] = None, enum_values: typing.Optional[typing.Sequence[builtins.str]] = None, read_only: builtins.bool = False, write_only: builtins.bool = False) -> typing.Self:
508508
r"""
509509
Create a new field of this type.
510510
@@ -530,5 +530,5 @@ class ValidationException(exceptions.ClientError):
530530
This includes missing required fields, invalid field values, type mismatches,
531531
and schema constraint violations.
532532
"""
533-
def __new__(cls, e: typing.Any) -> ValidationException: ...
533+
def __new__(cls, e: typing.Any) -> typing.Self: ...
534534

src/bin/stub_gen.rs

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,7 @@
1-
use std::process::Command;
2-
31
use pyo3_stub_gen::Result;
42

53
fn main() -> Result<()> {
64
let stub = oxapy::stub_info()?;
75
stub.generate()?;
8-
Command::new("find")
9-
.args([
10-
".",
11-
"-name",
12-
"*.pyi",
13-
"-type",
14-
"f",
15-
"-exec",
16-
"sed",
17-
"-E",
18-
"-i",
19-
"s/-> tuple\\[([A-Za-z0-9_]+), *[A-Za-z0-9_.]+]/-> \\1/",
20-
"{}",
21-
"+",
22-
])
23-
.output()?;
246
Ok(())
257
}

src/exceptions.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ macro_rules! extend_exception {
3333
#[pyo3::prelude::pymethods]
3434
impl $name {
3535
#[new]
36+
#[gen_stub(override_return_type(type_repr = "typing.Self"))]
3637
fn new(e: pyo3::Py<pyo3::PyAny>) -> ($name, $extend) {
3738
($name, $extend(e))
3839
}

src/response.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,7 @@ impl Redirect {
296296
/// return Redirect("/thank-you")
297297
/// ```
298298
#[new]
299+
#[gen_stub(override_return_type(type_repr = "typing.Self"))]
299300
fn new(location: String) -> (Redirect, Response) {
300301
let mut headers = HeaderMap::new();
301302
headers.insert(CONTENT_TYPE, "text/html".parse().unwrap());
@@ -434,6 +435,7 @@ impl FileStreaming {
434435
/// ```
435436
#[new]
436437
#[pyo3(signature=(path, buf_size=8192, status=Status::OK, content_type="application/octet-stream"))]
438+
#[gen_stub(override_return_type(type_repr = "typing.Self"))]
437439
fn new(
438440
path: &str,
439441
buf_size: usize,

src/serializer/fields.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ macro_rules! define_fields {
200200
read_only=false,
201201
write_only=false
202202
))]
203+
#[gen_stub(override_return_type(type_repr = "typing.Self"))]
203204
fn new(
204205
required: bool,
205206
nullable: bool,

src/serializer/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ impl Serializer {
7676
read_only= false,
7777
write_only = false,
7878
))]
79+
#[gen_stub(override_return_type(type_repr = "typing.Self"))]
7980
#[allow(clippy::too_many_arguments)]
8081
fn new(
8182
data: Option<String>,

0 commit comments

Comments
 (0)