rpush 5.2.0 → 6.0.1
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 +59 -0
- data/README.md +53 -8
- data/lib/generators/templates/add_adm.rb +1 -1
- data/lib/generators/templates/add_alert_is_json_to_rapns_notifications.rb +2 -2
- data/lib/generators/templates/add_app_to_rapns.rb +2 -2
- data/lib/generators/templates/add_fail_after_to_rpush_notifications.rb +1 -1
- data/lib/generators/templates/add_gcm.rb +11 -25
- data/lib/generators/templates/add_rpush.rb +33 -83
- data/lib/generators/templates/add_wpns.rb +1 -1
- data/lib/generators/templates/create_rapns_apps.rb +1 -1
- data/lib/generators/templates/create_rapns_feedback.rb +3 -9
- data/lib/generators/templates/create_rapns_notifications.rb +3 -9
- data/lib/generators/templates/rename_rapns_to_rpush.rb +9 -33
- data/lib/generators/templates/rpush.rb +1 -4
- data/lib/generators/templates/rpush_2_0_0_updates.rb +5 -17
- data/lib/generators/templates/rpush_2_1_0_updates.rb +1 -1
- data/lib/generators/templates/rpush_2_6_0_updates.rb +1 -1
- data/lib/generators/templates/rpush_2_7_0_updates.rb +1 -1
- data/lib/generators/templates/rpush_3_0_0_updates.rb +1 -1
- data/lib/generators/templates/rpush_3_0_1_updates.rb +1 -1
- data/lib/generators/templates/rpush_3_1_0_add_pushy.rb +1 -1
- data/lib/generators/templates/rpush_3_1_1_updates.rb +1 -1
- data/lib/generators/templates/rpush_3_2_0_add_apns_p8.rb +1 -1
- data/lib/generators/templates/rpush_3_2_4_updates.rb +1 -1
- data/lib/generators/templates/rpush_3_3_0_updates.rb +1 -1
- data/lib/generators/templates/rpush_3_3_1_updates.rb +3 -3
- data/lib/generators/templates/rpush_4_1_0_updates.rb +1 -1
- data/lib/generators/templates/rpush_4_1_1_updates.rb +1 -1
- data/lib/generators/templates/rpush_4_2_0_updates.rb +1 -1
- data/lib/rpush/client/active_model/adm/data_validator.rb +1 -1
- data/lib/rpush/client/active_model/apns/app.rb +1 -17
- data/lib/rpush/client/active_model/apns/device_token_format_validator.rb +2 -2
- data/lib/rpush/client/active_model/apns/notification.rb +4 -0
- data/lib/rpush/client/active_model/apns/notification_payload_size_validator.rb +1 -1
- data/lib/rpush/client/active_model/apns2/app.rb +7 -1
- data/lib/rpush/client/active_model/certificate_private_key_validator.rb +19 -0
- data/lib/rpush/client/active_model/gcm/expiry_collapse_key_mutual_inclusion_validator.rb +1 -1
- data/lib/rpush/client/active_model/payload_data_size_validator.rb +1 -1
- data/lib/rpush/client/active_model/registration_ids_count_validator.rb +1 -1
- data/lib/rpush/client/active_model/webpush/app.rb +41 -0
- data/lib/rpush/client/active_model/webpush/notification.rb +66 -0
- data/lib/rpush/client/active_model.rb +4 -0
- data/lib/rpush/client/active_record/apnsp8/notification.rb +1 -0
- data/lib/rpush/client/active_record/webpush/app.rb +11 -0
- data/lib/rpush/client/active_record/webpush/notification.rb +12 -0
- data/lib/rpush/client/active_record.rb +3 -0
- data/lib/rpush/client/redis/apnsp8/notification.rb +2 -0
- data/lib/rpush/client/redis/webpush/app.rb +15 -0
- data/lib/rpush/client/redis/webpush/notification.rb +15 -0
- data/lib/rpush/client/redis.rb +3 -0
- data/lib/rpush/configuration.rb +1 -1
- data/lib/rpush/daemon/apns2/delivery.rb +8 -1
- data/lib/rpush/daemon/apnsp8/delivery.rb +7 -1
- data/lib/rpush/daemon/string_helpers.rb +1 -1
- data/lib/rpush/daemon/webpush/delivery.rb +114 -0
- data/lib/rpush/daemon/webpush.rb +10 -0
- data/lib/rpush/daemon.rb +3 -0
- data/lib/rpush/version.rb +3 -3
- data/spec/functional/apns2_spec.rb +14 -2
- data/spec/functional/retry_spec.rb +1 -1
- data/spec/functional/webpush_spec.rb +31 -0
- data/spec/spec_helper.rb +3 -1
- data/spec/support/active_record_setup.rb +4 -3
- data/spec/support/config/database.yml +4 -4
- data/spec/support/simplecov_helper.rb +1 -1
- data/spec/unit/client/active_record/apns/notification_spec.rb +1 -1
- data/spec/unit/client/active_record/apns2/app_spec.rb +1 -0
- data/spec/unit/client/active_record/apns2/notification_spec.rb +1 -1
- data/spec/unit/client/active_record/apnsp8/notification_spec.rb +28 -0
- data/spec/unit/client/active_record/webpush/app_spec.rb +6 -0
- data/spec/unit/client/active_record/webpush/notification_spec.rb +6 -0
- data/spec/unit/client/redis/apns/notification_spec.rb +1 -1
- data/spec/unit/client/redis/apns2/notification_spec.rb +1 -1
- data/spec/unit/client/redis/apnsp8/notification_spec.rb +29 -0
- data/spec/unit/client/redis/webpush/app_spec.rb +5 -0
- data/spec/unit/client/redis/webpush/notification_spec.rb +5 -0
- data/spec/unit/client/shared/apns/notification.rb +15 -0
- data/spec/unit/client/shared/webpush/app.rb +33 -0
- data/spec/unit/client/shared/webpush/notification.rb +83 -0
- data/spec/unit/daemon/apnsp8/delivery_spec.rb +53 -0
- data/spec/unit/daemon/pushy/delivery_spec.rb +5 -3
- data/spec/unit/daemon/webpush/delivery_spec.rb +144 -0
- metadata +50 -5
|
@@ -61,10 +61,12 @@ describe Rpush::Daemon::Pushy::Delivery do
|
|
|
61
61
|
it_behaves_like 'process notification'
|
|
62
62
|
end
|
|
63
63
|
|
|
64
|
-
shared_examples 'retry delivery' do |
|
|
65
|
-
let(:response_code) { response_code }
|
|
64
|
+
shared_examples 'retry delivery' do |options|
|
|
65
|
+
let(:response_code) { options[:response_code] }
|
|
66
|
+
|
|
67
|
+
shared_examples 'logs' do |log_options|
|
|
68
|
+
let(:deliver_after) { log_options[:deliver_after] }
|
|
66
69
|
|
|
67
|
-
shared_examples 'logs' do |deliver_after:|
|
|
68
70
|
let(:expected_log_message) do
|
|
69
71
|
"Pushy responded with a #{response_code} error. Notification #{notification.id} " \
|
|
70
72
|
"will be retried after #{deliver_after} (retry 1)."
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
require 'unit_spec_helper'
|
|
2
|
+
|
|
3
|
+
describe Rpush::Daemon::Webpush::Delivery do
|
|
4
|
+
let(:app) { Rpush::Webpush::App.create!(name: 'MyApp', vapid_keypair: VAPID_KEYPAIR) }
|
|
5
|
+
|
|
6
|
+
# Push subscription information as received from a client browser when the
|
|
7
|
+
# user subscribed to push notifications.
|
|
8
|
+
let(:device_reg) {
|
|
9
|
+
{ endpoint: 'https://webpush-provider.example.org/push/some-id',
|
|
10
|
+
keys: {'auth' => 'DgN9EBia1o057BdhCOGURA', 'p256dh' => 'BAtxJ--7vHq9IVm8utUB3peJ4lpxRqk1rukCIkVJOomS83QkCnrQ4EyYQsSaCRgy_c8XPytgXxuyAvRJdnTPK4A'} }
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
let(:data) { { message: 'some message' } }
|
|
14
|
+
let(:notification) { Rpush::Webpush::Notification.create!(app: app, registration_ids: [device_reg], data: data) }
|
|
15
|
+
let(:batch) { instance_double('Rpush::Daemon::Batch', notification_processed: nil) }
|
|
16
|
+
let(:response) { instance_double('Net::HTTPResponse', code: response_code, header: response_header, body: response_body) }
|
|
17
|
+
let(:response_code) { 201 }
|
|
18
|
+
let(:response_header) { {} }
|
|
19
|
+
let(:response_body) { nil }
|
|
20
|
+
let(:http) { instance_double('Net::HTTP::Persistent', request: response) }
|
|
21
|
+
let(:logger) { instance_double('Rpush::Logger', error: nil, info: nil, warn: nil, internal_logger: nil) }
|
|
22
|
+
let(:now) { Time.parse('2020-10-13 00:00:00 UTC') }
|
|
23
|
+
|
|
24
|
+
before do
|
|
25
|
+
allow(Rpush).to receive_messages(logger: logger)
|
|
26
|
+
allow(Time).to receive_messages(now: now)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
subject(:delivery) { described_class.new(app, http, notification, batch) }
|
|
30
|
+
|
|
31
|
+
describe '#perform' do
|
|
32
|
+
shared_examples 'process notification' do
|
|
33
|
+
it 'invoke batch.notification_processed' do
|
|
34
|
+
subject.perform rescue nil
|
|
35
|
+
expect(batch).to have_received(:notification_processed)
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
context 'when response code is 201' do
|
|
40
|
+
before do
|
|
41
|
+
allow(batch).to receive(:mark_delivered)
|
|
42
|
+
Rpush::Daemon.store = Rpush::Daemon::Store.const_get(Rpush.config.client.to_s.camelcase).new
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
it 'marks the notification as delivered' do
|
|
46
|
+
delivery.perform
|
|
47
|
+
expect(batch).to have_received(:mark_delivered).with(notification)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
it_behaves_like 'process notification'
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
shared_examples 'retry delivery' do |options|
|
|
54
|
+
let(:response_code) { options[:response_code] }
|
|
55
|
+
|
|
56
|
+
shared_examples 'logs' do |log_options|
|
|
57
|
+
let(:deliver_after) { log_options[:deliver_after] }
|
|
58
|
+
|
|
59
|
+
let(:expected_log_message) do
|
|
60
|
+
"[MyApp] Webpush endpoint responded with a #{response_code} error. Notification #{notification.id} will be retried after #{deliver_after} (retry 1)."
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
it 'logs that the notification will be retried' do
|
|
64
|
+
delivery.perform
|
|
65
|
+
expect(logger).to have_received(:info).with(expected_log_message)
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
context 'when Retry-After header is present' do
|
|
70
|
+
let(:response_header) { { 'retry-after' => 10 } }
|
|
71
|
+
|
|
72
|
+
before do
|
|
73
|
+
allow(delivery).to receive(:mark_retryable) do
|
|
74
|
+
notification.deliver_after = now + 10.seconds
|
|
75
|
+
notification.retries += 1
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
it 'retry the notification' do
|
|
80
|
+
delivery.perform
|
|
81
|
+
expect(delivery).to have_received(:mark_retryable).with(notification, now + 10.seconds)
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
it_behaves_like 'logs', deliver_after: '2020-10-13 00:00:10'
|
|
85
|
+
it_behaves_like 'process notification'
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
context 'when Retry-After header is not present' do
|
|
89
|
+
before do
|
|
90
|
+
allow(delivery).to receive(:mark_retryable_exponential) do
|
|
91
|
+
notification.deliver_after = now + 2.seconds
|
|
92
|
+
notification.retries = 1
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
it 'retry the notification' do
|
|
97
|
+
delivery.perform
|
|
98
|
+
expect(delivery).to have_received(:mark_retryable_exponential).with(notification)
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
it_behaves_like 'logs', deliver_after: '2020-10-13 00:00:02'
|
|
102
|
+
it_behaves_like 'process notification'
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
it_behaves_like 'retry delivery', response_code: 429
|
|
107
|
+
it_behaves_like 'retry delivery', response_code: 500
|
|
108
|
+
it_behaves_like 'retry delivery', response_code: 502
|
|
109
|
+
it_behaves_like 'retry delivery', response_code: 503
|
|
110
|
+
it_behaves_like 'retry delivery', response_code: 504
|
|
111
|
+
|
|
112
|
+
context 'when delivery failed' do
|
|
113
|
+
let(:response_code) { 400 }
|
|
114
|
+
let(:fail_message) { 'that was a bad request' }
|
|
115
|
+
before do
|
|
116
|
+
allow(response).to receive(:body) { fail_message }
|
|
117
|
+
allow(batch).to receive(:mark_failed)
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
it 'marks the notification as failed' do
|
|
121
|
+
expect { delivery.perform }.to raise_error(Rpush::DeliveryError)
|
|
122
|
+
expected_message = "Unable to deliver notification #{notification.id}, " \
|
|
123
|
+
"received error 400 (Bad Request: #{fail_message})"
|
|
124
|
+
expect(batch).to have_received(:mark_failed).with(notification, 400, expected_message)
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
it_behaves_like 'process notification'
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
context 'when SocketError raised' do
|
|
131
|
+
before do
|
|
132
|
+
allow(http).to receive(:request) { raise SocketError }
|
|
133
|
+
allow(delivery).to receive(:mark_retryable)
|
|
134
|
+
end
|
|
135
|
+
|
|
136
|
+
it 'retry delivery after 10 seconds' do
|
|
137
|
+
expect { delivery.perform }.to raise_error(SocketError)
|
|
138
|
+
expect(delivery).to have_received(:mark_retryable).with(notification, now + 10.seconds, SocketError)
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
it_behaves_like 'process notification'
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rpush
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 6.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ian Leitch
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2021-10-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: multi_json
|
|
@@ -78,14 +78,14 @@ dependencies:
|
|
|
78
78
|
requirements:
|
|
79
79
|
- - ">="
|
|
80
80
|
- !ruby/object:Gem::Version
|
|
81
|
-
version: '5.
|
|
81
|
+
version: '5.2'
|
|
82
82
|
type: :runtime
|
|
83
83
|
prerelease: false
|
|
84
84
|
version_requirements: !ruby/object:Gem::Requirement
|
|
85
85
|
requirements:
|
|
86
86
|
- - ">="
|
|
87
87
|
- !ruby/object:Gem::Version
|
|
88
|
-
version: '5.
|
|
88
|
+
version: '5.2'
|
|
89
89
|
- !ruby/object:Gem::Dependency
|
|
90
90
|
name: thor
|
|
91
91
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -134,6 +134,20 @@ dependencies:
|
|
|
134
134
|
- - ">="
|
|
135
135
|
- !ruby/object:Gem::Version
|
|
136
136
|
version: '0'
|
|
137
|
+
- !ruby/object:Gem::Dependency
|
|
138
|
+
name: webpush
|
|
139
|
+
requirement: !ruby/object:Gem::Requirement
|
|
140
|
+
requirements:
|
|
141
|
+
- - "~>"
|
|
142
|
+
- !ruby/object:Gem::Version
|
|
143
|
+
version: '1.0'
|
|
144
|
+
type: :runtime
|
|
145
|
+
prerelease: false
|
|
146
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
147
|
+
requirements:
|
|
148
|
+
- - "~>"
|
|
149
|
+
- !ruby/object:Gem::Version
|
|
150
|
+
version: '1.0'
|
|
137
151
|
- !ruby/object:Gem::Dependency
|
|
138
152
|
name: rake
|
|
139
153
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -414,6 +428,7 @@ files:
|
|
|
414
428
|
- lib/rpush/client/active_model/apns2/notification.rb
|
|
415
429
|
- lib/rpush/client/active_model/apnsp8/app.rb
|
|
416
430
|
- lib/rpush/client/active_model/apnsp8/notification.rb
|
|
431
|
+
- lib/rpush/client/active_model/certificate_private_key_validator.rb
|
|
417
432
|
- lib/rpush/client/active_model/gcm/app.rb
|
|
418
433
|
- lib/rpush/client/active_model/gcm/expiry_collapse_key_mutual_inclusion_validator.rb
|
|
419
434
|
- lib/rpush/client/active_model/gcm/notification.rb
|
|
@@ -423,6 +438,8 @@ files:
|
|
|
423
438
|
- lib/rpush/client/active_model/pushy/notification.rb
|
|
424
439
|
- lib/rpush/client/active_model/pushy/time_to_live_validator.rb
|
|
425
440
|
- lib/rpush/client/active_model/registration_ids_count_validator.rb
|
|
441
|
+
- lib/rpush/client/active_model/webpush/app.rb
|
|
442
|
+
- lib/rpush/client/active_model/webpush/notification.rb
|
|
426
443
|
- lib/rpush/client/active_model/wns/app.rb
|
|
427
444
|
- lib/rpush/client/active_model/wns/notification.rb
|
|
428
445
|
- lib/rpush/client/active_model/wpns/app.rb
|
|
@@ -444,6 +461,8 @@ files:
|
|
|
444
461
|
- lib/rpush/client/active_record/notification.rb
|
|
445
462
|
- lib/rpush/client/active_record/pushy/app.rb
|
|
446
463
|
- lib/rpush/client/active_record/pushy/notification.rb
|
|
464
|
+
- lib/rpush/client/active_record/webpush/app.rb
|
|
465
|
+
- lib/rpush/client/active_record/webpush/notification.rb
|
|
447
466
|
- lib/rpush/client/active_record/wns/app.rb
|
|
448
467
|
- lib/rpush/client/active_record/wns/badge_notification.rb
|
|
449
468
|
- lib/rpush/client/active_record/wns/notification.rb
|
|
@@ -466,6 +485,8 @@ files:
|
|
|
466
485
|
- lib/rpush/client/redis/notification.rb
|
|
467
486
|
- lib/rpush/client/redis/pushy/app.rb
|
|
468
487
|
- lib/rpush/client/redis/pushy/notification.rb
|
|
488
|
+
- lib/rpush/client/redis/webpush/app.rb
|
|
489
|
+
- lib/rpush/client/redis/webpush/notification.rb
|
|
469
490
|
- lib/rpush/client/redis/wns/app.rb
|
|
470
491
|
- lib/rpush/client/redis/wns/badge_notification.rb
|
|
471
492
|
- lib/rpush/client/redis/wns/notification.rb
|
|
@@ -520,6 +541,8 @@ files:
|
|
|
520
541
|
- lib/rpush/daemon/string_helpers.rb
|
|
521
542
|
- lib/rpush/daemon/synchronizer.rb
|
|
522
543
|
- lib/rpush/daemon/tcp_connection.rb
|
|
544
|
+
- lib/rpush/daemon/webpush.rb
|
|
545
|
+
- lib/rpush/daemon/webpush/delivery.rb
|
|
523
546
|
- lib/rpush/daemon/wns.rb
|
|
524
547
|
- lib/rpush/daemon/wns/badge_request.rb
|
|
525
548
|
- lib/rpush/daemon/wns/delivery.rb
|
|
@@ -552,6 +575,7 @@ files:
|
|
|
552
575
|
- spec/functional/pushy_spec.rb
|
|
553
576
|
- spec/functional/retry_spec.rb
|
|
554
577
|
- spec/functional/synchronization_spec.rb
|
|
578
|
+
- spec/functional/webpush_spec.rb
|
|
555
579
|
- spec/functional/wpns_spec.rb
|
|
556
580
|
- spec/functional_spec_helper.rb
|
|
557
581
|
- spec/spec_helper.rb
|
|
@@ -570,6 +594,7 @@ files:
|
|
|
570
594
|
- spec/unit/client/active_record/apns/notification_spec.rb
|
|
571
595
|
- spec/unit/client/active_record/apns2/app_spec.rb
|
|
572
596
|
- spec/unit/client/active_record/apns2/notification_spec.rb
|
|
597
|
+
- spec/unit/client/active_record/apnsp8/notification_spec.rb
|
|
573
598
|
- spec/unit/client/active_record/app_spec.rb
|
|
574
599
|
- spec/unit/client/active_record/gcm/app_spec.rb
|
|
575
600
|
- spec/unit/client/active_record/gcm/notification_spec.rb
|
|
@@ -578,6 +603,8 @@ files:
|
|
|
578
603
|
- spec/unit/client/active_record/pushy/notification_spec.rb
|
|
579
604
|
- spec/unit/client/active_record/shared/app.rb
|
|
580
605
|
- spec/unit/client/active_record/shared/notification.rb
|
|
606
|
+
- spec/unit/client/active_record/webpush/app_spec.rb
|
|
607
|
+
- spec/unit/client/active_record/webpush/notification_spec.rb
|
|
581
608
|
- spec/unit/client/active_record/wns/badge_notification_spec.rb
|
|
582
609
|
- spec/unit/client/active_record/wns/raw_notification_spec.rb
|
|
583
610
|
- spec/unit/client/active_record/wpns/app_spec.rb
|
|
@@ -589,12 +616,15 @@ files:
|
|
|
589
616
|
- spec/unit/client/redis/apns/notification_spec.rb
|
|
590
617
|
- spec/unit/client/redis/apns2/app_spec.rb
|
|
591
618
|
- spec/unit/client/redis/apns2/notification_spec.rb
|
|
619
|
+
- spec/unit/client/redis/apnsp8/notification_spec.rb
|
|
592
620
|
- spec/unit/client/redis/app_spec.rb
|
|
593
621
|
- spec/unit/client/redis/gcm/app_spec.rb
|
|
594
622
|
- spec/unit/client/redis/gcm/notification_spec.rb
|
|
595
623
|
- spec/unit/client/redis/notification_spec.rb
|
|
596
624
|
- spec/unit/client/redis/pushy/app_spec.rb
|
|
597
625
|
- spec/unit/client/redis/pushy/notification_spec.rb
|
|
626
|
+
- spec/unit/client/redis/webpush/app_spec.rb
|
|
627
|
+
- spec/unit/client/redis/webpush/notification_spec.rb
|
|
598
628
|
- spec/unit/client/redis/wns/badge_notification_spec.rb
|
|
599
629
|
- spec/unit/client/redis/wns/raw_notification_spec.rb
|
|
600
630
|
- spec/unit/client/redis/wpns/app_spec.rb
|
|
@@ -610,6 +640,8 @@ files:
|
|
|
610
640
|
- spec/unit/client/shared/notification.rb
|
|
611
641
|
- spec/unit/client/shared/pushy/app.rb
|
|
612
642
|
- spec/unit/client/shared/pushy/notification.rb
|
|
643
|
+
- spec/unit/client/shared/webpush/app.rb
|
|
644
|
+
- spec/unit/client/shared/webpush/notification.rb
|
|
613
645
|
- spec/unit/client/shared/wns/badge_notification.rb
|
|
614
646
|
- spec/unit/client/shared/wns/raw_notification.rb
|
|
615
647
|
- spec/unit/client/shared/wpns/app.rb
|
|
@@ -619,6 +651,7 @@ files:
|
|
|
619
651
|
- spec/unit/daemon/apns/certificate_expired_error_spec.rb
|
|
620
652
|
- spec/unit/daemon/apns/delivery_spec.rb
|
|
621
653
|
- spec/unit/daemon/apns/feedback_receiver_spec.rb
|
|
654
|
+
- spec/unit/daemon/apnsp8/delivery_spec.rb
|
|
622
655
|
- spec/unit/daemon/app_runner_spec.rb
|
|
623
656
|
- spec/unit/daemon/batch_spec.rb
|
|
624
657
|
- spec/unit/daemon/delivery_error_spec.rb
|
|
@@ -638,6 +671,7 @@ files:
|
|
|
638
671
|
- spec/unit/daemon/store/active_record_spec.rb
|
|
639
672
|
- spec/unit/daemon/store/redis_spec.rb
|
|
640
673
|
- spec/unit/daemon/tcp_connection_spec.rb
|
|
674
|
+
- spec/unit/daemon/webpush/delivery_spec.rb
|
|
641
675
|
- spec/unit/daemon/wns/delivery_spec.rb
|
|
642
676
|
- spec/unit/daemon/wns/post_request_spec.rb
|
|
643
677
|
- spec/unit/daemon/wpns/delivery_spec.rb
|
|
@@ -660,7 +694,7 @@ metadata:
|
|
|
660
694
|
changelog_uri: https://github.com/rpush/rpush/blob/master/CHANGELOG.md
|
|
661
695
|
source_code_uri: https://github.com/rpush/rpush
|
|
662
696
|
post_install_message: |
|
|
663
|
-
When upgrading, don't forget to run `bundle exec rpush init` to get all the latest migrations.
|
|
697
|
+
When upgrading Rpush, don't forget to run `bundle exec rpush init` to get all the latest migrations.
|
|
664
698
|
|
|
665
699
|
For details on this specific release, refer to the CHANGELOG.md file.
|
|
666
700
|
https://github.com/rpush/rpush/blob/master/CHANGELOG.md
|
|
@@ -695,6 +729,7 @@ test_files:
|
|
|
695
729
|
- spec/functional/pushy_spec.rb
|
|
696
730
|
- spec/functional/retry_spec.rb
|
|
697
731
|
- spec/functional/synchronization_spec.rb
|
|
732
|
+
- spec/functional/webpush_spec.rb
|
|
698
733
|
- spec/functional/wpns_spec.rb
|
|
699
734
|
- spec/functional_spec_helper.rb
|
|
700
735
|
- spec/spec_helper.rb
|
|
@@ -713,6 +748,7 @@ test_files:
|
|
|
713
748
|
- spec/unit/client/active_record/apns/notification_spec.rb
|
|
714
749
|
- spec/unit/client/active_record/apns2/app_spec.rb
|
|
715
750
|
- spec/unit/client/active_record/apns2/notification_spec.rb
|
|
751
|
+
- spec/unit/client/active_record/apnsp8/notification_spec.rb
|
|
716
752
|
- spec/unit/client/active_record/app_spec.rb
|
|
717
753
|
- spec/unit/client/active_record/gcm/app_spec.rb
|
|
718
754
|
- spec/unit/client/active_record/gcm/notification_spec.rb
|
|
@@ -721,6 +757,8 @@ test_files:
|
|
|
721
757
|
- spec/unit/client/active_record/pushy/notification_spec.rb
|
|
722
758
|
- spec/unit/client/active_record/shared/app.rb
|
|
723
759
|
- spec/unit/client/active_record/shared/notification.rb
|
|
760
|
+
- spec/unit/client/active_record/webpush/app_spec.rb
|
|
761
|
+
- spec/unit/client/active_record/webpush/notification_spec.rb
|
|
724
762
|
- spec/unit/client/active_record/wns/badge_notification_spec.rb
|
|
725
763
|
- spec/unit/client/active_record/wns/raw_notification_spec.rb
|
|
726
764
|
- spec/unit/client/active_record/wpns/app_spec.rb
|
|
@@ -732,12 +770,15 @@ test_files:
|
|
|
732
770
|
- spec/unit/client/redis/apns/notification_spec.rb
|
|
733
771
|
- spec/unit/client/redis/apns2/app_spec.rb
|
|
734
772
|
- spec/unit/client/redis/apns2/notification_spec.rb
|
|
773
|
+
- spec/unit/client/redis/apnsp8/notification_spec.rb
|
|
735
774
|
- spec/unit/client/redis/app_spec.rb
|
|
736
775
|
- spec/unit/client/redis/gcm/app_spec.rb
|
|
737
776
|
- spec/unit/client/redis/gcm/notification_spec.rb
|
|
738
777
|
- spec/unit/client/redis/notification_spec.rb
|
|
739
778
|
- spec/unit/client/redis/pushy/app_spec.rb
|
|
740
779
|
- spec/unit/client/redis/pushy/notification_spec.rb
|
|
780
|
+
- spec/unit/client/redis/webpush/app_spec.rb
|
|
781
|
+
- spec/unit/client/redis/webpush/notification_spec.rb
|
|
741
782
|
- spec/unit/client/redis/wns/badge_notification_spec.rb
|
|
742
783
|
- spec/unit/client/redis/wns/raw_notification_spec.rb
|
|
743
784
|
- spec/unit/client/redis/wpns/app_spec.rb
|
|
@@ -753,6 +794,8 @@ test_files:
|
|
|
753
794
|
- spec/unit/client/shared/notification.rb
|
|
754
795
|
- spec/unit/client/shared/pushy/app.rb
|
|
755
796
|
- spec/unit/client/shared/pushy/notification.rb
|
|
797
|
+
- spec/unit/client/shared/webpush/app.rb
|
|
798
|
+
- spec/unit/client/shared/webpush/notification.rb
|
|
756
799
|
- spec/unit/client/shared/wns/badge_notification.rb
|
|
757
800
|
- spec/unit/client/shared/wns/raw_notification.rb
|
|
758
801
|
- spec/unit/client/shared/wpns/app.rb
|
|
@@ -762,6 +805,7 @@ test_files:
|
|
|
762
805
|
- spec/unit/daemon/apns/certificate_expired_error_spec.rb
|
|
763
806
|
- spec/unit/daemon/apns/delivery_spec.rb
|
|
764
807
|
- spec/unit/daemon/apns/feedback_receiver_spec.rb
|
|
808
|
+
- spec/unit/daemon/apnsp8/delivery_spec.rb
|
|
765
809
|
- spec/unit/daemon/app_runner_spec.rb
|
|
766
810
|
- spec/unit/daemon/batch_spec.rb
|
|
767
811
|
- spec/unit/daemon/delivery_error_spec.rb
|
|
@@ -781,6 +825,7 @@ test_files:
|
|
|
781
825
|
- spec/unit/daemon/store/active_record_spec.rb
|
|
782
826
|
- spec/unit/daemon/store/redis_spec.rb
|
|
783
827
|
- spec/unit/daemon/tcp_connection_spec.rb
|
|
828
|
+
- spec/unit/daemon/webpush/delivery_spec.rb
|
|
784
829
|
- spec/unit/daemon/wns/delivery_spec.rb
|
|
785
830
|
- spec/unit/daemon/wns/post_request_spec.rb
|
|
786
831
|
- spec/unit/daemon/wpns/delivery_spec.rb
|