Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
Uh oh!
There was an error while loading.
Please reload this page
.
python-cmd2
/
cmd2
Public
Notifications
You must be signed in to change notification settings
Fork
131
Star
686
Code
Issues
2
Pull requests
3
Discussions
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Discussions
Actions
Projects
Security and quality
Insights
Stage 2b: serialization, painter and renderer recovery
- #1757
#1757
Merged
tleonhardt
merged 12 commits into
reserved_row_toolbar
python-cmd2/cmd2:reserved_row_toolbar
from
stage2b-serialization-painter
python-cmd2/cmd2:stage2b-serialization-painter
Copy head branch name to clipboard
Sep 10, 2026
Conversation
Commits
12
(12)
Checks
Files changed
Merged
Stage 2b: serialization, painter and renderer recovery
#1757
tleonhardt
merged 12 commits into
reserved_row_toolbar
python-cmd2/cmd2:reserved_row_toolbar
from
stage2b-serialization-painter
python-cmd2/cmd2:stage2b-serialization-painter
Copy head branch name to clipboard
Commits
Commits on Sep 9, 2026
Stage 2b: add the terminal transaction lock and its wait contract
Show description for 05ac44e
tleonhardt
committed
05ac44e
View commit details
Copy full SHA for 05ac44e
Browse repository at this point
Stage 2b: record renderer output instead of emitting it during preparation
Show description for 283ad85
tleonhardt
committed
283ad85
View commit details
Copy full SHA for 283ad85
Browse repository at this point
Stage 2b: lay toolbar content out as display cells
Show description for d1ffe26
tleonhardt
committed
d1ffe26
View commit details
Copy full SHA for d1ffe26
Browse repository at this point
Stage 2b: paint the reserved band, writing only what changed
Show description for 1850173
tleonhardt
committed
1850173
View commit details
Copy full SHA for 1850173
Browse repository at this point
Stage 2b: prepare, commit and recover renderer frames
Show description for e2b0430
tleonhardt
committed
e2b0430
View commit details
Copy full SHA for e2b0430
Browse repository at this point
Prove serialization with a barrier instead of a sleep
Show description for fd1bdcd
tleonhardt
committed
fd1bdcd
View commit details
Copy full SHA for fd1bdcd
Browse repository at this point
Commits on Sep 10, 2026
Stage 2b review: close the gaps between a frame and the terminal it was for
Show description for 668294a
tleonhardt
committed
668294a
View commit details
Copy full SHA for 668294a
Browse repository at this point
Stage 2b review round 2: three more gaps between a frame and the terminal
Show description for 66dfd22
tleonhardt
committed
66dfd22
View commit details
Copy full SHA for 66dfd22
Browse repository at this point
Stage 2b review round 3: read recovery's origin and correlate replies under the lock
Show description for 7407dd7
tleonhardt
committed
7407dd7
View commit details
Copy full SHA for 7407dd7
Browse repository at this point
Stage 2b review round 4: take the terminal for cursor reports and recovery's last check
Show description for c8a8b32
tleonhardt
committed
c8a8b32
View commit details
Copy full SHA for c8a8b32
Browse repository at this point
Stage 2b review round 5: check abandoned emission in the cursor request too
Show description for 320b440
tleonhardt
committed
320b440
View commit details
Copy full SHA for 320b440
Browse repository at this point
Stage 2b review round 6: close the publication window, and stop trusting retirement
Show description for 0dc711e
tleonhardt
committed
0dc711e
View commit details
Copy full SHA for 0dc711e
Browse repository at this point
You can’t perform that action at this time.