{"action":"created","comment":{"url":"https://api.github.com/repos/diaspora/diaspora/pulls/comments/33637866","id":33637866,"diff_hunk":"@@ -241,15 +238,52 @@ def exported_key= new_key\n     serialized_public_key = new_key\n   end\n \n-  #database calls\n+  def username\n+    @username ||= owner ? owner.username : diaspora_handle.split(\"@\")[0]\n+  end\n+\n+  def webfinger_hash","path":"app/models/person.rb","position":67,"original_position":67,"commit_id":"509010b8c3d4f3a012f8129934ff7c1fdd4a4560","original_commit_id":"509010b8c3d4f3a012f8129934ff7c1fdd4a4560","user":{"login":"houndci","id":6697940,"avatar_url":"https://avatars.githubusercontent.com/u/6697940?v=3","gravatar_id":"","url":"https://api.github.com/users/houndci","html_url":"https://github.com/houndci","followers_url":"https://api.github.com/users/houndci/followers","following_url":"https://api.github.com/users/houndci/following{/other_user}","gists_url":"https://api.github.com/users/houndci/gists{/gist_id}","starred_url":"https://api.github.com/users/houndci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/houndci/subscriptions","organizations_url":"https://api.github.com/users/houndci/orgs","repos_url":"https://api.github.com/users/houndci/repos","events_url":"https://api.github.com/users/houndci/events{/privacy}","received_events_url":"https://api.github.com/users/houndci/received_events","type":"User","site_admin":false},"body":"Assignment Branch Condition size for webfinger_hash is too high. [16/15]","created_at":"2015-07-01T00:05:06Z","updated_at":"2015-07-01T00:05:06Z","html_url":"https://github.com/diaspora/diaspora/pull/6151#discussion_r33637866","pull_request_url":"https://api.github.com/repos/diaspora/diaspora/pulls/6151","_links":{"self":{"href":"https://api.github.com/repos/diaspora/diaspora/pulls/comments/33637866"},"html":{"href":"https://github.com/diaspora/diaspora/pull/6151#discussion_r33637866"},"pull_request":{"href":"https://api.github.com/repos/diaspora/diaspora/pulls/6151"}}},"pull_request":{"url":"https://api.github.com/repos/diaspora/diaspora/pulls/6151","id":38937201,"html_url":"https://github.com/diaspora/diaspora/pull/6151","diff_url":"https://github.com/diaspora/diaspora/pull/6151.diff","patch_url":"https://github.com/diaspora/diaspora/pull/6151.patch","issue_url":"https://api.github.com/repos/diaspora/diaspora/issues/6151","number":6151,"state":"open","locked":false,"title":"Federation Gem Step 1: Webfinger/HCard generation","user":{"login":"SuperTux88","id":458548,"avatar_url":"https://avatars.githubusercontent.com/u/458548?v=3","gravatar_id":"","url":"https://api.github.com/users/SuperTux88","html_url":"https://github.com/SuperTux88","followers_url":"https://api.github.com/users/SuperTux88/followers","following_url":"https://api.github.com/users/SuperTux88/following{/other_user}","gists_url":"https://api.github.com/users/SuperTux88/gists{/gist_id}","starred_url":"https://api.github.com/users/SuperTux88/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SuperTux88/subscriptions","organizations_url":"https://api.github.com/users/SuperTux88/orgs","repos_url":"https://api.github.com/users/SuperTux88/repos","events_url":"https://api.github.com/users/SuperTux88/events{/privacy}","received_events_url":"https://api.github.com/users/SuperTux88/received_events","type":"User","site_admin":false},"body":"I'm working on a new federation gem. This is built as a rails engine, so it can simply be mounted to a rails-app and provide the URLs that are needed for the federation. Some parts are based on @Raven24's old federation gem. After the diaspora_federation gem is complete, we can move this to the diaspora organization.\r\n\r\nI also integrate the new gem into diaspora and I want to create several small pull requests for this, so that it is better to review with small changes.\r\n\r\nIn the first step I replaced the host-meta, webfinger and hcard generation with the new diaspora_federation gem. Everything else is still working as before.\r\n\r\nI wrote a new spec, which generates the fixtures with the new controllers. So the existing parser is tested with the new generator. This can be removed again when the parsing is also done in the gem.\r\n\r\nAlso done in this PR:\r\n* refactored the atom_url to contain the .atom suffix\r\n* dropped caches_page, this fixes #5143\r\n* removed unused publics_helper, this was unused since 2010\r\n* don't get ```person.url``` from the hcard, this is already set from the webfinger\r\n\r\n@denschub reviews my work at the gem on a regular basis, I think he can also review this PR :)","created_at":"2015-07-01T00:04:50Z","updated_at":"2015-07-01T00:05:06Z","closed_at":null,"merged_at":null,"merge_commit_sha":"39bef7f12fb787b62926035cb0496ac3ced43d15","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/diaspora/diaspora/pulls/6151/commits","review_comments_url":"https://api.github.com/repos/diaspora/diaspora/pulls/6151/comments","review_comment_url":"https://api.github.com/repos/diaspora/diaspora/pulls/comments{/number}","comments_url":"https://api.github.com/repos/diaspora/diaspora/issues/6151/comments","statuses_url":"https://api.github.com/repos/diaspora/diaspora/statuses/509010b8c3d4f3a012f8129934ff7c1fdd4a4560","head":{"label":"SuperTux88:federation-gem","ref":"federation-gem","sha":"509010b8c3d4f3a012f8129934ff7c1fdd4a4560","user":{"login":"SuperTux88","id":458548,"avatar_url":"https://avatars.githubusercontent.com/u/458548?v=3","gravatar_id":"","url":"https://api.github.com/users/SuperTux88","html_url":"https://github.com/SuperTux88","followers_url":"https://api.github.com/users/SuperTux88/followers","following_url":"https://api.github.com/users/SuperTux88/following{/other_user}","gists_url":"https://api.github.com/users/SuperTux88/gists{/gist_id}","starred_url":"https://api.github.com/users/SuperTux88/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SuperTux88/subscriptions","organizations_url":"https://api.github.com/users/SuperTux88/orgs","repos_url":"https://api.github.com/users/SuperTux88/repos","events_url":"https://api.github.com/users/SuperTux88/events{/privacy}","received_events_url":"https://api.github.com/users/SuperTux88/received_events","type":"User","site_admin":false},"repo":{"id":2855437,"name":"diaspora","full_name":"SuperTux88/diaspora","owner":{"login":"SuperTux88","id":458548,"avatar_url":"https://avatars.githubusercontent.com/u/458548?v=3","gravatar_id":"","url":"https://api.github.com/users/SuperTux88","html_url":"https://github.com/SuperTux88","followers_url":"https://api.github.com/users/SuperTux88/followers","following_url":"https://api.github.com/users/SuperTux88/following{/other_user}","gists_url":"https://api.github.com/users/SuperTux88/gists{/gist_id}","starred_url":"https://api.github.com/users/SuperTux88/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SuperTux88/subscriptions","organizations_url":"https://api.github.com/users/SuperTux88/orgs","repos_url":"https://api.github.com/users/SuperTux88/repos","events_url":"https://api.github.com/users/SuperTux88/events{/privacy}","received_events_url":"https://api.github.com/users/SuperTux88/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/SuperTux88/diaspora","description":"Distributed and contextual social networking","fork":true,"url":"https://api.github.com/repos/SuperTux88/diaspora","forks_url":"https://api.github.com/repos/SuperTux88/diaspora/forks","keys_url":"https://api.github.com/repos/SuperTux88/diaspora/keys{/key_id}","collaborators_url":"https://api.github.com/repos/SuperTux88/diaspora/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/SuperTux88/diaspora/teams","hooks_url":"https://api.github.com/repos/SuperTux88/diaspora/hooks","issue_events_url":"https://api.github.com/repos/SuperTux88/diaspora/issues/events{/number}","events_url":"https://api.github.com/repos/SuperTux88/diaspora/events","assignees_url":"https://api.github.com/repos/SuperTux88/diaspora/assignees{/user}","branches_url":"https://api.github.com/repos/SuperTux88/diaspora/branches{/branch}","tags_url":"https://api.github.com/repos/SuperTux88/diaspora/tags","blobs_url":"https://api.github.com/repos/SuperTux88/diaspora/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/SuperTux88/diaspora/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/SuperTux88/diaspora/git/refs{/sha}","trees_url":"https://api.github.com/repos/SuperTux88/diaspora/git/trees{/sha}","statuses_url":"https://api.github.com/repos/SuperTux88/diaspora/statuses/{sha}","languages_url":"https://api.github.com/repos/SuperTux88/diaspora/languages","stargazers_url":"https://api.github.com/repos/SuperTux88/diaspora/stargazers","contributors_url":"https://api.github.com/repos/SuperTux88/diaspora/contributors","subscribers_url":"https://api.github.com/repos/SuperTux88/diaspora/subscribers","subscription_url":"https://api.github.com/repos/SuperTux88/diaspora/subscription","commits_url":"https://api.github.com/repos/SuperTux88/diaspora/commits{/sha}","git_commits_url":"https://api.github.com/repos/SuperTux88/diaspora/git/commits{/sha}","comments_url":"https://api.github.com/repos/SuperTux88/diaspora/comments{/number}","issue_comment_url":"https://api.github.com/repos/SuperTux88/diaspora/issues/comments{/number}","contents_url":"https://api.github.com/repos/SuperTux88/diaspora/contents/{+path}","compare_url":"https://api.github.com/repos/SuperTux88/diaspora/compare/{base}...{head}","merges_url":"https://api.github.com/repos/SuperTux88/diaspora/merges","archive_url":"https://api.github.com/repos/SuperTux88/diaspora/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/SuperTux88/diaspora/downloads","issues_url":"https://api.github.com/repos/SuperTux88/diaspora/issues{/number}","pulls_url":"https://api.github.com/repos/SuperTux88/diaspora/pulls{/number}","milestones_url":"https://api.github.com/repos/SuperTux88/diaspora/milestones{/number}","notifications_url":"https://api.github.com/repos/SuperTux88/diaspora/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/SuperTux88/diaspora/labels{/name}","releases_url":"https://api.github.com/repos/SuperTux88/diaspora/releases{/id}","created_at":"2011-11-26T12:26:27Z","updated_at":"2015-06-05T05:31:49Z","pushed_at":"2015-06-30T21:58:53Z","git_url":"git://github.com/SuperTux88/diaspora.git","ssh_url":"git@github.com:SuperTux88/diaspora.git","clone_url":"https://github.com/SuperTux88/diaspora.git","svn_url":"https://github.com/SuperTux88/diaspora","homepage":"diasporafoundation.org/get_involved","size":103239,"stargazers_count":3,"watchers_count":3,"language":"Ruby","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":3,"default_branch":"nerdpol_ch"}},"base":{"label":"diaspora:develop","ref":"develop","sha":"6855095e7bf1513cd2e8a62c15d273c114ebcd54","user":{"login":"diaspora","id":293207,"avatar_url":"https://avatars.githubusercontent.com/u/293207?v=3","gravatar_id":"","url":"https://api.github.com/users/diaspora","html_url":"https://github.com/diaspora","followers_url":"https://api.github.com/users/diaspora/followers","following_url":"https://api.github.com/users/diaspora/following{/other_user}","gists_url":"https://api.github.com/users/diaspora/gists{/gist_id}","starred_url":"https://api.github.com/users/diaspora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/diaspora/subscriptions","organizations_url":"https://api.github.com/users/diaspora/orgs","repos_url":"https://api.github.com/users/diaspora/repos","events_url":"https://api.github.com/users/diaspora/events{/privacy}","received_events_url":"https://api.github.com/users/diaspora/received_events","type":"Organization","site_admin":false},"repo":{"id":911765,"name":"diaspora","full_name":"diaspora/diaspora","owner":{"login":"diaspora","id":293207,"avatar_url":"https://avatars.githubusercontent.com/u/293207?v=3","gravatar_id":"","url":"https://api.github.com/users/diaspora","html_url":"https://github.com/diaspora","followers_url":"https://api.github.com/users/diaspora/followers","following_url":"https://api.github.com/users/diaspora/following{/other_user}","gists_url":"https://api.github.com/users/diaspora/gists{/gist_id}","starred_url":"https://api.github.com/users/diaspora/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/diaspora/subscriptions","organizations_url":"https://api.github.com/users/diaspora/orgs","repos_url":"https://api.github.com/users/diaspora/repos","events_url":"https://api.github.com/users/diaspora/events{/privacy}","received_events_url":"https://api.github.com/users/diaspora/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/diaspora/diaspora","description":"Distributed and contextual social networking","fork":false,"url":"https://api.github.com/repos/diaspora/diaspora","forks_url":"https://api.github.com/repos/diaspora/diaspora/forks","keys_url":"https://api.github.com/repos/diaspora/diaspora/keys{/key_id}","collaborators_url":"https://api.github.com/repos/diaspora/diaspora/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/diaspora/diaspora/teams","hooks_url":"https://api.github.com/repos/diaspora/diaspora/hooks","issue_events_url":"https://api.github.com/repos/diaspora/diaspora/issues/events{/number}","events_url":"https://api.github.com/repos/diaspora/diaspora/events","assignees_url":"https://api.github.com/repos/diaspora/diaspora/assignees{/user}","branches_url":"https://api.github.com/repos/diaspora/diaspora/branches{/branch}","tags_url":"https://api.github.com/repos/diaspora/diaspora/tags","blobs_url":"https://api.github.com/repos/diaspora/diaspora/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/diaspora/diaspora/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/diaspora/diaspora/git/refs{/sha}","trees_url":"https://api.github.com/repos/diaspora/diaspora/git/trees{/sha}","statuses_url":"https://api.github.com/repos/diaspora/diaspora/statuses/{sha}","languages_url":"https://api.github.com/repos/diaspora/diaspora/languages","stargazers_url":"https://api.github.com/repos/diaspora/diaspora/stargazers","contributors_url":"https://api.github.com/repos/diaspora/diaspora/contributors","subscribers_url":"https://api.github.com/repos/diaspora/diaspora/subscribers","subscription_url":"https://api.github.com/repos/diaspora/diaspora/subscription","commits_url":"https://api.github.com/repos/diaspora/diaspora/commits{/sha}","git_commits_url":"https://api.github.com/repos/diaspora/diaspora/git/commits{/sha}","comments_url":"https://api.github.com/repos/diaspora/diaspora/comments{/number}","issue_comment_url":"https://api.github.com/repos/diaspora/diaspora/issues/comments{/number}","contents_url":"https://api.github.com/repos/diaspora/diaspora/contents/{+path}","compare_url":"https://api.github.com/repos/diaspora/diaspora/compare/{base}...{head}","merges_url":"https://api.github.com/repos/diaspora/diaspora/merges","archive_url":"https://api.github.com/repos/diaspora/diaspora/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/diaspora/diaspora/downloads","issues_url":"https://api.github.com/repos/diaspora/diaspora/issues{/number}","pulls_url":"https://api.github.com/repos/diaspora/diaspora/pulls{/number}","milestones_url":"https://api.github.com/repos/diaspora/diaspora/milestones{/number}","notifications_url":"https://api.github.com/repos/diaspora/diaspora/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/diaspora/diaspora/labels{/name}","releases_url":"https://api.github.com/repos/diaspora/diaspora/releases{/id}","created_at":"2010-09-15T05:20:04Z","updated_at":"2015-06-30T06:08:22Z","pushed_at":"2015-07-01T00:04:50Z","git_url":"git://github.com/diaspora/diaspora.git","ssh_url":"git@github.com:diaspora/diaspora.git","clone_url":"https://github.com/diaspora/diaspora.git","svn_url":"https://github.com/diaspora/diaspora","homepage":"https://diasporafoundation.org/","size":253604,"stargazers_count":10122,"watchers_count":10122,"language":"Ruby","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2610,"mirror_url":null,"open_issues_count":408,"forks":2610,"open_issues":408,"watchers":10122,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/diaspora/diaspora/pulls/6151"},"html":{"href":"https://github.com/diaspora/diaspora/pull/6151"},"issue":{"href":"https://api.github.com/repos/diaspora/diaspora/issues/6151"},"comments":{"href":"https://api.github.com/repos/diaspora/diaspora/issues/6151/comments"},"review_comments":{"href":"https://api.github.com/repos/diaspora/diaspora/pulls/6151/comments"},"review_comment":{"href":"https://api.github.com/repos/diaspora/diaspora/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/diaspora/diaspora/pulls/6151/commits"},"statuses":{"href":"https://api.github.com/repos/diaspora/diaspora/statuses/509010b8c3d4f3a012f8129934ff7c1fdd4a4560"}}}}