Clean up dead code, fix type errors, and add publish workflow
Remove unused _append_ops_call_method, fix _property_data_from_member call signature, replace sys.version_info guard with hasattr check for __buffer__ protocol, fix implicit string concatenations, add msgbus overrides for 4.0-4.4, add conformance tests, and add publish script. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -63,7 +63,7 @@ gpu.state.blend_set('ALPHA')
|
||||
- **Typed `Context.copy()`** — returns a `ContextDict` TypedDict instead of `dict[str, object]`, so unpacking into `context.temp_override(**ctx)` type-checks correctly
|
||||
- **Dynamic array types** — `Image.pixels` typed as `bpy_prop_array[float]` (not `list[float]` or `float`)
|
||||
- **Zero `Any` usage** — precise types throughout, no `typing.Any` fallbacks
|
||||
- **basedpyright strict mode** — 0 errors on generated stubs (4.1+)
|
||||
- **[basedpyright](https://docs.basedpyright.com) `all` mode** — 0 errors on generated stubs (4.0+), validated with `typeCheckingMode: "all"` (the strictest setting)
|
||||
|
||||
## How It Works
|
||||
|
||||
@@ -91,7 +91,7 @@ The introspection data is then passed through a stub generator that handles type
|
||||
| Constructor `__init__` | Yes (mathutils, gpu, etc.) | No |
|
||||
| Literal enum types | Yes | Yes (via stub_internal) |
|
||||
| Context members | ~100 typed | ~100 typed |
|
||||
| basedpyright strict | 0 errors (4.1+) | Not tested |
|
||||
| basedpyright `all` mode | 0 errors (4.0+) | Not tested |
|
||||
| Docstrings | Yes | Yes |
|
||||
|
||||
### vs [bpystubgen](https://github.com/mysticfall/bpystubgen)
|
||||
|
||||
Reference in New Issue
Block a user