{"action":"created","comment":{"url":"https://api.github.com/repos/esl/MongooseIM/pulls/comments/84009166","pull_request_review_id":4813748,"id":84009166,"diff_hunk":"@@ -139,732 +147,782 @@ end_per_testcase(_TestName, Config) ->\n %%--------------------------------------------------------------------\n \n create_delete_node_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice, 1}],\n       fun(Alice) ->\n               %% Request:  8.1.2 Ex.132 create node with (default) open access model\n               %% Response:       Ex.134 success\n               %%                        Note: contains node ID although XEP does not require this\n-              create_node(Alice, ?NODE, []),\n+              Node = pubsub_node(),\n+              create_node(Alice, Node, []),\n \n               %% Request:  8.4.1 Ex.155 owner deletes a node\n               %% Response:       Ex.157 success\n-              delete_node(Alice, ?NODE, [])\n+              delete_node(Alice, Node, [])\n       end).\n \n discover_nodes_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}, {bob,1}],\n       fun(Alice, Bob) ->\n               %% Request:  5.2 Ex.9  Entity asks service for all first-level nodes\n-              %% Response:     Ex.10 Service returns all first-level nodes (empty yet)\n-              discover_nodes(Bob, ?NODE_ADDR, []),\n+              %% Response:     Ex.10 Service returns all first-level nodes\n+              %% it shouldn't contain the Node which will be created in a moment\n+              {_, NodeName} = Node = pubsub_node(),\n+              discover_nodes(Bob, node_addr(), [{expected_result, {no, NodeName}}]),\n \n-              create_node(Alice, ?NODE, []),\n-              discover_nodes(Bob, ?NODE_ADDR, [?NODE_NAME]),\n+              create_node(Alice, Node, []),\n+              discover_nodes(Bob, node_addr(), [{expected_result, [NodeName]}]),\n \n-              create_node(Alice, ?NODE_2, []),\n-              discover_nodes(Bob, ?NODE_ADDR, [?NODE_NAME, ?NODE_NAME_2]),\n+              {_, NodeName2} = Node2 = pubsub_node(),\n+              create_node(Alice, Node2, []),\n+              discover_nodes(Bob, node_addr(), [{expected_result, [NodeName, NodeName2]}]),\n \n-              delete_node(Alice, ?NODE, []),\n-              delete_node(Alice, ?NODE_2, [])\n+              delete_node(Alice, Node, []),\n+              delete_node(Alice, Node2, [])\n       end).\n \n subscribe_unsubscribe_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}, {bob,1}],\n       fun(Alice, Bob) ->\n-              create_node(Alice, ?NODE, []),\n+              Node = pubsub_node(),\n+              create_node(Alice, Node, []),\n \n               %% Request:  6.1.1 Ex.32 entity subscribes to a node\n               %% Response: 6.1.2 Ex.33 success (with subscription ID)\n-              subscribe(Bob, ?NODE, []),\n+              subscribe(Bob, Node, []),\n \n               %% Request:  6.2.1 Ex.51 unsubscribe from a node\n               %% Response: 6.2.2 Ex.52 success\n-              unsubscribe(Bob, ?NODE, []),\n+              unsubscribe(Bob, Node, []),\n \n               %% Check subscriptions without resources\n-              subscribe(Bob, ?NODE, [{jid_type, bare}]),\n-              unsubscribe(Bob, ?NODE, [{jid_type, bare}]),\n+              subscribe(Bob, Node, [{jid_type, bare}]),\n+              unsubscribe(Bob, Node, [{jid_type, bare}]),\n \n-              delete_node(Alice, ?NODE, [])\n+              delete_node(Alice, Node, [])\n       end).\n \n publish_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}],\n       fun(Alice) ->\n               %% Auto-create enabled by default\n \n               %% Request:  7.1.1 Ex.99  publish an item with an ItemID\n               %% Response: 7.1.2 Ex.100 success\n-              publish(Alice, <<\"item1\">>, ?NODE, []),\n+              Node = pubsub_node(),\n+              publish(Alice, <<\"item1\">>, Node, []),\n \n-              delete_node(Alice, ?NODE, [])\n+              delete_node(Alice, Node, [])\n       end).\n \n notify_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}, {bob,2}, {geralt,2}],\n       fun(Alice, Bob1, Bob2, Geralt1, Geralt2) ->\n-              create_node(Alice, ?NODE, []),\n-              subscribe(Bob1, ?NODE, []),\n-              subscribe(Geralt1, ?NODE, [{jid_type, bare}]),\n-              publish(Alice, <<\"item1\">>, ?NODE, []),\n+              Node = pubsub_node(),\n+              create_node(Alice, Node, []),\n+              subscribe(Bob1, Node, []),\n+              subscribe(Geralt1, Node, [{jid_type, bare}]),\n+              publish(Alice, <<\"item1\">>, Node, []),\n \n               %% 7.1.2.1 Ex.101 notification with payload\n               %%                Note: message has type 'headline' by default\n \n               %% Bob subscribed with resource\n-              receive_item_notification(Bob1, <<\"item1\">>, ?NODE, []),\n+              receive_item_notification(Bob1, <<\"item1\">>, Node, []),\n               escalus_assert:has_no_stanzas(Bob2),\n \n               %% Geralt subscribed without resource\n-              receive_item_notification(Geralt1, <<\"item1\">>, ?NODE, []),\n-              receive_item_notification(Geralt2, <<\"item1\">>, ?NODE, []),\n+              receive_item_notification(Geralt1, <<\"item1\">>, Node, []),\n+              receive_item_notification(Geralt2, <<\"item1\">>, Node, []),\n \n-              delete_node(Alice, ?NODE, [])\n+              delete_node(Alice, Node, [])\n       end).\n \n request_all_items_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}, {bob,1}],\n       fun(Alice, Bob) ->\n-              create_node(Alice, ?NODE, []),\n-              publish(Alice, <<\"item1\">>, ?NODE, []),\n-              publish(Alice, <<\"item2\">>, ?NODE, []),\n+              Node = pubsub_node(),\n+              create_node(Alice, Node, []),\n+              publish(Alice, <<\"item1\">>, Node, []),\n+              publish(Alice, <<\"item2\">>, Node, []),\n \n               %% Request:  6.5.2 Ex.78 subscriber requests all items\n               %% Response: 6.5.3 Ex.79 service returns all items\n-              request_all_items(Bob, ?NODE, [{expected_result, [<<\"item2\">>, <<\"item1\">>]}]),\n+              request_all_items(Bob, Node, [{expected_result, [<<\"item2\">>, <<\"item1\">>]}]),\n               %% TODO check ordering (although XEP does not specify this)\n \n-              delete_node(Alice, ?NODE, [])\n+              delete_node(Alice, Node, [])\n       end).\n \n purge_all_items_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}, {bob,1}],\n       fun(Alice, Bob) ->\n-              create_node(Alice, ?NODE, []),\n-              publish(Alice, <<\"item1\">>, ?NODE, []),\n-              publish(Alice, <<\"item2\">>, ?NODE, []),\n+              Node = pubsub_node(),\n+              create_node(Alice, Node, []),\n+              publish(Alice, <<\"item1\">>, Node, []),\n+              publish(Alice, <<\"item2\">>, Node, []),\n \n               %% Response: 8.5.3.2 Ex.165 insufficient privileges\n-              purge_all_items(Bob, ?NODE, [{expected_error_type, <<\"auth\">>}]),\n+              purge_all_items(Bob, Node, [{expected_error_type, <<\"auth\">>}]),\n \n-              request_all_items(Bob, ?NODE, [{expected_result, [<<\"item2\">>, <<\"item1\">>]}]),\n+              request_all_items(Bob, Node, [{expected_result, [<<\"item2\">>, <<\"item1\">>]}]),\n \n               %% Request:  8.5.1 Ex.161 owner purges all items from node\n               %% Response: 8.5.2 Ex.162 success\n-              purge_all_items(Alice, ?NODE, []),\n+              purge_all_items(Alice, Node, []),\n \n-              request_all_items(Bob, ?NODE, [{expected_result, []}]),\n+              request_all_items(Bob, Node, [{expected_result, []}]),\n \n-              delete_node(Alice, ?NODE, [])\n+              delete_node(Alice, Node, [])\n       end).\n \n retrieve_subscriptions_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}, {bob,1}],\n       fun(Alice, Bob) ->\n               %% Request:  5.6 Ex.20 Retrieve Subscriptions\n               %% Response:     Ex.22 No Subscriptions\n-              retrieve_user_subscriptions(Bob, ?NODE_ADDR, [{expected_result, []}]),\n+              retrieve_user_subscriptions(Bob, node_addr(), [{expected_result, []}]),\n \n-              create_node(Alice, ?NODE, []),\n-              subscribe(Bob, ?NODE, []),\n+              {_, NodeName} = {_, NodeName} = Node = pubsub_node(),\n+              create_node(Alice, Node, []),\n+              subscribe(Bob, Node, []),\n \n               %% Ex. 21 Service returns subscriptions\n-              Sub = [{?NODE_NAME, <<\"subscribed\">>}],\n-              retrieve_user_subscriptions(Bob, ?NODE_ADDR, [{expected_result, Sub}]),\n+              Sub = [{NodeName, <<\"subscribed\">>}],\n+              retrieve_user_subscriptions(Bob, node_addr(), [{expected_result, Sub}]),\n \n-              create_node(Alice, ?NODE_2, []),\n-              subscribe(Bob, ?NODE_2, []),\n+              {_, NodeName2} = Node2 = pubsub_node(),\n+              create_node(Alice, Node2, []),\n+              subscribe(Bob, Node2, []),\n \n               %% Ex. 21 Service returns subscriptions\n-              Subs = [{?NODE_NAME, <<\"subscribed\">>}, {?NODE_NAME_2, <<\"subscribed\">>}],\n-              retrieve_user_subscriptions(Bob, ?NODE_ADDR, [{expected_result, Subs}]),\n+              Subs = [{NodeName, <<\"subscribed\">>}, {NodeName2, <<\"subscribed\">>}],\n+              retrieve_user_subscriptions(Bob, node_addr(), [{expected_result, Subs}]),\n \n               %% Owner not subscribed automatically\n-              retrieve_user_subscriptions(Alice, ?NODE_ADDR, [{expected_result, []}]),\n+              retrieve_user_subscriptions(Alice, node_addr(), [{expected_result, []}]),\n \n-              delete_node(Alice, ?NODE, []),\n-              delete_node(Alice, ?NODE_2, [])\n+              delete_node(Alice, Node, []),\n+              delete_node(Alice, Node2, [])\n       end).\n \n disable_notifications_test(Config) ->\n-    escalus:story(\n+    escalus:fresh_story(\n       Config,\n       [{alice,1}, {bob,1}],","path":"test/ejabberd_tests/tests/pubsub_SUITE.erl","position":339,"original_position":339,"commit_id":"dacd83dccc68109bf3eb8a89a98448493026bcd6","original_commit_id":"dacd83dccc68109bf3eb8a89a98448493026bcd6","user":{"login":"gadgetci","id":10134338,"avatar_url":"https://avatars.githubusercontent.com/u/10134338?v=3","gravatar_id":"","url":"https://api.github.com/users/gadgetci","html_url":"https://github.com/gadgetci","followers_url":"https://api.github.com/users/gadgetci/followers","following_url":"https://api.github.com/users/gadgetci/following{/other_user}","gists_url":"https://api.github.com/users/gadgetci/gists{/gist_id}","starred_url":"https://api.github.com/users/gadgetci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gadgetci/subscriptions","organizations_url":"https://api.github.com/users/gadgetci/orgs","repos_url":"https://api.github.com/users/gadgetci/repos","events_url":"https://api.github.com/users/gadgetci/events{/privacy}","received_events_url":"https://api.github.com/users/gadgetci/received_events","type":"User","site_admin":false},"body":"According to **Elvis**:\n> Missing space right \",\" on line 327","created_at":"2016-10-19T07:16:51Z","updated_at":"2016-10-19T07:16:51Z","html_url":"https://github.com/esl/MongooseIM/pull/1038#discussion_r84009166","pull_request_url":"https://api.github.com/repos/esl/MongooseIM/pulls/1038","_links":{"self":{"href":"https://api.github.com/repos/esl/MongooseIM/pulls/comments/84009166"},"html":{"href":"https://github.com/esl/MongooseIM/pull/1038#discussion_r84009166"},"pull_request":{"href":"https://api.github.com/repos/esl/MongooseIM/pulls/1038"}}},"pull_request":{"url":"https://api.github.com/repos/esl/MongooseIM/pulls/1038","id":89953723,"html_url":"https://github.com/esl/MongooseIM/pull/1038","diff_url":"https://github.com/esl/MongooseIM/pull/1038.diff","patch_url":"https://github.com/esl/MongooseIM/pull/1038.patch","issue_url":"https://api.github.com/repos/esl/MongooseIM/issues/1038","number":1038,"state":"open","locked":false,"title":"More parallel tests","user":{"login":"michalwski","id":705828,"avatar_url":"https://avatars.githubusercontent.com/u/705828?v=3","gravatar_id":"","url":"https://api.github.com/users/michalwski","html_url":"https://github.com/michalwski","followers_url":"https://api.github.com/users/michalwski/followers","following_url":"https://api.github.com/users/michalwski/following{/other_user}","gists_url":"https://api.github.com/users/michalwski/gists{/gist_id}","starred_url":"https://api.github.com/users/michalwski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/michalwski/subscriptions","organizations_url":"https://api.github.com/users/michalwski/orgs","repos_url":"https://api.github.com/users/michalwski/repos","events_url":"https://api.github.com/users/michalwski/events{/privacy}","received_events_url":"https://api.github.com/users/michalwski/received_events","type":"User","site_admin":false},"body":"Following test SUITE were optimised\r\n* mod_ping_SUITE\r\n* pubsub_SUITE\r\n* login_SUITE\r\n\r\n","created_at":"2016-10-19T07:16:29Z","updated_at":"2016-10-19T07:16:51Z","closed_at":null,"merged_at":null,"merge_commit_sha":"607e7e67245ccaeb69f77dcc62cbd922e9cad4de","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/esl/MongooseIM/pulls/1038/commits","review_comments_url":"https://api.github.com/repos/esl/MongooseIM/pulls/1038/comments","review_comment_url":"https://api.github.com/repos/esl/MongooseIM/pulls/comments{/number}","comments_url":"https://api.github.com/repos/esl/MongooseIM/issues/1038/comments","statuses_url":"https://api.github.com/repos/esl/MongooseIM/statuses/dacd83dccc68109bf3eb8a89a98448493026bcd6","head":{"label":"esl:more-parallel-tests","ref":"more-parallel-tests","sha":"dacd83dccc68109bf3eb8a89a98448493026bcd6","user":{"login":"esl","id":283412,"avatar_url":"https://avatars.githubusercontent.com/u/283412?v=3","gravatar_id":"","url":"https://api.github.com/users/esl","html_url":"https://github.com/esl","followers_url":"https://api.github.com/users/esl/followers","following_url":"https://api.github.com/users/esl/following{/other_user}","gists_url":"https://api.github.com/users/esl/gists{/gist_id}","starred_url":"https://api.github.com/users/esl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esl/subscriptions","organizations_url":"https://api.github.com/users/esl/orgs","repos_url":"https://api.github.com/users/esl/repos","events_url":"https://api.github.com/users/esl/events{/privacy}","received_events_url":"https://api.github.com/users/esl/received_events","type":"Organization","site_admin":false},"repo":{"id":2354240,"name":"MongooseIM","full_name":"esl/MongooseIM","owner":{"login":"esl","id":283412,"avatar_url":"https://avatars.githubusercontent.com/u/283412?v=3","gravatar_id":"","url":"https://api.github.com/users/esl","html_url":"https://github.com/esl","followers_url":"https://api.github.com/users/esl/followers","following_url":"https://api.github.com/users/esl/following{/other_user}","gists_url":"https://api.github.com/users/esl/gists{/gist_id}","starred_url":"https://api.github.com/users/esl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esl/subscriptions","organizations_url":"https://api.github.com/users/esl/orgs","repos_url":"https://api.github.com/users/esl/repos","events_url":"https://api.github.com/users/esl/events{/privacy}","received_events_url":"https://api.github.com/users/esl/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/esl/MongooseIM","description":"Jabber / XMPP server with focus on performance and scalability, by Erlang Solutions","fork":false,"url":"https://api.github.com/repos/esl/MongooseIM","forks_url":"https://api.github.com/repos/esl/MongooseIM/forks","keys_url":"https://api.github.com/repos/esl/MongooseIM/keys{/key_id}","collaborators_url":"https://api.github.com/repos/esl/MongooseIM/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/esl/MongooseIM/teams","hooks_url":"https://api.github.com/repos/esl/MongooseIM/hooks","issue_events_url":"https://api.github.com/repos/esl/MongooseIM/issues/events{/number}","events_url":"https://api.github.com/repos/esl/MongooseIM/events","assignees_url":"https://api.github.com/repos/esl/MongooseIM/assignees{/user}","branches_url":"https://api.github.com/repos/esl/MongooseIM/branches{/branch}","tags_url":"https://api.github.com/repos/esl/MongooseIM/tags","blobs_url":"https://api.github.com/repos/esl/MongooseIM/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/esl/MongooseIM/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/esl/MongooseIM/git/refs{/sha}","trees_url":"https://api.github.com/repos/esl/MongooseIM/git/trees{/sha}","statuses_url":"https://api.github.com/repos/esl/MongooseIM/statuses/{sha}","languages_url":"https://api.github.com/repos/esl/MongooseIM/languages","stargazers_url":"https://api.github.com/repos/esl/MongooseIM/stargazers","contributors_url":"https://api.github.com/repos/esl/MongooseIM/contributors","subscribers_url":"https://api.github.com/repos/esl/MongooseIM/subscribers","subscription_url":"https://api.github.com/repos/esl/MongooseIM/subscription","commits_url":"https://api.github.com/repos/esl/MongooseIM/commits{/sha}","git_commits_url":"https://api.github.com/repos/esl/MongooseIM/git/commits{/sha}","comments_url":"https://api.github.com/repos/esl/MongooseIM/comments{/number}","issue_comment_url":"https://api.github.com/repos/esl/MongooseIM/issues/comments{/number}","contents_url":"https://api.github.com/repos/esl/MongooseIM/contents/{+path}","compare_url":"https://api.github.com/repos/esl/MongooseIM/compare/{base}...{head}","merges_url":"https://api.github.com/repos/esl/MongooseIM/merges","archive_url":"https://api.github.com/repos/esl/MongooseIM/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/esl/MongooseIM/downloads","issues_url":"https://api.github.com/repos/esl/MongooseIM/issues{/number}","pulls_url":"https://api.github.com/repos/esl/MongooseIM/pulls{/number}","milestones_url":"https://api.github.com/repos/esl/MongooseIM/milestones{/number}","notifications_url":"https://api.github.com/repos/esl/MongooseIM/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/esl/MongooseIM/labels{/name}","releases_url":"https://api.github.com/repos/esl/MongooseIM/releases{/id}","deployments_url":"https://api.github.com/repos/esl/MongooseIM/deployments","created_at":"2011-09-09T08:19:18Z","updated_at":"2016-10-19T01:07:00Z","pushed_at":"2016-10-19T07:16:29Z","git_url":"git://github.com/esl/MongooseIM.git","ssh_url":"git@github.com:esl/MongooseIM.git","clone_url":"https://github.com/esl/MongooseIM.git","svn_url":"https://github.com/esl/MongooseIM","homepage":"https://www.erlang-solutions.com/products/mongooseim.html","size":33119,"stargazers_count":584,"watchers_count":584,"language":"Erlang","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":236,"mirror_url":null,"open_issues_count":84,"forks":236,"open_issues":84,"watchers":584,"default_branch":"master"}},"base":{"label":"esl:master","ref":"master","sha":"5c86e5411273da422e7b466f187c6cf30315008a","user":{"login":"esl","id":283412,"avatar_url":"https://avatars.githubusercontent.com/u/283412?v=3","gravatar_id":"","url":"https://api.github.com/users/esl","html_url":"https://github.com/esl","followers_url":"https://api.github.com/users/esl/followers","following_url":"https://api.github.com/users/esl/following{/other_user}","gists_url":"https://api.github.com/users/esl/gists{/gist_id}","starred_url":"https://api.github.com/users/esl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esl/subscriptions","organizations_url":"https://api.github.com/users/esl/orgs","repos_url":"https://api.github.com/users/esl/repos","events_url":"https://api.github.com/users/esl/events{/privacy}","received_events_url":"https://api.github.com/users/esl/received_events","type":"Organization","site_admin":false},"repo":{"id":2354240,"name":"MongooseIM","full_name":"esl/MongooseIM","owner":{"login":"esl","id":283412,"avatar_url":"https://avatars.githubusercontent.com/u/283412?v=3","gravatar_id":"","url":"https://api.github.com/users/esl","html_url":"https://github.com/esl","followers_url":"https://api.github.com/users/esl/followers","following_url":"https://api.github.com/users/esl/following{/other_user}","gists_url":"https://api.github.com/users/esl/gists{/gist_id}","starred_url":"https://api.github.com/users/esl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/esl/subscriptions","organizations_url":"https://api.github.com/users/esl/orgs","repos_url":"https://api.github.com/users/esl/repos","events_url":"https://api.github.com/users/esl/events{/privacy}","received_events_url":"https://api.github.com/users/esl/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/esl/MongooseIM","description":"Jabber / XMPP server with focus on performance and scalability, by Erlang Solutions","fork":false,"url":"https://api.github.com/repos/esl/MongooseIM","forks_url":"https://api.github.com/repos/esl/MongooseIM/forks","keys_url":"https://api.github.com/repos/esl/MongooseIM/keys{/key_id}","collaborators_url":"https://api.github.com/repos/esl/MongooseIM/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/esl/MongooseIM/teams","hooks_url":"https://api.github.com/repos/esl/MongooseIM/hooks","issue_events_url":"https://api.github.com/repos/esl/MongooseIM/issues/events{/number}","events_url":"https://api.github.com/repos/esl/MongooseIM/events","assignees_url":"https://api.github.com/repos/esl/MongooseIM/assignees{/user}","branches_url":"https://api.github.com/repos/esl/MongooseIM/branches{/branch}","tags_url":"https://api.github.com/repos/esl/MongooseIM/tags","blobs_url":"https://api.github.com/repos/esl/MongooseIM/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/esl/MongooseIM/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/esl/MongooseIM/git/refs{/sha}","trees_url":"https://api.github.com/repos/esl/MongooseIM/git/trees{/sha}","statuses_url":"https://api.github.com/repos/esl/MongooseIM/statuses/{sha}","languages_url":"https://api.github.com/repos/esl/MongooseIM/languages","stargazers_url":"https://api.github.com/repos/esl/MongooseIM/stargazers","contributors_url":"https://api.github.com/repos/esl/MongooseIM/contributors","subscribers_url":"https://api.github.com/repos/esl/MongooseIM/subscribers","subscription_url":"https://api.github.com/repos/esl/MongooseIM/subscription","commits_url":"https://api.github.com/repos/esl/MongooseIM/commits{/sha}","git_commits_url":"https://api.github.com/repos/esl/MongooseIM/git/commits{/sha}","comments_url":"https://api.github.com/repos/esl/MongooseIM/comments{/number}","issue_comment_url":"https://api.github.com/repos/esl/MongooseIM/issues/comments{/number}","contents_url":"https://api.github.com/repos/esl/MongooseIM/contents/{+path}","compare_url":"https://api.github.com/repos/esl/MongooseIM/compare/{base}...{head}","merges_url":"https://api.github.com/repos/esl/MongooseIM/merges","archive_url":"https://api.github.com/repos/esl/MongooseIM/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/esl/MongooseIM/downloads","issues_url":"https://api.github.com/repos/esl/MongooseIM/issues{/number}","pulls_url":"https://api.github.com/repos/esl/MongooseIM/pulls{/number}","milestones_url":"https://api.github.com/repos/esl/MongooseIM/milestones{/number}","notifications_url":"https://api.github.com/repos/esl/MongooseIM/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/esl/MongooseIM/labels{/name}","releases_url":"https://api.github.com/repos/esl/MongooseIM/releases{/id}","deployments_url":"https://api.github.com/repos/esl/MongooseIM/deployments","created_at":"2011-09-09T08:19:18Z","updated_at":"2016-10-19T01:07:00Z","pushed_at":"2016-10-19T07:16:29Z","git_url":"git://github.com/esl/MongooseIM.git","ssh_url":"git@github.com:esl/MongooseIM.git","clone_url":"https://github.com/esl/MongooseIM.git","svn_url":"https://github.com/esl/MongooseIM","homepage":"https://www.erlang-solutions.com/products/mongooseim.html","size":33119,"stargazers_count":584,"watchers_count":584,"language":"Erlang","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":236,"mirror_url":null,"open_issues_count":84,"forks":236,"open_issues":84,"watchers":584,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/esl/MongooseIM/pulls/1038"},"html":{"href":"https://github.com/esl/MongooseIM/pull/1038"},"issue":{"href":"https://api.github.com/repos/esl/MongooseIM/issues/1038"},"comments":{"href":"https://api.github.com/repos/esl/MongooseIM/issues/1038/comments"},"review_comments":{"href":"https://api.github.com/repos/esl/MongooseIM/pulls/1038/comments"},"review_comment":{"href":"https://api.github.com/repos/esl/MongooseIM/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/esl/MongooseIM/pulls/1038/commits"},"statuses":{"href":"https://api.github.com/repos/esl/MongooseIM/statuses/dacd83dccc68109bf3eb8a89a98448493026bcd6"}}}}
{"actor":{"display_login":"gadgetci"}}