metrics 0.14.1 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '08437830e8e7643c85176e29fbb2f3c6290efff4537b37e529b76c6d8d602bce'
4
- data.tar.gz: 1037cc6943319a6a64d5f5ed35224efeda1fd51616bc4df3fb5f718f095e0f4e
3
+ metadata.gz: 2b14356999fd70dc9bc6b5a58d0bb33e10149cffa33d35bea637f97a7f9cc25f
4
+ data.tar.gz: 2555fdcc8a8863a32ece67e26fd937137d023c1515e98b34b268650b213bcbf1
5
5
  SHA512:
6
- metadata.gz: 74597bc51d38149c561b6447811abdd53bbde539ee1011fcd8faff35aa758dfdbc30525696c5916b00cfd54ec9e0ae9c0058711753e2a9def2ed49a58674cd00
7
- data.tar.gz: 596b37c40c112acae9c232894cc155ca421a499e0f5665bfb5281ff88382bfe5e267a52f795f68a54b20882e9c7d7d8763dcc2872c3ae90339279e5d80df589e
6
+ metadata.gz: c31eab39ba38b34ccbf813785a851ebf97474035cc21d24c1c6f51941cbff3db74df8d76fa41597a733d5f6139eb34caaa0fd138d0a277279dda0307e4ffa0a6
7
+ data.tar.gz: 934c4c0a70669c73a7f8c880c4c10ba0b67a92f0322b64b7f3bfc45b395161a1c929462cc5bf8950f2a2a04f0d6b5169cbd7b98a4376ce59222bad63c4b736f3
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/metrics/tags.rb CHANGED
@@ -5,14 +5,22 @@
5
5
 
6
6
  module Metrics
7
7
  module Tags
8
- def self.normalize(tags)
9
- return nil unless tags&.any?
8
+ def self.normalize(tags, into = nil)
9
+ return into unless tags&.any?
10
10
 
11
- if tags.is_a?(Hash)
12
- tags = tags.map{|key, value| "#{key}:#{value}"}
11
+ into ||= []
12
+
13
+ if tags.is_a?(Array)
14
+ into.concat(tags)
15
+ else
16
+ tags.each do |key, value|
17
+ if value
18
+ into << "#{key}:#{value}"
19
+ end
20
+ end
13
21
  end
14
22
 
15
- return Array(tags)
23
+ return into
16
24
  end
17
25
  end
18
26
  end
@@ -4,5 +4,5 @@
4
4
  # Copyright, 2021-2025, by Samuel Williams.
5
5
 
6
6
  module Metrics
7
- VERSION = "0.14.1"
7
+ VERSION = "0.15.0"
8
8
  end
data/readme.md CHANGED
@@ -23,6 +23,10 @@ Please see the [project documentation](https://socketry.github.io/metrics/) for
23
23
 
24
24
  Please see the [project releases](https://socketry.github.io/metrics/releases/index) for all releases.
25
25
 
26
+ ### v0.15.0
27
+
28
+ - Add `into = nil` parameter to `Metrics::Tags.normalize(tags, into = nil)` to allow reusing an existing array.
29
+
26
30
  ### v0.14.0
27
31
 
28
32
  - Don't call `prepare` in `metrics/provider.rb`. It can cause circular loading warnings.
data/releases.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Releases
2
2
 
3
+ ## v0.15.0
4
+
5
+ - Add `into = nil` parameter to `Metrics::Tags.normalize(tags, into = nil)` to allow reusing an existing array.
6
+
3
7
  ## v0.14.0
4
8
 
5
9
  - Don't call `prepare` in `metrics/provider.rb`. It can cause circular loading warnings.
data.tar.gz.sig CHANGED
@@ -1,2 +1,2 @@
1
- ft$q�%��0�&����}>�l��(\�_��`�)�?Lx����iCWdr{�V[5�a�`'u� |�)�����##�o�/G�Te�X�i��A��ӓ��,&��R�{A��"9&!}���KNc���a2���8Ʈ��9.��4
2
- +XE��a���NB?A�Z��;]�c���B� �������f4b��MXOTv ,1��V� ޓw ��׮��/Z���[M����j��&p"ohV�Ϳ��e7��QkC��:��R�[$e�W�O�H}�����8E�c|�������#���"��4��Mu�"xz��\��Wz�� !u��m��:n���q��Ӵ���b��K7�7 i��D�M/
1
+ j=�&Y�x��o��Ļ����ɔ��ʼ���� �����>����ة(��SL�E�o��LO�⑴,�a����ߪ�DWع��j��pv��=U��8��;�����~I�;x0�;���8�ߣ �5�sB.E��i��x��A:a ]ӽěv�<�p��/}\�*򳿠@T�^�%Kq\c+^��ɾ4�߀�'|$��׶jȸ�R�$Q��
2
+ ����r���J�.Ku4*��!�r-IkI��-�A��oiBAh@�iSbZ�"��v4r;�2Y�=�18M��:�j�I-���m ��;|x[���`������"����6���݅�g��z=ݨ�_�����{
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metrics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.1
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
metadata.gz.sig CHANGED
Binary file