pub_sub_model_sync 0.5.6 → 0.5.7
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 +7 -0
- data/Gemfile.lock +1 -1
- data/README.md +2 -2
- data/lib/pub_sub_model_sync/runner.rb +7 -6
- data/lib/pub_sub_model_sync/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2774f1b6dd011f9404ff739aa71785ed47536cd9642a546761bb5c9b0404d212
|
4
|
+
data.tar.gz: 8bfd451dbcd2fba659599c58164f24e0dfe6846301e9912579aaaa6aea7ba9ca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 322c7d6b7d214bc5d8f98e08816450a627f423dd64eb9a96d33e3d8b84d48ffc7be3be5191d137b874ad7710602670015c19c00344525b40a343bf33f3b000f9
|
7
|
+
data.tar.gz: 8e8068de5d4a64db06129a07e3facbb3745ad7f4cca7d331748ff7395c8ea9a50b2938768e49f3ada4c19e4c1ea1e25e16714428d7ba1e2efff4b8ae680d0701
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
# 0.5.7 (January 13, 2021)
|
4
|
+
- feat: add method to preload sync listeners
|
5
|
+
|
6
|
+
# 0.5.6 (January 12, 2021)
|
7
|
+
- feat: add payload validation
|
8
|
+
- feat: add method to rebuild payload
|
9
|
+
|
3
10
|
# 0.5.5 (January 11, 2021)
|
4
11
|
- feat: google-pub/sub receive messages in the same order they were delivered
|
5
12
|
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -59,10 +59,10 @@ And then execute: $ bundle install
|
|
59
59
|
rake pub_sub_model_sync:start
|
60
60
|
```
|
61
61
|
Note: Publishers do not need todo this
|
62
|
-
Note2 (Rails 6+): Due to Zeitwerk, you need to load listeners manually when syncing
|
62
|
+
Note2 (Rails 6+): Due to Zeitwerk, you need to load listeners manually when syncing without mentioned task (like rails console)
|
63
63
|
```ruby
|
64
64
|
# PubSubModelSync::Config.subscribers ==> []
|
65
|
-
|
65
|
+
PubSubModelSync::Runner.preload_listeners
|
66
66
|
# PubSubModelSync::Config.subscribers ==> [#<PubSubModelSync::Subscriber:0x000.. @klass="Article", @action=:create..., ....]
|
67
67
|
```
|
68
68
|
|
@@ -4,6 +4,7 @@ require 'active_support/core_ext/module'
|
|
4
4
|
module PubSubModelSync
|
5
5
|
class Runner
|
6
6
|
class ShutDown < StandardError; end
|
7
|
+
delegate :preload_listeners, to: :class
|
7
8
|
attr_accessor :connector
|
8
9
|
|
9
10
|
def initialize
|
@@ -12,12 +13,17 @@ module PubSubModelSync
|
|
12
13
|
|
13
14
|
def run
|
14
15
|
trap_signals!
|
15
|
-
|
16
|
+
preload_listeners
|
16
17
|
start_listeners
|
17
18
|
rescue ShutDown
|
18
19
|
connector.stop
|
19
20
|
end
|
20
21
|
|
22
|
+
def self.preload_listeners
|
23
|
+
Rails.application.try(:eager_load!) if defined?(Rails)
|
24
|
+
Zeitwerk::Loader.eager_load_all if defined?(Zeitwerk::Loader)
|
25
|
+
end
|
26
|
+
|
21
27
|
private
|
22
28
|
|
23
29
|
def start_listeners
|
@@ -31,10 +37,5 @@ module PubSubModelSync
|
|
31
37
|
end
|
32
38
|
%w[INT QUIT TERM].each { |signal| Signal.trap(signal, handler) }
|
33
39
|
end
|
34
|
-
|
35
|
-
def preload_framework!
|
36
|
-
Rails.application.try(:eager_load!) if defined?(Rails)
|
37
|
-
Zeitwerk::Loader.eager_load_all if defined?(Zeitwerk::Loader)
|
38
|
-
end
|
39
40
|
end
|
40
41
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pub_sub_model_sync
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Owen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-01-
|
11
|
+
date: 2021-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|