bugsnag-api 1.0.2 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (124) hide show
  1. checksums.yaml +5 -5
  2. data/.buildkite/pipeline.yml +6 -0
  3. data/.github/ISSUE_TEMPLATE/A.md +14 -0
  4. data/.github/ISSUE_TEMPLATE/bug_report.md +47 -0
  5. data/.github/ISSUE_TEMPLATE/feature_request.md +24 -0
  6. data/.github/PULL_REQUEST_TEMPLATE.md +16 -0
  7. data/.github/support.md +19 -0
  8. data/.github/workflows/tests.yml +53 -0
  9. data/.rubocop.yml +2 -0
  10. data/.rubocop_todo.yml +271 -0
  11. data/CHANGELOG.md +59 -0
  12. data/CONTRIBUTING.md +40 -0
  13. data/Gemfile +9 -0
  14. data/README.md +178 -109
  15. data/bugsnag-api.gemspec +42 -6
  16. data/config/.gitignore +1 -0
  17. data/docker-compose.yml +9 -0
  18. data/dockerfiles/Dockerfile.audit +5 -0
  19. data/lib/bugsnag/api/client.rb +32 -10
  20. data/lib/bugsnag/api/client/collaborators.rb +86 -0
  21. data/lib/bugsnag/api/client/comments.rb +31 -40
  22. data/lib/bugsnag/api/client/currentuser.rb +32 -0
  23. data/lib/bugsnag/api/client/errors.rb +48 -53
  24. data/lib/bugsnag/api/client/eventfields.rb +49 -0
  25. data/lib/bugsnag/api/client/events.rb +37 -32
  26. data/lib/bugsnag/api/client/organizations.rb +45 -0
  27. data/lib/bugsnag/api/client/pivots.rb +42 -0
  28. data/lib/bugsnag/api/client/projects.rb +36 -63
  29. data/lib/bugsnag/api/client/trends.rb +41 -0
  30. data/lib/bugsnag/api/configuration.rb +1 -1
  31. data/lib/bugsnag/api/error.rb +5 -1
  32. data/lib/bugsnag/api/response/raise_error.rb +0 -2
  33. data/lib/bugsnag/api/version.rb +1 -1
  34. data/scripts/license_finder.sh +4 -0
  35. data/spec/bugsnag/api/client/collaborators_spec.rb +101 -0
  36. data/spec/bugsnag/api/client/comments_spec.rb +42 -30
  37. data/spec/bugsnag/api/client/currentuser_spec.rb +57 -0
  38. data/spec/bugsnag/api/client/errors_spec.rb +44 -41
  39. data/spec/bugsnag/api/client/eventfields_spec.rb +56 -0
  40. data/spec/bugsnag/api/client/events_spec.rb +41 -29
  41. data/spec/bugsnag/api/client/organizations_spec.rb +53 -0
  42. data/spec/bugsnag/api/client/pivots_spec.rb +49 -0
  43. data/spec/bugsnag/api/client/projects_spec.rb +35 -59
  44. data/spec/bugsnag/api/client/trends_spec.rb +44 -0
  45. data/spec/bugsnag/api/client_spec.rb +76 -9
  46. data/spec/bugsnag/api_spec.rb +2 -0
  47. data/spec/cassettes/Bugsnag_Api_Client/_get/handles_query_params.yml +36 -26
  48. data/spec/cassettes/Bugsnag_Api_Client/_last_response/caches_the_last_agent_response.yml +36 -26
  49. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/_invitecollaborator/creates_and_returns_a_collaborator.yml +68 -0
  50. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/_invitecollaborator/invites_multiple_collaborators.yml +68 -0
  51. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborator/returns_a_collaborator.yml +133 -0
  52. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/returns_a_list_of_all_organization_collaborators.yml +135 -0
  53. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/returns_a_list_of_all_project_collaborators.yml +135 -0
  54. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/throws_an_argument_error_if_neither_org_id_or_project_id_are_provided.yml +68 -0
  55. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_delete_collaborator/deletes_a_collaborator.yml +68 -0
  56. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_update_collaborator_permissions/updates_and_returns_the_collaborator.yml +133 -0
  57. data/spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_view_collaborator_projects/returns_a_list_of_projects_belonging_to_the_collaborator.yml +153 -0
  58. data/spec/cassettes/Bugsnag_Api_Client_Comments/_create_comment/creates_a_comment_on_the_error.yml +70 -0
  59. data/spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_comment/retrieves_the_comment_specified.yml +135 -0
  60. data/spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_comments/retrieves_all_comments_on_an_error.yml +137 -0
  61. data/spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_delete_comment/deletes_the_comment_and_returns_true.yml +70 -0
  62. data/spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_update_comment/updates_the_message_on_a_comment.yml +135 -0
  63. data/spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_organizations/when_using_auth_token/returns_the_organization_the_auth_token_belongs_to.yml +68 -0
  64. data/spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_organizations/when_using_user_credentials/returns_users_organizations.yml +71 -0
  65. data/spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_projects/when_using_auth_token/lists_current_user_s_projects_in_the_organization.yml +88 -0
  66. data/spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_projects/when_using_user_credentials/lists_current_user_s_projects_in_the_organization.yml +91 -0
  67. data/spec/cassettes/Bugsnag_Api_Client_Errors/_error/returns_a_single_error.yml +68 -0
  68. data/spec/cassettes/Bugsnag_Api_Client_Errors/_errors/returns_errors_on_the_project.yml +70 -0
  69. data/spec/cassettes/Bugsnag_Api_Client_Errors/_update_errors/updates_and_returns_the_updated_errors.yml +68 -0
  70. data/spec/cassettes/Bugsnag_Api_Client_Events/_error_events/lists_all_error_events.yml +73 -0
  71. data/spec/cassettes/Bugsnag_Api_Client_Events/_event/returns_the_specified_event.yml +70 -0
  72. data/spec/cassettes/Bugsnag_Api_Client_Events/_events/returns_the_a_list_of_project_errors.yml +73 -0
  73. data/spec/cassettes/Bugsnag_Api_Client_Events/_latest_event/returns_the_last_event_on_an_error.yml +70 -0
  74. data/spec/cassettes/Bugsnag_Api_Client_Organizations/_create_organization/creates_a_new_organization.yml +71 -0
  75. data/spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_delete_organization/deletes_the_organization.yml +133 -0
  76. data/spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_organization/returns_the_requested_organization.yml +139 -0
  77. data/spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_update_organization/updates_and_returns_the_organization.yml +139 -0
  78. data/spec/cassettes/Bugsnag_Api_Client_Projects/_create_project/creates_a_new_project.yml +68 -0
  79. data/spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_delete_project/deletes_the_project.yml +127 -0
  80. data/spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_project/returns_the_requested_project.yml +133 -0
  81. data/spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_regenerate_api_key/removes_the_current_api_key_and_replaces_it_with_a_new_api_key.yml +133 -0
  82. data/spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_update_project/updates_and_returns_the_project.yml +133 -0
  83. data/spec/cassettes/Bugsnag_Api_Client_Trends/_trends_buckets/returns_a_list_of_error_trends_in_bucket_form.yml +68 -0
  84. data/spec/cassettes/Bugsnag_Api_Client_Trends/_trends_buckets/returns_a_list_of_project_trends_in_bucket_form.yml +68 -0
  85. data/spec/cassettes/Bugsnag_Api_Client_Trends/_trends_resolution/returns_a_list_of_project_trends_in_resolution_form.yml +68 -0
  86. data/spec/cassettes/Bugsnag_Api_Client_Trends/_trends_resolution/returns_a_list_of_trends_in_resolution_form.yml +68 -0
  87. data/spec/spec_helper.rb +32 -30
  88. metadata +167 -115
  89. data/.travis.yml +0 -9
  90. data/lib/bugsnag/api/client/accounts.rb +0 -44
  91. data/lib/bugsnag/api/client/users.rb +0 -99
  92. data/spec/bugsnag/api/client/accounts_spec.rb +0 -45
  93. data/spec/bugsnag/api/client/users_spec.rb +0 -105
  94. data/spec/cassettes/Bugsnag_Api_Client_Accounts/_account/returns_the_requested_account.yml +0 -49
  95. data/spec/cassettes/Bugsnag_Api_Client_Accounts/_account/when_using_account_credentials/returns_the_account.yml +0 -51
  96. data/spec/cassettes/Bugsnag_Api_Client_Accounts/_accounts/returns_all_accounts.yml +0 -49
  97. data/spec/cassettes/Bugsnag_Api_Client_Comments/_comments/returns_all_comments_on_an_error.yml +0 -107
  98. data/spec/cassettes/Bugsnag_Api_Client_Comments/_create_comment/created_a_comment.yml +0 -51
  99. data/spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_comment/returns_a_comment.yml +0 -97
  100. data/spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_delete_comment/deletes_an_existing_comment.yml +0 -92
  101. data/spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_update_comment/updates_an_existing_comment.yml +0 -97
  102. data/spec/cassettes/Bugsnag_Api_Client_Errors/_errors/returns_all_errors_on_an_project.yml +0 -48
  103. data/spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_error/returns_an_error.yml +0 -48
  104. data/spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_reopen_error/reopens_the_error.yml +0 -48
  105. data/spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_resolve_error/resolves_the_error.yml +0 -48
  106. data/spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_update_error/updates_the_error.yml +0 -48
  107. data/spec/cassettes/Bugsnag_Api_Client_Events/_error_events/returns_all_events_on_an_error.yml +0 -64
  108. data/spec/cassettes/Bugsnag_Api_Client_Events/_project_events/returns_all_events_on_a_project.yml +0 -64
  109. data/spec/cassettes/Bugsnag_Api_Client_Events/with_event/_event/returns_an_event.yml +0 -56
  110. data/spec/cassettes/Bugsnag_Api_Client_Projects/_account_projects/returns_all_projects_on_an_account.yml +0 -61
  111. data/spec/cassettes/Bugsnag_Api_Client_Projects/_account_projects/when_using_account_credentials/returns_all_projects.yml +0 -63
  112. data/spec/cassettes/Bugsnag_Api_Client_Projects/_create_project/creates_a_project_on_an_account.yml +0 -50
  113. data/spec/cassettes/Bugsnag_Api_Client_Projects/_user_projects/returns_all_projects_for_a_user.yml +0 -61
  114. data/spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_delete_project/deletes_an_existing_project.yml +0 -91
  115. data/spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_project/returns_a_project.yml +0 -95
  116. data/spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_update_project/updates_an_existing_project.yml +0 -95
  117. data/spec/cassettes/Bugsnag_Api_Client_Users/_account_users/returns_all_users_on_an_account.yml +0 -49
  118. data/spec/cassettes/Bugsnag_Api_Client_Users/_account_users/when_using_account_credentials/returns_all_users.yml +0 -51
  119. data/spec/cassettes/Bugsnag_Api_Client_Users/_invite_user/invites_a_user_to_an_account.yml +0 -48
  120. data/spec/cassettes/Bugsnag_Api_Client_Users/_project_users/returns_all_users_for_a_project.yml +0 -49
  121. data/spec/cassettes/Bugsnag_Api_Client_Users/_user/returns_a_user.yml +0 -48
  122. data/spec/cassettes/Bugsnag_Api_Client_Users/_user/when_using_user_credentials/returns_the_authed_user.yml +0 -48
  123. data/spec/cassettes/Bugsnag_Api_Client_Users/with_user/_remove_user/removes_a_user_from_an_account.yml +0 -89
  124. data/spec/cassettes/Bugsnag_Api_Client_Users/with_user/_update_user_permissions/updates_a_users_permissions.yml +0 -93
@@ -0,0 +1,68 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.bugsnag.com/projects/BUGSNAG_PROJECT_ID/trend?buckets_count=5
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Bugsnag API Ruby Gem 2.0.1
12
+ Content-Type:
13
+ - application/json
14
+ X-Version:
15
+ - '2'
16
+ X-Bugsnag-Api:
17
+ - 'true'
18
+ Authorization:
19
+ - token BUGSNAG_AUTH_TOKEN
20
+ Accept-Encoding:
21
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
22
+ Accept:
23
+ - "*/*"
24
+ response:
25
+ status:
26
+ code: 200
27
+ message: OK
28
+ headers:
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Etag:
32
+ - W/"b9eabf97ace2e4fdf949bafcea30f1d9"
33
+ Cache-Control:
34
+ - max-age=0, private, must-revalidate
35
+ X-Request-Id:
36
+ - a8d39325-e71e-49bc-8417-a17b88d57e3e
37
+ X-Runtime:
38
+ - '0.476384'
39
+ Vary:
40
+ - Origin
41
+ X-Rack-Cors:
42
+ - miss; no-origin
43
+ Content-Security-Policy:
44
+ - 'default-src ''self''; child-src https://*.stripe.com headway-widget.net;
45
+ connect-src ''self'' https://api.bugsnag.com https://notify.bugsnag.com https://*.stripe.com
46
+ https://bugsnag.zendesk.com https://api.lever.co; font-src ''self'' https://maxcdn.bootstrapcdn.com;
47
+ img-src ''self'' data: https://notify.bugsnag.com https://*.stripe.com https://maxcdn.bootstrapcdn.com;
48
+ script-src ''self'' https://d2wy8f7a9ursnm.cloudfront.net https://*.stripe.com
49
+ https://maxcdn.bootstrapcdn.com https://code.jquery.com https://assets.zendesk.com
50
+ https://cdn.headwayapp.co; style-src ''self'' ''unsafe-inline'' https://maxcdn.bootstrapcdn.com'
51
+ X-Content-Type-Options:
52
+ - nosniff
53
+ X-Download-Options:
54
+ - noopen
55
+ X-Frame-Options:
56
+ - DENY
57
+ X-Permitted-Cross-Domain-Policies:
58
+ - none
59
+ X-Xss-Protection:
60
+ - 1; mode=block
61
+ Transfer-Encoding:
62
+ - chunked
63
+ body:
64
+ encoding: UTF-8
65
+ string: '[{"from":"2017-12-12T10:58:49Z","to":"2017-12-12T11:10:12Z","events_count":475},{"from":"2017-12-12T11:10:12Z","to":"2017-12-12T11:21:35Z","events_count":0},{"from":"2017-12-12T11:21:35Z","to":"2017-12-12T11:32:58Z","events_count":0},{"from":"2017-12-12T11:32:58Z","to":"2017-12-12T11:44:21Z","events_count":0},{"from":"2017-12-12T11:44:21Z","to":"2017-12-12T11:55:44Z","events_count":0}]'
66
+ http_version:
67
+ recorded_at: Tue, 12 Dec 2017 11:55:32 GMT
68
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,68 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.bugsnag.com/projects/BUGSNAG_PROJECT_ID/trend?resolution=12h
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Bugsnag API Ruby Gem 2.0.1
12
+ Content-Type:
13
+ - application/json
14
+ X-Version:
15
+ - '2'
16
+ X-Bugsnag-Api:
17
+ - 'true'
18
+ Authorization:
19
+ - token BUGSNAG_AUTH_TOKEN
20
+ Accept-Encoding:
21
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
22
+ Accept:
23
+ - "*/*"
24
+ response:
25
+ status:
26
+ code: 200
27
+ message: OK
28
+ headers:
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Etag:
32
+ - W/"be3e4e83c25536aebcf78248c64806aa"
33
+ Cache-Control:
34
+ - max-age=0, private, must-revalidate
35
+ X-Request-Id:
36
+ - e6e0f54b-7526-4db9-bff2-7bc80ed05e28
37
+ X-Runtime:
38
+ - '0.494850'
39
+ Vary:
40
+ - Origin
41
+ X-Rack-Cors:
42
+ - miss; no-origin
43
+ Content-Security-Policy:
44
+ - 'default-src ''self''; child-src https://*.stripe.com headway-widget.net;
45
+ connect-src ''self'' https://api.bugsnag.com https://notify.bugsnag.com https://*.stripe.com
46
+ https://bugsnag.zendesk.com https://api.lever.co; font-src ''self'' https://maxcdn.bootstrapcdn.com;
47
+ img-src ''self'' data: https://notify.bugsnag.com https://*.stripe.com https://maxcdn.bootstrapcdn.com;
48
+ script-src ''self'' https://d2wy8f7a9ursnm.cloudfront.net https://*.stripe.com
49
+ https://maxcdn.bootstrapcdn.com https://code.jquery.com https://assets.zendesk.com
50
+ https://cdn.headwayapp.co; style-src ''self'' ''unsafe-inline'' https://maxcdn.bootstrapcdn.com'
51
+ X-Content-Type-Options:
52
+ - nosniff
53
+ X-Download-Options:
54
+ - noopen
55
+ X-Frame-Options:
56
+ - DENY
57
+ X-Permitted-Cross-Domain-Policies:
58
+ - none
59
+ X-Xss-Protection:
60
+ - 1; mode=block
61
+ Transfer-Encoding:
62
+ - chunked
63
+ body:
64
+ encoding: UTF-8
65
+ string: '[{"from":"2017-12-12T00:00:00Z","to":"2017-12-12T12:00:00Z","events_count":475}]'
66
+ http_version:
67
+ recorded_at: Tue, 12 Dec 2017 11:55:33 GMT
68
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,68 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.bugsnag.com/projects/BUGSNAG_PROJECT_ID/errors/BUGSNAG_ERROR_ID/trend?resolution=12h
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Bugsnag API Ruby Gem 2.0.1
12
+ Content-Type:
13
+ - application/json
14
+ X-Version:
15
+ - '2'
16
+ X-Bugsnag-Api:
17
+ - 'true'
18
+ Authorization:
19
+ - token BUGSNAG_AUTH_TOKEN
20
+ Accept-Encoding:
21
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
22
+ Accept:
23
+ - "*/*"
24
+ response:
25
+ status:
26
+ code: 200
27
+ message: OK
28
+ headers:
29
+ Content-Type:
30
+ - application/json; charset=utf-8
31
+ Etag:
32
+ - W/"be3e4e83c25536aebcf78248c64806aa"
33
+ Cache-Control:
34
+ - max-age=0, private, must-revalidate
35
+ X-Request-Id:
36
+ - 8131ca4e-080d-4b01-a60c-133f7a7fed71
37
+ X-Runtime:
38
+ - '0.624348'
39
+ Vary:
40
+ - Origin
41
+ X-Rack-Cors:
42
+ - miss; no-origin
43
+ Content-Security-Policy:
44
+ - 'default-src ''self''; child-src https://*.stripe.com headway-widget.net;
45
+ connect-src ''self'' https://api.bugsnag.com https://notify.bugsnag.com https://*.stripe.com
46
+ https://bugsnag.zendesk.com https://api.lever.co; font-src ''self'' https://maxcdn.bootstrapcdn.com;
47
+ img-src ''self'' data: https://notify.bugsnag.com https://*.stripe.com https://maxcdn.bootstrapcdn.com;
48
+ script-src ''self'' https://d2wy8f7a9ursnm.cloudfront.net https://*.stripe.com
49
+ https://maxcdn.bootstrapcdn.com https://code.jquery.com https://assets.zendesk.com
50
+ https://cdn.headwayapp.co; style-src ''self'' ''unsafe-inline'' https://maxcdn.bootstrapcdn.com'
51
+ X-Content-Type-Options:
52
+ - nosniff
53
+ X-Download-Options:
54
+ - noopen
55
+ X-Frame-Options:
56
+ - DENY
57
+ X-Permitted-Cross-Domain-Policies:
58
+ - none
59
+ X-Xss-Protection:
60
+ - 1; mode=block
61
+ Transfer-Encoding:
62
+ - chunked
63
+ body:
64
+ encoding: UTF-8
65
+ string: '[{"from":"2017-12-12T00:00:00Z","to":"2017-12-12T12:00:00Z","events_count":475}]'
66
+ http_version:
67
+ recorded_at: Tue, 12 Dec 2017 11:55:33 GMT
68
+ recorded_with: VCR 2.9.3
data/spec/spec_helper.rb CHANGED
@@ -3,6 +3,8 @@ require "webmock/rspec"
3
3
  require "faker"
4
4
  require "vcr"
5
5
  require "uri"
6
+ require "json"
7
+ require "sawyer"
6
8
 
7
9
  # This file was generated by the `rspec --init` command. Conventionally, all
8
10
  # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
@@ -26,18 +28,18 @@ VCR.configure do |c|
26
28
  :match_requests_on => [:method, :path]
27
29
  }
28
30
 
29
- c.filter_sensitive_data("https://api.bugsnag.com") { Bugsnag::Api.configuration.endpoint }
31
+ c.filter_sensitive_data("https://api.bugsnag.com") { test_bugsnag_endpoint }
30
32
  c.filter_sensitive_data("api.bugsnag.com") { URI.parse(Bugsnag::Api.configuration.endpoint).host }
31
- c.filter_sensitive_data("<BUGSNAG_AUTH_TOKEN>") { test_bugsnag_auth_token }
32
- c.filter_sensitive_data("<BUGSNAG_LOGIN>") { CGI::escape(test_bugsnag_email) }
33
- c.filter_sensitive_data("<BUGSNAG_EMAIL>") { test_bugsnag_email }
34
- c.filter_sensitive_data("<BUGSNAG_PASSWORD>") { test_bugsnag_password }
35
- c.filter_sensitive_data("<BUGSNAG_ACCOUNT_ID>") { test_bugsnag_account }
36
- c.filter_sensitive_data("<BUGSNAG_COMMENT_ID>") { test_bugsnag_comment }
37
- c.filter_sensitive_data("<BUGSNAG_ERROR_ID>") { test_bugsnag_error }
38
- c.filter_sensitive_data("<BUGSNAG_EVENT_ID>") { test_bugsnag_event }
39
- c.filter_sensitive_data("<BUGSNAG_PROJECT_ID>") { test_bugsnag_project }
40
- c.filter_sensitive_data("<BUGSNAG_USER_ID>") { test_bugsnag_user }
33
+ c.filter_sensitive_data("BUGSNAG_AUTH_TOKEN") { test_bugsnag_auth_token }
34
+ c.filter_sensitive_data("BUGSNAG_LOGIN") { CGI::escape(test_bugsnag_email) }
35
+ c.filter_sensitive_data("BUGSNAG_USER_EMAIL") { test_bugsnag_email }
36
+ c.filter_sensitive_data("BUGSNAG_PASSWORD") { test_bugsnag_password }
37
+ c.filter_sensitive_data("BUGSNAG_ORG_ID") { test_bugsnag_org_id }
38
+ c.filter_sensitive_data("BUGSNAG_PROJECT_ID") { test_bugsnag_project_id }
39
+ c.filter_sensitive_data("BUGSNAG_COLLABORATOR_EMAIL") { test_bugsnag_collaborator }
40
+ c.filter_sensitive_data("BUGSNAG_ERROR_ID") { test_bugsnag_error_id }
41
+ c.filter_sensitive_data("BUGSNAG_EVENT_ID") { test_bugsnag_event_id }
42
+
41
43
  end
42
44
 
43
45
  def auth_token_client
@@ -61,14 +63,14 @@ def basic_auth_client
61
63
  config.email = test_bugsnag_email
62
64
  config.password = test_bugsnag_password
63
65
  end
64
- end
66
+ end
65
67
 
66
68
  def bugsnag_url(path)
67
- URI.join(Bugsnag::Api.configuration.endpoint, path).to_s
69
+ URI.join(test_bugsnag_endpoint, path).to_s
68
70
  end
69
71
 
70
72
  def basic_bugsnag_url(path, options = {})
71
- url = File.join(Bugsnag::Api.configuration.endpoint, path)
73
+ url = File.join(test_bugsnag_endpoint, path)
72
74
  uri = Addressable::URI.parse(url)
73
75
 
74
76
  uri.user = options.fetch(:login, test_bugsnag_email)
@@ -86,37 +88,37 @@ def test_bugsnag_endpoint
86
88
  end
87
89
 
88
90
  def test_bugsnag_auth_token
89
- ENV["BUGSNAG_TEST_AUTH_TOKEN"] || "x" * 32
91
+ ENV["BUGSNAG_TEST_AUTH_TOKEN"] || "BUGSNAG_AUTH_TOKEN"
90
92
  end
91
93
 
92
94
  def test_bugsnag_email
93
- ENV["BUGSNAG_TEST_EMAIL"] || "example@bugsnag.com"
95
+ ENV["BUGSNAG_TEST_EMAIL"] || "BUGSNAG_USER_EMAIL"
94
96
  end
95
97
 
96
98
  def test_bugsnag_password
97
- ENV["BUGSNAG_TEST_PASSWORD"] || "password"
99
+ ENV["BUGSNAG_TEST_PASSWORD"] || "BUGSNAG_PASSWORD"
98
100
  end
99
101
 
100
- def test_bugsnag_account
101
- ENV["BUGSNAG_TEST_ACCOUNT"] || "5404dc9064657377ae000002"
102
+ def test_bugsnag_org_id
103
+ ENV["BUGSNAG_TEST_ORG_ID"] || "BUGSNAG_ORG_ID"
102
104
  end
103
105
 
104
- def test_bugsnag_comment
105
- ENV["BUGSNAG_TEST_COMMENT"] || "5404e0ea64657377ae00000b"
106
+ def test_bugsnag_project_id
107
+ ENV["BUGSNAG_PROJECT_ID"] || "BUGSNAG_PROJECT_ID"
106
108
  end
107
109
 
108
- def test_bugsnag_error
109
- ENV["BUGSNAG_TEST_ERROR"] || "5404e0c435ec9cb116b13603"
110
+ def test_bugsnag_error_id
111
+ ENV["BUGSNAG_TEST_ERROR"] || "BUGSNAG_ERROR_ID"
110
112
  end
111
113
 
112
- def test_bugsnag_event
113
- ENV["BUGSNAG_TEST_EVENT"] || "5404e0c4fd9c7c077b000001"
114
+ def test_bugsnag_eventfield_id
115
+ ENV["BUGSNAG_TEST_EVENTFIELD"] || "BUGSNAG_EVENTFIELD_ID"
114
116
  end
115
117
 
116
- def test_bugsnag_project
117
- ENV["BUGSNAG_TEST_PROJECT"] || "5404dc9c64657377ae000007"
118
+ def test_bugsnag_event_id
119
+ ENV["BUGSNAG_TEST_EVENT"] || "BUGSNAG_EVENT_ID"
118
120
  end
119
121
 
120
- def test_bugsnag_user
121
- ENV["BUGSNAG_TEST_USER"] || "5404dc9064657377ae000001"
122
- end
122
+ def test_bugsnag_collaborator
123
+ ENV["BUGSNAG_TEST_COLLABORATOR_EMAIL"] || "BUGSNAG_COLLABORATOR_EMAIL"
124
+ end
metadata CHANGED
@@ -1,127 +1,141 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bugsnag-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Smith
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-06 00:00:00.000000000 Z
11
+ date: 2021-05-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sawyer
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.5.3
19
+ version: 0.8.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.5.3
26
+ version: 0.8.1
27
27
  - !ruby/object:Gem::Dependency
28
- name: bundler
28
+ name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '1.3'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '1.3'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rake
42
+ name: rubocop
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: 0.52.1
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: 0.52.1
55
55
  - !ruby/object:Gem::Dependency
56
- name: rspec
56
+ name: faker
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - ">"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.0'
61
+ version: 1.7.3
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - ">"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.0'
68
+ version: 1.7.3
69
69
  - !ruby/object:Gem::Dependency
70
- name: webmock
70
+ name: json
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: faker
84
+ name: webmock
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '>='
87
+ - - ">"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: 2.3.2
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - '>='
94
+ - - ">"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: 2.3.2
97
97
  - !ruby/object:Gem::Dependency
98
- name: vcr
98
+ name: addressable
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - ">"
102
102
  - !ruby/object:Gem::Version
103
- version: '2.9'
103
+ version: 2.3.6
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - ">"
109
109
  - !ruby/object:Gem::Version
110
- version: '2.9'
110
+ version: 2.3.6
111
111
  - !ruby/object:Gem::Dependency
112
- name: json
112
+ name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - '>='
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '0'
117
+ version: '3.0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - '>='
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '0'
124
+ version: '3.0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: vcr
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '2.9'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '2.9'
125
139
  description: Bugsnag API toolkit for ruby
126
140
  email:
127
141
  - james@bugsnag.com
@@ -129,69 +143,97 @@ executables: []
129
143
  extensions: []
130
144
  extra_rdoc_files: []
131
145
  files:
132
- - .gitignore
133
- - .rspec
134
- - .travis.yml
135
- - .yardopts
146
+ - ".buildkite/pipeline.yml"
147
+ - ".github/ISSUE_TEMPLATE/A.md"
148
+ - ".github/ISSUE_TEMPLATE/bug_report.md"
149
+ - ".github/ISSUE_TEMPLATE/feature_request.md"
150
+ - ".github/PULL_REQUEST_TEMPLATE.md"
151
+ - ".github/support.md"
152
+ - ".github/workflows/tests.yml"
153
+ - ".gitignore"
154
+ - ".rspec"
155
+ - ".rubocop.yml"
156
+ - ".rubocop_todo.yml"
157
+ - ".yardopts"
136
158
  - CHANGELOG.md
159
+ - CONTRIBUTING.md
137
160
  - Gemfile
138
161
  - LICENSE.txt
139
162
  - README.md
140
163
  - Rakefile
141
164
  - bugsnag-api.gemspec
165
+ - config/.gitignore
166
+ - docker-compose.yml
167
+ - dockerfiles/Dockerfile.audit
142
168
  - lib/bugsnag/api.rb
143
169
  - lib/bugsnag/api/client.rb
144
- - lib/bugsnag/api/client/accounts.rb
170
+ - lib/bugsnag/api/client/collaborators.rb
145
171
  - lib/bugsnag/api/client/comments.rb
172
+ - lib/bugsnag/api/client/currentuser.rb
146
173
  - lib/bugsnag/api/client/errors.rb
174
+ - lib/bugsnag/api/client/eventfields.rb
147
175
  - lib/bugsnag/api/client/events.rb
176
+ - lib/bugsnag/api/client/organizations.rb
177
+ - lib/bugsnag/api/client/pivots.rb
148
178
  - lib/bugsnag/api/client/projects.rb
149
- - lib/bugsnag/api/client/users.rb
179
+ - lib/bugsnag/api/client/trends.rb
150
180
  - lib/bugsnag/api/configuration.rb
151
181
  - lib/bugsnag/api/error.rb
152
182
  - lib/bugsnag/api/response/raise_error.rb
153
183
  - lib/bugsnag/api/version.rb
154
- - spec/bugsnag/api/client/accounts_spec.rb
184
+ - scripts/license_finder.sh
185
+ - spec/bugsnag/api/client/collaborators_spec.rb
155
186
  - spec/bugsnag/api/client/comments_spec.rb
187
+ - spec/bugsnag/api/client/currentuser_spec.rb
156
188
  - spec/bugsnag/api/client/errors_spec.rb
189
+ - spec/bugsnag/api/client/eventfields_spec.rb
157
190
  - spec/bugsnag/api/client/events_spec.rb
191
+ - spec/bugsnag/api/client/organizations_spec.rb
192
+ - spec/bugsnag/api/client/pivots_spec.rb
158
193
  - spec/bugsnag/api/client/projects_spec.rb
159
- - spec/bugsnag/api/client/users_spec.rb
194
+ - spec/bugsnag/api/client/trends_spec.rb
160
195
  - spec/bugsnag/api/client_spec.rb
161
196
  - spec/bugsnag/api_spec.rb
162
197
  - spec/cassettes/Bugsnag_Api_Client/_get/handles_query_params.yml
163
198
  - spec/cassettes/Bugsnag_Api_Client/_last_response/caches_the_last_agent_response.yml
164
- - spec/cassettes/Bugsnag_Api_Client_Accounts/_account/returns_the_requested_account.yml
165
- - spec/cassettes/Bugsnag_Api_Client_Accounts/_account/when_using_account_credentials/returns_the_account.yml
166
- - spec/cassettes/Bugsnag_Api_Client_Accounts/_accounts/returns_all_accounts.yml
167
- - spec/cassettes/Bugsnag_Api_Client_Comments/_comments/returns_all_comments_on_an_error.yml
168
- - spec/cassettes/Bugsnag_Api_Client_Comments/_create_comment/created_a_comment.yml
169
- - spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_comment/returns_a_comment.yml
170
- - spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_delete_comment/deletes_an_existing_comment.yml
171
- - spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_update_comment/updates_an_existing_comment.yml
172
- - spec/cassettes/Bugsnag_Api_Client_Errors/_errors/returns_all_errors_on_an_project.yml
173
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_error/returns_an_error.yml
174
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_reopen_error/reopens_the_error.yml
175
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_resolve_error/resolves_the_error.yml
176
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_update_error/updates_the_error.yml
177
- - spec/cassettes/Bugsnag_Api_Client_Events/_error_events/returns_all_events_on_an_error.yml
178
- - spec/cassettes/Bugsnag_Api_Client_Events/_project_events/returns_all_events_on_a_project.yml
179
- - spec/cassettes/Bugsnag_Api_Client_Events/with_event/_event/returns_an_event.yml
180
- - spec/cassettes/Bugsnag_Api_Client_Projects/_account_projects/returns_all_projects_on_an_account.yml
181
- - spec/cassettes/Bugsnag_Api_Client_Projects/_account_projects/when_using_account_credentials/returns_all_projects.yml
182
- - spec/cassettes/Bugsnag_Api_Client_Projects/_create_project/creates_a_project_on_an_account.yml
183
- - spec/cassettes/Bugsnag_Api_Client_Projects/_user_projects/returns_all_projects_for_a_user.yml
184
- - spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_delete_project/deletes_an_existing_project.yml
185
- - spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_project/returns_a_project.yml
186
- - spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_update_project/updates_an_existing_project.yml
187
- - spec/cassettes/Bugsnag_Api_Client_Users/_account_users/returns_all_users_on_an_account.yml
188
- - spec/cassettes/Bugsnag_Api_Client_Users/_account_users/when_using_account_credentials/returns_all_users.yml
189
- - spec/cassettes/Bugsnag_Api_Client_Users/_invite_user/invites_a_user_to_an_account.yml
190
- - spec/cassettes/Bugsnag_Api_Client_Users/_project_users/returns_all_users_for_a_project.yml
191
- - spec/cassettes/Bugsnag_Api_Client_Users/_user/returns_a_user.yml
192
- - spec/cassettes/Bugsnag_Api_Client_Users/_user/when_using_user_credentials/returns_the_authed_user.yml
193
- - spec/cassettes/Bugsnag_Api_Client_Users/with_user/_remove_user/removes_a_user_from_an_account.yml
194
- - spec/cassettes/Bugsnag_Api_Client_Users/with_user/_update_user_permissions/updates_a_users_permissions.yml
199
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/_invitecollaborator/creates_and_returns_a_collaborator.yml
200
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/_invitecollaborator/invites_multiple_collaborators.yml
201
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborator/returns_a_collaborator.yml
202
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/returns_a_list_of_all_organization_collaborators.yml
203
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/returns_a_list_of_all_project_collaborators.yml
204
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/throws_an_argument_error_if_neither_org_id_or_project_id_are_provided.yml
205
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_delete_collaborator/deletes_a_collaborator.yml
206
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_update_collaborator_permissions/updates_and_returns_the_collaborator.yml
207
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_view_collaborator_projects/returns_a_list_of_projects_belonging_to_the_collaborator.yml
208
+ - spec/cassettes/Bugsnag_Api_Client_Comments/_create_comment/creates_a_comment_on_the_error.yml
209
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_comment/retrieves_the_comment_specified.yml
210
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_comments/retrieves_all_comments_on_an_error.yml
211
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_delete_comment/deletes_the_comment_and_returns_true.yml
212
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_update_comment/updates_the_message_on_a_comment.yml
213
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_organizations/when_using_auth_token/returns_the_organization_the_auth_token_belongs_to.yml
214
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_organizations/when_using_user_credentials/returns_users_organizations.yml
215
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_projects/when_using_auth_token/lists_current_user_s_projects_in_the_organization.yml
216
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_projects/when_using_user_credentials/lists_current_user_s_projects_in_the_organization.yml
217
+ - spec/cassettes/Bugsnag_Api_Client_Errors/_error/returns_a_single_error.yml
218
+ - spec/cassettes/Bugsnag_Api_Client_Errors/_errors/returns_errors_on_the_project.yml
219
+ - spec/cassettes/Bugsnag_Api_Client_Errors/_update_errors/updates_and_returns_the_updated_errors.yml
220
+ - spec/cassettes/Bugsnag_Api_Client_Events/_error_events/lists_all_error_events.yml
221
+ - spec/cassettes/Bugsnag_Api_Client_Events/_event/returns_the_specified_event.yml
222
+ - spec/cassettes/Bugsnag_Api_Client_Events/_events/returns_the_a_list_of_project_errors.yml
223
+ - spec/cassettes/Bugsnag_Api_Client_Events/_latest_event/returns_the_last_event_on_an_error.yml
224
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/_create_organization/creates_a_new_organization.yml
225
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_delete_organization/deletes_the_organization.yml
226
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_organization/returns_the_requested_organization.yml
227
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_update_organization/updates_and_returns_the_organization.yml
228
+ - spec/cassettes/Bugsnag_Api_Client_Projects/_create_project/creates_a_new_project.yml
229
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_delete_project/deletes_the_project.yml
230
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_project/returns_the_requested_project.yml
231
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_regenerate_api_key/removes_the_current_api_key_and_replaces_it_with_a_new_api_key.yml
232
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_update_project/updates_and_returns_the_project.yml
233
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_buckets/returns_a_list_of_error_trends_in_bucket_form.yml
234
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_buckets/returns_a_list_of_project_trends_in_bucket_form.yml
235
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_resolution/returns_a_list_of_project_trends_in_resolution_form.yml
236
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_resolution/returns_a_list_of_trends_in_resolution_form.yml
195
237
  - spec/spec_helper.rb
196
238
  homepage: https://github.com/bugsnag/bugsnag-api-ruby
197
239
  licenses:
@@ -203,60 +245,70 @@ require_paths:
203
245
  - lib
204
246
  required_ruby_version: !ruby/object:Gem::Requirement
205
247
  requirements:
206
- - - '>='
248
+ - - ">="
207
249
  - !ruby/object:Gem::Version
208
250
  version: '0'
209
251
  required_rubygems_version: !ruby/object:Gem::Requirement
210
252
  requirements:
211
- - - '>='
253
+ - - ">="
212
254
  - !ruby/object:Gem::Version
213
255
  version: '0'
214
256
  requirements: []
215
- rubyforge_project:
216
- rubygems_version: 2.0.14
257
+ rubygems_version: 3.2.11
217
258
  signing_key:
218
259
  specification_version: 4
219
260
  summary: Bugsnag API toolkit for ruby
220
261
  test_files:
221
- - spec/bugsnag/api/client/accounts_spec.rb
262
+ - spec/bugsnag/api/client/collaborators_spec.rb
222
263
  - spec/bugsnag/api/client/comments_spec.rb
264
+ - spec/bugsnag/api/client/currentuser_spec.rb
223
265
  - spec/bugsnag/api/client/errors_spec.rb
266
+ - spec/bugsnag/api/client/eventfields_spec.rb
224
267
  - spec/bugsnag/api/client/events_spec.rb
268
+ - spec/bugsnag/api/client/organizations_spec.rb
269
+ - spec/bugsnag/api/client/pivots_spec.rb
225
270
  - spec/bugsnag/api/client/projects_spec.rb
226
- - spec/bugsnag/api/client/users_spec.rb
271
+ - spec/bugsnag/api/client/trends_spec.rb
227
272
  - spec/bugsnag/api/client_spec.rb
228
273
  - spec/bugsnag/api_spec.rb
229
274
  - spec/cassettes/Bugsnag_Api_Client/_get/handles_query_params.yml
230
275
  - spec/cassettes/Bugsnag_Api_Client/_last_response/caches_the_last_agent_response.yml
231
- - spec/cassettes/Bugsnag_Api_Client_Accounts/_account/returns_the_requested_account.yml
232
- - spec/cassettes/Bugsnag_Api_Client_Accounts/_account/when_using_account_credentials/returns_the_account.yml
233
- - spec/cassettes/Bugsnag_Api_Client_Accounts/_accounts/returns_all_accounts.yml
234
- - spec/cassettes/Bugsnag_Api_Client_Comments/_comments/returns_all_comments_on_an_error.yml
235
- - spec/cassettes/Bugsnag_Api_Client_Comments/_create_comment/created_a_comment.yml
236
- - spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_comment/returns_a_comment.yml
237
- - spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_delete_comment/deletes_an_existing_comment.yml
238
- - spec/cassettes/Bugsnag_Api_Client_Comments/with_comment/_update_comment/updates_an_existing_comment.yml
239
- - spec/cassettes/Bugsnag_Api_Client_Errors/_errors/returns_all_errors_on_an_project.yml
240
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_error/returns_an_error.yml
241
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_reopen_error/reopens_the_error.yml
242
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_resolve_error/resolves_the_error.yml
243
- - spec/cassettes/Bugsnag_Api_Client_Errors/with_error/_update_error/updates_the_error.yml
244
- - spec/cassettes/Bugsnag_Api_Client_Events/_error_events/returns_all_events_on_an_error.yml
245
- - spec/cassettes/Bugsnag_Api_Client_Events/_project_events/returns_all_events_on_a_project.yml
246
- - spec/cassettes/Bugsnag_Api_Client_Events/with_event/_event/returns_an_event.yml
247
- - spec/cassettes/Bugsnag_Api_Client_Projects/_account_projects/returns_all_projects_on_an_account.yml
248
- - spec/cassettes/Bugsnag_Api_Client_Projects/_account_projects/when_using_account_credentials/returns_all_projects.yml
249
- - spec/cassettes/Bugsnag_Api_Client_Projects/_create_project/creates_a_project_on_an_account.yml
250
- - spec/cassettes/Bugsnag_Api_Client_Projects/_user_projects/returns_all_projects_for_a_user.yml
251
- - spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_delete_project/deletes_an_existing_project.yml
252
- - spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_project/returns_a_project.yml
253
- - spec/cassettes/Bugsnag_Api_Client_Projects/with_project/_update_project/updates_an_existing_project.yml
254
- - spec/cassettes/Bugsnag_Api_Client_Users/_account_users/returns_all_users_on_an_account.yml
255
- - spec/cassettes/Bugsnag_Api_Client_Users/_account_users/when_using_account_credentials/returns_all_users.yml
256
- - spec/cassettes/Bugsnag_Api_Client_Users/_invite_user/invites_a_user_to_an_account.yml
257
- - spec/cassettes/Bugsnag_Api_Client_Users/_project_users/returns_all_users_for_a_project.yml
258
- - spec/cassettes/Bugsnag_Api_Client_Users/_user/returns_a_user.yml
259
- - spec/cassettes/Bugsnag_Api_Client_Users/_user/when_using_user_credentials/returns_the_authed_user.yml
260
- - spec/cassettes/Bugsnag_Api_Client_Users/with_user/_remove_user/removes_a_user_from_an_account.yml
261
- - spec/cassettes/Bugsnag_Api_Client_Users/with_user/_update_user_permissions/updates_a_users_permissions.yml
276
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/_invitecollaborator/creates_and_returns_a_collaborator.yml
277
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/_invitecollaborator/invites_multiple_collaborators.yml
278
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborator/returns_a_collaborator.yml
279
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/returns_a_list_of_all_organization_collaborators.yml
280
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/returns_a_list_of_all_project_collaborators.yml
281
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_collaborators/throws_an_argument_error_if_neither_org_id_or_project_id_are_provided.yml
282
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_delete_collaborator/deletes_a_collaborator.yml
283
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_update_collaborator_permissions/updates_and_returns_the_collaborator.yml
284
+ - spec/cassettes/Bugsnag_Api_Client_Collaborators/given_a_collaborator_exists/_view_collaborator_projects/returns_a_list_of_projects_belonging_to_the_collaborator.yml
285
+ - spec/cassettes/Bugsnag_Api_Client_Comments/_create_comment/creates_a_comment_on_the_error.yml
286
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_comment/retrieves_the_comment_specified.yml
287
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_comments/retrieves_all_comments_on_an_error.yml
288
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_delete_comment/deletes_the_comment_and_returns_true.yml
289
+ - spec/cassettes/Bugsnag_Api_Client_Comments/given_a_comment_has_been_created/_update_comment/updates_the_message_on_a_comment.yml
290
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_organizations/when_using_auth_token/returns_the_organization_the_auth_token_belongs_to.yml
291
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_organizations/when_using_user_credentials/returns_users_organizations.yml
292
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_projects/when_using_auth_token/lists_current_user_s_projects_in_the_organization.yml
293
+ - spec/cassettes/Bugsnag_Api_Client_CurrentUser/_list_projects/when_using_user_credentials/lists_current_user_s_projects_in_the_organization.yml
294
+ - spec/cassettes/Bugsnag_Api_Client_Errors/_error/returns_a_single_error.yml
295
+ - spec/cassettes/Bugsnag_Api_Client_Errors/_errors/returns_errors_on_the_project.yml
296
+ - spec/cassettes/Bugsnag_Api_Client_Errors/_update_errors/updates_and_returns_the_updated_errors.yml
297
+ - spec/cassettes/Bugsnag_Api_Client_Events/_error_events/lists_all_error_events.yml
298
+ - spec/cassettes/Bugsnag_Api_Client_Events/_event/returns_the_specified_event.yml
299
+ - spec/cassettes/Bugsnag_Api_Client_Events/_events/returns_the_a_list_of_project_errors.yml
300
+ - spec/cassettes/Bugsnag_Api_Client_Events/_latest_event/returns_the_last_event_on_an_error.yml
301
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/_create_organization/creates_a_new_organization.yml
302
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_delete_organization/deletes_the_organization.yml
303
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_organization/returns_the_requested_organization.yml
304
+ - spec/cassettes/Bugsnag_Api_Client_Organizations/with_organization/_update_organization/updates_and_returns_the_organization.yml
305
+ - spec/cassettes/Bugsnag_Api_Client_Projects/_create_project/creates_a_new_project.yml
306
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_delete_project/deletes_the_project.yml
307
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_project/returns_the_requested_project.yml
308
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_regenerate_api_key/removes_the_current_api_key_and_replaces_it_with_a_new_api_key.yml
309
+ - spec/cassettes/Bugsnag_Api_Client_Projects/given_a_project/_update_project/updates_and_returns_the_project.yml
310
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_buckets/returns_a_list_of_error_trends_in_bucket_form.yml
311
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_buckets/returns_a_list_of_project_trends_in_bucket_form.yml
312
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_resolution/returns_a_list_of_project_trends_in_resolution_form.yml
313
+ - spec/cassettes/Bugsnag_Api_Client_Trends/_trends_resolution/returns_a_list_of_trends_in_resolution_form.yml
262
314
  - spec/spec_helper.rb