{"action":"created","comment":{"url":"https://api.github.com/repos/diaspora/diaspora/pulls/comments/33663939","id":33663939,"diff_hunk":"@@ -0,0 +1,8 @@\n+# configure the federation engine\n+DiasporaFederation.configure do |config|\n+  # the pod url\n+  config.server_uri = AppConfig.pod_uri\n+\n+  # the class to be used for a person\n+  config.person_class = Person.to_s","path":"config/initializers/diaspora_federation.rb","position":7,"original_position":7,"commit_id":"77cff17f08ea859ee1662af37f16142321f9ba47","original_commit_id":"77cff17f08ea859ee1662af37f16142321f9ba47","user":{"login":"jhass","id":141294,"avatar_url":"https://avatars.githubusercontent.com/u/141294?v=3","gravatar_id":"","url":"https://api.github.com/users/jhass","html_url":"https://github.com/jhass","followers_url":"https://api.github.com/users/jhass/followers","following_url":"https://api.github.com/users/jhass/following{/other_user}","gists_url":"https://api.github.com/users/jhass/gists{/gist_id}","starred_url":"https://api.github.com/users/jhass/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhass/subscriptions","organizations_url":"https://api.github.com/users/jhass/orgs","repos_url":"https://api.github.com/users/jhass/repos","events_url":"https://api.github.com/users/jhass/events{/privacy}","received_events_url":"https://api.github.com/users/jhass/received_events","type":"User","site_admin":false},"body":"Yes, I'm just saying it's safer to do in the accessor, since you then 1) don't need that knowledge 2) aren't confused by it since it's common not to in the Rails API (e.g. `has_many :foo, class: Bar`)","created_at":"2015-07-01T09:52:40Z","updated_at":"2015-07-01T09:52:40Z","html_url":"https://github.com/diaspora/diaspora/pull/6151#discussion_r33663939","pull_request_url":"https://api.github.com/repos/diaspora/diaspora/pulls/6151","_links":{"self":{"href":"https://api.github.com/repos/diaspora/diaspora/pulls/comments/33663939"},"html":{"href":"https://github.com/diaspora/diaspora/pull/6151#discussion_r33663939"},"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](https://github.com/SuperTux88/diaspora_federation). 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-01T09:52:40Z","closed_at":null,"merged_at":null,"merge_commit_sha":"83fc203f0e4a1a3962f3a8cfc659782f534758f6","assignee":{"login":"denschub","id":344777,"avatar_url":"https://avatars.githubusercontent.com/u/344777?v=3","gravatar_id":"","url":"https://api.github.com/users/denschub","html_url":"https://github.com/denschub","followers_url":"https://api.github.com/users/denschub/followers","following_url":"https://api.github.com/users/denschub/following{/other_user}","gists_url":"https://api.github.com/users/denschub/gists{/gist_id}","starred_url":"https://api.github.com/users/denschub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/denschub/subscriptions","organizations_url":"https://api.github.com/users/denschub/orgs","repos_url":"https://api.github.com/users/denschub/repos","events_url":"https://api.github.com/users/denschub/events{/privacy}","received_events_url":"https://api.github.com/users/denschub/received_events","type":"User","site_admin":false},"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/77cff17f08ea859ee1662af37f16142321f9ba47","head":{"label":"SuperTux88:federation-gem","ref":"federation-gem","sha":"77cff17f08ea859ee1662af37f16142321f9ba47","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-07-01T00:19:29Z","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-07-01T08:33:45Z","pushed_at":"2015-07-01T04:04:08Z","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/77cff17f08ea859ee1662af37f16142321f9ba47"}}}}