{"action":"created","comment":{"url":"https://api.github.com/repos/gradle/gradle/pulls/comments/88196150","pull_request_review_id":8769397,"id":88196150,"diff_hunk":"@@ -49,13 +52,20 @@ public int compare(TaskDetails task1, TaskDetails task2) {\n         });\n         for (TaskReportModel project : projects) {\n             for (String group : project.getGroups()) {\n-                for (final TaskDetails task : project.getTasksForGroup(group)) {\n-                    groups.put(group, mergeTasksWithSameName ? new MergedTaskDetails(task) : task);\n+                if (isVisible(group)) {\n+                    for (final TaskDetails task : project.getTasksForGroup(group)) {\n+                        groups.put(group, mergeTasksWithSameName ? new MergedTaskDetails(task) : task);\n+                    }\n                 }\n             }\n         }\n     }\n \n+    private boolean isVisible(String group) {\n+        boolean visible = GUtil.isTrue(group);\n+        return visible || (!visible && detail);","path":"subprojects/diagnostics/src/main/java/org/gradle/api/tasks/diagnostics/internal/AggregateMultiProjectTaskReportModel.java","position":38,"original_position":38,"commit_id":"f13eb8df1449a614b4a903cc543dbbde7a0dd823","original_commit_id":"f13eb8df1449a614b4a903cc543dbbde7a0dd823","user":{"login":"eskatos","id":132773,"avatar_url":"https://avatars.githubusercontent.com/u/132773?v=3","gravatar_id":"","url":"https://api.github.com/users/eskatos","html_url":"https://github.com/eskatos","followers_url":"https://api.github.com/users/eskatos/followers","following_url":"https://api.github.com/users/eskatos/following{/other_user}","gists_url":"https://api.github.com/users/eskatos/gists{/gist_id}","starred_url":"https://api.github.com/users/eskatos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eskatos/subscriptions","organizations_url":"https://api.github.com/users/eskatos/orgs","repos_url":"https://api.github.com/users/eskatos/repos","events_url":"https://api.github.com/users/eskatos/events{/privacy}","received_events_url":"https://api.github.com/users/eskatos/received_events","type":"User","site_admin":false},"body":"This can be simplified to:\r\n```\r\nreturn detail || GUtil.isTrue(group);\r\n```","created_at":"2016-11-16T09:18:04Z","updated_at":"2016-11-16T09:21:59Z","html_url":"https://github.com/gradle/gradle/pull/854#discussion_r88196150","pull_request_url":"https://api.github.com/repos/gradle/gradle/pulls/854","_links":{"self":{"href":"https://api.github.com/repos/gradle/gradle/pulls/comments/88196150"},"html":{"href":"https://github.com/gradle/gradle/pull/854#discussion_r88196150"},"pull_request":{"href":"https://api.github.com/repos/gradle/gradle/pulls/854"}}},"pull_request":{"url":"https://api.github.com/repos/gradle/gradle/pulls/854","id":93646141,"html_url":"https://github.com/gradle/gradle/pull/854","diff_url":"https://github.com/gradle/gradle/pull/854.diff","patch_url":"https://github.com/gradle/gradle/pull/854.patch","issue_url":"https://api.github.com/repos/gradle/gradle/issues/854","number":854,"state":"open","locked":false,"title":"Improved performance of tasks report","user":{"login":"bmuschko","id":440872,"avatar_url":"https://avatars.githubusercontent.com/u/440872?v=3","gravatar_id":"","url":"https://api.github.com/users/bmuschko","html_url":"https://github.com/bmuschko","followers_url":"https://api.github.com/users/bmuschko/followers","following_url":"https://api.github.com/users/bmuschko/following{/other_user}","gists_url":"https://api.github.com/users/bmuschko/gists{/gist_id}","starred_url":"https://api.github.com/users/bmuschko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmuschko/subscriptions","organizations_url":"https://api.github.com/users/bmuschko/orgs","repos_url":"https://api.github.com/users/bmuschko/repos","events_url":"https://api.github.com/users/bmuschko/events{/privacy}","received_events_url":"https://api.github.com/users/bmuschko/received_events","type":"User","site_admin":false},"body":"Large multi-project builds with a lot of tasks suffer from poor performance when executing the tasks task. It's not unusual to see a task execution time of multiple minutes for enterprise projects which renders the report unusable. The goal of this pull request is to improve the performance of the tasks report by optimizing its internal workings and the information rendered for the user.\r\n\r\nThe spec for this change can be found [here](https://github.com/gradle/gradle/blob/master/design-docs/task-reporting.md#story-improved-performance-of-tasks-report).\r\n\r\nAny of the checked boxes below indicate that I took action:\r\n\r\n- [ ] Reviewed the [Contribution Guidelines](https://github.com/gradle/gradle/blob/master/.github/CONTRIBUTING.md).\r\n- [ ] Signed the [Gradle CLA](http://gradle.org/contributor-license-agreement/).\r\n- [ ] Ensured that basic checks pass: `./gradlew quickCheck`\r\n\r\nFor all non-trivial changes that modify the behavior or public API:\r\n\r\n- [ ] Before submitting a pull request, I started a discussion on the [Gradle developer list](https://groups.google.com/forum/#!forum/gradle-dev),\r\n      the [forum](https://discuss.gradle.org/) or can reference a [JIRA issue](https://issues.gradle.org/secure/Dashboard.jspa).\r\n- [ ] I considered writing a design document. A design document can be\r\nbrief but explains the use case or problem you are trying to solve,\r\ntouches on the planned implementation approach as well as the test cases\r\nthat verify the behavior. Optimally, design documents should be submitted\r\nas a separate pull request. [Samples](https://github.com/gradle/gradle/tree/master/design-docs)\r\ncan be found in the Gradle GitHub repository. Please let us know if you need help with\r\ncreating the design document. We are happy to help!\r\n- [ ] The pull request contains an appropriate level of unit and integration\r\ntest coverage to verify the behavior. Before submitting the pull request\r\nI ran a build on your local machine via the command\r\n`./gradlew quickCheck <impacted-subproject>:check`.\r\n- [ ] The pull request updates the Gradle documentation like user guide,\r\nDSL reference and Javadocs where applicable.\r\n","created_at":"2016-11-14T20:55:17Z","updated_at":"2016-11-16T09:21:59Z","closed_at":null,"merged_at":null,"merge_commit_sha":"ed7e304781a233e7e11ef4d035ae4c56fa50cea4","assignee":{"login":"bmuschko","id":440872,"avatar_url":"https://avatars.githubusercontent.com/u/440872?v=3","gravatar_id":"","url":"https://api.github.com/users/bmuschko","html_url":"https://github.com/bmuschko","followers_url":"https://api.github.com/users/bmuschko/followers","following_url":"https://api.github.com/users/bmuschko/following{/other_user}","gists_url":"https://api.github.com/users/bmuschko/gists{/gist_id}","starred_url":"https://api.github.com/users/bmuschko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmuschko/subscriptions","organizations_url":"https://api.github.com/users/bmuschko/orgs","repos_url":"https://api.github.com/users/bmuschko/repos","events_url":"https://api.github.com/users/bmuschko/events{/privacy}","received_events_url":"https://api.github.com/users/bmuschko/received_events","type":"User","site_admin":false},"assignees":[{"login":"bmuschko","id":440872,"avatar_url":"https://avatars.githubusercontent.com/u/440872?v=3","gravatar_id":"","url":"https://api.github.com/users/bmuschko","html_url":"https://github.com/bmuschko","followers_url":"https://api.github.com/users/bmuschko/followers","following_url":"https://api.github.com/users/bmuschko/following{/other_user}","gists_url":"https://api.github.com/users/bmuschko/gists{/gist_id}","starred_url":"https://api.github.com/users/bmuschko/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bmuschko/subscriptions","organizations_url":"https://api.github.com/users/bmuschko/orgs","repos_url":"https://api.github.com/users/bmuschko/repos","events_url":"https://api.github.com/users/bmuschko/events{/privacy}","received_events_url":"https://api.github.com/users/bmuschko/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/gradle/gradle/milestones/14","html_url":"https://github.com/gradle/gradle/milestones/3.3","labels_url":"https://api.github.com/repos/gradle/gradle/milestones/14/labels","id":2069480,"number":14,"title":"3.3","description":"","creator":{"login":"oehme","id":1191797,"avatar_url":"https://avatars.githubusercontent.com/u/1191797?v=3","gravatar_id":"","url":"https://api.github.com/users/oehme","html_url":"https://github.com/oehme","followers_url":"https://api.github.com/users/oehme/followers","following_url":"https://api.github.com/users/oehme/following{/other_user}","gists_url":"https://api.github.com/users/oehme/gists{/gist_id}","starred_url":"https://api.github.com/users/oehme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oehme/subscriptions","organizations_url":"https://api.github.com/users/oehme/orgs","repos_url":"https://api.github.com/users/oehme/repos","events_url":"https://api.github.com/users/oehme/events{/privacy}","received_events_url":"https://api.github.com/users/oehme/received_events","type":"User","site_admin":false},"open_issues":19,"closed_issues":10,"state":"open","created_at":"2016-10-14T07:03:58Z","updated_at":"2016-11-15T20:27:48Z","due_on":"2017-01-02T00:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/gradle/gradle/pulls/854/commits","review_comments_url":"https://api.github.com/repos/gradle/gradle/pulls/854/comments","review_comment_url":"https://api.github.com/repos/gradle/gradle/pulls/comments{/number}","comments_url":"https://api.github.com/repos/gradle/gradle/issues/854/comments","statuses_url":"https://api.github.com/repos/gradle/gradle/statuses/f13eb8df1449a614b4a903cc543dbbde7a0dd823","head":{"label":"gradle:bm-performant-tasks","ref":"bm-performant-tasks","sha":"f13eb8df1449a614b4a903cc543dbbde7a0dd823","user":{"login":"gradle","id":124156,"avatar_url":"https://avatars.githubusercontent.com/u/124156?v=3","gravatar_id":"","url":"https://api.github.com/users/gradle","html_url":"https://github.com/gradle","followers_url":"https://api.github.com/users/gradle/followers","following_url":"https://api.github.com/users/gradle/following{/other_user}","gists_url":"https://api.github.com/users/gradle/gists{/gist_id}","starred_url":"https://api.github.com/users/gradle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gradle/subscriptions","organizations_url":"https://api.github.com/users/gradle/orgs","repos_url":"https://api.github.com/users/gradle/repos","events_url":"https://api.github.com/users/gradle/events{/privacy}","received_events_url":"https://api.github.com/users/gradle/received_events","type":"Organization","site_admin":false},"repo":{"id":302322,"name":"gradle","full_name":"gradle/gradle","owner":{"login":"gradle","id":124156,"avatar_url":"https://avatars.githubusercontent.com/u/124156?v=3","gravatar_id":"","url":"https://api.github.com/users/gradle","html_url":"https://github.com/gradle","followers_url":"https://api.github.com/users/gradle/followers","following_url":"https://api.github.com/users/gradle/following{/other_user}","gists_url":"https://api.github.com/users/gradle/gists{/gist_id}","starred_url":"https://api.github.com/users/gradle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gradle/subscriptions","organizations_url":"https://api.github.com/users/gradle/orgs","repos_url":"https://api.github.com/users/gradle/repos","events_url":"https://api.github.com/users/gradle/events{/privacy}","received_events_url":"https://api.github.com/users/gradle/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/gradle/gradle","description":"A powerful build system for the JVM","fork":false,"url":"https://api.github.com/repos/gradle/gradle","forks_url":"https://api.github.com/repos/gradle/gradle/forks","keys_url":"https://api.github.com/repos/gradle/gradle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gradle/gradle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gradle/gradle/teams","hooks_url":"https://api.github.com/repos/gradle/gradle/hooks","issue_events_url":"https://api.github.com/repos/gradle/gradle/issues/events{/number}","events_url":"https://api.github.com/repos/gradle/gradle/events","assignees_url":"https://api.github.com/repos/gradle/gradle/assignees{/user}","branches_url":"https://api.github.com/repos/gradle/gradle/branches{/branch}","tags_url":"https://api.github.com/repos/gradle/gradle/tags","blobs_url":"https://api.github.com/repos/gradle/gradle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gradle/gradle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gradle/gradle/git/refs{/sha}","trees_url":"https://api.github.com/repos/gradle/gradle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gradle/gradle/statuses/{sha}","languages_url":"https://api.github.com/repos/gradle/gradle/languages","stargazers_url":"https://api.github.com/repos/gradle/gradle/stargazers","contributors_url":"https://api.github.com/repos/gradle/gradle/contributors","subscribers_url":"https://api.github.com/repos/gradle/gradle/subscribers","subscription_url":"https://api.github.com/repos/gradle/gradle/subscription","commits_url":"https://api.github.com/repos/gradle/gradle/commits{/sha}","git_commits_url":"https://api.github.com/repos/gradle/gradle/git/commits{/sha}","comments_url":"https://api.github.com/repos/gradle/gradle/comments{/number}","issue_comment_url":"https://api.github.com/repos/gradle/gradle/issues/comments{/number}","contents_url":"https://api.github.com/repos/gradle/gradle/contents/{+path}","compare_url":"https://api.github.com/repos/gradle/gradle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gradle/gradle/merges","archive_url":"https://api.github.com/repos/gradle/gradle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gradle/gradle/downloads","issues_url":"https://api.github.com/repos/gradle/gradle/issues{/number}","pulls_url":"https://api.github.com/repos/gradle/gradle/pulls{/number}","milestones_url":"https://api.github.com/repos/gradle/gradle/milestones{/number}","notifications_url":"https://api.github.com/repos/gradle/gradle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gradle/gradle/labels{/name}","releases_url":"https://api.github.com/repos/gradle/gradle/releases{/id}","deployments_url":"https://api.github.com/repos/gradle/gradle/deployments","created_at":"2009-09-09T18:27:19Z","updated_at":"2016-11-15T18:40:05Z","pushed_at":"2016-11-16T08:40:57Z","git_url":"git://github.com/gradle/gradle.git","ssh_url":"git@github.com:gradle/gradle.git","clone_url":"https://github.com/gradle/gradle.git","svn_url":"https://github.com/gradle/gradle","homepage":"gradle.org","size":207357,"stargazers_count":4139,"watchers_count":4139,"language":"Java","has_issues":true,"has_downloads":false,"has_wiki":true,"has_pages":false,"forks_count":1555,"mirror_url":null,"open_issues_count":120,"forks":1555,"open_issues":120,"watchers":4139,"default_branch":"master"}},"base":{"label":"gradle:master","ref":"master","sha":"61b038ad27ece966ec29df965960910568a0ce6b","user":{"login":"gradle","id":124156,"avatar_url":"https://avatars.githubusercontent.com/u/124156?v=3","gravatar_id":"","url":"https://api.github.com/users/gradle","html_url":"https://github.com/gradle","followers_url":"https://api.github.com/users/gradle/followers","following_url":"https://api.github.com/users/gradle/following{/other_user}","gists_url":"https://api.github.com/users/gradle/gists{/gist_id}","starred_url":"https://api.github.com/users/gradle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gradle/subscriptions","organizations_url":"https://api.github.com/users/gradle/orgs","repos_url":"https://api.github.com/users/gradle/repos","events_url":"https://api.github.com/users/gradle/events{/privacy}","received_events_url":"https://api.github.com/users/gradle/received_events","type":"Organization","site_admin":false},"repo":{"id":302322,"name":"gradle","full_name":"gradle/gradle","owner":{"login":"gradle","id":124156,"avatar_url":"https://avatars.githubusercontent.com/u/124156?v=3","gravatar_id":"","url":"https://api.github.com/users/gradle","html_url":"https://github.com/gradle","followers_url":"https://api.github.com/users/gradle/followers","following_url":"https://api.github.com/users/gradle/following{/other_user}","gists_url":"https://api.github.com/users/gradle/gists{/gist_id}","starred_url":"https://api.github.com/users/gradle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gradle/subscriptions","organizations_url":"https://api.github.com/users/gradle/orgs","repos_url":"https://api.github.com/users/gradle/repos","events_url":"https://api.github.com/users/gradle/events{/privacy}","received_events_url":"https://api.github.com/users/gradle/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/gradle/gradle","description":"A powerful build system for the JVM","fork":false,"url":"https://api.github.com/repos/gradle/gradle","forks_url":"https://api.github.com/repos/gradle/gradle/forks","keys_url":"https://api.github.com/repos/gradle/gradle/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gradle/gradle/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gradle/gradle/teams","hooks_url":"https://api.github.com/repos/gradle/gradle/hooks","issue_events_url":"https://api.github.com/repos/gradle/gradle/issues/events{/number}","events_url":"https://api.github.com/repos/gradle/gradle/events","assignees_url":"https://api.github.com/repos/gradle/gradle/assignees{/user}","branches_url":"https://api.github.com/repos/gradle/gradle/branches{/branch}","tags_url":"https://api.github.com/repos/gradle/gradle/tags","blobs_url":"https://api.github.com/repos/gradle/gradle/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gradle/gradle/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gradle/gradle/git/refs{/sha}","trees_url":"https://api.github.com/repos/gradle/gradle/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gradle/gradle/statuses/{sha}","languages_url":"https://api.github.com/repos/gradle/gradle/languages","stargazers_url":"https://api.github.com/repos/gradle/gradle/stargazers","contributors_url":"https://api.github.com/repos/gradle/gradle/contributors","subscribers_url":"https://api.github.com/repos/gradle/gradle/subscribers","subscription_url":"https://api.github.com/repos/gradle/gradle/subscription","commits_url":"https://api.github.com/repos/gradle/gradle/commits{/sha}","git_commits_url":"https://api.github.com/repos/gradle/gradle/git/commits{/sha}","comments_url":"https://api.github.com/repos/gradle/gradle/comments{/number}","issue_comment_url":"https://api.github.com/repos/gradle/gradle/issues/comments{/number}","contents_url":"https://api.github.com/repos/gradle/gradle/contents/{+path}","compare_url":"https://api.github.com/repos/gradle/gradle/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gradle/gradle/merges","archive_url":"https://api.github.com/repos/gradle/gradle/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gradle/gradle/downloads","issues_url":"https://api.github.com/repos/gradle/gradle/issues{/number}","pulls_url":"https://api.github.com/repos/gradle/gradle/pulls{/number}","milestones_url":"https://api.github.com/repos/gradle/gradle/milestones{/number}","notifications_url":"https://api.github.com/repos/gradle/gradle/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gradle/gradle/labels{/name}","releases_url":"https://api.github.com/repos/gradle/gradle/releases{/id}","deployments_url":"https://api.github.com/repos/gradle/gradle/deployments","created_at":"2009-09-09T18:27:19Z","updated_at":"2016-11-15T18:40:05Z","pushed_at":"2016-11-16T08:40:57Z","git_url":"git://github.com/gradle/gradle.git","ssh_url":"git@github.com:gradle/gradle.git","clone_url":"https://github.com/gradle/gradle.git","svn_url":"https://github.com/gradle/gradle","homepage":"gradle.org","size":207357,"stargazers_count":4139,"watchers_count":4139,"language":"Java","has_issues":true,"has_downloads":false,"has_wiki":true,"has_pages":false,"forks_count":1555,"mirror_url":null,"open_issues_count":120,"forks":1555,"open_issues":120,"watchers":4139,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/gradle/gradle/pulls/854"},"html":{"href":"https://github.com/gradle/gradle/pull/854"},"issue":{"href":"https://api.github.com/repos/gradle/gradle/issues/854"},"comments":{"href":"https://api.github.com/repos/gradle/gradle/issues/854/comments"},"review_comments":{"href":"https://api.github.com/repos/gradle/gradle/pulls/854/comments"},"review_comment":{"href":"https://api.github.com/repos/gradle/gradle/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/gradle/gradle/pulls/854/commits"},"statuses":{"href":"https://api.github.com/repos/gradle/gradle/statuses/f13eb8df1449a614b4a903cc543dbbde7a0dd823"}}}}
{"actor":{"display_login":"eskatos"}}