Commit 273c05e
Implement lazy imports for numpy and beartype to improve startup time
This commit introduces lazy loading of heavy external dependencies:
- Move numpy imports to TYPE_CHECKING blocks and add lazy import wrappers
- Move beartype imports to TYPE_CHECKING blocks with lazy loading
- SQLAlchemy imports now use lazy wrapper functions
- Import time benchmark script enhanced to compare serde vs beartype performance
Benefits:
- Faster cold start times for applications not using these dependencies
- Reduced memory footprint for simple serialization use cases
- No performance impact when heavy dependencies are actually needed
- Maintains full backward compatibility
Benchmark results show serde performs 2.5x better than beartype on warm imports
while maintaining similar cold import performance (~52-55ms).
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>1 parent d0e3c1c commit 273c05e
7 files changed
Lines changed: 563 additions & 30 deletions
0 commit comments