Skip to content

Prepare Icod.DCurses 2.5.2 for Terminal 1.29.2 - #40

Merged
uniblab merged 8 commits into
mainfrom
fix/2.5.2-terminal-console-interop
Oct 16, 2026
Merged

uniblab merged 8 commits into
mainfrom
fix/2.5.2-terminal-console-interop

Conversation

@uniblab

@uniblab uniblab commented Oct 16, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • rebind Icod.DCurses 2.5.2 to the published Icod.Terminal 1.29.2 Windows console fixes
  • preserve the complete 2.5 public API, AssemblyVersion 2.0.0.0, C# 13, and .NET 8/9/10 targets
  • publish synchronized package metadata, dependency validation, concise sample guidance, changelog history, roadmap status, and curated 2.5.2 release notes
  • make the editor and interaction samples explicitly acquire the rich-input reporting they demonstrate, including button-motion reporting for pointer drags
  • move all 23 development roadmaps from the repository root into docs/ and rebase their links and path references

Motivation

Icod.Terminal 1.29.2 fixes the system-console boundary beneath DCurses: UTF-8 box-drawing output retains terminal-cell geometry, and Windows Raw/CBreak sessions own mouse delivery while suppressing Quick Edit and restoring exact prior console state. DCurses already delegates these responsibilities to Terminal, so this is a dependency and release-qualification patch rather than a DCurses runtime rewrite.

Terminal console ownership does not automatically enable optional terminal reports. The live samples must still acquire reversible keyboard-event, bracketed-paste, focus, or mouse protocol leases. Dragging specifically requires ButtonMotion, not the press/release-only ButtonEvents mode.

The roadmap relocation keeps the repository root focused on the package, build, license, README, and changelog while preserving the complete planning and qualification history under the existing documentation tree.

Implementation

  • advance package and assembly file version identity from 2.5.1 to 2.5.2 while retaining AssemblyVersion 2.0.0.0
  • update the sole direct runtime dependency and test dependency to Icod.Terminal 1.29.2
  • update the exact package verifier, package-smoke description, sample dependency guidance, changelog, and active roadmap
  • add docs/releases/2.5.2.md as the release workflow's curated notes source
  • update the editor sample to acquire and release keyboard event-type, bracketed-paste, focus, and button-motion leases
  • update the interaction sample to request button-motion reporting for its captured popup drag
  • add a focused Windows console interoperability checklist to samples/README.md and one evergreen rich-input ownership paragraph to the package README
  • relocate all root *Roadmap*.md files to docs/, repair relative links and repository-path examples, and update the one durability test that opened a roadmap by path
  • make no changes under src/

Validation

  • Final PR run: 38967530806 — all 7 jobs passed on exact head 874048ae519b453ddc97e257c5fcd76d689de3e8
  • Runtime Staging passed on Windows x64/ARM64, Linux x64/ARM64, and macOS x64/ARM64
  • Package candidate validation passed with the exact 2.5.2 / Terminal 1.29.2 dependency graph
  • Repository-wide Markdown audit reports 23 roadmaps in docs/, zero in the root, and zero missing relative targets
  • Release/dependency red/green evidence:
    • 38947742060 recorded the intended six release/dependency assertion failures against the untouched 2.5.1 / Terminal 1.29.1 metadata
    • 38948443258 reduced the result to one release-note phrase failure, with 1,466 tests passing per target framework
    • 38948783180 passed after the minimal documentation correction
  • Roadmap-relocation red/green evidence:
    • 38954036585 exposed the one remaining hard-coded root roadmap path; the other 1,466 tests passed per target framework and package validation passed
    • 38954610822 passed after rebasing that durability-test path to docs/
  • Live-sample red/green evidence:
    • 38966877833 produced the intended missing-editor-protocol and wrong-mouse-mode assertion failures on each completed runtime leg; package validation passed
    • 38967530806 passed after the samples acquired the required reversible protocol leases

Compatibility

No DCurses runtime or public API changes. Icod.Terminal remains the sole direct production dependency; Icod.TermInfo remains transitive. Targets remain .NET 8, .NET 9, and .NET 10.

@uniblab
uniblab marked this pull request as ready for review October 16, 2026 18:44
@uniblab
uniblab merged commit c5843ce into main Oct 16, 2026
7 checks passed
@uniblab
uniblab deleted the fix/2.5.2-terminal-console-interop branch October 16, 2026 21:54
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.

1 participant