fix(lambda-go): tidy error handling and typing in the Go Lambda SDK - #8986
Merged
Conversation
- Return the serialization error from constructRenderInternals instead of
calling log.Fatal, so callers stay in control of process exit.
- Wrap invocation, marshalling and response-parsing errors with %w and
include the function name for context.
- Type the internal Crf, ColorSpace and GopSize fields as pointers instead
of interface{} so an unset value serializes to null without a typed
zero-value.
- Fix the example progress output that printed RenderId under the
"bucketName" label and dropped the redundant print.
- Remove the stray semicolon and add the missing trailing newline in
version.go.
Contributor
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes — cleaned up error handling and internal typing in the Go Lambda SDK without changing the serialized wire format.
constructRenderInternalsnow returns serialization errors instead of callinglog.Fatal.- Invocation, marshalling, and response-parsing errors in
invocations.goare wrapped with%wand annotated with the function name. - Internal
Crf,ColorSpace, andGopSizefields inrenderInternalOptionsare typed as pointers, so unset values serialize tonullwithout relying on a typed zero value. - Fixed the example program's bucket-name label and removed the duplicate
RenderIdprint. - Cleaned up the stray semicolon and missing newline in
version.go.
Kimi K2 (free via Pullfrog for OSS) | 𝕏
JonnyBurger
approved these changes
Jul 11, 2026
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.

Small correctness and ergonomics fixes in the
@remotion/lambdaGo SDK, with no change to the wire format sent to the Lambda function.Changes
constructRenderInternalsnow returns the serialization error instead of callinglog.Fatal, so importing the SDK can no longer kill the caller's process on a bad input.%wand include the function name for context.Crf,ColorSpaceandGopSizefields are typed as pointers instead ofinterface{}, so an unset value serializes tonullwithout relying on a typed zero value.RenderIdunder thebucketNamelabel, and removed a duplicate print.version.go.Testing
go build ./...,go vet ./...,go test ./...andgofmt -lall pass inpackages/lambda-goandpackages/lambda-go-example.