feat: add logging configuration and SSE event discrimination support#81
Open
fern-api[bot] wants to merge 1 commit intomainfrom
Open
feat: add logging configuration and SSE event discrimination support#81fern-api[bot] wants to merge 1 commit intomainfrom
fern-api[bot] wants to merge 1 commit intomainfrom
Conversation
This release adds configurable logging capabilities and enhanced SSE streaming support for event-level discrimination. The logging system is silent by default and requires explicit configuration. The SSE enhancements enable proper handling of discriminated union types at the event envelope level. Key changes: - Add LogConfig support to ClientOptions with optional logging() builder method - Add new SSE_EVENT_DISCRIMINATED stream type with fromSseWithEventDiscrimination() factory methods - Add SSEEventDiscriminatedIterator for parsing SSE streams with event-level discrimination - Remove InputStream-based parserCreateJob() overloads from LabReportClient (File-based methods remain) - Update parserCreateJob() documentation to clarify support for multiple files 🌿 Generated with Fern
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.
Version Bump: Removed public methods parserCreateJob(InputStream, String), parserCreateJob(InputStream, String, MediaType), and related overloads from LabReportClient - existing callers will get compile errors.
LogConfigoption inClientOptions. Logging is silent by default and must be explicitly enabled. Enhanced SSE streaming support includes new methods for handling event-level discriminated unions. Some InputStream-based file upload methods have been removed in favor of File-based approaches.parserCreateJobmethods inRawLabReportClientthat acceptedInputStreamparameters have been removed. Replace calls with the File-based alternatives:parserCreateJob(File file, BodyCreateLabReportParserJob request)orparserCreateJob(File file, BodyCreateLabReportParserJob request, RequestOptions requestOptions). New optional parameters are available for enhanced lab test configuration including lab account targeting and appointment notes.getMarkers()method now supports a newlab_slugparameter for more flexible lab filtering. Additionally, all marker-related methods now include improved documentation that clarifies the distinction between orderable markers and reflex markers.RawLabAccountClient.getTeamLabAccounts()method for retrieving team lab accounts. Lab test orders now support aclinicalNotesfield for additional clinical information.additionalProperty()andadditionalProperties()methods. This enables forward compatibility with future API changes and allows custom key-value pairs to be included in request payloads.additionalProperty()andadditionalProperties()methods available on all request builders for convenient management of custom properties.additionalProperty()andadditionalProperties()builder methods available on all vitals request classes. These methods allow passing custom properties beyond the predefined request fields, enabling greater flexibility when querying vitals data.additionalProperty()andadditionalProperties()methods are now available on all vitals request builders, allowing custom properties to be added to requests for enhanced flexibility.additionalProperty()andadditionalProperties()methods when building requests to attach custom metadata or handle unknown fields. Also added support for appointment notes in booking requests.CanonicalCandidateclass for biomarker normalization with support for LOINC codes, aliases, confidence scores, and provider mapping. All builder classes now supportadditionalProperty()andadditionalProperties()methods for extended metadata handling.appointmentNotesfield available onClientFacingAppointmentclass. The SDK now supports setting and retrieving appointment notes through thegetAppointmentNotes()method and builder pattern.additionalProperty()andadditionalProperties()methods available on builder interfaces, enabling dynamic property assignment for API response objects that may contain unknown fields.additionalProperty()andadditionalProperties()are now available on various data type builders, enabling flexible handling of custom fields in API responses.additionalProperty()andadditionalProperties()builder methods available on all data model objects. These methods allow setting custom properties that will be preserved during API serialization.ClientFacingLabAccounttype available for managing laboratory account information. New webhook eventsClientFacingLabReportParsingJobCreatedEventandClientFacingLabReportParsingJobUpdatedEventadded for lab report parsing job notifications.additionalProperty()andadditionalProperties()methods available on builders for all client-facing data types. These methods enable setting additional properties for better extensibility and forward compatibility with API responses.additionalProperty()andadditionalProperties()methods are now available on builder classes, allowing flexible addition of custom key-value pairs to objects.additionalProperty()andadditionalProperties()are now available on all client-facing model builders, allowing dynamic addition of custom properties during object construction.additionalProperty()andadditionalProperties()are now available on all client-facing type builders, allowing custom key-value pairs to be added during object construction.CompendiumSearchLabsenum for lab provider selection andConvertCompendiumResponseclass for handling conversion results. Additional readiness data capabilities are available through newDerivedReadinessColumnExprtypes. Builder classes now include methods for setting additional properties on response objects.additionalProperty()andadditionalProperties()methods are now available on builder classes, allowing you to include custom key-value pairs in your objects. A newGetTeamLabAccountsResponsetype has also been added for retrieving team lab account information.additionalProperty()andadditionalProperties()are now available on all grouped response type builders, enabling custom property assignment during object construction.additionalProperty()andadditionalProperties()methods available on all grouped data type builders for setting custom properties with fluent chaining.additionalProperty()andadditionalProperties()methods are available on builder classes, allowing dynamic property assignment at runtime. Additionally, new enum values have been added for extended functionality.additionalProperty()andadditionalProperties()methods. A newPerLabCandidatetype is also available for lab result matching functionality.additionalProperty()andadditionalProperties()builder methods. Two new provider types are available:TANDEM_SOURCEandSAMSUNG_HEALTH. A newProviderIdConversionResponseclass has been added for provider ID conversion functionality.UsStateenum and user address handling via theUserAddressclass. All builder classes now includeadditionalProperty()andadditionalProperties()methods for flexible JSON field handling.WorkoutColumnExpr,WorkoutDurationTimeseriesExpr, andWorkoutV2InDb). These methods allow for more flexible data structure configuration when building workout objects.