{"action":"closed","number":1133,"pull_request":{"url":"https://api.github.com/repos/quantumlib/Cirq/pulls/1133","id":229253591,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI5MjUzNTkx","html_url":"https://github.com/quantumlib/Cirq/pull/1133","diff_url":"https://github.com/quantumlib/Cirq/pull/1133.diff","patch_url":"https://github.com/quantumlib/Cirq/pull/1133.patch","issue_url":"https://api.github.com/repos/quantumlib/Cirq/issues/1133","number":1133,"state":"closed","locked":false,"title":"Add publish-dev-package and verify-published-package scripts","user":{"login":"Strilanc","id":79941,"node_id":"MDQ6VXNlcjc5OTQx","avatar_url":"https://avatars1.githubusercontent.com/u/79941?v=4","gravatar_id":"","url":"https://api.github.com/users/Strilanc","html_url":"https://github.com/Strilanc","followers_url":"https://api.github.com/users/Strilanc/followers","following_url":"https://api.github.com/users/Strilanc/following{/other_user}","gists_url":"https://api.github.com/users/Strilanc/gists{/gist_id}","starred_url":"https://api.github.com/users/Strilanc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Strilanc/subscriptions","organizations_url":"https://api.github.com/users/Strilanc/orgs","repos_url":"https://api.github.com/users/Strilanc/repos","events_url":"https://api.github.com/users/Strilanc/events{/privacy}","received_events_url":"https://api.github.com/users/Strilanc/received_events","type":"User","site_admin":false},"body":"- Move packaging scripts into dev_tools/packaging\r\n- Refactor publish-to-test-pypi into publish-dev-package\r\n\r\nExample usage and output:\r\n\r\n```bash\r\n$ ./dev_tools/packaging/publish-dev-package.sh 0.4.0.dev42\r\n```\r\n\r\n```\r\nProducing package with version 0.4.0.dev4220181107211638 to upload to TEST pypi repository\r\nProducing python 3 package files...\r\nGenerating python 2.7 source...\r\nProducing python 2.7 package files...\r\ncirq-0.4.0.dev4220181107211638-py2-none-any.whl  cirq-0.4.0.dev4220181107211638-py3-none-any.whl\r\nUploading distributions to https://test.pypi.org/legacy/\r\nUploading cirq-0.4.0.dev4220181107211638-py3-none-any.whl\r\n100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 526k/526k [00:02<00:00, 244kB/s]\r\nUploading cirq-0.4.0.dev4220181107211638-py2-none-any.whl\r\n100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 499k/499k [00:01<00:00, 275kB/s]\r\nUploaded package with version 0.4.0.dev4220181107211638 to TEST pypi repository\r\n```\r\n\r\n```bash\r\n$ ./dev_tools/packaging/verify-published-package.sh 0.4.0.dev4220181107211638 --test\r\n```\r\n\r\n```\r\npython2\r\nWorking in a fresh virtualenv at /tmp/verify-published-package.3b7tvOh6VRcx8lLp/python2\r\nPre-installing dependencies since they don't all exist in TEST pypi\r\nInstalling cirq==0.4.0.dev4220181107211638 from TEST pypi\r\nChecking that code executes\r\n(0, 0)───(0, 1)───(0, 2)───(0, 3)───(0, 4)───(0, 5)───(0, 6)───(0, 7)───(0, 8)───(0, 9)───(0, 10)\r\n│        │        │        │        │        │        │        │        │        │        │\r\n│        │        │        │        │        │        │        │        │        │        │\r\n(1, 0)───(1, 1)───(1, 2)───(1, 3)───(1, 4)───(1, 5)───(1, 6)───(1, 7)───(1, 8)───(1, 9)───(1, 10)\r\n0: ───@───\r\n      │\r\n1: ───@───\r\nInstalling pytest requirements\r\nRunning tests\r\n...[...]...\r\n5217 passed, 3 warnings in 44.93 seconds\r\n\r\npython3\r\nWorking in a fresh virtualenv at /tmp/verify-published-package.3b7tvOh6VRcx8lLp/python3\r\nPre-installing dependencies since they don't all exist in TEST pypi\r\nInstalling cirq==0.4.0.dev4220181107211638 from TEST pypi\r\nChecking that code executes\r\n(0, 0)───(0, 1)───(0, 2)───(0, 3)───(0, 4)───(0, 5)───(0, 6)───(0, 7)───(0, 8)───(0, 9)───(0, 10)\r\n│        │        │        │        │        │        │        │        │        │        │\r\n│        │        │        │        │        │        │        │        │        │        │\r\n(1, 0)───(1, 1)───(1, 2)───(1, 3)───(1, 4)───(1, 5)───(1, 6)───(1, 7)───(1, 8)───(1, 9)───(1, 10)\r\n0: ───@───\r\n      │\r\n1: ───@───\r\nInstalling pytest requirements\r\nRunning tests\r\n...[...]...\r\n5232 passed, 455 warnings in 40.47 seconds\r\n\r\nVERIFIED\r\n```","created_at":"2018-11-08T05:23:17Z","updated_at":"2018-11-08T23:50:20Z","closed_at":"2018-11-08T23:50:20Z","merged_at":"2018-11-08T23:50:20Z","merge_commit_sha":"ee2a6d3e9fb1baf0747a4aede854fe03ba23a086","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":991109560,"node_id":"MDU6TGFiZWw5OTExMDk1NjA=","url":"https://api.github.com/repos/quantumlib/Cirq/labels/automerge","name":"automerge","color":"c6ffb2","default":false},{"id":922112536,"node_id":"MDU6TGFiZWw5MjIxMTI1MzY=","url":"https://api.github.com/repos/quantumlib/Cirq/labels/cla:%20yes","name":"cla: yes","color":"FFFFFF","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/quantumlib/Cirq/pulls/1133/commits","review_comments_url":"https://api.github.com/repos/quantumlib/Cirq/pulls/1133/comments","review_comment_url":"https://api.github.com/repos/quantumlib/Cirq/pulls/comments{/number}","comments_url":"https://api.github.com/repos/quantumlib/Cirq/issues/1133/comments","statuses_url":"https://api.github.com/repos/quantumlib/Cirq/statuses/33bd4308e4014609d343faa122d7930db3010821","head":{"label":"quantumlib:release0","ref":"release0","sha":"33bd4308e4014609d343faa122d7930db3010821","user":{"login":"quantumlib","id":31279789,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMxMjc5Nzg5","avatar_url":"https://avatars1.githubusercontent.com/u/31279789?v=4","gravatar_id":"","url":"https://api.github.com/users/quantumlib","html_url":"https://github.com/quantumlib","followers_url":"https://api.github.com/users/quantumlib/followers","following_url":"https://api.github.com/users/quantumlib/following{/other_user}","gists_url":"https://api.github.com/users/quantumlib/gists{/gist_id}","starred_url":"https://api.github.com/users/quantumlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quantumlib/subscriptions","organizations_url":"https://api.github.com/users/quantumlib/orgs","repos_url":"https://api.github.com/users/quantumlib/repos","events_url":"https://api.github.com/users/quantumlib/events{/privacy}","received_events_url":"https://api.github.com/users/quantumlib/received_events","type":"Organization","site_admin":false},"repo":{"id":114306758,"node_id":"MDEwOlJlcG9zaXRvcnkxMTQzMDY3NTg=","name":"Cirq","full_name":"quantumlib/Cirq","private":false,"owner":{"login":"quantumlib","id":31279789,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMxMjc5Nzg5","avatar_url":"https://avatars1.githubusercontent.com/u/31279789?v=4","gravatar_id":"","url":"https://api.github.com/users/quantumlib","html_url":"https://github.com/quantumlib","followers_url":"https://api.github.com/users/quantumlib/followers","following_url":"https://api.github.com/users/quantumlib/following{/other_user}","gists_url":"https://api.github.com/users/quantumlib/gists{/gist_id}","starred_url":"https://api.github.com/users/quantumlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quantumlib/subscriptions","organizations_url":"https://api.github.com/users/quantumlib/orgs","repos_url":"https://api.github.com/users/quantumlib/repos","events_url":"https://api.github.com/users/quantumlib/events{/privacy}","received_events_url":"https://api.github.com/users/quantumlib/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/quantumlib/Cirq","description":"A python framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.","fork":false,"url":"https://api.github.com/repos/quantumlib/Cirq","forks_url":"https://api.github.com/repos/quantumlib/Cirq/forks","keys_url":"https://api.github.com/repos/quantumlib/Cirq/keys{/key_id}","collaborators_url":"https://api.github.com/repos/quantumlib/Cirq/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/quantumlib/Cirq/teams","hooks_url":"https://api.github.com/repos/quantumlib/Cirq/hooks","issue_events_url":"https://api.github.com/repos/quantumlib/Cirq/issues/events{/number}","events_url":"https://api.github.com/repos/quantumlib/Cirq/events","assignees_url":"https://api.github.com/repos/quantumlib/Cirq/assignees{/user}","branches_url":"https://api.github.com/repos/quantumlib/Cirq/branches{/branch}","tags_url":"https://api.github.com/repos/quantumlib/Cirq/tags","blobs_url":"https://api.github.com/repos/quantumlib/Cirq/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/quantumlib/Cirq/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/quantumlib/Cirq/git/refs{/sha}","trees_url":"https://api.github.com/repos/quantumlib/Cirq/git/trees{/sha}","statuses_url":"https://api.github.com/repos/quantumlib/Cirq/statuses/{sha}","languages_url":"https://api.github.com/repos/quantumlib/Cirq/languages","stargazers_url":"https://api.github.com/repos/quantumlib/Cirq/stargazers","contributors_url":"https://api.github.com/repos/quantumlib/Cirq/contributors","subscribers_url":"https://api.github.com/repos/quantumlib/Cirq/subscribers","subscription_url":"https://api.github.com/repos/quantumlib/Cirq/subscription","commits_url":"https://api.github.com/repos/quantumlib/Cirq/commits{/sha}","git_commits_url":"https://api.github.com/repos/quantumlib/Cirq/git/commits{/sha}","comments_url":"https://api.github.com/repos/quantumlib/Cirq/comments{/number}","issue_comment_url":"https://api.github.com/repos/quantumlib/Cirq/issues/comments{/number}","contents_url":"https://api.github.com/repos/quantumlib/Cirq/contents/{+path}","compare_url":"https://api.github.com/repos/quantumlib/Cirq/compare/{base}...{head}","merges_url":"https://api.github.com/repos/quantumlib/Cirq/merges","archive_url":"https://api.github.com/repos/quantumlib/Cirq/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/quantumlib/Cirq/downloads","issues_url":"https://api.github.com/repos/quantumlib/Cirq/issues{/number}","pulls_url":"https://api.github.com/repos/quantumlib/Cirq/pulls{/number}","milestones_url":"https://api.github.com/repos/quantumlib/Cirq/milestones{/number}","notifications_url":"https://api.github.com/repos/quantumlib/Cirq/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/quantumlib/Cirq/labels{/name}","releases_url":"https://api.github.com/repos/quantumlib/Cirq/releases{/id}","deployments_url":"https://api.github.com/repos/quantumlib/Cirq/deployments","created_at":"2017-12-14T23:41:49Z","updated_at":"2018-11-08T23:10:19Z","pushed_at":"2018-11-08T23:50:20Z","git_url":"git://github.com/quantumlib/Cirq.git","ssh_url":"git@github.com:quantumlib/Cirq.git","clone_url":"https://github.com/quantumlib/Cirq.git","svn_url":"https://github.com/quantumlib/Cirq","homepage":"","size":2782,"stargazers_count":1196,"watchers_count":1196,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":161,"mirror_url":null,"archived":false,"open_issues_count":192,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":161,"open_issues":192,"watchers":1196,"default_branch":"master"}},"base":{"label":"quantumlib:master","ref":"master","sha":"5aac678433f1a827773264c0136fb0c86a098bf6","user":{"login":"quantumlib","id":31279789,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMxMjc5Nzg5","avatar_url":"https://avatars1.githubusercontent.com/u/31279789?v=4","gravatar_id":"","url":"https://api.github.com/users/quantumlib","html_url":"https://github.com/quantumlib","followers_url":"https://api.github.com/users/quantumlib/followers","following_url":"https://api.github.com/users/quantumlib/following{/other_user}","gists_url":"https://api.github.com/users/quantumlib/gists{/gist_id}","starred_url":"https://api.github.com/users/quantumlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quantumlib/subscriptions","organizations_url":"https://api.github.com/users/quantumlib/orgs","repos_url":"https://api.github.com/users/quantumlib/repos","events_url":"https://api.github.com/users/quantumlib/events{/privacy}","received_events_url":"https://api.github.com/users/quantumlib/received_events","type":"Organization","site_admin":false},"repo":{"id":114306758,"node_id":"MDEwOlJlcG9zaXRvcnkxMTQzMDY3NTg=","name":"Cirq","full_name":"quantumlib/Cirq","private":false,"owner":{"login":"quantumlib","id":31279789,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMxMjc5Nzg5","avatar_url":"https://avatars1.githubusercontent.com/u/31279789?v=4","gravatar_id":"","url":"https://api.github.com/users/quantumlib","html_url":"https://github.com/quantumlib","followers_url":"https://api.github.com/users/quantumlib/followers","following_url":"https://api.github.com/users/quantumlib/following{/other_user}","gists_url":"https://api.github.com/users/quantumlib/gists{/gist_id}","starred_url":"https://api.github.com/users/quantumlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quantumlib/subscriptions","organizations_url":"https://api.github.com/users/quantumlib/orgs","repos_url":"https://api.github.com/users/quantumlib/repos","events_url":"https://api.github.com/users/quantumlib/events{/privacy}","received_events_url":"https://api.github.com/users/quantumlib/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/quantumlib/Cirq","description":"A python framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.","fork":false,"url":"https://api.github.com/repos/quantumlib/Cirq","forks_url":"https://api.github.com/repos/quantumlib/Cirq/forks","keys_url":"https://api.github.com/repos/quantumlib/Cirq/keys{/key_id}","collaborators_url":"https://api.github.com/repos/quantumlib/Cirq/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/quantumlib/Cirq/teams","hooks_url":"https://api.github.com/repos/quantumlib/Cirq/hooks","issue_events_url":"https://api.github.com/repos/quantumlib/Cirq/issues/events{/number}","events_url":"https://api.github.com/repos/quantumlib/Cirq/events","assignees_url":"https://api.github.com/repos/quantumlib/Cirq/assignees{/user}","branches_url":"https://api.github.com/repos/quantumlib/Cirq/branches{/branch}","tags_url":"https://api.github.com/repos/quantumlib/Cirq/tags","blobs_url":"https://api.github.com/repos/quantumlib/Cirq/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/quantumlib/Cirq/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/quantumlib/Cirq/git/refs{/sha}","trees_url":"https://api.github.com/repos/quantumlib/Cirq/git/trees{/sha}","statuses_url":"https://api.github.com/repos/quantumlib/Cirq/statuses/{sha}","languages_url":"https://api.github.com/repos/quantumlib/Cirq/languages","stargazers_url":"https://api.github.com/repos/quantumlib/Cirq/stargazers","contributors_url":"https://api.github.com/repos/quantumlib/Cirq/contributors","subscribers_url":"https://api.github.com/repos/quantumlib/Cirq/subscribers","subscription_url":"https://api.github.com/repos/quantumlib/Cirq/subscription","commits_url":"https://api.github.com/repos/quantumlib/Cirq/commits{/sha}","git_commits_url":"https://api.github.com/repos/quantumlib/Cirq/git/commits{/sha}","comments_url":"https://api.github.com/repos/quantumlib/Cirq/comments{/number}","issue_comment_url":"https://api.github.com/repos/quantumlib/Cirq/issues/comments{/number}","contents_url":"https://api.github.com/repos/quantumlib/Cirq/contents/{+path}","compare_url":"https://api.github.com/repos/quantumlib/Cirq/compare/{base}...{head}","merges_url":"https://api.github.com/repos/quantumlib/Cirq/merges","archive_url":"https://api.github.com/repos/quantumlib/Cirq/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/quantumlib/Cirq/downloads","issues_url":"https://api.github.com/repos/quantumlib/Cirq/issues{/number}","pulls_url":"https://api.github.com/repos/quantumlib/Cirq/pulls{/number}","milestones_url":"https://api.github.com/repos/quantumlib/Cirq/milestones{/number}","notifications_url":"https://api.github.com/repos/quantumlib/Cirq/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/quantumlib/Cirq/labels{/name}","releases_url":"https://api.github.com/repos/quantumlib/Cirq/releases{/id}","deployments_url":"https://api.github.com/repos/quantumlib/Cirq/deployments","created_at":"2017-12-14T23:41:49Z","updated_at":"2018-11-08T23:10:19Z","pushed_at":"2018-11-08T23:50:20Z","git_url":"git://github.com/quantumlib/Cirq.git","ssh_url":"git@github.com:quantumlib/Cirq.git","clone_url":"https://github.com/quantumlib/Cirq.git","svn_url":"https://github.com/quantumlib/Cirq","homepage":"","size":2782,"stargazers_count":1196,"watchers_count":1196,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":161,"mirror_url":null,"archived":false,"open_issues_count":192,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":161,"open_issues":192,"watchers":1196,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/quantumlib/Cirq/pulls/1133"},"html":{"href":"https://github.com/quantumlib/Cirq/pull/1133"},"issue":{"href":"https://api.github.com/repos/quantumlib/Cirq/issues/1133"},"comments":{"href":"https://api.github.com/repos/quantumlib/Cirq/issues/1133/comments"},"review_comments":{"href":"https://api.github.com/repos/quantumlib/Cirq/pulls/1133/comments"},"review_comment":{"href":"https://api.github.com/repos/quantumlib/Cirq/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/quantumlib/Cirq/pulls/1133/commits"},"statuses":{"href":"https://api.github.com/repos/quantumlib/Cirq/statuses/33bd4308e4014609d343faa122d7930db3010821"}},"author_association":"CONTRIBUTOR","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"CirqBot","id":41170217,"node_id":"MDQ6VXNlcjQxMTcwMjE3","avatar_url":"https://avatars0.githubusercontent.com/u/41170217?v=4","gravatar_id":"","url":"https://api.github.com/users/CirqBot","html_url":"https://github.com/CirqBot","followers_url":"https://api.github.com/users/CirqBot/followers","following_url":"https://api.github.com/users/CirqBot/following{/other_user}","gists_url":"https://api.github.com/users/CirqBot/gists{/gist_id}","starred_url":"https://api.github.com/users/CirqBot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CirqBot/subscriptions","organizations_url":"https://api.github.com/users/CirqBot/orgs","repos_url":"https://api.github.com/users/CirqBot/repos","events_url":"https://api.github.com/users/CirqBot/events{/privacy}","received_events_url":"https://api.github.com/users/CirqBot/received_events","type":"User","site_admin":false},"comments":1,"review_comments":0,"maintainer_can_modify":false,"commits":2,"additions":226,"deletions":51,"changed_files":5}}
{"actor":{"display_login":"CirqBot"}}