Skip to content

v1.1.0

Latest
Compare
Choose a tag to compare
@zalgonoise zalgonoise released this 15 Apr 00:10
· 1 commit to master since this release

v1.1.0

This set of changes focuses on removing the observability decorators (declared as wrapping types for a given interface) with elements (for logging, metrics collection, and tracing) within each data structure. These are configured by default with no-ops.

The new strategy removes easily-avoidable pitfalls:

  • the added logic to find an inner type within a set of nested interfaces can be nasty, and easily avoidable. This makes it so that wrapping the interfaces is done in the constructor using private types so that the order of the decorators is assured.
  • the nested interface types (wrappers on top of wrappers of the same base interface) make it very ugly on a debugging perspective; we need to expand these types to get to the base interface type.

There are no breaking API changes, as the original symbols and signatures are preserved (including the former AddTraces, AddMetrics and AddLogs functions for each type).

What's Changed

Full Changelog: v1.0.2...v1.1.0