From 96907ab3c153ebf1563a2f94373b215d569d496e Mon Sep 17 00:00:00 2001 From: Tigger Kindel Date: Thu, 6 Apr 2023 10:02:49 -0600 Subject: [PATCH] Some merges from develop --- README.md | 17 +++++++++++------ Terminal.Gui/README.md | 19 ++++++++++++------- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 4b7eb78d8..7a501dd06 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,6 @@ +NOTE: This is the WORK IN PROGRESS `v2.x` branch. The `main` branch is the stable `v1.x` branch. + +![Terminal.Gui](https://socialify.git.ci/gui-cs/Terminal.Gui/image?description=1&font=Rokkitt&forks=1&language=1&logo=https%3A%2F%2Fraw.githubusercontent.com%2Fgui-cs%2FTerminal.Gui%2Fdevelop%2Fdocfx%2Fimages%2Flogo.png&name=1&owner=1&pattern=Circuit%20Board&stargazers=1&theme=Auto) ![.NET Core](https://github.com/gui-cs/Terminal.Gui/workflows/.NET%20Core/badge.svg?branch=master) ![Code scanning - action](https://github.com/gui-cs/Terminal.Gui/workflows/Code%20scanning%20-%20action/badge.svg) [![Version](https://img.shields.io/nuget/v/Terminal.Gui.svg)](https://www.nuget.org/packages/Terminal.Gui) @@ -6,11 +9,12 @@ [![License](https://img.shields.io/github/license/gui-cs/gui.cs.svg)](LICENSE) ![Bugs](https://img.shields.io/github/issues/gui-cs/gui.cs/bug) -# Terminal.Gui v2.x - Cross Platform Terminal UI toolkit for .NET +***The current, stable, release of Terminal.Gui is [v1.x](https://www.nuget.org/packages/Terminal.Gui). It is stable, rich, and broadly used. The team is now focused on designing and building a significant upgrade we're referring to as `v2`. Therefore:*** + * *`v1` is now in maintenance mode, meaning we will accept PRs for v1.x (the `develop` branch) only for issues impacting existing functionality.* + * *All new development happens on the `v2_develop` branch. See the V2 discussion [here](https://github.com/gui-cs/Terminal.Gui/discussions/1940).* + * *Developers are encouraged to continue building on [v1.x](https://www.nuget.org/packages/Terminal.Gui) until we announce `v2` is stable.* -A toolkit for building rich console apps for .NET, .NET Core, and Mono that works on Windows, the Mac, and Linux/Unix. - -NOTE: This is the WORK IN PROGRESS `v2.x` branch. The `main` branch is the stable `v1.x` branch. +**Terminal.Gui**: A toolkit for building rich console apps for .NET, .NET Core, and Mono that works on Windows, the Mac, and Linux/Unix. ![Sample app](docfx/images/sample.gif) @@ -18,7 +22,7 @@ NOTE: This is the WORK IN PROGRESS `v2.x` branch. The `main` branch is the stabl Paste these commands into your favorite terminal on Windows, Mac, or Linux. This will install the [Terminal.Gui.Templates](https://github.com/gui-cs/Terminal.Gui.templates), create a new "Hello World" TUI app, and run it. -(Press `CTRL-Q` to quit the app) +(Press `CTRL-Q` to exit the app) ```powershell dotnet new --install Terminal.Gui.templates @@ -45,7 +49,8 @@ _The Documentation matches the most recent Nuget release from the `main` branch * **[Configuration & Themes](https://gui-cs.github.io/Terminal.Gui/articles/config.html)** - Terminal.Gui supports a rich configuration system that allows end-user customization of how the UI looks (e.g. colors) and behaves (e.g. key-bindings). * **Clipboard support** - Cut, Copy, and Paste of text provided through the [`Clipboard`](https://gui-cs.github.io/Terminal.Gui/api/Terminal.Gui/Terminal.Gui.Clipboard.html) class. * **[Arbitrary Views](https://gui-cs.github.io/Terminal.Gui/api/Terminal.Gui/Terminal.Gui.View.html)** - All visible UI elements are subclasses of the `View` class, and these in turn can contain an arbitrary number of sub-views. -* **Advanced App Features** - The [Mainloop](https://gui-cs.github.io/Terminal.Gui/api/Terminal.Gui/Terminal.Gui.MainLoop.html) supports processing events, idle handlers, timers, and monitoring file descriptors. Most classes are safe for threading. +* **Advanced App Features** - The [Mainloop](https://gui-cs.github.io/Terminal.Gui/api/Terminal.Gui/Terminal.Gui.MainLoop.html) supports processing events, idle handlers, timers, and monitoring file +descriptors. Most classes are safe for threading. * **Reactive Extensions** - Use [reactive extensions](https://github.com/dotnet/reactive) and benefit from increased code readability, and the ability to apply the MVVM pattern and [ReactiveUI](https://www.reactiveui.net/) data bindings. See the [source code](https://github.com/gui-cs/Terminal.Gui/tree/master/ReactiveExample) of a sample app in order to learn how to achieve this. ## Showcase & Examples diff --git a/Terminal.Gui/README.md b/Terminal.Gui/README.md index 37a026fd7..81d337f30 100644 --- a/Terminal.Gui/README.md +++ b/Terminal.Gui/README.md @@ -49,6 +49,16 @@ Doing so will update the `.csproj` files in your branch with version info, which ## Publishing a Release of Terminal.Gui +First, use the [Semantic Versioning](https://semver.org/) rules.to determine the new verison number. + +Given a version number MAJOR.MINOR.PATCH, increment the: + +* MAJOR version when you make incompatible API changes +* MINOR version when you add functionality in a backwards compatible manner +* PATCH version when you make backwards compatible bug fixes + +Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format. + To release a new version (e.g. with a higher `major`, `minor`, or `patch` value) tag a commit using `git tag` and then push that tag directly to the `main` branch on `github.com/gui-cs/Terminal.Gui` (`upstream`). The `tag` must be of the form `v..`, e.g. `v2.3.4`. @@ -67,7 +77,7 @@ The PR title should be of the form "Release v2.3.4" ```powershell git checkout develop git pull upstream develop -git checkout -b v_2_3_4 +git checkout -b v2_3_4 git add . git commit -m "Release v2.3.4" git push @@ -117,13 +127,8 @@ https://www.nuget.org/packages/Terminal.Gui ### 10) Add a new Release in Github: https://github.com/gui-cs/Terminal.Gui/releases -Generate release notes with the list of PRs since the last release +Generate release notes with the list of PRs since the last release. -Use `gh` to get a list with just titles to make it easy to paste into release notes: - -```powershell -gh pr list --limit 500 --search "is:pr is:closed is:merged closed:>=2021-05-18" -``` ### 11) Update the `develop` branch with the new version ```powershell