# encoding: utf-8 module BitBucket class Repos::Changesets < API REQUIRED_COMMENT_PARAMS = %w[ body changeset_id line path position ].freeze # List changesets on a repository # # = Parameters # * :limit Optional integer. An integer representing how many changesets to return. You can specify a limit between 0 and 50. # * :start Optional string. A hash value representing the earliest node to start with. # # = Examples # bitbucket = BitBucket.new # bitbucket.repos.changesets.list 'user-name', 'repo-name', :start => '...' # bitbucket.repos.changesets.list 'user-name', 'repo-name', :start => '...' { |changeset| ... } # def list(user_name, repo_name, params={}) _update_user_repo_params(user_name, repo_name) _validate_user_repo_params(user, repo) unless user? && repo? normalize! params filter! %w[ limit start], params response = get_request("/1.0/repositories/#{user}/#{repo.downcase}/changesets", params) return response unless block_given? response.each { |el| yield el } end alias :all :list # Gets a single changeset # # = Examples # @bitbucket = BitBucket.new # @bitbucket.repos.changesets.get 'user-name', 'repo-name', '6dcb09b5b57875f334f61aebed6') # def get(user_name, repo_name, sha, params={}) _update_user_repo_params(user_name, repo_name) _validate_user_repo_params(user, repo) unless user? && repo? _validate_presence_of sha normalize! params get_request("/1.0/repositories/#{user}/#{repo.downcase}/changesets/#{sha}", params) end alias :find :get end # Repos::Commits end # BitBucket