{"action":"created","comment":{"url":"https://api.github.com/repos/geopython/pycsw/pulls/comments/39348447","id":39348447,"diff_hunk":"@@ -1,21 +1,23 @@\n language: python\n \n+sudo: false\n+\n python:\n   - \"2.7\"\n   - \"2.6\"\n+  - \"3.4\"\n+\n+addons:\n+  apt:\n+    packages:\n+      - libgeos-c1\n+      - libxml2-dev\n \n install:\n-  - sudo apt-get install -y libgeos-c1\n   - pip install . --use-mirrors\n-  - pip install -r ./requirements-standalone.txt\n-  - pip install -r ./requirements-dev.txt\n-  - python ./setup.py -q install\n-\n-before_script:\n-  - sudo add-apt-repository ppa:gcpp-kalxas/ppa-tzotsos -y","path":".travis.yml","position":null,"original_position":24,"commit_id":"af98f188aee44456be869124885de12ef3075898","original_commit_id":"0244342eeab90c878219e589ea5666cc9cc6e8dd","user":{"login":"tomkralidis","id":910430,"avatar_url":"https://avatars.githubusercontent.com/u/910430?v=3","gravatar_id":"","url":"https://api.github.com/users/tomkralidis","html_url":"https://github.com/tomkralidis","followers_url":"https://api.github.com/users/tomkralidis/followers","following_url":"https://api.github.com/users/tomkralidis/following{/other_user}","gists_url":"https://api.github.com/users/tomkralidis/gists{/gist_id}","starred_url":"https://api.github.com/users/tomkralidis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomkralidis/subscriptions","organizations_url":"https://api.github.com/users/tomkralidis/orgs","repos_url":"https://api.github.com/users/tomkralidis/repos","events_url":"https://api.github.com/users/tomkralidis/events{/privacy}","received_events_url":"https://api.github.com/users/tomkralidis/received_events","type":"User","site_admin":false},"body":"Are any of the tests failing which causes OrderedDict to be required?\n\nSent from my iPhone\n\n> On Sep 13, 2015, at 10:25, Filipe <notifications@github.com> wrote:\n> \n> In .travis.yml:\n> \n> >    - pip install . --use-mirrors\n> > -  - pip install -r ./requirements-standalone.txt\n> > -  - pip install -r ./requirements-dev.txt\n> > -  - python ./setup.py -q install\n> > -\n> > -before_script:\n> > -  - sudo add-apt-repository ppa:gcpp-kalxas/ppa-tzotsos -y\n> I'm +1 with pushing the .travis.yml changes immediately in advance of this PR.\n> \n> Makes sense. I actually should not have mixed things here. (Also, this PR might take a little more effort than I thought to make better use of six.moves and Ordereddicts.)\n> \n> Done in #377\n> \n> —\n> Reply to this email directly or view it on GitHub.\n> \n","created_at":"2015-09-13T15:05:15Z","updated_at":"2015-09-13T15:05:15Z","html_url":"https://github.com/geopython/pycsw/pull/376#discussion_r39348447","pull_request_url":"https://api.github.com/repos/geopython/pycsw/pulls/376","_links":{"self":{"href":"https://api.github.com/repos/geopython/pycsw/pulls/comments/39348447"},"html":{"href":"https://github.com/geopython/pycsw/pull/376#discussion_r39348447"},"pull_request":{"href":"https://api.github.com/repos/geopython/pycsw/pulls/376"}}},"pull_request":{"url":"https://api.github.com/repos/geopython/pycsw/pulls/376","id":44814437,"html_url":"https://github.com/geopython/pycsw/pull/376","diff_url":"https://github.com/geopython/pycsw/pull/376.diff","patch_url":"https://github.com/geopython/pycsw/pull/376.patch","issue_url":"https://api.github.com/repos/geopython/pycsw/issues/376","number":376,"state":"open","locked":false,"title":"Python 3 support.","user":{"login":"ocefpaf","id":950575,"avatar_url":"https://avatars.githubusercontent.com/u/950575?v=3","gravatar_id":"","url":"https://api.github.com/users/ocefpaf","html_url":"https://github.com/ocefpaf","followers_url":"https://api.github.com/users/ocefpaf/followers","following_url":"https://api.github.com/users/ocefpaf/following{/other_user}","gists_url":"https://api.github.com/users/ocefpaf/gists{/gist_id}","starred_url":"https://api.github.com/users/ocefpaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ocefpaf/subscriptions","organizations_url":"https://api.github.com/users/ocefpaf/orgs","repos_url":"https://api.github.com/users/ocefpaf/repos","events_url":"https://api.github.com/users/ocefpaf/events{/privacy}","received_events_url":"https://api.github.com/users/ocefpaf/received_events","type":"User","site_admin":false},"body":"This is not ready to be merged.  This PR implements:\r\n\r\n- Preliminary Python3 support\r\n- Travis-CI container (faster) builds\r\n\r\n@QuLogic can you take a look at this?  You are one of the best Python2/3 conversion experts I known :wink: \r\n\r\nNote that we ca use `six.iteritems` instead simply changing `iteritems()` to `items`.  This is just a first draft to get things going.","created_at":"2015-09-11T18:33:31Z","updated_at":"2015-09-13T15:05:15Z","closed_at":null,"merged_at":null,"merge_commit_sha":"bb8296820123786f357535d396c386641f194f6e","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/geopython/pycsw/pulls/376/commits","review_comments_url":"https://api.github.com/repos/geopython/pycsw/pulls/376/comments","review_comment_url":"https://api.github.com/repos/geopython/pycsw/pulls/comments{/number}","comments_url":"https://api.github.com/repos/geopython/pycsw/issues/376/comments","statuses_url":"https://api.github.com/repos/geopython/pycsw/statuses/af98f188aee44456be869124885de12ef3075898","head":{"label":"ocefpaf:py3k","ref":"py3k","sha":"af98f188aee44456be869124885de12ef3075898","user":{"login":"ocefpaf","id":950575,"avatar_url":"https://avatars.githubusercontent.com/u/950575?v=3","gravatar_id":"","url":"https://api.github.com/users/ocefpaf","html_url":"https://github.com/ocefpaf","followers_url":"https://api.github.com/users/ocefpaf/followers","following_url":"https://api.github.com/users/ocefpaf/following{/other_user}","gists_url":"https://api.github.com/users/ocefpaf/gists{/gist_id}","starred_url":"https://api.github.com/users/ocefpaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ocefpaf/subscriptions","organizations_url":"https://api.github.com/users/ocefpaf/orgs","repos_url":"https://api.github.com/users/ocefpaf/repos","events_url":"https://api.github.com/users/ocefpaf/events{/privacy}","received_events_url":"https://api.github.com/users/ocefpaf/received_events","type":"User","site_admin":false},"repo":{"id":42315697,"name":"pycsw","full_name":"ocefpaf/pycsw","owner":{"login":"ocefpaf","id":950575,"avatar_url":"https://avatars.githubusercontent.com/u/950575?v=3","gravatar_id":"","url":"https://api.github.com/users/ocefpaf","html_url":"https://github.com/ocefpaf","followers_url":"https://api.github.com/users/ocefpaf/followers","following_url":"https://api.github.com/users/ocefpaf/following{/other_user}","gists_url":"https://api.github.com/users/ocefpaf/gists{/gist_id}","starred_url":"https://api.github.com/users/ocefpaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ocefpaf/subscriptions","organizations_url":"https://api.github.com/users/ocefpaf/orgs","repos_url":"https://api.github.com/users/ocefpaf/repos","events_url":"https://api.github.com/users/ocefpaf/events{/privacy}","received_events_url":"https://api.github.com/users/ocefpaf/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/ocefpaf/pycsw","description":"pycsw is an OGC CSW server implementation written in Python.  pycsw fully implements the OpenGIS Catalogue Service Implementation Specification [Catalogue Service for the Web]. Initial development started in 2010 (more formally announced in 2011). The project is certified OGC Compliant, and is an OGC Reference Implementation.  pycsw allows for the publishing and discovery of geospatial metadata. Existing repositories of geospatial metadata can also be exposed via OGC:CSW 2.0.2, providing a standards-based metadata and catalogue component of spatial data infrastructures.  pycsw is Open Source, released under an MIT license, and runs on all major platforms (Windows, Linux, Mac OS X).  Please read the docs at http://pycsw.org/docs for more information.","fork":true,"url":"https://api.github.com/repos/ocefpaf/pycsw","forks_url":"https://api.github.com/repos/ocefpaf/pycsw/forks","keys_url":"https://api.github.com/repos/ocefpaf/pycsw/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ocefpaf/pycsw/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ocefpaf/pycsw/teams","hooks_url":"https://api.github.com/repos/ocefpaf/pycsw/hooks","issue_events_url":"https://api.github.com/repos/ocefpaf/pycsw/issues/events{/number}","events_url":"https://api.github.com/repos/ocefpaf/pycsw/events","assignees_url":"https://api.github.com/repos/ocefpaf/pycsw/assignees{/user}","branches_url":"https://api.github.com/repos/ocefpaf/pycsw/branches{/branch}","tags_url":"https://api.github.com/repos/ocefpaf/pycsw/tags","blobs_url":"https://api.github.com/repos/ocefpaf/pycsw/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ocefpaf/pycsw/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ocefpaf/pycsw/git/refs{/sha}","trees_url":"https://api.github.com/repos/ocefpaf/pycsw/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ocefpaf/pycsw/statuses/{sha}","languages_url":"https://api.github.com/repos/ocefpaf/pycsw/languages","stargazers_url":"https://api.github.com/repos/ocefpaf/pycsw/stargazers","contributors_url":"https://api.github.com/repos/ocefpaf/pycsw/contributors","subscribers_url":"https://api.github.com/repos/ocefpaf/pycsw/subscribers","subscription_url":"https://api.github.com/repos/ocefpaf/pycsw/subscription","commits_url":"https://api.github.com/repos/ocefpaf/pycsw/commits{/sha}","git_commits_url":"https://api.github.com/repos/ocefpaf/pycsw/git/commits{/sha}","comments_url":"https://api.github.com/repos/ocefpaf/pycsw/comments{/number}","issue_comment_url":"https://api.github.com/repos/ocefpaf/pycsw/issues/comments{/number}","contents_url":"https://api.github.com/repos/ocefpaf/pycsw/contents/{+path}","compare_url":"https://api.github.com/repos/ocefpaf/pycsw/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ocefpaf/pycsw/merges","archive_url":"https://api.github.com/repos/ocefpaf/pycsw/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ocefpaf/pycsw/downloads","issues_url":"https://api.github.com/repos/ocefpaf/pycsw/issues{/number}","pulls_url":"https://api.github.com/repos/ocefpaf/pycsw/pulls{/number}","milestones_url":"https://api.github.com/repos/ocefpaf/pycsw/milestones{/number}","notifications_url":"https://api.github.com/repos/ocefpaf/pycsw/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ocefpaf/pycsw/labels{/name}","releases_url":"https://api.github.com/repos/ocefpaf/pycsw/releases{/id}","created_at":"2015-09-11T15:13:39Z","updated_at":"2015-09-11T15:13:41Z","pushed_at":"2015-09-13T14:43:03Z","git_url":"git://github.com/ocefpaf/pycsw.git","ssh_url":"git@github.com:ocefpaf/pycsw.git","clone_url":"https://github.com/ocefpaf/pycsw.git","svn_url":"https://github.com/ocefpaf/pycsw","homepage":"http://pycsw.org/","size":5058,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"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":"master"}},"base":{"label":"geopython:master","ref":"master","sha":"fca83cdf29983a93d1390d67e25ca2d35c07c11d","user":{"login":"geopython","id":1855122,"avatar_url":"https://avatars.githubusercontent.com/u/1855122?v=3","gravatar_id":"","url":"https://api.github.com/users/geopython","html_url":"https://github.com/geopython","followers_url":"https://api.github.com/users/geopython/followers","following_url":"https://api.github.com/users/geopython/following{/other_user}","gists_url":"https://api.github.com/users/geopython/gists{/gist_id}","starred_url":"https://api.github.com/users/geopython/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geopython/subscriptions","organizations_url":"https://api.github.com/users/geopython/orgs","repos_url":"https://api.github.com/users/geopython/repos","events_url":"https://api.github.com/users/geopython/events{/privacy}","received_events_url":"https://api.github.com/users/geopython/received_events","type":"Organization","site_admin":false},"repo":{"id":2367090,"name":"pycsw","full_name":"geopython/pycsw","owner":{"login":"geopython","id":1855122,"avatar_url":"https://avatars.githubusercontent.com/u/1855122?v=3","gravatar_id":"","url":"https://api.github.com/users/geopython","html_url":"https://github.com/geopython","followers_url":"https://api.github.com/users/geopython/followers","following_url":"https://api.github.com/users/geopython/following{/other_user}","gists_url":"https://api.github.com/users/geopython/gists{/gist_id}","starred_url":"https://api.github.com/users/geopython/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geopython/subscriptions","organizations_url":"https://api.github.com/users/geopython/orgs","repos_url":"https://api.github.com/users/geopython/repos","events_url":"https://api.github.com/users/geopython/events{/privacy}","received_events_url":"https://api.github.com/users/geopython/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/geopython/pycsw","description":"pycsw is an OGC CSW server implementation written in Python.  pycsw fully implements the OpenGIS Catalogue Service Implementation Specification [Catalogue Service for the Web]. Initial development started in 2010 (more formally announced in 2011). The project is certified OGC Compliant, and is an OGC Reference Implementation.  pycsw allows for the publishing and discovery of geospatial metadata. Existing repositories of geospatial metadata can also be exposed via OGC:CSW 2.0.2, providing a standards-based metadata and catalogue component of spatial data infrastructures.  pycsw is Open Source, released under an MIT license, and runs on all major platforms (Windows, Linux, Mac OS X).  Please read the docs at http://pycsw.org/docs for more information.","fork":false,"url":"https://api.github.com/repos/geopython/pycsw","forks_url":"https://api.github.com/repos/geopython/pycsw/forks","keys_url":"https://api.github.com/repos/geopython/pycsw/keys{/key_id}","collaborators_url":"https://api.github.com/repos/geopython/pycsw/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/geopython/pycsw/teams","hooks_url":"https://api.github.com/repos/geopython/pycsw/hooks","issue_events_url":"https://api.github.com/repos/geopython/pycsw/issues/events{/number}","events_url":"https://api.github.com/repos/geopython/pycsw/events","assignees_url":"https://api.github.com/repos/geopython/pycsw/assignees{/user}","branches_url":"https://api.github.com/repos/geopython/pycsw/branches{/branch}","tags_url":"https://api.github.com/repos/geopython/pycsw/tags","blobs_url":"https://api.github.com/repos/geopython/pycsw/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/geopython/pycsw/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/geopython/pycsw/git/refs{/sha}","trees_url":"https://api.github.com/repos/geopython/pycsw/git/trees{/sha}","statuses_url":"https://api.github.com/repos/geopython/pycsw/statuses/{sha}","languages_url":"https://api.github.com/repos/geopython/pycsw/languages","stargazers_url":"https://api.github.com/repos/geopython/pycsw/stargazers","contributors_url":"https://api.github.com/repos/geopython/pycsw/contributors","subscribers_url":"https://api.github.com/repos/geopython/pycsw/subscribers","subscription_url":"https://api.github.com/repos/geopython/pycsw/subscription","commits_url":"https://api.github.com/repos/geopython/pycsw/commits{/sha}","git_commits_url":"https://api.github.com/repos/geopython/pycsw/git/commits{/sha}","comments_url":"https://api.github.com/repos/geopython/pycsw/comments{/number}","issue_comment_url":"https://api.github.com/repos/geopython/pycsw/issues/comments{/number}","contents_url":"https://api.github.com/repos/geopython/pycsw/contents/{+path}","compare_url":"https://api.github.com/repos/geopython/pycsw/compare/{base}...{head}","merges_url":"https://api.github.com/repos/geopython/pycsw/merges","archive_url":"https://api.github.com/repos/geopython/pycsw/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/geopython/pycsw/downloads","issues_url":"https://api.github.com/repos/geopython/pycsw/issues{/number}","pulls_url":"https://api.github.com/repos/geopython/pycsw/pulls{/number}","milestones_url":"https://api.github.com/repos/geopython/pycsw/milestones{/number}","notifications_url":"https://api.github.com/repos/geopython/pycsw/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/geopython/pycsw/labels{/name}","releases_url":"https://api.github.com/repos/geopython/pycsw/releases{/id}","created_at":"2011-09-11T19:38:07Z","updated_at":"2015-07-02T17:18:06Z","pushed_at":"2015-09-13T14:43:04Z","git_url":"git://github.com/geopython/pycsw.git","ssh_url":"git@github.com:geopython/pycsw.git","clone_url":"https://github.com/geopython/pycsw.git","svn_url":"https://github.com/geopython/pycsw","homepage":"http://pycsw.org/","size":8748,"stargazers_count":50,"watchers_count":50,"language":"Python","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":49,"mirror_url":null,"open_issues_count":45,"forks":49,"open_issues":45,"watchers":50,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/geopython/pycsw/pulls/376"},"html":{"href":"https://github.com/geopython/pycsw/pull/376"},"issue":{"href":"https://api.github.com/repos/geopython/pycsw/issues/376"},"comments":{"href":"https://api.github.com/repos/geopython/pycsw/issues/376/comments"},"review_comments":{"href":"https://api.github.com/repos/geopython/pycsw/pulls/376/comments"},"review_comment":{"href":"https://api.github.com/repos/geopython/pycsw/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/geopython/pycsw/pulls/376/commits"},"statuses":{"href":"https://api.github.com/repos/geopython/pycsw/statuses/af98f188aee44456be869124885de12ef3075898"}}}}