(maint) Update Spectre.Console to 0.55.0#288
Open
renovate[bot] wants to merge 1 commit intodevelopfrom
Open
Conversation
495bb2a to
1c06376
Compare
1c06376 to
a8ffe2c
Compare
a8ffe2c to
b88cb7d
Compare
b88cb7d to
7babcf3
Compare
7babcf3 to
3840565
Compare
1e655d8 to
a6eb347
Compare
a6eb347 to
a4b48ff
Compare
Up to standards ✅🟢 Issues
|
a4b48ff to
d1333b7
Compare
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 contains the following updates:
0.49.1→0.55.00.49.1→0.55.00.49.1→0.55.0Release Notes
spectreconsole/spectre.console (Spectre.Console)
v0.55.0Compare Source
This release brings new features, performance improvements, bug fixes, and some important architectural changes.
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:
Style Is Now a Struct
Stylehas been converted from a class to a struct, and link/URL informationhas been extracted into a separate
Linktype. This improves allocationperformance, especially in rendering-heavy scenarios, but is a breaking change
for code that relies on reference semantics.
Progress Improvements
The
Progresswidget received a lot of love in this release. It now usesTimeProviderinstead of the wall clock, making it significantly easier towrite deterministic tests.
ProgressTaskhas a newTagproperty for attachingarbitrary 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 waitingprompt programmatically.
TextPromptdefault values can now be edited by theuser 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
Canvaswidget gained half-block support,which enables double the vertical resolution when rendering graphics.
JsonTextnow has a configurable indentation depth. Various performance improvements have
also been made to
Markupinstantiation and formatting.Bug Fixes
A memory leak related to
Segmenthas been fixed, along withSegment.SplitLinesignoring multiple consecutive line breaks. A crash inSegmentShape.Calculatewhen 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.
Styleis now a struct. Code relying on reference semantics such asnullchecks or reference equality will need to be updated. Related to this, link
and URL information has moved from
Styleto a newLinktype, so any codethat reads or writes links through
Stylewill need to be adjusted.Several previously obsoleted members have been removed. The
Alignmentpropertyon
Calendar,Table, andGrid, as well as theRenderextension method,no longer exist.
AnsiConsoleFactoryhas been made static and internal, so codethat 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
Styleby @patriksvensson in #2013New Contributors
Full Changelog: spectreconsole/spectre.console@0.54.0...0.55.0
v0.54.0Compare Source
Version
0.54.0of Spectre.Console has been released!Spectre.Console.Cli has a new home!
We've decided to move
Spectre.Console.Clito 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 as1.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
CommandAppTesterfrom 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.Sourcesas 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
d61788dFull Changelog: spectreconsole/spectre.console@0.53.0...0.53.1
v0.53.0Compare Source
v0.52.0Compare Source
What's Changed
Full Changelog: spectreconsole/spectre.console@0.51.1...0.52.0
v0.51.1Compare Source
What's Changed
New Contributors
Full Changelog: spectreconsole/spectre.console@0.50.0...0.51.1
v0.51.0Compare Source
v0.50.0Compare Source
What's Changed
General
Console
HtmlEncoderIncorrectly Applying Italics to Bold Text by @z4ryy in #1590CLI
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.
This PR was generated by Mend Renovate. View the repository job log.