Skip to content

Various fixes - #6

Merged
rdboyes merged 4 commits into
Presage-Group:mainfrom
JamesWrigley:fixes
Sep 15, 2026
Merged

rdboyes merged 4 commits into
Presage-Group:mainfrom
JamesWrigley:fixes

Conversation

@JamesWrigley

Copy link
Copy Markdown
Contributor

I did a wee audit of the codebase with Claude and fixed a few things that came up, in particular:

  • d5ff9d8 fixes various smaller bugs
  • c09a682 is a slightly larger redesign to ensure that the atexit handler will wait (up to a timeout) for pending messages to be flushed, previously it would exit as soon as the queue had been emptied instead.

Also updated the CI jobs and updated to HTTP.jl v2.

- capture_exception() defaulted to catch_stack()
- The "fake" DSN path called JSON.Parser.parse, which is gone in JSON v1, so
  the dry run mode threw instead of printing anything.
- Attachment items were missing the filename header that sentry requires.
- Transaction item headers declared a length one byte too long since the spec
  says that the newline terminating a payload is not part of it.
- Transactions did not carry the release.
- init() would allow being called twice, which would start a second
- send_worker() task.
- A declined trace sample stored an InhibitTransaction that was never cleared,
  which locked out tracing for the remaining life of the task. It now counts
  open spans like a real transaction and clears itself when the outermost one
  finishes. The exception is set_task_transaction, which deliberately stores
  one that never clears so that the parent's decision holds for the whole life
  of the child task.
clear_queue waited only until the channel was empty, which happens when
send_worker takes the last payload rather than when its POST comes back, so
events captured shortly before the process exited could be silently
dropped. Refactored the code to close the channel and wait for send_worker() to
finish.
@JamesWrigley

Copy link
Copy Markdown
Contributor Author

(bump)

@rdboyes
rdboyes merged commit 89a9ee3 into Presage-Group:main Sep 15, 2026
1 of 2 checks passed
@codecov-commenter

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

@JamesWrigley
JamesWrigley deleted the fixes branch September 15, 2026 13:24
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.

3 participants