When MCC runs in non-interactive terminals (e.g. CI runners, IDE
embedded shells, piped input), several Console APIs throw exceptions
because there is no real console attached.
Changes:
- Program.cs: Wrap Console.KeyAvailable / Console.ReadKey in
HandleFailure() with try-catch so MCC does not crash on startup
failure in headless environments.
- Chunk.cs: Wrap Console.BufferWidth / BufferHeight in try-catch
with fallback values (120x50) to prevent exceptions when rendering
chunk maps without a console buffer.
- Map.cs: Same treatment for the map rendering path - use safe
fallback values when Console.BufferWidth/Height are unavailable.
- ReplayHandler.cs: Replace Array.Reverse() (returns void in newer
.NET) with .AsEnumerable().Reverse() to fix compilation with
.NET 10 SDK where the void return breaks the fluent chain.
Made-with: Cursor
* Add Sentry Error Tracking
* Omit personally identifiable information and add additional sentry context
* Remove debug message
* Make sentry opt-out and add related notices and strings
Also add Minecraft Version to error context
* Update build to send release info to sentry
* Adjust sentry error tracking
- Send the user-friendly Minecraft Version in the error logs
- Capture exceptions in more parts of the application
We now capture exceptions from the following locations:
- Protocol18 (1.8+) Packet errors
- Errors during client initialization phase (When client is about to start, session keys are NEVER sent to sentry)
* Make Sentry DSN configurable and repository-specific
The Sentry DSN will automatically be filled out on the main repository through the Github Actions build.
* Update build-and-release.yml
Update sed command
* style: change variable name
nitpick, just to make it a little bit more descriptive
* Add Sentry branding in README.
* remove old code (merge conflict)
When try to send message in yggdrasil-auth server with `enforce-secure-profile=true`
and `online-mode=true` enabled, will fail with message in red:
Chat disabled due to missing profile public key. Please try reconnecting.
So yggdrasil-auth-client also has to encrypt chat messages like Microsoft-auth-client
to send out messages.