Skip to content

fix: resolve recursion in adapters lazy import#33

Merged
psincraian merged 1 commit into
mainfrom
psincraian/fix-adapters-recursion
Jan 12, 2026
Merged

fix: resolve recursion in adapters lazy import#33
psincraian merged 1 commit into
mainfrom
psincraian/fix-adapters-recursion

Conversation

@psincraian

Copy link
Copy Markdown
Owner

Summary

Fixes a RecursionError that occurred when accessing klyne.adapters due to __getattr__ being called recursively during the relative import.

Changes

  • Changed from from . import adapters to importlib.import_module() to avoid _handle_fromlist recursion
  • Added module caching to prevent repeated imports

Testing

All 33 existing adapter and integration tests pass.

Use importlib.import_module instead of relative import to prevent
__getattr__ recursion during module initialization. Cache the loaded
module in globals to avoid repeated imports.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@psincraian psincraian merged commit 139c4e1 into main Jan 12, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant