Releases: apple/swift-metrics
2.4.0
What's Changed
- Update CI by @yim-lee in #124
 - Use UUID instead of NSUUID in MetricsTests by @fabianfett in #126
 - Add Package.resolved to .gitignore by @fabianfett in #125
 - add "meter" - a new type of metric and metric handler by @tomerd in #123
 - Use the MetricsTestKit in the MetricsTests rather than using a copy of the TestMetrics utilities by @hamzahrmalik in #128
 - MetricsTestKit: expose all metrics publicly. This allows users to run checks on counters when they might not know the exact label by @hamzahrmalik in #127
 - Make 'values' on TestCounter, TestRecorder and TestMeter public by @hamzahrmalik in #129
 
New Contributors
- @hamzahrmalik made their first contribution in #128
 
Full Changelog: 2.3.4...2.4.0
2.3.4
2.3.3
2.3.2
2.3.1
What's Changed
- Expose 
MetricsTestKitas a product by @fabianfett in #111 
New Contributors
- @fabianfett made their first contribution in #111
 
Full Changelog: 2.3.0...2.3.1
2.3.0
- #106 Introduced new 
MetricsTestKitmodule that allows asserting certain metrics have been emitted etc.- we will provide more documentation soon; meanwhile you can use this test as reference for how to use the testkit here's how one uses it for those curious https://github.com/apple/swift-cluster-membership/blob/main/Tests/SWIMTests/SWIMMetricsTests.swift
 
 
2.2.0
2.1.1
A minor new API to enable SystemMetrics from the new swift-metrics-extras (coming soon) repository.
SemVer Minor
New API:
- Expose 
MetricsSystem.withWriterLockso it can be invoked by alternate "bootstrap" functions, such as SystemMetrics; #86 Thanks @MrLotU ! 
For details on the changes please refer to the 0.2.1 milestone
2.1.0
SemVer Minor
New API:
Timer.recordInterval(since:)for easier reporting of time since a "start"DispatchTime#83 - thank you @slashmo!
SemVer Patch
- Metrics now include their labels when printed to ease debugging #82
 
For details on the changes please refer to the 0.2.1 milestone
swift-metrics 2.0.0
SemVer Major
- Add microseconds to the TimeUnit enum #64
 
Important note: The 1.x (previous) version of swift-metrics included a TimeUnit enum which was missing a microseconds case. Since adding a case to an enum is an API breaking change, we needed to release
this change as sever 2.0.0. We also used this opportunity to change the enum to a struct so we can add more time unit without breaking the API. That said, since 1.x and 2.x are almost API compatible, TimeUnit is not used by swift-metrics directly and only used by few libraries that depend on it, most libraries should use the following dependency to avoid a fragmentation of ecosystem:
.package(url: "https://github.com/apple/swift-metrics.git", "1.0.0" ..< "3.0.0")