{"action":"created","comment":{"url":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/comments/143329031","pull_request_review_id":67831421,"id":143329031,"diff_hunk":"@@ -0,0 +1,111 @@\n+# -*- coding: utf-8; mode: makefile-gmake -*-\n+\n+.DEFAULT = help\n+DEBUG ?= --pdb\n+TEST ?= .\n+\n+# python version to use\n+PY       ?=3\n+# list of python packages (folders) or modules (files) of this build\n+PYOBJECTS = hawkauthlib\n+# folder where the python distribution takes place\n+PYDIST   ?= dist\n+# folder where the python intermediate build files take place\n+PYBUILD  ?= build\n+\n+SYSTEMPYTHON = `which python$(PY) python | head -n 1`\n+VIRTUALENV   = virtualenv --python=$(SYSTEMPYTHON)\n+VTENV_OPTS   = \"--no-site-packages\"\n+TEST_FOLDER  = ./hawkauthlib/tests\n+\n+ENV     = ./local/py$(PY)\n+ENV_BIN = $(ENV)/bin\n+\n+\n+PHONY += help\n+help::\n+\t@echo  'usage:'\n+\t@echo\n+\t@echo  '  build     - build virtualenv ($(ENV)) and install *developer mode*'\n+\t@echo  '  lint      - run pylint within \"build\" (developer mode)'\n+\t@echo  '  test      - run tests for all supported environments (tox)'\n+\t@echo  '  debug     - run tests within a PDB debug session'\n+\t@echo  '  dist      - build packages in \"$(PYDIST)/\"'\n+\t@echo  '  pypi      - upload \"$(PYDIST)/*\" files to PyPi'\n+\t@echo  '  clean\t    - remove most generated files'\n+\t@echo\n+\t@echo  'options:'\n+\t@echo\n+\t@echo  '  PY=3      - python version to use (default 3)'\n+\t@echo  '  TEST=.    - choose test from $(TEST_FOLDER) (default \".\" runs all)'\n+\t@echo  '  DEBUG=    - target \"debug\": do not invoke PDB on errors'\n+\t@echo\n+\t@echo  'When using target \"debug\", set breakpoints within py-source by adding::'\n+\t@echo  '    ...'\n+\t@echo  '    DEBUG()'\n+\t@echo  '    ...'\n+\t@echo\n+\t@echo  'Example; a clean and fresh build (in local/py3), run all tests (py27, py35, lint)::'\n+\t@echo\n+\t@echo  '  make clean build test'\n+\t@echo\n+\t@echo  'Example; debug \"test_<name>.py\" within a python2 session (in local/py2)::'\n+\t@echo\n+\t@echo  '  make PY=2 TEST=test_<name>.py debug'\n+\t@echo\n+\n+\n+PHONY += build\n+build: $(ENV)\n+\t$(ENV_BIN)/pip -v install -e .\n+\n+\n+PHONY += lint\n+lint: $(ENV)\n+\t$(ENV_BIN)/pylint $(PYOBJECTS) --rcfile pylintrc\n+\n+PHONY += test\n+test:  $(ENV)\n+\t$(ENV_BIN)/tox -vv\n+\n+# set breakpoint with:\n+#    DEBUG()\n+# e.g. to run tests in debug mode in emacs use:\n+#   'M-x pdb' ... 'make debug'\n+\n+PHONY += debug\n+debug: build\n+\tDEBUG=$(DEBUG) $(ENV_BIN)/pytest $(DEBUG) -v $(TEST_FOLDER)/$(TEST)\n+\n+$(ENV):\n+\t$(VIRTUALENV) $(VTENV_OPTS) $(ENV)\n+\t$(ENV_BIN)/pip install -r requirements.txt\n+\n+# for distribution, use python from virtualenv\n+PHONY += dist\n+dist:  clean-dist $(ENV)\n+\t$(ENV_BIN)/python setup.py \\\n+\t\tsdist -d $(PYDIST)  \\\n+\t\tbdist_wheel --bdist-dir $(PYBUILD) -d $(PYDIST)\n+\n+PHONY += pypi\n+pypi: dist\n+\t$(ENV_BIN)/twine upload $(PYDIST)/*","path":"Makefile","position":93,"original_position":93,"commit_id":"b38b45396f0e2369d13285223ef04bb382109b74","original_commit_id":"b38b45396f0e2369d13285223ef04bb382109b74","user":{"login":"return42","id":554536,"avatar_url":"https://avatars3.githubusercontent.com/u/554536?v=4","gravatar_id":"","url":"https://api.github.com/users/return42","html_url":"https://github.com/return42","followers_url":"https://api.github.com/users/return42/followers","following_url":"https://api.github.com/users/return42/following{/other_user}","gists_url":"https://api.github.com/users/return42/gists{/gist_id}","starred_url":"https://api.github.com/users/return42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/return42/subscriptions","organizations_url":"https://api.github.com/users/return42/orgs","repos_url":"https://api.github.com/users/return42/repos","events_url":"https://api.github.com/users/return42/events{/privacy}","received_events_url":"https://api.github.com/users/return42/received_events","type":"User","site_admin":false},"body":"Since this is *publishing* at PyPi, I thought `pypi` is a god name for such a target. But it is up to you, if you want, we can name the target `publish`.","created_at":"2017-10-07T11:46:16Z","updated_at":"2017-10-07T11:46:16Z","html_url":"https://github.com/mozilla-services/hawkauthlib/pull/2#discussion_r143329031","pull_request_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/comments/143329031"},"html":{"href":"https://github.com/mozilla-services/hawkauthlib/pull/2#discussion_r143329031"},"pull_request":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2"}},"in_reply_to_id":142056609},"pull_request":{"url":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2","id":142895921,"html_url":"https://github.com/mozilla-services/hawkauthlib/pull/2","diff_url":"https://github.com/mozilla-services/hawkauthlib/pull/2.diff","patch_url":"https://github.com/mozilla-services/hawkauthlib/pull/2.patch","issue_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/issues/2","number":2,"state":"open","locked":false,"title":"Python 2/3 compatibility","user":{"login":"return42","id":554536,"avatar_url":"https://avatars3.githubusercontent.com/u/554536?v=4","gravatar_id":"","url":"https://api.github.com/users/return42","html_url":"https://github.com/return42","followers_url":"https://api.github.com/users/return42/followers","following_url":"https://api.github.com/users/return42/following{/other_user}","gists_url":"https://api.github.com/users/return42/gists{/gist_id}","starred_url":"https://api.github.com/users/return42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/return42/subscriptions","organizations_url":"https://api.github.com/users/return42/orgs","repos_url":"https://api.github.com/users/return42/repos","events_url":"https://api.github.com/users/return42/events{/privacy}","received_events_url":"https://api.github.com/users/return42/received_events","type":"User","site_admin":false},"body":"@rfk here is my first PR for Python 2/3 compatibility we discussed in [1].\r\n\r\n[1] https://github.com/mozilla-services/syncserver/issues/97#issuecomment-331774818\r\n\r\nThanks!\r\n\r\n-- Markus --","created_at":"2017-09-25T14:21:32Z","updated_at":"2017-10-07T11:46:16Z","closed_at":null,"merged_at":null,"merge_commit_sha":"3c2376d46b8b3f84ec752f2d24d331c418e68682","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2/commits","review_comments_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2/comments","review_comment_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/comments{/number}","comments_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/issues/2/comments","statuses_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/statuses/b38b45396f0e2369d13285223ef04bb382109b74","head":{"label":"return42:six","ref":"six","sha":"b38b45396f0e2369d13285223ef04bb382109b74","user":{"login":"return42","id":554536,"avatar_url":"https://avatars3.githubusercontent.com/u/554536?v=4","gravatar_id":"","url":"https://api.github.com/users/return42","html_url":"https://github.com/return42","followers_url":"https://api.github.com/users/return42/followers","following_url":"https://api.github.com/users/return42/following{/other_user}","gists_url":"https://api.github.com/users/return42/gists{/gist_id}","starred_url":"https://api.github.com/users/return42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/return42/subscriptions","organizations_url":"https://api.github.com/users/return42/orgs","repos_url":"https://api.github.com/users/return42/repos","events_url":"https://api.github.com/users/return42/events{/privacy}","received_events_url":"https://api.github.com/users/return42/received_events","type":"User","site_admin":false},"repo":{"id":79152597,"name":"hawkauthlib","full_name":"return42/hawkauthlib","owner":{"login":"return42","id":554536,"avatar_url":"https://avatars3.githubusercontent.com/u/554536?v=4","gravatar_id":"","url":"https://api.github.com/users/return42","html_url":"https://github.com/return42","followers_url":"https://api.github.com/users/return42/followers","following_url":"https://api.github.com/users/return42/following{/other_user}","gists_url":"https://api.github.com/users/return42/gists{/gist_id}","starred_url":"https://api.github.com/users/return42/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/return42/subscriptions","organizations_url":"https://api.github.com/users/return42/orgs","repos_url":"https://api.github.com/users/return42/repos","events_url":"https://api.github.com/users/return42/events{/privacy}","received_events_url":"https://api.github.com/users/return42/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/return42/hawkauthlib","description":"low-level library for implementing MAC Access Authentication","fork":true,"url":"https://api.github.com/repos/return42/hawkauthlib","forks_url":"https://api.github.com/repos/return42/hawkauthlib/forks","keys_url":"https://api.github.com/repos/return42/hawkauthlib/keys{/key_id}","collaborators_url":"https://api.github.com/repos/return42/hawkauthlib/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/return42/hawkauthlib/teams","hooks_url":"https://api.github.com/repos/return42/hawkauthlib/hooks","issue_events_url":"https://api.github.com/repos/return42/hawkauthlib/issues/events{/number}","events_url":"https://api.github.com/repos/return42/hawkauthlib/events","assignees_url":"https://api.github.com/repos/return42/hawkauthlib/assignees{/user}","branches_url":"https://api.github.com/repos/return42/hawkauthlib/branches{/branch}","tags_url":"https://api.github.com/repos/return42/hawkauthlib/tags","blobs_url":"https://api.github.com/repos/return42/hawkauthlib/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/return42/hawkauthlib/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/return42/hawkauthlib/git/refs{/sha}","trees_url":"https://api.github.com/repos/return42/hawkauthlib/git/trees{/sha}","statuses_url":"https://api.github.com/repos/return42/hawkauthlib/statuses/{sha}","languages_url":"https://api.github.com/repos/return42/hawkauthlib/languages","stargazers_url":"https://api.github.com/repos/return42/hawkauthlib/stargazers","contributors_url":"https://api.github.com/repos/return42/hawkauthlib/contributors","subscribers_url":"https://api.github.com/repos/return42/hawkauthlib/subscribers","subscription_url":"https://api.github.com/repos/return42/hawkauthlib/subscription","commits_url":"https://api.github.com/repos/return42/hawkauthlib/commits{/sha}","git_commits_url":"https://api.github.com/repos/return42/hawkauthlib/git/commits{/sha}","comments_url":"https://api.github.com/repos/return42/hawkauthlib/comments{/number}","issue_comment_url":"https://api.github.com/repos/return42/hawkauthlib/issues/comments{/number}","contents_url":"https://api.github.com/repos/return42/hawkauthlib/contents/{+path}","compare_url":"https://api.github.com/repos/return42/hawkauthlib/compare/{base}...{head}","merges_url":"https://api.github.com/repos/return42/hawkauthlib/merges","archive_url":"https://api.github.com/repos/return42/hawkauthlib/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/return42/hawkauthlib/downloads","issues_url":"https://api.github.com/repos/return42/hawkauthlib/issues{/number}","pulls_url":"https://api.github.com/repos/return42/hawkauthlib/pulls{/number}","milestones_url":"https://api.github.com/repos/return42/hawkauthlib/milestones{/number}","notifications_url":"https://api.github.com/repos/return42/hawkauthlib/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/return42/hawkauthlib/labels{/name}","releases_url":"https://api.github.com/repos/return42/hawkauthlib/releases{/id}","deployments_url":"https://api.github.com/repos/return42/hawkauthlib/deployments","created_at":"2017-01-16T19:36:43Z","updated_at":"2017-01-16T19:36:45Z","pushed_at":"2017-02-14T14:02:33Z","git_url":"git://github.com/return42/hawkauthlib.git","ssh_url":"git@github.com:return42/hawkauthlib.git","clone_url":"https://github.com/return42/hawkauthlib.git","svn_url":"https://github.com/return42/hawkauthlib","homepage":null,"size":28,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"six"}},"base":{"label":"mozilla-services:master","ref":"master","sha":"27aeced17a981c2a11855c71b801a19af01b1774","user":{"login":"mozilla-services","id":1066228,"avatar_url":"https://avatars1.githubusercontent.com/u/1066228?v=4","gravatar_id":"","url":"https://api.github.com/users/mozilla-services","html_url":"https://github.com/mozilla-services","followers_url":"https://api.github.com/users/mozilla-services/followers","following_url":"https://api.github.com/users/mozilla-services/following{/other_user}","gists_url":"https://api.github.com/users/mozilla-services/gists{/gist_id}","starred_url":"https://api.github.com/users/mozilla-services/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mozilla-services/subscriptions","organizations_url":"https://api.github.com/users/mozilla-services/orgs","repos_url":"https://api.github.com/users/mozilla-services/repos","events_url":"https://api.github.com/users/mozilla-services/events{/privacy}","received_events_url":"https://api.github.com/users/mozilla-services/received_events","type":"Organization","site_admin":false},"repo":{"id":12207313,"name":"hawkauthlib","full_name":"mozilla-services/hawkauthlib","owner":{"login":"mozilla-services","id":1066228,"avatar_url":"https://avatars1.githubusercontent.com/u/1066228?v=4","gravatar_id":"","url":"https://api.github.com/users/mozilla-services","html_url":"https://github.com/mozilla-services","followers_url":"https://api.github.com/users/mozilla-services/followers","following_url":"https://api.github.com/users/mozilla-services/following{/other_user}","gists_url":"https://api.github.com/users/mozilla-services/gists{/gist_id}","starred_url":"https://api.github.com/users/mozilla-services/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mozilla-services/subscriptions","organizations_url":"https://api.github.com/users/mozilla-services/orgs","repos_url":"https://api.github.com/users/mozilla-services/repos","events_url":"https://api.github.com/users/mozilla-services/events{/privacy}","received_events_url":"https://api.github.com/users/mozilla-services/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/mozilla-services/hawkauthlib","description":"low-level library for implementing MAC Access Authentication","fork":false,"url":"https://api.github.com/repos/mozilla-services/hawkauthlib","forks_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/forks","keys_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/keys{/key_id}","collaborators_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/teams","hooks_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/hooks","issue_events_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/issues/events{/number}","events_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/events","assignees_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/assignees{/user}","branches_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/branches{/branch}","tags_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/tags","blobs_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/git/refs{/sha}","trees_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/git/trees{/sha}","statuses_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/statuses/{sha}","languages_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/languages","stargazers_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/stargazers","contributors_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/contributors","subscribers_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/subscribers","subscription_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/subscription","commits_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/commits{/sha}","git_commits_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/git/commits{/sha}","comments_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/comments{/number}","issue_comment_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/issues/comments{/number}","contents_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/contents/{+path}","compare_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/compare/{base}...{head}","merges_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/merges","archive_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/downloads","issues_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/issues{/number}","pulls_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls{/number}","milestones_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/milestones{/number}","notifications_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/labels{/name}","releases_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/releases{/id}","deployments_url":"https://api.github.com/repos/mozilla-services/hawkauthlib/deployments","created_at":"2013-08-19T04:40:07Z","updated_at":"2017-03-27T21:56:23Z","pushed_at":"2017-09-25T14:21:33Z","git_url":"git://github.com/mozilla-services/hawkauthlib.git","ssh_url":"git@github.com:mozilla-services/hawkauthlib.git","clone_url":"https://github.com/mozilla-services/hawkauthlib.git","svn_url":"https://github.com/mozilla-services/hawkauthlib","homepage":null,"size":132,"stargazers_count":3,"watchers_count":3,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":2,"forks":2,"open_issues":2,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2"},"html":{"href":"https://github.com/mozilla-services/hawkauthlib/pull/2"},"issue":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/issues/2"},"comments":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/issues/2/comments"},"review_comments":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2/comments"},"review_comment":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/pulls/2/commits"},"statuses":{"href":"https://api.github.com/repos/mozilla-services/hawkauthlib/statuses/b38b45396f0e2369d13285223ef04bb382109b74"}},"author_association":"NONE"}}
{"actor":{"display_login":"return42"}}