Skip to content
This repository was archived by the owner on Aug 13, 2025. It is now read-only.

Releases: honeycombio/beeline-python

v2.15.0

18 Nov 01:30
aeb2c2b
Compare
Choose a tag to compare

Improvements:

  • Update Lambda wrapper to allow omission of input/output fields #130 (thank you, @fitzoh!)
  • Add "request.route" field for Django middleware (thank you, @sjoerdjob!)

v2.14.0

06 Nov 16:09
58b668c
Compare
Choose a tag to compare

Improvements:

  • Adds support for dataset when parsing honeycomb propagation headers #133

v2.13.1

15 Sep 21:19
12a2513
Compare
Choose a tag to compare

2.13.1

### Fixes

  • Don't try to use an non-initialised beeline instance in django middleware #126

Project Maintenance

  • Add .editorconfig to help consolidate on IDE styling #127

v2.13.0

10 Sep 18:03
e2da717
Compare
Choose a tag to compare

2.13.0

Features

We have added new functionality for http_trace_parse_hook and http_trace_propagation_hook. These hooks allow beeline users
to parse incoming headers, as well as add outgoing headers, allowing for interoperability between Honeycomb,
OpenTelemetry (W3C) and other tracing formats.

  • New beeline configuration parameters for http_trace_parse_hook and http_trace_propagation_hook
  • New propagate_and_start_trace function for use by middleware to invoke the http_trace_parse_hook
  • New beeline.propagation package to centralize propagation-related classes and functions.
  • beeline.propagation.honeycomb package contains hooks to support parsing and propagation using honeycomb headers.
  • beeline.propagation.w3c package contains hooks to support parsing and propagation using w3c headers.

Deprecation Notice

  • Deprecated the existing beeline.marshal_trace_context, and migrated all usage to new
    beeline.propagation.honeycomb functions. beeline.marshal_trace_context will be removed when the next major version of the beeline is released.

Implementation details

  • Implemented beeline.propagation.Request classes for middleware to aid in support of header and propagation hooks.
  • Migrateed existing middleware to use new beeline.propagation classes and functions to support http_trace_parse_hooks.
  • Centralized duplicated code for WSGI variants (Flask, Bottle, Werkzeug) into a single location.
  • Added http_trace_propagation_hook support to requests and urllib.

Fixes

  • Fixed a bug where urllib.request.urlopen would fail if given a string URL as an argument.

v2.12.2

29 Jul 17:13
ad6af27
Compare
Choose a tag to compare

Improvements

  • Trace IDs and Span IDs now correspond to W3C trace context specification. See https://www.w3.org/TR/trace-context/
  • Now using poetry for packaging and dependency management.
  • Tests now exclude test_async on Python versions which don't support async instead of requiring maintenance of an includelist of tests.
  • No longer use pyflask in tests as pylint covers all issues checked by pyflask

Misc

  • Files have been reformatted to pass pycodestyle (PEP8)
  • Now enforce passing pycodestyle in CI.
  • Now do CI testing against Python 3.8.

v2.5.0

26 Feb 18:49
8e43efb
Compare
Choose a tag to compare
  • Django middleware now logs the view name on incoming requests, in addition to path, http method, etc.

v2.4.7

12 Feb 21:45
a1301d4
Compare
Choose a tag to compare
  • Updates dependency on libhoney to 1.7.0, which includes a fallback handler for types not handled by the default json encoder.

v2.4.6

31 Jan 00:33
d2be775
Compare
Choose a tag to compare

Safer handling of UTF-8 data in exceptions when adding exceptions to events.

v2.4.5

23 Jan 18:15
07b70c4
Compare
Choose a tag to compare
  • Fixes issue where traced wrapper would not work if beeline was initialized after traced function was declared.

v2.4.4

22 Jan 19:14
ea2877f
Compare
Choose a tag to compare
  • enables tracer context manager to work when the beeline is not initialized
  • traced wrapper now wraps functions properly using functools.wraps