- Expand blender_downloader with better error handling and platform support
- Add test_main.py for main module tests
- Expand test coverage for introspect and generate_stubs
- Remove reportUnknownMemberType suppression from conformance config
- Exclude conformance/ from ruff linting (docs examples have E402)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
RNA properties with subtypes like TRANSLATION, XYZ, EULER, QUATERNION,
COLOR, MATRIX are now mapped to the corresponding mathutils types
(Vector, Euler, Quaternion, Color, Matrix) instead of list[float].
Also:
- Add gpu.types override for 5.1 (uniform_float accepts mathutils types)
- Fix README snippet to use assert for active_object None check
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Usage: uv run poe generate 4.5 --revision 1
Produces version 4.5.8.1 instead of 4.5.8.0.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Enable memoryview() tests in 5.1 conformance (Python 3.13 supports __buffer__)
- Add test_mathutils_euler.py for 5.1 conformance
- Show Python version in conformance check output
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Conformance tests now live in conformance/<version>/*.py and are checked
against the corresponding stubs in dist/<version>/. Auto-detection only
runs versions that have both stubs and test files.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Widen bare mathutils type params (Vector, Euler, etc.) to also accept
Sequence[float], matching Blender's mathutils_array_parse C behavior
- Fix getset_descriptor readonly detection by probing __set__ on the
descriptor instead of checking fset (which doesn't exist on C descriptors)
- Accept int | slice keys in __getitem__/__setitem__/__delitem__
- Accept Sequence[element_type] values in __setitem__ for slice assignment
- Add mathutils overrides for Matrix.Translation and Matrix.Scale
- Extend apply_overrides to support ClassName.method_name keys
- Add conformance test files from Blender docs examples
- Disable reportUnusedExpression in conformance checks
Remaining known conformance issues:
- draw_handler_add missing from SpaceView3D
- Vector not nominally Sequence[float] (buffer protocol, swizzle setters)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add conformance test framework with poe conformance task
- Add test files for mathutils, bpy, and gpu API patterns
- Fix self param leaking into signatures from C method_descriptors
- Synthesize __iter__ for classes with __getitem__ but no explicit __iter__
- Add __iter__ runtime probing to discover Iterator[element_type]
- Add :raises to directive lookahead to fix rtype parsing
- Add 5.1 override for Matrix.Translation to accept Vector
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add rna_type and bl_rna as readonly properties on bpy_struct (fixes fake-bpy-module#419)
- Discover non-RNA C classes in bpy.types like GeometrySet (fixes fake-bpy-module#436)
- Introspect bpy.ops operator wrapper with poll(), idname(), get_rna_type(), bl_options
- Handle builtin name shadowing (e.g. bpy.ops.object) with builtins. qualification
- Add poe publish task for building and publishing to PyPI
- Update project URLs to Gitea, improve generated README, add disclaimer
- Fix f-string lint warning and type annotation for introspect_class
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>