subserver 0.4.0 → 0.5.0

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
- SHA1:
3
- metadata.gz: b03ca95feb3a0199cb82d6301c76e665e3eeed1c
4
- data.tar.gz: 06aa4320e65f4f22f5173f6ec629b030c82214ff
2
+ SHA256:
3
+ metadata.gz: 8bd260ca27f6ddc39921273721072a08f25e3e5a63794b74ac045335d3f2bd77
4
+ data.tar.gz: c185341951c4faa9e1ca65feee5835e829fc16180ac3ab410d30427aeea6b355
5
5
  SHA512:
6
- metadata.gz: 84aa49c11d99383eed56aa20dd29142b2040de89cb3faefbc6263114743d1d525cfb096cfe93429b93f8451bcdc3b56cbdd85e3fc1dcd72c38f7752531cba107
7
- data.tar.gz: 6fdf3e3df2b6c53e28055a9f0a8a4fea295803d3321db74d4c65c500b9ee78dc08d9b9b026aadfd7c5c358b2b4f24049718f03e39a5dfac4213e35dc6c15c568
6
+ metadata.gz: af7ca7ead70bf4443b9445abb006c6959b760c598e6c6f2a3edcb26c706136aa236e56849e3f400f51c3a81fc9fa086db53101aa0a8b8476f8265df270e110ba
7
+ data.tar.gz: 4fdfba24deac3a1824244987e0889d66ea943892ddfc750dc0b61cc45c8d137d5328ada78df75c57e2157c30e3a3224beed6bfc9b96f9eadd5a04a02255dc6a9
@@ -1,3 +1,20 @@
1
+ # 0.5.0
2
+ - Dependency updates
3
+ - google-cloud-pubsub 2.0
4
+
5
+ # 0.4.4
6
+ - Fixes `Subserver::Testing::Pubsub.topic` missing arguments
7
+
8
+ # 0.4.3
9
+ - Dependacy Updates
10
+ - Ruby >=2.4
11
+ - google-cloud-pubsub ~> 1.7
12
+ - self.auto_subscribe method #25
13
+ - Subserver::Testing::Pubsub::Topic.publish now supports the `attributes` arugment
14
+
15
+ # 0.4.1
16
+ - Fix Listener#process_message error handling
17
+
1
18
  # 0.4.0
2
19
  - Adds listener_startup lifecycle event
3
20
 
data/README.md CHANGED
@@ -21,9 +21,9 @@ Subserver is based off of [Sidekiq](https://github.com/mperham/sidekiq). A huge
21
21
 
22
22
  ## Requirements
23
23
  Subserver Supports:
24
- - Ruby >= 2.3.1
24
+ - Ruby >= 2.4.0
25
25
  - All Rails releases >= 4.0
26
- - Google Cloud PubSub Ruby >= 0.31.0
26
+ - Google Cloud PubSub Ruby >= 1.7.0
27
27
 
28
28
  ## Getting Started
29
29
  ### Install
@@ -34,7 +34,7 @@ module Subserver
34
34
  @thread = nil
35
35
  @reloader = Subserver.options[:reloader]
36
36
  @subscriber = subscriber
37
- @subscription = retrive_subscrption
37
+ @subscription = retrieve_subscription
38
38
  @logging = (mgr.options[:message_logger] || Subserver::MessageLogger).new
39
39
  end
40
40
 
@@ -69,7 +69,7 @@ module Subserver
69
69
 
70
70
  private unless $TESTING
71
71
 
72
- def retrive_subscrption
72
+ def retrieve_subscription
73
73
  subscription_name = @subscriber.get_subserver_options[:subscription]
74
74
  subscription = Pubsub.client.subscription subscription_name rescue nil
75
75
  if subscription.nil?
@@ -112,9 +112,12 @@ module Subserver
112
112
  rescue Subserver::Shutdown
113
113
  # Reject message if shutdown
114
114
  received_message.reject!
115
- rescue Exception => ex
116
- handle_exception(e, { context: "Exception raised during message processing.", message: received_message })
117
- raise e
115
+ rescue StandardError => error
116
+ handle_exception error, {
117
+ context: 'Exception raised during message processing.',
118
+ message: received_message
119
+ }
120
+ raise
118
121
  end
119
122
  end
120
123
 
@@ -123,4 +126,4 @@ module Subserver
123
126
  end
124
127
 
125
128
  end
126
- end
129
+ end
@@ -35,6 +35,7 @@ module Subserver
35
35
  @listeners = Set.new
36
36
 
37
37
  subscribers.each do |subscriber|
38
+ next if subscriber.auto_subscribe? && !subscriber.auto_subscribe
38
39
  @listeners << Listener.new(self, subscriber)
39
40
  end
40
41
 
@@ -11,6 +11,9 @@ module Subserver
11
11
  end
12
12
 
13
13
  module ClassMethods
14
+ def auto_subscribe?
15
+ respond_to? :auto_subscribe
16
+ end
14
17
 
15
18
  def subserver_options(opts={})
16
19
  self.subserver_options_hash = get_subserver_options.merge(opts)
@@ -3,12 +3,12 @@ module Subserver
3
3
  class Pubsub
4
4
 
5
5
  class Topic
6
- def publish(data)
6
+ def publish(data, attributes = {})
7
7
  true
8
8
  end
9
9
  end
10
10
 
11
- def topic(name)
11
+ def topic(name, project: nil, skip_lookup: nil, async: nil)
12
12
  Topic.new
13
13
  end
14
14
 
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Subserver
3
- VERSION = "0.4.0"
3
+ VERSION = "0.5.0"
4
4
  end
metadata CHANGED
@@ -1,38 +1,39 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: subserver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Hill
8
- autorequire:
8
+ - Michael Haglund
9
+ autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2019-01-10 00:00:00.000000000 Z
12
+ date: 2020-10-09 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: google-cloud-pubsub
15
16
  requirement: !ruby/object:Gem::Requirement
16
17
  requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '0.31'
20
18
  - - ">="
21
19
  - !ruby/object:Gem::Version
22
- version: 0.31.0
20
+ version: '1.7'
21
+ - - "<"
22
+ - !ruby/object:Gem::Version
23
+ version: '3.0'
23
24
  type: :runtime
24
25
  prerelease: false
25
26
  version_requirements: !ruby/object:Gem::Requirement
26
27
  requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '0.31'
30
28
  - - ">="
31
29
  - !ruby/object:Gem::Version
32
- version: 0.31.0
30
+ version: '1.7'
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '3.0'
33
34
  description: Subserver is a background server process for processing messages from
34
35
  Google Pub/Sub.
35
- email:
36
+ email:
36
37
  executables:
37
38
  - subserver
38
39
  extensions: []
@@ -65,7 +66,7 @@ homepage: https://github.com/lifechurch/subserver/
65
66
  licenses:
66
67
  - MIT
67
68
  metadata: {}
68
- post_install_message:
69
+ post_install_message:
69
70
  rdoc_options: []
70
71
  require_paths:
71
72
  - lib
@@ -73,16 +74,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
73
74
  requirements:
74
75
  - - ">="
75
76
  - !ruby/object:Gem::Version
76
- version: 2.3.1
77
+ version: 2.4.7
77
78
  required_rubygems_version: !ruby/object:Gem::Requirement
78
79
  requirements:
79
80
  - - ">="
80
81
  - !ruby/object:Gem::Version
81
82
  version: '0'
82
83
  requirements: []
83
- rubyforge_project:
84
- rubygems_version: 2.5.2.3
85
- signing_key:
84
+ rubygems_version: 3.0.1
85
+ signing_key:
86
86
  specification_version: 4
87
87
  summary: Simple background server process for Google Pub/Sub.
88
88
  test_files: []