Skip to content

feat!: exception level, keyword-only args, uuid and geoip - #1046

Open
eli-r-ph wants to merge 6 commits into
v1-sync-mainfrom
v1-capture-api-fixes
Open

eli-r-ph wants to merge 6 commits into
v1-sync-mainfrom
v1-capture-api-fixes

Conversation

@eli-r-ph

@eli-r-ph eli-r-ph commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

💡 Motivation and Context

Stacked on #1044. Five small 8.0 fixes, one commit each, so request arguments, exceptions, session IDs, uuids and GeoIP behave like the other v1 SDKs.

Changes

  • request.post and request.flags take keyword-only arguments after path or host, so a 7.x positional call raises TypeError instead of binding the wrong parameter.
  • capture_exception(level=...) sets $exception_level; an unknown level falls back to error.
  • Caller properties can no longer override the reserved exception properties.
  • A non-string $session_id or $window_id is dropped with one warning that never includes the value.
  • An invalid caller uuid is replaced with a v7 uuid and one warning that never includes the value.
  • A per-call disable_geoip beats context tags and super_properties, and False is sent as $geoip_disable: false.
  • Migration guide and five changesets updated.

💚 How did you test it?

  • Unit tests on both clients cover each fix, including a disable_geoip precedence table.
  • The uuid and GeoIP tests fail against the previous commit.

🤖 Agent context

Autonomy: Human-driven (agent-assisted)

Written with Cursor (Claude Opus 5.5) under the direction of the assignee.

🤖 Generated with Claude Code

@eli-r-ph eli-r-ph self-assigned this Oct 10, 2026
@eli-r-ph
eli-r-ph marked this pull request as ready for review October 10, 2026 17:11
@eli-r-ph
eli-r-ph requested a review from a team as a code owner October 10, 2026 17:11
@eli-r-ph eli-r-ph changed the title feat: exception level, keyword-only request args and session id warning feat: exception level, keyword-only request args, uuid and geoip fixes Oct 10, 2026
@eli-r-ph
eli-r-ph force-pushed the v1-capture-api-fixes branch from 6982671 to 0c99129 Compare October 10, 2026 23:35
An invalid caller uuid is still replaced with a generated UUIDv7, but the
SDK now logs one warning that names the rule instead of an error that
echoes the value. An empty string counts as unset and gets a generated
uuid without a log. Client and AsyncClient share one helper.
A disable_geoip argument now fills $geoip_disable as the event's own
value: above context tags, super_properties and the client setting, and
below a $geoip_disable in the call's properties. disable_geoip=False now
sends $geoip_disable: false. Client and AsyncClient share the layer in
_build_event_defaults.
@eli-r-ph
eli-r-ph force-pushed the v1-capture-api-fixes branch from 0c99129 to 161a339 Compare October 11, 2026 20:17
@eli-r-ph eli-r-ph changed the title feat: exception level, keyword-only request args, uuid and geoip fixes feat!: exception level, keyword-only args, uuid and geoip Oct 13, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants