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
@@ -1,5 +1,9 @@
|
|
1
1
|
module Octokit
|
2
2
|
class Client
|
3
|
+
|
4
|
+
# Methods for the Authorizations API
|
5
|
+
#
|
6
|
+
# @see http://developer.github.com/v3/oauth/#oauth-authorizations-api
|
3
7
|
module Authorizations
|
4
8
|
|
5
9
|
# List a users authorizations
|
@@ -51,8 +55,7 @@ module Octokit
|
|
51
55
|
def create_authorization(options={})
|
52
56
|
# Techincally we can omit scopes as GitHub has a default, however the
|
53
57
|
# API will reject us if we send a POST request with an empty body.
|
54
|
-
|
55
|
-
post('authorizations', options)
|
58
|
+
post 'authorizations', options
|
56
59
|
end
|
57
60
|
|
58
61
|
# Update an authorization for the authenticated user.
|
@@ -74,10 +77,7 @@ module Octokit
|
|
74
77
|
# client = Octokit::Client.new(:login => 'ctshryock', :password => 'secret')
|
75
78
|
# client.update_authorization(999999, {:add_scopes => ["gist", "repo"], :note => "Why not Zoidberg possibly?"})
|
76
79
|
def update_authorization(number, options={})
|
77
|
-
|
78
|
-
# API will reject us if we send a POST request with an empty body.
|
79
|
-
options = {:scopes => ""}.merge(options)
|
80
|
-
patch("authorizations/#{number}", options)
|
80
|
+
patch "authorizations/#{number}", options
|
81
81
|
end
|
82
82
|
|
83
83
|
# Delete an authorization for the authenticated user.
|
@@ -93,7 +93,7 @@ module Octokit
|
|
93
93
|
# client = Octokit::Client.new(:login => 'ctshryock', :password => 'secret')
|
94
94
|
# client.delete_authorization(999999)
|
95
95
|
def delete_authorization(number, option={})
|
96
|
-
boolean_from_response
|
96
|
+
boolean_from_response :delete, "authorizations/#{number}"
|
97
97
|
end
|
98
98
|
|
99
99
|
# Check scopes for a token
|
@@ -101,14 +101,40 @@ module Octokit
|
|
101
101
|
# @param token [String] GitHub OAuth token
|
102
102
|
# @return [Array<String>] OAuth scopes
|
103
103
|
# @see http://developer.github.com/v3/oauth/#scopes
|
104
|
-
def scopes(token=
|
105
|
-
|
106
|
-
|
104
|
+
def scopes(token = @access_token)
|
105
|
+
raise ArgumentError.new("Access token required") if token.nil?
|
106
|
+
|
107
|
+
agent.call(:get, "user", :headers => {"Authorization" => "token #{token}" }).
|
108
|
+
headers['X-OAuth-Scopes'].
|
109
|
+
to_s.
|
107
110
|
split(',').
|
108
111
|
map(&:strip).
|
109
112
|
sort
|
110
113
|
end
|
111
114
|
|
112
115
|
end
|
116
|
+
|
117
|
+
# Get the URL to authorize a user for an application via the web flow
|
118
|
+
#
|
119
|
+
# @param app_id [String] Client Id we received when our application was registered with GitHub.
|
120
|
+
# @param app_secret [String] Client Secret we received when our application was registered with GitHub.
|
121
|
+
# @option options [String] :redirect_uri The url to redirect to after authorizing.
|
122
|
+
# @option options [String] :scope The scopes to request from the user.
|
123
|
+
# @option options [String] :state A random string to protect against CSRF.
|
124
|
+
# @return [String] The url to redirect the user to authorize.
|
125
|
+
# @see Octokit::Client
|
126
|
+
# @see http://developer.github.com/v3/oauth/#web-application-flow
|
127
|
+
# @example
|
128
|
+
# @client.authorize_url('xxxx', 'yyyy')
|
129
|
+
def authorize_url(app_id, app_secret, options = {})
|
130
|
+
authorize_url = options.delete(:endpoint) || Octokit.web_endpoint
|
131
|
+
authorize_url += "login/oauth/authorize?client_id=" + app_id + "&client_secret=" + app_secret
|
132
|
+
|
133
|
+
options.each do |key, value|
|
134
|
+
authorize_url += "&" + key.to_s + "=" + value
|
135
|
+
end
|
136
|
+
|
137
|
+
authorize_url
|
138
|
+
end
|
113
139
|
end
|
114
140
|
end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
module Octokit
|
2
|
+
class Client
|
3
|
+
|
4
|
+
# Methods for the Commit Comments API
|
5
|
+
#
|
6
|
+
# @see http://developer.github.com/v3/repos/comments/
|
7
|
+
module CommitComments
|
8
|
+
|
9
|
+
# List all commit comments
|
10
|
+
#
|
11
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
12
|
+
# @return [Array] List of commit comments
|
13
|
+
# @see http://developer.github.com/v3/repos/comments/
|
14
|
+
def list_commit_comments(repo, options={})
|
15
|
+
get "repos/#{Repository.new(repo)}/comments", options
|
16
|
+
end
|
17
|
+
|
18
|
+
# List comments for a single commit
|
19
|
+
#
|
20
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
21
|
+
# @param sha [String] The SHA of the commit whose comments will be fetched
|
22
|
+
# @return [Array] List of commit comments
|
23
|
+
# @see http://developer.github.com/v3/repos/comments/
|
24
|
+
def commit_comments(repo, sha, options={})
|
25
|
+
get "repos/#{Repository.new(repo)}/commits/#{sha}/comments", options
|
26
|
+
end
|
27
|
+
|
28
|
+
# Get a single commit comment
|
29
|
+
#
|
30
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
31
|
+
# @param id [String] The ID of the comment to fetch
|
32
|
+
# @return [Sawyer::Resource] Commit comment
|
33
|
+
# @see http://developer.github.com/v3/repos/comments/
|
34
|
+
def commit_comment(repo, id, options={})
|
35
|
+
get "repos/#{Repository.new(repo)}/comments/#{id}", options
|
36
|
+
end
|
37
|
+
|
38
|
+
# Create a commit comment
|
39
|
+
#
|
40
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
41
|
+
# @param sha [String] Sha of the commit to comment on
|
42
|
+
# @param body [String] Message
|
43
|
+
# @param path [String] Relative path of file to comment on
|
44
|
+
# @param line [Integer] Line number in the file to comment on
|
45
|
+
# @param position [Integer] Line index in the diff to comment on
|
46
|
+
# @return [Sawyer::Resource] Commit comment
|
47
|
+
# @see http://developer.github.com/v3/repos/comments/
|
48
|
+
# @example Create a commit comment
|
49
|
+
# commit = Octokit.create_commit_comment("octocat/Hello-World", "827efc6d56897b048c772eb4087f854f46256132", "My comment message", "README.md", 10, 1)
|
50
|
+
# commit.commit_id # => "827efc6d56897b048c772eb4087f854f46256132"
|
51
|
+
# commit.body # => "My comment message"
|
52
|
+
# commit.path # => "README.md"
|
53
|
+
# commit.line # => 10
|
54
|
+
# commit.position # => 1
|
55
|
+
def create_commit_comment(repo, sha, body, path=nil, line=nil, position=nil, options={})
|
56
|
+
params = {
|
57
|
+
:body => body,
|
58
|
+
:commit_id => sha,
|
59
|
+
:path => path,
|
60
|
+
:line => line,
|
61
|
+
:position => position
|
62
|
+
}
|
63
|
+
post "repos/#{Repository.new(repo)}/commits/#{sha}/comments", options.merge(params)
|
64
|
+
end
|
65
|
+
|
66
|
+
# Update a commit comment
|
67
|
+
#
|
68
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
69
|
+
# @param id [String] The ID of the comment to update
|
70
|
+
# @param body [String] Message
|
71
|
+
# @return [Sawyer::Resource] Updated commit comment
|
72
|
+
# @see http://developer.github.com/v3/repos/comments/
|
73
|
+
# @example Update a commit comment
|
74
|
+
# commit = Octokit.update_commit_comment("octocat/Hello-World", "860296", "Updated commit comment")
|
75
|
+
# commit.id # => 860296
|
76
|
+
# commit.body # => "Updated commit comment"
|
77
|
+
def update_commit_comment(repo, id, body, options={})
|
78
|
+
params = {
|
79
|
+
:body => body
|
80
|
+
}
|
81
|
+
patch "repos/#{Repository.new(repo)}/comments/#{id}", options.merge(params)
|
82
|
+
end
|
83
|
+
|
84
|
+
# Delete a commit comment
|
85
|
+
#
|
86
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
87
|
+
# @param id [String] The ID of the comment to delete
|
88
|
+
# @return [Boolean] Success
|
89
|
+
# @see http://developer.github.com/v3/repos/comments/
|
90
|
+
def delete_commit_comment(repo, id, options={})
|
91
|
+
boolean_from_response :delete, "repos/#{Repository.new(repo)}/comments/#{id}", options
|
92
|
+
end
|
93
|
+
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
@@ -2,31 +2,156 @@ require 'date'
|
|
2
2
|
|
3
3
|
module Octokit
|
4
4
|
class Client
|
5
|
+
|
6
|
+
# Methods for the Commits API
|
7
|
+
#
|
8
|
+
# @see http://developer.github.com/v3/repos/commits/
|
5
9
|
module Commits
|
6
10
|
|
7
11
|
# List commits
|
8
12
|
#
|
9
|
-
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
# @
|
13
|
+
# @overload commits(repo, sha_or_branch, options = {})
|
14
|
+
# @deprecated
|
15
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
16
|
+
# @param sha_or_branch [String] A commit SHA or branch name
|
17
|
+
# @param options [String] :sha Commit SHA or branch name from which to start the list
|
18
|
+
# @overload commits(repo, options = {})
|
19
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
20
|
+
# @param options [String] :sha Commit SHA or branch name from which to start the list
|
21
|
+
# @return [Array<Sawyer::Resource>] An array of hashes representing commits
|
15
22
|
# @see http://developer.github.com/v3/repos/commits/
|
16
|
-
def commits(
|
17
|
-
|
18
|
-
|
23
|
+
def commits(*args)
|
24
|
+
arguments = Octokit::RepoArguments.new(args)
|
25
|
+
sha_or_branch = arguments.pop
|
26
|
+
if sha_or_branch
|
27
|
+
arguments.options[:sha] = sha_or_branch
|
28
|
+
end
|
29
|
+
paginate "repos/#{Repository.new(arguments.repo)}/commits", arguments.options
|
19
30
|
end
|
20
31
|
alias :list_commits :commits
|
21
32
|
|
33
|
+
# Get commits after a specified date
|
34
|
+
|
35
|
+
# @overload commits_since(repo, date, options = {})
|
36
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
37
|
+
# @param date [String] Date on which we want to compare
|
38
|
+
# @param options [String] :sha Commit SHA or branch name from which to start the list
|
39
|
+
# @overload commits_since(repo, date, sha_or_branch, options = {})
|
40
|
+
# @deprecated
|
41
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
42
|
+
# @param date [String] Date on which we want to compare
|
43
|
+
# @param sha_or_branch [String] A commit SHA or branch name
|
44
|
+
# @param options [String] :sha Commit SHA or branch name from which to start the list
|
45
|
+
# @return [Array<Sawyer::Resource>] An array of hashes representing commits
|
46
|
+
# @see http://developer.github.com/v3/repos/commits/
|
47
|
+
# @example
|
48
|
+
# Octokit.commits_since('pengwynn/octokit', '2012-10-01')
|
49
|
+
def commits_since(*args)
|
50
|
+
arguments = Octokit::RepoArguments.new(args)
|
51
|
+
date = parse_date(arguments.shift)
|
52
|
+
params = arguments.options
|
53
|
+
end_date = date + 1
|
54
|
+
params.merge!(:since => iso8601(date))
|
55
|
+
sha_or_branch = arguments.pop
|
56
|
+
if sha_or_branch
|
57
|
+
params[:sha] = sha_or_branch
|
58
|
+
end
|
59
|
+
commits(arguments.repo, params)
|
60
|
+
end
|
61
|
+
|
62
|
+
# Get commits before a specified date
|
63
|
+
#
|
64
|
+
# @overload commits_before(repo, date, options = {})
|
65
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
66
|
+
# @param date [String] Date on which we want to compare
|
67
|
+
# @overload commits_before(repo, date, sha_or_branch, options = {})
|
68
|
+
# @deprecated
|
69
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
70
|
+
# @param date [String] Date on which we want to compare
|
71
|
+
# @param sha_or_branch [String] Commit SHA or branch name from which to start the list
|
72
|
+
# @return [Array<Sawyer::Resource>] An array of hashes representing commits
|
73
|
+
# @see http://developer.github.com/v3/repos/commits/
|
74
|
+
# @example
|
75
|
+
# Octokit.commits_before('pengwynn/octokit', '2012-10-01')
|
76
|
+
def commits_before(*args)
|
77
|
+
arguments = Octokit::RepoArguments.new(args)
|
78
|
+
date = parse_date(arguments.shift)
|
79
|
+
params = arguments.options
|
80
|
+
end_date = date + 1
|
81
|
+
params.merge!(:until => iso8601(date))
|
82
|
+
sha_or_branch = arguments.pop
|
83
|
+
if sha_or_branch
|
84
|
+
params[:sha] = sha_or_branch
|
85
|
+
end
|
86
|
+
commits(arguments.repo, params)
|
87
|
+
end
|
88
|
+
|
89
|
+
# Get commits on a specified date
|
90
|
+
#
|
91
|
+
# @overload commits_on(repo, date, options = {})
|
92
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
93
|
+
# @param date [String] Date on which we want to compare
|
94
|
+
# @overload commits_on(repo, date, sha_or_branch, options = {})
|
95
|
+
# @deprecated
|
96
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
97
|
+
# @param date [String] Date on which we want to compare
|
98
|
+
# @param sha_or_branch [String] Commit SHA or branch name from which to start the list
|
99
|
+
# @return [Array<Sawyer::Resource>] An array of hashes representing commits
|
100
|
+
# @see http://developer.github.com/v3/repos/commits/
|
101
|
+
# @example
|
102
|
+
# Octokit.commits_on('pengwynn/octokit', '2012-10-01')
|
103
|
+
def commits_on(*args)
|
104
|
+
arguments = Octokit::RepoArguments.new(args)
|
105
|
+
date = parse_date(arguments.shift)
|
106
|
+
params = arguments.options
|
107
|
+
end_date = date + 1
|
108
|
+
params.merge!(:since => iso8601(date), :until => iso8601(end_date))
|
109
|
+
sha_or_branch = arguments.pop
|
110
|
+
if sha_or_branch
|
111
|
+
params[:sha] = sha_or_branch
|
112
|
+
end
|
113
|
+
commits(arguments.repo, params)
|
114
|
+
end
|
115
|
+
|
116
|
+
# Get commits made between two nominated dates
|
117
|
+
#
|
118
|
+
# @overload commits_between(repo, start_date, end_date, options = {})
|
119
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
120
|
+
# @param start_date [String] Start Date on which we want to compare
|
121
|
+
# @param end_date [String] End Date on which we want to compare
|
122
|
+
# @overload commits_between(repo, start_date, end_date, sha_or_branch, options = {})
|
123
|
+
# @deprecated
|
124
|
+
# @param repo [String, Hash, Repository] A GitHub repository
|
125
|
+
# @param start_date [String] Start Date on which we want to compare
|
126
|
+
# @param end_date [String] End Date on which we want to compare
|
127
|
+
# @param sha_or_branch [String] Commit SHA or branch name from which to start the list
|
128
|
+
# @return [Array<Sawyer::Resource>] An array of hashes representing commits
|
129
|
+
# @see http://developer.github.com/v3/repos/commits/
|
130
|
+
# @example
|
131
|
+
# Octokit.commits_on('pengwynn/octokit', '2012-10-01', '2012-11-01')
|
132
|
+
def commits_between(*args)
|
133
|
+
arguments = Octokit::RepoArguments.new(args)
|
134
|
+
date = parse_date(arguments.shift)
|
135
|
+
end_date = parse_date(arguments.shift)
|
136
|
+
raise ArgumentError, "Start date #{date} does not precede #{end_date}" if date > end_date
|
137
|
+
|
138
|
+
params = arguments.options
|
139
|
+
params.merge!(:since => iso8601(date), :until => iso8601(end_date))
|
140
|
+
sha_or_branch = arguments.pop
|
141
|
+
if sha_or_branch
|
142
|
+
params[:sha] = sha_or_branch
|
143
|
+
end
|
144
|
+
commits(arguments.repo, params)
|
145
|
+
end
|
146
|
+
|
22
147
|
# Get a single commit
|
23
148
|
#
|
24
149
|
# @param repo [String, Hash, Repository] A GitHub repository
|
25
150
|
# @param sha [String] The SHA of the commit to fetch
|
26
|
-
# @return [
|
151
|
+
# @return [Sawyer::Resource] A hash representing the commit
|
27
152
|
# @see http://developer.github.com/v3/repos/commits/
|
28
153
|
def commit(repo, sha, options={})
|
29
|
-
get
|
154
|
+
get "repos/#{Repository.new(repo)}/commits/#{sha}", options
|
30
155
|
end
|
31
156
|
|
32
157
|
# Create a commit
|
@@ -40,7 +165,7 @@ module Octokit
|
|
40
165
|
# @param message [String] The commit message
|
41
166
|
# @param tree [String] The SHA of the tree object the new commit will point to
|
42
167
|
# @param parents [String, Array] One SHA (for a normal commit) or an array of SHAs (for a merge) of the new commit's parent commits. If ommitted or empty, a root commit will be created
|
43
|
-
# @return [
|
168
|
+
# @return [Sawyer::Resource] A hash representing the new commit
|
44
169
|
# @see http://developer.github.com/v3/git/commits/
|
45
170
|
# @example Create a commit
|
46
171
|
# commit = Octokit.create_commit("octocat/Hello-World", "My commit message", "827efc6d56897b048c772eb4087f854f46256132", "7d1b31e74ee336d15cbd21741bc88a537ed063a0")
|
@@ -51,7 +176,7 @@ module Octokit
|
|
51
176
|
def create_commit(repo, message, tree, parents=nil, options={})
|
52
177
|
params = { :message => message, :tree => tree }
|
53
178
|
params[:parents] = [parents].flatten if parents
|
54
|
-
post
|
179
|
+
post "repos/#{Repository.new(repo)}/git/commits", options.merge(params)
|
55
180
|
end
|
56
181
|
|
57
182
|
# List all commit comments
|
@@ -60,7 +185,7 @@ module Octokit
|
|
60
185
|
# @return [Array] An array of hashes representing comments
|
61
186
|
# @see http://developer.github.com/v3/repos/comments/
|
62
187
|
def list_commit_comments(repo, options={})
|
63
|
-
get
|
188
|
+
get "repos/#{Repository.new(repo)}/comments", options
|
64
189
|
end
|
65
190
|
|
66
191
|
# List comments for a single commit
|
@@ -70,17 +195,17 @@ module Octokit
|
|
70
195
|
# @return [Array] An array of hashes representing comments
|
71
196
|
# @see http://developer.github.com/v3/repos/comments/
|
72
197
|
def commit_comments(repo, sha, options={})
|
73
|
-
get
|
198
|
+
get "repos/#{Repository.new(repo)}/commits/#{sha}/comments", options
|
74
199
|
end
|
75
200
|
|
76
201
|
# Get a single commit comment
|
77
202
|
#
|
78
203
|
# @param repo [String, Hash, Repository] A GitHub repository
|
79
204
|
# @param id [String] The ID of the comment to fetch
|
80
|
-
# @return [
|
205
|
+
# @return [Sawyer::Resource] A hash representing the comment
|
81
206
|
# @see http://developer.github.com/v3/repos/comments/
|
82
207
|
def commit_comment(repo, id, options={})
|
83
|
-
get
|
208
|
+
get "repos/#{Repository.new(repo)}/comments/#{id}", options
|
84
209
|
end
|
85
210
|
|
86
211
|
# Create a commit comment
|
@@ -91,7 +216,7 @@ module Octokit
|
|
91
216
|
# @param path [String] Relative path of file to comment on
|
92
217
|
# @param line [Integer] Line number in the file to comment on
|
93
218
|
# @param position [Integer] Line index in the diff to comment on
|
94
|
-
# @return [
|
219
|
+
# @return [Sawyer::Resource] A hash representing the new commit comment
|
95
220
|
# @see http://developer.github.com/v3/repos/comments/
|
96
221
|
# @example Create a commit comment
|
97
222
|
# commit = Octokit.create_commit_comment("octocat/Hello-World", "827efc6d56897b048c772eb4087f854f46256132", "My comment message", "README.md", 10, 1)
|
@@ -108,7 +233,7 @@ module Octokit
|
|
108
233
|
:line => line,
|
109
234
|
:position => position
|
110
235
|
}
|
111
|
-
post
|
236
|
+
post "repos/#{Repository.new(repo)}/commits/#{sha}/comments", options.merge(params)
|
112
237
|
end
|
113
238
|
|
114
239
|
# Update a commit comment
|
@@ -116,7 +241,7 @@ module Octokit
|
|
116
241
|
# @param repo [String, Hash, Repository] A GitHub repository
|
117
242
|
# @param id [String] The ID of the comment to update
|
118
243
|
# @param body [String] Message
|
119
|
-
# @return [
|
244
|
+
# @return [Sawyer::Resource] A hash representing the updated commit comment
|
120
245
|
# @see http://developer.github.com/v3/repos/comments/
|
121
246
|
# @example Update a commit comment
|
122
247
|
# commit = Octokit.update_commit_comment("octocat/Hello-World", "860296", "Updated commit comment")
|
@@ -126,7 +251,7 @@ module Octokit
|
|
126
251
|
params = {
|
127
252
|
:body => body
|
128
253
|
}
|
129
|
-
patch
|
254
|
+
patch "repos/#{Repository.new(repo)}/comments/#{id}", options.merge(params)
|
130
255
|
end
|
131
256
|
|
132
257
|
# Delete a commit comment
|
@@ -136,7 +261,7 @@ module Octokit
|
|
136
261
|
# @return [nil] nil
|
137
262
|
# @see http://developer.github.com/v3/repos/comments/
|
138
263
|
def delete_commit_comment(repo, id, options={})
|
139
|
-
boolean_from_response
|
264
|
+
boolean_from_response :delete, "repos/#{Repository.new(repo)}/comments/#{id}", options
|
140
265
|
end
|
141
266
|
|
142
267
|
# Compare two commits
|
@@ -144,10 +269,10 @@ module Octokit
|
|
144
269
|
# @param repo [String, Hash, Repository] A GitHub repository
|
145
270
|
# @param start [String] The sha of the starting commit
|
146
271
|
# @param endd [String] The sha of the ending commit
|
147
|
-
# @return [
|
272
|
+
# @return [Sawyer::Resource] A hash representing the comparison
|
148
273
|
# @see http://developer.github.com/v3/repos/commits/
|
149
274
|
def compare(repo, start, endd, options={})
|
150
|
-
get
|
275
|
+
get "repos/#{Repository.new(repo)}/compare/#{start}...#{endd}", options
|
151
276
|
end
|
152
277
|
|
153
278
|
# Merge a branch or sha
|
@@ -156,81 +281,14 @@ module Octokit
|
|
156
281
|
# @param base [String] The name of the base branch to merge into
|
157
282
|
# @param head [String] The branch or SHA1 to merge
|
158
283
|
# @option options [String] :commit_message The commit message for the merge
|
159
|
-
# @return [
|
284
|
+
# @return [Sawyer::Resource] A hash representing the comparison
|
160
285
|
# @see http://developer.github.com/v3/repos/merging/
|
161
286
|
def merge(repo, base, head, options={})
|
162
287
|
params = {
|
163
288
|
:base => base,
|
164
289
|
:head => head
|
165
290
|
}.merge(options)
|
166
|
-
post
|
167
|
-
end
|
168
|
-
|
169
|
-
# Get commits based on time windows
|
170
|
-
|
171
|
-
# Get commits after a specified date
|
172
|
-
#
|
173
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
174
|
-
# @param date [String] Date on which we want to compare
|
175
|
-
# @param sha_or_branch [String] Commit SHA or branch name from which to start the list
|
176
|
-
# @return [Array] An array of hashes representing commits
|
177
|
-
# @see http://developer.github.com/v3/repos/commits/
|
178
|
-
# @example
|
179
|
-
# Octokit.commits_since('pengwynn/octokit', '2012-10-01')
|
180
|
-
def commits_since(repo, date, sha_or_branch="master", options={})
|
181
|
-
params = {:since => iso8601(parse_date(date))}
|
182
|
-
commits(repo, sha_or_branch, params.merge(options))
|
183
|
-
end
|
184
|
-
|
185
|
-
# Get commits before a specified date
|
186
|
-
#
|
187
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
188
|
-
# @param date [String] Date on which we want to compare
|
189
|
-
# @param sha_or_branch [String] Commit SHA or branch name from which to start the list
|
190
|
-
# @return [Array] An array of hashes representing commits
|
191
|
-
# @see http://developer.github.com/v3/repos/commits/
|
192
|
-
# @example
|
193
|
-
# Octokit.commits_before('pengwynn/octokit', '2012-10-01')
|
194
|
-
def commits_before(repo, date, sha_or_branch="master", options={})
|
195
|
-
params = {:until => iso8601(parse_date(date))}
|
196
|
-
commits(repo, sha_or_branch, params.merge(options))
|
197
|
-
end
|
198
|
-
|
199
|
-
# Get commits on a specified date
|
200
|
-
#
|
201
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
202
|
-
# @param date [String] Date on which we want to compare
|
203
|
-
# @param sha_or_branch [String] Commit SHA or branch name from which to start the list
|
204
|
-
# @return [Array] An array of hashes representing commits
|
205
|
-
# @see http://developer.github.com/v3/repos/commits/
|
206
|
-
# @example
|
207
|
-
# Octokit.commits_on('pengwynn/octokit', '2012-10-01')
|
208
|
-
def commits_on(repo, date, sha_or_branch="master", options={})
|
209
|
-
start_date = parse_date(date)
|
210
|
-
end_date = start_date + 1
|
211
|
-
params = { :since => iso8601(start_date), :until => iso8601(end_date) }
|
212
|
-
commits(repo, sha_or_branch, params.merge(options))
|
213
|
-
end
|
214
|
-
|
215
|
-
# Get commits made between two nominated dates
|
216
|
-
#
|
217
|
-
# @param repo [String, Hash, Repository] A GitHub repository
|
218
|
-
# @param start_date [String] Start Date on which we want to compare
|
219
|
-
# @param end_date [String] End Date on which we want to compare
|
220
|
-
# @param sha_or_branch [String] Commit SHA or branch name from which to start the list
|
221
|
-
# @return [Array] An array of hashes representing commits
|
222
|
-
# @see http://developer.github.com/v3/repos/commits/
|
223
|
-
# @example
|
224
|
-
# Octokit.commits_on('pengwynn/octokit', '2012-10-01', '2012-11-01')
|
225
|
-
def commits_between(repo, start_date, end_date, sha_or_branch="master", options={})
|
226
|
-
_start_date = parse_date(start_date)
|
227
|
-
_end_date = parse_date(end_date)
|
228
|
-
if _end_date < _start_date
|
229
|
-
raise ArgumentError, "Start date #{start_date} does not precede #{end_date}"
|
230
|
-
end
|
231
|
-
params = {:since => iso8601(_start_date),
|
232
|
-
:until => iso8601(_end_date) }
|
233
|
-
commits(repo, sha_or_branch, params.merge(options))
|
291
|
+
post "repos/#{Repository.new(repo)}/merges", params
|
234
292
|
end
|
235
293
|
|
236
294
|
protected
|
@@ -249,7 +307,7 @@ module Octokit
|
|
249
307
|
# @param date [String] String representation of a date
|
250
308
|
# @return [DateTime]
|
251
309
|
def parse_date(date)
|
252
|
-
date = DateTime.parse(date)
|
310
|
+
date = DateTime.parse(date.to_s)
|
253
311
|
rescue ArgumentError
|
254
312
|
raise ArgumentError, "#{date} is not a valid date"
|
255
313
|
end
|