class Github::PageIterator

def first

def first
  return nil unless first_page_uri
  response = if next_page < 1
    parsed_query = parse_query(first_page_uri.split(QUERY_STR_SEP).last)
    params = {}
    if parsed_query.keys.include?('sha')
      params['sha'] = 'master'
    end
    params['per_page'] = parse_per_page_number(first_page_uri)
    page_request first_page_uri.split(QUERY_STR_SEP).first, params
  else
    page_request first_page_uri.split(QUERY_STR_SEP).first,
                       'per_page' => parse_per_page_number(first_page_uri)
  end
  update_page_links response.links
  response
end