rpush 4.0.1 → 5.1.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.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +252 -162
  3. data/README.md +1 -1
  4. data/lib/generators/rpush_migration_generator.rb +3 -0
  5. data/lib/generators/templates/rpush_4_1_0_updates.rb +9 -0
  6. data/lib/generators/templates/rpush_4_1_1_updates.rb +9 -0
  7. data/lib/generators/templates/rpush_4_2_0_updates.rb +10 -0
  8. data/lib/rpush/apns_feedback.rb +1 -0
  9. data/lib/rpush/cli.rb +9 -22
  10. data/lib/rpush/client/active_model.rb +1 -1
  11. data/lib/rpush/client/active_model/apns/notification.rb +9 -1
  12. data/lib/rpush/client/active_model/apns/notification_payload_size_validator.rb +15 -0
  13. data/lib/rpush/client/active_model/apns2/notification.rb +14 -0
  14. data/lib/rpush/client/active_model/gcm/notification.rb +6 -3
  15. data/lib/rpush/client/active_model/wns/notification.rb +8 -0
  16. data/lib/rpush/client/active_record.rb +1 -0
  17. data/lib/rpush/client/active_record/apns/active_record_serializable_notification.rb +65 -0
  18. data/lib/rpush/client/active_record/apns/notification.rb +1 -29
  19. data/lib/rpush/client/active_record/apns2/notification.rb +4 -1
  20. data/lib/rpush/client/active_record/app.rb +1 -1
  21. data/lib/rpush/client/active_record/notification.rb +1 -1
  22. data/lib/rpush/client/redis/apns2/notification.rb +1 -0
  23. data/lib/rpush/client/redis/app.rb +2 -1
  24. data/lib/rpush/client/redis/notification.rb +3 -1
  25. data/lib/rpush/client/redis/pushy/notification.rb +0 -1
  26. data/lib/rpush/daemon.rb +2 -2
  27. data/lib/rpush/daemon/apns/feedback_receiver.rb +2 -1
  28. data/lib/rpush/daemon/apns2/delivery.rb +6 -1
  29. data/lib/rpush/daemon/apnsp8/delivery.rb +7 -2
  30. data/lib/rpush/daemon/app_runner.rb +1 -1
  31. data/lib/rpush/daemon/dispatcher/apns_http2.rb +4 -2
  32. data/lib/rpush/daemon/dispatcher/apnsp8_http2.rb +2 -1
  33. data/lib/rpush/daemon/signal_handler.rb +1 -1
  34. data/lib/rpush/daemon/store/active_record.rb +1 -1
  35. data/lib/rpush/daemon/store/active_record/reconnectable.rb +1 -1
  36. data/lib/rpush/daemon/store/redis.rb +1 -1
  37. data/lib/rpush/daemon/wns/badge_request.rb +8 -3
  38. data/lib/rpush/daemon/wns/raw_request.rb +9 -2
  39. data/lib/rpush/daemon/wns/toast_request.rb +6 -2
  40. data/lib/rpush/version.rb +3 -3
  41. data/spec/.rubocop.yml +1 -1
  42. data/spec/functional/apns2_spec.rb +36 -0
  43. data/spec/functional/gcm_priority_spec.rb +40 -0
  44. data/spec/support/active_record_setup.rb +7 -1
  45. data/spec/support/simplecov_helper.rb +1 -1
  46. data/spec/unit/apns_feedback_spec.rb +17 -6
  47. data/spec/unit/client/active_record/adm/app_spec.rb +2 -54
  48. data/spec/unit/client/active_record/adm/notification_spec.rb +2 -39
  49. data/spec/unit/client/active_record/apns/app_spec.rb +3 -26
  50. data/spec/unit/client/active_record/apns/feedback_spec.rb +1 -5
  51. data/spec/unit/client/active_record/apns/notification_spec.rb +29 -288
  52. data/spec/unit/client/active_record/apns2/app_spec.rb +4 -0
  53. data/spec/unit/client/active_record/apns2/notification_spec.rb +65 -0
  54. data/spec/unit/client/active_record/app_spec.rb +1 -26
  55. data/spec/unit/client/active_record/gcm/app_spec.rb +3 -1
  56. data/spec/unit/client/active_record/gcm/notification_spec.rb +7 -60
  57. data/spec/unit/client/active_record/notification_spec.rb +10 -11
  58. data/spec/unit/client/active_record/pushy/app_spec.rb +2 -13
  59. data/spec/unit/client/active_record/pushy/notification_spec.rb +2 -55
  60. data/spec/unit/client/active_record/shared/app.rb +14 -0
  61. data/spec/unit/{notification_shared.rb → client/active_record/shared/notification.rb} +12 -7
  62. data/spec/unit/client/active_record/wns/badge_notification_spec.rb +1 -11
  63. data/spec/unit/client/active_record/wns/raw_notification_spec.rb +3 -12
  64. data/spec/unit/client/active_record/wpns/app_spec.rb +3 -1
  65. data/spec/unit/client/active_record/wpns/notification_spec.rb +2 -17
  66. data/spec/unit/client/redis/adm/app_spec.rb +5 -0
  67. data/spec/unit/client/redis/adm/notification_spec.rb +5 -0
  68. data/spec/unit/client/redis/apns/app_spec.rb +5 -0
  69. data/spec/unit/client/redis/apns/feedback_spec.rb +5 -0
  70. data/spec/unit/client/redis/apns/notification_spec.rb +50 -0
  71. data/spec/unit/client/redis/apns2/app_spec.rb +4 -0
  72. data/spec/unit/client/redis/apns2/notification_spec.rb +50 -0
  73. data/spec/unit/client/redis/app_spec.rb +5 -0
  74. data/spec/unit/client/redis/gcm/app_spec.rb +5 -0
  75. data/spec/unit/client/redis/gcm/notification_spec.rb +5 -0
  76. data/spec/unit/client/redis/notification_spec.rb +5 -0
  77. data/spec/unit/client/redis/pushy/app_spec.rb +5 -0
  78. data/spec/unit/client/redis/pushy/notification_spec.rb +5 -0
  79. data/spec/unit/client/redis/wns/badge_notification_spec.rb +5 -0
  80. data/spec/unit/client/redis/wns/raw_notification_spec.rb +22 -0
  81. data/spec/unit/client/redis/wpns/app_spec.rb +5 -0
  82. data/spec/unit/client/redis/wpns/notification_spec.rb +5 -0
  83. data/spec/unit/client/shared/adm/app.rb +51 -0
  84. data/spec/unit/client/shared/adm/notification.rb +39 -0
  85. data/spec/unit/client/shared/apns/app.rb +29 -0
  86. data/spec/unit/client/shared/apns/feedback.rb +9 -0
  87. data/spec/unit/client/shared/apns/notification.rb +262 -0
  88. data/spec/unit/client/shared/app.rb +17 -0
  89. data/spec/unit/client/shared/gcm/app.rb +4 -0
  90. data/spec/unit/client/shared/gcm/notification.rb +77 -0
  91. data/spec/unit/client/shared/notification.rb +10 -0
  92. data/spec/unit/client/shared/pushy/app.rb +17 -0
  93. data/spec/unit/client/shared/pushy/notification.rb +55 -0
  94. data/spec/unit/client/shared/wns/badge_notification.rb +15 -0
  95. data/spec/unit/client/shared/wns/raw_notification.rb +21 -0
  96. data/spec/unit/client/shared/wpns/app.rb +4 -0
  97. data/spec/unit/client/shared/wpns/notification.rb +18 -0
  98. data/spec/unit/daemon/apns/feedback_receiver_spec.rb +19 -1
  99. data/spec/unit/daemon/gcm/delivery_spec.rb +1 -1
  100. data/spec/unit/daemon/shared/store.rb +312 -0
  101. data/spec/unit/daemon/store/active_record/reconnectable_spec.rb +7 -7
  102. data/spec/unit/daemon/store/active_record_spec.rb +7 -295
  103. data/spec/unit/daemon/store/redis_spec.rb +4 -293
  104. data/spec/unit/daemon/wns/post_request_spec.rb +64 -0
  105. data/spec/unit_spec_helper.rb +3 -0
  106. metadata +120 -15
  107. data/lib/rpush/client/active_model/apns/binary_notification_validator.rb +0 -16
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c92f2053a81534384b1439e958afc67fe51913fb4144abe0e0a60edda626f37f
4
- data.tar.gz: fb6d691def9b053fd6eba40244dd84adebfbb549a5d02d4310381bfadbb06bc9
3
+ metadata.gz: 1bd7e063c214b8ab031ca63892ec39f425813c6a1dd9f54f09cfdc5b0e6291b7
4
+ data.tar.gz: '080a33b636882719f1bf2284035a5fe9d22d8073123808a9d1e3acee84622588'
5
5
  SHA512:
6
- metadata.gz: 980046a8d527a44066937d54e32fea017d8afbd0177a027ec78a21fe31ddaf28bc075c8ddcb9ce2785b453e0d16fe011473de985bb4155882957e11067fd305a
7
- data.tar.gz: 99cac2e5c9e4d06e190f27eef97adf41f388d4e9a9116dd9e7beb8b013fe853138c1ef55fa92ea9a82ad9297db544d3d7ead18c568f43a5ced72d6ebacc2e487
6
+ metadata.gz: e68cf92207ac195e120063301ae6ec23217fbaf31ea46757a9a28163dcc584763e08f26e4e1cf11978bf10a232b9eabd71ef205c4817543d8065e32fc3bf0418
7
+ data.tar.gz: 5bdb35aa1a78ff6f6590072581deb06e29ad51c2255b603c2ed35c985e65fdbb8b524fca80a011d0acae8038dc67579e7cb7d822f24d41ce36da81fb615b3f24
@@ -1,6 +1,62 @@
1
1
  # Changelog
2
2
 
3
- ## Unreleased
3
+ ## [v5.1.0](https://github.com/rpush/rpush/tree/v5.1.0) (2020-09-25)
4
+
5
+ [Full Changelog](https://github.com/rpush/rpush/compare/v5.0.0...v5.1.0)
6
+
7
+ **Merged pull requests:**
8
+
9
+ - Resume APNS2 delivery when async requests timeout [\#564](https://github.com/rpush/rpush/pull/564) ([benlangfeld](https://github.com/benlangfeld))
10
+ - Improve DB reconnection for big tables [\#563](https://github.com/rpush/rpush/pull/563) ([AlexTatarnikov](https://github.com/AlexTatarnikov))
11
+ - Default the Rails environment to RAILS_ENV if set [\#562](https://github.com/rpush/rpush/pull/562) ([benlangfeld](https://github.com/benlangfeld))
12
+ - Allow Apns2 payloads to be up to 4096 bytes [\#561](https://github.com/rpush/rpush/pull/561) ([benlangfeld](https://github.com/benlangfeld))
13
+ - Improve test coverage [\#528](https://github.com/rpush/rpush/pull/528) ([jhottenstein](https://github.com/jhottenstein))
14
+
15
+ ## [v5.0.0](https://github.com/rpush/rpush/tree/v5.0.0) (2020-02-21)
16
+
17
+ [Full Changelog](https://github.com/rpush/rpush/compare/v4.2.0...v5.0.0)
18
+
19
+ **Merged pull requests:**
20
+
21
+ - Test with Ruby 2.7 [\#550](https://github.com/rpush/rpush/pull/550) ([aried3r](https://github.com/aried3r))
22
+ - Fix GCM priority when using Redis [\#549](https://github.com/rpush/rpush/pull/549) ([daniel-nelson](https://github.com/daniel-nelson))
23
+ - Drop support for Rails 4.2 [\#547](https://github.com/rpush/rpush/pull/547) ([aried3r](https://github.com/aried3r))
24
+
25
+ ## 4.2.0 (2019-12-13)
26
+
27
+ [Full Changelog](https://github.com/rpush/rpush/compare/v4.1.1...v4.2.0)
28
+
29
+ **Merged pull requests:**
30
+
31
+ - Fix Rails 6.1 related deprecation warnings [\#541](https://github.com/rpush/rpush/pull/541) ([dsantosmerino](https://github.com/dsantosmerino))
32
+ - GCM notification incorrectly mixes data into notification hashes [\#535](https://github.com/rpush/rpush/pull/535) ([mkon](https://github.com/mkon))
33
+ - handle priority in WNS [\#533](https://github.com/rpush/rpush/pull/533) ([Fivell](https://github.com/Fivell))
34
+ - Update development apns urls to match documentation [\#524](https://github.com/rpush/rpush/pull/524) ([jhottenstein](https://github.com/jhottenstein))
35
+ - Update README to remove incorrect info [\#523](https://github.com/rpush/rpush/pull/523) ([sharang-d](https://github.com/sharang-d))
36
+ - Fix and improve Travis setup [\#520](https://github.com/rpush/rpush/pull/520) ([aried3r](https://github.com/aried3r))
37
+ - Explicitly use Rails 6.0.0 [\#519](https://github.com/rpush/rpush/pull/519) ([jsantos](https://github.com/jsantos))
38
+ - Stale bot config change [\#515](https://github.com/rpush/rpush/pull/515) ([aried3r](https://github.com/aried3r))
39
+ - Add stale bot configuration. [\#514](https://github.com/rpush/rpush/pull/514) ([drn](https://github.com/drn))
40
+ - Correctly use feedback_enabled. [\#511](https://github.com/rpush/rpush/pull/511) ([kirbycool](https://github.com/kirbycool))
41
+ - Update apns_http2.rb [\#510](https://github.com/rpush/rpush/pull/510) ([mldoscar](https://github.com/mldoscar))
42
+ - Add `mutable_content` support for GCM [\#506](https://github.com/rpush/rpush/pull/506) ([hon3st](https://github.com/hon3st))
43
+ - Add support for critical alerts [\#502](https://github.com/rpush/rpush/pull/502) ([servn](https://github.com/servn))
44
+
45
+ ## 4.1.1 (2019-05-13)
46
+
47
+ ### Added
48
+
49
+ - Allow disabling of APNS feedback for specific Rpush apps [#491](https://github.com/rpush/rpush/pull/491) (by [@drn](https://github.com/drn)).
50
+
51
+ ### Changed
52
+
53
+ - Switch from ANSI to Rainbow. ([#496](https://github.com/rpush/rpush/pull/496) by [@drn](https://github.com/drn))
54
+
55
+ ## 4.1.0 (2019-04-17)
56
+
57
+ ### Added
58
+
59
+ - Functionality to use `dry_run` in FCM notifications. This is useful if you want to just validate notification sending works without actually sending a notification to the receivers, fixes #63. ([#492](https://github.com/rpush/rpush/pull/492) by [@aried3r](https://github.com/aried3r))
4
60
 
5
61
  ## 4.0.1 (2019-04-04)
6
62
 
@@ -140,15 +196,15 @@ When upgrading, don't forget to run `bundle exec rpush init` to get all the late
140
196
 
141
197
  #### Fixes
142
198
 
143
- * Fixes migrations added in 3.0.1 ([#396](https://github.com/rpush/rpush/pull/396) by [@grosser](https://github.com/grosser))
144
- * Actually run these migrations in the test suite ([#399](https://github.com/rpush/rpush/pull/399) by [@aried3r](https://github.com/aried3r))
199
+ - Fixes migrations added in 3.0.1 ([#396](https://github.com/rpush/rpush/pull/396) by [@grosser](https://github.com/grosser))
200
+ - Actually run these migrations in the test suite ([#399](https://github.com/rpush/rpush/pull/399) by [@aried3r](https://github.com/aried3r))
145
201
 
146
202
  ## 3.0.1 (2017-11-30)
147
203
 
148
204
  #### Enhancements
149
205
 
150
- * Reduce booleans to true/false, do not allow nil ([#384](https://github.com/rpush/rpush/pull/384)) by [@grosser](https://github.com/grosser)
151
- * Better error message for error 8 in APNS ([#387](https://github.com/rpush/rpush/pull/387/files)) by [@grosser](https://github.com/grosser)
206
+ - Reduce booleans to true/false, do not allow nil ([#384](https://github.com/rpush/rpush/pull/384)) by [@grosser](https://github.com/grosser)
207
+ - Better error message for error 8 in APNS ([#387](https://github.com/rpush/rpush/pull/387/files)) by [@grosser](https://github.com/grosser)
152
208
 
153
209
  ## 3.0.0 (2017-09-15)
154
210
 
@@ -156,7 +212,7 @@ Same as 3.0.0.rc1 including:
156
212
 
157
213
  #### Features
158
214
 
159
- * Added support for latest modis version ([#378](https://github.com/rpush/rpush/pull/378)) by [@milgner](https://github.com/milgner)
215
+ - Added support for latest modis version ([#378](https://github.com/rpush/rpush/pull/378)) by [@milgner](https://github.com/milgner)
160
216
 
161
217
  ## 3.0.0.rc1 (2017-08-31)
162
218
 
@@ -164,233 +220,267 @@ When upgrading, don't forget to run `bundle exec rpush init` to get all the late
164
220
 
165
221
  #### Features
166
222
 
167
- * Added support for APNS `mutable-content` ([#296](https://github.com/rpush/rpush/pull/296) by [@tdtran](https://github.com/tdtran))
168
- * Added support for HTTP2 base APNS Api ([#315](https://github.com/rpush/rpush/pull/315) by [@soulfly](https://github.com/soulfly) and [@Nattfodd](https://github.com/Nattfodd))
223
+ - Added support for APNS `mutable-content` ([#296](https://github.com/rpush/rpush/pull/296) by [@tdtran](https://github.com/tdtran))
224
+ - Added support for HTTP2 base APNS Api ([#315](https://github.com/rpush/rpush/pull/315) by [@soulfly](https://github.com/soulfly) and [@Nattfodd](https://github.com/Nattfodd))
169
225
 
170
226
  #### Changes
171
227
 
172
- * **Breaking:** Dropped support for old Rubies and Rails versions. rpush 3.0 only supports Ruby versions 2.2.2 or higher and
228
+ - **Breaking:** Dropped support for old Rubies and Rails versions. rpush 3.0 only supports Ruby versions 2.2.2 or higher and
173
229
  Rails 4.2 or higher. ([#366](https://github.com/rpush/rpush/pull/366) by [@aried3r](https://github.com/aried3r))
174
- * **Breaking:** Dropped MongoDB support because there was no one maintaining it. But we're open to adding it back in. ([#366](https://github.com/rpush/rpush/pull/366) by [@aried3r](https://github.com/aried3r))
175
- * **Breaking:** Dropped JRuby support. ([#366](https://github.com/rpush/rpush/pull/366) by [@aried3r](https://github.com/aried3r))
230
+ - **Breaking:** Dropped MongoDB support because there was no one maintaining it. But we're open to adding it back in. ([#366](https://github.com/rpush/rpush/pull/366) by [@aried3r](https://github.com/aried3r))
231
+ - **Breaking:** Dropped JRuby support. ([#366](https://github.com/rpush/rpush/pull/366) by [@aried3r](https://github.com/aried3r))
176
232
 
177
- * Make synchronizer aware of GCM and WNS apps ([#254](https://github.com/rpush/rpush/pull/254) by [@wouterh](https://github.com/wouterh))
178
- * Precise after init commit msg ([#266](https://github.com/rpush/rpush/pull/266) by [@azranel](https://github.com/azranel))
179
- * Use new GCM endpoint ([#303](https://github.com/rpush/rpush/pull/303) by [@aried3r](https://github.com/aried3r))
180
- * Remove sound default value ([#320](https://github.com/rpush/rpush/pull/320) by [@amaierhofer](https://github.com/amaierhofer))
233
+ - Make synchronizer aware of GCM and WNS apps ([#254](https://github.com/rpush/rpush/pull/254) by [@wouterh](https://github.com/wouterh))
234
+ - Precise after init commit msg ([#266](https://github.com/rpush/rpush/pull/266) by [@azranel](https://github.com/azranel))
235
+ - Use new GCM endpoint ([#303](https://github.com/rpush/rpush/pull/303) by [@aried3r](https://github.com/aried3r))
236
+ - Remove sound default value ([#320](https://github.com/rpush/rpush/pull/320) by [@amaierhofer](https://github.com/amaierhofer))
181
237
 
182
238
  #### Bugfixes
183
239
 
184
- * ~~~Lock `net-http-persistent` dependency to `< 3`. See also [#306](https://github.com/rpush/rpush/issues/306) for more details. (by [@amaierhofer](https://github.com/amaierhofer))~~~
185
- * Fix `net-http-persistent` initializer to support version 2.x as well as 3.x. ([#309](https://github.com/rpush/rpush/pull/309) by [@amirmujkic](https://github.com/amirmujkic))
186
- * Fixed Rpush::ApnsFeedback being run on every application type when using Redis. ([#318](https://github.com/rpush/rpush/pull/318) by [@robertasg](https://github.com/robertasg))
240
+ - ~~~Lock `net-http-persistent` dependency to `< 3`. See also [#306](https://github.com/rpush/rpush/issues/306) for more details. (by [@amaierhofer](https://github.com/amaierhofer))~~~
241
+ - Fix `net-http-persistent` initializer to support version 2.x as well as 3.x. ([#309](https://github.com/rpush/rpush/pull/309) by [@amirmujkic](https://github.com/amirmujkic))
242
+ - Fixed Rpush::ApnsFeedback being run on every application type when using Redis. ([#318](https://github.com/rpush/rpush/pull/318) by [@robertasg](https://github.com/robertasg))
187
243
 
188
244
  ## 2.7.0 (February 9, 2016)
189
245
 
190
246
  #### Features
191
247
 
192
- * Added support for GCM priorities. ([#243](https://github.com/rpush/rpush/pull/243) by [@aried3r](https://github.com/aried3r))
193
- * Added support for GCM notification payload ([#246](https://github.com/rpush/rpush/pull/246) by [@aried3r](https://github.com/aried3r))
194
- * Added support for Windows Raw Notifications (in JSON form) ([#238](https://github.com/rpush/rpush/pull/238) by [@mseppae](https://github.com/mseppae))
195
- * Added WNS badge notifications ([#247](https://github.com/rpush/rpush/pull/247) by [@wouterh](https://github.com/wouterh))
196
- * Added the `launch` argument of WNS toast notifications ([#247](https://github.com/rpush/rpush/pull/247) by [@wouterh](https://github.com/wouterh))
197
- * Added sound in WNS toast notifications ([#247](https://github.com/rpush/rpush/pull/247) by [@wouterh](https://github.com/wouterh))
248
+ - Added support for GCM priorities. ([#243](https://github.com/rpush/rpush/pull/243) by [@aried3r](https://github.com/aried3r))
249
+ - Added support for GCM notification payload ([#246](https://github.com/rpush/rpush/pull/246) by [@aried3r](https://github.com/aried3r))
250
+ - Added support for Windows Raw Notifications (in JSON form) ([#238](https://github.com/rpush/rpush/pull/238) by [@mseppae](https://github.com/mseppae))
251
+ - Added WNS badge notifications ([#247](https://github.com/rpush/rpush/pull/247) by [@wouterh](https://github.com/wouterh))
252
+ - Added the `launch` argument of WNS toast notifications ([#247](https://github.com/rpush/rpush/pull/247) by [@wouterh](https://github.com/wouterh))
253
+ - Added sound in WNS toast notifications ([#247](https://github.com/rpush/rpush/pull/247) by [@wouterh](https://github.com/wouterh))
198
254
 
199
255
  #### Changes
200
256
 
201
- * Change `alert` type from `string` to `text` in ActiveRecord to allow bigger alert dictionaries. ([#248](https://github.com/rpush/rpush/pull/248) by [@schmidt](https://github.com/schmidt))
257
+ - Change `alert` type from `string` to `text` in ActiveRecord to allow bigger alert dictionaries. ([#248](https://github.com/rpush/rpush/pull/248) by [@schmidt](https://github.com/schmidt))
202
258
 
203
259
  #### Fixes
204
260
 
205
- * Fixed issue where setting the `mdm` parameter broke `to_binary` for MDM APNs ([#234](https://github.com/rpush/rpush/pull/234) by [@troya2](https://github.com/troya2))
206
- * Fixed `as_json` ([#231](https://github.com/rpush/rpush/issues/231) by [@aried3r](https://github.com/aried3r))
261
+ - Fixed issue where setting the `mdm` parameter broke `to_binary` for MDM APNs ([#234](https://github.com/rpush/rpush/pull/234) by [@troya2](https://github.com/troya2))
262
+ - Fixed `as_json` ([#231](https://github.com/rpush/rpush/issues/231) by [@aried3r](https://github.com/aried3r))
207
263
 
208
264
  ## 2.6.0 (January 25, 2016)
209
265
 
210
266
  #### Features
211
267
 
212
- * Added support for GCM for iOS' `content_available`. ([#221](https://github.com/rpush/rpush/pull/221))
268
+ - Added support for GCM for iOS' `content_available`. ([#221](https://github.com/rpush/rpush/pull/221))
213
269
 
214
270
  #### Fixes
215
271
 
216
- * Fix typo in Oracle support. ([#185](https://github.com/rpush/rpush/pull/185))
217
- * Remove `param` tag from WNS message. ([#190](https://github.com/rpush/rpush/pull/190))
218
- * Fixed WNS response headers parser. ([#192](https://github.com/rpush/rpush/pull/192))
219
- * GCM: fixed raise of unhandled errors. ([#193](https://github.com/rpush/rpush/pull/193))
220
- * Fix issue with custom PID file set in `Rpush.config`. ([#224](https://github.com/rpush/rpush/pull/224), [#225](https://github.com/rpush/rpush/pull/225))
272
+ - Fix typo in Oracle support. ([#185](https://github.com/rpush/rpush/pull/185))
273
+ - Remove `param` tag from WNS message. ([#190](https://github.com/rpush/rpush/pull/190))
274
+ - Fixed WNS response headers parser. ([#192](https://github.com/rpush/rpush/pull/192))
275
+ - GCM: fixed raise of unhandled errors. ([#193](https://github.com/rpush/rpush/pull/193))
276
+ - Fix issue with custom PID file set in `Rpush.config`. ([#224](https://github.com/rpush/rpush/pull/224), [#225](https://github.com/rpush/rpush/pull/225))
221
277
 
222
278
  ## 2.5.0 (July 19, 2015)
223
- Features:
224
- * Add 'rpush status' to inspect running Rpush internal status.
225
- * ActiveRecord logging is no longer redirected to rpush.log when embedded (#138).
226
- * Support for WNS (Windows RT) (#137).
227
- * Indexes added to some Mongoid fields (#151).
228
- * Added support for Oracle.
229
279
 
230
- Bug fixes:
231
- * Fix for handling APNs error when using `rpush push` or `Rpush.push`.
232
- * Fix backwards compatibility issue with ActiveRecord (#144).
280
+ Features:
281
+
282
+ - Add 'rpush status' to inspect running Rpush internal status.
283
+ - ActiveRecord logging is no longer redirected to rpush.log when embedded (#138).
284
+ - Support for WNS (Windows RT) (#137).
285
+ - Indexes added to some Mongoid fields (#151).
286
+ - Added support for Oracle.
287
+
288
+ Bug fixes:
289
+
290
+ - Fix for handling APNs error when using `rpush push` or `Rpush.push`.
291
+ - Fix backwards compatibility issue with ActiveRecord (#144).
233
292
 
234
293
  ## 2.4.0 (Feb 18, 2015)
235
- Features:
236
- * Support for MongoDB (using Mongoid).
237
- * config.feedback_poll is now deprecated, use config.apns.feedback_receiver.frequency instead.
238
- * Add config.apns.feedback_receiver.enabled to optionally enable the APNs feedback receiver (#129).
239
- * Passing configuration options directly to Rpush.embed and Rpush.push is now deprecated.
240
-
241
- Bug fixes:
242
- * Fix setting the log level when using Rails 4+ or without Rails (#124).
243
- * Fix the possibility for excessive error logging when using APNs (#128).
244
- * Re-use timestamp when replacing a migration with the same name (#91).
245
- * Ensure App/Notification type is updated during 2.0 upgrade migration (#102).
294
+
295
+ Features:
296
+
297
+ - Support for MongoDB (using Mongoid).
298
+ - config.feedback_poll is now deprecated, use config.apns.feedback_receiver.frequency instead.
299
+ - Add config.apns.feedback_receiver.enabled to optionally enable the APNs feedback receiver (#129).
300
+ - Passing configuration options directly to Rpush.embed and Rpush.push is now deprecated.
301
+
302
+ Bug fixes:
303
+
304
+ - Fix setting the log level when using Rails 4+ or without Rails (#124).
305
+ - Fix the possibility for excessive error logging when using APNs (#128).
306
+ - Re-use timestamp when replacing a migration with the same name (#91).
307
+ - Ensure App/Notification type is updated during 2.0 upgrade migration (#102).
246
308
 
247
309
  ## 2.3.2 (Jan 30, 2015)
248
- Bug fixes:
249
- * Internal sleep mechanism would sometimes no wait for the full duration specified.
250
- * Rpush.push nows delivers all pending notifications before returning.
251
- * Require thor >= 0.18.1 (#121).
310
+
311
+ Bug fixes:
312
+
313
+ - Internal sleep mechanism would sometimes no wait for the full duration specified.
314
+ - Rpush.push nows delivers all pending notifications before returning.
315
+ - Require thor >= 0.18.1 (#121).
252
316
 
253
317
  ## 2.3.1 (Jan 24, 2015)
254
- * Fix CPU thrashing while waiting for an APNs connection be established (#119).
318
+
319
+ - Fix CPU thrashing while waiting for an APNs connection be established (#119).
255
320
 
256
321
  ## 2.3.0 (Jan 19, 2015)
257
- * Add 'version' CLI command.
258
- * Rpush::Wpns::Notification now supports setting the 'data' attribute.
259
- * ActiveRecord is now directed to the configured Rpush logger (#104).
260
- * Logs are reopened when the HUP signal is received (#95).
261
- * Fix setting config.redis_options (#114).
262
- * Increase frequency of TCP keepalive probes on Linux.
263
- * APNs notifications are no longer marked as failed when a dropped connection is detected, as it's impossible to know exactly how many actually failed (if any).
264
- * Notifications are now retried instead of being marked as failed if a TCP/HTTP connection cannot be established.
322
+
323
+ - Add 'version' CLI command.
324
+ - Rpush::Wpns::Notification now supports setting the 'data' attribute.
325
+ - ActiveRecord is now directed to the configured Rpush logger (#104).
326
+ - Logs are reopened when the HUP signal is received (#95).
327
+ - Fix setting config.redis_options (#114).
328
+ - Increase frequency of TCP keepalive probes on Linux.
329
+ - APNs notifications are no longer marked as failed when a dropped connection is detected, as it's impossible to know exactly how many actually failed (if any).
330
+ - Notifications are now retried instead of being marked as failed if a TCP/HTTP connection cannot be established.
265
331
 
266
332
  ## 2.2.0 (Oct 7, 2014)
267
- * Numerous command-line fixes, sorry folks!
268
- * Add 'rpush push' command-line command for one-off use.
333
+
334
+ - Numerous command-line fixes, sorry folks!
335
+ - Add 'rpush push' command-line command for one-off use.
269
336
 
270
337
  ## 2.1.0 (Oct 4, 2014)
271
- * Bump APNs max payload size to 2048 for iOS 8.
272
- * Add 'category' for iOS 8.
273
- * Add url_args for Safari Push Notification Support (#77).
274
- * Improved command-line interface.
275
- * Rails integration is now optional.
276
- * Added log_level config option.
277
- * log_dir is now deprecated and has no effect, use log_file instead.
338
+
339
+ - Bump APNs max payload size to 2048 for iOS 8.
340
+ - Add 'category' for iOS 8.
341
+ - Add url_args for Safari Push Notification Support (#77).
342
+ - Improved command-line interface.
343
+ - Rails integration is now optional.
344
+ - Added log_level config option.
345
+ - log_dir is now deprecated and has no effect, use log_file instead.
278
346
 
279
347
  ## 2.0.1 (Sept 13, 2014)
280
- * Add ssl_certificate_revoked reflection (#68).
281
- * Fix for Postgis support in 2.0.0 migration (#70).
348
+
349
+ - Add ssl_certificate_revoked reflection (#68).
350
+ - Fix for Postgis support in 2.0.0 migration (#70).
282
351
 
283
352
  ## 2.0.0 (Sept 6, 2014)
284
- * Use APNs enhanced binary format version 2.
285
- * Support running multiple Rpush processes when using ActiveRecord and Redis.
286
- * APNs error detection is now performed asynchronously, 'check_for_errors' is therefore deprecated.
287
- * Deprecated attributes_for_device accessors. Use data instead.
288
- * Fix signal handling to work with Ruby 2.x. (#40).
289
- * You no longer need to signal HUP after creating a new app, they will be loaded automatically for you.
290
- * APNs notifications are now delivered in batches, greatly improving throughput.
291
- * Signaling HUP now also causes Rpush to immediately check for new notifications.
292
- * The 'wakeup' config option has been removed.
293
- * The 'batch_storage_updates' config option has been deprecated, storage backends will now always batch updates where appropriate.
294
- * The rpush process title updates with number of queued notifications and number of dispatchers.
295
- * Rpush::Apns::Feedback#app has been renamed to app_id and is now an Integer.
296
- * An app is restarted when the HUP signal is received if its certificate or environment attribute changed.
353
+
354
+ - Use APNs enhanced binary format version 2.
355
+ - Support running multiple Rpush processes when using ActiveRecord and Redis.
356
+ - APNs error detection is now performed asynchronously, 'check_for_errors' is therefore deprecated.
357
+ - Deprecated attributes_for_device accessors. Use data instead.
358
+ - Fix signal handling to work with Ruby 2.x. (#40).
359
+ - You no longer need to signal HUP after creating a new app, they will be loaded automatically for you.
360
+ - APNs notifications are now delivered in batches, greatly improving throughput.
361
+ - Signaling HUP now also causes Rpush to immediately check for new notifications.
362
+ - The 'wakeup' config option has been removed.
363
+ - The 'batch_storage_updates' config option has been deprecated, storage backends will now always batch updates where appropriate.
364
+ - The rpush process title updates with number of queued notifications and number of dispatchers.
365
+ - Rpush::Apns::Feedback#app has been renamed to app_id and is now an Integer.
366
+ - An app is restarted when the HUP signal is received if its certificate or environment attribute changed.
297
367
 
298
368
  ## 1.0.0 (Feb 9, 2014)
299
- * Renamed to Rpush (from Rapns). Version number reset to 1.0.0.
300
- * Reduce default batch size to 100.
301
- * Fix sqlite3 support (#160).
302
- * Drop support for Ruby 1.8.
303
- * Improve APNs certificate validation errors (#192) @mattconnolly).
304
- * Support for Windows Phone notifications (#191) (@matiaslina).
305
- * Support for Amazon device messaging (#173) (@darrylyip).
306
- * Add two new GCM reflections: gcm_delivered_to_recipient, gcm_failed_to_recipient (#184) (@jakeonfire).
307
- * Fix migration issues (#181) (@jcoleman).
308
- * Add GCM gcm_invalid_registration_id reflection (#171) (@marcrohloff).
309
- * Feature: wakeup feeder via UDP socket (#164) (@mattconnolly).
310
- * Fix reflections when using batches (#161).
311
- * Only perform APNs certificate validation for APNs apps (#133).
312
- * The deprecated on_apns_feedback has now been removed.
313
- * The deprecated airbrake_notify config option has been removed.
314
- * Removed the deprecated ability to set attributes_for_device using mass-assignment.
315
- * Fixed issue where database connections may not be released from the connection pool.
369
+
370
+ - Renamed to Rpush (from Rapns). Version number reset to 1.0.0.
371
+ - Reduce default batch size to 100.
372
+ - Fix sqlite3 support (#160).
373
+ - Drop support for Ruby 1.8.
374
+ - Improve APNs certificate validation errors (#192) @mattconnolly).
375
+ - Support for Windows Phone notifications (#191) (@matiaslina).
376
+ - Support for Amazon device messaging (#173) (@darrylyip).
377
+ - Add two new GCM reflections: gcm_delivered_to_recipient, gcm_failed_to_recipient (#184) (@jakeonfire).
378
+ - Fix migration issues (#181) (@jcoleman).
379
+ - Add GCM gcm_invalid_registration_id reflection (#171) (@marcrohloff).
380
+ - Feature: wakeup feeder via UDP socket (#164) (@mattconnolly).
381
+ - Fix reflections when using batches (#161).
382
+ - Only perform APNs certificate validation for APNs apps (#133).
383
+ - The deprecated on_apns_feedback has now been removed.
384
+ - The deprecated airbrake_notify config option has been removed.
385
+ - Removed the deprecated ability to set attributes_for_device using mass-assignment.
386
+ - Fixed issue where database connections may not be released from the connection pool.
316
387
 
317
388
  ## 3.4.1 (Aug 30, 2013)
318
- * Silence unintended airbrake_notify deprecation warning (#158).
319
- * Add :dependent => :destroy to app notifications (#156).
389
+
390
+ - Silence unintended airbrake_notify deprecation warning (#158).
391
+ - Add :dependent => :destroy to app notifications (#156).
320
392
 
321
393
  ## 3.4.0 (Aug 28, 2013)
322
- * Rails 4 support.
323
- * Add apns_certificate_will_expire reflection.
324
- * Perform storage update in batches where possible, to increase throughput.
325
- * airbrake_notify is now deprecated, use the Reflection API instead.
326
- * Fix calling the notification_delivered reflection twice (#149).
394
+
395
+ - Rails 4 support.
396
+ - Add apns_certificate_will_expire reflection.
397
+ - Perform storage update in batches where possible, to increase throughput.
398
+ - airbrake_notify is now deprecated, use the Reflection API instead.
399
+ - Fix calling the notification_delivered reflection twice (#149).
327
400
 
328
401
  ## 3.3.2 (June 30, 2013)
329
- * Fix Rails 3.0.x compatibility (#138) (@yoppi).
330
- * Ensure Rails does not set a default value for text columns (#137).
331
- * Fix error in down action for add_gcm migration (#135) (@alexperto).
402
+
403
+ - Fix Rails 3.0.x compatibility (#138) (@yoppi).
404
+ - Ensure Rails does not set a default value for text columns (#137).
405
+ - Fix error in down action for add_gcm migration (#135) (@alexperto).
332
406
 
333
407
  ## 3.3.1 (June 2, 2013)
334
- * Fix compatibility with postgres_ext (#104).
335
- * Add ability to switch the logger (@maxsz).
336
- * Do not validate presence of alert, badge or sound - not actually required by the APNs (#129) (@wilg).
337
- * Catch IOError from an APNs connection. (@maxsz).
338
- * Allow nested hashes in APNs notification attributes (@perezda).
408
+
409
+ - Fix compatibility with postgres_ext (#104).
410
+ - Add ability to switch the logger (@maxsz).
411
+ - Do not validate presence of alert, badge or sound - not actually required by the APNs (#129) (@wilg).
412
+ - Catch IOError from an APNs connection. (@maxsz).
413
+ - Allow nested hashes in APNs notification attributes (@perezda).
339
414
 
340
415
  ## 3.3.0 (April 21, 2013)
341
- * GCM: collapse_key is no longer required to set expiry (time_to_live).
342
- * Add reflection for GCM canonical IDs.
343
- * Add Rpush::Daemon.store to decouple storage backend.
416
+
417
+ - GCM: collapse_key is no longer required to set expiry (time_to_live).
418
+ - Add reflection for GCM canonical IDs.
419
+ - Add Rpush::Daemon.store to decouple storage backend.
344
420
 
345
421
  ## 3.2.0 (Apr 1, 2013)
346
- * Rpush.apns_feedback for one time feedback retrieval. Rpush.push no longer checks for feedback (#117, #105).
347
- * Lazily connect to the APNs only when a notification is to be delivered (#111).
348
- * Ensure all notifications are sent when using Rpush.push (#107).
349
- * Fix issue with running Rpush.push more than once in the same process (#106).
422
+
423
+ - Rpush.apns_feedback for one time feedback retrieval. Rpush.push no longer checks for feedback (#117, #105).
424
+ - Lazily connect to the APNs only when a notification is to be delivered (#111).
425
+ - Ensure all notifications are sent when using Rpush.push (#107).
426
+ - Fix issue with running Rpush.push more than once in the same process (#106).
350
427
 
351
428
  ## 3.1.0 (Jan 26, 2013)
352
- * Rpush.reflect API for fine-grained introspection.
353
- * Rpush.embed API for embedding Rpush into an existing process.
354
- * Rpush.push API for using Rpush in scheduled jobs.
355
- * Fix issue with integration with ActiveScaffold (#98) (@jeffarena).
356
- * Fix content-available setter for APNs (#95) (@dup2).
357
- * GCM validation fixes (#96) (@DianthuDia).
429
+
430
+ - Rpush.reflect API for fine-grained introspection.
431
+ - Rpush.embed API for embedding Rpush into an existing process.
432
+ - Rpush.push API for using Rpush in scheduled jobs.
433
+ - Fix issue with integration with ActiveScaffold (#98) (@jeffarena).
434
+ - Fix content-available setter for APNs (#95) (@dup2).
435
+ - GCM validation fixes (#96) (@DianthuDia).
358
436
 
359
437
  ## 3.0.1 (Dec 16, 2012)
360
- * Fix compatibility with Rails 3.0.x. Fixes #89.
438
+
439
+ - Fix compatibility with Rails 3.0.x. Fixes #89.
361
440
 
362
441
  ## 3.0.0 (Dec 15, 2012)
363
- * Add support for Google Cloud Messaging.
364
- * Fix Heroku logging issue.
365
442
 
366
- ## 2.0.5 (Nov 4, 2012) ##
367
- * Support content-available (#68).
368
- * Append to log files.
369
- * Fire a callback when Feedback is received.
443
+ - Add support for Google Cloud Messaging.
444
+ - Fix Heroku logging issue.
445
+
446
+ ## 2.0.5 (Nov 4, 2012)
447
+
448
+ - Support content-available (#68).
449
+ - Append to log files.
450
+ - Fire a callback when Feedback is received.
451
+
452
+ ## 2.0.5.rc1 (Oct 5, 2012)
453
+
454
+ - Release db connections back into the pool after use (#72).
455
+ - Continue to start daemon if a connection cannot be made during startup (#62) (@mattconnolly).
456
+
457
+ ## 2.0.4 (Aug 6, 2012)
458
+
459
+ - Don't exit when there aren't any Rpush::App instances, just warn (#55).
460
+
461
+ ## 2.0.3 (July 26, 2012)
462
+
463
+ - JRuby support.
464
+ - Explicitly list all attributes instead of calling column_names (#53).
465
+
466
+ ## 2.0.2 (July 25, 2012)
370
467
 
371
- ## 2.0.5.rc1 (Oct 5, 2012) ##
372
- * Release db connections back into the pool after use (#72).
373
- * Continue to start daemon if a connection cannot be made during startup (#62) (@mattconnolly).
468
+ - Support MultiJson < 1.3.0.
469
+ - Make all model attributes accessible.
374
470
 
375
- ## 2.0.4 (Aug 6, 2012) ##
376
- * Don't exit when there aren't any Rpush::App instances, just warn (#55).
471
+ ## 2.0.1 (July 7, 2012)
377
472
 
378
- ## 2.0.3 (July 26, 2012) ##
379
- * JRuby support.
380
- * Explicitly list all attributes instead of calling column_names (#53).
473
+ - Fix delivery when using Ruby 1.8.
474
+ - MultiJson support.
381
475
 
382
- ## 2.0.2 (July 25, 2012) ##
383
- * Support MultiJson < 1.3.0.
384
- * Make all model attributes accessible.
476
+ ## 2.0.0 (June 19, 2012)
385
477
 
386
- ## 2.0.1 (July 7, 2012) ##
387
- * Fix delivery when using Ruby 1.8.
388
- * MultiJson support.
478
+ - Support for multiple apps.
479
+ - Hot Updates - add/remove apps without restart.
480
+ - MDM support.
481
+ - Removed rpush.yml in favour of command line options.
482
+ - Started the changelog!
389
483
 
390
- ## 2.0.0 (June 19, 2012) ##
484
+ \* _This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)_
391
485
 
392
- * Support for multiple apps.
393
- * Hot Updates - add/remove apps without restart.
394
- * MDM support.
395
- * Removed rpush.yml in favour of command line options.
396
- * Started the changelog!
486
+ \* _This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)_