lib/github_api/client/repos.rb in github_api-0.14.5 vs lib/github_api/client/repos.rb in github_api-0.15.0

- old
+ new

@@ -18,18 +18,10 @@ 'pub_sub_hubbub', 'releases', 'statistics', 'statuses' - DEFAULT_REPO_OPTIONS = { - "homepage" => "https://github.com", - "private" => false, - "has_issues" => true, - "has_wiki" => true, - "has_downloads" => true - }.freeze - REQUIRED_REPO_OPTIONS = %w[ name ] VALID_REPO_OPTIONS = %w[ name description @@ -164,10 +156,25 @@ get_request("/repos/#{arguments.user}/#{arguments.repo}", arguments.params) end alias :find :get + # Get a repository + # + # @example + # github = Github.new + # github.repos.get_by_id 'repo-id' + # github.repos.get_by_id id: 'repo-id' + # github.repos(id: 'repo-id').get_by_id + # + def get_by_id(*args) + arguments(args, required: [:id]) + + get_request("/repositories/#{arguments.id}", arguments.params) + end + alias :find_by_id :get_by_id + # Create a new repository for the autheticated user. # # @param [Hash] params # @option params [String] :name # Required string @@ -227,13 +234,13 @@ end params = arguments.params # Requires authenticated user if (org = params.delete('org') || org) - post_request("/orgs/#{org}/repos", params.merge_default(DEFAULT_REPO_OPTIONS)) + post_request("/orgs/#{org}/repos", params) else - post_request('/user/repos', params.merge_default(DEFAULT_REPO_OPTIONS)) + post_request("/user/repos", params) end end # Delete a repository # @@ -311,10 +318,10 @@ arguments(args, required: [:user, :repo]) do permit VALID_REPO_OPTIONS assert_required %w[ name ] end - patch_request("/repos/#{arguments.user}/#{arguments.repo}", arguments.params.merge_default(DEFAULT_REPO_OPTIONS)) + patch_request("/repos/#{arguments.user}/#{arguments.repo}", arguments.params) end # Delete a repository # # Deleting a repository requires admin access.