From 52449649a41af4560dd4d319818394f4ee8b82d3 Mon Sep 17 00:00:00 2001 From: Chris McBride Date: Mon, 27 Nov 2017 11:01:03 -0500 Subject: [PATCH] Add ability to access github Release Asset API. (#525) * Add ability to access github Release Asset API. See: https://developer.github.com/v3/repos/releases --- .gitignore | 1 + github/GitRelease.py | 41 ++++ github/GitReleaseAsset.py | 223 ++++++++++++++++++ github/Repository.py | 10 + github/Requester.py | 28 ++- github/tests/Framework.py | 16 +- github/tests/GitRelease.py | 55 +++++ github/tests/GitReleaseAsset.py | 94 ++++++++ .../tests/ReplayData/Release.testGetAsset.txt | 32 +++ .../ReplayData/Release.testGetAssets.txt | 44 ++++ .../ReplayData/Release.testUploadAsset.txt | 43 ++++ .../ReleaseAsset.testAttributes.txt | 44 ++++ .../ReplayData/ReleaseAsset.testDelete.txt | 54 +++++ .../ReplayData/ReleaseAsset.testUpdate.txt | 56 +++++ 14 files changed, 733 insertions(+), 8 deletions(-) create mode 100644 github/GitReleaseAsset.py create mode 100644 github/tests/GitReleaseAsset.py create mode 100644 github/tests/ReplayData/Release.testGetAsset.txt create mode 100644 github/tests/ReplayData/Release.testGetAssets.txt create mode 100644 github/tests/ReplayData/Release.testUploadAsset.txt create mode 100644 github/tests/ReplayData/ReleaseAsset.testAttributes.txt create mode 100644 github/tests/ReplayData/ReleaseAsset.testDelete.txt create mode 100644 github/tests/ReplayData/ReleaseAsset.testUpdate.txt diff --git a/.gitignore b/.gitignore index 43d495ed..3f2548ef 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,4 @@ /developer.github.com/ /gh-pages/ /doc/doctrees/ +.vscode* \ No newline at end of file diff --git a/github/GitRelease.py b/github/GitRelease.py index 2c1ae524..1a0e150e 100644 --- a/github/GitRelease.py +++ b/github/GitRelease.py @@ -22,8 +22,10 @@ # # # ############################################################################## +from os.path import basename import github.GithubObject import github.GitAuthor +import github.GitReleaseAsset class GitRelease(github.GithubObject.CompletableGithubObject): @@ -34,6 +36,14 @@ class GitRelease(github.GithubObject.CompletableGithubObject): def __repr__(self): return self.get__repr__({"title": self._title.value}) + @property + def id(self): + """ + :type: integer + """ + self._completeIfNotSet(self._id) + return self._id.value + @property def body(self): """ @@ -116,7 +126,36 @@ class GitRelease(github.GithubObject.CompletableGithubObject): ) return github.GitRelease.GitRelease(self._requester, headers, data, completed=True) + def upload_asset(self, path, label="", content_type=""): + assert isinstance(path, (str, unicode)), path + assert isinstance(label, (str, unicode)), label + + post_parameters = { + "name": basename(path), + "label": label + } + headers = {} + if len(content_type) > 0: + headers["Content-Type"] = content_type + resp_headers, data = self._requester.requestBlobAndCheck( + "POST", + self.upload_url.split("{?")[0], + parameters=post_parameters, + headers=headers, + input=path + ) + return github.GitReleaseAsset.GitReleaseAsset(self._requester, resp_headers, data, completed=True) + + def get_assets(self): + return github.PaginatedList.PaginatedList( + github.GitReleaseAsset.GitReleaseAsset, + self._requester, + self.url + "/assets", + None + ) + def _initAttributes(self): + self._id = github.GithubObject.NotSet self._body = github.GithubObject.NotSet self._title = github.GithubObject.NotSet self._tag_name = github.GithubObject.NotSet @@ -126,6 +165,8 @@ class GitRelease(github.GithubObject.CompletableGithubObject): self._html_url = github.GithubObject.NotSet def _useAttributes(self, attributes): + if "id" in attributes: + self._id = self._makeIntAttribute(attributes["id"]) if "body" in attributes: self._body = self._makeStringAttribute(attributes["body"]) if "name" in attributes: diff --git a/github/GitReleaseAsset.py b/github/GitReleaseAsset.py new file mode 100644 index 00000000..e1283952 --- /dev/null +++ b/github/GitReleaseAsset.py @@ -0,0 +1,223 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2012 Vincent Jacques # +# Copyright 2012 Zearin # +# Copyright 2013 AKFish # +# Copyright 2013 Vincent Jacques # # +# Copyright 2017 Chris McBride # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import github.GithubObject + + +class GitReleaseAsset(github.GithubObject.CompletableGithubObject): + """ + This class represents GitReleaseAssets as returned by + GET /repos/:owner/:repo/releases/assets/:id + See: + https://developer.github.com/v3/repos/releases/#get-a-single-release-asset + """ + + def __repr__(self): + return self.get__repr__({"url": self.url}) + + @property + def url(self): + """ + :type: string + """ + self._completeIfNotSet(self._url) + return self._url.value + + @property + def id(self): + """ + :type: integer + """ + self._completeIfNotSet(self._id) + return self._id.value + + @property + def name(self): + """ + :type: string + """ + self._completeIfNotSet(self._name) + return self._name.value + + @name.setter + def name(self, value): + """ + :type: string + """ + self._completeIfNotSet(self._name) + self._name.value = value + + @property + def label(self): + """ + :type: string + """ + self._completeIfNotSet(self._label) + return self._label.value + + @label.setter + def label(self, value): + """ + :type: string + """ + self._completeIfNotSet(self._label) + self._label.value = value + + @property + def content_type(self): + """ + :type: string + """ + self._completeIfNotSet(self._content_type) + return self._content_type.value + + @property + def state(self): + """ + :type: string + """ + self._completeIfNotSet(self._state) + return self._state.value + + @property + def size(self): + """ + :type: integer + """ + self._completeIfNotSet(self._size) + return self._size.value + + @property + def download_count(self): + """ + :type: integer + """ + self._completeIfNotSet(self._download_count) + return self._download_count.value + + @property + def created_at(self): + """ + :type: datetime + """ + self._completeIfNotSet(self._created_at) + return self._created_at.value + + @property + def updated_at(self): + """ + :type: datetime + """ + self._completeIfNotSet(self._updated_at) + return self._updated_at.value + + @property + def browser_download_url(self): + """ + :type: string + """ + self._completeIfNotSet(self._browser_download_url) + return self._browser_download_url.value + + @property + def uploader(self): + """ + :type: github.NamedUser.NamedUser + """ + self._completeIfNotSet(self._uploader) + return self._uploader.value + + def delete_asset(self): + """ + Delete asset from the release. + :rtype: bool + """ + headers, data = self._requester.requestJsonAndCheck( + "DELETE", + self.url + ) + return True + + def update_asset(self, name, label=""): + """ + Update asset metadata. + :rtype: github.GitReleaseAsset.GitReleaseAsset + """ + assert isinstance(name, (str, unicode)), name + assert isinstance(label, (str, unicode)), label + post_parameters = { + "name": name, + "label": label + } + headers, data = self._requester.requestJsonAndCheck( + "PATCH", + self.url, + input=post_parameters + ) + return GitReleaseAsset(self._requester, headers, data, completed=True) + + def _initAttributes(self): + self._url = github.GithubObject.NotSet + self._id = github.GithubObject.NotSet + self._name = github.GithubObject.NotSet + self._label = github.GithubObject.NotSet + self._uploader = github.GithubObject.NotSet + self._content_type = github.GithubObject.NotSet + self._state = github.GithubObject.NotSet + self._size = github.GithubObject.NotSet + self._download_count = github.GithubObject.NotSet + self._created_at = github.GithubObject.NotSet + self._updated_at = github.GithubObject.NotSet + self._browser_download_url = github.GithubObject.NotSet + + def _useAttributes(self, attributes): + if "url" in attributes: # pragma no branch + self._url = self._makeStringAttribute(attributes["url"]) + if "id" in attributes: # pragma no branch + self._id = self._makeIntAttribute(attributes["id"]) + if "name" in attributes: # pragma no branch + self._name = self._makeStringAttribute(attributes["name"]) + if "label" in attributes: # pragma no branch + self._label = self._makeStringAttribute(attributes["label"]) + if "uploader" in attributes: # pragma no branch + self._uploader = github.NamedUser.NamedUser(self._requester, {}, \ + attributes["uploader"], completed=True) + if "content_type" in attributes: # pragma no branch + self._content_type = self._makeStringAttribute(attributes["content_type"]) + if "state" in attributes: # pragma no branch + self._state = self._makeStringAttribute(attributes["state"]) + if "size" in attributes: # pragma no branch + self._size = self._makeIntAttribute(attributes["size"]) + if "download_count" in attributes: # pragma no branch + self._download_count = self._makeIntAttribute(attributes["download_count"]) + if "created_at" in attributes: # pragma no branch + self._created_at = self._makeDatetimeAttribute(attributes["created_at"]) + if "updated_at" in attributes: # pragma no branch + self._updated_at = self._makeDatetimeAttribute(attributes["updated_at"]) + if "browser_download_url" in attributes: # pragma no branch + self._browser_download_url = self._makeStringAttribute(attributes["browser_download_url"]) diff --git a/github/Repository.py b/github/Repository.py index 0f13f0ee..2fabc5d1 100644 --- a/github/Repository.py +++ b/github/Repository.py @@ -46,6 +46,7 @@ import github.GitBlob import github.Organization import github.GitRef import github.GitRelease +import github.GitReleaseAsset import github.Issue import github.Repository import github.PullRequest @@ -2299,6 +2300,15 @@ class Repository(github.GithubObject.CompletableGithubObject): def _identity(self): return self.owner.login + "/" + self.name + def get_release_asset(self, id): + assert isinstance(id, (int)), id + + resp_headers, data = self._requester.requestJsonAndCheck( + "GET", + self.url + "/releases/assets/" + str(id) + ) + return github.GitReleaseAsset.GitReleaseAsset(self._requester, resp_headers, data, completed=True) + def _initAttributes(self): self._archive_url = github.GithubObject.NotSet self._assignees_url = github.GithubObject.NotSet diff --git a/github/Requester.py b/github/Requester.py index 9fd77b16..5903b7d6 100644 --- a/github/Requester.py +++ b/github/Requester.py @@ -42,6 +42,8 @@ import sys import Consts import re import os +import mimetypes +from io import IOBase atLeastPython26 = sys.hexversion >= 0x02060000 atLeastPython3 = sys.hexversion >= 0x03000000 @@ -174,6 +176,11 @@ class Requester: def requestMultipartAndCheck(self, verb, url, parameters=None, headers=None, input=None): return self.__check(*self.requestMultipart(verb, url, parameters, headers, input)) + def requestBlobAndCheck(self, verb, url, parameters=None, headers=None, input=None): + o = urlparse.urlparse(url) + self.__hostname = o.hostname + return self.__check(*self.requestBlob(verb, url, parameters, headers, input)) + def __check(self, status, responseHeaders, output): output = self.__structuredFromJson(output) if status >= 400: @@ -228,6 +235,20 @@ class Requester: return self.__requestEncode(None, verb, url, parameters, headers, input, encode) + def requestBlob(self, verb, url, parameters={}, headers={}, input=None): + def encode(local_path): + if "Content-Type" in headers: + mime_type = headers["Content-Type"] + else: + guessed_type = mimetypes.guess_type(input) + mime_type = guessed_type[0] if guessed_type[0] is not None else "application/octet-stream" + f = open(local_path, 'rb') + return mime_type, f + + if input: + headers["Content-Length"] = os.path.getsize(input) + return self.__requestEncode(None, verb, url, parameters, headers, input, encode) + def __requestEncode(self, cnx, verb, url, parameters, requestHeaders, input, encode): assert verb in ["HEAD", "GET", "POST", "PATCH", "PUT", "DELETE"] if parameters is None: @@ -283,6 +304,9 @@ class Requester: output = response.read() cnx.close() + if input: + if isinstance(input, IOBase): + input.close() self.__log(verb, url, requestHeaders, input, status, responseHeaders, output) @@ -305,8 +329,8 @@ class Requester: url = self.__prefix + url else: o = urlparse.urlparse(url) - assert o.hostname == self.__hostname - assert o.path.startswith(self.__prefix) + assert o.hostname in [self.__hostname, "uploads.github.com"], o.hostname + assert o.path.startswith((self.__prefix, "/api/uploads")) assert o.port == self.__port url = o.path if o.query != "": diff --git a/github/tests/Framework.py b/github/tests/Framework.py index 9fc2c919..5557c054 100644 --- a/github/tests/Framework.py +++ b/github/tests/Framework.py @@ -150,12 +150,16 @@ class ReplayingConnection: self.__testCase.assertEqual(self.__splitUrl(url), self.__splitUrl(readLine(self.__file))) self.__testCase.assertEqual(headers, eval(readLine(self.__file))) expectedInput = readLine(self.__file) - if input.startswith("{"): - self.__testCase.assertEqual(json.loads(input.replace('\n', '').replace('\r', '')), json.loads(expectedInput)) - elif atMostPython32: # @todo Test in all cases, including Python 3.3 - # In Python 3.3, dicts are not output in the same order as in Python 2.5 -> 3.2. - # So, form-data encoding is not deterministic and is difficult to test. - self.__testCase.assertEqual(input.replace('\n', '').replace('\r', ''), expectedInput) + if isinstance(input, (str, unicode)): + if input.startswith("{"): + self.__testCase.assertEqual(json.loads(input.replace('\n', '').replace('\r', '')), json.loads(expectedInput)) + elif atMostPython32: # @todo Test in all cases, including Python 3.3 + # In Python 3.3, dicts are not output in the same order as in Python 2.5 -> 3.2. + # So, form-data encoding is not deterministic and is difficult to test. + self.__testCase.assertEqual(input.replace('\n', '').replace('\r', ''), expectedInput) + else: + # for non-string input (e.g. upload asset), let it pass. + pass def __splitUrl(self, url): splitedUrl = url.split("?") diff --git a/github/tests/GitRelease.py b/github/tests/GitRelease.py index 843d187e..2e3f1915 100644 --- a/github/tests/GitRelease.py +++ b/github/tests/GitRelease.py @@ -22,6 +22,8 @@ # # # ############################################################################## +import os +import zipfile import Framework from pprint import pprint @@ -30,9 +32,25 @@ class Release(Framework.TestCase): def setUp(self): Framework.TestCase.setUp(self) # Do not get self.release here as it casues bad data to be saved in --record mode + self.content_path = "content.txt" + self.artifact_path = "archive.zip" + + with open(self.content_path, "w") as zip_content: + zip_content.write("Pedro for president.") + + artifact = zipfile.ZipFile(self.artifact_path, "w") + artifact.write(self.content_path) + artifact.close() + + def tearDown(self): + if os.path.exists(self.content_path): + os.remove(self.content_path) + if os.path.exists(self.artifact_path): + os.remove(self.artifact_path) def testAttributes(self): self.release = self.g.get_user().get_repo("PyGithub").get_releases()[0] + self.assertEqual(self.release.id, 1210814) self.assertEqual(self.release.tag_name, "v1.25.2") self.assertEqual(self.release.upload_url, "https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}") self.assertEqual(self.release.body, "Body") @@ -68,3 +86,40 @@ class Release(Framework.TestCase): self.assertEqual(self.release.title, "release title") self.assertEqual(self.release.author._rawData['login'], "edhollandAL") self.assertEqual(self.release.html_url, "https://github.com/edhollandAL/PyGithub/releases/tag/v3.0.0") + + def testGetAsset(self): + """ + Test retrieving a release asset directly by its ID. + """ + the_repo = self.g.get_user().get_repo("PyGithub") + + asset_id = 16 + the_asset = the_repo.get_release_asset(asset_id) + self.assertTrue(the_asset is not None) + self.assertEqual(the_asset.id, asset_id) + + def testGetAssets(self): + """ + Test retrieving the set of assets for the current release. + """ + release_id = 1210837 + the_repo = self.g.get_user().get_repo("PyGithub") + the_release = the_repo.get_release(release_id) + self.assertEqual(the_release.id, release_id) + + asset_list = [x for x in the_release.get_assets()] + self.assertTrue(asset_list is not None) + self.assertEqual(len(asset_list), 1) + + def testUploadAsset(self): + """ + Test uploading a new asset to the release. + """ + release_id = 1210837 + the_repo = self.g.get_user().get_repo("PyGithub") + the_release = the_repo.get_release(release_id) + self.assertEqual(the_release.id, release_id) + + the_release.upload_asset(self.artifact_path, + "unit test artifact", + "application/zip") diff --git a/github/tests/GitReleaseAsset.py b/github/tests/GitReleaseAsset.py new file mode 100644 index 00000000..12a8bc94 --- /dev/null +++ b/github/tests/GitReleaseAsset.py @@ -0,0 +1,94 @@ +# -*- coding: utf-8 -*- + +# ########################## Copyrights and license ############################ +# # +# Copyright 2015 Ed Holland # +# Copyright 2017 Chris McBride # +# # +# This file is part of PyGithub. # +# http://pygithub.github.io/PyGithub/v1/index.html # +# # +# PyGithub is free software: you can redistribute it and/or modify it under # +# the terms of the GNU Lesser General Public License as published by the Free # +# Software Foundation, either version 3 of the License, or (at your option) # +# any later version. # +# # +# PyGithub is distributed in the hope that it will be useful, but WITHOUT ANY # +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS # +# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more # +# details. # +# # +# You should have received a copy of the GNU Lesser General Public License # +# along with PyGithub. If not, see . # +# # +# ############################################################################## + +import datetime +import Framework +from pprint import pprint + + +class ReleaseAsset(Framework.TestCase): + """ + Test harness for functionality related to release assets (files attached to + the github release). + """ + def setUp(self): + Framework.TestCase.setUp(self) + # Do not get self.release here as it causes bad data to be saved in --record mode + + def testAttributes(self): + """ + Test properties & to-string. + """ + release = self.g.get_user().get_repo("PyGithub").get_releases()[0] + self.assertEqual(release.id, 1210814) + + asset = release.get_assets()[0] + self.assertEqual(asset.id, 16) + self.assertEqual(asset.url, \ + "https://api.github.com/api/v3/repos/edhollandAL/PyGithub/releases/assets/16") + self.assertEqual(asset.name, "Archive.zip") + self.assertEqual(asset.label, "Installation msi & runbook zipped") + self.assertEqual(asset.content_type, "application/zip") + self.assertEqual(asset.state, "uploaded") + self.assertEqual(asset.size, 3783) + self.assertEqual(asset.download_count, 2) + self.assertEqual(asset.created_at, datetime.datetime(2017, 2, 1, 22, 40, 58)) + self.assertEqual(asset.updated_at, datetime.datetime(2017, 2, 1, 22, 44, 58)) + self.assertEqual(asset.browser_download_url, "https://github.com/edhollandAL/PyGithub/releases/download/v1.25.2/Asset.zip") + + # test __repr__() based on this attributes + self.assertEqual(asset.__repr__(), 'GitReleaseAsset(url="https://api.github.com/api/v3/repos/edhollandAL/PyGithub/releases/assets/16")') + + def testDelete(self): + """ + Test deleting a release asset. + """ + release = self.g.get_user().get_repo("PyGithub").get_releases()[0] + self.assertEqual(release.id, 1210814) + asset = release.get_assets()[0] + self.assertEqual(asset.id, 16) + + self.assertTrue(asset.delete_asset(), msg="Asset deletion failed.") + + def testUpdate(self): + """ + Test updating the editable properties of a release asset. + """ + release = self.g.get_user().get_repo("PyGithub").get_releases()[0] + self.assertEqual(release.id, 1210814) + + asset = release.get_assets()[0] + + self.assertEqual(asset.id, 16) + self.assertEqual(asset.name, "Archive.zip") + self.assertEqual(asset.label, "Installation msi & runbook zipped") + + new_name = "updated-name.zip" + new_label = "Updated label" + updated_asset = asset.update_asset(new_name, new_label) + self.assertEqual(updated_asset.name, new_name) + self.assertNotEqual(asset.name, updated_asset.name) + self.assertEqual(updated_asset.label, new_label) + self.assertNotEqual(asset.label, updated_asset.label) diff --git a/github/tests/ReplayData/Release.testGetAsset.txt b/github/tests/ReplayData/Release.testGetAsset.txt new file mode 100644 index 00000000..0faab26b --- /dev/null +++ b/github/tests/ReplayData/Release.testGetAsset.txt @@ -0,0 +1,32 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a30e6f9aa7cf5731b87dfb3b9992202d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306D35:553A03F2'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '07ff1c8a09e44b62e277fae50a1b1dc4'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306E14:553A03F3'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/assets/16 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +201 +[('content-length', '0'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"url":"https://api.github.com/api/v3/repos/edhollandAL/PyGithub/releases/assets/16","id":16,"name":"Archive.zip","label":"Installation msi & runbook zipped","uploader":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"User","site_admin":false,"ldap_dn":"CN=edhollandAL,OU=Test OU,DC=pygithub,DC=com"},"content_type":"application/zip","state":"uploaded","size":3783,"download_count":2,"created_at":"2017-02-01T22:40:58Z","updated_at":"2017-02-01T22:44:58Z","browser_download_url":"https://github.com/edhollandAL/PyGithub/releases/download/v1.25.2/Asset.zip"} \ No newline at end of file diff --git a/github/tests/ReplayData/Release.testGetAssets.txt b/github/tests/ReplayData/Release.testGetAssets.txt new file mode 100644 index 00000000..58da37cd --- /dev/null +++ b/github/tests/ReplayData/Release.testGetAssets.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a30e6f9aa7cf5731b87dfb3b9992202d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306D35:553A03F2'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '07ff1c8a09e44b62e277fae50a1b1dc4'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306E14:553A03F3'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210837 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1632'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '13d09b732ebe76f892093130dc088652'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"26708914904a29b8c9fd2ac006beb9db"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4945'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5674:1AF2EEF:553A03F3'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 24 Apr 2015 08:43:32 GMT'), ('date', 'Fri, 24 Apr 2015 08:51:00 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210837,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:43:32Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210837/assets +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '0'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/api/v3/repos/edhollandAL/PyGithub/releases/assets/16","id":16,"name":"Archive.zip","label":"Installation msi & runbook zipped","uploader":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"User","site_admin":false,"ldap_dn":"CN=edhollandAL,OU=Test OU,DC=pygithub,DC=com"},"content_type":"application/zip","state":"uploaded","size":3783,"download_count":2,"created_at":"2017-02-01T22:40:58Z","updated_at":"2017-02-01T22:44:58Z","browser_download_url":"https://github.com/edhollandAL/PyGithub/releases/download/v1.25.2/Asset.zip"}] + diff --git a/github/tests/ReplayData/Release.testUploadAsset.txt b/github/tests/ReplayData/Release.testUploadAsset.txt new file mode 100644 index 00000000..0def523f --- /dev/null +++ b/github/tests/ReplayData/Release.testUploadAsset.txt @@ -0,0 +1,43 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'a30e6f9aa7cf5731b87dfb3b9992202d'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4947'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306D35:553A03F2'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '07ff1c8a09e44b62e277fae50a1b1dc4'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4946'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5678:6306E14:553A03F3'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:50:59 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210837 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1632'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '139317cebd6caf9cd03889139437f00b'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"26708914904a29b8c9fd2ac006beb9db"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4942'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5677:5265FA1:553A03F5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 24 Apr 2015 08:43:32 GMT'), ('date', 'Fri, 24 Apr 2015 08:51:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210837/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210837,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:43:32Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"} + +https +POST +uploads.github.com +None +/repos/edhollandAL/PyGithub/releases/1210837/assets?label=unit+test+artifact&name=archive.zip +{'Authorization': 'Basic login_and_password_removed', 'Content-Length': 140, 'User-Agent': 'PyGithub/Python', 'Content-Type': 'application/zip'} +null +204 +[('content-length', '150'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '139317cebd6caf9cd03889139437f00b'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"26708914904a29b8c9fd2ac006beb9db"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4942'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:5677:5265FA1:553A03F5'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Fri, 24 Apr 2015 08:43:32 GMT'), ('date', 'Fri, 24 Apr 2015 08:51:01 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/zip'), ('x-ratelimit-reset', '1429867683')] +{"url":"/repos/edhollandAL/PyGithub/releases/1210837/assets/xxx","id":"xxx","name":"archive.zip","label":"unit test artifact","uploader":"unittests"} diff --git a/github/tests/ReplayData/ReleaseAsset.testAttributes.txt b/github/tests/ReplayData/ReleaseAsset.testAttributes.txt new file mode 100644 index 00000000..453abd8d --- /dev/null +++ b/github/tests/ReplayData/ReleaseAsset.testAttributes.txt @@ -0,0 +1,44 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D0:40D04D3:553A014A'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1634'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'b0ef53392caa42315c6206737946d931'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"15acda75d23a5984668bc737c28405e1"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D3:6F632B1:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:39:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210814,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:36:51Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"}] + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210814/assets +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/api/v3/repos/edhollandAL/PyGithub/releases/assets/16","id":16,"name":"Archive.zip","label":"Installation msi & runbook zipped","uploader":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"User","site_admin":false,"ldap_dn":"CN=edhollandAL,OU=Test OU,DC=pygithub,DC=com"},"content_type":"application/zip","state":"uploaded","size":3783,"download_count":2,"created_at":"2017-02-01T22:40:58Z","updated_at":"2017-02-01T22:44:58Z","browser_download_url":"https://github.com/edhollandAL/PyGithub/releases/download/v1.25.2/Asset.zip"}] + diff --git a/github/tests/ReplayData/ReleaseAsset.testDelete.txt b/github/tests/ReplayData/ReleaseAsset.testDelete.txt new file mode 100644 index 00000000..1e177e87 --- /dev/null +++ b/github/tests/ReplayData/ReleaseAsset.testDelete.txt @@ -0,0 +1,54 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D0:40D04D3:553A014A'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1634'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'b0ef53392caa42315c6206737946d931'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"15acda75d23a5984668bc737c28405e1"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D3:6F632B1:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:39:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210814,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:36:51Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"}] + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210814/assets +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/api/v3/repos/edhollandAL/PyGithub/releases/assets/16","id":16,"name":"Archive.zip","label":"Installation msi & runbook zipped","uploader":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"User","site_admin":false,"ldap_dn":"CN=edhollandAL,OU=Test OU,DC=pygithub,DC=com"},"content_type":"application/zip","state":"uploaded","size":3783,"download_count":2,"created_at":"2017-02-01T22:40:58Z","updated_at":"2017-02-01T22:44:58Z","browser_download_url":"https://github.com/edhollandAL/PyGithub/releases/download/v1.25.2/Asset.zip"}] + +https +DELETE +api.github.com +None +/api/v3/repos/edhollandAL/PyGithub/releases/assets/16 +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +204 +[('content-length', '0'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] + diff --git a/github/tests/ReplayData/ReleaseAsset.testUpdate.txt b/github/tests/ReplayData/ReleaseAsset.testUpdate.txt new file mode 100644 index 00000000..a4759667 --- /dev/null +++ b/github/tests/ReplayData/ReleaseAsset.testUpdate.txt @@ -0,0 +1,56 @@ +https +GET +api.github.com +None +/user +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1220'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"a692daa1e912efb3a9048cdbae74bf02"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4970'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D0:40D04D3:553A014A'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 15:34:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false,"public_repos":3,"public_gists":0,"followers":0,"following":0,"created_at":"2015-04-13T09:58:53Z","updated_at":"2015-04-23T15:34:48Z","private_gists":0,"total_private_repos":0,"owned_private_repos":0,"disk_usage":0,"collaborators":0,"plan":{"name":"free","space":976562499,"collaborators":0,"private_repos":0}} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"id":34449703,"name":"PyGithub","full_name":"edhollandAL/PyGithub","owner":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/edhollandAL/PyGithub","description":"Python library implementing the GitHub API v3","fork":true,"url":"https://api.github.com/repos/edhollandAL/PyGithub","forks_url":"https://api.github.com/repos/edhollandAL/PyGithub/forks","keys_url":"https://api.github.com/repos/edhollandAL/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/edhollandAL/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/edhollandAL/PyGithub/teams","hooks_url":"https://api.github.com/repos/edhollandAL/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/edhollandAL/PyGithub/events","assignees_url":"https://api.github.com/repos/edhollandAL/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/edhollandAL/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/tags","blobs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/edhollandAL/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/edhollandAL/PyGithub/languages","stargazers_url":"https://api.github.com/repos/edhollandAL/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/edhollandAL/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/edhollandAL/PyGithub/subscription","commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/edhollandAL/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/edhollandAL/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/edhollandAL/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/edhollandAL/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/edhollandAL/PyGithub/merges","archive_url":"https://api.github.com/repos/edhollandAL/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/edhollandAL/PyGithub/downloads","issues_url":"https://api.github.com/repos/edhollandAL/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/edhollandAL/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/edhollandAL/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/edhollandAL/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/edhollandAL/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases{/id}","created_at":"2015-04-23T10:29:45Z","updated_at":"2015-04-23T10:29:48Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/edhollandAL/PyGithub.git","ssh_url":"git@github.com:edhollandAL/PyGithub.git","clone_url":"https://github.com/edhollandAL/PyGithub.git","svn_url":"https://github.com/edhollandAL/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master","permissions":{"admin":true,"push":true,"pull":true},"parent":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"source":{"id":3544490,"name":"PyGithub","full_name":"PyGithub/PyGithub","owner":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/PyGithub/PyGithub","description":"Python library implementing the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","created_at":"2012-02-25T12:53:47Z","updated_at":"2015-04-23T16:36:27Z","pushed_at":"2015-04-15T20:53:42Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"http://jacquev6.github.io/PyGithub","size":15962,"stargazers_count":579,"watchers_count":579,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":160,"mirror_url":null,"open_issues_count":28,"forks":160,"open_issues":28,"watchers":579,"default_branch":"master"},"network_count":160,"subscribers_count":1} + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '1634'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', 'b0ef53392caa42315c6206737946d931'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"15acda75d23a5984668bc737c28405e1"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4968'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D3:6F632B1:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('date', 'Fri, 24 Apr 2015 08:39:40 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814","assets_url":"https://api.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets","upload_url":"https://uploads.github.com/repos/edhollandAL/PyGithub/releases/1210814/assets{?name}","html_url":"https://github.com/edhollandAL/PyGithub/releases/tag/v1.25.2","id":1210814,"tag_name":"v1.25.2","target_commitish":"master","name":"Test","draft":false,"author":{"login":"edhollandAL","id":11922660,"avatar_url":"https://avatars.githubusercontent.com/u/11922660?v=3","gravatar_id":"","url":"https://api.github.com/users/edhollandAL","html_url":"https://github.com/edhollandAL","followers_url":"https://api.github.com/users/edhollandAL/followers","following_url":"https://api.github.com/users/edhollandAL/following{/other_user}","gists_url":"https://api.github.com/users/edhollandAL/gists{/gist_id}","starred_url":"https://api.github.com/users/edhollandAL/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edhollandAL/subscriptions","organizations_url":"https://api.github.com/users/edhollandAL/orgs","repos_url":"https://api.github.com/users/edhollandAL/repos","events_url":"https://api.github.com/users/edhollandAL/events{/privacy}","received_events_url":"https://api.github.com/users/edhollandAL/received_events","type":"User","site_admin":false},"prerelease":false,"created_at":"2014-10-08T01:54:00Z","published_at":"2015-04-24T08:36:51Z","assets":[],"tarball_url":"https://api.github.com/repos/edhollandAL/PyGithub/tarball/v1.25.2","zipball_url":"https://api.github.com/repos/edhollandAL/PyGithub/zipball/v1.25.2","body":"Body"}] + +https +GET +api.github.com +None +/repos/edhollandAL/PyGithub/releases/1210814/assets +{'Authorization': 'Basic login_and_password_removed', 'User-Agent': 'PyGithub/Python'} +null +200 +[('content-length', '13980'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +[{"url":"https://api.github.com/api/v3/repos/edhollandAL/PyGithub/releases/assets/16","id":16,"name":"Archive.zip","label":"Installation msi & runbook zipped","uploader":{"login":"PyGithub","id":11288996,"avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=3","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"User","site_admin":false,"ldap_dn":"CN=edhollandAL,OU=Test OU,DC=pygithub,DC=com"},"content_type":"application/zip","state":"uploaded","size":3783,"download_count":2,"created_at":"2017-02-01T22:40:58Z","updated_at":"2017-02-01T22:44:58Z","browser_download_url":"https://github.com/edhollandAL/PyGithub/releases/download/v1.25.2/Asset.zip"}] + +https +PATCH +api.github.com +None +/api/v3/repos/edhollandAL/PyGithub/releases/assets/16 +{"Content-Type": "application/json", "Authorization": "Basic login_and_password_removed", "User-Agent": "PyGithub/Python"} +{"name": "updated-name.zip", "label": "Updated label"} +200 +[('content-length', '0'), ('vary', 'Accept, Authorization, Cookie, X-GitHub-OTP, Accept-Encoding'), ('x-served-by', '4c8b2d4732c413f4b9aefe394bd65569'), ('x-xss-protection', '1; mode=block'), ('x-content-type-options', 'nosniff'), ('etag', '"354bfbe5bc3193b117028111f8d7bf5d"'), ('access-control-allow-credentials', 'true'), ('status', '200 OK'), ('x-ratelimit-remaining', '4969'), ('x-github-media-type', 'github.v3; format=json'), ('access-control-expose-headers', 'ETag, Link, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval'), ('x-github-request-id', '56BCFFD3:70D4:71AB7A0:553A014B'), ('cache-control', 'private, max-age=60, s-maxage=60'), ('last-modified', 'Thu, 23 Apr 2015 10:29:48 GMT'), ('date', 'Fri, 24 Apr 2015 08:39:39 GMT'), ('access-control-allow-origin', '*'), ('content-security-policy', "default-src 'none'"), ('strict-transport-security', 'max-age=31536000; includeSubdomains; preload'), ('server', 'GitHub.com'), ('x-ratelimit-limit', '5000'), ('x-frame-options', 'deny'), ('content-type', 'application/json; charset=utf-8'), ('x-ratelimit-reset', '1429867683')] +{"uploader": {"ldap_dn": "CN=edhollandAL,OU=Test Ou OU,OU=KU Online,DC=pygithub,DC=com", "following_url": "https://github.com/api/v3/users/edhollandAL/following{/other_user}", "events_url": "https://github.com/api/v3/users/edhollandAL/events{/privacy}", "organizations_url": "https://github.com/api/v3/users/edhollandAL/orgs", "url": "https://github.com/api/v3/users/edhollandAL", "gists_url": "https://github.com/api/v3/users/edhollandAL/gists{/gist_id}", "html_url": "https://github.com/edhollandAL", "subscriptions_url": "https://github.com/api/v3/users/edhollandAL/subscriptions", "avatar_url": "https://github.com/avatars/u/83?", "repos_url": "https://github.com/api/v3/users/edhollandAL/repos", "received_events_url": "https://github.com/api/v3/users/edhollandAL/received_events", "gravatar_id": "", "starred_url": "https://github.com/api/v3/users/edhollandAL/starred{/owner}{/repo}", "site_admin": false, "login": "PeLopez", "type": "User", "id": 83, "followers_url": "https://github.com/api/v3/users/PeLopez/followers"}, "url": "https://github.com/edhollandAL/PyGithub/releases/assets/16", "created_at": "2017-02-07T20:49:41Z", "updated_at": "2017-02-07T20:49:54Z", "label": "Updated label", "browser_download_url": "https://github.com/edhollandAL/PyGithub/releases/download/v1.25.2/updated-name.zip", "state": "uploaded", "content_type": "application/zip", "download_count": 0, "size": 3783, "id": 73, "name": "updated-name.zip"} + +