octokit 1.25.0 → 2.0.0.pre
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +10 -7
- data/lib/octokit.rb +22 -15
- data/lib/octokit/arguments.rb +14 -0
- data/lib/octokit/authentication.rb +48 -25
- data/lib/octokit/client.rb +245 -44
- data/lib/octokit/client/authorizations.rb +36 -10
- data/lib/octokit/client/commit_comments.rb +96 -0
- data/lib/octokit/client/commits.rb +152 -94
- data/lib/octokit/client/contents.rb +32 -24
- data/lib/octokit/client/downloads.rb +11 -7
- data/lib/octokit/client/emojis.rb +3 -1
- data/lib/octokit/client/events.rb +62 -18
- data/lib/octokit/client/gists.rb +27 -26
- data/lib/octokit/client/gitignore.rb +7 -3
- data/lib/octokit/client/issues.rb +43 -71
- data/lib/octokit/client/labels.rb +24 -20
- data/lib/octokit/client/legacy_search.rb +78 -0
- data/lib/octokit/client/markdown.rb +6 -1
- data/lib/octokit/client/meta.rb +21 -0
- data/lib/octokit/client/milestones.rb +13 -9
- data/lib/octokit/client/notifications.rb +24 -64
- data/lib/octokit/client/objects.rb +17 -12
- data/lib/octokit/client/organizations.rb +43 -52
- data/lib/octokit/client/pub_sub_hubbub.rb +68 -8
- data/lib/octokit/client/{pulls.rb → pull_requests.rb} +65 -41
- data/lib/octokit/client/rate_limit.rb +42 -8
- data/lib/octokit/client/refs.rb +16 -10
- data/lib/octokit/client/repositories.rb +73 -124
- data/lib/octokit/client/say.rb +7 -1
- data/lib/octokit/client/service_status.rb +39 -0
- data/lib/octokit/client/stats.rb +12 -6
- data/lib/octokit/client/statuses.rb +8 -29
- data/lib/octokit/client/users.rb +56 -75
- data/lib/octokit/configurable.rb +117 -0
- data/lib/octokit/default.rb +140 -0
- data/lib/octokit/error.rb +6 -5
- data/lib/octokit/gist.rb +11 -0
- data/lib/octokit/rate_limit.rb +22 -0
- data/lib/octokit/repo_arguments.rb +19 -0
- data/lib/octokit/repository.rb +11 -4
- data/lib/octokit/response/raise_error.rb +35 -0
- data/lib/octokit/version.rb +5 -1
- data/octokit.gemspec +4 -9
- data/spec/cassettes/Octokit_Client/_get/handles_query_params.json +1 -0
- data/spec/cassettes/Octokit_Client/_head/handles_query_params.json +1 -0
- data/spec/cassettes/Octokit_Client/_last_response/caches_the_last_agent_response.json +1 -0
- data/spec/cassettes/Octokit_Client/authentication/when_token_authenticated/fetches_and_memoizes_login.json +1 -0
- data/spec/cassettes/Octokit_Client/auto_pagination/fetches_all_the_pages.json +1 -0
- data/spec/cassettes/Octokit_Client/error_handling/raises_on_404.json +1 -0
- data/spec/cassettes/Octokit_Client_Authorizations/_authorization/returns_a_single_authorization.json +1 -0
- data/spec/cassettes/Octokit_Client_Authorizations/_authorizations/lists_existing_authorizations.json +1 -0
- data/spec/cassettes/Octokit_Client_Authorizations/_create_authorization/creates_a_new_authorization_with_options.json +1 -0
- data/spec/cassettes/Octokit_Client_Authorizations/_create_authorization/creates_an_API_authorization.json +1 -0
- data/spec/cassettes/Octokit_Client_Authorizations/_scopes/checks_the_scopes_on_a_one-off_token.json +1 -0
- data/spec/cassettes/Octokit_Client_Authorizations/_scopes/checks_the_scopes_on_the_current_token.json +1 -0
- data/spec/cassettes/Octokit_Client_Authorizations/_update_authorization/updates_and_existing_authorization.json +1 -0
- data/spec/cassettes/Octokit_Client_CommitComments/_commit_comment/returns_a_single_commit_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_CommitComments/_commit_comments/returns_a_list_of_comments_for_a_specific_commit.json +1 -0
- data/spec/cassettes/Octokit_Client_CommitComments/_create_commit_comment/creates_a_commit_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_CommitComments/_delete_commit_comment/deletes_a_commit_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_CommitComments/_list_commit_comments/returns_a_list_of_all_commit_comments.json +1 -0
- data/spec/cassettes/Octokit_Client_CommitComments/_update_commit_comment/updates_a_commit_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commit/returns_a_commit.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits/handles_branch_or_sha_argument.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits/handles_the_sha_option.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits/returns_all_commits.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_before/handles_branch_or_sha_argument.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_before/handles_the_sha_option.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_before/returns_all_commits_until_the_specified_date.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_between/handles_branch_or_sha_argument.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_between/handles_the_sha_option.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_between/returns_all_commits_until_the_specified_date.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_on/handles_branch_or_sha_argument.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_on/handles_the_sha_option.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_on/returns_all_commits_on_the_specified_date.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_since/handles_branch_or_sha_argument.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_since/handles_the_sha_option.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_commits_since/returns_all_commits_since_the_specified_date.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_compare/returns_a_comparison.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_create_commit/creates_a_commit.json +1 -0
- data/spec/cassettes/Octokit_Client_Commits/_merge/merges_a_branch_into_another.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_archive_link/returns_the_headers_of_the_request.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_contents/returns_the_contents_of_a_file.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_create_contents/creates_contents_from_File_object.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_create_contents/creates_contents_from_file_path.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_create_contents/creates_repository_contents_at_a_path.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_delete_contents/deletes_repository_contents_at_a_path.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_readme/returns_the_default_readme.json +1 -0
- data/spec/cassettes/Octokit_Client_Contents/_update_contents/updates_repository_contents_at_a_path.json +1 -0
- data/spec/cassettes/Octokit_Client_Downloads/_download/gets_a_single_download.json +1 -0
- data/spec/cassettes/Octokit_Client_Downloads/_downloads/lists_available_downloads.json +1 -0
- data/spec/cassettes/Octokit_Client_Downloads/methods_that_require_a_download/_create_download/creates_a_download_resource.json +1 -0
- data/spec/cassettes/Octokit_Client_Downloads/methods_that_require_a_download/_create_download/posts_to_an_S3_url.json +1 -0
- data/spec/cassettes/Octokit_Client_Downloads/methods_that_require_a_download/_delete_download/deletes_a_download.json +1 -0
- data/spec/cassettes/Octokit_Client_Emojis/_emojis/returns_all_github_emojis.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_issue_event/lists_issue_events_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_issue_events/lists_issue_events_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_organization_events/returns_all_events_for_an_organization.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_organization_public_events/returns_an_organization_s_public_events.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_public_events/returns_all_public_events.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_received_events/returns_all_user_received_events.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_received_public_events/returns_public_user_received_events.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_repo_issue_events/lists_issue_events_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_repository_events/returns_events_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_repository_network_events/returns_events_for_a_repository_s_network.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_user_events/returns_all_user_events.json +1 -0
- data/spec/cassettes/Octokit_Client_Events/_user_public_events/returns_public_events_performed_by_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/unauthenticated/_gist/returns_the_gist_by_ID.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/unauthenticated/_gists/with_username_passed/returns_a_list_of_gists.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/unauthenticated/_gists/without_a_username_passed/returns_a_list_of_gists.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/unauthenticated/_public_gists/returns_public_gists.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_create_gist/creates_a_new_gist.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_create_gist_comment/creates_a_gist_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_delete_gist/deletes_an_existing_gist.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_delete_gist_comment/deletes_a_gist_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_edit_gist/edit_an_existing_gist.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_fork_gist/forks_an_existing_gist.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_gist_comment/returns_a_gist_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_gist_comments/returns_the_list_of_gist_comments.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_gist_starred_/is_not_starred.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_gist_starred_/is_starred.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_gists/returns_a_list_of_gists.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_star_gist/stars_an_existing_gist.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_starred_gists/returns_the_user_s_starred_gists.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_unstar_gist/unstars_an_existing_gist.json +1 -0
- data/spec/cassettes/Octokit_Client_Gists/when_authenticated/_update_gist_comment/updates_a_gist_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Gitignore/_gitignore_template/returns_the_ruby_gitignore_template.json +1 -0
- data/spec/cassettes/Octokit_Client_Gitignore/_gitignore_templates/returns_all_gitignore_templates.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_create_issue/creates_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_create_issue/creates_an_issue_with_delimited_labels.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_create_issue/creates_an_issue_with_labels_array.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_issue_comment/returns_a_single_comment_for_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_issue_comments/returns_comments_for_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_list_issues/returns_dashboard_issues_for_the_authenticated_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_list_issues/returns_issues_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_org_issues/returns_issues_for_the_organization_for_the_authenticated_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_repository_issues_comments/returns_comments_for_all_issues_in_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/_user_issues/returns_issues_for_the_authenticated_user_for_owned_and_member_repos.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/_add_comment/adds_a_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/_close_issue/closes_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/_issue/returns_a_full_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/_issue/returns_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/_reopen_issue/reopens_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/_update_issue/updates_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/methods_requiring_a_new_issue_comment/_delete_comment/deletes_an_existing_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Issues/methods_requiring_a_new_issue/methods_requiring_a_new_issue_comment/_update_comment/updates_an_existing_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/_add_label/adds_a_label_with_a_color.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/_add_label/adds_a_label_with_default_color.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/_delete_label_/deletes_a_label_from_the_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/_label/returns_a_single_label.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/_labels/returns_labels.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/_lables_for_milestone/returns_all_labels_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/methods_requiring_a_new_issue/_add_labels_to_an_issue/adds_labels_to_a_given_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/methods_requiring_a_new_issue/_labels_for_issue/returns_all_labels_for_a_given_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/methods_requiring_a_new_issue/_remove_all_labels/removes_all_labels_from_the_specified_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/methods_requiring_a_new_issue/_remove_label/removes_a_label_from_the_specified_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/methods_requiring_a_new_issue/_replace_all_labels/replaces_all_labels_for_an_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_Labels/methods_requiring_a_new_label/_update_label/updates_a_label_with_a_new_color.json +1 -0
- data/spec/cassettes/Octokit_Client_LegacySearch/_legacy_search_issues/returns_matching_issues.json +1 -0
- data/spec/cassettes/Octokit_Client_LegacySearch/_legacy_search_repos/returns_matching_repositories.json +1 -0
- data/spec/cassettes/Octokit_Client_LegacySearch/_legacy_search_users/returns_matching_username.json +1 -0
- data/spec/cassettes/Octokit_Client_Markdown/_markdown/renders_markdown.json +1 -0
- data/spec/cassettes/Octokit_Client_Meta/_github_meta/returns_meta_information_about_github.json +1 -0
- data/spec/cassettes/Octokit_Client_Milestones/_list_milestones/lists_milestones_belonging_to_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Milestones/methods_that_need_a_milestone/_create_milestone/creates_a_milestone.json +1 -0
- data/spec/cassettes/Octokit_Client_Milestones/methods_that_need_a_milestone/_delete_milestone/deletes_a_milestone_from_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Milestones/methods_that_need_a_milestone/_milestone/gets_a_single_milestone_belonging_to_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Milestones/methods_that_need_a_milestone/_update_milestone/updates_a_milestone.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/_mark_notifications_as_read/returns_true_when_notifications_are_marked_as_read.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/_mark_repository_notifications_as_read/returns_true_when_notifications_for_a_repo_are_marked_as_read.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/_notifications/lists_the_notifications_for_the_current_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/_repository_notifications/lists_all_notifications_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/methods_that_need_a_thread_context/_delete_thread_subscription/returns_true_with_successful_thread_deletion.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/methods_that_need_a_thread_context/_mark_thread_as_read/marks_a_thread_as_read.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/methods_that_need_a_thread_context/_thread_notifications/returns_notifications_for_a_specific_thread.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/methods_that_need_a_thread_context/_thread_subscription/returns_a_thread_subscription.json +1 -0
- data/spec/cassettes/Octokit_Client_Notifications/methods_that_need_a_thread_context/_update_thread_subscription/updates_a_thread_subscription.json +1 -0
- data/spec/cassettes/Octokit_Client_Objects/_blob/returns_a_blob.json +1 -0
- data/spec/cassettes/Octokit_Client_Objects/_create_blob/creates_a_blob.json +1 -0
- data/spec/cassettes/Octokit_Client_Objects/_create_tag/creates_a_tag.json +1 -0
- data/spec/cassettes/Octokit_Client_Objects/_create_tree/creates_a_tree.json +1 -0
- data/spec/cassettes/Octokit_Client_Objects/_tag/returns_a_tag.json +1 -0
- data/spec/cassettes/Octokit_Client_Objects/_tree/gets_a_tree.json +1 -0
- data/spec/cassettes/Octokit_Client_Objects/_tree/gets_a_tree_recursively.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organization/returns_an_organization.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organization_member_/checks_organization_membership.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organization_members/returns_all_public_members_of_an_organization.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organization_public_member_/checks_publicized_org_membership.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organization_repositories/returns_all_public_repositories_for_an_organization.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organization_teams/returns_all_teams_for_an_organization.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organizations/returns_all_organizations_for_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_organizations/returns_all_organizations_for_the_authenticated_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/_update_organization/updates_an_organization.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_add_team_member/adds_a_team_member.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_add_team_repository/adds_a_team_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_create_team/creates_a_team.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_delete_team/deletes_a_team.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_publicize_membership/publicizes_membership.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_remove_team_member/removes_a_team_member.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_remove_team_repository/removes_a_team_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_team/returns_a_team.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_team_member_/checks_if_a_user_is_member_of_a_team.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_team_members/returns_team_members.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_team_repositories/returns_team_repositories.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_unpublicize_membership/unpublicizes_membership.json +1 -0
- data/spec/cassettes/Octokit_Client_Organizations/methods_that_require_a_new_team/_update_team/updates_a_team.json +1 -0
- data/spec/cassettes/Octokit_Client_PubSubHubbub/_subscribe/raises_an_error_when_topic_is_not_recognized.json +1 -0
- data/spec/cassettes/Octokit_Client_PubSubHubbub/_subscribe/subscribes_to_pull_events.json +1 -0
- data/spec/cassettes/Octokit_Client_PubSubHubbub/_subscribe_service_hook/subscribes_to_pull_events_on_specified_topic.json +1 -0
- data/spec/cassettes/Octokit_Client_PubSubHubbub/_unsubscribe/unsubscribes_from_pull_events.json +1 -0
- data/spec/cassettes/Octokit_Client_PubSubHubbub/unsubscribe_service_hook/unsubscribes_to_stop_receiving_events_on_specified_topic.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/_create_pull_request_for_issue/creates_a_pull_request_and_attach_it_to_an_existing_issue.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/_pull_request_comment/returns_a_comment_on_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/_pull_request_comments/returns_the_comments_for_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/_pull_request_commits/returns_the_commits_for_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/_pull_request_files/lists_files_for_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/_pull_requests/returns_all_pull_requests.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/_pull_requests_comments/returns_all_comments_on_all_pull_requests.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/_close_pull_request/closes_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/_create_pull_request/creates_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/_merge_pull_request/merges_the_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/_pull_merged_/returns_whether_the_pull_request_has_been_merged.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/_pull_request/returns_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/_update_pull_request/updates_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/methods_requiring_a_pull_request_comment/_create_pull_request_comment/creates_a_new_comment_on_a_pull_request.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/methods_requiring_a_pull_request_comment/_create_pull_request_comment_reply/creates_a_new_reply_to_a_pull_request_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/methods_requiring_a_pull_request_comment/_delete_pull_request_comment/deletes_a_pull_request_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_PullRequests/methods_that_require_a_new_pull/methods_requiring_a_pull_request_comment/_update_pull_request_comment/updates_a_pull_request_comment.json +1 -0
- data/spec/cassettes/Octokit_Client_Refs/_ref/returns_a_tags_ref.json +1 -0
- data/spec/cassettes/Octokit_Client_Refs/_refs/returns_all_refs.json +1 -0
- data/spec/cassettes/Octokit_Client_Refs/_refs/returns_all_tag_refs.json +1 -0
- data/spec/cassettes/Octokit_Client_Refs/methods_that_require_a_ref/_create_ref/creates_a_ref.json +1 -0
- data/spec/cassettes/Octokit_Client_Refs/methods_that_require_a_ref/_delete_ref/deletes_an_existing_ref.json +1 -0
- data/spec/cassettes/Octokit_Client_Refs/methods_that_require_a_ref/_update_ref/updates_a_ref.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_all_repositories/returns_all_repositories_on_github.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_assignees/lists_all_the_available_assignees_owner_collaborators_.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_branches/returns_a_repository_s_branches.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_branches/returns_a_single_branch.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_check_assignee/checks_to_see_if_a_particular_user_is_an_assignee_for_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_collaborators/returns_a_repository_s_collaborators.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_contributors/returns_repository_contributors.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_contributors/returns_repository_contributors_excluding_anonymous.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_create_repository/creates_a_repository_for_an_organization.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_delete_subscription/returns_true_when_repo_subscription_deleted.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_fork/forks_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_languages/returns_a_repository_s_languages.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_network/returns_a_repository_s_network.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_repositories/returns_a_user_s_repositories.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_repositories/returns_authenticated_user_s_repositories.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_repository/returns_the_matching_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_repository_/returns_false_if_the_repository_doesn_t_exist.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_repository_/returns_true_if_the_repository_exists.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_star/stars_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_stargazers/returns_all_repository_stargazers.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_subscribers/lists_all_the_users_watching_the_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_subscription/returns_a_repository_subscription.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_tags/returns_a_repository_s_tags.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_unstar/unstars_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_unwatch/unwatches_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_update_subscription/updates_a_repository_subscription.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_watch/watches_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/_watchers/returns_all_repository_watchers.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_add_collaborator/adds_a_repository_collaborators.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_create_repository/creates_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_delete_repository/deletes_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_deploy_keys/returns_a_repository_s_deploy_keys.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_hooks/returns_a_repository_s_hooks.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_remove_collaborator/removes_a_repository_collaborators.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_repository_teams/returns_all_repository_teams.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/_update_repository/updates_the_matching_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/methods_requiring_an_existing_deploy_key/_add_deploy_key/adds_a_repository_deploy_keys.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/methods_that_need_an_existing_hook/_create_hook/creates_a_hook.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/methods_that_need_an_existing_hook/_edit_hook/edits_a_hook.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/methods_that_need_an_existing_hook/_hook/returns_a_repository_s_single_hook.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/methods_that_need_an_existing_hook/_remove_hook/removes_a_hook.json +1 -0
- data/spec/cassettes/Octokit_Client_Repositories/methods_that_require_a_new_repo/methods_that_need_an_existing_hook/_test_hook/tests_a_hook.json +1 -0
- data/spec/cassettes/Octokit_Client_Say/_say/returns_an_ASCII_octocat.json +1 -0
- data/spec/cassettes/Octokit_Client_Say/_say/returns_an_ASCII_octocat_with_custom_text.json +1 -0
- data/spec/cassettes/Octokit_Client_ServiceStatus/_github_status/returns_the_current_system_status.json +1 -0
- data/spec/cassettes/Octokit_Client_ServiceStatus/_github_status/returns_the_most_recent_status_messages.json +1 -0
- data/spec/cassettes/Octokit_Client_ServiceStatus/_github_status_last_message/returns_the_last_human_message.json +1 -0
- data/spec/cassettes/Octokit_Client_Stats/_code_frequency_stats/returns_the_code_frequency_stats.json +1 -0
- data/spec/cassettes/Octokit_Client_Stats/_commit_activity_stats/returns_the_commit_activity_stats.json +1 -0
- data/spec/cassettes/Octokit_Client_Stats/_contributors_stats/returns_contributors_and_their_contribution_stats.json +1 -0
- data/spec/cassettes/Octokit_Client_Stats/_participation_stats/returns_the_owner_and_contributor_participation_stats.json +1 -0
- data/spec/cassettes/Octokit_Client_Stats/_punch_card_stats/returns_commit_count_by_hour_punch_card_stats.json +1 -0
- data/spec/cassettes/Octokit_Client_Statuses/_create_status/creates_status.json +1 -0
- data/spec/cassettes/Octokit_Client_Statuses/_statuses/lists_commit_statuses.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_add_email/adds_an_email_address.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_all_users/returns_all_GitHub_users.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_emails/returns_email_addresses.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_follow/follows_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_followers/returns_followers_for_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_followers/returns_the_authenticated_user_s_followers.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_following/returns_following_for_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_following/returns_the_authenticated_user_s_following.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_follows_/checks_if_the_authenticated_user_follows_another.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_keys/returns_public_keys_for_the_authenticated_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_remove_email/removes_an_email_address.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_starred/returns_starred_repositories_for_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_starred/returns_starred_repositories_for_the_authenticated_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_starred_/checks_if_the_authenticated_user_has_starred_a_repository.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_subscriptions/returns_the_repositories_a_user_watches_for_notifications.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_subscriptions/returns_the_repositories_the_authenticated_user_watches_for_notifications.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_unfollow/unfollows_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_update_user/updates_a_user_profile.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_user/returns_a_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_user/returns_the_authenticated_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_user_keys/returns_public_keys_for_another_user.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/_validate_credentials/validates_username_and_password.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/methods_requiring_an_existing_public_key/_add_key/adds_a_public_key.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/methods_requiring_an_existing_public_key/_key/returns_a_public_key.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/methods_requiring_an_existing_public_key/_remove_key/removes_a_public_key.json +1 -0
- data/spec/cassettes/Octokit_Client_Users/methods_requiring_an_existing_public_key/_update_key/updates_a_public_key.json +1 -0
- data/spec/cassettes/delete_authorization.json +1 -0
- data/spec/cassettes/rate_limit.json +1 -0
- data/spec/cassettes/root.json +1 -0
- data/spec/fixtures/user.json +29 -18
- data/spec/fixtures/{user_token.json → web_flow_token.json} +0 -0
- data/spec/helper.rb +49 -22
- data/spec/octokit/client/authorizations_spec.rb +69 -80
- data/spec/octokit/client/commit_comments_spec.rb +62 -0
- data/spec/octokit/client/commits_spec.rb +93 -226
- data/spec/octokit/client/contents_spec.rb +64 -119
- data/spec/octokit/client/downloads_spec.rb +34 -38
- data/spec/octokit/client/emojis_spec.rb +5 -11
- data/spec/octokit/client/events_spec.rb +67 -51
- data/spec/octokit/client/gists_spec.rb +148 -142
- data/spec/octokit/client/gitignore_spec.rb +11 -14
- data/spec/octokit/client/issues_spec.rb +129 -161
- data/spec/octokit/client/labels_spec.rb +81 -114
- data/spec/octokit/client/legacy_search_spec.rb +42 -0
- data/spec/octokit/client/markdown_spec.rb +9 -12
- data/spec/octokit/client/meta_spec.rb +14 -0
- data/spec/octokit/client/milestones_spec.rb +40 -48
- data/spec/octokit/client/notifications_spec.rb +57 -113
- data/spec/octokit/client/objects_spec.rb +36 -74
- data/spec/octokit/client/organizations_spec.rb +140 -262
- data/spec/octokit/client/pub_sub_hubbub_spec.rb +58 -49
- data/spec/octokit/client/pull_requests_spec.rb +186 -0
- data/spec/octokit/client/rate_limit_spec.rb +40 -0
- data/spec/octokit/client/refs_spec.rb +47 -56
- data/spec/octokit/client/repositories_spec.rb +301 -438
- data/spec/octokit/client/say_spec.rb +8 -22
- data/spec/octokit/client/service_status_spec.rb +37 -0
- data/spec/octokit/client/stats_spec.rb +82 -32
- data/spec/octokit/client/statuses_spec.rb +11 -51
- data/spec/octokit/client/users_spec.rb +144 -348
- data/spec/octokit/client_spec.rb +345 -195
- data/spec/octokit/rate_limit_spec.rb +25 -0
- data/spec/octokit_spec.rb +31 -15
- metadata +585 -387
- data/lib/faraday/response/raise_octokit_error.rb +0 -25
- data/lib/octokit/client/github.rb +0 -19
- data/lib/octokit/client/pub_sub_hubbub/service_hooks.rb +0 -37
- data/lib/octokit/configuration.rb +0 -77
- data/lib/octokit/connection.rb +0 -53
- data/lib/octokit/request.rb +0 -110
- data/spec/faraday/response_spec.rb +0 -63
- data/spec/fixtures/all_repositories.json +0 -122
- data/spec/fixtures/all_users.json +0 -34
- data/spec/fixtures/authorization.json +0 -16
- data/spec/fixtures/authorizations.json +0 -66
- data/spec/fixtures/blob.json +0 -7
- data/spec/fixtures/blob_create.json +0 -3
- data/spec/fixtures/branches.json +0 -16
- data/spec/fixtures/code_frequency_stats.json +0 -897
- data/spec/fixtures/collaborators.json +0 -62
- data/spec/fixtures/comment.json +0 -14
- data/spec/fixtures/comments.json +0 -44
- data/spec/fixtures/commit.json +0 -50
- data/spec/fixtures/commit_activity_stats.json +0 -678
- data/spec/fixtures/commit_comment.json +0 -19
- data/spec/fixtures/commit_comment_create.json +0 -19
- data/spec/fixtures/commit_comment_update.json +0 -19
- data/spec/fixtures/commit_comments.json +0 -78
- data/spec/fixtures/commit_create.json +0 -25
- data/spec/fixtures/commits.json +0 -1414
- data/spec/fixtures/compare.json +0 -98
- data/spec/fixtures/contents.json +0 -14
- data/spec/fixtures/contributor_stats.json +0 -2196
- data/spec/fixtures/contributors.json +0 -891
- data/spec/fixtures/create_content.json +0 -44
- data/spec/fixtures/delete_content.json +0 -30
- data/spec/fixtures/download.json +0 -11
- data/spec/fixtures/download_create.json +0 -21
- data/spec/fixtures/downloads.json +0 -35
- data/spec/fixtures/emails.json +0 -4
- data/spec/fixtures/emojis.json +0 -500
- data/spec/fixtures/followers.json +0 -212
- data/spec/fixtures/following.json +0 -209
- data/spec/fixtures/forks.json +0 -872
- data/spec/fixtures/gist.json +0 -51
- data/spec/fixtures/gist_comment.json +0 -19
- data/spec/fixtures/gist_comment_create.json +0 -19
- data/spec/fixtures/gist_comment_update.json +0 -19
- data/spec/fixtures/gist_comments.json +0 -40
- data/spec/fixtures/gists.json +0 -548
- data/spec/fixtures/github_meta.json +0 -9
- data/spec/fixtures/github_status.json +0 -4
- data/spec/fixtures/github_status_last_message.json +0 -5
- data/spec/fixtures/github_status_messages.json +0 -12
- data/spec/fixtures/gitignore_template_ruby.json +0 -4
- data/spec/fixtures/gitignore_templates.json +0 -78
- data/spec/fixtures/hook.json +0 -18
- data/spec/fixtures/hooks.json +0 -70
- data/spec/fixtures/issue.json +0 -35
- data/spec/fixtures/issue_closed.json +0 -35
- data/spec/fixtures/issue_event.json +0 -42
- data/spec/fixtures/issue_events.json +0 -72
- data/spec/fixtures/issue_full.json +0 -38
- data/spec/fixtures/issues.json +0 -1562
- data/spec/fixtures/label.json +0 -5
- data/spec/fixtures/labels.json +0 -17
- data/spec/fixtures/languages.json +0 -5
- data/spec/fixtures/legacy/issues.json +0 -49
- data/spec/fixtures/legacy/repositories.json +0 -173
- data/spec/fixtures/legacy/users.json +0 -24
- data/spec/fixtures/list_commit_comments.json +0 -572
- data/spec/fixtures/markdown_gfm +0 -1
- data/spec/fixtures/merge.json +0 -47
- data/spec/fixtures/milestone.json +0 -11
- data/spec/fixtures/milestones.json +0 -28
- data/spec/fixtures/not_found.json +0 -3
- data/spec/fixtures/notification_thread.json +0 -32
- data/spec/fixtures/notifications.json +0 -32
- data/spec/fixtures/org_issues.json +0 -710
- data/spec/fixtures/organization-repositories.json +0 -4292
- data/spec/fixtures/organization-repository.json +0 -42
- data/spec/fixtures/organization.json +0 -18
- data/spec/fixtures/organization_events.json +0 -61
- data/spec/fixtures/organization_members.json +0 -576
- data/spec/fixtures/organization_public_events.json +0 -61
- data/spec/fixtures/organization_team_members.json +0 -16
- data/spec/fixtures/organization_team_repos.json +0 -62
- data/spec/fixtures/organizations.json +0 -44
- data/spec/fixtures/participation_stats.json +0 -110
- data/spec/fixtures/public_events.json +0 -1104
- data/spec/fixtures/public_gists.json +0 -968
- data/spec/fixtures/public_key.json +0 -5
- data/spec/fixtures/public_key_update.json +0 -5
- data/spec/fixtures/public_keys.json +0 -7
- data/spec/fixtures/pull_created.json +0 -138
- data/spec/fixtures/pull_request.json +0 -138
- data/spec/fixtures/pull_request_comment.json +0 -35
- data/spec/fixtures/pull_request_comment_create.json +0 -35
- data/spec/fixtures/pull_request_comment_reply.json +0 -35
- data/spec/fixtures/pull_request_comment_update.json +0 -35
- data/spec/fixtures/pull_request_comments.json +0 -35
- data/spec/fixtures/pull_request_commits.json +0 -45
- data/spec/fixtures/pull_request_files.json +0 -35
- data/spec/fixtures/pull_request_merged.json +0 -5
- data/spec/fixtures/pull_requests.json +0 -187
- data/spec/fixtures/pull_requests_comments.json +0 -82
- data/spec/fixtures/pull_update.json +0 -138
- data/spec/fixtures/punch_card_stats.json +0 -842
- data/spec/fixtures/readme.json +0 -14
- data/spec/fixtures/ref.json +0 -9
- data/spec/fixtures/ref_create.json +0 -29
- data/spec/fixtures/ref_update.json +0 -11
- data/spec/fixtures/refs.json +0 -38
- data/spec/fixtures/refs_tags.json +0 -29
- data/spec/fixtures/repo_assignees.json +0 -30
- data/spec/fixtures/repo_events.json +0 -1652
- data/spec/fixtures/repo_issues_events.json +0 -128
- data/spec/fixtures/repositories.json +0 -872
- data/spec/fixtures/repository.json +0 -34
- data/spec/fixtures/repository_issues_comments.json +0 -52
- data/spec/fixtures/repository_network_events.json +0 -155
- data/spec/fixtures/repository_notifications.json +0 -32
- data/spec/fixtures/say.txt +0 -22
- data/spec/fixtures/say_custom.txt +0 -22
- data/spec/fixtures/stargazers.json +0 -212
- data/spec/fixtures/starred.json +0 -1114
- data/spec/fixtures/starred_gists.json +0 -30
- data/spec/fixtures/status.json +0 -16
- data/spec/fixtures/statuses.json +0 -34
- data/spec/fixtures/subscribers.json +0 -9
- data/spec/fixtures/subscription.json +0 -8
- data/spec/fixtures/subscription_update.json +0 -8
- data/spec/fixtures/subscriptions.json +0 -39
- data/spec/fixtures/tag.json +0 -16
- data/spec/fixtures/tag_create.json +0 -16
- data/spec/fixtures/tags.json +0 -173
- data/spec/fixtures/team.json +0 -8
- data/spec/fixtures/teams.json +0 -12
- data/spec/fixtures/thread_subscription.json +0 -8
- data/spec/fixtures/thread_subscription_update.json +0 -8
- data/spec/fixtures/tree.json +0 -112
- data/spec/fixtures/tree_create.json +0 -14
- data/spec/fixtures/update_content.json +0 -44
- data/spec/fixtures/user_events.json +0 -101
- data/spec/fixtures/user_issues.json +0 -710
- data/spec/fixtures/user_performed_public_events.json +0 -78
- data/spec/fixtures/user_public_events.json +0 -78
- data/spec/fixtures/validation_failed.json +0 -11
- data/spec/fixtures/watched.json +0 -1022
- data/spec/fixtures/watchers.json +0 -182
- data/spec/octokit/client/github_spec.rb +0 -19
- data/spec/octokit/client/issue_events_spec.rb +0 -30
- data/spec/octokit/client/pub_sub_hubbub/service_hooks_spec.rb +0 -48
- data/spec/octokit/client/pulls_spec.rb +0 -210
data/lib/octokit/client/say.rb
CHANGED
@@ -1,11 +1,17 @@
|
|
1
1
|
module Octokit
|
2
2
|
class Client
|
3
|
+
|
4
|
+
# Methods for the unpublished Octocat API
|
3
5
|
module Say
|
4
6
|
|
7
|
+
# Return a nifty ASCII Octocat with GitHub wisdom
|
8
|
+
# or your own
|
9
|
+
#
|
10
|
+
# @return [String]
|
5
11
|
def say(text=nil)
|
6
12
|
options = {}
|
7
13
|
options[:s] = text if text
|
8
|
-
get "
|
14
|
+
get "octocat", options
|
9
15
|
end
|
10
16
|
alias :octocat :say
|
11
17
|
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module Octokit
|
2
|
+
class Client
|
3
|
+
|
4
|
+
# Methods for the GitHub Status API
|
5
|
+
#
|
6
|
+
# @see https://status.github.com/api
|
7
|
+
module ServiceStatus
|
8
|
+
|
9
|
+
# Root for status API
|
10
|
+
# @private
|
11
|
+
STATUS_ROOT = 'https://status.github.com/api.json'
|
12
|
+
|
13
|
+
# Returns the current system status
|
14
|
+
#
|
15
|
+
# @return [Sawyer::Resource] GitHub status
|
16
|
+
# @see https://status.github.com/api#api-current-status
|
17
|
+
def github_status
|
18
|
+
get(STATUS_ROOT).rels[:status].get.data
|
19
|
+
end
|
20
|
+
|
21
|
+
# Returns the last human communication, status, and timestamp.
|
22
|
+
#
|
23
|
+
# @return [Sawyer::Resource] GitHub status last message
|
24
|
+
# @see https://status.github.com/api#api-last-message
|
25
|
+
def github_status_last_message
|
26
|
+
get(STATUS_ROOT).rels[:last_message].get.data
|
27
|
+
end
|
28
|
+
|
29
|
+
# Returns the most recent human communications with status and timestamp.
|
30
|
+
#
|
31
|
+
# @return [Array<Sawyer::Resource>] GitHub status messages
|
32
|
+
# @see https://status.github.com/api#api-recent-messages
|
33
|
+
def github_status_messages
|
34
|
+
get(STATUS_ROOT).rels[:messages].get.data
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
data/lib/octokit/client/stats.rb
CHANGED
@@ -1,11 +1,15 @@
|
|
1
1
|
module Octokit
|
2
2
|
class Client
|
3
|
+
|
4
|
+
# Methods for the Repository Statistics API
|
5
|
+
#
|
6
|
+
# @see http://developer.github.com/v3/repos/statistics/
|
3
7
|
module Stats
|
4
8
|
|
5
9
|
# Get contributors list with additions, deletions, and commit counts
|
6
10
|
#
|
7
11
|
# @param repo [String, Hash, Repository] A GitHub repository
|
8
|
-
# @return [Array<
|
12
|
+
# @return [Array<Sawyer::Resource>] Array of contributor stats
|
9
13
|
# @see http://developer.github.com/v3/repos/statistics/#get-contributors-list-with-additions-deletions-and-commit-counts
|
10
14
|
# @example Get contributor stats for octokit
|
11
15
|
# @client.contributors_stats('pengwynn/octokit')
|
@@ -17,7 +21,7 @@ module Octokit
|
|
17
21
|
# Get the last year of commit activity data
|
18
22
|
#
|
19
23
|
# @param repo [String, Hash, Repository] A GitHub repository
|
20
|
-
# @return [Array<
|
24
|
+
# @return [Array<Sawyer::Resource>] The last year of commit activity grouped by
|
21
25
|
# week. The days array is a group of commits per day, starting on Sunday.
|
22
26
|
# @see http://developer.github.com/v3/repos/statistics/#get-the-last-year-of-commit-activity-data
|
23
27
|
# @example Get commit activity for octokit
|
@@ -29,7 +33,7 @@ module Octokit
|
|
29
33
|
# Get the number of additions and deletions per week
|
30
34
|
#
|
31
35
|
# @param repo [String, Hash, Repository] A GitHub repository
|
32
|
-
# @return [Array<
|
36
|
+
# @return [Array<Sawyer::Resource>] Weekly aggregate of the number of additions
|
33
37
|
# and deletions pushed to a repository.
|
34
38
|
# @see http://developer.github.com/v3/repos/statistics/#get-the-number-of-additions-and-deletions-per-week
|
35
39
|
# @example Get code frequency stats for octokit
|
@@ -41,7 +45,7 @@ module Octokit
|
|
41
45
|
# Get the weekly commit count for the repo owner and everyone else
|
42
46
|
#
|
43
47
|
# @param repo [String, Hash, Repository] A GitHub repository
|
44
|
-
# @return [
|
48
|
+
# @return [Sawyer::Resource] Total commit counts for the owner and total commit
|
45
49
|
# counts in all. all is everyone combined, including the owner in the last
|
46
50
|
# 52 weeks. If you’d like to get the commit counts for non-owners, you can
|
47
51
|
# subtract all from owner.
|
@@ -71,9 +75,11 @@ module Octokit
|
|
71
75
|
#
|
72
76
|
# @param repo [String, Hash, Repository] A GitHub repository
|
73
77
|
# @param metric [String] The metrics you are looking for
|
74
|
-
# @return [Array<
|
78
|
+
# @return [Array<Sawyer::Resource>] Magical unicorn stats
|
75
79
|
def get_stats(repo, metric)
|
76
|
-
get("repos/#{Repository.new repo}/stats/#{metric}")
|
80
|
+
data = get("repos/#{Repository.new repo}/stats/#{metric}")
|
81
|
+
|
82
|
+
last_response.status == 202 ? nil : data
|
77
83
|
end
|
78
84
|
|
79
85
|
end
|
@@ -1,15 +1,19 @@
|
|
1
1
|
module Octokit
|
2
2
|
class Client
|
3
|
+
|
4
|
+
# Methods for the Commit Statuses API
|
5
|
+
#
|
6
|
+
# @see http://developer.github.com/v3/repos/statuses/
|
3
7
|
module Statuses
|
4
8
|
|
5
9
|
# List all statuses for a given commit
|
6
10
|
#
|
7
11
|
# @param repo [String, Repository, Hash] A GitHub repository
|
8
12
|
# @param sha [String] The SHA1 for the commit
|
9
|
-
# @return [Array] A list of statuses
|
13
|
+
# @return [Array<Sawyer::Resource>] A list of statuses
|
10
14
|
# @see http://developer.github.com/v3/repos/status
|
11
15
|
def statuses(repo, sha, options={})
|
12
|
-
get
|
16
|
+
get "repos/#{Repository.new(repo)}/statuses/#{sha}", options
|
13
17
|
end
|
14
18
|
alias :list_statuses :statuses
|
15
19
|
|
@@ -18,37 +22,12 @@ module Octokit
|
|
18
22
|
# @param repo [String, Repository, Hash] A GitHub repository
|
19
23
|
# @param sha [String] The SHA1 for the commit
|
20
24
|
# @param state [String] The state: pending, success, failure, error
|
21
|
-
# @return [
|
25
|
+
# @return [Sawyer::Resource] A status
|
22
26
|
# @see http://developer.github.com/v3/repos/status
|
23
27
|
def create_status(repo, sha, state, options={})
|
24
28
|
options.merge!(:state => state)
|
25
|
-
post
|
26
|
-
end
|
27
|
-
|
28
|
-
# Returns the current system status
|
29
|
-
#
|
30
|
-
# @return [Hash] GitHub status
|
31
|
-
# @see https://status.github.com/api#api-current-status
|
32
|
-
def github_status
|
33
|
-
get('status.json', {:endpoint => Octokit.status_api_endpoint})
|
29
|
+
post "repos/#{Repository.new(repo)}/statuses/#{sha}", options
|
34
30
|
end
|
35
|
-
|
36
|
-
# Returns the last human communication, status, and timestamp.
|
37
|
-
#
|
38
|
-
# @return [Hash] GitHub status last message
|
39
|
-
# @see https://status.github.com/api#api-last-message
|
40
|
-
def github_status_last_message
|
41
|
-
get('last-message.json', {:endpoint => Octokit.status_api_endpoint})
|
42
|
-
end
|
43
|
-
|
44
|
-
# Returns the most recent human communications with status and timestamp.
|
45
|
-
#
|
46
|
-
# @return [Array<Hash>] GitHub status messages
|
47
|
-
# @see https://status.github.com/api#api-recent-messages
|
48
|
-
def github_status_messages
|
49
|
-
get('messages.json', {:endpoint => Octokit.status_api_endpoint})
|
50
|
-
end
|
51
|
-
|
52
31
|
end
|
53
32
|
end
|
54
33
|
end
|
data/lib/octokit/client/users.rb
CHANGED
@@ -1,17 +1,10 @@
|
|
1
1
|
module Octokit
|
2
2
|
class Client
|
3
|
-
module Users
|
4
3
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
# @see http://developer.github.com/v3/search/#search-users
|
10
|
-
# @example
|
11
|
-
# Octokit.search_users('pengwynn')
|
12
|
-
def search_users(search, options={})
|
13
|
-
get("legacy/user/search/#{search}", options)['users']
|
14
|
-
end
|
4
|
+
# Methods for the Users API
|
5
|
+
#
|
6
|
+
# @see http://developer.github.com/v3/users/
|
7
|
+
module Users
|
15
8
|
|
16
9
|
# List all GitHub users
|
17
10
|
#
|
@@ -24,7 +17,7 @@ module Octokit
|
|
24
17
|
#
|
25
18
|
# @see http://developer.github.com/v3/users/#get-all-users
|
26
19
|
#
|
27
|
-
# @return [Array] List of GitHub users.
|
20
|
+
# @return [Array<Sawyer::Resource>] List of GitHub users.
|
28
21
|
def all_users(options={})
|
29
22
|
get "users", options
|
30
23
|
end
|
@@ -32,7 +25,7 @@ module Octokit
|
|
32
25
|
# Get a single user
|
33
26
|
#
|
34
27
|
# @param user [String] A GitHub user name.
|
35
|
-
# @return [
|
28
|
+
# @return [Sawyer::Resource]
|
36
29
|
# @see http://developer.github.com/v3/users/#get-a-single-user
|
37
30
|
# @example
|
38
31
|
# Octokit.user("sferik")
|
@@ -49,14 +42,17 @@ module Octokit
|
|
49
42
|
# @param code [String] Authorization code generated by GitHub.
|
50
43
|
# @param app_id [String] Client Id we received when our application was registered with GitHub.
|
51
44
|
# @param app_secret [String] Client Secret we received when our application was registered with GitHub.
|
52
|
-
# @return [
|
53
|
-
# @see Octokit::Client
|
45
|
+
# @return [Sawyer::Resource] Hash holding the access token.
|
54
46
|
# @see http://developer.github.com/v3/oauth/#web-application-flow
|
55
47
|
# @example
|
56
48
|
# @client.access_token('aaaa', 'xxxx', 'yyyy', {:accept => 'application/json'})
|
57
|
-
def
|
58
|
-
|
59
|
-
:
|
49
|
+
def exchange_code_for_token(code, app_id = client_id, app_secret = client_secret, options = {})
|
50
|
+
options.merge!({
|
51
|
+
:code => code,
|
52
|
+
:client_id => app_id,
|
53
|
+
:client_secret => app_secret
|
54
|
+
})
|
55
|
+
post "#{web_endpoint}login/oauth/access_token", options
|
60
56
|
end
|
61
57
|
|
62
58
|
# Validate user username and password
|
@@ -81,42 +77,45 @@ module Octokit
|
|
81
77
|
# @option options [String] :location
|
82
78
|
# @option options [Boolean] :hireable
|
83
79
|
# @option options [String] :bio
|
84
|
-
# @return [
|
80
|
+
# @return [Sawyer::Resource]
|
85
81
|
# @example
|
86
82
|
# Octokit.user(:name => "Erik Michaels-Ober", :email => "sferik@gmail.com", :company => "Code for America", :location => "San Francisco", :hireable => false)
|
87
83
|
def update_user(options)
|
88
|
-
patch
|
84
|
+
patch "user", options
|
89
85
|
end
|
90
86
|
|
91
87
|
# Get a user's followers.
|
92
88
|
#
|
93
89
|
# @param user [String] Username of the user whose list of followers you are getting.
|
94
|
-
# @return [Array<
|
90
|
+
# @return [Array<Sawyer::Resource>] Array of hashes representing users followers.
|
95
91
|
# @see http://developer.github.com/v3/users/followers/#list-followers-of-a-user
|
96
92
|
# @example
|
97
93
|
# Octokit.followers('pengwynn')
|
98
94
|
def followers(user=login, options={})
|
99
|
-
get
|
95
|
+
get "users/#{user}/followers", options
|
100
96
|
end
|
101
97
|
|
102
98
|
# Get list of users a user is following.
|
103
99
|
#
|
104
100
|
# @param user [String] Username of the user who you are getting the list of the people they follow.
|
105
|
-
# @return [Array<
|
101
|
+
# @return [Array<Sawyer::Resource>] Array of hashes representing users a user is following.
|
106
102
|
# @see http://developer.github.com/v3/users/followers/#list-users-following-another-user
|
107
103
|
# @example
|
108
104
|
# Octokit.following('pengwynn')
|
109
105
|
def following(user=login, options={})
|
110
|
-
get
|
106
|
+
get "users/#{user}/following", options
|
111
107
|
end
|
112
108
|
|
113
109
|
# Check if you are following a user.
|
114
110
|
#
|
115
111
|
# Requries an authenticated client.
|
116
112
|
#
|
117
|
-
# @
|
118
|
-
#
|
119
|
-
# @
|
113
|
+
# @overload follows?(target)
|
114
|
+
# @param target [String] Username of the user that you want to check if you are following.
|
115
|
+
# @overload follows?(user, target)
|
116
|
+
# @param user [String] Username of first user
|
117
|
+
# @param target [String] Username of the target user
|
118
|
+
# @return [Boolean] True following target user, false otherwise.
|
120
119
|
# @see http://developer.github.com/v3/users/followers/#check-if-you-are-following-a-user
|
121
120
|
# @example
|
122
121
|
# @client.follows?('pengwynn')
|
@@ -125,7 +124,7 @@ module Octokit
|
|
125
124
|
user = args.first
|
126
125
|
user ||= login
|
127
126
|
return if user.nil?
|
128
|
-
boolean_from_response
|
127
|
+
boolean_from_response :get, "user/following/#{target}"
|
129
128
|
end
|
130
129
|
|
131
130
|
# Follow a user.
|
@@ -134,12 +133,11 @@ module Octokit
|
|
134
133
|
#
|
135
134
|
# @param user [String] Username of the user to follow.
|
136
135
|
# @return [Boolean] True if follow was successful, false otherwise.
|
137
|
-
# @see Octokit::Client
|
138
136
|
# @see http://developer.github.com/v3/users/followers/#follow-a-user
|
139
137
|
# @example
|
140
138
|
# @client.follow('holman')
|
141
139
|
def follow(user, options={})
|
142
|
-
boolean_from_response
|
140
|
+
boolean_from_response :put, "user/following/#{user}", options
|
143
141
|
end
|
144
142
|
|
145
143
|
# Unfollow a user.
|
@@ -148,12 +146,11 @@ module Octokit
|
|
148
146
|
#
|
149
147
|
# @param user [String] Username of the user to unfollow.
|
150
148
|
# @return [Boolean] True if unfollow was successful, false otherwise.
|
151
|
-
# @see Octokit::Client
|
152
149
|
# @see http://developer.github.com/v3/users/followers/#unfollow-a-user
|
153
150
|
# @example
|
154
151
|
# @client.unfollow('holman')
|
155
152
|
def unfollow(user, options={})
|
156
|
-
boolean_from_response
|
153
|
+
boolean_from_response :delete, "user/following/#{user}", options
|
157
154
|
end
|
158
155
|
|
159
156
|
# Get list of repos starred by a user.
|
@@ -162,12 +159,13 @@ module Octokit
|
|
162
159
|
# @param options [Hash] Optional options
|
163
160
|
# @option options [String] :sort (created) Sort: <tt>created</tt> or <tt>updated</tt>.
|
164
161
|
# @option options [String] :direction (desc) Direction: <tt>asc</tt> or <tt>desc</tt>.
|
165
|
-
# @return [Array<
|
162
|
+
# @return [Array<Sawyer::Resource>] Array of hashes representing repositories starred by user.
|
166
163
|
# @see http://developer.github.com/v3/repos/starring/#list-repositories-being-starred
|
167
164
|
# @example
|
168
165
|
# Octokit.starred('pengwynn')
|
169
166
|
def starred(user=login, options={})
|
170
|
-
|
167
|
+
path = user_authenticated? ? "user/starred" : "users/#{user}/starred"
|
168
|
+
paginate path, options
|
171
169
|
end
|
172
170
|
|
173
171
|
# Check if you are starring a repo.
|
@@ -177,26 +175,11 @@ module Octokit
|
|
177
175
|
# @param user [String] Username of repository owner.
|
178
176
|
# @param repo [String] Name of the repository.
|
179
177
|
# @return [Boolean] True if you are following the repo, false otherwise.
|
180
|
-
# @see Octokit::Client
|
181
178
|
# @see http://developer.github.com/v3/repos/starring/#check-if-you-are-starring-a-repository
|
182
179
|
# @example
|
183
180
|
# @client.starred?('pengwynn', 'octokit')
|
184
181
|
def starred?(user, repo, options={})
|
185
|
-
boolean_from_response
|
186
|
-
end
|
187
|
-
|
188
|
-
# Get list of repos watched by a user.
|
189
|
-
#
|
190
|
-
# Legacy, using github.beta media type. Use `Users#starred` instead.
|
191
|
-
#
|
192
|
-
# @param user [String] Username of the user to get the list of repositories they are watching.
|
193
|
-
# @return [Array<Hashie::Mash>] Array of hashes representing repositories watched by user.
|
194
|
-
# @see Users#starred
|
195
|
-
# @see http://developer.github.com/v3/repos/starring/#list-stargazers
|
196
|
-
# @example
|
197
|
-
# Octokit.watched('pengwynn')
|
198
|
-
def watched(user=login, options={})
|
199
|
-
get("users/#{user}/watched", options)
|
182
|
+
boolean_from_response :get, "user/starred/#{user}/#{repo}", options
|
200
183
|
end
|
201
184
|
|
202
185
|
# Get a public key.
|
@@ -208,7 +191,7 @@ module Octokit
|
|
208
191
|
# Requires authenticated client.
|
209
192
|
#
|
210
193
|
# @param key_id [Integer] Key to retreive.
|
211
|
-
# @return [
|
194
|
+
# @return [Sawyer::Resource] Hash representing the key.
|
212
195
|
# @see http://developer.github.com/v3/users/keys/#get-a-single-public-key
|
213
196
|
# @example
|
214
197
|
# @client.key(1)
|
@@ -223,33 +206,32 @@ module Octokit
|
|
223
206
|
# public_key['key']
|
224
207
|
# # => "ssh-rsa AAA..."
|
225
208
|
def key(key_id, options={})
|
226
|
-
get
|
209
|
+
get "user/keys/#{key_id}", options
|
227
210
|
end
|
228
211
|
|
229
212
|
# Get list of public keys for user.
|
230
213
|
#
|
231
214
|
# Requires authenticated client.
|
232
215
|
#
|
233
|
-
# @return [Array<
|
234
|
-
# @see Octokit::Client
|
216
|
+
# @return [Array<Sawyer::Resource>] Array of hashes representing public keys.
|
235
217
|
# @see http://developer.github.com/v3/users/keys/#list-your-public-keys
|
236
218
|
# @example
|
237
219
|
# @client.keys
|
238
220
|
def keys(options={})
|
239
|
-
|
221
|
+
paginate "user/keys", options
|
240
222
|
end
|
241
223
|
|
242
224
|
# Get list of public keys for user.
|
243
225
|
#
|
244
226
|
# Requires authenticated client.
|
245
227
|
#
|
246
|
-
# @return [Array<
|
247
|
-
# @see Octokit::Client
|
228
|
+
# @return [Array<Sawyer::Resource>] Array of hashes representing public keys.
|
248
229
|
# @see http://developer.github.com/v3/users/keys/#list-public-keys-for-a-user
|
249
230
|
# @example
|
250
231
|
# @client.user_keys('pengwynn'
|
251
232
|
def user_keys(user, options={})
|
252
|
-
|
233
|
+
# TODO: Roll this into .keys
|
234
|
+
paginate "users/#{user}/keys", options
|
253
235
|
end
|
254
236
|
|
255
237
|
# Add public key to user account.
|
@@ -258,13 +240,12 @@ module Octokit
|
|
258
240
|
#
|
259
241
|
# @param title [String] Title to give reference to the public key.
|
260
242
|
# @param key [String] Public key.
|
261
|
-
# @return [
|
262
|
-
# @see Octokit::Client
|
243
|
+
# @return [Sawyer::Resource] Hash representing the newly added public key.
|
263
244
|
# @see http://developer.github.com/v3/users/keys/#create-a-public-key
|
264
245
|
# @example
|
265
246
|
# @client.add_key('Personal projects key', 'ssh-rsa AAA...')
|
266
247
|
def add_key(title, key, options={})
|
267
|
-
post
|
248
|
+
post "user/keys", options.merge({:title => title, :key => key})
|
268
249
|
end
|
269
250
|
|
270
251
|
# Update a public key
|
@@ -275,12 +256,12 @@ module Octokit
|
|
275
256
|
# @param options [Hash] Hash containing attributes to update.
|
276
257
|
# @option options [String] :title
|
277
258
|
# @option options [String] :key
|
278
|
-
# @return [
|
259
|
+
# @return [Sawyer::Resource] Hash representing the updated public key.
|
279
260
|
# @see http://developer.github.com/v3/users/keys/#update-a-public-key
|
280
261
|
# @example
|
281
262
|
# @client.update_key(1, :title => 'new title', :key => "ssh-rsa BBB")
|
282
263
|
def update_key(key_id, options={})
|
283
|
-
patch
|
264
|
+
patch "user/keys/#{key_id}", options
|
284
265
|
end
|
285
266
|
|
286
267
|
# Remove a public key from user account.
|
@@ -289,12 +270,11 @@ module Octokit
|
|
289
270
|
#
|
290
271
|
# @param id [String] Id of the public key to remove.
|
291
272
|
# @return [Boolean] True if removal was successful, false otherwise.
|
292
|
-
# @see Octokit::Client
|
293
273
|
# @see http://developer.github.com/v3/users/keys/#delete-a-public-key
|
294
274
|
# @example
|
295
275
|
# @client.remove_key(1)
|
296
276
|
def remove_key(id, options={})
|
297
|
-
boolean_from_response
|
277
|
+
boolean_from_response :delete, "user/keys/#{id}", options
|
298
278
|
end
|
299
279
|
|
300
280
|
# List email addresses for a user.
|
@@ -302,12 +282,11 @@ module Octokit
|
|
302
282
|
# Requires authenticated client.
|
303
283
|
#
|
304
284
|
# @return [Array<String>] Array of email addresses.
|
305
|
-
# @see Octokit::Client
|
306
285
|
# @see http://developer.github.com/v3/users/emails/#list-email-addresses-for-a-user
|
307
286
|
# @example
|
308
287
|
# @client.emails
|
309
288
|
def emails(options={})
|
310
|
-
|
289
|
+
paginate "user/emails", options
|
311
290
|
end
|
312
291
|
|
313
292
|
# Add email address to user.
|
@@ -316,12 +295,12 @@ module Octokit
|
|
316
295
|
#
|
317
296
|
# @param email [String] Email address to add to the user.
|
318
297
|
# @return [Array<String>] Array of all email addresses of the user.
|
319
|
-
# @see Octokit::Client
|
320
298
|
# @see http://developer.github.com/v3/users/emails/#add-email-addresses
|
321
299
|
# @example
|
322
300
|
# @client.add_email('new_email@user.com')
|
323
301
|
def add_email(email, options={})
|
324
|
-
|
302
|
+
email = Array(email)
|
303
|
+
post "user/emails", email
|
325
304
|
end
|
326
305
|
|
327
306
|
# Remove email from user.
|
@@ -329,28 +308,30 @@ module Octokit
|
|
329
308
|
# Requires authenticated client.
|
330
309
|
#
|
331
310
|
# @param email [String] Email address to remove.
|
332
|
-
# @return [
|
333
|
-
# @see Octokit::Client
|
311
|
+
# @return [Array<String>] Array of all email addresses of the user.
|
334
312
|
# @see http://developer.github.com/v3/users/emails/#delete-email-addresses
|
335
313
|
# @example
|
336
314
|
# @client.remove_email('old_email@user.com')
|
337
|
-
def remove_email(email
|
338
|
-
|
315
|
+
def remove_email(email)
|
316
|
+
email = Array(email)
|
317
|
+
boolean_from_response :delete, "user/emails", email
|
339
318
|
end
|
340
319
|
|
341
320
|
# List repositories being watched by a user.
|
342
321
|
#
|
343
322
|
# @param user [String] User's GitHub username.
|
344
323
|
#
|
345
|
-
# @return [Array<
|
324
|
+
# @return [Array<Sawyer::Resource>] Array of repositories.
|
346
325
|
#
|
347
326
|
# @see http://developer.github.com/v3/activity/watching/#list-repositories-being-watched
|
348
327
|
#
|
349
328
|
# @example
|
350
329
|
# @client.subscriptions("pengwynn")
|
351
330
|
def subscriptions(user=login, options={})
|
352
|
-
|
331
|
+
path = user_authenticated? ? "user/subscriptions" : "users/#{user}/subscriptions"
|
332
|
+
paginate path, options
|
353
333
|
end
|
334
|
+
alias :watched :subscriptions
|
354
335
|
|
355
336
|
end
|
356
337
|
end
|