cyclone_lariat 1.0.0.rc6 → 1.0.0.rc8
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/CHANGELOG.md +8 -0
- data/Gemfile.lock +5 -5
- data/README.md +2 -1
- data/cyclone_lariat.gemspec +1 -1
- data/lib/cyclone_lariat/messages/builder.rb +1 -1
- data/lib/cyclone_lariat/middleware.rb +11 -4
- data/lib/cyclone_lariat/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0e810d6b4fc64e4938dfe70579f2bf36a4768bdf
|
4
|
+
data.tar.gz: 8e8daf9a77166655600b6baccf671276d3c9566f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 908053b867c1a268b7659e2ee37c8a7f65781f1d80b8dc5c2f3e2b4106f394f0956da67fdb7bc93f676f7fcb6f0d88dc3e6f89496db47f40991b5ea1226b0da6
|
7
|
+
data.tar.gz: 1d46de69c81d15fc14ee015177047a551e99deecde4d17c59a8c357b5773eab18a26a1faf0ce88898c5b644113e4d1819f680c2cb9fa185d6685a6acdea0654a
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,14 @@ 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
|
+
## [1.0.0.rc8]
|
8
|
+
Changed
|
9
|
+
- Added `before_save` hook to middleware
|
10
|
+
|
11
|
+
## [1.0.0.rc7]
|
12
|
+
Changed
|
13
|
+
- Fixed `CycloneLariat::Messages::Builder`
|
14
|
+
|
7
15
|
## [1.0.0.rc6]
|
8
16
|
Changed
|
9
17
|
- Rename `messages_dataset` to `inbox_dataset`
|
data/Gemfile.lock
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
cyclone_lariat (1.0.0.
|
4
|
+
cyclone_lariat (1.0.0.rc8)
|
5
5
|
aws-sdk-sns
|
6
6
|
aws-sdk-sqs
|
7
7
|
dry-cli (~> 0.6)
|
8
|
-
dry-validation (
|
8
|
+
dry-validation (< 1.9.0)
|
9
9
|
luna_park (~> 0.11)
|
10
10
|
terminal-table (~> 3.0)
|
11
11
|
|
@@ -28,8 +28,8 @@ GEM
|
|
28
28
|
arel (9.0.0)
|
29
29
|
ast (2.4.2)
|
30
30
|
aws-eventstream (1.2.0)
|
31
|
-
aws-partitions (1.
|
32
|
-
aws-sdk-core (3.
|
31
|
+
aws-partitions (1.761.0)
|
32
|
+
aws-sdk-core (3.172.0)
|
33
33
|
aws-eventstream (~> 1, >= 1.0.2)
|
34
34
|
aws-partitions (~> 1, >= 1.651.0)
|
35
35
|
aws-sigv4 (~> 1.5)
|
@@ -37,7 +37,7 @@ GEM
|
|
37
37
|
aws-sdk-sns (1.60.0)
|
38
38
|
aws-sdk-core (~> 3, >= 3.165.0)
|
39
39
|
aws-sigv4 (~> 1.1)
|
40
|
-
aws-sdk-sqs (1.
|
40
|
+
aws-sdk-sqs (1.55.0)
|
41
41
|
aws-sdk-core (~> 3, >= 3.165.0)
|
42
42
|
aws-sigv4 (~> 1.1)
|
43
43
|
aws-sigv4 (1.5.2)
|
data/README.md
CHANGED
@@ -786,7 +786,8 @@ class Receiver
|
|
786
786
|
chain.add CycloneLariat::Middleware,
|
787
787
|
dataset: DB[:events],
|
788
788
|
errors_notifier: LunaPark::Notifiers::Sentry.new,
|
789
|
-
message_notifier: LunaPark::Notifiers::Log.new(min_lvl: :debug, format: :pretty_json)
|
789
|
+
message_notifier: LunaPark::Notifiers::Log.new(min_lvl: :debug, format: :pretty_json),
|
790
|
+
before_save: -> { |message| message.data[:password] = nil }
|
790
791
|
end
|
791
792
|
|
792
793
|
class UserIsNotRegistered < LunaPark::Errors::Business
|
data/cyclone_lariat.gemspec
CHANGED
@@ -38,7 +38,7 @@ Gem::Specification.new do |spec|
|
|
38
38
|
spec.add_dependency 'aws-sdk-sns'
|
39
39
|
spec.add_dependency 'aws-sdk-sqs'
|
40
40
|
spec.add_dependency 'dry-cli', '~> 0.6'
|
41
|
-
spec.add_dependency 'dry-validation', '
|
41
|
+
spec.add_dependency 'dry-validation', '< 1.9.0' # 1.9.0 use zeitwerk that require ruby > 2.5
|
42
42
|
spec.add_dependency 'luna_park', '~> 0.11'
|
43
43
|
spec.add_dependency 'terminal-table', '~> 3.0'
|
44
44
|
|
@@ -10,11 +10,12 @@ module CycloneLariat
|
|
10
10
|
class Middleware
|
11
11
|
attr_reader :config
|
12
12
|
|
13
|
-
def initialize(errors_notifier: nil, message_notifier: nil, repo: Repo::InboxMessages, **options)
|
13
|
+
def initialize(errors_notifier: nil, message_notifier: nil, before_save: nil, repo: Repo::InboxMessages, **options)
|
14
14
|
@config = CycloneLariat::Options.wrap(options).merge!(CycloneLariat.config)
|
15
15
|
@events_repo = repo.new(**@config.to_h)
|
16
16
|
@message_notifier = message_notifier
|
17
17
|
@errors_notifier = errors_notifier
|
18
|
+
@before_save = before_save
|
18
19
|
end
|
19
20
|
|
20
21
|
def call(_worker_instance, queue, _sqs_msg, body, &block)
|
@@ -34,7 +35,7 @@ module CycloneLariat
|
|
34
35
|
|
35
36
|
private
|
36
37
|
|
37
|
-
attr_reader :errors_notifier, :message_notifier, :events_repo
|
38
|
+
attr_reader :errors_notifier, :message_notifier, :events_repo, :before_save
|
38
39
|
|
39
40
|
def receive_message!(body)
|
40
41
|
body[:Message] ? JSON.parse(body[:Message], symbolize_names: true) : body
|
@@ -48,10 +49,16 @@ module CycloneLariat
|
|
48
49
|
|
49
50
|
existed = events_repo.find(uuid: event.uuid)
|
50
51
|
return true if existed&.processed?
|
52
|
+
return yield if existed
|
53
|
+
|
54
|
+
event.clone.tap do |e|
|
55
|
+
before_save.call(e) if before_save
|
56
|
+
events_repo.create(e)
|
57
|
+
end
|
51
58
|
|
52
|
-
events_repo.create(event) unless existed
|
53
59
|
yield
|
54
|
-
|
60
|
+
|
61
|
+
events_repo.processed!(uuid: event.uuid, error: event.client_error)
|
55
62
|
end
|
56
63
|
|
57
64
|
def catch_business_error(event)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cyclone_lariat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.rc8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Kudrin
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2023-
|
14
|
+
date: 2023-05-31 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: aws-sdk-sns
|
@@ -59,16 +59,16 @@ dependencies:
|
|
59
59
|
name: dry-validation
|
60
60
|
requirement: !ruby/object:Gem::Requirement
|
61
61
|
requirements:
|
62
|
-
- - "
|
62
|
+
- - "<"
|
63
63
|
- !ruby/object:Gem::Version
|
64
|
-
version:
|
64
|
+
version: 1.9.0
|
65
65
|
type: :runtime
|
66
66
|
prerelease: false
|
67
67
|
version_requirements: !ruby/object:Gem::Requirement
|
68
68
|
requirements:
|
69
|
-
- - "
|
69
|
+
- - "<"
|
70
70
|
- !ruby/object:Gem::Version
|
71
|
-
version:
|
71
|
+
version: 1.9.0
|
72
72
|
- !ruby/object:Gem::Dependency
|
73
73
|
name: luna_park
|
74
74
|
requirement: !ruby/object:Gem::Requirement
|