Closed dvonthenen closed 5 months ago
The updates across the solution primarily focus on enhancing logging, exception handling, and token management for various components, including REST clients, WebSocket connections, and the microphone streaming example. New projects have been introduced, reflecting a broader test coverage for expected failures and new functionalities. Adjustments in project paths and references aim to streamline the solution structure. The addition of a Disable
log level and specific timeout constants further refine the operational parameters and debugging capabilities.
File(s) | Summary |
---|---|
Deepgram.Dev.sln , .../exercise_timeout/ExerciseTimeout.csproj |
Adjustments in project declarations and paths, including new projects and relocations. |
Deepgram/Abstractions/AbstractRestClient.cs , Deepgram/Clients/Live/v1/Client.cs , examples/streaming/microphone/Program.cs |
Enhanced logging, method signature clarity, and exception handling. Adjustments in token usage and logging levels. |
Deepgram/Clients/Live/v1/Constants.cs , Deepgram/Logger/Constants.cs |
Introduction of DefaultConnectTimeout constant and Disable log level. |
Deepgram/Logger/Log.cs |
Handling for Disable log level to log fatal events to the console. |
tests/expected_failures/rest/bad_host/BadHost.csproj , tests/expected_failures/rest/trigger_cancel/TriggerCancel.csproj |
New .NET project files targeting net6.0 , including references and features. |
tests/expected_failures/rest/bad_host/Program.cs , tests/expected_failures/rest/trigger_cancel/Program.cs , tests/expected_failures/websocket/exercise_timeout/Program.cs |
Functionality introductions for transcription and logging adjustments, including handling exceptions and cancellation. |
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Addresses issue: https://github.com/deepgram/deepgram-dotnet-sdk/issues/252
This was the stress test to throw as many exceptions and to test edge cases as best as I could. In these scenarios, I found a few issues.
Changes include:
AbstractRestClient
just better logging of the exceptions based on log levelsLiveClient
, this is where I found a couple of issues went it came to cancelling. These changes include:Connect()
andStop()
Each get their own CancelToken to be used for only that operation. That is the token that is passed into the function. That token is optional and a default will be used to timeout those operations in 5 seconds.AbstractRestClient
.Summary by CodeRabbit