Skip to content

Update to TG 2.5.0-beta.1 - #43

Merged
tig merged 6 commits into
developfrom
tg25-port
Sep 3, 2026
Merged

Update to TG 2.5.0-beta.1#43
tig merged 6 commits into
developfrom
tg25-port

Conversation

@tig

@tig tig commented Aug 22, 2026

Copy link
Copy Markdown
Member

⚠️ DO NOT MERGE with the pre-release pin in place

This PR pins public Terminal.Gui 2.5.0-develop.55 from nuget.org so Terminal.Gui.Cli can be validated ahead of the v2.5.0 tag. Before merging, once stable 2.5.x is on nuget.org:

  1. Update TerminalGuiVersion in Directory.Build.props to the public stable 2.5.x version
  2. Re-run build and tests and confirm Terminal.Gui restores from nuget.org
  3. Then merge

Do not vendor a local nupkg. The 5416 preview feed (local_packages/, tgui-pr-5416 nuget.config source, .gitignore nupkg exception) is already gone.


Summary

Retargets this PR from the vendored 2.5.0-tig-remove-cm-followup.2 pin to public 2.5.0-develop.55 as part of tui-cs/Terminal.Gui#5630 Workstream 4.

No 2.5.0 API breaks in Terminal.Gui.Cli (ConfigurationManager, View.Text, IAcceptTarget unused).

Help ANSI goldens were regenerated against indexed SGR from 2.5.0-develop.55, then reverted. CI is green without that snapshot change.

Validation

CI on this head: build-and-test ubuntu/macos/windows green.

Refs: tui-cs/Terminal.Gui#5416, tui-cs/Terminal.Gui#5630, tui-cs/Editor#287.

TEMP: pin Terminal.Gui to 2.5.0-tig-remove-cm-followup.1, a preview built
from tui-cs/Terminal.Gui#5416 (ConfigurationManager removal), restored from
a vendored local_packages feed via nuget.config. Part of the v2.5.0
ecosystem-validation gate (tui-cs/Terminal.Gui#5630). No code changes were
required: Terminal.Gui.Cli does not use ConfigurationManager, virtual
View.Text, or IAcceptTarget, and builds warning-free against 2.5.0.

Follow-up: swap to the public 2.5.x package on nuget.org and drop the
vendored feed. Pattern precedent: tig/winprint#272.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BVbLXNzbus2MTXmiJDBErL

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: aa093581f7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread Directory.Build.props Outdated
<!-- TEMP: Terminal.Gui 2.5.0 preview built from tui-cs/Terminal.Gui#5416, restored
from the vendored ./local_packages feed (see nuget.config). Switch back to a
public nuget.org version once 2.5.x ships. -->
<TerminalGuiVersion Condition="'$(TerminalGuiVersion)' == ''">2.5.0-tig-remove-cm-followup.1</TerminalGuiVersion>

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Avoid publishing a dependency that only exists locally

On every push to develop, the existing .github/workflows/release.yml packs Terminal.Gui.Cli and pushes it to NuGet.org, so its generated nuspec will expose this Terminal.Gui version as a dependency. The only copy of that custom prerelease is the repository-local feed, and neither nuget.config nor local_packages/ is available to package consumers; therefore installing each newly published development build from NuGet.org will fail to resolve this dependency. Suppress publishing while this pin is active or publish the preview dependency to a feed that consumers can access.

Useful? React with 👍 / 👎.

tig and others added 2 commits August 22, 2026 18:06
…ba423

The .1 package was built from a stale #5416 commit (93c3b3d4) that
predated real config-load defect fixes landed later on the branch.
followup.2 is built from the 5416 branch head (e8aba423).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BVbLXNzbus2MTXmiJDBErL
Drop the vendored 5416 preview feed (local_packages/, nuget.config,
.gitignore exceptions) and restore Terminal.Gui 2.5.0-develop.55 from
nuget.org. Same pattern as tui-cs/Editor#287. Swap to stable 2.5.x
before merge.

Co-authored-by: Tig <tig@users.noreply.github.com>
@cursor cursor Bot changed the title Update to TG 2.5.x (PR 5416 preview) Update to TG 2.5.0-develop.55 (do not merge) Sep 3, 2026
@cursor

cursor Bot commented Sep 3, 2026

Copy link
Copy Markdown

I retargeted this PR from the vendored 5416 preview pin to public nuget.org Terminal.Gui 2.5.0-develop.55. Title is updated. I could not rewrite the PR description itself (it is not agent-managed, and gh pr edit is blocked). Please replace the body with the text below. Do not merge until the pin is stable 2.5.x.

DO NOT MERGE with the pre-release pin in place

This PR pins Terminal.Gui to public nuget.org 2.5.0-develop.55 (TerminalGuiVersion in Directory.Build.props). The Aug 22 vendored 2.5.0-tig-remove-cm-followup.2 feed is gone (local_packages/ and nuget.config deleted). Before merging:

  1. Wait for stable Terminal.Gui 2.5.x on nuget.org.
  2. Set TerminalGuiVersion in Directory.Build.props to that public 2.5.x (the only central pin; every csproj uses $(TerminalGuiVersion)).
  3. Re-run dotnet restore plus build plus all three CI test suites and confirm Terminal.Gui restores from nuget.org with no 2.5.0-develop.* pin left.
  4. Drop the TEMP comment above TerminalGuiVersion.
  5. Then merge.

What this is

Part of the Terminal.Gui v2.5.0 ecosystem-validation gate (tui-cs/Terminal.Gui#5630). tui-cs/Terminal.Gui#5416 and tui-cs/Terminal.Gui#5656 are on develop. This PR ports Terminal.Gui.Cli to public 2.5.0-develop.55.

Pattern: tui-cs/Editor#287.

API breaks

None required so far. Terminal.Gui.Cli does not use the APIs removed or changed in 2.5.0:

  • No legacy ConfigurationManager / ConfigLocations / [ConfigurationProperty] / scope-type usage.
  • No View.Text overrides (now non-virtual; CWP OnTextChanging/OnTextChanged is the replacement).
  • No IAcceptTarget references (moved to Terminal.Gui.Input).

Build and test results will be updated after restore against nuget.org 2.5.0-develop.55.

Follow-up

  • Swap the 2.5.0-develop.55 pin to stable 2.5.x (steps at top).

Refs: tui-cs/Terminal.Gui#5416, tui-cs/Terminal.Gui#5630, tui-cs/Terminal.Gui#5656.

Public Terminal.Gui 2.5.0-develop.55 emits indexed SGR (e.g. ESC[96m /
ESC[40m) instead of the truecolor RGB sequences from the vendored 5416
preview. Glyphs and layout are unchanged; only the color encoding
shifted. Regenerated help.ans and help-browser.ans via UPDATE_SNAPSHOTS.

Co-authored-by: Tig <tig@users.noreply.github.com>
@cursor

cursor Bot commented Sep 3, 2026

Copy link
Copy Markdown

Build and tests are green on 2.5.0-develop.55 from nuget.org. I still cannot rewrite the PR description (not agent-managed). Please replace the body with the text below.

DO NOT MERGE with the pre-release pin in place

This PR pins Terminal.Gui to public nuget.org 2.5.0-develop.55 (TerminalGuiVersion in Directory.Build.props). The Aug 22 vendored 2.5.0-tig-remove-cm-followup.2 feed is gone (local_packages/ and nuget.config deleted). Before merging:

  1. Wait for stable Terminal.Gui 2.5.x on nuget.org.
  2. Set TerminalGuiVersion in Directory.Build.props to that public 2.5.x (the only central pin; every csproj uses $(TerminalGuiVersion)).
  3. Re-run dotnet restore plus build plus all three CI test suites and confirm Terminal.Gui restores from nuget.org with no 2.5.0-develop.* pin left.
  4. Drop the TEMP comment above TerminalGuiVersion.
  5. Then merge.

What this is

Part of the Terminal.Gui v2.5.0 ecosystem-validation gate (tui-cs/Terminal.Gui#5630). tui-cs/Terminal.Gui#5416 and tui-cs/Terminal.Gui#5656 are on develop. This PR ports Terminal.Gui.Cli to public 2.5.0-develop.55.

Pattern: tui-cs/Editor#287.

API breaks

No library API changes. Terminal.Gui.Cli does not use ConfigurationManager, virtual View.Text, or IAcceptTarget.

The only 2.5.0-develop.55 break I hit was ANSI color encoding in the help goldens. Public 2.5.0-develop.55 emits indexed SGR (for example ESC[96m / ESC[40m) instead of the truecolor RGB sequences from the old vendored preview. Glyphs and layout are unchanged. I regenerated help.ans and help-browser.ans.

Test results

Suite Result
tests/Terminal.Gui.Cli.Tests 24/24 passed
tests/Terminal.Gui.Cli.IntegrationTests 39/39 passed
tests/Terminal.Gui.Cli.SmokeTests 0 tests (empty placeholder, matches develop)

Restore sources were nuget.org only. Debug build: 0 warnings, 0 errors. dotnet jb cleanupcode plus dotnet format produced a clean tree.

Follow-up

  • Swap the 2.5.0-develop.55 pin to stable 2.5.x (steps at top).

Refs: tui-cs/Terminal.Gui#5416, tui-cs/Terminal.Gui#5630, tui-cs/Terminal.Gui#5656.

@cursor

cursor Bot commented Sep 3, 2026

Copy link
Copy Markdown

I reverted the help ANSI golden regeneration.

The pin-only commit (ad0d596) already passed CI on ubuntu, macOS, and Windows: 24/24 unit, 39/39 integration, including the original truecolor goldens. The golden rewrite was a false local signal. This agent VM uses TERM=dumb, so Terminal.Gui emitted indexed SGR (ESC[96m / ESC[40m). GitHub runners still emit the truecolor sequences the goldens already have.

macOS CI failed on the regenerated goldens, which matches that. Head is now a revert back to those original snapshots. Do not merge until the pin is stable 2.5.x. I still cannot rewrite the PR description (not agent-managed). Please replace it with the DO NOT MERGE body from the earlier comment.

@cursor

cursor Bot commented Sep 3, 2026

Copy link
Copy Markdown

HEAD CI is green on ubuntu, macOS, and Windows (https://github.com/tui-cs/cli/actions/runs/33757609533). Restore is nuget.org Terminal.Gui 2.5.0-develop.55. No local_packages. Do not merge until the pin is stable 2.5.x.

I still cannot edit this description (not agent-managed; GitHub 403). Same as tui-cs/Editor#287, please paste the text below over the current body so it no longer talks about the vendored 5416 preview.

DO NOT MERGE with the pre-release pin in place

This PR pins Terminal.Gui to public nuget.org 2.5.0-develop.55 (TerminalGuiVersion in Directory.Build.props). The Aug 22 vendored 2.5.0-tig-remove-cm-followup.2 feed is gone (local_packages/ and nuget.config deleted). Before merging:

  1. Wait for stable Terminal.Gui 2.5.x on nuget.org.
  2. Set TerminalGuiVersion in Directory.Build.props to that public 2.5.x (the only central pin; every csproj uses $(TerminalGuiVersion)).
  3. Re-run dotnet restore plus build plus all three CI test suites and confirm Terminal.Gui restores from nuget.org with no 2.5.0-develop.* pin left.
  4. Drop the TEMP comment above TerminalGuiVersion.
  5. Then merge.

What this is

Part of the Terminal.Gui v2.5.0 ecosystem-validation gate (tui-cs/Terminal.Gui#5630). tui-cs/Terminal.Gui#5416 and tui-cs/Terminal.Gui#5656 are on develop. This PR ports Terminal.Gui.Cli to public 2.5.0-develop.55.

Pattern: tui-cs/Editor#287.

API breaks

No library API changes. Terminal.Gui.Cli does not use ConfigurationManager, virtual View.Text, or IAcceptTarget.

No golden update is required. The existing truecolor help snapshots passed on ubuntu, macOS, and Windows.

Test results

Suite Result
tests/Terminal.Gui.Cli.Tests 24/24 passed
tests/Terminal.Gui.Cli.IntegrationTests 39/39 passed
tests/Terminal.Gui.Cli.SmokeTests 0 tests (empty placeholder, matches develop)

Follow-up

  • Swap the 2.5.0-develop.55 pin to stable 2.5.x (steps at top).

Refs: tui-cs/Terminal.Gui#5416, tui-cs/Terminal.Gui#5630, tui-cs/Terminal.Gui#5656.

Drop the 2.5.0-develop.55 pin. Restore stays on nuget.org. No vendored
feed.

Co-authored-by: Tig <tig@users.noreply.github.com>
@cursor cursor Bot changed the title Update to TG 2.5.0-develop.55 (do not merge) Update to TG 2.5.0-beta.1 Sep 3, 2026
@cursor

cursor Bot commented Sep 3, 2026

Copy link
Copy Markdown

I bumped the pin to public nuget.org 2.5.0-beta.1. Title is updated. I cannot rewrite the description (not agent-managed; GitHub 403). Please replace the body with the text below and drop the DO NOT MERGE warning.

This PR pins Terminal.Gui to public nuget.org 2.5.0-beta.1 (TerminalGuiVersion in Directory.Build.props). Restore is from nuget.org. There is no local feed and no 2.5.0-develop.* pin.

This is the v2.5.0 ecosystem-validation bump for Terminal.Gui.Cli (tui-cs/Terminal.Gui#5630). #5416 and #5656 are on develop.

No library API changes. Terminal.Gui.Cli does not use ConfigurationManager, virtual View.Text, or IAcceptTarget.

Pattern: tui-cs/Editor#287.

Refs: tui-cs/Terminal.Gui#5416, tui-cs/Terminal.Gui#5630, tui-cs/Terminal.Gui#5656.

@tig
tig merged commit e28626e into develop Sep 3, 2026
6 checks passed
@tig
tig deleted the tg25-port branch September 3, 2026 21:15
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.

2 participants