subserver 0.4.0 → 0.5.0

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 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: []