omnes 0.2.1 → 0.2.3
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
- data/.github/workflows/test.yml +1 -1
- data/.rubocop.yml +2 -2
- data/.ruby-version +1 -0
- data/CHANGELOG.md +24 -2
- data/Gemfile +4 -0
- data/README.md +4 -4
- data/lib/omnes/errors.rb +1 -1
- data/lib/omnes/subscriber.rb +1 -1
- data/lib/omnes/version.rb +1 -1
- data/omnes.gemspec +4 -6
- metadata +20 -47
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: edb52f5c0143df22dfd182bd32238a5a72534f7379c2a33977ad7831c998afc7
|
|
4
|
+
data.tar.gz: a641c5b3ac027a2a3a753a00b8410c86973ffd97f988c37210f38f36d40d895e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: befa2311126f0e8141c2ff00dbc9a29a61b77ee912720c0a9a31fdb487c6baaea4553cdbeab0a566fd16eaca2191ebeaf08cd52b8a12c7536e565aff7137cf84
|
|
7
|
+
data.tar.gz: d623ec5752e2c9821db13b67e889bc1c542210fcf05aadbd32401e5effa860d8b4763c2b4f1ee732458e61c263201cba155ca00e5938bb74c38ba865e7e6750e
|
data/.github/workflows/test.yml
CHANGED
data/.rubocop.yml
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
AllCops:
|
|
2
|
-
TargetRubyVersion:
|
|
2
|
+
TargetRubyVersion: 3.0
|
|
3
3
|
NewCops: enable
|
|
4
4
|
SuggestExtensions: false
|
|
5
5
|
|
|
@@ -29,7 +29,7 @@ Layout/LineLength:
|
|
|
29
29
|
Max: 120
|
|
30
30
|
|
|
31
31
|
Naming/MethodName:
|
|
32
|
-
|
|
32
|
+
AllowedPatterns:
|
|
33
33
|
- '.*Type'
|
|
34
34
|
|
|
35
35
|
Lint/ConstantDefinitionInBlock:
|
data/.ruby-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
4.0.1
|
data/CHANGELOG.md
CHANGED
|
@@ -4,7 +4,27 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
5
5
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
6
|
|
|
7
|
-
## Unreleased
|
|
7
|
+
## [Unreleased]
|
|
8
|
+
|
|
9
|
+
## [0.2.3] - 2026-02-06
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- Add Ruby 3.2 to the test matrix [#7](https://github.com/nebulab/omnes/pull/7).
|
|
13
|
+
- Add benchmark and `ostruct` dependencies [#11](https://github.com/nebulab/omnes/pull/11).
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
- Update Ruby versions under test (Ruby 4 compatibility) [#11](https://github.com/nebulab/omnes/pull/11).
|
|
17
|
+
- Stop supporting old Rubies [#9](https://github.com/nebulab/omnes/pull/9).
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
- Fix RuboCop linting violation [#12](https://github.com/nebulab/omnes/pull/12).
|
|
21
|
+
- Fix Style/RedundantConstantBase violations [#7](https://github.com/nebulab/omnes/pull/7).
|
|
22
|
+
- Correct README example [#8](https://github.com/nebulab/omnes/pull/8).
|
|
23
|
+
|
|
24
|
+
## [0.2.2] - 2022-05-03
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
- Support Ruby 2.5 & 2.6 [#6](https://github.com/nebulab/omnes/pull/6).
|
|
8
28
|
|
|
9
29
|
## [0.2.1] - 2022-04-19
|
|
10
30
|
|
|
@@ -23,7 +43,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
23
43
|
|
|
24
44
|
## [0.1.0] - 2022-03-23
|
|
25
45
|
|
|
26
|
-
[Unreleased]: https://github.com/nebulab/omnes/compare/v0.2.
|
|
46
|
+
[Unreleased]: https://github.com/nebulab/omnes/compare/v0.2.3...HEAD
|
|
47
|
+
[0.2.3]: https://github.com/nebulab/omnes/compare/v0.2.2...v0.2.3
|
|
48
|
+
[0.2.2]: https://github.com/nebulab/omnes/compare/v0.2.1...v0.2.2
|
|
27
49
|
[0.2.1]: https://github.com/nebulab/omnes/compare/v0.2.0...v0.2.1
|
|
28
50
|
[0.2.0]: https://github.com/nebulab/omnes/compare/v0.1.0...v0.2.0
|
|
29
51
|
[0.1.0]: https://github.com/nebulab/omnes/releases/tag/v0.1.0
|
data/Gemfile
CHANGED
|
@@ -5,6 +5,10 @@ source "https://rubygems.org"
|
|
|
5
5
|
# Specify your gem's dependencies in omnes.gemspec
|
|
6
6
|
gemspec
|
|
7
7
|
|
|
8
|
+
gem "activejob"
|
|
8
9
|
gem "rake", "~> 12.0"
|
|
10
|
+
gem "redcarpet", "~> 3.5"
|
|
9
11
|
gem "rspec", "~> 3.0"
|
|
10
12
|
gem "rubocop", "~> 1.25", require: false
|
|
13
|
+
gem "sidekiq", "~> 6.4"
|
|
14
|
+
gem "yard", "~> 0.9"
|
data/README.md
CHANGED
|
@@ -162,7 +162,7 @@ class LogEventsSubscription
|
|
|
162
162
|
end
|
|
163
163
|
|
|
164
164
|
def call(event)
|
|
165
|
-
logger.info("Event #{event.
|
|
165
|
+
logger.info("Event #{event.omnes_event_name} published")
|
|
166
166
|
end
|
|
167
167
|
end
|
|
168
168
|
|
|
@@ -176,7 +176,7 @@ Custom event matchers can be defined. A matcher is something responding to
|
|
|
176
176
|
to match or ignore the event.
|
|
177
177
|
|
|
178
178
|
```ruby
|
|
179
|
-
ORDER_EVENTS_MATCHER = ->(event) { event.
|
|
179
|
+
ORDER_EVENTS_MATCHER = ->(event) { event.omnes_event_name.start_with?(:order) }
|
|
180
180
|
|
|
181
181
|
bus.subscribe_with_matcher(ORDER_EVENTS_MATCHER) do |event|
|
|
182
182
|
# ...
|
|
@@ -196,7 +196,7 @@ identifier needs to be a `Symbol`:
|
|
|
196
196
|
|
|
197
197
|
```ruby
|
|
198
198
|
bus.subscribe(:order_created, OrderCreationEmailSubscription.new, id: :order_created_email)
|
|
199
|
-
subscription = bus.subscription(:
|
|
199
|
+
subscription = bus.subscription(:order_created_email)
|
|
200
200
|
```
|
|
201
201
|
|
|
202
202
|
## Event subscribers
|
|
@@ -246,7 +246,7 @@ class LogEventsSubscriber
|
|
|
246
246
|
end
|
|
247
247
|
|
|
248
248
|
def log_event(event)
|
|
249
|
-
logger.info("Event #{event.
|
|
249
|
+
logger.info("Event #{event.omnes_event_name} published")
|
|
250
250
|
end
|
|
251
251
|
end
|
|
252
252
|
```
|
data/lib/omnes/errors.rb
CHANGED
data/lib/omnes/subscriber.rb
CHANGED
|
@@ -182,7 +182,7 @@ module Omnes
|
|
|
182
182
|
# @raise [Omnes::Subscriber::DuplicateSubscriptionAttemptError] when
|
|
183
183
|
# trying to subscribe to the same event with the same method more than once
|
|
184
184
|
def subscribe_to(bus)
|
|
185
|
-
self.class.instance_variable_get(:@_state).
|
|
185
|
+
self.class.instance_variable_get(:@_state).(bus, self)
|
|
186
186
|
end
|
|
187
187
|
end
|
|
188
188
|
|
data/lib/omnes/version.rb
CHANGED
data/omnes.gemspec
CHANGED
|
@@ -17,7 +17,10 @@ Gem::Specification.new do |spec|
|
|
|
17
17
|
MSG
|
|
18
18
|
spec.homepage = "https://github.com/nebulab/omnes"
|
|
19
19
|
spec.license = "MIT"
|
|
20
|
-
spec.required_ruby_version = Gem::Requirement.new(">=
|
|
20
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 3.0.0")
|
|
21
|
+
|
|
22
|
+
spec.add_dependency "benchmark"
|
|
23
|
+
spec.add_dependency "ostruct"
|
|
21
24
|
|
|
22
25
|
spec.metadata["allowed_push_host"] = "https://rubygems.org"
|
|
23
26
|
|
|
@@ -35,9 +38,4 @@ Gem::Specification.new do |spec|
|
|
|
35
38
|
spec.bindir = "exe"
|
|
36
39
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
37
40
|
spec.require_paths = ["lib"]
|
|
38
|
-
|
|
39
|
-
spec.add_development_dependency "activejob", "~> 7.0"
|
|
40
|
-
spec.add_development_dependency "redcarpet", "~> 3.5"
|
|
41
|
-
spec.add_development_dependency "sidekiq", "~> 6.4"
|
|
42
|
-
spec.add_development_dependency "yard", "~> 0.9"
|
|
43
41
|
end
|
metadata
CHANGED
|
@@ -1,71 +1,43 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: omnes
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Marc Busqué
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-02-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
|
-
name:
|
|
14
|
+
name: benchmark
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - "
|
|
17
|
+
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
20
|
-
type: :
|
|
19
|
+
version: '0'
|
|
20
|
+
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- - "
|
|
24
|
+
- - ">="
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
26
|
+
version: '0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
28
|
+
name: ostruct
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- - "
|
|
31
|
+
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
34
|
-
type: :
|
|
33
|
+
version: '0'
|
|
34
|
+
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- - "
|
|
38
|
+
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
41
|
-
- !ruby/object:Gem::Dependency
|
|
42
|
-
name: sidekiq
|
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
|
44
|
-
requirements:
|
|
45
|
-
- - "~>"
|
|
46
|
-
- !ruby/object:Gem::Version
|
|
47
|
-
version: '6.4'
|
|
48
|
-
type: :development
|
|
49
|
-
prerelease: false
|
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
-
requirements:
|
|
52
|
-
- - "~>"
|
|
53
|
-
- !ruby/object:Gem::Version
|
|
54
|
-
version: '6.4'
|
|
55
|
-
- !ruby/object:Gem::Dependency
|
|
56
|
-
name: yard
|
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
|
58
|
-
requirements:
|
|
59
|
-
- - "~>"
|
|
60
|
-
- !ruby/object:Gem::Version
|
|
61
|
-
version: '0.9'
|
|
62
|
-
type: :development
|
|
63
|
-
prerelease: false
|
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
-
requirements:
|
|
66
|
-
- - "~>"
|
|
67
|
-
- !ruby/object:Gem::Version
|
|
68
|
-
version: '0.9'
|
|
40
|
+
version: '0'
|
|
69
41
|
description: |
|
|
70
42
|
Omnes is a Ruby library implementing the publish-subscribe pattern. This
|
|
71
43
|
pattern allows senders of messages to be decoupled from their receivers. An
|
|
@@ -82,6 +54,7 @@ files:
|
|
|
82
54
|
- ".gitignore"
|
|
83
55
|
- ".rspec"
|
|
84
56
|
- ".rubocop.yml"
|
|
57
|
+
- ".ruby-version"
|
|
85
58
|
- ".travis.yml"
|
|
86
59
|
- ".yardopts"
|
|
87
60
|
- CHANGELOG.md
|
|
@@ -122,7 +95,7 @@ metadata:
|
|
|
122
95
|
source_code_uri: https://github.com/nebulab/omnes
|
|
123
96
|
changelog_uri: https://github.com/nebulab/omnes/CHANGELOG.md
|
|
124
97
|
rubygems_mfa_required: 'true'
|
|
125
|
-
post_install_message:
|
|
98
|
+
post_install_message:
|
|
126
99
|
rdoc_options: []
|
|
127
100
|
require_paths:
|
|
128
101
|
- lib
|
|
@@ -130,15 +103,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
130
103
|
requirements:
|
|
131
104
|
- - ">="
|
|
132
105
|
- !ruby/object:Gem::Version
|
|
133
|
-
version:
|
|
106
|
+
version: 3.0.0
|
|
134
107
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
135
108
|
requirements:
|
|
136
109
|
- - ">="
|
|
137
110
|
- !ruby/object:Gem::Version
|
|
138
111
|
version: '0'
|
|
139
112
|
requirements: []
|
|
140
|
-
rubygems_version: 3.
|
|
141
|
-
signing_key:
|
|
113
|
+
rubygems_version: 3.5.16
|
|
114
|
+
signing_key:
|
|
142
115
|
specification_version: 4
|
|
143
116
|
summary: Pub/Sub for ruby
|
|
144
117
|
test_files: []
|