{"action":"created","comment":{"url":"https://api.github.com/repos/scalameta/metals/pulls/comments/176185115","pull_request_review_id":105833808,"id":176185115,"diff_hunk":"@@ -305,11 +313,13 @@ class MetalsServices(\n       ()\n     }\n     .request(td.documentHighlight) { params =>\n-      DocumentHighlightProvider.highlight(\n-        symbolIndex,\n-        Uri(params.textDocument.uri),\n-        params.position\n-      )\n+      if (latestConfig().highlight.enabled) {","path":"metals/src/main/scala/scala/meta/metals/ScalametaServices.scala","position":52,"original_position":52,"commit_id":"806db74dd4f9637732e90a103d04914afa350e0a","original_commit_id":"806db74dd4f9637732e90a103d04914afa350e0a","user":{"login":"olafurpg","id":1408093,"avatar_url":"https://avatars0.githubusercontent.com/u/1408093?v=4","gravatar_id":"","url":"https://api.github.com/users/olafurpg","html_url":"https://github.com/olafurpg","followers_url":"https://api.github.com/users/olafurpg/followers","following_url":"https://api.github.com/users/olafurpg/following{/other_user}","gists_url":"https://api.github.com/users/olafurpg/gists{/gist_id}","starred_url":"https://api.github.com/users/olafurpg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olafurpg/subscriptions","organizations_url":"https://api.github.com/users/olafurpg/orgs","repos_url":"https://api.github.com/users/olafurpg/repos","events_url":"https://api.github.com/users/olafurpg/events{/privacy}","received_events_url":"https://api.github.com/users/olafurpg/received_events","type":"User","site_admin":false},"body":"Have you tried to dynamically unregister capabilities? I think it makes sense to keep this guard regardless because I'm not sure if we can rely on it in case a client like vim/sublime to respect dynamic capabilities. Just curious to see if it works.","created_at":"2018-03-21T18:07:10Z","updated_at":"2018-03-21T18:08:51Z","html_url":"https://github.com/scalameta/metals/pull/204#discussion_r176185115","pull_request_url":"https://api.github.com/repos/scalameta/metals/pulls/204","author_association":"OWNER","_links":{"self":{"href":"https://api.github.com/repos/scalameta/metals/pulls/comments/176185115"},"html":{"href":"https://github.com/scalameta/metals/pull/204#discussion_r176185115"},"pull_request":{"href":"https://api.github.com/repos/scalameta/metals/pulls/204"}}},"pull_request":{"url":"https://api.github.com/repos/scalameta/metals/pulls/204","id":174262457,"html_url":"https://github.com/scalameta/metals/pull/204","diff_url":"https://github.com/scalameta/metals/pull/204.diff","patch_url":"https://github.com/scalameta/metals/pull/204.patch","issue_url":"https://api.github.com/repos/scalameta/metals/issues/204","number":204,"state":"open","locked":false,"title":"Respect more configuration options","user":{"login":"laughedelic","id":766656,"avatar_url":"https://avatars2.githubusercontent.com/u/766656?v=4","gravatar_id":"","url":"https://api.github.com/users/laughedelic","html_url":"https://github.com/laughedelic","followers_url":"https://api.github.com/users/laughedelic/followers","following_url":"https://api.github.com/users/laughedelic/following{/other_user}","gists_url":"https://api.github.com/users/laughedelic/gists{/gist_id}","starred_url":"https://api.github.com/users/laughedelic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laughedelic/subscriptions","organizations_url":"https://api.github.com/users/laughedelic/orgs","repos_url":"https://api.github.com/users/laughedelic/repos","events_url":"https://api.github.com/users/laughedelic/events{/privacy}","received_events_url":"https://api.github.com/users/laughedelic/received_events","type":"User","site_admin":false},"body":"This fixes some points in #161:\r\n- respect hover.enabled for tooltips on hover\r\n- respect scalac.enabled for diagnostics, completions and signature help\r\n- add an option to control symbol highlights (`textDocument.documentHighlight`)\r\n\r\nSome things for discussion:\r\n- I think that the features provided by presentation compiler should have their own switches. Although their stability depends on the state of PC, even if they do work, they may work differently and have different value for the user. So user may want to enable only some of them. \r\n- I got confused by the `PublishSquigglies` vs. `PublishScalacDiagnostics`. Isn't it all just diagnostics? Also I'm not sure I handled `scalac.enabled` for the diagnostics well. If I disable `sbt.enabled` and `scalac.enabled`, but enable `scalafix.enabled`, I still get \"squigglies\" on save — where do they come from? Does it mean that PC still generates semanticdb for scalafix?\r\n- I disabled symbol highlights by default because it works well in read-only mode, but breaks immediately once I start changing code. This is something to be diagnosed and addressed separately, but I think this feature is not stable enough to be enabled by default.","created_at":"2018-03-12T02:56:37Z","updated_at":"2018-03-21T18:08:51Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c9dad05a73d6065da837e239e30167abec075b47","assignee":{"login":"olafurpg","id":1408093,"avatar_url":"https://avatars0.githubusercontent.com/u/1408093?v=4","gravatar_id":"","url":"https://api.github.com/users/olafurpg","html_url":"https://github.com/olafurpg","followers_url":"https://api.github.com/users/olafurpg/followers","following_url":"https://api.github.com/users/olafurpg/following{/other_user}","gists_url":"https://api.github.com/users/olafurpg/gists{/gist_id}","starred_url":"https://api.github.com/users/olafurpg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olafurpg/subscriptions","organizations_url":"https://api.github.com/users/olafurpg/orgs","repos_url":"https://api.github.com/users/olafurpg/repos","events_url":"https://api.github.com/users/olafurpg/events{/privacy}","received_events_url":"https://api.github.com/users/olafurpg/received_events","type":"User","site_admin":false},"assignees":[{"login":"olafurpg","id":1408093,"avatar_url":"https://avatars0.githubusercontent.com/u/1408093?v=4","gravatar_id":"","url":"https://api.github.com/users/olafurpg","html_url":"https://github.com/olafurpg","followers_url":"https://api.github.com/users/olafurpg/followers","following_url":"https://api.github.com/users/olafurpg/following{/other_user}","gists_url":"https://api.github.com/users/olafurpg/gists{/gist_id}","starred_url":"https://api.github.com/users/olafurpg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olafurpg/subscriptions","organizations_url":"https://api.github.com/users/olafurpg/orgs","repos_url":"https://api.github.com/users/olafurpg/repos","events_url":"https://api.github.com/users/olafurpg/events{/privacy}","received_events_url":"https://api.github.com/users/olafurpg/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"login":"gabro","id":691940,"avatar_url":"https://avatars0.githubusercontent.com/u/691940?v=4","gravatar_id":"","url":"https://api.github.com/users/gabro","html_url":"https://github.com/gabro","followers_url":"https://api.github.com/users/gabro/followers","following_url":"https://api.github.com/users/gabro/following{/other_user}","gists_url":"https://api.github.com/users/gabro/gists{/gist_id}","starred_url":"https://api.github.com/users/gabro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gabro/subscriptions","organizations_url":"https://api.github.com/users/gabro/orgs","repos_url":"https://api.github.com/users/gabro/repos","events_url":"https://api.github.com/users/gabro/events{/privacy}","received_events_url":"https://api.github.com/users/gabro/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/scalameta/metals/pulls/204/commits","review_comments_url":"https://api.github.com/repos/scalameta/metals/pulls/204/comments","review_comment_url":"https://api.github.com/repos/scalameta/metals/pulls/comments{/number}","comments_url":"https://api.github.com/repos/scalameta/metals/issues/204/comments","statuses_url":"https://api.github.com/repos/scalameta/metals/statuses/806db74dd4f9637732e90a103d04914afa350e0a","head":{"label":"laughedelic:respect-config","ref":"respect-config","sha":"806db74dd4f9637732e90a103d04914afa350e0a","user":{"login":"laughedelic","id":766656,"avatar_url":"https://avatars2.githubusercontent.com/u/766656?v=4","gravatar_id":"","url":"https://api.github.com/users/laughedelic","html_url":"https://github.com/laughedelic","followers_url":"https://api.github.com/users/laughedelic/followers","following_url":"https://api.github.com/users/laughedelic/following{/other_user}","gists_url":"https://api.github.com/users/laughedelic/gists{/gist_id}","starred_url":"https://api.github.com/users/laughedelic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laughedelic/subscriptions","organizations_url":"https://api.github.com/users/laughedelic/orgs","repos_url":"https://api.github.com/users/laughedelic/repos","events_url":"https://api.github.com/users/laughedelic/events{/privacy}","received_events_url":"https://api.github.com/users/laughedelic/received_events","type":"User","site_admin":false},"repo":{"id":110185572,"name":"metals","full_name":"laughedelic/metals","owner":{"login":"laughedelic","id":766656,"avatar_url":"https://avatars2.githubusercontent.com/u/766656?v=4","gravatar_id":"","url":"https://api.github.com/users/laughedelic","html_url":"https://github.com/laughedelic","followers_url":"https://api.github.com/users/laughedelic/followers","following_url":"https://api.github.com/users/laughedelic/following{/other_user}","gists_url":"https://api.github.com/users/laughedelic/gists{/gist_id}","starred_url":"https://api.github.com/users/laughedelic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laughedelic/subscriptions","organizations_url":"https://api.github.com/users/laughedelic/orgs","repos_url":"https://api.github.com/users/laughedelic/repos","events_url":"https://api.github.com/users/laughedelic/events{/privacy}","received_events_url":"https://api.github.com/users/laughedelic/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/laughedelic/metals","description":"WIP - Language Server Protocol for SemanticDB","fork":true,"url":"https://api.github.com/repos/laughedelic/metals","forks_url":"https://api.github.com/repos/laughedelic/metals/forks","keys_url":"https://api.github.com/repos/laughedelic/metals/keys{/key_id}","collaborators_url":"https://api.github.com/repos/laughedelic/metals/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/laughedelic/metals/teams","hooks_url":"https://api.github.com/repos/laughedelic/metals/hooks","issue_events_url":"https://api.github.com/repos/laughedelic/metals/issues/events{/number}","events_url":"https://api.github.com/repos/laughedelic/metals/events","assignees_url":"https://api.github.com/repos/laughedelic/metals/assignees{/user}","branches_url":"https://api.github.com/repos/laughedelic/metals/branches{/branch}","tags_url":"https://api.github.com/repos/laughedelic/metals/tags","blobs_url":"https://api.github.com/repos/laughedelic/metals/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/laughedelic/metals/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/laughedelic/metals/git/refs{/sha}","trees_url":"https://api.github.com/repos/laughedelic/metals/git/trees{/sha}","statuses_url":"https://api.github.com/repos/laughedelic/metals/statuses/{sha}","languages_url":"https://api.github.com/repos/laughedelic/metals/languages","stargazers_url":"https://api.github.com/repos/laughedelic/metals/stargazers","contributors_url":"https://api.github.com/repos/laughedelic/metals/contributors","subscribers_url":"https://api.github.com/repos/laughedelic/metals/subscribers","subscription_url":"https://api.github.com/repos/laughedelic/metals/subscription","commits_url":"https://api.github.com/repos/laughedelic/metals/commits{/sha}","git_commits_url":"https://api.github.com/repos/laughedelic/metals/git/commits{/sha}","comments_url":"https://api.github.com/repos/laughedelic/metals/comments{/number}","issue_comment_url":"https://api.github.com/repos/laughedelic/metals/issues/comments{/number}","contents_url":"https://api.github.com/repos/laughedelic/metals/contents/{+path}","compare_url":"https://api.github.com/repos/laughedelic/metals/compare/{base}...{head}","merges_url":"https://api.github.com/repos/laughedelic/metals/merges","archive_url":"https://api.github.com/repos/laughedelic/metals/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/laughedelic/metals/downloads","issues_url":"https://api.github.com/repos/laughedelic/metals/issues{/number}","pulls_url":"https://api.github.com/repos/laughedelic/metals/pulls{/number}","milestones_url":"https://api.github.com/repos/laughedelic/metals/milestones{/number}","notifications_url":"https://api.github.com/repos/laughedelic/metals/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/laughedelic/metals/labels{/name}","releases_url":"https://api.github.com/repos/laughedelic/metals/releases{/id}","deployments_url":"https://api.github.com/repos/laughedelic/metals/deployments","created_at":"2017-11-10T01:14:59Z","updated_at":"2018-02-10T16:18:22Z","pushed_at":"2018-03-12T02:43:42Z","git_url":"git://github.com/laughedelic/metals.git","ssh_url":"git@github.com:laughedelic/metals.git","clone_url":"https://github.com/laughedelic/metals.git","svn_url":"https://github.com/laughedelic/metals","homepage":"","size":1118,"stargazers_count":0,"watchers_count":0,"language":"Scala","has_issues":false,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"scalameta:master","ref":"master","sha":"977c902b73468092def43b70ab54b3007f32951d","user":{"login":"scalameta","id":7526438,"avatar_url":"https://avatars1.githubusercontent.com/u/7526438?v=4","gravatar_id":"","url":"https://api.github.com/users/scalameta","html_url":"https://github.com/scalameta","followers_url":"https://api.github.com/users/scalameta/followers","following_url":"https://api.github.com/users/scalameta/following{/other_user}","gists_url":"https://api.github.com/users/scalameta/gists{/gist_id}","starred_url":"https://api.github.com/users/scalameta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scalameta/subscriptions","organizations_url":"https://api.github.com/users/scalameta/orgs","repos_url":"https://api.github.com/users/scalameta/repos","events_url":"https://api.github.com/users/scalameta/events{/privacy}","received_events_url":"https://api.github.com/users/scalameta/received_events","type":"Organization","site_admin":false},"repo":{"id":109404123,"name":"metals","full_name":"scalameta/metals","owner":{"login":"scalameta","id":7526438,"avatar_url":"https://avatars1.githubusercontent.com/u/7526438?v=4","gravatar_id":"","url":"https://api.github.com/users/scalameta","html_url":"https://github.com/scalameta","followers_url":"https://api.github.com/users/scalameta/followers","following_url":"https://api.github.com/users/scalameta/following{/other_user}","gists_url":"https://api.github.com/users/scalameta/gists{/gist_id}","starred_url":"https://api.github.com/users/scalameta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scalameta/subscriptions","organizations_url":"https://api.github.com/users/scalameta/orgs","repos_url":"https://api.github.com/users/scalameta/repos","events_url":"https://api.github.com/users/scalameta/events{/privacy}","received_events_url":"https://api.github.com/users/scalameta/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/scalameta/metals","description":"WIP - Language Server for Scala","fork":false,"url":"https://api.github.com/repos/scalameta/metals","forks_url":"https://api.github.com/repos/scalameta/metals/forks","keys_url":"https://api.github.com/repos/scalameta/metals/keys{/key_id}","collaborators_url":"https://api.github.com/repos/scalameta/metals/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/scalameta/metals/teams","hooks_url":"https://api.github.com/repos/scalameta/metals/hooks","issue_events_url":"https://api.github.com/repos/scalameta/metals/issues/events{/number}","events_url":"https://api.github.com/repos/scalameta/metals/events","assignees_url":"https://api.github.com/repos/scalameta/metals/assignees{/user}","branches_url":"https://api.github.com/repos/scalameta/metals/branches{/branch}","tags_url":"https://api.github.com/repos/scalameta/metals/tags","blobs_url":"https://api.github.com/repos/scalameta/metals/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/scalameta/metals/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/scalameta/metals/git/refs{/sha}","trees_url":"https://api.github.com/repos/scalameta/metals/git/trees{/sha}","statuses_url":"https://api.github.com/repos/scalameta/metals/statuses/{sha}","languages_url":"https://api.github.com/repos/scalameta/metals/languages","stargazers_url":"https://api.github.com/repos/scalameta/metals/stargazers","contributors_url":"https://api.github.com/repos/scalameta/metals/contributors","subscribers_url":"https://api.github.com/repos/scalameta/metals/subscribers","subscription_url":"https://api.github.com/repos/scalameta/metals/subscription","commits_url":"https://api.github.com/repos/scalameta/metals/commits{/sha}","git_commits_url":"https://api.github.com/repos/scalameta/metals/git/commits{/sha}","comments_url":"https://api.github.com/repos/scalameta/metals/comments{/number}","issue_comment_url":"https://api.github.com/repos/scalameta/metals/issues/comments{/number}","contents_url":"https://api.github.com/repos/scalameta/metals/contents/{+path}","compare_url":"https://api.github.com/repos/scalameta/metals/compare/{base}...{head}","merges_url":"https://api.github.com/repos/scalameta/metals/merges","archive_url":"https://api.github.com/repos/scalameta/metals/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/scalameta/metals/downloads","issues_url":"https://api.github.com/repos/scalameta/metals/issues{/number}","pulls_url":"https://api.github.com/repos/scalameta/metals/pulls{/number}","milestones_url":"https://api.github.com/repos/scalameta/metals/milestones{/number}","notifications_url":"https://api.github.com/repos/scalameta/metals/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/scalameta/metals/labels{/name}","releases_url":"https://api.github.com/repos/scalameta/metals/releases{/id}","deployments_url":"https://api.github.com/repos/scalameta/metals/deployments","created_at":"2017-11-03T14:18:53Z","updated_at":"2018-03-21T16:42:33Z","pushed_at":"2018-03-21T16:42:31Z","git_url":"git://github.com/scalameta/metals.git","ssh_url":"git@github.com:scalameta/metals.git","clone_url":"https://github.com/scalameta/metals.git","svn_url":"https://github.com/scalameta/metals","homepage":"http://metals.rocks","size":1101,"stargazers_count":104,"watchers_count":104,"language":"Scala","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":12,"mirror_url":null,"archived":false,"open_issues_count":38,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0"},"forks":12,"open_issues":38,"watchers":104,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/scalameta/metals/pulls/204"},"html":{"href":"https://github.com/scalameta/metals/pull/204"},"issue":{"href":"https://api.github.com/repos/scalameta/metals/issues/204"},"comments":{"href":"https://api.github.com/repos/scalameta/metals/issues/204/comments"},"review_comments":{"href":"https://api.github.com/repos/scalameta/metals/pulls/204/comments"},"review_comment":{"href":"https://api.github.com/repos/scalameta/metals/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/scalameta/metals/pulls/204/commits"},"statuses":{"href":"https://api.github.com/repos/scalameta/metals/statuses/806db74dd4f9637732e90a103d04914afa350e0a"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"olafurpg"}}