activity_notification 2.4.1 → 2.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.
Files changed (250) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -2
  3. data/app/jobs/activity_notification/cascading_notification_job.rb +123 -0
  4. data/docs/Functions.md +197 -1
  5. data/lib/activity_notification/apis/cascading_notification_api.rb +208 -0
  6. data/lib/activity_notification/apis/notification_api.rb +3 -0
  7. data/lib/activity_notification/config.rb +10 -0
  8. data/lib/activity_notification/mailers/helpers.rb +27 -1
  9. data/lib/activity_notification/version.rb +1 -1
  10. data/lib/generators/templates/activity_notification.rb +8 -0
  11. metadata +5 -441
  12. data/.codeclimate.yml +0 -33
  13. data/.coveralls.yml +0 -1
  14. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -22
  15. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -17
  16. data/.github/pull_request_template.md +0 -13
  17. data/.github/workflows/build.yml +0 -100
  18. data/.gitignore +0 -74
  19. data/.rspec +0 -3
  20. data/.rubocop.yml +0 -1157
  21. data/.yardopts +0 -6
  22. data/CHANGELOG.md +0 -452
  23. data/Gemfile +0 -31
  24. data/Procfile +0 -2
  25. data/Rakefile +0 -28
  26. data/activity_notification.gemspec +0 -44
  27. data/ai-curated-specs/issues/172/design.md +0 -220
  28. data/ai-curated-specs/issues/172/tasks.md +0 -326
  29. data/ai-curated-specs/issues/188/design.md +0 -227
  30. data/ai-curated-specs/issues/188/requirements.md +0 -78
  31. data/ai-curated-specs/issues/188/tasks.md +0 -203
  32. data/ai-curated-specs/issues/188/upstream-contributions.md +0 -592
  33. data/ai-curated-specs/issues/50/design.md +0 -235
  34. data/ai-curated-specs/issues/50/requirements.md +0 -49
  35. data/ai-curated-specs/issues/50/tasks.md +0 -232
  36. data/bin/_dynamodblocal +0 -4
  37. data/bin/bundle_update.sh +0 -7
  38. data/bin/deploy_on_heroku.sh +0 -16
  39. data/bin/install_dynamodblocal.sh +0 -5
  40. data/bin/start_dynamodblocal.sh +0 -47
  41. data/bin/stop_dynamodblocal.sh +0 -34
  42. data/gemfiles/Gemfile.rails-5.0 +0 -25
  43. data/gemfiles/Gemfile.rails-5.1 +0 -25
  44. data/gemfiles/Gemfile.rails-5.2 +0 -24
  45. data/gemfiles/Gemfile.rails-6.0 +0 -23
  46. data/gemfiles/Gemfile.rails-6.1 +0 -22
  47. data/gemfiles/Gemfile.rails-7.0 +0 -25
  48. data/gemfiles/Gemfile.rails-7.1 +0 -23
  49. data/gemfiles/Gemfile.rails-7.2 +0 -23
  50. data/gemfiles/Gemfile.rails-8.0 +0 -24
  51. data/package.json +0 -8
  52. data/spec/channels/notification_api_channel_shared_examples.rb +0 -59
  53. data/spec/channels/notification_api_channel_spec.rb +0 -49
  54. data/spec/channels/notification_api_with_devise_channel_spec.rb +0 -76
  55. data/spec/channels/notification_channel_shared_examples.rb +0 -59
  56. data/spec/channels/notification_channel_spec.rb +0 -48
  57. data/spec/channels/notification_with_devise_channel_spec.rb +0 -97
  58. data/spec/concerns/apis/notification_api_spec.rb +0 -1627
  59. data/spec/concerns/apis/subscription_api_spec.rb +0 -474
  60. data/spec/concerns/common_spec.rb +0 -213
  61. data/spec/concerns/models/group_spec.rb +0 -61
  62. data/spec/concerns/models/notifiable_spec.rb +0 -782
  63. data/spec/concerns/models/notifier_spec.rb +0 -71
  64. data/spec/concerns/models/subscriber_spec.rb +0 -800
  65. data/spec/concerns/models/target_spec.rb +0 -1285
  66. data/spec/concerns/renderable_spec.rb +0 -129
  67. data/spec/config_spec.rb +0 -85
  68. data/spec/controllers/common_controller_spec.rb +0 -25
  69. data/spec/controllers/controller_spec_utility.rb +0 -100
  70. data/spec/controllers/dummy_common_controller.rb +0 -5
  71. data/spec/controllers/notifications_api_controller_shared_examples.rb +0 -619
  72. data/spec/controllers/notifications_api_controller_spec.rb +0 -19
  73. data/spec/controllers/notifications_api_with_devise_controller_spec.rb +0 -60
  74. data/spec/controllers/notifications_controller_shared_examples.rb +0 -743
  75. data/spec/controllers/notifications_controller_spec.rb +0 -11
  76. data/spec/controllers/notifications_with_devise_controller_spec.rb +0 -97
  77. data/spec/controllers/subscriptions_api_controller_shared_examples.rb +0 -750
  78. data/spec/controllers/subscriptions_api_controller_spec.rb +0 -19
  79. data/spec/controllers/subscriptions_api_with_devise_controller_spec.rb +0 -60
  80. data/spec/controllers/subscriptions_controller_shared_examples.rb +0 -946
  81. data/spec/controllers/subscriptions_controller_spec.rb +0 -11
  82. data/spec/controllers/subscriptions_with_devise_controller_spec.rb +0 -97
  83. data/spec/factories/admins.rb +0 -5
  84. data/spec/factories/articles.rb +0 -5
  85. data/spec/factories/comments.rb +0 -6
  86. data/spec/factories/dummy/dummy_group.rb +0 -4
  87. data/spec/factories/dummy/dummy_notifiable.rb +0 -4
  88. data/spec/factories/dummy/dummy_notifier.rb +0 -4
  89. data/spec/factories/dummy/dummy_subscriber.rb +0 -4
  90. data/spec/factories/dummy/dummy_target.rb +0 -4
  91. data/spec/factories/notifications.rb +0 -7
  92. data/spec/factories/subscriptions.rb +0 -8
  93. data/spec/factories/users.rb +0 -11
  94. data/spec/generators/controllers_generator_spec.rb +0 -85
  95. data/spec/generators/install_generator_spec.rb +0 -43
  96. data/spec/generators/migration/migration_generator_spec.rb +0 -80
  97. data/spec/generators/models_generator_spec.rb +0 -96
  98. data/spec/generators/views_generator_spec.rb +0 -195
  99. data/spec/helpers/polymorphic_helpers_spec.rb +0 -89
  100. data/spec/helpers/view_helpers_spec.rb +0 -547
  101. data/spec/jobs/notification_resilience_job_spec.rb +0 -167
  102. data/spec/jobs/notify_all_job_spec.rb +0 -23
  103. data/spec/jobs/notify_job_spec.rb +0 -23
  104. data/spec/jobs/notify_to_job_spec.rb +0 -23
  105. data/spec/mailers/mailer_spec.rb +0 -214
  106. data/spec/mailers/notification_resilience_spec.rb +0 -263
  107. data/spec/models/dummy/dummy_group_spec.rb +0 -10
  108. data/spec/models/dummy/dummy_notifiable_spec.rb +0 -10
  109. data/spec/models/dummy/dummy_notifier_spec.rb +0 -10
  110. data/spec/models/dummy/dummy_subscriber_spec.rb +0 -8
  111. data/spec/models/dummy/dummy_target_spec.rb +0 -10
  112. data/spec/models/notification_spec.rb +0 -472
  113. data/spec/models/subscription_spec.rb +0 -215
  114. data/spec/optional_targets/action_cable_api_channel_spec.rb +0 -34
  115. data/spec/optional_targets/action_cable_channel_spec.rb +0 -41
  116. data/spec/optional_targets/amazon_sns_spec.rb +0 -47
  117. data/spec/optional_targets/base_spec.rb +0 -45
  118. data/spec/optional_targets/slack_spec.rb +0 -44
  119. data/spec/orm/dynamoid_spec.rb +0 -115
  120. data/spec/rails_app/Rakefile +0 -15
  121. data/spec/rails_app/app/assets/config/manifest.js +0 -3
  122. data/spec/rails_app/app/assets/images/.keep +0 -0
  123. data/spec/rails_app/app/assets/javascripts/application.js +0 -3
  124. data/spec/rails_app/app/assets/javascripts/cable.js +0 -12
  125. data/spec/rails_app/app/assets/stylesheets/application.css +0 -15
  126. data/spec/rails_app/app/assets/stylesheets/reset.css +0 -85
  127. data/spec/rails_app/app/assets/stylesheets/style.css +0 -244
  128. data/spec/rails_app/app/controllers/admins_controller.rb +0 -21
  129. data/spec/rails_app/app/controllers/application_controller.rb +0 -5
  130. data/spec/rails_app/app/controllers/articles_controller.rb +0 -67
  131. data/spec/rails_app/app/controllers/comments_controller.rb +0 -36
  132. data/spec/rails_app/app/controllers/concerns/.keep +0 -0
  133. data/spec/rails_app/app/controllers/spa_controller.rb +0 -7
  134. data/spec/rails_app/app/controllers/users/notifications_controller.rb +0 -2
  135. data/spec/rails_app/app/controllers/users/notifications_with_devise_controller.rb +0 -2
  136. data/spec/rails_app/app/controllers/users/subscriptions_controller.rb +0 -2
  137. data/spec/rails_app/app/controllers/users/subscriptions_with_devise_controller.rb +0 -2
  138. data/spec/rails_app/app/controllers/users_controller.rb +0 -26
  139. data/spec/rails_app/app/helpers/application_helper.rb +0 -2
  140. data/spec/rails_app/app/helpers/devise_helper.rb +0 -2
  141. data/spec/rails_app/app/javascript/App.vue +0 -40
  142. data/spec/rails_app/app/javascript/components/DeviseTokenAuth.vue +0 -82
  143. data/spec/rails_app/app/javascript/components/Top.vue +0 -98
  144. data/spec/rails_app/app/javascript/components/notifications/Index.vue +0 -200
  145. data/spec/rails_app/app/javascript/components/notifications/Notification.vue +0 -133
  146. data/spec/rails_app/app/javascript/components/notifications/NotificationContent.vue +0 -122
  147. data/spec/rails_app/app/javascript/components/subscriptions/Index.vue +0 -279
  148. data/spec/rails_app/app/javascript/components/subscriptions/NewSubscription.vue +0 -112
  149. data/spec/rails_app/app/javascript/components/subscriptions/NotificationKey.vue +0 -141
  150. data/spec/rails_app/app/javascript/components/subscriptions/Subscription.vue +0 -226
  151. data/spec/rails_app/app/javascript/config/development.js +0 -5
  152. data/spec/rails_app/app/javascript/config/environment.js +0 -7
  153. data/spec/rails_app/app/javascript/config/production.js +0 -5
  154. data/spec/rails_app/app/javascript/config/test.js +0 -5
  155. data/spec/rails_app/app/javascript/packs/application.js +0 -18
  156. data/spec/rails_app/app/javascript/packs/spa.js +0 -14
  157. data/spec/rails_app/app/javascript/router/index.js +0 -73
  158. data/spec/rails_app/app/javascript/store/index.js +0 -37
  159. data/spec/rails_app/app/mailers/.keep +0 -0
  160. data/spec/rails_app/app/mailers/custom_notification_mailer.rb +0 -5
  161. data/spec/rails_app/app/models/admin.rb +0 -35
  162. data/spec/rails_app/app/models/article.rb +0 -54
  163. data/spec/rails_app/app/models/comment.rb +0 -81
  164. data/spec/rails_app/app/models/dummy/dummy_base.rb +0 -11
  165. data/spec/rails_app/app/models/dummy/dummy_group.rb +0 -23
  166. data/spec/rails_app/app/models/dummy/dummy_notifiable.rb +0 -15
  167. data/spec/rails_app/app/models/dummy/dummy_notifiable_target.rb +0 -27
  168. data/spec/rails_app/app/models/dummy/dummy_notifier.rb +0 -15
  169. data/spec/rails_app/app/models/dummy/dummy_subscriber.rb +0 -14
  170. data/spec/rails_app/app/models/dummy/dummy_target.rb +0 -16
  171. data/spec/rails_app/app/models/user.rb +0 -73
  172. data/spec/rails_app/app/views/activity_notification/mailer/dummy_subscribers/test_key.text.erb +0 -1
  173. data/spec/rails_app/app/views/activity_notification/notifications/default/article/_update.html.erb +0 -146
  174. data/spec/rails_app/app/views/activity_notification/notifications/default/custom/_path_test.html.erb +0 -1
  175. data/spec/rails_app/app/views/activity_notification/notifications/default/custom/_test.html.erb +0 -1
  176. data/spec/rails_app/app/views/activity_notification/notifications/users/_custom_index.html.erb +0 -1
  177. data/spec/rails_app/app/views/activity_notification/notifications/users/custom/_test.html.erb +0 -1
  178. data/spec/rails_app/app/views/activity_notification/notifications/users/overridden/custom/_test.html.erb +0 -1
  179. data/spec/rails_app/app/views/activity_notification/optional_targets/admins/amazon_sns/comment/_default.text.erb +0 -10
  180. data/spec/rails_app/app/views/articles/_form.html.erb +0 -24
  181. data/spec/rails_app/app/views/articles/edit.html.erb +0 -8
  182. data/spec/rails_app/app/views/articles/index.html.erb +0 -113
  183. data/spec/rails_app/app/views/articles/new.html.erb +0 -7
  184. data/spec/rails_app/app/views/articles/show.html.erb +0 -49
  185. data/spec/rails_app/app/views/layouts/_header.html.erb +0 -46
  186. data/spec/rails_app/app/views/layouts/application.html.erb +0 -15
  187. data/spec/rails_app/app/views/spa/index.html.erb +0 -2
  188. data/spec/rails_app/babel.config.js +0 -72
  189. data/spec/rails_app/bin/bundle +0 -3
  190. data/spec/rails_app/bin/rails +0 -4
  191. data/spec/rails_app/bin/rake +0 -4
  192. data/spec/rails_app/bin/setup +0 -29
  193. data/spec/rails_app/bin/webpack +0 -18
  194. data/spec/rails_app/bin/webpack-dev-server +0 -18
  195. data/spec/rails_app/config/application.rb +0 -54
  196. data/spec/rails_app/config/boot.rb +0 -5
  197. data/spec/rails_app/config/cable.yml +0 -8
  198. data/spec/rails_app/config/database.yml +0 -36
  199. data/spec/rails_app/config/dynamoid.rb +0 -13
  200. data/spec/rails_app/config/environment.rb +0 -26
  201. data/spec/rails_app/config/environments/development.rb +0 -60
  202. data/spec/rails_app/config/environments/production.rb +0 -85
  203. data/spec/rails_app/config/environments/test.rb +0 -53
  204. data/spec/rails_app/config/initializers/activity_notification.rb +0 -104
  205. data/spec/rails_app/config/initializers/assets.rb +0 -11
  206. data/spec/rails_app/config/initializers/backtrace_silencers.rb +0 -7
  207. data/spec/rails_app/config/initializers/cookies_serializer.rb +0 -3
  208. data/spec/rails_app/config/initializers/copy_it.aws.rb.template +0 -6
  209. data/spec/rails_app/config/initializers/devise.rb +0 -278
  210. data/spec/rails_app/config/initializers/devise_token_auth.rb +0 -55
  211. data/spec/rails_app/config/initializers/filter_parameter_logging.rb +0 -4
  212. data/spec/rails_app/config/initializers/inflections.rb +0 -16
  213. data/spec/rails_app/config/initializers/mime_types.rb +0 -4
  214. data/spec/rails_app/config/initializers/mysql.rb +0 -9
  215. data/spec/rails_app/config/initializers/session_store.rb +0 -3
  216. data/spec/rails_app/config/initializers/wrap_parameters.rb +0 -14
  217. data/spec/rails_app/config/initializers/zeitwerk.rb +0 -10
  218. data/spec/rails_app/config/locales/activity_notification.en.yml +0 -26
  219. data/spec/rails_app/config/locales/devise.en.yml +0 -62
  220. data/spec/rails_app/config/mongoid.yml +0 -13
  221. data/spec/rails_app/config/routes.rb +0 -50
  222. data/spec/rails_app/config/secrets.yml +0 -22
  223. data/spec/rails_app/config/webpack/development.js +0 -5
  224. data/spec/rails_app/config/webpack/environment.js +0 -7
  225. data/spec/rails_app/config/webpack/loaders/vue.js +0 -6
  226. data/spec/rails_app/config/webpack/production.js +0 -5
  227. data/spec/rails_app/config/webpack/test.js +0 -5
  228. data/spec/rails_app/config/webpacker.yml +0 -97
  229. data/spec/rails_app/config.ru +0 -4
  230. data/spec/rails_app/db/migrate/20160716000000_create_test_tables.rb +0 -42
  231. data/spec/rails_app/db/migrate/20181209000000_create_activity_notification_tables.rb +0 -33
  232. data/spec/rails_app/db/migrate/20191201000000_add_tokens_to_users.rb +0 -10
  233. data/spec/rails_app/db/schema.rb +0 -98
  234. data/spec/rails_app/db/seeds.rb +0 -95
  235. data/spec/rails_app/lib/custom_optional_targets/console_output.rb +0 -16
  236. data/spec/rails_app/lib/custom_optional_targets/raise_error.rb +0 -14
  237. data/spec/rails_app/lib/custom_optional_targets/wrong_target.rb +0 -13
  238. data/spec/rails_app/lib/mailer_previews/mailer_preview.rb +0 -29
  239. data/spec/rails_app/package.json +0 -23
  240. data/spec/rails_app/postcss.config.js +0 -12
  241. data/spec/rails_app/public/404.html +0 -67
  242. data/spec/rails_app/public/422.html +0 -67
  243. data/spec/rails_app/public/500.html +0 -66
  244. data/spec/rails_app/public/favicon.ico +0 -0
  245. data/spec/roles/acts_as_group_spec.rb +0 -30
  246. data/spec/roles/acts_as_notifiable_spec.rb +0 -432
  247. data/spec/roles/acts_as_notifier_spec.rb +0 -30
  248. data/spec/roles/acts_as_target_spec.rb +0 -36
  249. data/spec/spec_helper.rb +0 -56
  250. data/spec/version_spec.rb +0 -31
data/.yardopts DELETED
@@ -1,6 +0,0 @@
1
- --no-private
2
- --hide-api private
3
- --plugin activesupport-concern
4
- --exclude /templates/
5
- app/**/*.rb
6
- lib/**/*.rb
data/CHANGELOG.md DELETED
@@ -1,452 +0,0 @@
1
- ## 2.4.1 / 2025-12-31
2
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.4.0...v2.4.1)
3
-
4
- Enhancements:
5
-
6
- * Make Mongoid and Dynamoid optional dependencies - [#190](https://github.com/simukappu/activity_notification/issues/190)
7
-
8
- Bug Fixes:
9
-
10
- * Fix OpenAPI schema validation errors in Subscription model
11
- * Fix Dynamoid ORM datetime format issue in optional_targets API response
12
- * Fix OpenAPI parser deprecation warning by adding strict_reference_validation configuration
13
-
14
- ## 2.4.0 / 2025-08-20
15
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.3.3...v2.4.0)
16
-
17
- Enhancements:
18
-
19
- * Support for Mongoid v9 - [#189](https://github.com/simukappu/activity_notification/issues/189)
20
- * Support for Dynamoid v3.11.0+ (upgraded from v3.1.0) - [#188](https://github.com/simukappu/activity_notification/issues/188)
21
- * Add bulk destroy notifications API - [#172](https://github.com/simukappu/activity_notification/issues/172)
22
- * Add ids parameter to open_all notifications API - [#172](https://github.com/simukappu/activity_notification/issues/172)
23
- * Add skip_validation option to open! method for notification handling - [#186](https://github.com/simukappu/activity_notification/issues/186) [#187](https://github.com/simukappu/activity_notification/pull/187)
24
- * Add exception handling to Mailer jobs for missing notification - [#50](https://github.com/simukappu/activity_notification/issues/50)
25
-
26
- Dependency:
27
-
28
- * Remove support for Rails 5 and 6
29
- * Update Mongoid dependency from development to runtime dependency - [#189](https://github.com/simukappu/activity_notification/issues/189)
30
- * Update Dynamoid dependency from development to runtime dependency - [#188](https://github.com/simukappu/activity_notification/issues/188)
31
-
32
- ## 2.3.3 / 2025-01-13
33
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.3.2...v2.3.3)
34
-
35
- Enhancements:
36
-
37
- * Allow use with Rails 8.0 - [#182](https://github.com/simukappu/activity_notification/pull/182) [#183](https://github.com/simukappu/activity_notification/issues/183)
38
-
39
- ## 2.3.2 / 2024-09-23
40
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.3.1...v2.3.2)
41
-
42
- Enhancements:
43
-
44
- * Allow use with Rails 7.2 - [#180](https://github.com/simukappu/activity_notification/pull/180) [#181](https://github.com/simukappu/activity_notification/issues/181)
45
-
46
- ## 2.3.1 / 2024-07-23
47
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.3.0...v2.3.1)
48
-
49
- Bug Fixes:
50
-
51
- * Fix serialize arguments for Rails 7.1 - [#178](https://github.com/simukappu/activity_notification/issues/178) [#179](https://github.com/simukappu/activity_notification/pull/179)
52
-
53
- ## 2.3.0 / 2024-06-02
54
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.2.4...v2.3.0)
55
-
56
- Enhancements:
57
-
58
- * Allow use with Rails 7.1 - [#173](https://github.com/simukappu/activity_notification/issues/173) [#177](https://github.com/simukappu/activity_notification/pull/177)
59
-
60
- ## 2.2.4 / 2023-03-20
61
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.2.3...v2.2.4)
62
-
63
- Bug Fixes:
64
-
65
- * Fix broken serialization with Rails security patch - [#166](https://github.com/simukappu/activity_notification/issues/166) [#167](https://github.com/simukappu/activity_notification/pull/167)
66
-
67
- ## 2.2.3 / 2022-02-12
68
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.2.2...v2.2.3)
69
-
70
- Enhancements:
71
-
72
- * Allow use with Rails 7.0 - [#164](https://github.com/simukappu/activity_notification/issues/164) [#165](https://github.com/simukappu/activity_notification/pull/165)
73
- * Add *rescue_optional_target_errors* config option to capture errors on optional targets - [#155](https://github.com/simukappu/activity_notification/issues/155) [#156](https://github.com/simukappu/activity_notification/pull/156)
74
- * Remove type definition from several columns with nullable and multiple type in OpenAPI schema
75
-
76
- ## 2.2.2 / 2021-04-18
77
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.2.1...v2.2.2)
78
-
79
- Enhancements:
80
-
81
- * Configure default subscriptions for emails and optional targets - [#159](https://github.com/simukappu/activity_notification/issues/159) [#160](https://github.com/simukappu/activity_notification/pull/160)
82
- * Upgrade gem dependency in tests with Rails 6.1 - [#152](https://github.com/simukappu/activity_notification/issues/152)
83
-
84
- ## 2.2.1 / 2021-01-24
85
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.2.0...v2.2.1)
86
-
87
- Enhancements:
88
-
89
- * Allow use with Rails 6.1 - [#152](https://github.com/simukappu/activity_notification/issues/152)
90
-
91
- ## 2.2.0 / 2020-12-05
92
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.1.4...v2.2.0)
93
-
94
- Enhancements:
95
-
96
- * Remove support for Rails 4.2 - [#151](https://github.com/simukappu/activity_notification/issues/151)
97
- * Turn on deprecation warnings in RSpec testing for Ruby 2.7 - [#122](https://github.com/simukappu/activity_notification/issues/122)
98
- * Remove Ruby 2.7 deprecation warnings - [#122](https://github.com/simukappu/activity_notification/issues/122)
99
-
100
- Breaking Changes:
101
-
102
- * Specify DynamoDB global secondary index name
103
- * Update additional fields to store into DynamoDB when *config.store_with_associated_records* is true
104
-
105
- ## 2.1.4 / 2020-11-07
106
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.1.3...v2.1.4)
107
-
108
- Enhancements:
109
-
110
- * Make *Common#to_class_name* method return base_class name in order to work with STI models - [#89](https://github.com/simukappu/activity_notification/issues/89) [#139](https://github.com/simukappu/activity_notification/pull/139)
111
-
112
- Bug Fixes:
113
-
114
- * Rename *Notifiable#notification_action_cable_allowed?* to *notifiable_action_cable_allowed?* to fix duplicate method name error - [#138](https://github.com/simukappu/activity_notification/issues/138)
115
- * Fix hash syntax in swagger schemas - [#146](https://github.com/simukappu/activity_notification/issues/146) [#147](https://github.com/simukappu/activity_notification/pull/147)
116
-
117
- ## 2.1.3 / 2020-08-11
118
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.1.2...v2.1.3)
119
-
120
- Enhancements:
121
-
122
- * Enable to use namespaced model - [#132](https://github.com/simukappu/activity_notification/pull/132)
123
-
124
- Bug Fixes:
125
-
126
- * Fix mongoid any_of selector error in filtered_by_group scope - [MONGOID-4887](https://jira.mongodb.org/browse/MONGOID-4887)
127
-
128
- ## 2.1.2 / 2020-02-24
129
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.1.1...v2.1.2)
130
-
131
- Bug Fixes:
132
-
133
- * Fix scope of uniqueness validation in subscription model with mongoid - [#126](https://github.com/simukappu/activity_notification/issues/126) [#128](https://github.com/simukappu/activity_notification/pull/128)
134
- * Fix uninitialized constant DeviseTokenAuth when *config.eager_load = true* - [#129](https://github.com/simukappu/activity_notification/issues/129)
135
-
136
- ## 2.1.1 / 2020-02-11
137
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.1.0...v2.1.1)
138
-
139
- Bug Fixes:
140
-
141
- * Fix eager_load by autoloading VERSION - [#124](https://github.com/simukappu/activity_notification/issues/124) [#125](https://github.com/simukappu/activity_notification/pull/125)
142
-
143
- ## 2.1.0 / 2020-02-04
144
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v2.0.0...v2.1.0)
145
-
146
- Enhancements:
147
-
148
- * Add API mode using notification and subscription API controllers - [#108](https://github.com/simukappu/activity_notification/issues/108) [#113](https://github.com/simukappu/activity_notification/issues/113)
149
- * Add API controllers integrated with Devise Token Auth - [#108](https://github.com/simukappu/activity_notification/issues/108) [#113](https://github.com/simukappu/activity_notification/issues/113)
150
- * Add sample single page application working with REST API backend - [#108](https://github.com/simukappu/activity_notification/issues/108) [#113](https://github.com/simukappu/activity_notification/issues/113)
151
- * Move Action Cable broadcasting to optional targets - [#111](https://github.com/simukappu/activity_notification/issues/111)
152
- * Add Action Cable API channels publishing formatted JSON - [#111](https://github.com/simukappu/activity_notification/issues/111)
153
- * Rescue and skip error in optional_targets - [#103](https://github.com/simukappu/activity_notification/issues/103)
154
- * Add *later_than* and *earlier_than* filter options to notification index API - [#108](https://github.com/simukappu/activity_notification/issues/108)
155
- * Add key uniqueness validation to subscription model - [#119](https://github.com/simukappu/activity_notification/issues/119)
156
- * Make mailer headers more configurable to set custom *from*, *reply_to* and *message_id* - [#116](https://github.com/simukappu/activity_notification/pull/116)
157
- * Allow use and test with Rails 6.0 release - [#102](https://github.com/simukappu/activity_notification/issues/102)
158
-
159
- Breaking Changes:
160
-
161
- * Change HTTP POST method of open notification and subscription methods into PUT method
162
- * Make *Target#open_all_notifications* return opened notification records instead of their count
163
- * Make *Subscriber#create_subscription* raise *ActivityNotification::RecordInvalidError* when the request is invalid - [#119](https://github.com/simukappu/activity_notification/pull/119)
164
-
165
- ## 2.0.0 / 2019-08-09
166
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.7.1...v2.0.0)
167
-
168
- Enhancements:
169
-
170
- * Add push notification with Action Cable - [#101](https://github.com/simukappu/activity_notification/issues/101)
171
- * Allow use with Rails 6.0 - [#102](https://github.com/simukappu/activity_notification/issues/102)
172
- * Add Amazon DynamoDB support using Dynamoid
173
- * Add *ActivityNotification.config.store_with_associated_records* option
174
- * Add test case using Mongoid orm with ActiveRecord application
175
- * Publish demo application on Heroku
176
-
177
- Bug Fixes:
178
-
179
- * Fix syntax error of a default view *_default_without_grouping.html.erb*
180
-
181
- Deprecated:
182
-
183
- * Remove deprecated *ActivityNotification.config.table_name* option
184
-
185
- ## 1.7.1 / 2019-04-30
186
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.7.0...v1.7.1)
187
-
188
- Enhancements:
189
-
190
- * Use after_commit for tracked callbacks instead of after_create and after_update - [#99](https://github.com/simukappu/activity_notification/issues/99)
191
-
192
- ## 1.7.0 / 2018-12-09
193
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.6.1...v1.7.0)
194
-
195
- Enhancements:
196
-
197
- * Support asynchronous notification API - [#29](https://github.com/simukappu/activity_notification/issues/29)
198
-
199
- Bug Fixes:
200
-
201
- * Fix migration generator to specify the Rails release in generated migration files for Rails 5.x - [#96](https://github.com/simukappu/activity_notification/issues/96)
202
-
203
- Breaking Changes:
204
-
205
- * Change method name of *Target#notify_to* into *Target#receive_notification_of* to avoid ambiguous method name with *Notifiable#notify_to* - [#88](https://github.com/simukappu/activity_notification/issues/88)
206
-
207
- ## 1.6.1 / 2018-11-19
208
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.6.0...v1.6.1)
209
-
210
- Enhancements:
211
-
212
- * Update README.md to describe how to customize email subject - [#93](https://github.com/simukappu/activity_notification/issues/93)
213
-
214
- Bug Fixes:
215
-
216
- * Fix *notify_all* method to handle single notifiable target models - [#88](https://github.com/simukappu/activity_notification/issues/88)
217
-
218
- ## 1.6.0 / 2018-11-11
219
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.5.1...v1.6.0)
220
-
221
- Enhancements:
222
-
223
- * Add simple default routes with devise integration - [#64](https://github.com/simukappu/activity_notification/issues/64)
224
- * Add *:routing_scope* option to support routes with scope - [#56](https://github.com/simukappu/activity_notification/issues/56)
225
-
226
- Bug Fixes:
227
-
228
- * Update *Subscription.optional_targets* into HashWithIndifferentAccess to fix subscriptions with mongoid
229
-
230
- ## 1.5.1 / 2018-08-26
231
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.5.0...v1.5.1)
232
-
233
- Enhancements:
234
-
235
- * Allow configuration of custom mailer templates directory - [#32](https://github.com/simukappu/activity_notification/pull/32)
236
- * Make Notifiable#notifiable_path to work when it is defined in a superclass - [#45](https://github.com/simukappu/activity_notification/pull/45)
237
-
238
- Bug Fixes:
239
-
240
- * Fix mongoid development dependency to work with bullet - [#72](https://github.com/simukappu/activity_notification/issues/72)
241
- * Remove duplicate scope of filtered_by_type since it is also defined in API - [#78](https://github.com/simukappu/activity_notification/pull/78)
242
- * Fix a bug in Subscriber concern about lack of arguments - [#80](https://github.com/simukappu/activity_notification/issues/80)
243
-
244
- ## 1.5.0 / 2018-05-05
245
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.4.4...v1.5.0)
246
-
247
- Enhancements:
248
-
249
- * Allow use with Rails 5.2
250
- * Enhancements for using the gem with i18n
251
- * Symbolize parameters for i18n interpolation
252
- * Allow pluralization in i18n translation
253
- * Update render method to use plain
254
-
255
- Bug Fixes:
256
-
257
- * Fix a doc bug for controllers template
258
-
259
- ## 1.4.4 / 2017-11-18
260
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.4.3...v1.4.4)
261
-
262
- Enhancements:
263
-
264
- * Enable Amazon SNS optional target to use aws-sdk v3 service specific gems
265
-
266
- Bug Fixes:
267
-
268
- * Fix error calling #notify for callbacks in *tracked_option*
269
- * Fix *unopened_group_member_notifier_count* and *opened_group_member_notifier_count* error when using a custom table name
270
-
271
- ## 1.4.3 / 2017-09-16
272
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.4.2...v1.4.3)
273
-
274
- Enhancements:
275
-
276
- * Add *:pass_full_options* option to *NotificationApi#notify* passing the entire options to notification targets
277
-
278
- Bug Fixes:
279
-
280
- * Add `{ optional: true }` for *:group* and *:notifier* when it is used with Rails 5
281
-
282
- ## 1.4.2 / 2017-07-22
283
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.4.1...v1.4.2)
284
-
285
- Enhancements:
286
-
287
- * Add function to override the subject of notification email
288
-
289
- Bug Fixes:
290
-
291
- * Fix a bug which ActivityNotificaion.config.mailer configuration was ignored
292
-
293
- ## 1.4.1 / 2017-05-17
294
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.4.0...v1.4.1)
295
-
296
- Enhancements:
297
-
298
- * Remove dependency on *activerecord* from gemspec
299
-
300
- ## 1.4.0 / 2017-05-10
301
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.3.0...v1.4.0)
302
-
303
- Enhancements:
304
-
305
- * Allow use with Rails 5.1
306
- * Allow mongoid models as *Target* and *Notifiable* models
307
- * Add functions for automatic tracked notifications
308
- * Enable *render_notification_of* view helper method to use *:as_latest_group_member* option
309
-
310
- Bug Fixes:
311
-
312
- * Fix illegal ActiveRecord query in *Notification#uniq_keys* and *Subscription#uniq_keys* for MySQL and PostgreSQL database
313
-
314
- Breaking Changes:
315
-
316
- * Update type of polymorphic id field in *Notification* and *Subscription* models from Integer to String
317
-
318
- ## 1.3.0 / 2017-04-07
319
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.2.1...v1.3.0)
320
-
321
- Enhancements:
322
-
323
- * Suport Mongoid ORM to store *Notification* and *Subscription* records
324
- * Separate *Notification* and *Subscription* models into ORMs and make them load from ORM selector
325
- * Update query logic in *Notification* and *Subscription* models for Mongoid
326
- * Make *:dependent_notifications* option in *acts_as_notifiable* separate into each target configuration
327
- * Add *overriding_notification_template_key* to *Notifiable* model for *Renderable*
328
- * Enable Devise integration to use models with single table inheritance
329
-
330
- ## 1.2.1 / 2017-01-06
331
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.2.0...v1.2.1)
332
-
333
- Enhancements:
334
-
335
- * Support default Slack optional target with *slack-notifier* 2.0.0
336
-
337
- Breaking Changes:
338
-
339
- * Rename *:slack_name* initializing parameter and template parameter of default Slack optional target to *:target_username*
340
-
341
- ## 1.2.0 / 2017-01-06
342
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.1.0...v1.2.0)
343
-
344
- Enhancements:
345
-
346
- * Add optional target function
347
- * Optional target development framework
348
- * Subscription management for optional targets
349
- * Amazon SNS client as default optional target implementation
350
- * Slack client as default optional target implementation
351
- * Add *:restrict_with_+* and *:update_group_and_+* options to *:dependent_notifications* of *acts_as_notifiable*
352
-
353
- ## 1.1.0 / 2016-12-18
354
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.0.2...v1.1.0)
355
-
356
- Enhancements:
357
-
358
- * Add subscription management framework
359
- * Subscription management model and API
360
- * Default subscription controllers, routing and views
361
- * Add *Subscriber* role configuration to *Target* role
362
- * Add *:as_latest_group_member* option to batch mailer API
363
- * Add *:group_expiry_delay* option to notification API
364
-
365
- Bug Fixes:
366
-
367
- * Fix unserializable error in *Target#send_batch_unopened_notification_email* since unnecessary options are passed to mailer
368
-
369
- Breaking Changes:
370
-
371
- * Remove *notifiable_type* from the argument of overridden method or configured lambda function with *:batch_email_allowed* option in *acts_as_target* role
372
-
373
- ## 1.0.2 / 2016-11-14
374
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.0.1...v1.0.2)
375
-
376
- Bug Fixes:
377
-
378
- * Fix migration and notification generator's path
379
-
380
- ## 1.0.1 / 2016-11-05
381
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v1.0.0...v1.0.1)
382
-
383
- Enhancements:
384
-
385
- * Add function to send batch email notification
386
- * Batch mailer API
387
- * Default batch notification email templates
388
- * *Target* role configuration for batch email notification
389
- * Improve target API
390
- * Add *:reverse*, *:with_group_members*, *:as_latest_group_member* and *:custom_filter* options to API loading notification index
391
- * Add methods to get notifications for specified target type grouped by targets like *Target#notification_index_map*
392
- * Arrange default notification email view templates
393
-
394
- Breaking Changes:
395
-
396
- * Use instance variable `@notification.notifiable` instead of `@notifiable` in notification email templates
397
-
398
- ## 1.0.0 / 2016-10-06
399
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v0.0.10...v1.0.0)
400
-
401
- Enhancements:
402
-
403
- * Improve notification API
404
- * Add methods to count distinct group members or notifiers like *group_member_notifier_count*
405
- * Update *send_later* argument of *send_notification_email* method to options hash argument
406
- * Improve target API
407
- * Update *notification_index* API to automatically load opened notifications with unopend notifications
408
- * Improve acts_as roles
409
- * Add *acts_as_group* role
410
- * Add *printable_name* configuration for all roles
411
- * Add *:dependent_notifications* option to *acts_as_notifiable* to make handle notifications with deleted notifiables
412
- * Arrange default notification view templates
413
- * Arrange bundled test application
414
- * Make default rails version 5.0 and update gem dependency
415
-
416
- Breaking Changes:
417
-
418
- * Rename `config.opened_limit` configuration parameter to `config.opened_index_limit`
419
- * http://github.com/simukappu/activity_notification/commit/591e53cd8977220f819c11cd702503fc72dd1fd1
420
-
421
- ## 0.0.10 / 2016-09-11
422
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v0.0.9...v0.0.10)
423
-
424
- Enhancements:
425
-
426
- * Improve controller action and notification API
427
- * Add filter options to *NotificationsController#open_all* action and *Target#open_all_of* method
428
- * Add source documentation with YARD
429
- * Support rails 5.0 and update gem dependency
430
-
431
- Bug Fixes:
432
-
433
- * Fix *Notification#notifiable_path* method to be called with key
434
- * Add including *PolymorphicHelpers* statement to *seed.rb* in test application to resolve String extention
435
-
436
- ## 0.0.9 / 2016-08-19
437
- [Full Changelog](http://github.com/simukappu/activity_notification/compare/v0.0.8...v0.0.9)
438
-
439
- Enhancements:
440
-
441
- * Improve acts_as roles
442
- * Enable models to be configured by acts_as role without including statement
443
- * Disable email notification as default and add email configurations to acts_as roles
444
- * Remove *:skip_email* option from *acts_as_target*
445
- * Update *Renderable#text* method to use `"#{key}.text"` field in i18n properties
446
-
447
- Bug Fixes:
448
-
449
- * Fix wrong method name of *Notification#notifiable_path*
450
-
451
- ## 0.0.8 / 2016-07-31
452
- * First release
data/Gemfile DELETED
@@ -1,31 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gemspec
4
-
5
- gem 'rails', '~> 8.0.0'
6
-
7
- group :production do
8
- gem 'sprockets-rails'
9
- gem 'puma'
10
- gem 'pg'
11
- gem 'devise'
12
- gem 'devise_token_auth'
13
- end
14
-
15
- group :development do
16
- gem 'bullet'
17
- end
18
-
19
- group :test do
20
- gem 'rails-controller-testing'
21
- gem 'ammeter'
22
- gem 'timecop'
23
- gem 'committee'
24
- gem 'committee-rails', '< 0.6'
25
- # gem 'coveralls', require: false
26
- gem 'coveralls_reborn', require: false
27
- end
28
-
29
- gem 'webpacker', groups: [:production, :development]
30
- gem 'rack-cors', groups: [:production, :development]
31
- gem 'dotenv-rails', groups: [:development, :test]
data/Procfile DELETED
@@ -1,2 +0,0 @@
1
- web: cd spec/rails_app; bin/rails server -u Puma -p $PORT -e $RAILS_ENV; cd -
2
- console: cd spec/rails_app; bin/rails console -e $RAILS_ENV; cd -
data/Rakefile DELETED
@@ -1,28 +0,0 @@
1
- require "bundler/gem_tasks"
2
-
3
- task default: :test
4
-
5
- begin
6
- require 'rspec/core'
7
- require 'rspec/core/rake_task'
8
- desc 'Run RSpec test for the activity_notification plugin.'
9
- RSpec::Core::RakeTask.new(:test) do |spec|
10
- spec.pattern = FileList['spec/**/*_spec.rb']
11
- end
12
- rescue LoadError
13
- end
14
-
15
- begin
16
- require 'yard'
17
- require 'yard/rake/yardoc_task'
18
- desc 'Generate documentation for the activity_notification plugin.'
19
- YARD::Rake::YardocTask.new do |doc|
20
- doc.files = ['app/**/*.rb', 'lib/**/*.rb']
21
- end
22
- rescue LoadError
23
- end
24
-
25
- Bundler::GemHelper.install_tasks
26
-
27
- require File.expand_path('../spec/rails_app/config/application', __FILE__)
28
- Rails.application.load_tasks
@@ -1,44 +0,0 @@
1
- $:.push File.expand_path("../lib", __FILE__)
2
-
3
- # Maintain your gem's version:
4
- require "activity_notification/version"
5
-
6
- # Describe your gem and declare its dependencies:
7
- Gem::Specification.new do |s|
8
- s.name = "activity_notification"
9
- s.version = ActivityNotification::VERSION
10
- s.platform = Gem::Platform::RUBY
11
- s.authors = ["Shota Yamazaki"]
12
- s.email = ["shota.yamazaki.8@gmail.com"]
13
- s.homepage = "https://github.com/simukappu/activity_notification"
14
- s.summary = "Integrated user activity notifications for Ruby on Rails"
15
- s.description = "Integrated user activity notifications for Ruby on Rails. Provides functions to configure multiple notification targets and make activity notifications with notifiable models, like adding comments, responding etc."
16
- s.license = "MIT"
17
-
18
- s.files = `git ls-files`.split("\n")
19
- s.test_files = `git ls-files -- spec/*`.split("\n")
20
- s.require_paths = ["lib"]
21
- s.required_ruby_version = '>= 2.1.0'
22
-
23
- s.add_dependency 'railties', '>= 7.0.0', '< 8.1'
24
- s.add_dependency 'i18n', '>= 0.5.0'
25
- s.add_dependency 'jquery-rails', '>= 3.1.1'
26
- s.add_dependency 'swagger-blocks', '>= 3.0.0'
27
-
28
- s.add_development_dependency 'puma', '>= 3.12.0'
29
- s.add_development_dependency 'sqlite3', '>= 1.3.13'
30
- s.add_development_dependency 'mysql2', '>= 0.5.2'
31
- s.add_development_dependency 'pg', '>= 1.0.0'
32
- s.add_development_dependency 'mongoid', '>= 4.0.0', '< 10.0'
33
- s.add_development_dependency 'dynamoid', '>= 3.11.0', '< 4.0'
34
- s.add_development_dependency 'rspec-rails', '>= 3.8.0'
35
- s.add_development_dependency 'factory_bot_rails', '>= 4.11.0'
36
- s.add_development_dependency 'simplecov', '~> 0'
37
- s.add_development_dependency 'yard', '>= 0.9.16'
38
- s.add_development_dependency 'yard-activesupport-concern', '>= 0.0.1'
39
- s.add_development_dependency 'devise', '>= 4.5.0'
40
- s.add_development_dependency 'devise_token_auth', '>= 1.1.3'
41
- s.add_development_dependency 'mongoid-locker', '>= 2.0.0'
42
- s.add_development_dependency 'aws-sdk-sns', '~> 1'
43
- s.add_development_dependency 'slack-notifier', '>= 1.5.1'
44
- end