Skip to content

Commit 5945d14

Browse files
committed
update(changelog): bump to version 2.2.0
1 parent 2c557a1 commit 5945d14

File tree

1 file changed

+87
-0
lines changed

1 file changed

+87
-0
lines changed

Changelog.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,90 @@
1+
# 2.2.0
2+
3+
## 🚀 Major Features
4+
5+
### Python Debugging with VSCode
6+
7+
Full IDE debugging support for Python scripts in Revit:
8+
9+
- **VSCode Debugger Integration**
10+
- Set breakpoints directly in VSCode
11+
- Step through code execution (F10, F11)
12+
- Inspect variables and Revit API objects
13+
- Debug console for expression evaluation
14+
- Conditional breakpoints support
15+
- Visual connection status indicator (🔴/🟢)
16+
17+
![Python Debugger](https://github.com/trgiangv/RevitDevTool/wiki/images/RevitDevTool_PythonDebugger.gif)
18+
19+
- **Technical Implementation**
20+
- `debugpy` integration via PEP 723 automatic installation
21+
- Configurable debug port (default: 5678)
22+
- In-process debug adapter for seamless integration
23+
- Connection status monitoring in UI
24+
- Non-blocking - scripts run normally without debugger attached
25+
26+
- **New Components**
27+
- `PythonInitializer` - Manages Python runtime and debugpy listener
28+
- `IsDebuggerConnected` property - Real-time connection status
29+
- Debug port configuration in General Settings
30+
- Status indicator in Trace panel
31+
32+
**Documentation:**
33+
- [Python Debugging Guide](https://github.com/trgiangv/RevitDevTool/wiki/CodeExecute-PythonDebugging)
34+
- Demo script: `debugpy_script.py`
35+
36+
## 🎯 New Features
37+
38+
### PythonNet3 Interface Implementation Demo
39+
40+
- **Interface Implementation Workaround**
41+
- Added `selectionfilter_script.py` demonstrating `__namespace__` pattern
42+
- Shows how to implement .NET interfaces (e.g., `ISelectionFilter`) in PythonNet3
43+
- Documents runtime overhead trade-off for dynamic type checking
44+
45+
## 🔧 Improvements
46+
47+
### Python Execution
48+
49+
- **Streamlined Script Execution**
50+
- Refactored `PythonExecutor` for cleaner scope management
51+
- Improved script content execution flow
52+
- Better separation of concerns between initialization and execution
53+
- Enhanced error handling and cleanup
54+
55+
### Stub Generation
56+
57+
- **Enhanced Method Writing**
58+
- Improved generic type handling in stub generation
59+
- Better overload detection and signature writing
60+
- More accurate property accessor detection
61+
- Enhanced type mapping for complex .NET types
62+
63+
## 📚 Documentation
64+
65+
### Comprehensive Documentation Updates
66+
67+
- **README Enhancements**
68+
- Redesigned for better first impression
69+
- Visual-first approach with demos and context
70+
- Clear value proposition and target audience
71+
- Improved structure and navigation
72+
- Added comparison tables (vs pyRevit, Python ecosystems)
73+
74+
- **Wiki Updates**
75+
- New dedicated [Python Debugging](https://github.com/trgiangv/RevitDevTool/wiki/CodeExecute-PythonDebugging) page
76+
- Updated [Python Execution](https://github.com/trgiangv/RevitDevTool/wiki/CodeExecute-PythonExecution) with debugger info
77+
- Revised [vs pyRevit](https://github.com/trgiangv/RevitDevTool/wiki/CodeExecute-VsPyRevit) to focus on target audiences
78+
- Updated [Python Ecosystems](https://github.com/trgiangv/RevitDevTool/wiki/CodeExecute-PythonEcosystems) with objective analysis
79+
- Simplified [CodeExecute Overview](https://github.com/trgiangv/RevitDevTool/wiki/CodeExecute-Overview) to be true overview
80+
- Enhanced [Dashboard Example](https://github.com/trgiangv/RevitDevTool/wiki/Examples-Dashboard) with accurate architecture
81+
82+
- **Architecture Documentation**
83+
- Converted text diagrams to Mermaid charts for better readability
84+
- Updated PythonDemo architecture with debugging workflow
85+
- Improved cross-repo link handling (relative paths → URLs)
86+
- Removed architecture details from Wiki (moved to docs/)
87+
188
# 2.1.1
289

390
## 🎯 New Features

0 commit comments

Comments
 (0)