Skip to content

(maint) Update Spectre.Console to 0.55.0#288

Open
renovate[bot] wants to merge 1 commit intodevelopfrom
renovate/spectre-console
Open

(maint) Update Spectre.Console to 0.55.0#288
renovate[bot] wants to merge 1 commit intodevelopfrom
renovate/spectre-console

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate bot commented Apr 8, 2025

This PR contains the following updates:

Package Change Age Confidence
Spectre.Console 0.49.10.55.0 age confidence
Spectre.Console.Cli 0.49.10.55.0 age confidence
Spectre.Console.Testing 0.49.10.55.0 age confidence

Release Notes

spectreconsole/spectre.console (Spectre.Console)

v0.55.0

Compare Source

This release brings new features, performance improvements, bug fixes, and some important architectural changes.

[!CAUTION]
There are breaking changes in this release, so make sure you review the release notes and try things out before upgrading in production.

New Spectre.Console.Ansi Library

One of the biggest changes in this release is the introduction of
Spectre.Console.Ansi,
a new standalone library for writing ANSI escape
sequences to the terminal without taking a full dependency on Spectre.Console.

This makes it easy to add ANSI support to lightweight tools and libraries where
pulling in the full Spectre.Console package would be overkill. Spectre.Console
itself now depends on this library internally.

We've also added some nice convenience methods for the .NET Console class:

using Spectre.Console.Ansi;

Console.Markup("[yellow]Hello[/] ");
Console.MarkupLine("[blue]World[/]");
  
Console.Ansi(writer => writer
    .BeginLink("https://spectreconsole.net", linkId: 123)
    .Decoration(Decoration.Bold | Decoration.Italic)
    .Foreground(Color.Yellow)
    .Write("Spectre Console")
    .ResetStyle()
    .EndLink());

Style Is Now a Struct

Style has been converted from a class to a struct, and link/URL information
has been extracted into a separate Link type. This improves allocation
performance, especially in rendering-heavy scenarios, but is a breaking change
for code that relies on reference semantics.

Progress Improvements

The Progress widget received a lot of love in this release. It now uses
TimeProvider instead of the wall clock, making it significantly easier to
write deterministic tests. ProgressTask has a new Tag property for attaching
arbitrary metadata, and you can now override the global hide-when-completed
behavior on individual tasks. Tasks can also be removed from the progress
context entirely.

Speed calculations have been improved with configurable max sampling age and
sample count, giving you more control over how responsive or smooth the speed
readout is. Speed calculations for stopped tasks have been fixed, and
indeterminate tasks no longer show a meaningless time estimate.

Prompt Enhancements

Prompts now accept a CancellationToken, making it possible to cancel a waiting
prompt programmatically. TextPrompt default values can now be edited by the
user instead of being accepted or rejected as a whole. There is also a new
option to clear the prompt line after the user provides input.

Tables and Rendering

Table body rows now support column spans, and a new minimal border style has
been added for a cleaner look. The Canvas widget gained half-block support,
which enables double the vertical resolution when rendering graphics. JsonText
now has a configurable indentation depth. Various performance improvements have
also been made to Markup instantiation and formatting.

Bug Fixes

A memory leak related to Segment has been fixed, along with
Segment.SplitLines ignoring multiple consecutive line breaks. A crash in
SegmentShape.Calculate when the lines list was empty has been resolved.
Interactive console detection when output is redirected now works correctly,
and table expand now properly respects fixed column widths. Truncation and
overflow handling for fullwidth characters has been corrected, and locking
performance on .NET 9.0+ has been improved.

Breaking Changes

This release contains several breaking changes. Please review the following
before upgrading.

Style is now a struct. Code relying on reference semantics such as null
checks or reference equality will need to be updated. Related to this, link
and URL information has moved from Style to a new Link type, so any code
that reads or writes links through Style will need to be adjusted.

Several previously obsoleted members have been removed. The Alignment property
on Calendar, Table, and Grid, as well as the Render extension method,
no longer exist. AnsiConsoleFactory has been made static and internal, so code
that instantiated this class directly will need an alternative approach.

Finally, ANSI output is now disabled when stdout or stderr is redirected. This
is a behavior change: output that previously included ANSI escape codes when
piped or redirected will now be plain text.

What's Changed

New Contributors

Full Changelog: spectreconsole/spectre.console@0.54.0...0.55.0

v0.54.0

Compare Source

Version 0.54.0 of Spectre.Console has been released!

Spectre.Console.Cli has a new home!

We've decided to move Spectre.Console.Cli to its own repository, where we will prepare it for a 1.0 release. This means that the Spectre.Console.Cli NuGet packages will no longer be versioned together with Spectre.Console. They will now have a preview version such as 1.0.0-alpha-0.x.

There should be no issues staying on version 0.53.0 of Spectre.Console.Cli until we release a stable version if you prefer not to use a pre-release dependency.

New unit testing package for Spectre.Console.Cli

There is now a new testing package for Spectre.Console.Cli called Spectre.Console.Cli.Testing. This is where you will find the CommandAppTester from now on.

You can find more information about unit testing in the documentation.

What's Changed

Full Changelog: spectreconsole/spectre.console@0.53.0...0.54.0

v0.53.1: (hotfix)

Compare Source

This is a hotfix release for 0.53.0, which accidentally included OpenCli.Sources as a dependency, instead of being included in the package.

As a bonus, a fix for panels was also included in this release 😄

What's Changed

Full Changelog: spectreconsole/spectre.console@0.53.0...0.53.1

v0.53.0

Compare Source

v0.52.0

Compare Source

What's Changed

Full Changelog: spectreconsole/spectre.console@0.51.1...0.52.0

v0.51.1

Compare Source

What's Changed

New Contributors

Full Changelog: spectreconsole/spectre.console@0.50.0...0.51.1

v0.51.0

Compare Source

v0.50.0

Compare Source

What's Changed
General
Console
CLI
New Contributors

Full Changelog: spectreconsole/spectre.console@0.49.1...0.50.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/spectre-console branch from 495bb2a to 1c06376 Compare September 7, 2025 00:46
@renovate renovate bot changed the title (maint) Update Spectre.Console to 0.50.0 (maint) Update Spectre.Console to 0.51.1 Sep 7, 2025
@renovate renovate bot force-pushed the renovate/spectre-console branch from 1c06376 to a8ffe2c Compare October 10, 2025 21:56
@renovate renovate bot changed the title (maint) Update Spectre.Console to 0.51.1 (maint) Update Spectre.Console to 0.52.0 Oct 10, 2025
@renovate renovate bot force-pushed the renovate/spectre-console branch from a8ffe2c to b88cb7d Compare October 26, 2025 17:48
@renovate renovate bot changed the title (maint) Update Spectre.Console to 0.52.0 (maint) Update Spectre.Console to 0.53.0 Oct 26, 2025
@renovate renovate bot force-pushed the renovate/spectre-console branch from b88cb7d to 7babcf3 Compare November 13, 2025 01:06
@renovate renovate bot changed the title (maint) Update Spectre.Console to 0.53.0 (maint) Update Spectre.Console Nov 13, 2025
@renovate renovate bot force-pushed the renovate/spectre-console branch from 7babcf3 to 3840565 Compare November 25, 2025 21:53
@renovate renovate bot force-pushed the renovate/spectre-console branch 2 times, most recently from 1e655d8 to a6eb347 Compare February 25, 2026 20:18
@renovate renovate bot force-pushed the renovate/spectre-console branch from a6eb347 to a4b48ff Compare April 3, 2026 13:39
@codacy-production
Copy link
Copy Markdown

codacy-production bot commented Apr 3, 2026

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

TIP This summary will be updated as you push new changes. Give us feedback

@renovate renovate bot force-pushed the renovate/spectre-console branch from a4b48ff to d1333b7 Compare April 3, 2026 21:10
@renovate renovate bot changed the title (maint) Update Spectre.Console (maint) Update Spectre.Console to 0.55.0 Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants