karafka-core 2.0.11 → 2.0.13
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.ruby-version +1 -1
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +9 -8
- data/README.md +2 -1
- data/karafka-core.gemspec +1 -1
- data/lib/karafka/core/taggable/tags.rb +52 -0
- data/lib/karafka/core/taggable.rb +17 -0
- data/lib/karafka/core/version.rb +1 -1
- data/lib/karafka-core.rb +3 -0
- data/renovate.json +6 -0
- data.tar.gz.sig +0 -0
- metadata +8 -5
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a938e6718cc3ecdc211ec088db5ab5902864f5bacadd3289fb2b87491378c31c
|
4
|
+
data.tar.gz: aa170f595eaab2748bd8e8455eb82f0b32b66020553e166bbc876a2d5f8e06c4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz: '
|
6
|
+
metadata.gz: e6e442ddb36335271c9b848a28c0f8ff97a3921384b0b11cb91cbd03f3c83871759482f4bdf931e51bb9cfdf58be04aa20b72f79224113ffba9000842691ea1d
|
7
|
+
data.tar.gz: '08f3a05acc898b7f27d9aa9b3ddbe450142334710670f0d39e0de1bee4f942a5c7ebaf25279b177b45ea165ce5bd654403bc34eae598170ac2f49331ba6dd4ef'
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.2.
|
1
|
+
3.2.2
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# Karafka core changelog
|
2
2
|
|
3
|
+
## 2.0.13 (2023-05-26)
|
4
|
+
- Set minimum `karafka-rdkafka` on `0.12.3`.
|
5
|
+
|
6
|
+
## 2.0.12 (2023-02-23)
|
7
|
+
- Introduce ability to tag certain objects by including the `Karafka::Core::Taggable` module.
|
8
|
+
|
3
9
|
## 2.0.11 (2023-02-12)
|
4
10
|
- Set minimum `karafka-rdkafka` on `0.12.1`.
|
5
11
|
|
data/Gemfile.lock
CHANGED
@@ -1,20 +1,20 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
karafka-core (2.0.
|
4
|
+
karafka-core (2.0.13)
|
5
5
|
concurrent-ruby (>= 1.1)
|
6
|
-
karafka-rdkafka (>= 0.12.
|
6
|
+
karafka-rdkafka (>= 0.12.3)
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: https://rubygems.org/
|
10
10
|
specs:
|
11
|
-
activesupport (7.0.4.
|
11
|
+
activesupport (7.0.4.3)
|
12
12
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
13
13
|
i18n (>= 1.6, < 2)
|
14
14
|
minitest (>= 5.1)
|
15
15
|
tzinfo (~> 2.0)
|
16
16
|
byebug (11.1.3)
|
17
|
-
concurrent-ruby (1.2.
|
17
|
+
concurrent-ruby (1.2.2)
|
18
18
|
diff-lcs (1.5.0)
|
19
19
|
docile (1.4.0)
|
20
20
|
factory_bot (6.2.1)
|
@@ -22,12 +22,12 @@ GEM
|
|
22
22
|
ffi (1.15.5)
|
23
23
|
i18n (1.12.0)
|
24
24
|
concurrent-ruby (~> 1.0)
|
25
|
-
karafka-rdkafka (0.12.
|
25
|
+
karafka-rdkafka (0.12.3)
|
26
26
|
ffi (~> 1.15)
|
27
27
|
mini_portile2 (~> 2.6)
|
28
28
|
rake (> 12)
|
29
29
|
mini_portile2 (2.8.1)
|
30
|
-
minitest (5.
|
30
|
+
minitest (5.18.0)
|
31
31
|
rake (13.0.6)
|
32
32
|
rspec (3.12.0)
|
33
33
|
rspec-core (~> 3.12.0)
|
@@ -38,7 +38,7 @@ GEM
|
|
38
38
|
rspec-expectations (3.12.2)
|
39
39
|
diff-lcs (>= 1.2.0, < 2.0)
|
40
40
|
rspec-support (~> 3.12.0)
|
41
|
-
rspec-mocks (3.12.
|
41
|
+
rspec-mocks (3.12.5)
|
42
42
|
diff-lcs (>= 1.2.0, < 2.0)
|
43
43
|
rspec-support (~> 3.12.0)
|
44
44
|
rspec-support (3.12.0)
|
@@ -52,6 +52,7 @@ GEM
|
|
52
52
|
concurrent-ruby (~> 1.0)
|
53
53
|
|
54
54
|
PLATFORMS
|
55
|
+
arm64-darwin-21
|
55
56
|
x86_64-linux
|
56
57
|
|
57
58
|
DEPENDENCIES
|
@@ -62,4 +63,4 @@ DEPENDENCIES
|
|
62
63
|
simplecov
|
63
64
|
|
64
65
|
BUNDLED WITH
|
65
|
-
2.4.
|
66
|
+
2.4.12
|
data/README.md
CHANGED
@@ -6,11 +6,12 @@
|
|
6
6
|
|
7
7
|
Karafka-Core contains toolset of small support modules used throughout the [Karafka](https://github.com/karafka/karafka/) ecosystem.
|
8
8
|
|
9
|
-
It includes
|
9
|
+
It includes:
|
10
10
|
|
11
11
|
- `Karafka::Core::Monitoring` - default instrumentation and abstraction that allows to use either itself, `dry-monitor` or `ActiveSupport::Notifications`.
|
12
12
|
- `Karafka::Core::Configurable` - configuration engine inspired by `dry-config` with similar but simplified API.
|
13
13
|
- `Karafka::Core::Contractable` - contracts inspired by `dry-validation` but with simplified API.
|
14
|
+
- `Karafka::Core::Taggable` - adds ability to attach `#tags` to objects for extra labeling.
|
14
15
|
|
15
16
|
## Note on contributions
|
16
17
|
|
data/karafka-core.gemspec
CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.licenses = %w[MIT]
|
18
18
|
|
19
19
|
spec.add_dependency 'concurrent-ruby', '>= 1.1'
|
20
|
-
spec.add_dependency 'karafka-rdkafka', '>= 0.12.
|
20
|
+
spec.add_dependency 'karafka-rdkafka', '>= 0.12.3'
|
21
21
|
|
22
22
|
spec.required_ruby_version = '>= 2.6.0'
|
23
23
|
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Karafka
|
4
|
+
module Core
|
5
|
+
module Taggable
|
6
|
+
# This allows us to collect tags about given object. We attach name to each tag, because we
|
7
|
+
# may want to replace given tag with a different one and we need to have a reference of
|
8
|
+
# what we want to replace
|
9
|
+
class Tags
|
10
|
+
# Creates new tags accumulator
|
11
|
+
def initialize
|
12
|
+
@accu = {}
|
13
|
+
end
|
14
|
+
|
15
|
+
# Adds a tag with a given name to tags
|
16
|
+
# @param name [Symbol] name we want to use for a given tag
|
17
|
+
# @param tag [#to_s] any object that can be converted into a string via `#to_s`
|
18
|
+
def add(name, tag)
|
19
|
+
@accu[name] = tag.to_s
|
20
|
+
end
|
21
|
+
|
22
|
+
# Removes all the tags
|
23
|
+
def clear
|
24
|
+
@accu.clear
|
25
|
+
end
|
26
|
+
|
27
|
+
# Removes a tag with a given name
|
28
|
+
# @param name [Symbol] name of the tag
|
29
|
+
def delete(name)
|
30
|
+
@accu.delete(name)
|
31
|
+
end
|
32
|
+
|
33
|
+
# @return [Array<String>] all unique tags registered
|
34
|
+
def to_a
|
35
|
+
@accu.values.tap(&:uniq!)
|
36
|
+
end
|
37
|
+
|
38
|
+
# @param _args [Object] anything that the standard `to_json` accepts
|
39
|
+
# @return [String] json representation of tags
|
40
|
+
def to_json(*_args)
|
41
|
+
to_a.to_json
|
42
|
+
end
|
43
|
+
|
44
|
+
# @param _args [Object] anything that the standard `as_json` accepts
|
45
|
+
# @return [Array<String>] array that can be converted to json
|
46
|
+
def as_json(*_args)
|
47
|
+
to_a
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Karafka
|
4
|
+
module Core
|
5
|
+
# Namespace related to extension allowing to attach tags to any object.
|
6
|
+
# It can be used to assign tags in runtime to objects and use those tags in metrics, reporting
|
7
|
+
# and other places.
|
8
|
+
#
|
9
|
+
# Tags will be converted to strings when they are added
|
10
|
+
module Taggable
|
11
|
+
# @return [::Karafka::Core::Taggable::Tags] tags object
|
12
|
+
def tags
|
13
|
+
@tags ||= Taggable::Tags.new
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
data/lib/karafka/core/version.rb
CHANGED
data/lib/karafka-core.rb
CHANGED
data/renovate.json
ADDED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: karafka-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maciej Mensfeld
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
Qf04B9ceLUaC4fPVEz10FyobjaFoY4i32xRto3XnrzeAgfEe4swLq8bQsR3w/EF3
|
36
36
|
MGU0FeSV2Yj7Xc2x/7BzLK8xQn5l7Yy75iPF+KP3vVmDHnNl
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date: 2023-
|
38
|
+
date: 2023-05-26 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: concurrent-ruby
|
@@ -57,14 +57,14 @@ dependencies:
|
|
57
57
|
requirements:
|
58
58
|
- - ">="
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: 0.12.
|
60
|
+
version: 0.12.3
|
61
61
|
type: :runtime
|
62
62
|
prerelease: false
|
63
63
|
version_requirements: !ruby/object:Gem::Requirement
|
64
64
|
requirements:
|
65
65
|
- - ">="
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version: 0.12.
|
67
|
+
version: 0.12.3
|
68
68
|
description: A toolset of small support modules used throughout the Karafka ecosystem
|
69
69
|
email:
|
70
70
|
- contact@karafka.io
|
@@ -111,8 +111,11 @@ files:
|
|
111
111
|
- lib/karafka/core/monitoring/notifications.rb
|
112
112
|
- lib/karafka/core/monitoring/statistics_decorator.rb
|
113
113
|
- lib/karafka/core/patches/rdkafka/bindings.rb
|
114
|
+
- lib/karafka/core/taggable.rb
|
115
|
+
- lib/karafka/core/taggable/tags.rb
|
114
116
|
- lib/karafka/core/version.rb
|
115
117
|
- log/.gitkeep
|
118
|
+
- renovate.json
|
116
119
|
homepage: https://karafka.io
|
117
120
|
licenses:
|
118
121
|
- MIT
|
@@ -139,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
139
142
|
- !ruby/object:Gem::Version
|
140
143
|
version: '0'
|
141
144
|
requirements: []
|
142
|
-
rubygems_version: 3.4.
|
145
|
+
rubygems_version: 3.4.10
|
143
146
|
signing_key:
|
144
147
|
specification_version: 4
|
145
148
|
summary: Karafka ecosystem core modules
|
metadata.gz.sig
CHANGED
Binary file
|