{"action":"created","issue":{"url":"https://api.github.com/repos/SonarSource/sonarqube/issues/610","labels_url":"https://api.github.com/repos/SonarSource/sonarqube/issues/610/labels{/name}","comments_url":"https://api.github.com/repos/SonarSource/sonarqube/issues/610/comments","events_url":"https://api.github.com/repos/SonarSource/sonarqube/issues/610/events","html_url":"https://github.com/SonarSource/sonarqube/pull/610","id":114626295,"number":610,"title":"SONAR-6919 Enforce some mandatory web service metadata","user":{"login":"teryk","id":1247713,"avatar_url":"https://avatars.githubusercontent.com/u/1247713?v=3","gravatar_id":"","url":"https://api.github.com/users/teryk","html_url":"https://github.com/teryk","followers_url":"https://api.github.com/users/teryk/followers","following_url":"https://api.github.com/users/teryk/following{/other_user}","gists_url":"https://api.github.com/users/teryk/gists{/gist_id}","starred_url":"https://api.github.com/users/teryk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/teryk/subscriptions","organizations_url":"https://api.github.com/users/teryk/orgs","repos_url":"https://api.github.com/users/teryk/repos","events_url":"https://api.github.com/users/teryk/events{/privacy}","received_events_url":"https://api.github.com/users/teryk/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-11-02T16:09:25Z","updated_at":"2015-11-04T11:05:03Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/SonarSource/sonarqube/pulls/610","html_url":"https://github.com/SonarSource/sonarqube/pull/610","diff_url":"https://github.com/SonarSource/sonarqube/pull/610.diff","patch_url":"https://github.com/SonarSource/sonarqube/pull/610.patch"},"body":"This PR sets 3 fields as mandatory at the WS level:\r\n- since\r\n- description\r\n- response example for GET web service\r\n\r\nNotes\r\n- api/dashboards/show is going to be deleted in this sprint. I couldn't make it work. It doesn't seem to be used and it's an internal WS.\r\n- the 2nd commit is huge, it's the addition of all the missing now mandatory information, most notably the response example. I suggest to start reviewing the 1st commit, then the 2nd one. All the logic is in the 1st commit"},"comment":{"url":"https://api.github.com/repos/SonarSource/sonarqube/issues/comments/153686668","html_url":"https://github.com/SonarSource/sonarqube/pull/610#issuecomment-153686668","issue_url":"https://api.github.com/repos/SonarSource/sonarqube/issues/610","id":153686668,"user":{"login":"SonarTech","id":1842438,"avatar_url":"https://avatars.githubusercontent.com/u/1842438?v=3","gravatar_id":"","url":"https://api.github.com/users/SonarTech","html_url":"https://github.com/SonarTech","followers_url":"https://api.github.com/users/SonarTech/followers","following_url":"https://api.github.com/users/SonarTech/following{/other_user}","gists_url":"https://api.github.com/users/SonarTech/gists{/gist_id}","starred_url":"https://api.github.com/users/SonarTech/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SonarTech/subscriptions","organizations_url":"https://api.github.com/users/SonarTech/orgs","repos_url":"https://api.github.com/users/SonarTech/repos","events_url":"https://api.github.com/users/SonarTech/events{/privacy}","received_events_url":"https://api.github.com/users/SonarTech/received_events","type":"User","site_admin":false},"created_at":"2015-11-04T11:05:03Z","updated_at":"2015-11-04T11:05:03Z","body":"SonarQube analysis reported 9 issues:\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) 8 major\n* ![MINOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-minor.png) 1 minor\n\nWatch the comments in this conversation to review them.\nNote: the following issues could not be reported as comments because they are located on lines that are not displayed in this pull request:\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) Add a 'package-info.java' file to document the 'protocol' package (org.sonarsource.sonarqube:sonar-batch-protocol:target/generated-sources/protobuf/org/sonar/batch/protocol) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS1228)\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) Add a 'package-info.java' file to document the 'input' package (org.sonarsource.sonarqube:sonar-batch-protocol:target/generated-sources/protobuf/org/sonar/batch/protocol/input) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS1228)\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) Add a 'package-info.java' file to document the 'output' package (org.sonarsource.sonarqube:sonar-batch-protocol:target/generated-sources/protobuf/org/sonar/batch/protocol/output) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS1228)\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) Add a 'package-info.java' file to document the 'protobuf' package (org.sonarsource.sonarqube:sonar-db:target/generated-sources/protobuf/org/sonar/db/protobuf) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS1228)\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) [Make this a named \"static\" inner class.](https://github.com/SonarSource/sonarqube/blob/379b8f2afc9cfc135ed9ffdca050580c12aa7a5e/server/sonar-server/src/main/java/org/sonar/server/ws/WebServicesWs.java#L128) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS2694)\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) [Make this a named \"static\" inner class.](https://github.com/SonarSource/sonarqube/blob/379b8f2afc9cfc135ed9ffdca050580c12aa7a5e/server/sonar-server/src/main/java/org/sonar/server/ws/WebServicesWs.java#L149) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS2694)\n* ![MINOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-minor.png) [Define a constant instead of duplicating this literal \"description\" 3 times.](https://github.com/SonarSource/sonarqube/blob/379b8f2afc9cfc135ed9ffdca050580c12aa7a5e/server/sonar-server/src/main/java/org/sonar/server/ws/WebServicesWs.java#L147) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS1192)\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) [Make this a named \"static\" inner class.](https://github.com/SonarSource/sonarqube/blob/379b8f2afc9cfc135ed9ffdca050580c12aa7a5e/server/sonar-server/src/main/java/org/sonar/server/ws/WebServicesWs.java#L175) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS2694)\n* ![MAJOR](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/severity-major.png) Add a 'package-info.java' file to document the 'ws' package (org.sonarsource.sonarqube:sonar-ws:target/generated-sources/protobuf/org/sonarqube/ws) [![rule](https://raw.githubusercontent.com/SonarCommunity/sonar-github/master/images/rule.png)](https://dory.sonarsource.com/coding_rules#rule_key=squid%3AS1228)\n"}}