Major release with comprehensive analysis, CLI, and framework integration features.
๐ Whatโs New in v0.3.1
Major Features
1. Command-Line Interface (CLI)
Complete CLI for all CallFlow Tracer features without writing Python code.
10 Commands:
trace- Trace function callsflamegraph- Generate flamegraphprofile- Profile performancememory-leak- Detect memory leakscompare- Compare tracesexport- Export tracesinfo- Show trace informationquality- Analyze code qualitypredict- Predict performance issueschurn- Analyze code churn
Usage:
callflow-tracer trace script.py -o output.html
callflow-tracer quality . -o quality_report.html
callflow-tracer predict history.json -o predictions.html
2. Code Quality Analysis
Comprehensive code quality metrics and analysis.
Features:
- Cyclomatic complexity calculation
- Cognitive complexity measurement
- Maintainability index (0-100)
- Halstead metrics
- Technical debt scoring
- Quality trend tracking
- HTML/JSON reporting
Classes:
ComplexityAnalyzer- Analyze complexityMaintainabilityAnalyzer- Analyze maintainabilityTechnicalDebtAnalyzer- Identify debtQualityTrendAnalyzer- Track trends
Usage:
from callflow_tracer.code_quality import analyze_codebase
results = analyze_codebase("./src")
3. Predictive Analysis
Predict future performance issues and capacity limits.
Features:
- Performance degradation prediction
- Capacity limit forecasting
- Scalability analysis
- Resource usage forecasting
- Confidence scoring
- Risk assessment
Classes:
PerformancePredictor- Predict issuesCapacityPlanner- Plan capacityScalabilityAnalyzer- Analyze scalabilityResourceForecaster- Forecast resources
Usage:
from callflow_tracer.predictive_analysis import PerformancePredictor
predictor = PerformancePredictor("history.json")
predictions = predictor.predict_performance_issues(current_trace)
4. Code Churn Analysis
Analyze code changes and identify high-risk files.
Features:
- Git history analysis
- Hotspot identification
- Churn correlation with quality
- Bug correlation estimation
- Risk assessment
- Recommendations generation
Classes:
CodeChurnAnalyzer- Analyze churnChurnCorrelationAnalyzer- Correlate metrics
Usage:
from callflow_tracer.code_churn import generate_churn_report
report = generate_churn_report(".", days=90)
5. Framework Integrations
Automatic tracing for popular Python frameworks.
Supported Frameworks:
- Flask - Web framework
- FastAPI - Modern async web framework
- Django - Full-stack web framework
- SQLAlchemy - ORM
- psycopg2 - PostgreSQL driver
Usage:
from flask import Flask
from callflow_tracer.integrations.flask_integration import setup_flask_tracing
app = Flask(__name__)
setup_flask_tracing(app)
# All requests automatically traced
๐ Statistics
Code Metrics
- New Modules: 9
- New Classes: 20+
- New Functions: 50+
- New Lines of Code: 3,200+
Documentation
- New Guides: 6
- New Documentation Lines: 1,000+
- Total Documentation: 7,000+ lines
Module Breakdown
cli.py- 850 linescode_quality.py- 633 linespredictive_analysis.py- 627 linescode_churn.py- 382 linesintegrations/- 5 modules, ~12,000 bytes
๐ Documentation
New Guides
- NEW_FEATURES_INDEX.md - Overview and index
- CLI_GUIDE.md - CLI commands and usage
- CODE_QUALITY_GUIDE.md - Quality analysis
- PREDICTIVE_ANALYSIS_GUIDE.md - Predictions
- CODE_CHURN_GUIDE.md - Churn analysis
- INTEGRATIONS_GUIDE.md - Framework integrations
Updated Guides
- index.md - Updated with new features
- API_DOCUMENTATION.md - New API additions
๐ Getting Started
CLI Quick Start
# Install
pip install callflow-tracer
# Trace a script
callflow-tracer trace my_script.py -o trace.html
# Analyze code quality
callflow-tracer quality . -o quality.html
# Predict performance issues
callflow-tracer predict history.json -o predictions.html
# Analyze code churn
callflow-tracer churn . -o churn.html
Python API Quick Start
# Code Quality
from callflow_tracer.code_quality import analyze_codebase
results = analyze_codebase("./src")
# Predictive Analysis
from callflow_tracer.predictive_analysis import PerformancePredictor
predictor = PerformancePredictor("history.json")
predictions = predictor.predict_performance_issues(current_trace)
# Code Churn
from callflow_tracer.code_churn import generate_churn_report
report = generate_churn_report(".", days=90)
# Framework Integration
from callflow_tracer.integrations.flask_integration import setup_flask_tracing
setup_flask_tracing(app)
๐ Migration Guide
From v0.2.5 to v0.3.1
No breaking changes! All existing code continues to work.
New Capabilities:
- Use CLI for analysis without Python code
- Add quality analysis to your workflow
- Predict performance issues
- Identify high-risk files
- Integrate with web frameworks
Recommended Actions:
- Read NEW_FEATURES_INDEX.md
- Try new CLI commands
- Integrate with your framework
- Add quality analysis to CI/CD
๐ Feature Comparison
v0.2.5 vs v0.3.1
| Feature | v0.2.5 | v0.3.1 |
|---|---|---|
| Function Tracing | โ | โ |
| Call Graph Visualization | โ | โ |
| Flamegraph | โ | โ |
| Profiling | โ | โ |
| Memory Leak Detection | โ | โ |
| CLI | โ | โ |
| Code Quality | โ | โ |
| Predictive Analysis | โ | โ |
| Code Churn | โ | โ |
| Framework Integration | โ | โ |
๐ฏ Use Cases
1. Find Code Quality Issues
callflow-tracer quality ./src -o quality_report.html
2. Identify High-Risk Files
callflow-tracer churn . -o churn_report.html
3. Predict Performance Problems
callflow-tracer predict trace_history.json -o predictions.html
4. Trace Web Requests
from callflow_tracer.integrations.flask_integration import setup_flask_tracing
setup_flask_tracing(app)
5. Monitor Database Queries
from callflow_tracer.integrations.sqlalchemy_integration import setup_sqlalchemy_tracing
setup_sqlalchemy_tracing(engine)
๐ง Technical Details
Code Quality Metrics
- Cyclomatic Complexity: McCabe complexity (1-based)
- Cognitive Complexity: Human-oriented complexity
- Maintainability Index: 0-100 scale
- Halstead Metrics: Volume, difficulty, effort
- Technical Debt: 0-100 score
Predictive Analysis
- Linear Regression: For trend prediction
- Exponential Smoothing: For forecasting
- Confidence Scoring: Based on data consistency
- Risk Assessment: Multi-factor analysis
Code Churn
- Git Analysis: Commit history parsing
- Hotspot Scoring: Multi-factor calculation
- Correlation Analysis: Quality/performance correlation
- Risk Assessment: Comprehensive evaluation
Framework Integration
- Automatic Tracing: Zero-code integration
- Async Support: Full async/await support
- Database Monitoring: Query tracking
- Performance Metrics: Automatic collection
๐ฆ Dependencies
New Dependencies
- None! All features use existing dependencies
- Git (for churn analysis)
- Framework-specific packages (optional)
Optional Dependencies
flask- For Flask integrationfastapi- For FastAPI integrationdjango- For Django integrationsqlalchemy- For SQLAlchemy integrationpsycopg2- For psycopg2 integration
๐ Known Issues
None at this time. All features tested and working.
๐ฎ Future Roadmap
v0.4.0 (Planned)
- Machine learning-based anomaly detection
- Advanced visualization enhancements
- More framework integrations
- Cloud deployment support
v0.5.0 (Planned)
- Real-time monitoring dashboard
- Distributed tracing support
- Advanced reporting features
- API server
๐ Support
Documentation
- NEW_FEATURES_INDEX.md - Feature overview
- CLI_GUIDE.md - CLI reference
- CODE_QUALITY_GUIDE.md - Quality analysis
- PREDICTIVE_ANALYSIS_GUIDE.md - Predictions
- CODE_CHURN_GUIDE.md - Churn analysis
- INTEGRATIONS_GUIDE.md - Integrations
Community
- GitHub Issues: https://github.com/rajveer43/callflow-tracer/issues
- GitHub Discussions: https://github.com/rajveer43/callflow-tracer/discussions
- Email: rathodrajveer1311@gmail.com
๐ Changelog
v0.3.1 (2025-01-15)
Added
- โ Command-line interface (CLI) with 10 commands
- โ Code quality analysis module
- โ Predictive analysis module
- โ Code churn analysis module
- โ Framework integrations (Flask, FastAPI, Django, SQLAlchemy, psycopg2)
- โ 6 comprehensive documentation guides
- โ 1000+ lines of new documentation
Improved
- โ Enhanced documentation index
- โ Better module organization
- โ Comprehensive examples
Fixed
- โ All known issues from v0.2.5
๐ Learning Resources
For Beginners
- Start with NEW_FEATURES_INDEX.md
- Try CLI commands
- Read CLI_GUIDE.md
For Intermediate Users
- Read CODE_QUALITY_GUIDE.md
- Read CODE_CHURN_GUIDE.md
- Use Python API
For Advanced Users
- Read PREDICTIVE_ANALYSIS_GUIDE.md
- Read INTEGRATIONS_GUIDE.md
- Combine multiple analyses
๐ Next Steps
- Read the new documentation guides
- Try the CLI commands
- Explore the Python API
- Integrate with your framework
- Combine analyses for insights
Release Date: 2025-01-15 Version: 0.3.0 Status: Stable
Start with NEW_FEATURES_INDEX.md to explore all new features! ๐