Releases: braintrustdata/braintrust-sdk-go
v0.6.1
Changelog
- fdbe5cd chore: release v0.6.1 (#109)
- ae1c8f2 ci(release): drop proxy.golang.org pre-warm step (#89)
- 553f579 fix(eval): escape org name in permalink URL (#106)
- 5bee810 perf(adk): remove redundant global TP set and parallelize tests
- 8012d5d perf(contrib): batch go mod edit into a single subprocess call
- a42b904 perf(contrib): parallelize orchestrion subtests
- e14a57c perf(contrib): parallelize top-level test functions
- 90eef28 perf(langchaingo): eliminate network round-trip in TestContextIdentity
v0.6.0
v0.5.0
Changelog
- 598bf71 Instrument Gemini streaming (streamGenerateContent) calls (#55)
- 207c425 fix(anthropic): preserve citations in streaming traces (#83)
- 50c3c0f fix(genai): capture Gemini thinking config in traces (#75)
- 8986b07 fix: align pinned minimum versions with ci (#86)
- 4e6142c fix: restore BRAINTRUST_ENABLE_TRACE_CONSOLE_LOG support lost in v0.1 migration (#67)
v0.4.1
Changelog
- 54cc733 chore(go): update repo to test with go 1.26 (#65)
- 30efdf3 chore: Make sure tags get pushed properly (#62)
- c39afdb chore: release v0.4.1 (#72)
- e0c5bb6 feat: capture max_completion_tokens and reasoning_effort in chat completions metadata (#66)
- 4349f50 feat: capture text parameter in Responses API tracer metadata (#71)
v0.4.0
Changelog
- d0803c3 chore: release v0.4.0 (#61)
- 4bedb0e feat!: split trace/contrib integrations into individual Go modules (#49)
This release contains breaking changes if you were using trace integrations with the Go SDK. See below on how to upgrade.
Upgrade Guide
Tracing integrations under trace/contrib/... are now published as separate Go modules instead of being transitively included by the root SDK module. This reduces unnecessary dependencies for users who only need the core SDK or a small number of integrations.
Who is affected
You only need to take action if your project uses one or more tracing integrations, for example:
github.com/braintrustdata/braintrust-sdk-go/trace/contrib/openaigithub.com/braintrustdata/braintrust-sdk-go/trace/contrib/anthropicgithub.com/braintrustdata/braintrust-sdk-go/trace/contrib/genaigithub.com/braintrustdata/braintrust-sdk-go/trace/contrib/genkitgithub.com/braintrustdata/braintrust-sdk-go/trace/contrib/adkgithub.com/braintrustdata/braintrust-sdk-go/trace/contrib/langchaingogithub.com/braintrustdata/braintrust-sdk-go/trace/contrib/cloudwego/einogithub.com/braintrustdata/braintrust-sdk-go/trace/contrib/github.com/sashabaranov/go-openai
If you only use the core SDK (braintrust, eval, API client, etc.), no migration is required beyond upgrading the root module.
What stays the same
- Import paths do not change
- Application code usually does not need to change
- Only the module/dependency setup changes
How to upgrade
Core SDK only
go get github.com/braintrustdata/braintrust-sdk-go@v0.4.0
go mod tidyCore SDK + specific integrations
Install the root SDK plus each integration you use:
go get github.com/braintrustdata/braintrust-sdk-go@v0.4.0
go get github.com/braintrustdata/braintrust-sdk-go/trace/contrib/openai@v0.4.0
go get github.com/braintrustdata/braintrust-sdk-go/trace/contrib/anthropic@v0.4.0
go mod tidyIf you want the previous “install everything” behavior
Use the new convenience meta-module:
go get github.com/braintrustdata/braintrust-sdk-go/trace/contrib/all@v0.4.0
go mod tidyThis is especially useful for Orchestrion-based auto-instrumentation:
import (
_ "github.com/DataDog/orchestrion"
_ "github.com/braintrustdata/braintrust-sdk-go/trace/contrib/all"
)Before vs after
Before
A single dependency pulled in all integrations transitively:
go get github.com/braintrustdata/braintrust-sdk-goAfter
Install the root SDK plus only the integrations you use:
go get github.com/braintrustdata/braintrust-sdk-go
go get github.com/braintrustdata/braintrust-sdk-go/trace/contrib/openaiOr opt into all integrations explicitly:
go get github.com/braintrustdata/braintrust-sdk-go/trace/contrib/allv0.3.1
Changelog
- e015507 Add time_to_first_token metric to Anthropic integration (#54)
- 5e6c647 Don't set output_json to null when task fails.
- 4084933 Fix Anthropic streaming extended thinking support (#56)
- 1be4a91 Fixed eval trace structure inconsistencies
- e189097 Make sure eval spans are nested properly
- ce40450 Merge pull request #43 from braintrustdata/fix/eval_trace_structure