chore(deps): bump langfuse from 3.14.5 to 4.0.4#3129
Conversation
🔍 Dependency Analysis Summary
Overall Risk Assessment: 🔴 HIGH — This is a major version bump with multiple breaking API changes that directly affect OCS's tracing integration. 📋 Detailed Changelog ReviewPackage: Key Changes:
Breaking Changes:
Migration Guide: langfuse/langfuse-python#1486
|
Bumps [langfuse](https://github.com/langfuse/langfuse) from 3.14.5 to 4.0.4. - [Release notes](https://github.com/langfuse/langfuse/releases) - [Commits](https://github.com/langfuse/langfuse/commits) --- updated-dependencies: - dependency-name: langfuse dependency-version: 4.0.4 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
46557d0 to
a58b4bb
Compare
🔍 Dependency Analysis Summary
Overall Risk: 🔴 HIGH — Multiple breaking changes require code updates before merging. 📋 Detailed Changelog ReviewPackage: langfuse (3.14.5 → 4.5.0)Architectural Shift: v4 is a ground-up rewrite built on OpenTelemetry (OTel). The SDK now depends on Key Changes:
Security Fixes: None noted in this release series. Migration guide: https://langfuse.com/docs/observability/sdk/upgrade-path/python-v3-to-v4
|
Breaking changes in langfuse 3→4:
- FernLangfuse renamed to LangfuseAPI
- start_as_current_span() → start_as_current_observation()
- update_trace() removed; use propagate_attributes() context manager instead
(must wrap the outer observation to set session_id/user_id on root span)
- span.update(tags=...) no longer supported; use
_create_trace_tags_via_ingestion() for trace-level tags
- langfuse.api.resources.{commons,ingestion}.types namespace dropped;
now langfuse.api.{commons,ingestion}.types
Closes #3129
In v4, client.get_trace_url() makes a blocking HTTP call to fetch the project_id. If that raises, TracingService's broad except used to drop the entire langfuse entry from trace_info, so ChatMessage.metadata ended up with no langfuse trace data. Isolate the URL fetch so trace_id still lands in metadata regardless. Capture the langfuse trace id via client.get_current_trace_id() on context entry and reuse it for get_trace_metadata() and add_trace_tags(). Add regression tests that exercise the TracingService -> LangFuseTracer path with a realistic mock client, including the URL-fetch failure case. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
fix: update OCS langfuse integration for v4 SDK
Bumps langfuse from 3.14.5 to 4.0.4.
Release notes
Sourced from langfuse's releases.
... (truncated)
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)