Nothing changed yet.
Add Windows wheels for 3.9 and 3.10.
Add support for Python 3.10.
Drop support for Python 3.5.
Add aarch64 binary wheels.
Add support for Python 3.8 and 3.9.
Move to GitHub Actions from Travis CI.
Support PyHamcrest 1.10 and later. See issue 26.
FakeStatsDClientfor testing is now always true whether or not any observations have been seen, like the normal clients. See issue.
Drop support for EOL Python 2.6, 3.2, 3.3 and 3.4.
Add support for Python 3.5, 3.6, and 3.7.
Compile the performance-sensitive parts with Cython, leading to a 10-30% speed improvement. See https://github.com/zodb/perfmetrics/issues/17.
Caution: Metric names are enforced to be native strings (as a result of Cython compilation); they’ve always had to be ASCII-only but previously Unicode was allowed on Python 2. This is usually automatically the case when used as a decorator. On Python 2 using
from __future__ import unicode_literalscan cause problems (raising TypeError) when manually constructing
Metricobjects. A quick workaround is to set the environment variable
PERFMETRICS_PURE_PYTHONbefore importing perfmetrics.
Make decorated functions and methods configurable at runtime, not just compile time. See https://github.com/zodb/perfmetrics/issues/11.
Include support for testing applications instrumented with perfmetrics in
perfmetrics.testing. This was previously released externally as
nti.fakestatsd. See https://github.com/zodb/perfmetrics/issues/9.
PERFMETRICS_DISABLE_DECORATORenvironment variable when
perfmetricsis imported, and if it is set, make the decorators
@MetricMod(...)return the function unchanged. This can be helpful for certain kinds of introspection tests. See https://github.com/zodb/perfmetrics/issues/15
@MetricModdecorator, which changes the name of metrics in a given context. For example,
@MetricMod('xyz.%s')adds a prefix.
Removed the “gauge suffix” feature. It was unnecessarily confusing.
Timing metrics produced by
@Metricnow have a “.t” suffix by default to avoid naming conflicts.
Added ‘perfmetrics.tween’ and ‘perfmetrics.wsgi’ stats for measuring request timing and counts.
Added an optional Pyramid tween and a similar WSGI filter app that sets up the Statsd client for each request.
Optimized the use of reduced sample rates.
Metriccan now be used as either a decorator or a context manager.
Made the signature of StatsdClient more like James Socol’s StatsClient.
Fixed package metadata.