Skip to content

Improve IronPython2 usability#3

Open
dimven-adsk wants to merge 166 commits into
reope/performance-basefrom
reope/performance-python-autocomplete
Open

Improve IronPython2 usability#3
dimven-adsk wants to merge 166 commits into
reope/performance-basefrom
reope/performance-python-autocomplete

Conversation

@dimven-adsk

@dimven-adsk dimven-adsk commented Oct 18, 2024

Copy link
Copy Markdown
Owner

Getting the __doc__ docstrings in the IronPython2 can be very slow (15-100ms) for each call. Every time you press . on a large namespace or type, Dynamo (and possibly its host) freezes. Whenever you use the Autodesk.Revit.DB. namespace for example, Revit freezes for multiple seconds, making editing iron python 2 scripts a horrible experience.

Luckily the experience is much better in IronPython3 and getting the docstrings is much faster.

Unfortunately, it CPython getting the docstrings has not been implemented yet.

This PR also implements lazy loading of the in the overarching class and delays the execution until the description is actually displayed and needed.


User Experience

This is what a user experiences currently (felt like 10 seconds to me):
Revit_NuFinWQq1R

And here's the now instantaneous experience with the proposed changes:
Revit_a3bCGADYqW

avidit and others added 30 commits August 13, 2024 10:30
…namoDS#15444)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
QilongTang and others added 30 commits November 18, 2024 06:59
…ynamoDS#15662)

Co-authored-by: Vlad Catalina <vlad.catalina@autodesk.com>
Co-authored-by: aparajit-pratap <aparajit.pratap@autodesk.com>
…ws (DynamoDS#15695)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bogdan Zavu <bogdan.zavu@autodesk.com>
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.