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
Point v1 ConfigurationManager users at TuiConfigurationBuilder, add a
2.5.0 breaking-changes conceptual page, align the README develop
increment with GitVersion.yml Patch, and correct Schemes.Resolve to
SchemeManager.GetScheme in the primer and llms.txt.
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
|`feature/*`, `fix/*`, etc. |`2.5.0-my-feature.1`| Inherit | Inherits from `develop`; branch name becomes label |
19
19
|`pull-request/*`|`2.0.0-pr.123.1`| Inherit | PR number in label |
20
20
21
+
`develop` increments **Patch** (`GitVersion.yml``increment: Patch`). To bump Minor, include `+semver: minor` in a commit message. Do not pin `next-version`.
22
+
21
23
### Checking Versions Locally
22
24
23
25
```powershell
@@ -135,7 +137,7 @@ These branches are **not** configured in `GitVersion.yml` (the config was remove
Terminal.Gui 2.5.0 is a minor bump that includes planned API breaks. Apps that compiled against 2.4.17 may need source changes.
4
+
5
+
The GitHub Release notes list for this train lives on [#5630](https://github.com/tui-cs/Terminal.Gui/issues/5630). This page covers the four breaks that belong in the conceptual docs.
6
+
7
+
## `View.Text` is no longer virtual
8
+
9
+
<xref:Terminal.Gui.ViewBase.View.Text> is a non-virtual property. To validate or cancel a change, override `OnTextChanging(string)` or subscribe to <xref:Terminal.Gui.ViewBase.View.TextChanging>. To react after a change, override `OnTextChanged` or subscribe to <xref:Terminal.Gui.ViewBase.View.TextChanged>.
10
+
11
+
`TextField` uses `View.Text` directly (no `new` hider).
12
+
13
+
See [Cancellable Work Pattern](cancellable-work-pattern.md) and [Events](events.md).
14
+
15
+
## `IAcceptTarget` moved to `Terminal.Gui.Input`
16
+
17
+
<xref:Terminal.Gui.Input.IAcceptTarget> now lives in `Terminal.Gui.Input`. To compile against 2.5.0, add `using Terminal.Gui.Input;`.
18
+
19
+
See [Command](command.md).
20
+
21
+
## `ConfigurationManager` and `[ConfigurationProperty]` removed
22
+
23
+
2.5.0 deletes the legacy `ConfigurationManager` type and the `[ConfigurationProperty]` attribute that 2.4.17 marked `[Obsolete]`.
24
+
25
+
To load themes and settings, use <xref:Terminal.Gui.Configuration.TuiConfigurationBuilder> and Settings POCOs such as `ButtonSettings.Current`.
26
+
27
+
See [Configuration](config.md) and [Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md).
28
+
29
+
## `config.json` is nested only
30
+
31
+
A pre-2.5.0 file with dotted keys (`"Button.DefaultShadow"`) or array-shaped `Themes` / `Schemes` is not applied. A `WARN` log names the file.
32
+
33
+
To convert a legacy file, run `Tools/MigrateConfig`. Nested JSON is the supported contract.
34
+
35
+
See [Configuration](config.md) and [Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md).
Copy file name to clipboardExpand all lines: docfx/docs/config.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
Terminal.Gui loads themes, glyphs, key bindings, and view defaults from JSON using [Microsoft.Extensions.Configuration](https://learn.microsoft.com/dotnet/core/extensions/configuration) via <xref:Terminal.Gui.Configuration.TuiConfigurationBuilder>.
4
4
5
-
The legacy `ConfigurationManager` type was removed in 2.5.0. To convert a pre-2.5.0 `config.json`, see [Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md).
5
+
The legacy `ConfigurationManager` type was removed in 2.5.0. To convert a pre-2.5.0 `config.json`, see [Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md). For the other 2.5.0 API breaks, see [2.5.0 Breaking Changes](breaking-changes-2.5.0.md).
6
6
7
7
## Quick start
8
8
@@ -150,6 +150,7 @@ IConfiguration config = new ConfigurationBuilder ()
-[View Construction and Initialization](#view-construction-and-initialization)
12
13
-[Layout System Changes](#layout-system-changes)
13
14
-[Color and Attribute Changes](#color-and-attribute-changes)
@@ -166,6 +167,16 @@ public class MyView : View
166
167
167
168
---
168
169
170
+
## Configuration
171
+
172
+
v1 exposed `ConfigurationManager` (typically `ConfigurationManager.Enable`). That API is gone in 2.5.0.
173
+
174
+
To load themes and settings in v2, use <xref:Terminal.Gui.Configuration.TuiConfigurationBuilder> and Settings POCOs. Do not call `ConfigurationManager.Enable`.
175
+
176
+
To convert a pre-2.5.0 `config.json`, see [Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md). For the other 2.5.0 API breaks, see [2.5.0 Breaking Changes](breaking-changes-2.5.0.md).
177
+
178
+
---
179
+
169
180
## View Construction and Initialization
170
181
171
182
### Constructors → Initializers
@@ -1093,6 +1104,9 @@ While migration requires some effort, the result is a more robust, performant, a
1093
1104
1094
1105
For more details, see:
1095
1106
-[Application Deep Dive](application.md)
1107
+
-[Configuration Deep Dive](config.md)
1108
+
-[Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md)
Copy file name to clipboardExpand all lines: docfx/docs/newinv2.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,8 @@ This document provides an in-depth overview of the new features, improvements, a
4
4
5
5
**For migration guidance**, see the [v1 To v2 Migration Guide](migratingfromv1.md).
6
6
7
+
For the 2.5.0 API breaks (`View.Text`, `IAcceptTarget`, `ConfigurationManager`, nested `config.json`), see [2.5.0 Breaking Changes](breaking-changes-2.5.0.md).
See [Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md) if you still have 2.4.x `ConfigurationManager` calls or a flat-key `config.json`.
661
+
See [Migrating ConfigurationManager to TuiConfigurationBuilder](migrate-cm-to-mec.md) if you still have 2.4.x `ConfigurationManager` calls or a flat-key `config.json`. See [2.5.0 Breaking Changes](breaking-changes-2.5.0.md) for the other 2.5.0 API breaks.
660
662
661
663
**User Customization:**
662
664
- End-users can personalize themes, colors, text styles
0 commit comments