PyneCore v6.0.13 - 2x Performance Boost
PyneCore v6.0.13 - 2x Performance Boost
π Major Performance Improvements
β‘ 2x Speed Increase in Function Isolation
- Optimized function isolation caching - Significant performance improvement through enhanced caching strategy and reduced overhead
- Closure arguments transformer - New AST transformer that converts closure variables to function arguments, eliminating runtime closure overhead
- Streamlined function cache lookup - Faster cache key generation and lookup using tuples instead of strings
π― Enhanced Pine Script Compatibility
pine_range() Function Enhancement
- Full support for float and Series types in addition to integers
- Generator-based implementation for Pine Script-compatible for loops
- Supports float start values, end values, and step sizes
- Maintains backward compatibility with existing integer-based loops
- Includes floating-point precision handling and infinite loop prevention
β¨ New Features
Drawing Object Array Factory Functions
array.new_box()- Create arrays of box drawing objectsarray.new_line()- Create arrays of line drawing objectsarray.new_label()- Create arrays of label drawing objectsarray.new_linefill()- Create arrays of linefill drawing objects
Series Enhancements
- New
inline_series()function for direct series manipulation SeriesImplclass now exported for advanced use cases
π§ Technical Improvements
- Improved type safety in function isolation with proper type annotations
- Fixed potential None reference in script runner
- Updated AST test files to use tuples for better performance
- Enhanced NA type with additional utility methods
π Documentation
- Updated README with the new Pine Script to Python service at https://pynesys.io
Breaking Changes
None - All changes are backward compatible
Commit Summary
- fix: enhance pine_range for float/Series support and improve function isolation type safety
- feat: add closure arguments transformer for function isolation optimization
- feat(series): add inline_series function and export SeriesImpl
- feat(array): implement new_box, new_line, new_label, and new_linefill