pub_sub_model_sync 0.5.6 → 0.5.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ebc62742739be4d3291fc1551a8f53bf57d815f7b0ce3a9622e4c06a025e4fab
4
- data.tar.gz: ec84b83f7b2e176a2030415674b6c09859e40bbd9069fa40ff51041d24de0d4e
3
+ metadata.gz: 2774f1b6dd011f9404ff739aa71785ed47536cd9642a546761bb5c9b0404d212
4
+ data.tar.gz: 8bfd451dbcd2fba659599c58164f24e0dfe6846301e9912579aaaa6aea7ba9ca
5
5
  SHA512:
6
- metadata.gz: b351a1210c3b747de830e4ed67c527625d7941967e71332189000de5b81cb4286f906d8ab943595c7f7ab4cf7c2238c5458b2ea87620a11705877889552dcfcf
7
- data.tar.gz: 6d282613d88dfa53460bab1425c10553e89837a31790a49bbbd27f451de39f777b56d99424ef81e046eb459ba5d6b97aea92d6b812830579e9a2996e67c5dc6f
6
+ metadata.gz: 322c7d6b7d214bc5d8f98e08816450a627f423dd64eb9a96d33e3d8b84d48ffc7be3be5191d137b874ad7710602670015c19c00344525b40a343bf33f3b000f9
7
+ data.tar.gz: 8e8068de5d4a64db06129a07e3facbb3745ad7f4cca7d331748ff7395c8ea9a50b2938768e49f3ada4c19e4c1ea1e25e16714428d7ba1e2efff4b8ae680d0701
@@ -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
 
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pub_sub_model_sync (0.5.6)
4
+ pub_sub_model_sync (0.5.7)
5
5
  rails
6
6
 
7
7
  GEM
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 outside ```rake pub_sub_model_sync:start```
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
- Rails.application.try(:eager_load!)
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
- preload_framework!
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PubSubModelSync
4
- VERSION = '0.5.6'
4
+ VERSION = '0.5.7'
5
5
  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.6
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-12 00:00:00.000000000 Z
11
+ date: 2021-01-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails