auth0 4.4.0 → 4.17.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (270) hide show
  1. checksums.yaml +4 -4
  2. data/.bundle/config +3 -2
  3. data/.circleci/config.yml +23 -0
  4. data/.env.example +2 -0
  5. data/.github/CODEOWNERS +1 -0
  6. data/.github/ISSUE_TEMPLATE.md +39 -0
  7. data/.github/PULL_REQUEST_TEMPLATE.md +35 -0
  8. data/.github/stale.yml +20 -0
  9. data/.gitignore +0 -1
  10. data/.rubocop.yml +2 -0
  11. data/CHANGELOG.md +255 -19
  12. data/CODE_OF_CONDUCT.md +3 -0
  13. data/DEPLOYMENT.md +56 -9
  14. data/Gemfile +10 -2
  15. data/Gemfile.lock +228 -0
  16. data/README.md +189 -39
  17. data/Rakefile +4 -1
  18. data/auth0.gemspec +7 -6
  19. data/codecov.yml +22 -0
  20. data/deploy_documentation.sh +1 -1
  21. data/lib/auth0/algorithm.rb +5 -0
  22. data/lib/auth0/api/authentication_endpoints.rb +405 -194
  23. data/lib/auth0/api/v1/clients.rb +12 -2
  24. data/lib/auth0/api/v1/connections.rb +15 -0
  25. data/lib/auth0/api/v1/logs.rb +9 -0
  26. data/lib/auth0/api/v1/rules.rb +12 -0
  27. data/lib/auth0/api/v1/users.rb +63 -0
  28. data/lib/auth0/api/v2/anomaly.rb +36 -0
  29. data/lib/auth0/api/v2/client_grants.rb +14 -5
  30. data/lib/auth0/api/v2/clients.rb +9 -6
  31. data/lib/auth0/api/v2/connections.rb +16 -7
  32. data/lib/auth0/api/v2/device_credentials.rb +5 -4
  33. data/lib/auth0/api/v2/guardian.rb +142 -0
  34. data/lib/auth0/api/v2/jobs.rb +75 -13
  35. data/lib/auth0/api/v2/log_streams.rb +78 -0
  36. data/lib/auth0/api/v2/logs.rb +11 -11
  37. data/lib/auth0/api/v2/prompts.rb +70 -0
  38. data/lib/auth0/api/v2/resource_servers.rb +32 -8
  39. data/lib/auth0/api/v2/roles.rb +172 -0
  40. data/lib/auth0/api/v2/rules.rb +6 -2
  41. data/lib/auth0/api/v2/tickets.rb +43 -8
  42. data/lib/auth0/api/v2/users.rb +151 -25
  43. data/lib/auth0/api/v2/users_by_email.rb +3 -2
  44. data/lib/auth0/api/v2.rb +10 -0
  45. data/lib/auth0/client.rb +1 -1
  46. data/lib/auth0/exception.rb +35 -7
  47. data/lib/auth0/mixins/access_token_struct.rb +20 -0
  48. data/lib/auth0/mixins/api_token_struct.rb +10 -0
  49. data/lib/auth0/mixins/headers.rb +35 -0
  50. data/lib/auth0/mixins/httpproxy.rb +33 -13
  51. data/lib/auth0/mixins/initializer.rb +9 -21
  52. data/lib/auth0/mixins/permission_struct.rb +3 -0
  53. data/lib/auth0/mixins/validation.rb +332 -0
  54. data/lib/auth0/mixins.rb +9 -0
  55. data/lib/auth0/version.rb +1 -1
  56. data/lib/auth0.rb +1 -0
  57. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_change_password/should_trigger_a_password_reset.yml +63 -0
  58. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_incorrect_email.yml +54 -0
  59. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_incorrect_password.yml +54 -0
  60. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_fail_with_an_invalid_audience.yml +55 -0
  61. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_login_successfully_with_a_custom_audience.yml +117 -0
  62. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_login_with_resource_owner/should_login_successfully_with_a_default_scope.yml +119 -0
  63. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_saml_metadata/should_retrieve_SAML_metadata.yml +57 -0
  64. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_userinfo/should_fail_as_not_authorized.yml +55 -0
  65. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_userinfo/should_return_the_userinfo.yml +118 -0
  66. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/_wsfed_metadata/should_retrieve_WSFED_metadata.yml +55 -0
  67. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/create_test_user.yml +58 -0
  68. data/spec/fixtures/vcr_cassettes/Auth0_Api_AuthenticationEndpoints/delete_test_user.yml +54 -0
  69. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_check_if_ip_is_blocked/should_return_200_response_code.yml +65 -0
  70. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Anomaly/_remove_ip_block/should_remove_an_IP_successfully.yml +60 -0
  71. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_add_token_to_blacklist/should_add_a_token_to_the_blacklist.yml +56 -0
  72. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Blacklists/_blacklisted_tokens/should_get_the_added_token_from_the_blacklist.yml +59 -0
  73. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_at_least_1_result.yml +62 -0
  74. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_first_page_of_one_result.yml +66 -0
  75. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_client_grants/should_return_the_test_client_grant.yml +62 -0
  76. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_delete_client_grant/should_delete_the_test_client_grant.yml +54 -0
  77. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/_patch_client_grant/should_update_the_test_client_grant.yml +64 -0
  78. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client.yml +118 -0
  79. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/create_test_client_grant.yml +64 -0
  80. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client.yml +54 -0
  81. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ClientGrants/delete_test_client_grant.yml +54 -0
  82. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_exclude_and_include_fields_properly.yml +91 -0
  83. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/_filters/should_include_the_specified_fields.yml +63 -0
  84. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_client/should_get_the_test_client.yml +92 -0
  85. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_fields_not_specified.yml +60 -0
  86. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_exclude_the_specified_fields.yml +132 -0
  87. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_include_the_specified_fields.yml +63 -0
  88. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/_filters/should_paginate_results.yml +65 -0
  89. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_clients/should_get_at_least_one_client.yml +132 -0
  90. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_delete_client/should_delete_the_test_client_without_an_error.yml +54 -0
  91. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/_patch_client/should_update_the_client_with_the_correct_attributes.yml +94 -0
  92. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Clients/create_test_client.yml +118 -0
  93. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_exclude_the_fields_indicated.yml +63 -0
  94. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/_filters/should_include_the_fields_indicated.yml +61 -0
  95. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connection/should_find_the_correct_connection.yml +63 -0
  96. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_include_previously-created_connection_when_filtered.yml +59 -0
  97. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_exclude_the_fields_indicated_from_filtered_results.yml +59 -0
  98. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/_filters/should_should_include_the_fields_indicated_from_filtered_results.yml +59 -0
  99. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_include_the_previously_created_connection.yml +59 -0
  100. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_connections/should_not_be_empty.yml +59 -0
  101. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection/should_delete_the_connection.yml +54 -0
  102. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_delete_connection_user/should_delete_the_user_created.yml +110 -0
  103. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/_update_connection/should_update_the_connection.yml +66 -0
  104. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_connection.yml +65 -0
  105. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Connections/create_test_user.yml +68 -0
  106. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_delete_device_credential/should_delete_the_test_credential_without_an_error.yml +54 -0
  107. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/_filter_by_type/should_exclude_the_test_credential.yml +59 -0
  108. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_have_at_least_1_entry.yml +62 -0
  109. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/_device_credentials/should_include_the_test_credential.yml +62 -0
  110. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_credential.yml +62 -0
  111. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/create_test_user.yml +68 -0
  112. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_credential.yml +54 -0
  113. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_DeviceCredentials/delete_test_user.yml +54 -0
  114. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_configure_provider/should_configure_a_new_email_provider.yml +63 -0
  115. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_delete_the_existing_email_provider_without_an_error.yml +54 -0
  116. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_delete_provider/should_throw_an_error_trying_to_get_the_email_provider.yml +51 -0
  117. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_with_specific_fields.yml +60 -0
  118. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/_filters/should_get_the_existing_email_provider_without_specific_fields.yml +61 -0
  119. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_get_provider/should_get_the_existing_email_provider.yml +61 -0
  120. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/_update_provider/should_update_the_existing_email_provider.yml +63 -0
  121. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Emails/delete_existing_provider.yml +54 -0
  122. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_export_users_and_get_job/should_create_an_export_users_job_successfully.yml +61 -0
  123. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_export_users_and_get_job/should_get_the_export_users_job.yml +117 -0
  124. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_import_users_and_get_job/should_create_an_import_users_job_successfully.yml +60 -0
  125. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_import_users_and_get_job/should_get_the_import_users_job.yml +116 -0
  126. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_create_a_new_verification_email_job.yml +119 -0
  127. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_get_the_completed_verification_email.yml +175 -0
  128. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/_send_verification_email_and_get_job/should_reject_an_invalid_client_id.yml +109 -0
  129. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/delete_imported_user.yml +110 -0
  130. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Jobs/search_for_connection_id.yml +59 -0
  131. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_match_the_created_log_entry.yml +265 -0
  132. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_log/should_not_be_empty.yml +265 -0
  133. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_fields_not_specified.yml +61 -0
  134. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_exclude_the_specified_fields.yml +75 -0
  135. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_have_one_log_entry.yml +76 -0
  136. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_filters/should_include_the_specified_fields.yml +62 -0
  137. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/_logs/_from/should_take_one_log_entry.yml +258 -0
  138. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/create_test_user.yml +68 -0
  139. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_disabled_rule.yml +54 -0
  140. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_enabled_rule.yml +54 -0
  141. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Logs/delete_test_user.yml +54 -0
  142. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_delete_resource_server/should_delete_the_test_server_without_an_error.yml +54 -0
  143. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_patch_resource_server/should_update_the_resource_server_with_the_correct_attributes.yml +61 -0
  144. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_server/should_get_the_test_server.yml +59 -0
  145. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_get_the_test_server.yml +59 -0
  146. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_at_least_1_result.yml +59 -0
  147. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/_resource_servers/should_return_the_first_page_of_one_result.yml +64 -0
  148. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/create_test_server.yml +61 -0
  149. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_ResourceServers/delete_test_server.yml +54 -0
  150. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_permissions/should_add_a_Permission_to_the_Role_successfully.yml +69 -0
  151. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_add_role_users/should_add_a_User_to_the_Role_successfully.yml +69 -0
  152. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_delete_role/should_delete_the_Role_successfully.yml +62 -0
  153. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role/should_get_the_Role_successfully.yml +67 -0
  154. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_exactly_1_Permission.yml +67 -0
  155. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_permissions/should_get_the_added_Permission_from_the_Role_successfully.yml +67 -0
  156. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_exactly_1_User.yml +67 -0
  157. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_role_users/should_get_the_added_User_from_the_Role_successfully.yml +67 -0
  158. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_get_roles/should_get_the_Role_successfully.yml +67 -0
  159. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_remove_role_permissions/should_remove_a_Permission_from_the_Role_successfully.yml +64 -0
  160. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/_update_role/should_update_the_Role_successfully.yml +69 -0
  161. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_api.yml +69 -0
  162. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_role.yml +69 -0
  163. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/create_test_user.yml +69 -0
  164. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_api.yml +62 -0
  165. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Roles/delete_test_user.yml +62 -0
  166. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_disabled_rule_without_an_error.yml +54 -0
  167. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_delete_rule/should_delete_the_test_enabled_rule_without_an_error.yml +54 -0
  168. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_fields_not_specified.yml +62 -0
  169. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_exclude_the_specified_fields.yml +62 -0
  170. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/_filters/should_include_the_specified_fields.yml +61 -0
  171. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rule/should_get_a_specific_rule.yml +62 -0
  172. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_exclude_fields_not_specified.yml +60 -0
  173. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_include_the_specified_fields.yml +61 -0
  174. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_disabled_rule.yml +63 -0
  175. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_at_least_1_enabled_rule.yml +62 -0
  176. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/_filters/should_return_paginated_results.yml +128 -0
  177. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_rules/should_return_at_least_1_rule.yml +64 -0
  178. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/_update_rule/should_update_the_disabled_rule_to_be_enabled.yml +64 -0
  179. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_disabled_rule.yml +65 -0
  180. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Rules/create_test_enabled_rule.yml +65 -0
  181. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_active_users/should_have_at_least_one_active_user.yml +59 -0
  182. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Stats/_daily_stats/should_have_at_least_one_stats_entry_for_the_timeframe.yml +63 -0
  183. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings/should_get_the_tenant_settings.yml +95 -0
  184. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_exclude_a_field_not_requested.yml +61 -0
  185. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_get_tenant_settings_with_specific_fields/should_include_the_field_requested.yml +61 -0
  186. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_revert_the_tenant_name.yml +96 -0
  187. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tenants/_update_tenant_settings/should_update_the_tenant_settings_with_a_new_tenant_name.yml +96 -0
  188. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_email_verification/should_create_an_email_verification_ticket.yml +63 -0
  189. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/_post_password_change/should_create_a_password_change_ticket.yml +63 -0
  190. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/create_test_user.yml +68 -0
  191. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Tickets/delete_test_user.yml +54 -0
  192. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_permissions/should_add_a_Permissions_for_a_User_successfully.yml +67 -0
  193. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_add_user_roles/should_add_a_Role_to_a_User_successfully.yml +62 -0
  194. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_User_successfully.yml +60 -0
  195. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user/should_delete_the_secondary_User_successfully.yml +60 -0
  196. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_delete_user_provider/should_attempt_to_delete_the_MFA_provider_for_the_User.yml +60 -0
  197. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_enrollments/should_get_Enrollments_for_a_User_successfully.yml +65 -0
  198. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_exactly_1_Permission_for_a_User_successfully.yml +65 -0
  199. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_permissions/should_get_the_correct_Permission_for_a_User_successfully.yml +65 -0
  200. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_get_user_roles/should_get_Roles_for_a_User_successfully.yml +65 -0
  201. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_invalidate_browsers/should_invalidate_MFA_browsers_for_the_User_successfully.yml +62 -0
  202. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_link_user_account/should_link_two_Users_successfully.yml +67 -0
  203. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_patch_user/should_patch_the_User_successfully.yml +68 -0
  204. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_permissions/should_remove_a_Permission_from_a_User_successfully.yml +62 -0
  205. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_remove_user_roles/should_remove_a_Role_from_a_User_successfully.yml +62 -0
  206. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_unlink_user_account/should_unlink_two_Users_successfully.yml +65 -0
  207. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_fields_not_indicated.yml +65 -0
  208. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_exclude_the_fields_indicated.yml +65 -0
  209. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/_filters/should_include_the_fields_indicated.yml +65 -0
  210. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user/should_retrieve_the_created_user.yml +65 -0
  211. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_user_logs/should_get_Logs_for_a_User_successfully.yml +69 -0
  212. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v2_search_engine_query.yml +65 -0
  213. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/is_expected_to_find_a_user_with_a_v3_search_engine_query.yml +65 -0
  214. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_exclude_the_indicated_fields_when_paginated.yml +65 -0
  215. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_include_the_indicated_fields_when_paginated.yml +65 -0
  216. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_not_include_other_fields_when_paginated.yml +65 -0
  217. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/_filters/should_return_the_correct_number_of_results_when_paginated.yml +65 -0
  218. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/_users/should_have_at_least_one_user.yml +65 -0
  219. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_secondary_test_user.yml +67 -0
  220. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_api.yml +67 -0
  221. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_role.yml +67 -0
  222. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/create_test_user.yml +67 -0
  223. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_api.yml +60 -0
  224. data/spec/fixtures/vcr_cassettes/Auth0_Api_V2_Users/delete_test_role.yml +60 -0
  225. data/spec/integration/lib/auth0/api/api_authentication_spec.rb +96 -54
  226. data/spec/integration/lib/auth0/api/v2/api_anomaly_spec.rb +17 -0
  227. data/spec/integration/lib/auth0/api/v2/api_blacklist_spec.rb +18 -5
  228. data/spec/integration/lib/auth0/api/v2/api_client_grants_spec.rb +46 -33
  229. data/spec/integration/lib/auth0/api/v2/api_clients_spec.rb +115 -61
  230. data/spec/integration/lib/auth0/api/v2/api_connections_spec.rb +117 -103
  231. data/spec/integration/lib/auth0/api/v2/api_device_credentials_spec.rb +101 -58
  232. data/spec/integration/lib/auth0/api/v2/api_email_spec.rb +72 -77
  233. data/spec/integration/lib/auth0/api/v2/api_jobs_spec.rb +113 -60
  234. data/spec/integration/lib/auth0/api/v2/api_logs_spec.rb +46 -38
  235. data/spec/integration/lib/auth0/api/v2/api_resource_servers_spec.rb +110 -40
  236. data/spec/integration/lib/auth0/api/v2/api_roles_spec.rb +145 -0
  237. data/spec/integration/lib/auth0/api/v2/api_rules_spec.rb +119 -62
  238. data/spec/integration/lib/auth0/api/v2/api_stats_spec.rb +11 -14
  239. data/spec/integration/lib/auth0/api/v2/api_tenants_spec.rb +40 -34
  240. data/spec/integration/lib/auth0/api/v2/api_tickets_spec.rb +42 -28
  241. data/spec/integration/lib/auth0/api/v2/api_users_spec.rb +252 -120
  242. data/spec/integration/lib/auth0/auth0_client_spec.rb +32 -26
  243. data/spec/lib/auth0/api/authentication_endpoints_spec.rb +425 -70
  244. data/spec/lib/auth0/api/v2/anomaly_spec.rb +26 -0
  245. data/spec/lib/auth0/api/v2/client_grants_spec.rb +34 -2
  246. data/spec/lib/auth0/api/v2/clients_spec.rb +50 -5
  247. data/spec/lib/auth0/api/v2/connections_spec.rb +45 -1
  248. data/spec/lib/auth0/api/v2/guardian_spec.rb +154 -0
  249. data/spec/lib/auth0/api/v2/jobs_spec.rb +98 -6
  250. data/spec/lib/auth0/api/v2/log_streams_spec.rb +84 -0
  251. data/spec/lib/auth0/api/v2/prompts_spec.rb +88 -0
  252. data/spec/lib/auth0/api/v2/resource_servers_spec.rb +23 -0
  253. data/spec/lib/auth0/api/v2/roles_spec.rb +362 -0
  254. data/spec/lib/auth0/api/v2/rules_spec.rb +23 -1
  255. data/spec/lib/auth0/api/v2/tickets_spec.rb +40 -5
  256. data/spec/lib/auth0/api/v2/users_spec.rb +435 -60
  257. data/spec/lib/auth0/client_spec.rb +126 -18
  258. data/spec/lib/auth0/mixins/httpproxy_spec.rb +83 -4
  259. data/spec/lib/auth0/mixins/initializer_spec.rb +1 -0
  260. data/spec/lib/auth0/mixins/validation_spec.rb +466 -0
  261. data/spec/spec_helper.rb +50 -12
  262. data/spec/support/credentials.rb +14 -7
  263. data/spec/support/dummy_class.rb +7 -3
  264. data/spec/support/dummy_class_for_proxy.rb +1 -0
  265. data/spec/support/stub_response.rb +1 -1
  266. metadata +471 -18
  267. data/.travis.yml +0 -18
  268. data/build_travis.sh +0 -7
  269. data/spec/spec_helper_full.rb +0 -45
  270. data/spec/spec_helper_unit.rb +0 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 50bf71ae1695273ad9f86de42239cff42c681c8c0841fde4f2002c1e045940b0
4
- data.tar.gz: 4956b4307c7c2d93fd1d8e955c2f77fc1c6fdd57232674c1dc50a1d95507097b
3
+ metadata.gz: 48e61f0781f7f7414219fe6f2aa406fa5f11df18707e04ef242a062c4775f6f0
4
+ data.tar.gz: 5d0f5d8fd83e4f77624394c8fd968a2b167f3f2bdeef3f7b60012df3ec28e8e4
5
5
  SHA512:
6
- metadata.gz: 7cdbe3de507568e75af632efdd47c005c71425f0c884fb66863d63325ac5f4d162e0d129d648c306ad5747bb6d6634819431cd566420e06b87611b384f91b632
7
- data.tar.gz: cc4d1e11073b11d8412615bf57586e3f173d649ae48f47b212104de5aaca6b294d86f06eeb3bbb7f13c3016a3ef4a2f57d5e6b87b08db776e730e36e9eb1a566
6
+ metadata.gz: '055290cd6f89e5da0e8316bb805268d84d29108abff3c0afe133a286de5718cf9d1d394873a64a08b456b6fa8c24246347010eaf0e7d1ec6d1f7856165255b58'
7
+ data.tar.gz: ab47cf7f1728afcd517d8d59b01e06b8857c8a7f5b2e4028bb931d4939548ec565b0385894eb05320e0419955dc43b2203024e3ba090a8459cc1d5b7eca978a9
data/.bundle/config CHANGED
@@ -1,3 +1,4 @@
1
1
  ---
2
- BUNDLE_JOBS: '4'
3
- BUNDLE_BIN: bin
2
+ BUNDLE_JOBS: "3"
3
+ BUNDLE_BIN: "bin"
4
+ BUNDLE_RETRY: "3"
@@ -0,0 +1,23 @@
1
+ version: 2.1
2
+ jobs:
3
+ run-tests:
4
+ docker:
5
+ - image: circleci/ruby:2.5.7-buster
6
+ steps:
7
+ - checkout
8
+ - restore_cache:
9
+ keys:
10
+ - gems-v2-{{ checksum "Gemfile.lock" }}
11
+ - gems-v2-
12
+ - run: bundle check || bundle install
13
+ - save_cache:
14
+ key: gems-v2--{{ checksum "Gemfile.lock" }}
15
+ paths:
16
+ - vendor/bundle
17
+ # Must define DOMAIN, CLIENT_ID, CLIENT_SECRET and MASTER_JWT env
18
+ - run: bundle exec rake test
19
+
20
+ workflows:
21
+ tests:
22
+ jobs:
23
+ - run-tests
data/.env.example ADDED
@@ -0,0 +1,2 @@
1
+ DOMAIN=
2
+ CLIENT_ID=
@@ -0,0 +1 @@
1
+ * @auth0/dx-sdks-approver
@@ -0,0 +1,39 @@
1
+ In order to efficiently and accurately address your issue or feature request, please read through the template below and answer all relevant questions. Your additional work here is greatly appreciated and will help us respond as quickly as possible. Please delete any sections or questions below that do not pertain to this request.
2
+
3
+ For general support or usage questions, please use the [Auth0 Community](https://community.auth0.com/) or [Auth0 Support](https://support.auth0.com.).
4
+
5
+ ### Description
6
+
7
+ Description of the bug or feature request and why it's a problem. Consider including:
8
+
9
+ - The use case or overall problem you're trying to solve
10
+ - Information about when the problem started
11
+
12
+ ### Prerequisites
13
+
14
+ * [ ] I have read the [Auth0 general contribution guidelines](https://github.com/auth0/open-source-template/blob/master/GENERAL-CONTRIBUTING.md)
15
+ * [ ] I have read the [Auth0 Code of Conduct](https://github.com/auth0/open-source-template/blob/master/CODE-OF-CONDUCT.md)
16
+ * [ ] Did you check the documentation ([repo README](https://github.com/auth0/ruby-auth0/blob/master/README.md) or [Quickstart](https://auth0.com/docs/quickstart/backend/rails))?
17
+ * [ ] Did you check the [Auth0 Community](https://community.auth0.com/)?
18
+ * [ ] Are you reporting this to the correct repository? See also the [OmniAuth-Auth0 strategy](https://github.com/auth0/omniauth-auth0) for logging in with Rails.
19
+ * [ ] Are there any related or duplicate [Issues](https://github.com/auth0/ruby-auth0/issues) or [PRs](https://github.com/auth0/ruby-auth0/pulls) for this issue?
20
+
21
+ ### Environment
22
+
23
+ Please provide the following:
24
+
25
+ * Ruby Auth0 version:
26
+ * Ruby version:
27
+ * Rails version (if applicable):
28
+ * Browser version (if applicable):
29
+ * Additional gems that might be affecting your instance
30
+
31
+ ### Reproduction
32
+
33
+ Detail the steps taken to reproduce this error and note if this issue can be reproduced consistently or if it is intermittent.
34
+
35
+ Please include:
36
+
37
+ - Log files (redact/remove sensitive information)
38
+ - Application settings (redact/remove sensitive information)
39
+ - Screenshots, if helpful
@@ -0,0 +1,35 @@
1
+ ### Changes
2
+
3
+ Please describe both what is changing and why this is important. Include:
4
+
5
+ - Endpoints added, deleted, deprecated, or changed
6
+ - Classes and methods added, deleted, deprecated, or changed
7
+ - Screenshots of new or changed UI, if applicable
8
+ - A summary of usage if this is a new feature or change to a public API (this should also be added to relevant documentation once released)
9
+
10
+ ### References
11
+
12
+ Please include relevant links supporting this change such as a:
13
+
14
+ - support ticket
15
+ - community post
16
+ - StackOverflow post
17
+ - support forum thread
18
+
19
+ Please note any links that are not publicly accessible.
20
+
21
+ ### Testing
22
+
23
+ Please describe how this can be tested by reviewers. Be specific about anything not tested and reasons why. If this library has unit and/or integration testing, tests should be added for new functionality and existing tests should complete without errors.
24
+
25
+ * [ ] This change adds unit test coverage
26
+ * [ ] This change adds integration test coverage
27
+ * [ ] This change has been tested on the latest version of Ruby
28
+
29
+ ### Checklist
30
+
31
+ * [ ] I have read the [Auth0 general contribution guidelines](https://github.com/auth0/open-source-template/blob/master/GENERAL-CONTRIBUTING.md)
32
+ * [ ] I have read the [Auth0 Code of Conduct](https://github.com/auth0/open-source-template/blob/master/CODE-OF-CONDUCT.md)
33
+ * [ ] All existing and new tests complete without errors
34
+ * [ ] Rubocop passes on all added/modified files
35
+ * [ ] All active GitHub checks have passed
data/.github/stale.yml ADDED
@@ -0,0 +1,20 @@
1
+ # Configuration for probot-stale - https://github.com/probot/stale
2
+
3
+ # Number of days of inactivity before an Issue or Pull Request becomes stale
4
+ daysUntilStale: 90
5
+
6
+ # Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
7
+ daysUntilClose: 7
8
+
9
+ # Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
10
+ exemptLabels: []
11
+
12
+ # Set to true to ignore issues with an assignee (defaults to false)
13
+ exemptAssignees: true
14
+
15
+ # Label to use when marking as stale
16
+ staleLabel: closed:stale
17
+
18
+ # Comment to post when marking as stale. Set to `false` to disable
19
+ markComment: >
20
+ This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you have not received a response for our team (apologies for the delay) and this is still a blocker, please reply with additional information or just a ping. Thank you for your contribution! 🙇‍♂️
data/.gitignore CHANGED
@@ -11,5 +11,4 @@ coverage
11
11
  *.swo
12
12
  spec/auth0.yml
13
13
  .yardoc
14
- Gemfile.lock
15
14
  .env
data/.rubocop.yml CHANGED
@@ -1,4 +1,6 @@
1
1
  inherit_from: .rubocop_todo.yml
2
+ require:
3
+ - rubocop-rails
2
4
  Rails:
3
5
  Enabled: true
4
6
  AllCops:
data/CHANGELOG.md CHANGED
@@ -1,42 +1,278 @@
1
1
  # Change Log
2
2
 
3
- ## [v4.4.0](https://github.com/auth0/ruby-auth0/tree/v4.4.0) (2018-02-19)
4
- [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.2.0...v4.4.0)
3
+ ## [v4.17.1](https://github.com/auth0/ruby-auth0/tree/v4.17.1) (2020-10-21)
4
+
5
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.17.0...v4.17.1)
6
+
7
+ **Fixed**
8
+
9
+ - Addressable dependency [\#247](https://github.com/auth0/ruby-auth0/pull/247) ([davidpatrick](https://github.com/davidpatrick))
10
+
11
+
12
+ ## [v4.17.0](https://github.com/auth0/ruby-auth0/tree/v4.17.0) (2020-10-19)
13
+
14
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.16.0...v4.17.0)
15
+
16
+ **Added**
17
+
18
+ - Add pagination to user permissions [\#241](https://github.com/auth0/ruby-auth0/pull/241) ([davidpatrick](https://github.com/davidpatrick))
19
+
20
+ **Deprecated**
21
+
22
+ - Addressable URI Escape [\#240](https://github.com/auth0/ruby-auth0/pull/240) ([davidpatrick](https://github.com/apps/davidpatrick))
23
+
24
+
25
+ ## [v4.16.0](https://github.com/auth0/ruby-auth0/tree/v4.16.0) (2020-10-02)
26
+
27
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.15.0...v4.16.0)
28
+
29
+ **Added**
30
+
31
+ - New Email Verification Fields [\#237](https://github.com/auth0/ruby-auth0/pull/237) ([davidpatrick](https://github.com/davidpatrick))
32
+
33
+ **Security**
34
+
35
+ - Bump actionview from 6.0.3.2 to 6.0.3.3 [\#236](https://github.com/auth0/ruby-auth0/pull/236) ([dependabot[bot]](https://github.com/apps/dependabot))
36
+
37
+ ## [v4.15.0](https://github.com/auth0/ruby-auth0/tree/v4.15.0) (2020-09-04)
38
+
39
+ **Added**
40
+
41
+ - Add log streaming endpoints [\#233](https://github.com/auth0/ruby-auth0/pull/233) ([davidpatrick](https://github.com/davidpatrick))
42
+
43
+ ## [v4.14.0](https://github.com/auth0/ruby-auth0/tree/v4.14.0) (2020-07-20)
44
+
45
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.13.0...v4.14.0)
46
+
47
+ **Deprecated**
48
+
49
+ - Deprecate mgmt v1 calls [\#230](https://github.com/auth0/ruby-auth0/pull/230) ([davidpatrick](https://github.com/davidpatrick))
50
+
51
+ **Removed**
52
+
53
+ - Remove iat claim value check [\#229](https://github.com/auth0/ruby-auth0/pull/229) ([lbalmaceda](https://github.com/lbalmaceda))
54
+
55
+ **Fixed**
56
+
57
+ - Handle missing reset header [\#228](https://github.com/auth0/ruby-auth0/pull/228) ([Widcket](https://github.com/Widcket))
58
+
59
+ ## [v4.13.0](https://github.com/auth0/ruby-auth0/tree/v4.13.0) (2020-06-18)
60
+
61
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.12.0...v4.13.0)
62
+
63
+ **Added**
64
+
65
+ - Add prompts endpoints [\#205](https://github.com/auth0/ruby-auth0/pull/205) ([unhappychoice](https://github.com/unhappychoice))
66
+
67
+ **Fixed**
68
+
69
+ - Fix missing to_json [\#212](https://github.com/auth0/ruby-auth0/pull/212) ([qortex](https://github.com/qortex))
70
+
71
+ ## [v4.12.0](https://github.com/auth0/ruby-auth0/tree/v4.12.0) (2020-06-10)
72
+
73
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.11.0...v4.12.0)
74
+
75
+ **Added**
76
+
77
+ - Improve OIDC compliance [SDK-987] [\#225](https://github.com/auth0/ruby-auth0/pull/225) ([Widcket](https://github.com/Widcket))
78
+
79
+ **Security**
80
+
81
+ - Bump activesupport from 6.0.3 to 6.0.3.1 [\#221](https://github.com/auth0/ruby-auth0/pull/221) ([dependabot[bot]](https://github.com/apps/dependabot))
82
+ - Bump actionpack from 6.0.3 to 6.0.3.1 [\#220](https://github.com/auth0/ruby-auth0/pull/220) ([dependabot[bot]](https://github.com/apps/dependabot))
83
+
84
+ ## [v4.11.0](https://github.com/auth0/ruby-auth0/tree/v4.11.0) (2020-05-06)
85
+
86
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.10.0...v4.11.0)
5
87
 
6
- Note: If you are using the `login` endpoint, you will need to enable the [Resource Owner Password Grant](https://auth0.com/docs/clients/client-grant-types).
88
+ **Added**
89
+
90
+ - [SDK-1542] Add client secret to Passwordless flow since it is now required [\#217](https://github.com/auth0/ruby-auth0/pull/217) ([stevehobbsdev](https://github.com/stevehobbsdev))
91
+
92
+ ## [v4.10.0](https://github.com/auth0/ruby-auth0/tree/v4.10.0) (2020-04-23)
93
+
94
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.9.0...v4.10.0)
95
+
96
+ **Added**
97
+
98
+ - Added support for name\_filter parameter \[SDK-1607\] [\#214](https://github.com/auth0/ruby-auth0/pull/214) ([Widcket](https://github.com/Widcket))
99
+ - Pass client\_id, audience at Auth0::Api::V2::ClientGrants\#client\_grants [\#209](https://github.com/auth0/ruby-auth0/pull/209) ([hkdnet](https://github.com/hkdnet))
100
+ - Add rubocop-rails [\#200](https://github.com/auth0/ruby-auth0/pull/200) ([tknzk](https://github.com/tknzk))
101
+
102
+ **Security**
103
+
104
+ - Update rack requirement from ~\> 1.6.4 to ~\> 2.1.2 [\#206](https://github.com/auth0/ruby-auth0/pull/206) ([dependabot[bot]](https://github.com/apps/dependabot))
105
+ - Update rake requirement from ~\> 10.4 to ~\> 13.0 [\#207](https://github.com/auth0/ruby-auth0/pull/207) ([dependabot[bot]](https://github.com/apps/dependabot))
106
+ - Update dependencies and CI script [\#210](https://github.com/auth0/ruby-auth0/pull/210) ([lbalmaceda](https://github.com/lbalmaceda))
107
+
108
+ ## [v4.9.0](https://github.com/auth0/ruby-auth0/tree/v4.9.0) (2019-09-25)
109
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.8.0...v4.9.0)
110
+
111
+
112
+ **Closed issues:**
113
+
114
+ - Dot in role name makes description disappear [\#194](https://github.com/auth0/ruby-auth0/issues/194)
115
+ - Missing require Permission [\#192](https://github.com/auth0/ruby-auth0/issues/192)
116
+ - Token required even when not necessary [\#190](https://github.com/auth0/ruby-auth0/issues/190)
117
+
118
+ **Fixed:**
119
+
120
+ - Fix request timeout [\#188](https://github.com/auth0/ruby-auth0/pull/188) ([makoto-matsumoto](https://github.com/makoto-matsumoto))
121
+ - Fix missing Permissions mixin [\#196](https://github.com/auth0/ruby-auth0/pull/196) ([joshcanhelp](https://github.com/joshcanhelp))
122
+
123
+ **Added:**
124
+
125
+ - Add Management API Guardian enrollments endpoint [\#182](https://github.com/auth0/ruby-auth0/pull/182) ([tomgi](https://github.com/tomgi))
126
+
127
+ ## [v4.8.0](https://github.com/auth0/ruby-auth0/tree/v4.8.0) (2019-08-01)
128
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.7.0...v4.8.0)
129
+
130
+ **Closed issues**
131
+ - Not enough information in exception when Rate Limiting is encountered [\#158](https://github.com/auth0/ruby-auth0/issues/158)
132
+
133
+ **Added**
134
+ - Add Management API Anomaly endpoints [\#179](https://github.com/auth0/ruby-auth0/pull/179) ([makoto-matsumoto](https://github.com/makoto-matsumoto))
135
+ - Add parameters for users imports [\#177](https://github.com/auth0/ruby-auth0/pull/177) ([makoto-matsumoto](https://github.com/makoto-matsumoto))
136
+ - Add failed job error details endpoint [\#176](https://github.com/auth0/ruby-auth0/pull/176) ([makoto-matsumoto](https://github.com/makoto-matsumoto))
137
+ - Add Management API Roles endpoints [\#172](https://github.com/auth0/ruby-auth0/pull/172) ([joshcanhelp](https://github.com/joshcanhelp))
138
+ - Expose rate limiting information [\#170](https://github.com/auth0/ruby-auth0/pull/170) ([philomory](https://github.com/philomory))
139
+ - Add missing User Management API endpoints [\#169](https://github.com/auth0/ruby-auth0/pull/169) ([joshcanhelp](https://github.com/joshcanhelp))
140
+ - Add Gemfile.lock file [\#165](https://github.com/auth0/ruby-auth0/pull/165) ([lbalmaceda](https://github.com/lbalmaceda))
141
+
142
+ **Changed**
143
+ - Add Roles and Users endpoints integration tests [\#174](https://github.com/auth0/ruby-auth0/pull/174) ([joshcanhelp](https://github.com/joshcanhelp))
144
+
145
+ **Deprecated**
146
+ - Deprecate Auth0::Api::V2::Users.delete_users [\#181](https://github.com/auth0/ruby-auth0/pull/181) ([joshcanhelp](https://github.com/joshcanhelp))
147
+
148
+ **Removed**
149
+ - Gemspec: Drop EOL'd property rubyforge_project [\#180](https://github.com/auth0/ruby-auth0/pull/180) ([olleolleolle](https://github.com/olleolleolle))
150
+
151
+ **Security**
152
+ - Fix Yard dependency vulnerability [\#184](https://github.com/auth0/ruby-auth0/pull/184) ([joshcanhelp](https://github.com/joshcanhelp))
153
+
154
+ ## [v4.7.0](https://github.com/auth0/ruby-auth0/tree/v4.7.0) (2019-03-19)
155
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.6.0...v4.7.0)
156
+
157
+ **Closed issues**
158
+ - No method to update/patch resource servers [\#156](https://github.com/auth0/ruby-auth0/issues/156)
159
+ - No method to get all resource servers [\#154](https://github.com/auth0/ruby-auth0/issues/154)
160
+
161
+ **Added**
162
+ - Add Client ID to send_verification_email [\#162](https://github.com/auth0/ruby-auth0/pull/162) ([joshcanhelp](https://github.com/joshcanhelp))
163
+ - More password change params [\#159](https://github.com/auth0/ruby-auth0/pull/159) ([nhusher](https://github.com/nhusher))
164
+ - Add patch resource server [\#157](https://github.com/auth0/ruby-auth0/pull/157) ([philomory](https://github.com/philomory))
165
+ - Get all resource servers [\#155](https://github.com/auth0/ruby-auth0/pull/155) ([philomory](https://github.com/philomory))
166
+
167
+ ## [v4.6.0](https://github.com/auth0/ruby-auth0/tree/v4.6.0) (2018-12-17)
168
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.5.0...v4.6.0)
169
+
170
+ **Closed issues**
171
+ - New Release with Client Token work [\#148](https://github.com/auth0/ruby-auth0/issues/148)
172
+ - Unable to initialize Auth0Api [\#147](https://github.com/auth0/ruby-auth0/issues/147)
173
+ - Issues building the documentation [\#135](https://github.com/auth0/ruby-auth0/issues/135)
174
+ - signin with referral token [\#127](https://github.com/auth0/ruby-auth0/issues/127)
175
+ - Some challenges when upgrading to Ruby 2.5.1 [\#122](https://github.com/auth0/ruby-auth0/issues/122)
176
+ - Cannot refresh access token with refresh token. [\#111](https://github.com/auth0/ruby-auth0/issues/111)
177
+ - Incorrect request_params for username-password login [\#109](https://github.com/auth0/ruby-auth0/issues/109)
178
+ - Obtain APIv2 Token [\#86](https://github.com/auth0/ruby-auth0/issues/86)
179
+
180
+ **Added**
181
+ - Add refresh token method and unit tests [\#150](https://github.com/auth0/ruby-auth0/pull/150) ([joshcanhelp](https://github.com/joshcanhelp))
182
+ - Improve telemetry; more modular Auth API [\#149](https://github.com/auth0/ruby-auth0/pull/149) ([joshcanhelp](https://github.com/joshcanhelp))
183
+ - Add ttl_sec argument to post_email_verification request. [\#145](https://github.com/auth0/ruby-auth0/pull/145) ([digitaldawn](https://github.com/digitaldawn))
184
+ - Add issue and PR templates, CoC [\#141](https://github.com/auth0/ruby-auth0/pull/141) ([joshcanhelp](https://github.com/joshcanhelp))
185
+ - Add new login_ro method to replace login [\#133](https://github.com/auth0/ruby-auth0/pull/133) ([joshcanhelp](https://github.com/joshcanhelp))
186
+ - Add VCR to and improve all integration tests [\#132](https://github.com/auth0/ruby-auth0/pull/132) ([joshcanhelp](https://github.com/joshcanhelp))
187
+ - Add new method to perform an auth code exchange [\#131](https://github.com/auth0/ruby-auth0/pull/131) ([joshcanhelp](https://github.com/joshcanhelp))
188
+ - Add new userinfo method for auth endpoints [\#130](https://github.com/auth0/ruby-auth0/pull/130) ([joshcanhelp](https://github.com/joshcanhelp))
189
+ - Add Client Credentials grant [\#129](https://github.com/auth0/ruby-auth0/pull/129) ([joshcanhelp](https://github.com/joshcanhelp))
190
+
191
+ **Changed**
192
+ - Improve the test suite [\#143](https://github.com/auth0/ruby-auth0/pull/143) ([joshcanhelp](https://github.com/joshcanhelp))
193
+
194
+ **Deprecated**
195
+ - Formal deprecation of 4 auth endpoint methods; rubocop [\#151](https://github.com/auth0/ruby-auth0/pull/151) ([joshcanhelp](https://github.com/joshcanhelp))
196
+
197
+ **Fixed**
198
+ - Documentation improvements [\#139](https://github.com/auth0/ruby-auth0/pull/139) ([szemek](https://github.com/szemek))
199
+ - Fix typos in README.md [\#137](https://github.com/auth0/ruby-auth0/pull/137) ([swetax](https://github.com/swetax))
200
+ - Explicitly require JSON dependency [\#126](https://github.com/auth0/ruby-auth0/pull/126) ([jgaskins](https://github.com/jgaskins))
201
+
202
+
203
+ ## [v4.5.0](https://github.com/auth0/ruby-auth0/tree/v4.5.0) (2018-07-27)
204
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.4.0...v4.5.0)
7
205
 
8
206
  **Closed issues:**
9
207
 
10
- - Vulnerable dependency: yard. [\#99]
11
- https://github.com/auth0/ruby-auth0/issues/99
208
+ - New version with updated rest-client dependency [\#93](https://github.com/auth0/ruby-auth0/issues/93)
209
+ - Bug?: `result` from auth0/mixins/httpproxy.rb returns 'nil' [\#88](https://github.com/auth0/ruby-auth0/issues/88)
210
+ - import\_users fails with EOFError [\#56](https://github.com/auth0/ruby-auth0/issues/56)
211
+ - Using inside of a Rails API [\#55](https://github.com/auth0/ruby-auth0/issues/55)
212
+ - Add documentation? [\#102](https://github.com/auth0/ruby-auth0/issues/102)
213
+ - logout\_url does not include client\_id parameter [\#81](https://github.com/auth0/ruby-auth0/issues/81)
214
+
215
+ **Merged pull requests:**
216
+
217
+ - Correctly default grant\_type to 'password' in login method [\#107](https://github.com/auth0/ruby-auth0/pull/107) ([psparrow](https://github.com/psparrow))
218
+ - Add additional parameters for WS-Fed URL [\#123](https://github.com/auth0/ruby-auth0/pull/123) ([joshcanhelp](https://github.com/joshcanhelp))
219
+ - Deprecate Authentication API endpoints [\#121](https://github.com/auth0/ruby-auth0/pull/121) ([joshcanhelp](https://github.com/joshcanhelp))
220
+ - Clean up auth endpoint tests [\#120](https://github.com/auth0/ruby-auth0/pull/120) ([joshcanhelp](https://github.com/joshcanhelp))
221
+ - Fix docblocks for Authentication API endpoints [\#119](https://github.com/auth0/ruby-auth0/pull/119) ([joshcanhelp](https://github.com/joshcanhelp))
222
+ - Add Client ID to logout\_url [\#118](https://github.com/auth0/ruby-auth0/pull/118) ([joshcanhelp](https://github.com/joshcanhelp))
223
+ - Add pagination and tests for Rules endpoint [\#117](https://github.com/auth0/ruby-auth0/pull/117) ([joshcanhelp](https://github.com/joshcanhelp))
224
+ - Add pagination and tests for Client Grants [\#116](https://github.com/auth0/ruby-auth0/pull/116) ([joshcanhelp](https://github.com/joshcanhelp))
225
+ - Add search\_engine parameter to Users endpoint + tests [\#115](https://github.com/auth0/ruby-auth0/pull/115) ([joshcanhelp](https://github.com/joshcanhelp))
226
+ - Improve README [\#114](https://github.com/auth0/ruby-auth0/pull/114) ([joshcanhelp](https://github.com/joshcanhelp))
227
+ - Add pagination and tests to Clients and Connections endpoints [\#113](https://github.com/auth0/ruby-auth0/pull/113) ([joshcanhelp](https://github.com/joshcanhelp))
228
+ - Use Secure RubyGems Source [\#112](https://github.com/auth0/ruby-auth0/pull/112) ([markprovan](https://github.com/markprovan))
12
229
 
13
- - Unsupported on latest ruby version. [\#83]
14
- https://github.com/auth0/ruby-auth0/issues/83
230
+ ## [v4.4.0](https://github.com/auth0/ruby-auth0/tree/v4.4.0) (2018-02-19)
231
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.3.0...v4.4.0)
232
+
233
+ **Closed issues:**
15
234
 
16
- - Outdated dependencies in ror-api example. [\#75]
17
- https://github.com/auth0/ruby-auth0/issues/75
235
+ - Authentication Login is using `/oauth/ro`. [\#89](https://github.com/auth0/ruby-auth0/issues/89)
18
236
 
19
- - Authentication Login is using `/oauth/ro` [\#89]
20
- https://github.com/auth0/ruby-auth0/issues/89
237
+ ## [v4.3.0](https://github.com/auth0/ruby-auth0/tree/v4.3.0) (2018-02-19)
238
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.2.0...v4.3.0)
21
239
 
22
240
  **Merged pull requests:**
23
241
 
242
+ - Fix script publish gem [\#106](https://github.com/auth0/ruby-auth0/pull/106) ([alexisluque](https://github.com/alexisluque))
24
243
  - Add support to /api/v2/users-by-email [\#105](https://github.com/auth0/ruby-auth0/pull/105) ([edgurgel](https://github.com/edgurgel))
244
+ - Update /login to use /oauth/token [\#94](https://github.com/auth0/ruby-auth0/pull/94) ([Zensaburou](https://github.com/Zensaburou))
245
+ - Fix error in the readme regarding timeouts [\#90](https://github.com/auth0/ruby-auth0/pull/90) ([ksamc](https://github.com/ksamc))
25
246
 
26
247
  ## [v4.2.0](https://github.com/auth0/ruby-auth0/tree/v4.2.0) (2018-02-15)
27
248
  [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.1.0...v4.2.0)
28
249
 
29
250
  **Closed issues:**
30
251
 
31
- - Vulnerable dependency: yard. [\#99]
32
- https://github.com/auth0/ruby-auth0/issues/99
252
+ - Vulnerable dependency: yard [\#99](https://github.com/auth0/ruby-auth0/issues/99)
253
+ - post\_password\_change results in payload validation error [\#84](https://github.com/auth0/ruby-auth0/issues/84)
254
+ - Unsupported on latest ruby version \(2.4.0\) [\#83](https://github.com/auth0/ruby-auth0/issues/83)
255
+ - Adding a resource server breaks authentication. [\#76](https://github.com/auth0/ruby-auth0/issues/76)
256
+ - outdated dependencies in ror-api example [\#75](https://github.com/auth0/ruby-auth0/issues/75)
33
257
 
34
- - Unsupported on latest ruby version. [\#83]
35
- https://github.com/auth0/ruby-auth0/issues/83
36
-
37
- - Outdated dependencies in ror-api example. [\#75]
38
- https://github.com/auth0/ruby-auth0/issues/75
258
+ **Merged pull requests:**
39
259
 
260
+ - Add scripts and Dockerfile to publish SDK on rubygems [\#104](https://github.com/auth0/ruby-auth0/pull/104) ([alexisluque](https://github.com/alexisluque))
261
+ - Fix typo [\#103](https://github.com/auth0/ruby-auth0/pull/103) ([coisnepe](https://github.com/coisnepe))
262
+ - Fix tests [\#101](https://github.com/auth0/ruby-auth0/pull/101) ([alexisluque](https://github.com/alexisluque))
263
+ - Update outdated dependency [\#100](https://github.com/auth0/ruby-auth0/pull/100) ([alexisluque](https://github.com/alexisluque))
264
+ - Fix build [\#98](https://github.com/auth0/ruby-auth0/pull/98) ([alexisluque](https://github.com/alexisluque))
265
+ - Add delay to integration test [\#97](https://github.com/auth0/ruby-auth0/pull/97) ([alexisluque](https://github.com/alexisluque))
266
+ - Fix build [\#96](https://github.com/auth0/ruby-auth0/pull/96) ([alexisluque](https://github.com/alexisluque))
267
+ - Removed reference to API v1 [\#91](https://github.com/auth0/ruby-auth0/pull/91) ([aaguiarz](https://github.com/aaguiarz))
268
+ - Update rest-client version to v2 [\#87](https://github.com/auth0/ruby-auth0/pull/87) ([hzalaz](https://github.com/hzalaz))
269
+ - Introduce and raise exception for timeout [\#85](https://github.com/auth0/ruby-auth0/pull/85) ([anderslemke](https://github.com/anderslemke))
270
+ - corrected missing comma in example code of readme.md [\#79](https://github.com/auth0/ruby-auth0/pull/79) ([drewnichols](https://github.com/drewnichols))
271
+ - Resolve v1 API example error [\#78](https://github.com/auth0/ruby-auth0/pull/78) ([jesseproudman](https://github.com/jesseproudman))
272
+ - updated dependencies in ror api example. Fix \#75 [\#77](https://github.com/auth0/ruby-auth0/pull/77) ([Amialc](https://github.com/Amialc))
273
+ - Add a badge to documentation [\#74](https://github.com/auth0/ruby-auth0/pull/74) ([amingilani](https://github.com/amingilani))
274
+ - Typo [\#73](https://github.com/auth0/ruby-auth0/pull/73) ([amingilani](https://github.com/amingilani))
275
+ - Add how to generate documentation to the README.md + patch\_user [\#72](https://github.com/auth0/ruby-auth0/pull/72) ([ignaciojonas](https://github.com/ignaciojonas))
40
276
 
41
277
  ## [v4.1.0](https://github.com/auth0/ruby-auth0/tree/v4.1.0) (2016-07-25)
42
278
  [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v4.0.0...v4.1.0)
@@ -150,4 +386,4 @@ https://github.com/auth0/ruby-auth0/issues/75
150
386
 
151
387
 
152
388
 
153
- \* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
389
+ \* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*
@@ -0,0 +1,3 @@
1
+ # Code of Conduct
2
+
3
+ Please see [Auth0's code of conduct guidelines](https://github.com/auth0/open-source-template/blob/master/CODE-OF-CONDUCT.md) for information on contributing to this repo.
data/DEPLOYMENT.md CHANGED
@@ -1,14 +1,61 @@
1
- ```
1
+ # Releasing the gem
2
+
3
+ ## Credentials set up
4
+
5
+ Make sure you have access in https://rubygems.org/gems/auth0/ and that your Ruby Gems tokens are set in `~/.gem/credentials`.
6
+
7
+ In order to generate the required changelog entry, define an environment variable `GITHUB_READ_TOKEN` with a Github API token that has READ access to `repo:public_repo`. You can generate a Github API Token [here](https://github.com/settings/tokens/new?description=GitHub%20Changelog%20Generator%20token).
8
+
9
+ Create a new Github Milestone with the version name prefixed with `v`. i.e. `v4.10.2`. Assign every Issue and Pull Request to be included on this release to that Milestone, and tag them with the `CH:xxxxxx` labels, depending on the type of change fixed or introduced there.
10
+
11
+ Finally, follow the next steps:
12
+
13
+ ```bash
14
+ # Install gems for exec commands
2
15
  bundle install
3
- bundle exec rake spec
4
- bundle exec gem bump --version x.y.z
16
+
17
+ # Run all tests
18
+ bundle exec rake test
19
+
20
+ # Create a release branch
21
+ git checkout master
22
+ git pull
23
+ git checkout -b release-X.X.X
24
+ git push --set-upstream origin release-X.X.X
25
+
26
+ # Update the version number
27
+ # This will create a commit with the new version
28
+ bundle exec gem bump --version X.X.X
29
+
30
+ # Make sure the Gemfile.lock is up-to-date
31
+ bundle update
32
+ git commit -am "Update gems"
33
+
34
+ # Generate the changelog
35
+ github_changelog_generator -t $GITHUB_READ_TOKEN
36
+ # ... or similar.
37
+ # Review the changelog
38
+ # Remove "unreleased" section
39
+ # Make sure the tags are ordered
40
+
41
+ # Commit, push, and create a PR for this release
42
+ git commit -am "Update CHANGELOG.md"
43
+ git push
44
+
45
+ # Add related milestone
46
+ # Create PR on GitHub and assign for review
47
+ # Merge/rebase and delete branch once approved
48
+
49
+ # Create and add a tag
50
+ git checkout master
51
+ git pull
5
52
  bundle exec gem tag
6
- github_changelog_generator -t <YOUR TOKEN>
53
+ git push origin vX.X.X
54
+ # Create a new release from this tag on GitHub using markdown from the changelog
55
+
56
+ # Make sure you are an author for this gem here https://rubygems.org/gems/auth0/
57
+ # Rubygems token can be updated in ~/.gem/credentials
7
58
  bundle exec gem release
8
59
  ```
9
60
 
10
- > Note for the changelog:
11
- * Review the changelog.
12
- * Remove "unreleased" section.
13
- * Make sure the tags are ordered.
14
- * Commit / push the changelog to master.
61
+ The steps above were tested with Ruby `v2.5.7`.
data/Gemfile CHANGED
@@ -1,11 +1,19 @@
1
- source 'http://rubygems.org'
1
+ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in auth0.gemspec
4
4
  gemspec
5
5
 
6
6
  group :development do
7
- gem 'terminal-notifier-guard', require: false unless ENV['TRAVIS']
7
+ gem 'terminal-notifier-guard', require: false unless ENV['CIRCLECI']
8
8
  gem 'coveralls', require: false
9
9
  gem 'rubocop', require: false
10
+ gem 'rubocop-rails', require: false
10
11
  gem 'yard', require: false
11
12
  end
13
+
14
+ group :test do
15
+ gem 'webmock', require: false
16
+ gem 'vcr', require: false
17
+ gem 'codecov', require: false
18
+ gem 'simplecov'
19
+ end