v0.7.40
Pre-release
Pre-release
- Renamed the project from System.Terminal to Cathode.
- Relicensed from ISC to 0BSD.
- Improvements and refactoring to I/O APIs.
Stream
,TextReader
, andTextWriter
instances exposed by the library are now fully synchronized.TextReader
/TextWriter
properties onTerminalReader
/TerminalWriter
are now abstract.
- Improvements to child process APIs.
- Overhauled the APIs and moved them to the
Cathode.Processes
namespace. - Renamed
TerminalProcess
toChildProcess
(ditto for related types). - Added clean integration with
async
/await
and cancellation. - Changed a number of options to have more intuitive defaults.
- Added background buffering of process output with an optional buffer size limit.
- Removed the
SendSignal
method as it cannot be implemented sanely on Windows at the moment. - Removed support for inspecting running processes and enumerating threads, modules, etc.
- Overhauled the APIs and moved them to the
- Improvements to control sequence construction.
- Added support for rapid blink.
- Added support for underline colors and styles.
- Renamed bold decoration to intense.
- Various platform-specific driver improvements.
- Added upfront cancellation checks in
TerminalReader
implementations. - Switched to
SemaphoreSlim
for locking so that cancellation causes a lock acquisition to be canceled. - Windows console code page is now changed/restored alongside console modes.
- Throw
PlatformNotSupportedException
when a signal cannot be generated.
- Added upfront cancellation checks in
- Updates to Cathode.Extensions functionality.
- Fixed
UseColors
property onTerminalLoggerOptions
beingfalse
by default.
- Fixed