Conversation
Bumps Terminal.Gui from 2.0.0-rc.3 to 2.5.0-tig-remove-cm-followup.1, a preview package built from tui-cs/Terminal.Gui#5416 (ConfigurationManager removal), vendored TEMPorarily in ./local_packages via nuget.config until 2.5.x ships on nuget.org. No source changes were required: this app does not use ConfigurationManager, does not override View.Text, and does not reference IAcceptTarget, so none of the 2.5.0 breaking changes apply. Build, pack, and --help smoke test all pass. Part of the v2.5.0 ecosystem-validation gate (tui-cs/Terminal.Gui#5630). Pattern precedent: tig/winprint#272. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BVbLXNzbus2MTXmiJDBErL
Code review of this PR found the vendored 2.5.0-tig-remove-cm-followup.1
package was built from commit 93c3b3d40 - 10 commits behind the PR 5416
branch HEAD (e8aba4230). The missing commits include 946aaa788 ("Fix
ultrareview findings test-first: resilient config load, CWD paths, scheme
merge"), so the stale package carried a known-fixed defect: ./.tui/config.json
was resolved against AppContext.BaseDirectory (the app's install directory)
instead of Environment.CurrentDirectory.
Reproduced failing-first with a console probe against followup.1:
- CWD .tui/config.json with {"Theme":"Dark"}: IGNORED (Theme=Default)
- install-dir .tui/config.json: wrongly APPLIED (Theme=Dark)
After re-vendoring followup.2 (rebuilt from e8aba4230, clean tree, commit
verified in nuspec metadata), the probe flips:
- CWD .tui/config.json: applied (Theme=Dark)
- install-dir .tui/config.json: ignored (Theme=Default)
Re-validated with followup.2: clean-cache restore resolves from
./local_packages; build 0 errors (only pre-existing Copilot SDK NU1902/NU1903
advisories); Release pack succeeds; --help renders; and a PTY smoke pass
(tuirec: /help then /quit) renders identically to the rc.3 baseline and
exits cleanly.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BVbLXNzbus2MTXmiJDBErL
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR pins a vendored pre-release build (
Terminal.Gui 2.5.0-tig-remove-cm-followup.2, built from tui-cs/Terminal.Gui#5416) so the port can be validated ahead of the v2.5.0 release. Before merging, once a public 2.5.x package is on nuget.org:ai.csprojlocal_packages/and thetgui-pr-5416package source innuget.config(delete the file if that source is all it adds).gitignoreexception for the vendored packages (if present)Summary
Ports
aito the Terminal.Gui 2.5.0 preview as part of the v2.5.0 ecosystem-validation gate (tui-cs/Terminal.Gui#5630). Since tui-cs/Terminal.Gui#5416 (ConfigurationManager removal) is not yet merged/published, this PR TEMPorarily vendors a nupkg built from that PR branch — same pattern as tig/winprint#272.Changes
ai.csproj— Terminal.Gui pin bumped2.0.0-rc.3→2.5.0-tig-remove-cm-followup.2(TEMP comment inline). No other package pins touched.nuget.config(new) — adds TEMP package sourcetgui-pr-5416→./local_packages, plus nuget.org.local_packages/(new) — vendoredTerminal.Gui.2.5.0-tig-remove-cm-followup.2.nupkg+.snupkgbuilt from the PR 5416 branch..gitignore— exception so the vendored packages can be committed.API breaks encountered
None. The 2.5.0 breaking changes (legacy
ConfigurationManager/ConfigLocationsremoval,View.Textno longer virtual / CWPOnTextChanging/OnTextChanged,IAcceptTargetmoved toTerminal.Gui.Input, nested-only config.json) do not affect this codebase — it uses none of those APIs. Zero source changes were required.Validation
dotnet restore+dotnet build: clean, 0 errors, no CS warnings (the only warnings are pre-existing NU1902/NU1903 vulnerability advisories from the Copilot SDK's transitiveMessagePack/StreamJsonRpcdeps — unrelated to this bump).dotnet pack --configuration Release(the CI publish step): succeeds.dotnet run -- --helpsmoke test: renders correctly.Follow-up
Once Terminal.Gui 2.5.x is published to nuget.org: swap the pin to the public package and delete
nuget.config'stgui-pr-5416source,local_packages/, and the.gitignoreexception.Refs: tui-cs/Terminal.Gui#5416, tui-cs/Terminal.Gui#5630. Pattern precedent: tig/winprint#272.
🤖 Generated with Claude Code
https://claude.ai/code/session_01BVbLXNzbus2MTXmiJDBErL
Review updates (2026-08-22)
followup.1nupkg was built from a commit 10 commits behind the 5416 branch HEAD and carried a known-fixed config bug (./.tui/config.jsonresolved against the app's install directory instead of the current directory). Now vendoringfollowup.2, rebuilt from branch HEADe8aba423(commit verified in nuspec metadata). Failing-first/passing probe evidence is in the commit message.~/.tui/config.json,./.tui/config.json,~/.tui/ai.config.json,./.tui/ai.config.json, and theTUI_CONFIGenv var — so users can now retheme/rebindaiwhere rc.3 ignored such files. Verified live in a PTY:TUI_CONFIG={"Theme":"Dark"}restyles the app./help, then/quit) against both the rc.3 baseline build and the 2.5 build — rendering is identical (same screen text, same color palette), no exceptions, clean exit. The Copilot-authenticated streaming path remains unexercised.