bugsnag 6.15.0 → 6.27.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.
Files changed (683) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/CHANGELOG.md +289 -0
  4. data/README.md +1 -2
  5. data/VERSION +1 -1
  6. data/bugsnag.gemspec +19 -2
  7. data/lib/bugsnag/breadcrumb_type.rb +14 -0
  8. data/lib/bugsnag/breadcrumbs/breadcrumb.rb +35 -2
  9. data/lib/bugsnag/breadcrumbs/breadcrumbs.rb +1 -0
  10. data/lib/bugsnag/breadcrumbs/on_breadcrumb_callback_list.rb +48 -0
  11. data/lib/bugsnag/breadcrumbs/validator.rb +0 -24
  12. data/lib/bugsnag/cleaner.rb +70 -29
  13. data/lib/bugsnag/configuration.rb +445 -47
  14. data/lib/bugsnag/delivery/synchronous.rb +3 -4
  15. data/lib/bugsnag/delivery/thread_queue.rb +18 -5
  16. data/lib/bugsnag/endpoint_configuration.rb +11 -0
  17. data/lib/bugsnag/endpoint_validator.rb +80 -0
  18. data/lib/bugsnag/error.rb +25 -0
  19. data/lib/bugsnag/event.rb +5 -0
  20. data/lib/bugsnag/feature_flag.rb +74 -0
  21. data/lib/bugsnag/helpers.rb +17 -9
  22. data/lib/bugsnag/integrations/delayed_job.rb +13 -1
  23. data/lib/bugsnag/integrations/mailman.rb +2 -1
  24. data/lib/bugsnag/integrations/mongo.rb +5 -4
  25. data/lib/bugsnag/integrations/que.rb +2 -1
  26. data/lib/bugsnag/integrations/rack.rb +6 -4
  27. data/lib/bugsnag/integrations/rails/active_job.rb +100 -0
  28. data/lib/bugsnag/integrations/rails/rails_breadcrumbs.rb +2 -2
  29. data/lib/bugsnag/integrations/railtie.rb +93 -35
  30. data/lib/bugsnag/integrations/rake.rb +8 -3
  31. data/lib/bugsnag/integrations/resque.rb +30 -9
  32. data/lib/bugsnag/integrations/shoryuken.rb +2 -1
  33. data/lib/bugsnag/integrations/sidekiq.rb +3 -3
  34. data/lib/bugsnag/middleware/active_job.rb +18 -0
  35. data/lib/bugsnag/middleware/classify_error.rb +1 -0
  36. data/lib/bugsnag/middleware/delayed_job.rb +21 -1
  37. data/lib/bugsnag/middleware/exception_meta_data.rb +2 -0
  38. data/lib/bugsnag/middleware/rack_request.rb +103 -20
  39. data/lib/bugsnag/middleware/rails3_request.rb +2 -2
  40. data/lib/bugsnag/middleware/rake.rb +1 -1
  41. data/lib/bugsnag/middleware/session_data.rb +3 -1
  42. data/lib/bugsnag/middleware/sidekiq.rb +1 -1
  43. data/lib/bugsnag/middleware/suggestion_data.rb +9 -7
  44. data/lib/bugsnag/middleware/warden_user.rb +3 -0
  45. data/lib/bugsnag/middleware_stack.rb +6 -6
  46. data/lib/bugsnag/report.rb +292 -8
  47. data/lib/bugsnag/session_tracker.rb +52 -12
  48. data/lib/bugsnag/stacktrace.rb +14 -3
  49. data/lib/bugsnag/tasks/bugsnag.rake +1 -1
  50. data/lib/bugsnag/utility/duplicator.rb +124 -0
  51. data/lib/bugsnag/utility/feature_data_store.rb +41 -0
  52. data/lib/bugsnag/utility/feature_flag_delegate.rb +89 -0
  53. data/lib/bugsnag/utility/metadata_delegate.rb +102 -0
  54. data/lib/bugsnag.rb +256 -37
  55. metadata +25 -635
  56. data/.buildkite/pipeline.yml +0 -470
  57. data/.github/PULL_REQUEST_TEMPLATE.md +0 -84
  58. data/.gitignore +0 -55
  59. data/.rdoc_options +0 -27
  60. data/.rspec +0 -3
  61. data/.rubocop.yml +0 -57
  62. data/.rubocop_todo.yml +0 -1049
  63. data/CONTRIBUTING.md +0 -64
  64. data/Gemfile +0 -50
  65. data/Rakefile +0 -37
  66. data/TESTING.md +0 -81
  67. data/UPGRADING.md +0 -91
  68. data/docker-compose.yml +0 -46
  69. data/dockerfiles/Dockerfile.jruby-unit-tests +0 -13
  70. data/dockerfiles/Dockerfile.ruby-maze-runner +0 -26
  71. data/dockerfiles/Dockerfile.ruby-unit-tests +0 -12
  72. data/features/.gitignore +0 -1
  73. data/features/delayed_job.feature +0 -36
  74. data/features/fixtures/delayed_job/Dockerfile +0 -15
  75. data/features/fixtures/delayed_job/app/.gitignore +0 -21
  76. data/features/fixtures/delayed_job/app/Gemfile +0 -57
  77. data/features/fixtures/delayed_job/app/README.md +0 -24
  78. data/features/fixtures/delayed_job/app/Rakefile +0 -24
  79. data/features/fixtures/delayed_job/app/app/assets/config/manifest.js +0 -3
  80. data/features/fixtures/delayed_job/app/app/assets/images/.keep +0 -0
  81. data/features/fixtures/delayed_job/app/app/assets/javascripts/application.js +0 -16
  82. data/features/fixtures/delayed_job/app/app/assets/javascripts/cable.js +0 -13
  83. data/features/fixtures/delayed_job/app/app/assets/javascripts/channels/.keep +0 -0
  84. data/features/fixtures/delayed_job/app/app/assets/stylesheets/application.css +0 -15
  85. data/features/fixtures/delayed_job/app/app/channels/application_cable/channel.rb +0 -4
  86. data/features/fixtures/delayed_job/app/app/channels/application_cable/connection.rb +0 -4
  87. data/features/fixtures/delayed_job/app/app/controllers/application_controller.rb +0 -3
  88. data/features/fixtures/delayed_job/app/app/controllers/concerns/.keep +0 -0
  89. data/features/fixtures/delayed_job/app/app/helpers/application_helper.rb +0 -2
  90. data/features/fixtures/delayed_job/app/app/jobs/application_job.rb +0 -2
  91. data/features/fixtures/delayed_job/app/app/mailers/application_mailer.rb +0 -4
  92. data/features/fixtures/delayed_job/app/app/models/application_record.rb +0 -3
  93. data/features/fixtures/delayed_job/app/app/models/concerns/.keep +0 -0
  94. data/features/fixtures/delayed_job/app/app/models/test_model.rb +0 -10
  95. data/features/fixtures/delayed_job/app/app/views/layouts/application.html.erb +0 -14
  96. data/features/fixtures/delayed_job/app/app/views/layouts/mailer.html.erb +0 -13
  97. data/features/fixtures/delayed_job/app/app/views/layouts/mailer.text.erb +0 -1
  98. data/features/fixtures/delayed_job/app/config/application.rb +0 -15
  99. data/features/fixtures/delayed_job/app/config/boot.rb +0 -3
  100. data/features/fixtures/delayed_job/app/config/cable.yml +0 -9
  101. data/features/fixtures/delayed_job/app/config/database.yml +0 -25
  102. data/features/fixtures/delayed_job/app/config/environment.rb +0 -5
  103. data/features/fixtures/delayed_job/app/config/environments/development.rb +0 -54
  104. data/features/fixtures/delayed_job/app/config/environments/production.rb +0 -86
  105. data/features/fixtures/delayed_job/app/config/environments/test.rb +0 -42
  106. data/features/fixtures/delayed_job/app/config/initializers/application_controller_renderer.rb +0 -8
  107. data/features/fixtures/delayed_job/app/config/initializers/assets.rb +0 -11
  108. data/features/fixtures/delayed_job/app/config/initializers/backtrace_silencers.rb +0 -7
  109. data/features/fixtures/delayed_job/app/config/initializers/bugsnag.rb +0 -14
  110. data/features/fixtures/delayed_job/app/config/initializers/cookies_serializer.rb +0 -5
  111. data/features/fixtures/delayed_job/app/config/initializers/delayed_job.rb +0 -3
  112. data/features/fixtures/delayed_job/app/config/initializers/filter_parameter_logging.rb +0 -4
  113. data/features/fixtures/delayed_job/app/config/initializers/inflections.rb +0 -16
  114. data/features/fixtures/delayed_job/app/config/initializers/mime_types.rb +0 -4
  115. data/features/fixtures/delayed_job/app/config/initializers/new_framework_defaults.rb +0 -26
  116. data/features/fixtures/delayed_job/app/config/initializers/session_store.rb +0 -3
  117. data/features/fixtures/delayed_job/app/config/initializers/wrap_parameters.rb +0 -14
  118. data/features/fixtures/delayed_job/app/config/locales/en.yml +0 -23
  119. data/features/fixtures/delayed_job/app/config/puma.rb +0 -47
  120. data/features/fixtures/delayed_job/app/config/routes.rb +0 -3
  121. data/features/fixtures/delayed_job/app/config/secrets.yml +0 -22
  122. data/features/fixtures/delayed_job/app/config/spring.rb +0 -6
  123. data/features/fixtures/delayed_job/app/config.ru +0 -5
  124. data/features/fixtures/delayed_job/app/db/migrate/20181024232549_create_delayed_jobs.rb +0 -22
  125. data/features/fixtures/delayed_job/app/db/migrate/20181024232817_create_test_models.rb +0 -8
  126. data/features/fixtures/delayed_job/app/db/schema.rb +0 -30
  127. data/features/fixtures/delayed_job/app/db/seeds.rb +0 -7
  128. data/features/fixtures/delayed_job/app/lib/assets/.keep +0 -0
  129. data/features/fixtures/delayed_job/app/lib/tasks/.keep +0 -0
  130. data/features/fixtures/delayed_job/app/log/.keep +0 -0
  131. data/features/fixtures/delayed_job/app/public/404.html +0 -67
  132. data/features/fixtures/delayed_job/app/public/422.html +0 -67
  133. data/features/fixtures/delayed_job/app/public/500.html +0 -66
  134. data/features/fixtures/delayed_job/app/public/apple-touch-icon-precomposed.png +0 -0
  135. data/features/fixtures/delayed_job/app/public/apple-touch-icon.png +0 -0
  136. data/features/fixtures/delayed_job/app/public/favicon.ico +0 -0
  137. data/features/fixtures/delayed_job/app/public/robots.txt +0 -5
  138. data/features/fixtures/delayed_job/app/test/controllers/.keep +0 -0
  139. data/features/fixtures/delayed_job/app/test/fixtures/.keep +0 -0
  140. data/features/fixtures/delayed_job/app/test/fixtures/files/.keep +0 -0
  141. data/features/fixtures/delayed_job/app/test/fixtures/test_models.yml +0 -11
  142. data/features/fixtures/delayed_job/app/test/helpers/.keep +0 -0
  143. data/features/fixtures/delayed_job/app/test/integration/.keep +0 -0
  144. data/features/fixtures/delayed_job/app/test/mailers/.keep +0 -0
  145. data/features/fixtures/delayed_job/app/test/models/.keep +0 -0
  146. data/features/fixtures/delayed_job/app/test/models/test_model_test.rb +0 -7
  147. data/features/fixtures/delayed_job/app/test/test_helper.rb +0 -10
  148. data/features/fixtures/delayed_job/app/tmp/.keep +0 -0
  149. data/features/fixtures/docker-compose.yml +0 -303
  150. data/features/fixtures/expected_breadcrumbs/active_job.json +0 -9
  151. data/features/fixtures/expected_breadcrumbs/mongo_failed.json +0 -15
  152. data/features/fixtures/expected_breadcrumbs/mongo_filtered_request.json +0 -15
  153. data/features/fixtures/expected_breadcrumbs/mongo_filtered_result.json +0 -15
  154. data/features/fixtures/expected_breadcrumbs/mongo_success.json +0 -14
  155. data/features/fixtures/expected_breadcrumbs/request.json +0 -13
  156. data/features/fixtures/expected_breadcrumbs/sql_with_bindings.json +0 -12
  157. data/features/fixtures/expected_breadcrumbs/sql_without_bindings.json +0 -11
  158. data/features/fixtures/plain/.dockerignore +0 -2
  159. data/features/fixtures/plain/Dockerfile +0 -11
  160. data/features/fixtures/plain/app/Gemfile +0 -3
  161. data/features/fixtures/plain/app/app.rb +0 -38
  162. data/features/fixtures/plain/app/configuration/api_key.rb +0 -9
  163. data/features/fixtures/plain/app/configuration/proxy.rb +0 -14
  164. data/features/fixtures/plain/app/configuration/send_handled.rb +0 -7
  165. data/features/fixtures/plain/app/configuration/send_unhandled.rb +0 -9
  166. data/features/fixtures/plain/app/delivery/fork_threadpool.rb +0 -27
  167. data/features/fixtures/plain/app/delivery/synchronous.rb +0 -14
  168. data/features/fixtures/plain/app/delivery/threadpool.rb +0 -14
  169. data/features/fixtures/plain/app/exception_data/crash.rb +0 -34
  170. data/features/fixtures/plain/app/exception_data/handled_context.rb +0 -10
  171. data/features/fixtures/plain/app/exception_data/handled_hash.rb +0 -10
  172. data/features/fixtures/plain/app/exception_data/handled_meta_data.rb +0 -10
  173. data/features/fixtures/plain/app/exception_data/handled_user_id.rb +0 -10
  174. data/features/fixtures/plain/app/exception_data/unhandled_context.rb +0 -7
  175. data/features/fixtures/plain/app/exception_data/unhandled_hash.rb +0 -7
  176. data/features/fixtures/plain/app/exception_data/unhandled_meta_data.rb +0 -7
  177. data/features/fixtures/plain/app/exception_data/unhandled_user_id.rb +0 -7
  178. data/features/fixtures/plain/app/filters/additional_filters.rb +0 -11
  179. data/features/fixtures/plain/app/filters/default_filters.rb +0 -15
  180. data/features/fixtures/plain/app/handled/block_metadata.rb +0 -15
  181. data/features/fixtures/plain/app/handled/ignore_exception.rb +0 -12
  182. data/features/fixtures/plain/app/handled/notify_exception.rb +0 -9
  183. data/features/fixtures/plain/app/handled/notify_string.rb +0 -9
  184. data/features/fixtures/plain/app/ignore_classes/handled.rb +0 -8
  185. data/features/fixtures/plain/app/ignore_classes/ignore_error.rb +0 -8
  186. data/features/fixtures/plain/app/ignore_classes/unhandled.rb +0 -4
  187. data/features/fixtures/plain/app/report_modification/add_tab.rb +0 -16
  188. data/features/fixtures/plain/app/report_modification/add_tab_existing.rb +0 -22
  189. data/features/fixtures/plain/app/report_modification/add_tab_override.rb +0 -19
  190. data/features/fixtures/plain/app/report_modification/ignore_report.rb +0 -9
  191. data/features/fixtures/plain/app/report_modification/initiators/handled_before_notify.rb +0 -10
  192. data/features/fixtures/plain/app/report_modification/initiators/handled_block.rb +0 -8
  193. data/features/fixtures/plain/app/report_modification/initiators/handled_on_error.rb +0 -10
  194. data/features/fixtures/plain/app/report_modification/initiators/unhandled_before_notify.rb +0 -11
  195. data/features/fixtures/plain/app/report_modification/initiators/unhandled_on_error.rb +0 -11
  196. data/features/fixtures/plain/app/report_modification/modify_api_key.rb +0 -9
  197. data/features/fixtures/plain/app/report_modification/modify_severity.rb +0 -9
  198. data/features/fixtures/plain/app/report_modification/remove_user_details.rb +0 -14
  199. data/features/fixtures/plain/app/report_modification/set_custom_user_details.rb +0 -16
  200. data/features/fixtures/plain/app/report_modification/set_user_details.rb +0 -13
  201. data/features/fixtures/plain/app/stack_frame_modification/initiators/handled_before_notify.rb +0 -29
  202. data/features/fixtures/plain/app/stack_frame_modification/initiators/handled_block.rb +0 -24
  203. data/features/fixtures/plain/app/stack_frame_modification/initiators/handled_on_error.rb +0 -29
  204. data/features/fixtures/plain/app/stack_frame_modification/initiators/unhandled_before_notify.rb +0 -26
  205. data/features/fixtures/plain/app/stack_frame_modification/initiators/unhandled_on_error.rb +0 -26
  206. data/features/fixtures/plain/app/stack_frame_modification/mark_frames_in_project.rb +0 -13
  207. data/features/fixtures/plain/app/stack_frame_modification/remove_stack_frame.rb +0 -9
  208. data/features/fixtures/plain/app/unhandled/bad_syntax.rb +0 -1
  209. data/features/fixtures/plain/app/unhandled/custom_error.rb +0 -9
  210. data/features/fixtures/plain/app/unhandled/interrupt.rb +0 -6
  211. data/features/fixtures/plain/app/unhandled/load_error.rb +0 -6
  212. data/features/fixtures/plain/app/unhandled/local_jump_error.rb +0 -10
  213. data/features/fixtures/plain/app/unhandled/name_error.rb +0 -6
  214. data/features/fixtures/plain/app/unhandled/no_method_error.rb +0 -6
  215. data/features/fixtures/plain/app/unhandled/runtime_error.rb +0 -6
  216. data/features/fixtures/plain/app/unhandled/syntax_error.rb +0 -6
  217. data/features/fixtures/plain/app/unhandled/system_call_error.rb +0 -6
  218. data/features/fixtures/plain/app/unhandled/system_exit.rb +0 -6
  219. data/features/fixtures/plain/json/delivery_fork.json +0 -4
  220. data/features/fixtures/plain/json/delivery_synchronous.json +0 -4
  221. data/features/fixtures/plain/json/delivery_threadpool.json +0 -4
  222. data/features/fixtures/plain/json/filters_default_metadata_filters.json +0 -9
  223. data/features/fixtures/rack1/.dockerignore +0 -1
  224. data/features/fixtures/rack1/Dockerfile +0 -13
  225. data/features/fixtures/rack1/Gemfile +0 -4
  226. data/features/fixtures/rack1/app.rb +0 -8
  227. data/features/fixtures/rack2/.dockerignore +0 -1
  228. data/features/fixtures/rack2/Dockerfile +0 -13
  229. data/features/fixtures/rack2/Gemfile +0 -4
  230. data/features/fixtures/rack2/app.rb +0 -8
  231. data/features/fixtures/rails3/.dockerignore +0 -1
  232. data/features/fixtures/rails3/Dockerfile +0 -15
  233. data/features/fixtures/rails3/app/.gitignore +0 -15
  234. data/features/fixtures/rails3/app/Gemfile +0 -17
  235. data/features/fixtures/rails3/app/Rakefile +0 -7
  236. data/features/fixtures/rails3/app/app/assets/images/rails.png +0 -0
  237. data/features/fixtures/rails3/app/app/assets/javascripts/application.js +0 -15
  238. data/features/fixtures/rails3/app/app/assets/stylesheets/application.css +0 -13
  239. data/features/fixtures/rails3/app/app/controllers/api_key_controller.rb +0 -20
  240. data/features/fixtures/rails3/app/app/controllers/app_type_controller.rb +0 -20
  241. data/features/fixtures/rails3/app/app/controllers/app_version_controller.rb +0 -25
  242. data/features/fixtures/rails3/app/app/controllers/application_controller.rb +0 -7
  243. data/features/fixtures/rails3/app/app/controllers/auto_notify_controller.rb +0 -31
  244. data/features/fixtures/rails3/app/app/controllers/before_notify_controller.rb +0 -44
  245. data/features/fixtures/rails3/app/app/controllers/breadcrumbs_controller.rb +0 -19
  246. data/features/fixtures/rails3/app/app/controllers/handled_controller.rb +0 -26
  247. data/features/fixtures/rails3/app/app/controllers/ignore_classes_controller.rb +0 -23
  248. data/features/fixtures/rails3/app/app/controllers/metadata_filters_controller.rb +0 -16
  249. data/features/fixtures/rails3/app/app/controllers/project_root_controller.rb +0 -25
  250. data/features/fixtures/rails3/app/app/controllers/release_stage_controller.rb +0 -20
  251. data/features/fixtures/rails3/app/app/controllers/send_code_controller.rb +0 -20
  252. data/features/fixtures/rails3/app/app/controllers/send_environment_controller.rb +0 -12
  253. data/features/fixtures/rails3/app/app/controllers/session_tracking_controller.rb +0 -24
  254. data/features/fixtures/rails3/app/app/controllers/unhandled_controller.rb +0 -11
  255. data/features/fixtures/rails3/app/app/controllers/warden_controller.rb +0 -30
  256. data/features/fixtures/rails3/app/app/helpers/application_helper.rb +0 -2
  257. data/features/fixtures/rails3/app/app/mailers/.gitkeep +0 -0
  258. data/features/fixtures/rails3/app/app/models/.gitkeep +0 -0
  259. data/features/fixtures/rails3/app/app/models/user.rb +0 -6
  260. data/features/fixtures/rails3/app/app/views/layouts/application.html.erb +0 -14
  261. data/features/fixtures/rails3/app/config/application.rb +0 -67
  262. data/features/fixtures/rails3/app/config/boot.rb +0 -6
  263. data/features/fixtures/rails3/app/config/database.yml +0 -31
  264. data/features/fixtures/rails3/app/config/environment.rb +0 -5
  265. data/features/fixtures/rails3/app/config/environments/development.rb +0 -37
  266. data/features/fixtures/rails3/app/config/environments/production.rb +0 -67
  267. data/features/fixtures/rails3/app/config/environments/rails_env.rb +0 -37
  268. data/features/fixtures/rails3/app/config/initializers/bugsnag.rb +0 -29
  269. data/features/fixtures/rails3/app/config/initializers/secret_token.rb +0 -7
  270. data/features/fixtures/rails3/app/config/initializers/session_store.rb +0 -8
  271. data/features/fixtures/rails3/app/config/initializers/warden.rb +0 -3
  272. data/features/fixtures/rails3/app/config/initializers/wrap_parameters.rb +0 -14
  273. data/features/fixtures/rails3/app/config/locales/en.yml +0 -5
  274. data/features/fixtures/rails3/app/config/routes.rb +0 -19
  275. data/features/fixtures/rails3/app/config.ru +0 -4
  276. data/features/fixtures/rails3/app/db/migrate/20180423142727_create_users.rb +0 -45
  277. data/features/fixtures/rails3/app/db/schema.rb +0 -37
  278. data/features/fixtures/rails3/app/db/seeds.rb +0 -7
  279. data/features/fixtures/rails3/app/lib/assets/.gitkeep +0 -0
  280. data/features/fixtures/rails3/app/lib/strategies/token_strategy.rb +0 -12
  281. data/features/fixtures/rails3/app/lib/tasks/.gitkeep +0 -0
  282. data/features/fixtures/rails3/app/log/.gitkeep +0 -0
  283. data/features/fixtures/rails3/app/public/404.html +0 -26
  284. data/features/fixtures/rails3/app/public/422.html +0 -26
  285. data/features/fixtures/rails3/app/public/500.html +0 -25
  286. data/features/fixtures/rails3/app/public/favicon.ico +0 -0
  287. data/features/fixtures/rails3/app/public/index.html +0 -241
  288. data/features/fixtures/rails3/app/public/robots.txt +0 -5
  289. data/features/fixtures/rails3/app/script/rails +0 -6
  290. data/features/fixtures/rails4/.dockerignore +0 -1
  291. data/features/fixtures/rails4/Dockerfile +0 -17
  292. data/features/fixtures/rails4/app/.gitignore +0 -16
  293. data/features/fixtures/rails4/app/Gemfile +0 -46
  294. data/features/fixtures/rails4/app/README.rdoc +0 -28
  295. data/features/fixtures/rails4/app/Rakefile +0 -6
  296. data/features/fixtures/rails4/app/app/assets/images/.keep +0 -0
  297. data/features/fixtures/rails4/app/app/assets/javascripts/application.js +0 -16
  298. data/features/fixtures/rails4/app/app/assets/stylesheets/application.css +0 -13
  299. data/features/fixtures/rails4/app/app/controllers/api_key_controller.rb +0 -20
  300. data/features/fixtures/rails4/app/app/controllers/app_type_controller.rb +0 -20
  301. data/features/fixtures/rails4/app/app/controllers/app_version_controller.rb +0 -25
  302. data/features/fixtures/rails4/app/app/controllers/application_controller.rb +0 -7
  303. data/features/fixtures/rails4/app/app/controllers/auto_notify_controller.rb +0 -31
  304. data/features/fixtures/rails4/app/app/controllers/before_notify_controller.rb +0 -44
  305. data/features/fixtures/rails4/app/app/controllers/breadcrumbs_controller.rb +0 -26
  306. data/features/fixtures/rails4/app/app/controllers/concerns/.keep +0 -0
  307. data/features/fixtures/rails4/app/app/controllers/devise_controller.rb +0 -32
  308. data/features/fixtures/rails4/app/app/controllers/handled_controller.rb +0 -26
  309. data/features/fixtures/rails4/app/app/controllers/ignore_classes_controller.rb +0 -23
  310. data/features/fixtures/rails4/app/app/controllers/metadata_filters_controller.rb +0 -16
  311. data/features/fixtures/rails4/app/app/controllers/mongo_controller.rb +0 -23
  312. data/features/fixtures/rails4/app/app/controllers/project_root_controller.rb +0 -25
  313. data/features/fixtures/rails4/app/app/controllers/release_stage_controller.rb +0 -20
  314. data/features/fixtures/rails4/app/app/controllers/send_code_controller.rb +0 -20
  315. data/features/fixtures/rails4/app/app/controllers/send_environment_controller.rb +0 -12
  316. data/features/fixtures/rails4/app/app/controllers/session_tracking_controller.rb +0 -24
  317. data/features/fixtures/rails4/app/app/controllers/unhandled_controller.rb +0 -11
  318. data/features/fixtures/rails4/app/app/helpers/application_helper.rb +0 -2
  319. data/features/fixtures/rails4/app/app/jobs/application_job.rb +0 -2
  320. data/features/fixtures/rails4/app/app/jobs/notify_job.rb +0 -5
  321. data/features/fixtures/rails4/app/app/mailers/.keep +0 -0
  322. data/features/fixtures/rails4/app/app/models/.keep +0 -0
  323. data/features/fixtures/rails4/app/app/models/concerns/.keep +0 -0
  324. data/features/fixtures/rails4/app/app/models/mongo_model.rb +0 -6
  325. data/features/fixtures/rails4/app/app/models/user.rb +0 -6
  326. data/features/fixtures/rails4/app/app/views/layouts/application.html.erb +0 -14
  327. data/features/fixtures/rails4/app/config/application.rb +0 -23
  328. data/features/fixtures/rails4/app/config/boot.rb +0 -4
  329. data/features/fixtures/rails4/app/config/database.yml +0 -31
  330. data/features/fixtures/rails4/app/config/environment.rb +0 -5
  331. data/features/fixtures/rails4/app/config/environments/development.rb +0 -31
  332. data/features/fixtures/rails4/app/config/environments/production.rb +0 -81
  333. data/features/fixtures/rails4/app/config/environments/rails_env.rb +0 -30
  334. data/features/fixtures/rails4/app/config/environments/test.rb +0 -31
  335. data/features/fixtures/rails4/app/config/initializers/backtrace_silencers.rb +0 -7
  336. data/features/fixtures/rails4/app/config/initializers/bugsnag.rb +0 -29
  337. data/features/fixtures/rails4/app/config/initializers/devise.rb +0 -283
  338. data/features/fixtures/rails4/app/config/initializers/filter_parameter_logging.rb +0 -5
  339. data/features/fixtures/rails4/app/config/initializers/inflections.rb +0 -16
  340. data/features/fixtures/rails4/app/config/initializers/mime_types.rb +0 -5
  341. data/features/fixtures/rails4/app/config/initializers/secret_token.rb +0 -12
  342. data/features/fixtures/rails4/app/config/initializers/session_store.rb +0 -3
  343. data/features/fixtures/rails4/app/config/initializers/wrap_parameters.rb +0 -14
  344. data/features/fixtures/rails4/app/config/locales/devise.en.yml +0 -64
  345. data/features/fixtures/rails4/app/config/locales/en.yml +0 -23
  346. data/features/fixtures/rails4/app/config/mongoid.yml +0 -22
  347. data/features/fixtures/rails4/app/config/routes.rb +0 -21
  348. data/features/fixtures/rails4/app/config.ru +0 -4
  349. data/features/fixtures/rails4/app/db/migrate/20180420160315_devise_create_users.rb +0 -47
  350. data/features/fixtures/rails4/app/db/seeds.rb +0 -7
  351. data/features/fixtures/rails4/app/lib/assets/.keep +0 -0
  352. data/features/fixtures/rails4/app/lib/tasks/.keep +0 -0
  353. data/features/fixtures/rails4/app/log/.keep +0 -0
  354. data/features/fixtures/rails4/app/public/404.html +0 -58
  355. data/features/fixtures/rails4/app/public/422.html +0 -58
  356. data/features/fixtures/rails4/app/public/500.html +0 -57
  357. data/features/fixtures/rails4/app/public/favicon.ico +0 -0
  358. data/features/fixtures/rails4/app/public/robots.txt +0 -5
  359. data/features/fixtures/rails4/app/test/controllers/.keep +0 -0
  360. data/features/fixtures/rails4/app/test/fixtures/.keep +0 -0
  361. data/features/fixtures/rails4/app/test/helpers/.keep +0 -0
  362. data/features/fixtures/rails4/app/test/integration/.keep +0 -0
  363. data/features/fixtures/rails4/app/test/mailers/.keep +0 -0
  364. data/features/fixtures/rails4/app/test/models/.keep +0 -0
  365. data/features/fixtures/rails4/app/test/test_helper.rb +0 -15
  366. data/features/fixtures/rails5/.dockerignore +0 -1
  367. data/features/fixtures/rails5/Dockerfile +0 -17
  368. data/features/fixtures/rails5/app/.gitignore +0 -21
  369. data/features/fixtures/rails5/app/Gemfile +0 -52
  370. data/features/fixtures/rails5/app/README.md +0 -24
  371. data/features/fixtures/rails5/app/Rakefile +0 -6
  372. data/features/fixtures/rails5/app/app/assets/config/manifest.js +0 -3
  373. data/features/fixtures/rails5/app/app/assets/images/.keep +0 -0
  374. data/features/fixtures/rails5/app/app/assets/javascripts/application.js +0 -16
  375. data/features/fixtures/rails5/app/app/assets/javascripts/cable.js +0 -13
  376. data/features/fixtures/rails5/app/app/assets/javascripts/channels/.keep +0 -0
  377. data/features/fixtures/rails5/app/app/assets/stylesheets/application.css +0 -15
  378. data/features/fixtures/rails5/app/app/channels/application_cable/channel.rb +0 -4
  379. data/features/fixtures/rails5/app/app/channels/application_cable/connection.rb +0 -4
  380. data/features/fixtures/rails5/app/app/controllers/api_key_controller.rb +0 -16
  381. data/features/fixtures/rails5/app/app/controllers/app_type_controller.rb +0 -16
  382. data/features/fixtures/rails5/app/app/controllers/app_version_controller.rb +0 -21
  383. data/features/fixtures/rails5/app/app/controllers/application_controller.rb +0 -7
  384. data/features/fixtures/rails5/app/app/controllers/auto_notify_controller.rb +0 -27
  385. data/features/fixtures/rails5/app/app/controllers/before_notify_controller.rb +0 -40
  386. data/features/fixtures/rails5/app/app/controllers/breadcrumbs_controller.rb +0 -24
  387. data/features/fixtures/rails5/app/app/controllers/clearance_controller.rb +0 -33
  388. data/features/fixtures/rails5/app/app/controllers/concerns/.keep +0 -0
  389. data/features/fixtures/rails5/app/app/controllers/handled_controller.rb +0 -22
  390. data/features/fixtures/rails5/app/app/controllers/ignore_classes_controller.rb +0 -19
  391. data/features/fixtures/rails5/app/app/controllers/metadata_filters_controller.rb +0 -12
  392. data/features/fixtures/rails5/app/app/controllers/mongo_controller.rb +0 -22
  393. data/features/fixtures/rails5/app/app/controllers/project_root_controller.rb +0 -21
  394. data/features/fixtures/rails5/app/app/controllers/release_stage_controller.rb +0 -16
  395. data/features/fixtures/rails5/app/app/controllers/send_code_controller.rb +0 -16
  396. data/features/fixtures/rails5/app/app/controllers/send_environment_controller.rb +0 -8
  397. data/features/fixtures/rails5/app/app/controllers/session_tracking_controller.rb +0 -20
  398. data/features/fixtures/rails5/app/app/controllers/unhandled_controller.rb +0 -7
  399. data/features/fixtures/rails5/app/app/helpers/application_helper.rb +0 -2
  400. data/features/fixtures/rails5/app/app/jobs/application_job.rb +0 -2
  401. data/features/fixtures/rails5/app/app/jobs/notify_job.rb +0 -5
  402. data/features/fixtures/rails5/app/app/mailers/application_mailer.rb +0 -4
  403. data/features/fixtures/rails5/app/app/models/application_record.rb +0 -3
  404. data/features/fixtures/rails5/app/app/models/concerns/.keep +0 -0
  405. data/features/fixtures/rails5/app/app/models/mongo_model.rb +0 -6
  406. data/features/fixtures/rails5/app/app/models/user.rb +0 -3
  407. data/features/fixtures/rails5/app/app/views/layouts/application.html.erb +0 -14
  408. data/features/fixtures/rails5/app/app/views/layouts/mailer.html.erb +0 -13
  409. data/features/fixtures/rails5/app/app/views/layouts/mailer.text.erb +0 -1
  410. data/features/fixtures/rails5/app/config/application.rb +0 -15
  411. data/features/fixtures/rails5/app/config/boot.rb +0 -3
  412. data/features/fixtures/rails5/app/config/cable.yml +0 -9
  413. data/features/fixtures/rails5/app/config/database.yml +0 -29
  414. data/features/fixtures/rails5/app/config/environment.rb +0 -5
  415. data/features/fixtures/rails5/app/config/environments/development.rb +0 -55
  416. data/features/fixtures/rails5/app/config/environments/production.rb +0 -87
  417. data/features/fixtures/rails5/app/config/environments/rails_env.rb +0 -55
  418. data/features/fixtures/rails5/app/config/environments/test.rb +0 -55
  419. data/features/fixtures/rails5/app/config/initializers/assets.rb +0 -11
  420. data/features/fixtures/rails5/app/config/initializers/backtrace_silencers.rb +0 -7
  421. data/features/fixtures/rails5/app/config/initializers/bugsnag.rb +0 -29
  422. data/features/fixtures/rails5/app/config/initializers/clearance.rb +0 -5
  423. data/features/fixtures/rails5/app/config/initializers/cookies_serializer.rb +0 -5
  424. data/features/fixtures/rails5/app/config/initializers/filter_parameter_logging.rb +0 -5
  425. data/features/fixtures/rails5/app/config/initializers/inflections.rb +0 -16
  426. data/features/fixtures/rails5/app/config/initializers/mime_types.rb +0 -4
  427. data/features/fixtures/rails5/app/config/initializers/new_framework_defaults.rb +0 -24
  428. data/features/fixtures/rails5/app/config/initializers/session_store.rb +0 -3
  429. data/features/fixtures/rails5/app/config/initializers/wrap_parameters.rb +0 -14
  430. data/features/fixtures/rails5/app/config/locales/devise.en.yml +0 -64
  431. data/features/fixtures/rails5/app/config/locales/en.yml +0 -23
  432. data/features/fixtures/rails5/app/config/mongoid.yml +0 -23
  433. data/features/fixtures/rails5/app/config/puma.rb +0 -47
  434. data/features/fixtures/rails5/app/config/routes.rb +0 -62
  435. data/features/fixtures/rails5/app/config/secrets.yml +0 -25
  436. data/features/fixtures/rails5/app/config/spring.rb +0 -6
  437. data/features/fixtures/rails5/app/config.ru +0 -5
  438. data/features/fixtures/rails5/app/db/migrate/20180426095545_create_users.rb +0 -17
  439. data/features/fixtures/rails5/app/db/schema.rb +0 -29
  440. data/features/fixtures/rails5/app/db/seeds.rb +0 -7
  441. data/features/fixtures/rails5/app/lib/assets/.keep +0 -0
  442. data/features/fixtures/rails5/app/lib/tasks/.keep +0 -0
  443. data/features/fixtures/rails5/app/log/.keep +0 -0
  444. data/features/fixtures/rails5/app/public/404.html +0 -67
  445. data/features/fixtures/rails5/app/public/422.html +0 -67
  446. data/features/fixtures/rails5/app/public/500.html +0 -66
  447. data/features/fixtures/rails5/app/public/apple-touch-icon-precomposed.png +0 -0
  448. data/features/fixtures/rails5/app/public/apple-touch-icon.png +0 -0
  449. data/features/fixtures/rails5/app/public/favicon.ico +0 -0
  450. data/features/fixtures/rails5/app/public/robots.txt +0 -5
  451. data/features/fixtures/rails5/app/test/controllers/.keep +0 -0
  452. data/features/fixtures/rails5/app/test/fixtures/.keep +0 -0
  453. data/features/fixtures/rails5/app/test/fixtures/files/.keep +0 -0
  454. data/features/fixtures/rails5/app/test/helpers/.keep +0 -0
  455. data/features/fixtures/rails5/app/test/integration/.keep +0 -0
  456. data/features/fixtures/rails5/app/test/mailers/.keep +0 -0
  457. data/features/fixtures/rails5/app/test/models/.keep +0 -0
  458. data/features/fixtures/rails5/app/test/test_helper.rb +0 -10
  459. data/features/fixtures/rails5/app/tmp/.keep +0 -0
  460. data/features/fixtures/rails6/.dockerignore +0 -1
  461. data/features/fixtures/rails6/Dockerfile +0 -26
  462. data/features/fixtures/rails6/app/.browserslistrc +0 -1
  463. data/features/fixtures/rails6/app/.gitignore +0 -35
  464. data/features/fixtures/rails6/app/.ruby-version +0 -1
  465. data/features/fixtures/rails6/app/Gemfile +0 -58
  466. data/features/fixtures/rails6/app/README.md +0 -24
  467. data/features/fixtures/rails6/app/Rakefile +0 -6
  468. data/features/fixtures/rails6/app/app/assets/config/manifest.js +0 -2
  469. data/features/fixtures/rails6/app/app/assets/images/.keep +0 -0
  470. data/features/fixtures/rails6/app/app/assets/stylesheets/application.css +0 -15
  471. data/features/fixtures/rails6/app/app/channels/application_cable/channel.rb +0 -4
  472. data/features/fixtures/rails6/app/app/channels/application_cable/connection.rb +0 -4
  473. data/features/fixtures/rails6/app/app/controllers/api_key_controller.rb +0 -16
  474. data/features/fixtures/rails6/app/app/controllers/app_type_controller.rb +0 -16
  475. data/features/fixtures/rails6/app/app/controllers/app_version_controller.rb +0 -21
  476. data/features/fixtures/rails6/app/app/controllers/application_controller.rb +0 -7
  477. data/features/fixtures/rails6/app/app/controllers/auto_notify_controller.rb +0 -27
  478. data/features/fixtures/rails6/app/app/controllers/before_notify_controller.rb +0 -40
  479. data/features/fixtures/rails6/app/app/controllers/breadcrumbs_controller.rb +0 -24
  480. data/features/fixtures/rails6/app/app/controllers/clearance_controller.rb +0 -33
  481. data/features/fixtures/rails6/app/app/controllers/concerns/.keep +0 -0
  482. data/features/fixtures/rails6/app/app/controllers/handled_controller.rb +0 -22
  483. data/features/fixtures/rails6/app/app/controllers/ignore_classes_controller.rb +0 -19
  484. data/features/fixtures/rails6/app/app/controllers/metadata_filters_controller.rb +0 -12
  485. data/features/fixtures/rails6/app/app/controllers/mongo_controller.rb +0 -22
  486. data/features/fixtures/rails6/app/app/controllers/project_root_controller.rb +0 -21
  487. data/features/fixtures/rails6/app/app/controllers/release_stage_controller.rb +0 -16
  488. data/features/fixtures/rails6/app/app/controllers/send_code_controller.rb +0 -16
  489. data/features/fixtures/rails6/app/app/controllers/send_environment_controller.rb +0 -8
  490. data/features/fixtures/rails6/app/app/controllers/session_tracking_controller.rb +0 -20
  491. data/features/fixtures/rails6/app/app/controllers/unhandled_controller.rb +0 -7
  492. data/features/fixtures/rails6/app/app/helpers/application_helper.rb +0 -2
  493. data/features/fixtures/rails6/app/app/javascript/channels/consumer.js +0 -6
  494. data/features/fixtures/rails6/app/app/javascript/channels/index.js +0 -5
  495. data/features/fixtures/rails6/app/app/javascript/packs/application.js +0 -9
  496. data/features/fixtures/rails6/app/app/jobs/application_job.rb +0 -7
  497. data/features/fixtures/rails6/app/app/jobs/notify_job.rb +0 -5
  498. data/features/fixtures/rails6/app/app/mailers/application_mailer.rb +0 -4
  499. data/features/fixtures/rails6/app/app/models/application_record.rb +0 -3
  500. data/features/fixtures/rails6/app/app/models/concerns/.keep +0 -0
  501. data/features/fixtures/rails6/app/app/models/mongo_model.rb +0 -6
  502. data/features/fixtures/rails6/app/app/models/user.rb +0 -3
  503. data/features/fixtures/rails6/app/app/views/layouts/application.html.erb +0 -15
  504. data/features/fixtures/rails6/app/app/views/layouts/mailer.html.erb +0 -13
  505. data/features/fixtures/rails6/app/app/views/layouts/mailer.text.erb +0 -1
  506. data/features/fixtures/rails6/app/babel.config.js +0 -70
  507. data/features/fixtures/rails6/app/config/application.rb +0 -19
  508. data/features/fixtures/rails6/app/config/boot.rb +0 -4
  509. data/features/fixtures/rails6/app/config/cable.yml +0 -13
  510. data/features/fixtures/rails6/app/config/credentials.yml.enc +0 -1
  511. data/features/fixtures/rails6/app/config/database.yml +0 -29
  512. data/features/fixtures/rails6/app/config/environment.rb +0 -5
  513. data/features/fixtures/rails6/app/config/environments/development.rb +0 -64
  514. data/features/fixtures/rails6/app/config/environments/production.rb +0 -113
  515. data/features/fixtures/rails6/app/config/environments/rails_env.rb +0 -56
  516. data/features/fixtures/rails6/app/config/environments/test.rb +0 -48
  517. data/features/fixtures/rails6/app/config/initializers/application_controller_renderer.rb +0 -8
  518. data/features/fixtures/rails6/app/config/initializers/assets.rb +0 -14
  519. data/features/fixtures/rails6/app/config/initializers/backtrace_silencers.rb +0 -7
  520. data/features/fixtures/rails6/app/config/initializers/bugsnag.rb +0 -29
  521. data/features/fixtures/rails6/app/config/initializers/content_security_policy.rb +0 -27
  522. data/features/fixtures/rails6/app/config/initializers/cookies_serializer.rb +0 -5
  523. data/features/fixtures/rails6/app/config/initializers/filter_parameter_logging.rb +0 -5
  524. data/features/fixtures/rails6/app/config/initializers/inflections.rb +0 -16
  525. data/features/fixtures/rails6/app/config/initializers/mime_types.rb +0 -4
  526. data/features/fixtures/rails6/app/config/initializers/wrap_parameters.rb +0 -14
  527. data/features/fixtures/rails6/app/config/locales/en.yml +0 -33
  528. data/features/fixtures/rails6/app/config/mongoid.yml +0 -23
  529. data/features/fixtures/rails6/app/config/puma.rb +0 -35
  530. data/features/fixtures/rails6/app/config/routes.rb +0 -62
  531. data/features/fixtures/rails6/app/config/secrets.yml +0 -25
  532. data/features/fixtures/rails6/app/config/spring.rb +0 -6
  533. data/features/fixtures/rails6/app/config/storage.yml +0 -34
  534. data/features/fixtures/rails6/app/config/webpack/development.js +0 -5
  535. data/features/fixtures/rails6/app/config/webpack/environment.js +0 -3
  536. data/features/fixtures/rails6/app/config/webpack/production.js +0 -5
  537. data/features/fixtures/rails6/app/config/webpack/rails_env.js +0 -5
  538. data/features/fixtures/rails6/app/config/webpack/test.js +0 -5
  539. data/features/fixtures/rails6/app/config/webpacker.yml +0 -121
  540. data/features/fixtures/rails6/app/config.ru +0 -5
  541. data/features/fixtures/rails6/app/db/migrate/20180426095545_create_users.rb +0 -17
  542. data/features/fixtures/rails6/app/db/schema.rb +0 -29
  543. data/features/fixtures/rails6/app/db/seeds.rb +0 -7
  544. data/features/fixtures/rails6/app/lib/assets/.keep +0 -0
  545. data/features/fixtures/rails6/app/lib/tasks/.keep +0 -0
  546. data/features/fixtures/rails6/app/log/.keep +0 -0
  547. data/features/fixtures/rails6/app/package.json +0 -15
  548. data/features/fixtures/rails6/app/postcss.config.js +0 -12
  549. data/features/fixtures/rails6/app/public/404.html +0 -67
  550. data/features/fixtures/rails6/app/public/422.html +0 -67
  551. data/features/fixtures/rails6/app/public/500.html +0 -66
  552. data/features/fixtures/rails6/app/public/apple-touch-icon-precomposed.png +0 -0
  553. data/features/fixtures/rails6/app/public/apple-touch-icon.png +0 -0
  554. data/features/fixtures/rails6/app/public/favicon.ico +0 -0
  555. data/features/fixtures/rails6/app/public/robots.txt +0 -1
  556. data/features/fixtures/rails6/app/storage/.keep +0 -0
  557. data/features/fixtures/rails6/app/test/application_system_test_case.rb +0 -5
  558. data/features/fixtures/rails6/app/test/channels/application_cable/connection_test.rb +0 -11
  559. data/features/fixtures/rails6/app/test/controllers/.keep +0 -0
  560. data/features/fixtures/rails6/app/test/fixtures/.keep +0 -0
  561. data/features/fixtures/rails6/app/test/fixtures/files/.keep +0 -0
  562. data/features/fixtures/rails6/app/test/helpers/.keep +0 -0
  563. data/features/fixtures/rails6/app/test/integration/.keep +0 -0
  564. data/features/fixtures/rails6/app/test/mailers/.keep +0 -0
  565. data/features/fixtures/rails6/app/test/models/.keep +0 -0
  566. data/features/fixtures/rails6/app/test/system/.keep +0 -0
  567. data/features/fixtures/rails6/app/test/test_helper.rb +0 -13
  568. data/features/fixtures/rails6/app/tmp/.keep +0 -0
  569. data/features/fixtures/rails6/app/yarn.lock +0 -6082
  570. data/features/fixtures/resque/.dockerignore +0 -1
  571. data/features/fixtures/resque/Dockerfile +0 -14
  572. data/features/fixtures/resque/Gemfile +0 -6
  573. data/features/fixtures/resque/Rakefile +0 -4
  574. data/features/fixtures/resque/app.rb +0 -12
  575. data/features/fixtures/sidekiq/.dockerignore +0 -2
  576. data/features/fixtures/sidekiq/Dockerfile +0 -17
  577. data/features/fixtures/sidekiq/app/Gemfile +0 -7
  578. data/features/fixtures/sidekiq/app/Rakefile.rb +0 -14
  579. data/features/fixtures/sidekiq/app/app.rb +0 -35
  580. data/features/fixtures/sidekiq/app/initializers/HandledError.rb +0 -3
  581. data/features/fixtures/sidekiq/app/initializers/UnhandledError.rb +0 -3
  582. data/features/fixtures/sidekiq/payloads/handled_metadata_ca_false.json +0 -11
  583. data/features/fixtures/sidekiq/payloads/handled_metadata_ca_true.json +0 -12
  584. data/features/fixtures/sidekiq/payloads/unhandled_metadata_ca_false.json +0 -11
  585. data/features/fixtures/sidekiq/payloads/unhandled_metadata_ca_true.json +0 -12
  586. data/features/fixtures/sinatra1/.dockerignore +0 -1
  587. data/features/fixtures/sinatra1/Dockerfile +0 -13
  588. data/features/fixtures/sinatra1/Gemfile +0 -4
  589. data/features/fixtures/sinatra1/app.rb +0 -9
  590. data/features/fixtures/sinatra2/.dockerignore +0 -1
  591. data/features/fixtures/sinatra2/Dockerfile +0 -13
  592. data/features/fixtures/sinatra2/Gemfile +0 -4
  593. data/features/fixtures/sinatra2/app.rb +0 -9
  594. data/features/plain_features/add_tab.feature +0 -55
  595. data/features/plain_features/app_type.feature +0 -8
  596. data/features/plain_features/app_version.feature +0 -8
  597. data/features/plain_features/auto_notify.feature +0 -7
  598. data/features/plain_features/delivery.feature +0 -20
  599. data/features/plain_features/exception_data.feature +0 -50
  600. data/features/plain_features/filters.feature +0 -14
  601. data/features/plain_features/handled_errors.feature +0 -42
  602. data/features/plain_features/ignore_classes.feature +0 -11
  603. data/features/plain_features/ignore_report.feature +0 -14
  604. data/features/plain_features/proxies.feature +0 -25
  605. data/features/plain_features/release_stages.feature +0 -20
  606. data/features/plain_features/report_api_key.feature +0 -16
  607. data/features/plain_features/report_severity.feature +0 -17
  608. data/features/plain_features/report_stack_frames.feature +0 -53
  609. data/features/plain_features/report_user.feature +0 -51
  610. data/features/plain_features/unhandled_errors.feature +0 -33
  611. data/features/rails_features/api_key.feature +0 -15
  612. data/features/rails_features/app_type.feature +0 -24
  613. data/features/rails_features/app_version.feature +0 -26
  614. data/features/rails_features/auto_capture_sessions.feature +0 -34
  615. data/features/rails_features/auto_notify.feature +0 -41
  616. data/features/rails_features/before_notify.feature +0 -44
  617. data/features/rails_features/breadcrumbs.feature +0 -43
  618. data/features/rails_features/handled.feature +0 -42
  619. data/features/rails_features/ignore_classes.feature +0 -14
  620. data/features/rails_features/meta_data_filters.feature +0 -16
  621. data/features/rails_features/mongo_breadcrumbs.feature +0 -26
  622. data/features/rails_features/on_error.feature +0 -29
  623. data/features/rails_features/project_root.feature +0 -35
  624. data/features/rails_features/release_stage.feature +0 -27
  625. data/features/rails_features/send_code.feature +0 -18
  626. data/features/rails_features/send_environment.feature +0 -13
  627. data/features/rails_features/unhandled.feature +0 -16
  628. data/features/rails_features/user_info.feature +0 -52
  629. data/features/sidekiq.feature +0 -30
  630. data/features/steps/ruby_notifier_steps.rb +0 -75
  631. data/features/support/env.rb +0 -23
  632. data/issue_template.md +0 -48
  633. data/spec/breadcrumbs/breadcrumb_spec.rb +0 -93
  634. data/spec/breadcrumbs/validator_spec.rb +0 -176
  635. data/spec/bugsnag_spec.rb +0 -366
  636. data/spec/cleaner_spec.rb +0 -350
  637. data/spec/code_extractor_spec.rb +0 -129
  638. data/spec/configuration_spec.rb +0 -445
  639. data/spec/fixtures/apps/rails-initializer-config/Gemfile +0 -9
  640. data/spec/fixtures/apps/rails-initializer-config/config/initializers/bugsnag.rb +0 -3
  641. data/spec/fixtures/apps/rails-initializer-config/config.ru +0 -16
  642. data/spec/fixtures/apps/rails-invalid-initializer-config/Gemfile +0 -9
  643. data/spec/fixtures/apps/rails-invalid-initializer-config/config/initializers/bugsnag.rb +0 -3
  644. data/spec/fixtures/apps/rails-invalid-initializer-config/config.ru +0 -16
  645. data/spec/fixtures/apps/rails-no-config/Gemfile +0 -9
  646. data/spec/fixtures/apps/rails-no-config/config.ru +0 -16
  647. data/spec/fixtures/apps/scripts/Gemfile +0 -3
  648. data/spec/fixtures/apps/scripts/configure_invalid_key.rb +0 -5
  649. data/spec/fixtures/apps/scripts/configure_key.rb +0 -5
  650. data/spec/fixtures/apps/scripts/no_config.rb +0 -3
  651. data/spec/fixtures/crashes/end_of_file.rb +0 -9
  652. data/spec/fixtures/crashes/file1.rb +0 -29
  653. data/spec/fixtures/crashes/file2.rb +0 -25
  654. data/spec/fixtures/crashes/file_with_long_lines.rb +0 -7
  655. data/spec/fixtures/crashes/functions.rb +0 -29
  656. data/spec/fixtures/crashes/short_file.rb +0 -3
  657. data/spec/fixtures/crashes/start_of_file.rb +0 -9
  658. data/spec/fixtures/middleware/internal_info_setter.rb +0 -11
  659. data/spec/fixtures/middleware/public_info_setter.rb +0 -11
  660. data/spec/fixtures/tasks/Rakefile +0 -26
  661. data/spec/helper_spec.rb +0 -131
  662. data/spec/integration_spec.rb +0 -107
  663. data/spec/integrations/clearance_user_spec.rb +0 -38
  664. data/spec/integrations/logger_spec.rb +0 -134
  665. data/spec/integrations/mailman_spec.rb +0 -83
  666. data/spec/integrations/mongo_spec.rb +0 -262
  667. data/spec/integrations/que_spec.rb +0 -94
  668. data/spec/integrations/rack_spec.rb +0 -232
  669. data/spec/integrations/rails3_request_spec.rb +0 -67
  670. data/spec/integrations/rake_spec.rb +0 -71
  671. data/spec/integrations/resque_spec.rb +0 -99
  672. data/spec/integrations/shoryuken_spec.rb +0 -70
  673. data/spec/integrations/sidekiq_spec.rb +0 -137
  674. data/spec/integrations/warden_user_spec.rb +0 -41
  675. data/spec/middleware/exception_meta_data_spec.rb +0 -104
  676. data/spec/middleware_spec.rb +0 -254
  677. data/spec/middleware_stack_spec.rb +0 -151
  678. data/spec/on_error_spec.rb +0 -332
  679. data/spec/report_spec.rb +0 -1583
  680. data/spec/session_tracker_spec.rb +0 -156
  681. data/spec/spec_helper.rb +0 -99
  682. data/spec/stacktrace_spec.rb +0 -443
  683. data/spec/utility/circular_buffer_spec.rb +0 -98
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a4f6c896c7046dba3d9db2adfa32e232232e3a7923cb9984321ee3a8b09b6e3
4
- data.tar.gz: f6b27c0b50846c1a3e012bb80bccbe5ad6663257c8de4e300742e7af4b065b3f
3
+ metadata.gz: 7f8eb06e59bf516cfc5ca7f5539ae3b0fdbd9c4ea86a82252d6c2ea787a7c255
4
+ data.tar.gz: 01be8584412260118dfb14548808e1c4c4444aadd040bbbd6c6ad5dee3da1dbc
5
5
  SHA512:
6
- metadata.gz: d51d64bbf0b2cc094742a8a207702e963c33eac9e18f58f2348f3d9e6475a1bd0c43dc44baf139bb976823bfabd8b3ff5bab261ae3dababd46f083b7539602f4
7
- data.tar.gz: 3621690efd266608313b000f7acff6df354380457e9b78e448290573e97dd0b17beb68afa5efff96fdcc7b21b39d2d292fddc38082eae7bece24dd1f2d457f0d
6
+ metadata.gz: bebc3030e22bbc50423792c701185d061b0d7834c6a741c805cafa6223753e941cd893a73c65792b8726fc6adf9f9c47ea30715c14381f5a2ac87c52d345ba98
7
+ data.tar.gz: 1923948f57cc1f032eaf249912d6f5e65423c853bc2cffe89b1b198aead96bc34303aa3aec95f9699911176579cbee14797e805986f24aff2834458413dc5066
data/.yardopts ADDED
@@ -0,0 +1,12 @@
1
+ --charset UTF-8
2
+ --fail-on-warning
3
+ --hide-api private
4
+ --no-private
5
+ --protected
6
+ --title "bugsnag-ruby API Documentation"
7
+ --embed-mixins
8
+ lib/**/*.rb
9
+ -
10
+ README.md
11
+ CONTRIBUTING.md
12
+ CHANGELOG.md
data/CHANGELOG.md CHANGED
@@ -1,6 +1,295 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ ## v6.27.1 (18 June 2024)
5
+
6
+ ### Fixes
7
+
8
+ * Only read Rack request body if it's rewindable
9
+ | [#829](https://github.com/bugsnag/bugsnag-ruby/pull/829)
10
+ * Fix circular require warning
11
+ | [#828](https://github.com/bugsnag/bugsnag-ruby/pull/828)
12
+
13
+ ## v6.27.0 (23 May 2024)
14
+
15
+ ### Enhancements
16
+
17
+ * Include the Warden scope in user metadata
18
+ | [#821](https://github.com/bugsnag/bugsnag-ruby/pull/821)
19
+ | [javierjulio](https://github.com/javierjulio)
20
+ * Add a block variant of `add_on_error`
21
+ | [#824](https://github.com/bugsnag/bugsnag-ruby/pull/824)
22
+
23
+ ## v6.26.4 (25 March 2024)
24
+
25
+ ### Fixes
26
+
27
+ * Fix Unicode encoding issues when using `Exception#detailed_message` (Ruby 3.2+)
28
+ | [#817](https://github.com/bugsnag/bugsnag-ruby/pull/817)
29
+ * Fix compatibility with Ruby 3.4-dev
30
+ | [#815](https://github.com/bugsnag/bugsnag-ruby/pull/815)
31
+ | [k0kubun](https://github.com/k0kubun)
32
+
33
+ ## v6.26.3 (24 January 2024)
34
+
35
+ ### Fixes
36
+
37
+ * Handle mailto links in `Cleaner#clean_url`
38
+ | [#813](https://github.com/bugsnag/bugsnag-ruby/pull/813)
39
+
40
+ ## v6.26.2 (17 January 2024)
41
+
42
+ ### Fixes
43
+
44
+ * Fix unhandled `URI::InvalidURIError` in `Cleaner#clean_url`
45
+ | [#811](https://github.com/bugsnag/bugsnag-ruby/pull/811)
46
+
47
+ ## v6.26.1 (9 January 2024)
48
+
49
+ ### Fixes
50
+
51
+ * Fix deprecation warning from Sidekiq error handler
52
+ | [#796](https://github.com/bugsnag/bugsnag-ruby/pull/796)
53
+ | [fukayatsu](https://github.com/fukayatsu)
54
+ * Fix Resque integration when failure backend is already `Resque::Failure::Multiple`
55
+ | [#803](https://github.com/bugsnag/bugsnag-ruby/pull/803)
56
+ | [sj26](https://github.com/sj26)
57
+ * Redact URLs in automatic Rails breadcrumbs
58
+ | [#806](https://github.com/bugsnag/bugsnag-ruby/pull/806)
59
+
60
+ ## v6.26.0 (19 July 2023)
61
+
62
+ ### Enhancements
63
+
64
+ * Support Sidekiq v7
65
+ | [#785](https://github.com/bugsnag/bugsnag-ruby/pull/785)
66
+ | [stevenharman](https://github.com/stevenharman)
67
+
68
+ ## v6.25.2 (7 February 2023)
69
+
70
+ ### Enhancements
71
+
72
+ * Improve performance of `Bugsnag.notify`
73
+ | [#774](https://github.com/bugsnag/bugsnag-ruby/pull/774)
74
+ | [sambostock](https://github.com/sambostock)
75
+
76
+ ## v6.25.1 (5 January 2023)
77
+
78
+ ### Fixes
79
+
80
+ * Allow Gem paths to be stripped from file names in stacktraces when they contain a Regexp special character
81
+ | [#764](https://github.com/bugsnag/bugsnag-ruby/pull/764)
82
+
83
+ ### Enhancements
84
+
85
+ * Use `Exception#detailed_message` instead of `Exception#message` when available
86
+ | [#761](https://github.com/bugsnag/bugsnag-ruby/pull/761)
87
+
88
+ ## v6.25.0 (1 December 2022)
89
+
90
+ ### Enhancements
91
+
92
+ * Add support for feature flags & experiments. For more information, please see https://docs.bugsnag.com/product/features-experiments
93
+ | [#758](https://github.com/bugsnag/bugsnag-ruby/pull/758)
94
+
95
+ ## v6.24.2 (21 January 2022)
96
+
97
+ ### Fixes
98
+
99
+ * Avoid rescuing from errors in Active Record transaction callbacks in versions of Rails where they will be re-raised
100
+ | [#709](https://github.com/bugsnag/bugsnag-ruby/pull/709)
101
+ | [apalmblad](https://github.com/apalmblad)
102
+
103
+ ## v6.24.1 (30 November 2021)
104
+
105
+ ### Fixes
106
+
107
+ * Fix metadata not being recorded when using Resque outside of Active Job
108
+ | [#710](https://github.com/bugsnag/bugsnag-ruby/pull/710)
109
+ | [isnotajoke](https://github.com/isnotajoke)
110
+
111
+ ## v6.24.0 (6 October 2021)
112
+
113
+ ### Enhancements
114
+
115
+ * Allow overriding an event's unhandled flag
116
+ | [#698](https://github.com/bugsnag/bugsnag-ruby/pull/698)
117
+ * Add the ability to store metadata globally
118
+ | [#699](https://github.com/bugsnag/bugsnag-ruby/pull/699)
119
+ * Add `cookies`, `body` and `httpVersion` to the automatically captured request data for Rack apps
120
+ | [#700](https://github.com/bugsnag/bugsnag-ruby/pull/700)
121
+ * Add `Configuration#endpoints` for reading the notify and sessions endpoints and `Configuration#endpoints=` for setting them
122
+ | [#701](https://github.com/bugsnag/bugsnag-ruby/pull/701)
123
+ * Add `Configuration#redacted_keys`. This is like `meta_data_filters` but matches strings with case-insensitive equality, rather than matching based on inclusion
124
+ | [#703](https://github.com/bugsnag/bugsnag-ruby/pull/703)
125
+ * Allow pausing and resuming sessions, giving more control over the stability score
126
+ | [#704](https://github.com/bugsnag/bugsnag-ruby/pull/704)
127
+ * Add `Configuration#vendor_paths` to replace `Configuration#vendor_path`
128
+ | [#705](https://github.com/bugsnag/bugsnag-ruby/pull/705)
129
+
130
+ ### Deprecated
131
+
132
+ * In the next major release, `params` will only contain query string parameters. Currently it also contains the request body for form data requests, but this is deprecated in favour of the new `body` property
133
+ * The `Configuration#set_endpoints` method is now deprecated in favour of `Configuration#endpoints=`
134
+ * The `Configuration#meta_data_filters` option is now deprecated in favour of `Configuration#redacted_keys`
135
+ * The `Configuration#vendor_path` option is now deprecated in favour of `Configuration#vendor_paths`
136
+
137
+ ## v6.23.0 (21 September 2021)
138
+
139
+ ### Enhancements
140
+
141
+ * Sessions will now be delivered every 10 seconds, instead of every 30 seconds
142
+ | [#680](https://github.com/bugsnag/bugsnag-ruby/pull/680)
143
+ * Log errors that prevent delivery at `ERROR` level
144
+ | [#681](https://github.com/bugsnag/bugsnag-ruby/pull/681)
145
+ * Add `on_breadcrumb` callbacks to replace `before_breadcrumb_callbacks`
146
+ | [#686](https://github.com/bugsnag/bugsnag-ruby/pull/686)
147
+ * Add `context` attribute to configuration, which will be used as the default context for events. Using this option will disable automatic context setting
148
+ | [#687](https://github.com/bugsnag/bugsnag-ruby/pull/687)
149
+ | [#688](https://github.com/bugsnag/bugsnag-ruby/pull/688)
150
+ * Add `Bugsnag#breadcrumbs` getter to fetch the current list of breadcrumbs
151
+ | [#689](https://github.com/bugsnag/bugsnag-ruby/pull/689)
152
+ * Add `time` (an ISO8601 string in UTC) to `device` metadata
153
+ | [#690](https://github.com/bugsnag/bugsnag-ruby/pull/690)
154
+ * Add `errors` to `Report`/`Event` containing an array of `Error` objects. The `Error` object contains `error_class`, `error_message`, `stacktrace` and `type` (always "ruby")
155
+ | [#691](https://github.com/bugsnag/bugsnag-ruby/pull/691)
156
+ * Add `original_error` to `Report`/`Event` containing the original Exception instance
157
+ | [#692](https://github.com/bugsnag/bugsnag-ruby/pull/692)
158
+ * Add `request` to `Report`/`Event` containing HTTP request metadata
159
+ | [#693](https://github.com/bugsnag/bugsnag-ruby/pull/693)
160
+ * Add `add_metadata` and `clear_metadata` to `Report`/`Event`
161
+ | [#694](https://github.com/bugsnag/bugsnag-ruby/pull/694)
162
+ * Add `set_user` to `Report`/`Event`
163
+ | [#695](https://github.com/bugsnag/bugsnag-ruby/pull/695)
164
+
165
+ ### Fixes
166
+
167
+ * Avoid starting session delivery thread when the current release stage is not enabled
168
+ | [#677](https://github.com/bugsnag/bugsnag-ruby/pull/677)
169
+
170
+ ### Deprecated
171
+
172
+ * `before_breadcrumb_callbacks` have been deprecated in favour of `on_breadcrumb` callbacks and will be removed in the next major release
173
+ * For consistency with Bugsnag notifiers for other languages, a number of methods have been deprecated in this release. The old options will be removed in the next major version | [#676](https://github.com/bugsnag/bugsnag-ruby/pull/676)
174
+ * The `notify_release_stages` configuration option has been deprecated in favour of `enabled_release_stages`
175
+ * The `auto_capture_sessions` and `track_sessions` configuration options have been deprecated in favour of `auto_track_sessions`
176
+ * The `enabled_automatic_breadcrumb_types` configuration option has been deprecated in favour of `enabled_breadcrumb_types`
177
+ * The `Report` class has been deprecated in favour of the `Event` class
178
+ * The `Report#meta_data` attribute has been deprecated in favour of `Event#metadata`
179
+ * The `Breadcrumb#meta_data` attribute has been deprecated in favour of `Breadcrumb#metadata`
180
+ * The `Breadcrumb#name` attribute has been deprecated in favour of `Breadcrumb#message`
181
+ * The breadcrumb type constants in the `Bugsnag::Breadcrumbs` module has been deprecated in favour of the constants available in the `Bugsnag::BreadcrumbType` module
182
+ For example, `Bugsnag::Breadcrumbs::ERROR_BREADCRUMB_TYPE` is now available as `Bugsnag::BreadcrumbType::ERROR`
183
+ * `Report#exceptions` has been deprecated in favour of the new `errors` property
184
+ * `Report#raw_exceptions` has been deprecated in favour of the new `original_error` property
185
+ * Accessing request data via `Report#metadata` has been deprecated in favour of using the new `request` property. Request data will be moved out of metadata in the next major version
186
+ * The `Report#add_tab` and `Report#remove_tab` methods have been deprecated in favour of the new `add_metadata` and `clear_metadata` methods
187
+
188
+ ## v6.22.1 (11 August 2021)
189
+
190
+ ### Fixes
191
+
192
+ * Fix possible `LocalJumpError` introduced in v6.22.0
193
+ | [#675](https://github.com/bugsnag/bugsnag-ruby/pull/675)
194
+
195
+ ## v6.22.0 (10 August 2021)
196
+
197
+ ### Enhancements
198
+
199
+ * Add support for tracking exceptions and capturing metadata in Active Job, when not using an existing integration
200
+ | [#670](https://github.com/bugsnag/bugsnag-ruby/pull/670)
201
+
202
+ * Improve the report context when using Delayed Job or Resque as the Active Job queue adapter
203
+ | [#671](https://github.com/bugsnag/bugsnag-ruby/pull/671)
204
+
205
+ ## v6.21.0 (23 June 2021)
206
+
207
+ ### Enhancements
208
+
209
+ * Allow a `Method` or any object responding to `#call` to be used as an `on_error` callback or middleware
210
+ | [#662](https://github.com/bugsnag/bugsnag-ruby/pull/662)
211
+ | [odlp](https://github.com/odlp)
212
+
213
+ ### Fixes
214
+
215
+ * Deliver when an error is raised in the block argument to `notify`
216
+ | [#660](https://github.com/bugsnag/bugsnag-ruby/pull/660)
217
+ | [aki77](https://github.com/aki77)
218
+ * Fix potential `NoMethodError` in `Bugsnag::Railtie` when using `require: false` in a Gemfile
219
+ | [#666](https://github.com/bugsnag/bugsnag-ruby/pull/666)
220
+
221
+ ## v6.20.0 (29 March 2021)
222
+
223
+ ### Enhancements
224
+
225
+ * Classify `ActionDispatch::Http::MimeNegotiation::InvalidType` as info severity level
226
+ | [#654](https://github.com/bugsnag/bugsnag-ruby/pull/654)
227
+
228
+ ### Fixes
229
+
230
+ * Include `connection_id` in ActiveRecord breadcrumb metadata on new versons of Rails
231
+ | [#655](https://github.com/bugsnag/bugsnag-ruby/pull/655)
232
+ * Avoid crash when Mongo 1.12 or earlier is used
233
+ | [#652](https://github.com/bugsnag/bugsnag-ruby/pull/652)
234
+ | [isabanin](https://github.com/isabanin)
235
+
236
+ ## 6.19.0 (6 January 2021)
237
+
238
+ ### Enhancements
239
+
240
+ * Exception messages will be truncated if they have a length greater than 3,072
241
+ | [#636](https://github.com/bugsnag/bugsnag-ruby/pull/636)
242
+ | [joshuapinter](https://github.com/joshuapinter)
243
+
244
+ * Breadcrumb metadata can now contain any type
245
+ | [#648](https://github.com/bugsnag/bugsnag-ruby/pull/648)
246
+
247
+ ## 6.18.0 (27 October 2020)
248
+
249
+ ### Enhancements
250
+
251
+ * Bugsnag should now report uncaught exceptions inside Bundler's 'friendly errors'
252
+ | [#634](https://github.com/bugsnag/bugsnag-ruby/pull/634)
253
+
254
+ * Improve the display of breadrumbs in the Bugsnag app by including milliseconds in timestamps
255
+ | [#639](https://github.com/bugsnag/bugsnag-ruby/pull/639)
256
+
257
+ ## 6.17.0 (27 August 2020)
258
+
259
+ ### Enhancements
260
+
261
+ * Sidekiq now uses `thread_queue` delivery by default
262
+ | [#626](https://github.com/bugsnag/bugsnag-ruby/pull/626)
263
+
264
+ * Rescue now uses `thread_queue` delivery when `at_exit` hooks are enabled
265
+ | [#629](https://github.com/bugsnag/bugsnag-ruby/pull/629)
266
+
267
+ ## 6.16.0 (12 August 2020)
268
+
269
+ ### Enhancements
270
+
271
+ * Set default Delayed Job error context to job class
272
+ | [#499](https://github.com/bugsnag/bugsnag-ruby/pull/499)
273
+ | [Mike Stewart](https://github.com/mike-stewart)
274
+
275
+ * The `BUGSNAG_RELEASE_STAGE` environment variable can now be used to set the release stage. Previously this was only used in Rails applications
276
+ | [#613](https://github.com/bugsnag/bugsnag-ruby/pull/613)
277
+
278
+ * Add support for runtime versions to Delayed Job, Mailman and Shoryuken integrations
279
+ | [#620](https://github.com/bugsnag/bugsnag-ruby/pull/620)
280
+
281
+ * Reduce the size of the bundled gem
282
+ | [#571](https://github.com/bugsnag/bugsnag-ruby/pull/571)
283
+ | [t-richards](https://github.com/t-richards)
284
+
285
+ * Move serialization of Reports onto the background thread when using the thread_queue delivery method
286
+ | [#623](https://github.com/bugsnag/bugsnag-ruby/pull/623)
287
+
288
+ ## Fixes
289
+
290
+ * The `app_type` configuration option should no longer be overwritten by Bugsnag and integrations should set this more consistently
291
+ | [#619](https://github.com/bugsnag/bugsnag-ruby/pull/619)
292
+
4
293
  ## 6.15.0 (27 July 2020)
5
294
 
6
295
  ### Enhancements
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # Bugsnag error monitoring & exception reporter for Ruby
2
- [![build status](https://travis-ci.com/bugsnag/bugsnag-ruby.svg?branch=master)](https://travis-ci.com/bugsnag/bugsnag-ruby)
2
+ [![build status](https://github.com/bugsnag/bugsnag-ruby/actions/workflows/test-package.yml/badge.svg)](https://github.com/bugsnag/bugsnag-ruby/actions/workflows/test-package.yml?query=branch%3Amaster)
3
3
 
4
4
 
5
5
  The Bugsnag exception reporter for Ruby gives you instant notification of exceptions thrown from your **[Rails](https://www.bugsnag.com/platforms/rails)**, **Sinatra**, **Rack** or **plain Ruby** app. Any uncaught exceptions will trigger a notification to be sent to your Bugsnag project.
@@ -22,7 +22,6 @@ The Bugsnag exception reporter for Ruby gives you instant notification of except
22
22
  * [Rake](https://docs.bugsnag.com/platforms/ruby/rake)
23
23
  * [Sidekiq](https://docs.bugsnag.com/platforms/ruby/sidekiq)
24
24
  * [Other Ruby apps](https://docs.bugsnag.com/platforms/ruby/other)
25
- * For [EventMachine](https://rubyeventmachine.com) integration, see [`bugsnag-em`](https://github.com/bugsnag/bugsnag-em)
26
25
  3. Relax!
27
26
 
28
27
  ## Support
data/VERSION CHANGED
@@ -1 +1 @@
1
- 6.15.0
1
+ 6.27.1
data/bugsnag.gemspec CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
10
10
  s.homepage = "https://github.com/bugsnag/bugsnag-ruby"
11
11
  s.licenses = ["MIT"]
12
12
 
13
- s.files = `git ls-files`.split("\n").reject {|file| file.start_with? "example/"}
13
+ s.files = `git ls-files -z lib bugsnag.gemspec VERSION .yardopts`.split("\x0")
14
14
  s.extra_rdoc_files = [
15
15
  "LICENSE.txt",
16
16
  "README.md",
@@ -18,5 +18,22 @@ Gem::Specification.new do |s|
18
18
  ]
19
19
  s.require_paths = ["lib"]
20
20
  s.required_ruby_version = '>= 1.9.2'
21
- s.add_runtime_dependency 'concurrent-ruby', '~> 1.0'
21
+
22
+ ruby_version = Gem::Version.new(RUBY_VERSION.dup)
23
+
24
+ if ruby_version < Gem::Version.new('2.2.0')
25
+ # concurrent-ruby 1.1.10 requires Ruby 2.2+
26
+ s.add_runtime_dependency 'concurrent-ruby', '~> 1.0', '< 1.1.10'
27
+ else
28
+ s.add_runtime_dependency 'concurrent-ruby', '~> 1.0'
29
+ end
30
+
31
+ if s.respond_to?(:metadata=)
32
+ s.metadata = {
33
+ "changelog_uri" => "https://github.com/bugsnag/bugsnag-ruby/blob/v#{File.read("VERSION").strip}/CHANGELOG.md",
34
+ "documentation_uri" => "https://docs.bugsnag.com/platforms/ruby/",
35
+ "source_code_uri" => "https://github.com/bugsnag/bugsnag-ruby/",
36
+ "rubygems_mfa_required" => "true"
37
+ }
38
+ end
22
39
  end
@@ -0,0 +1,14 @@
1
+ require "bugsnag/breadcrumbs/breadcrumbs"
2
+
3
+ module Bugsnag
4
+ module BreadcrumbType
5
+ ERROR = Bugsnag::Breadcrumbs::ERROR_BREADCRUMB_TYPE
6
+ LOG = Bugsnag::Breadcrumbs::LOG_BREADCRUMB_TYPE
7
+ MANUAL = Bugsnag::Breadcrumbs::MANUAL_BREADCRUMB_TYPE
8
+ NAVIGATION = Bugsnag::Breadcrumbs::NAVIGATION_BREADCRUMB_TYPE
9
+ PROCESS = Bugsnag::Breadcrumbs::PROCESS_BREADCRUMB_TYPE
10
+ REQUEST = Bugsnag::Breadcrumbs::REQUEST_BREADCRUMB_TYPE
11
+ STATE = Bugsnag::Breadcrumbs::STATE_BREADCRUMB_TYPE
12
+ USER = Bugsnag::Breadcrumbs::USER_BREADCRUMB_TYPE
13
+ end
14
+ end
@@ -1,11 +1,13 @@
1
1
  module Bugsnag::Breadcrumbs
2
2
  class Breadcrumb
3
+ # @deprecated Use {#message} instead
3
4
  # @return [String] the breadcrumb name
4
5
  attr_accessor :name
5
6
 
6
7
  # @return [String] the breadcrumb type
7
8
  attr_accessor :type
8
9
 
10
+ # @deprecated Use {#metadata} instead
9
11
  # @return [Hash, nil] metadata hash containing strings, numbers, or booleans, or nil
10
12
  attr_accessor :meta_data
11
13
 
@@ -23,7 +25,7 @@ module Bugsnag::Breadcrumbs
23
25
  # @api private
24
26
  #
25
27
  # @param name [String] the breadcrumb name
26
- # @param type [String] the breadcrumb type from Bugsnag::Breadcrumbs::VALID_BREADCRUMB_TYPES
28
+ # @param type [String] the breadcrumb type from Bugsnag::BreadcrumbType
27
29
  # @param meta_data [Hash, nil] a hash containing strings, numbers, or booleans, or nil
28
30
  # @param auto [Symbol] set to `:auto` if the breadcrumb is automatically generated
29
31
  def initialize(name, type, meta_data, auto)
@@ -69,8 +71,39 @@ module Bugsnag::Breadcrumbs
69
71
  :name => @name,
70
72
  :type => @type,
71
73
  :metaData => @meta_data,
72
- :timestamp => @timestamp.iso8601
74
+ :timestamp => @timestamp.iso8601(3)
73
75
  }
74
76
  end
77
+
78
+ # TODO: "message" and "metadata" can be simple attr_accessors when they
79
+ # replace "name" and "meta_data"
80
+ # NOTE: these are not aliases as YARD doesn't allow documenting the non-alias
81
+ # as deprecated without also marking the alias as deprecated
82
+
83
+ # The breadcrumb message
84
+ # @!attribute message
85
+ # @return [String]
86
+ def message
87
+ @name
88
+ end
89
+
90
+ # @param message [String]
91
+ # @return [void]
92
+ def message=(message)
93
+ @name = message
94
+ end
95
+
96
+ # A Hash containing arbitrary metadata associated with this breadcrumb
97
+ # @!attribute metadata
98
+ # @return [Hash, nil]
99
+ def metadata
100
+ @meta_data
101
+ end
102
+
103
+ # @param metadata [Hash, nil]
104
+ # @return [void]
105
+ def metadata=(metadata)
106
+ @meta_data = metadata
107
+ end
75
108
  end
76
109
  end
@@ -1,4 +1,5 @@
1
1
  module Bugsnag::Breadcrumbs
2
+ # @deprecated Use {Bugsnag::BreadcrumbType} instead
2
3
  VALID_BREADCRUMB_TYPES = [
3
4
  ERROR_BREADCRUMB_TYPE = "error",
4
5
  MANUAL_BREADCRUMB_TYPE = "manual",
@@ -0,0 +1,48 @@
1
+ module Bugsnag::Breadcrumbs
2
+ class OnBreadcrumbCallbackList
3
+ def initialize(configuration)
4
+ @callbacks = Set.new
5
+ @mutex = Mutex.new
6
+ @configuration = configuration
7
+ end
8
+
9
+ ##
10
+ # @param callback [Proc, Method, #call]
11
+ # @return [void]
12
+ def add(callback)
13
+ @mutex.synchronize do
14
+ @callbacks.add(callback)
15
+ end
16
+ end
17
+
18
+ ##
19
+ # @param callback [Proc, Method, #call]
20
+ # @return [void]
21
+ def remove(callback)
22
+ @mutex.synchronize do
23
+ @callbacks.delete(callback)
24
+ end
25
+ end
26
+
27
+ ##
28
+ # @param breadcrumb [Breadcrumb]
29
+ # @return [void]
30
+ def call(breadcrumb)
31
+ @callbacks.each do |callback|
32
+ begin
33
+ should_continue = callback.call(breadcrumb)
34
+ rescue StandardError => e
35
+ @configuration.warn("Error occurred in on_breadcrumb callback: '#{e}'")
36
+ @configuration.warn("on_breadcrumb callback stacktrace: #{e.backtrace.inspect}")
37
+ end
38
+
39
+ # only stop if should_continue is explicity 'false' to allow callbacks
40
+ # to return 'nil'
41
+ if should_continue == false
42
+ breadcrumb.ignore!
43
+ break
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -1,5 +1,3 @@
1
- require 'bugsnag/breadcrumbs/breadcrumbs'
2
-
3
1
  module Bugsnag::Breadcrumbs
4
2
  ##
5
3
  # Validates a given breadcrumb before it is stored
@@ -15,16 +13,6 @@ module Bugsnag::Breadcrumbs
15
13
  #
16
14
  # @param breadcrumb [Bugsnag::Breadcrumbs::Breadcrumb] the breadcrumb to be validated
17
15
  def validate(breadcrumb)
18
- # Check meta_data hash doesn't contain complex values
19
- breadcrumb.meta_data = breadcrumb.meta_data.select do |k, v|
20
- if valid_meta_data_type?(v)
21
- true
22
- else
23
- @configuration.debug("Breadcrumb #{breadcrumb.name} meta_data #{k}:#{v.class} has been dropped for having an invalid data type")
24
- false
25
- end
26
- end
27
-
28
16
  # Check type is valid, set to manual otherwise
29
17
  unless Bugsnag::Breadcrumbs::VALID_BREADCRUMB_TYPES.include?(breadcrumb.type)
30
18
  @configuration.debug("Invalid type: #{breadcrumb.type} for breadcrumb: #{breadcrumb.name}, defaulting to #{Bugsnag::Breadcrumbs::MANUAL_BREADCRUMB_TYPE}")
@@ -37,17 +25,5 @@ module Bugsnag::Breadcrumbs
37
25
  @configuration.debug("Automatic breadcrumb of type #{breadcrumb.type} ignored: #{breadcrumb.name}")
38
26
  breadcrumb.ignore!
39
27
  end
40
-
41
- private
42
-
43
- ##
44
- # Tests whether the meta_data types are non-complex objects.
45
- #
46
- # Acceptable types are String, Symbol, Numeric, TrueClass, FalseClass, and nil.
47
- #
48
- # @param value [Object] the object to be type checked
49
- def valid_meta_data_type?(value)
50
- value.nil? || value.is_a?(String) || value.is_a?(Symbol) || value.is_a?(Numeric) || value.is_a?(FalseClass) || value.is_a?(TrueClass)
51
- end
52
28
  end
53
29
  end