class Github::Client::Activity::Starring

Repository Starring is a feature that lets users bookmark repositories. Stars are shown next to repositories to show an approximate level of interest. Stars have no effect on notifications or the activity feed.

Public Instance Methods

all(*args)
Alias for: list
list(*args) { |el| ... } click to toggle source

List stargazers

@see developer.github.com/v3/activity/starring/#list-stargazers

@example

github = Github.new
github.activity.starring.list user: 'user-name', repo: 'repo-name'
github.activity.starring.list user: 'user-name', repo: 'repo-name' { |star| ... }

@api public

# File lib/github_api/client/activity/starring.rb, line 20
def list(*args)
  arguments(args, required: [:user, :repo])

  response = get_request("/repos/#{arguments.user}/#{arguments.repo}/stargazers", arguments.params)
  return response unless block_given?
  response.each { |el| yield el }
end
Also aliased as: all
star(*args) click to toggle source

Star a repository

You need to be authenticated to star a repository

@see developer.github.com/v3/activity/starring/#star-a-repository

@example

github = Github.new
github.activity.starring.star 'user-name', 'repo-name'

@example

github.activity.starring.star user: 'user-name', repo: 'repo-name'

@api public

# File lib/github_api/client/activity/starring.rb, line 104
def star(*args)
  arguments(args, required: [:user, :repo])

  put_request("/user/starred/#{arguments.user}/#{arguments.repo}", arguments.params)
end
starred(*args) { |el| ... } click to toggle source

List repos being starred by a user

@see developer.github.com/v3/activity/starring/#list-repositories-being-starred

@param [Hash] params @option params [String] :sort

One of created (when the repository was starred) or
updated (when it was last pushed to).
Default: created

@option params [String] :direction

One of asc (ascending) or desc (descending).
Default: desc

@example

github = Github.new
github.activity.starring.starred user: 'user-name'

List repos being starred by the authenticated user

@example

github = Github.new oauth_token: '...'
github.activity.starring.starred

@api public

# File lib/github_api/client/activity/starring.rb, line 53
def starred(*args)
  arguments(args)
  params = arguments.params

  response = if (user_name = params.delete('user'))
    get_request("/users/#{user_name}/starred", params)
  else
    get_request('/user/starred', params)
  end
  return response unless block_given?
  response.each { |el| yield el }
end
starring?(*args) click to toggle source

Check if you are starring a repository

@see developer.github.com/v3/activity/starring/#check-if-you-are-starring-a-repository

@example

github = Github.new
github.activity.starring.starring? 'user-name', 'repo-name'

@example

github.activity.starring.starring? user: 'user-name', repo: 'repo-name'

@return [Boolean]

Returns true if this repo is starred by you, false otherwise.

@api public

# File lib/github_api/client/activity/starring.rb, line 81
def starring?(*args)
  arguments(args, required: [:user, :repo])

  get_request("/user/starred/#{arguments.user}/#{arguments.repo}", arguments.params)
  true
rescue Github::Error::NotFound
  false
end
unstar(*args) click to toggle source

Unstar a repository

You need to be authenticated to unstar a repository.

@see developer.github.com/v3/activity/starring/#unstar-a-repository

@example

github = Github.new
github.activity.starring.unstar 'user-name', 'repo-name'

@example

github.activity.starring.unstar user: 'user-name', repo: 'repo-name'

@api public

# File lib/github_api/client/activity/starring.rb, line 124
def unstar(*args)
  arguments(args, required: [:user, :repo])

  delete_request("/user/starred/#{arguments.user}/#{arguments.repo}", arguments.params)
end