{"action":"created","comment":{"url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/comments/48261171","id":48261171,"diff_hunk":"@@ -34,348 +44,445 @@\n  * @author Kohsuke Kawaguchi\n  * @author Jonathan Fuerth\n  * @author Ognjen Bubalo\n- * \n  */\n-public class JacocoPublisher extends Recorder {\n-    \n+public class JacocoPublisher extends Recorder implements SimpleBuildStep {\n+\n     /**\n      * Rule to be enforced. Can be null.\n-     *\n+     * <p>\n      * TODO: define a configuration mechanism.\n      */\n     public Rule rule;\n-    @Deprecated public transient String includes;\n-    @Deprecated public transient int moduleNum;\n+    @Deprecated\n+    public transient String includes;\n+    @Deprecated\n+    public transient int moduleNum;\n     /**\n      * {@link hudson.model.HealthReport} thresholds to apply.\n      */\n     public JacocoHealthReportThresholds healthReports;\n \n-    \n+\n     /**\n      * Variables containing the configuration set by the user.\n      */\n-\tprivate final String execPattern;\n-\tprivate final String classPattern;\n-\tprivate final String sourcePattern;\n-\tprivate final String inclusionPattern;\n-\tprivate final String exclusionPattern;\n-\t\n-    \n-    private final String minimumInstructionCoverage;\n-    private final String minimumBranchCoverage;\n-    private final String minimumComplexityCoverage;\n-    private final String minimumLineCoverage;\n-    private final String minimumMethodCoverage;\n-    private final String minimumClassCoverage;\n-    private final String maximumInstructionCoverage;\n-    private final String maximumBranchCoverage;\n-    private final String maximumComplexityCoverage;\n-    private final String maximumLineCoverage;\n-    private final String maximumMethodCoverage;\n-    private final String maximumClassCoverage;\n-    private final boolean changeBuildStatus;\n-    \n-\n-\t/**\n+    private String execPattern;\n+    private String classPattern;\n+    private String sourcePattern;\n+    private String inclusionPattern;\n+    private String exclusionPattern;\n+\n+\n+    private String minimumInstructionCoverage;\n+    private String minimumBranchCoverage;\n+    private String minimumComplexityCoverage;\n+    private String minimumLineCoverage;\n+    private String minimumMethodCoverage;\n+    private String minimumClassCoverage;\n+    private String maximumInstructionCoverage;\n+    private String maximumBranchCoverage;\n+    private String maximumComplexityCoverage;\n+    private String maximumLineCoverage;\n+    private String maximumMethodCoverage;\n+    private String maximumClassCoverage;\n+    private boolean changeBuildStatus;\n+\n+    @DataBoundConstructor\n+    public JacocoPublisher() {","path":"src/main/java/hudson/plugins/jacoco/JacocoPublisher.java","position":106,"original_position":106,"commit_id":"ce1f7322f1462ba35c2f7cecc1556d2456066c64","original_commit_id":"ce1f7322f1462ba35c2f7cecc1556d2456066c64","user":{"login":"daniel-beck","id":1831569,"avatar_url":"https://avatars.githubusercontent.com/u/1831569?v=3","gravatar_id":"","url":"https://api.github.com/users/daniel-beck","html_url":"https://github.com/daniel-beck","followers_url":"https://api.github.com/users/daniel-beck/followers","following_url":"https://api.github.com/users/daniel-beck/following{/other_user}","gists_url":"https://api.github.com/users/daniel-beck/gists{/gist_id}","starred_url":"https://api.github.com/users/daniel-beck/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daniel-beck/subscriptions","organizations_url":"https://api.github.com/users/daniel-beck/orgs","repos_url":"https://api.github.com/users/daniel-beck/repos","events_url":"https://api.github.com/users/daniel-beck/events{/privacy}","received_events_url":"https://api.github.com/users/daniel-beck/received_events","type":"User","site_admin":false},"body":"The new constructor could just be empty since you have all the new `@DataboundSetters`. This would put an end to the sequence of `@Deprecated` constructors.","created_at":"2015-12-22T15:07:55Z","updated_at":"2015-12-22T15:07:55Z","html_url":"https://github.com/jenkinsci/jacoco-plugin/pull/63#discussion_r48261171","pull_request_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63","_links":{"self":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/comments/48261171"},"html":{"href":"https://github.com/jenkinsci/jacoco-plugin/pull/63#discussion_r48261171"},"pull_request":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63"}}},"pull_request":{"url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63","id":54364616,"html_url":"https://github.com/jenkinsci/jacoco-plugin/pull/63","diff_url":"https://github.com/jenkinsci/jacoco-plugin/pull/63.diff","patch_url":"https://github.com/jenkinsci/jacoco-plugin/pull/63.patch","issue_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/issues/63","number":63,"state":"open","locked":false,"title":"[JENKINS-27120] Adding Workflow support for JaCoCo publisher","user":{"login":"lordofthejars","id":1517153,"avatar_url":"https://avatars.githubusercontent.com/u/1517153?v=3","gravatar_id":"","url":"https://api.github.com/users/lordofthejars","html_url":"https://github.com/lordofthejars","followers_url":"https://api.github.com/users/lordofthejars/followers","following_url":"https://api.github.com/users/lordofthejars/following{/other_user}","gists_url":"https://api.github.com/users/lordofthejars/gists{/gist_id}","starred_url":"https://api.github.com/users/lordofthejars/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lordofthejars/subscriptions","organizations_url":"https://api.github.com/users/lordofthejars/orgs","repos_url":"https://api.github.com/users/lordofthejars/repos","events_url":"https://api.github.com/users/lordofthejars/events{/privacy}","received_events_url":"https://api.github.com/users/lordofthejars/received_events","type":"User","site_admin":false},"body":"There is no test since testing JaCoCo plugin in unit test it goes to a chicken-egg problem. JaCoCo needs a classes directory to copy them to its internal structure, so the first idea is to copy those classes before executing the job, but then Jenkins complains that this job has already created a directory and it is not executed. I have tested manually and it works and a test should be added to ATH.\r\n\r\nIn fact if you look at all JaCoCoPublisher tests that were already created you'll notice that they do nothing or are commented, probably because of the same problem I faced during Workflow integration.\r\n\r\nIssue: https://issues.jenkins-ci.org/browse/JENKINS-27120\r\n\r\n@reviewbybees ","created_at":"2015-12-22T12:29:43Z","updated_at":"2015-12-22T15:07:55Z","closed_at":null,"merged_at":null,"merge_commit_sha":"5f0f53a5c85b495cbceaac34fbfd90d91506b523","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63/commits","review_comments_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63/comments","review_comment_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/comments{/number}","comments_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/issues/63/comments","statuses_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/statuses/ce1f7322f1462ba35c2f7cecc1556d2456066c64","head":{"label":"lordofthejars:JENKINS-27120","ref":"JENKINS-27120","sha":"ce1f7322f1462ba35c2f7cecc1556d2456066c64","user":{"login":"lordofthejars","id":1517153,"avatar_url":"https://avatars.githubusercontent.com/u/1517153?v=3","gravatar_id":"","url":"https://api.github.com/users/lordofthejars","html_url":"https://github.com/lordofthejars","followers_url":"https://api.github.com/users/lordofthejars/followers","following_url":"https://api.github.com/users/lordofthejars/following{/other_user}","gists_url":"https://api.github.com/users/lordofthejars/gists{/gist_id}","starred_url":"https://api.github.com/users/lordofthejars/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lordofthejars/subscriptions","organizations_url":"https://api.github.com/users/lordofthejars/orgs","repos_url":"https://api.github.com/users/lordofthejars/repos","events_url":"https://api.github.com/users/lordofthejars/events{/privacy}","received_events_url":"https://api.github.com/users/lordofthejars/received_events","type":"User","site_admin":false},"repo":{"id":48188950,"name":"jacoco-plugin","full_name":"lordofthejars/jacoco-plugin","owner":{"login":"lordofthejars","id":1517153,"avatar_url":"https://avatars.githubusercontent.com/u/1517153?v=3","gravatar_id":"","url":"https://api.github.com/users/lordofthejars","html_url":"https://github.com/lordofthejars","followers_url":"https://api.github.com/users/lordofthejars/followers","following_url":"https://api.github.com/users/lordofthejars/following{/other_user}","gists_url":"https://api.github.com/users/lordofthejars/gists{/gist_id}","starred_url":"https://api.github.com/users/lordofthejars/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lordofthejars/subscriptions","organizations_url":"https://api.github.com/users/lordofthejars/orgs","repos_url":"https://api.github.com/users/lordofthejars/repos","events_url":"https://api.github.com/users/lordofthejars/events{/privacy}","received_events_url":"https://api.github.com/users/lordofthejars/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/lordofthejars/jacoco-plugin","description":"Jenkins JaCoCo Plugin","fork":true,"url":"https://api.github.com/repos/lordofthejars/jacoco-plugin","forks_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/forks","keys_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/teams","hooks_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/hooks","issue_events_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/issues/events{/number}","events_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/events","assignees_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/assignees{/user}","branches_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/branches{/branch}","tags_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/tags","blobs_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/git/refs{/sha}","trees_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/statuses/{sha}","languages_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/languages","stargazers_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/stargazers","contributors_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/contributors","subscribers_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/subscribers","subscription_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/subscription","commits_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/commits{/sha}","git_commits_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/git/commits{/sha}","comments_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/comments{/number}","issue_comment_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/issues/comments{/number}","contents_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/contents/{+path}","compare_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/merges","archive_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/downloads","issues_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/issues{/number}","pulls_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/pulls{/number}","milestones_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/milestones{/number}","notifications_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/labels{/name}","releases_url":"https://api.github.com/repos/lordofthejars/jacoco-plugin/releases{/id}","created_at":"2015-12-17T17:39:51Z","updated_at":"2015-12-17T17:39:52Z","pushed_at":"2015-12-22T12:24:55Z","git_url":"git://github.com/lordofthejars/jacoco-plugin.git","ssh_url":"git@github.com:lordofthejars/jacoco-plugin.git","clone_url":"https://github.com/lordofthejars/jacoco-plugin.git","svn_url":"https://github.com/lordofthejars/jacoco-plugin","homepage":"https://wiki.jenkins-ci.org/display/JENKINS/JaCoCo+Plugin","size":790,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"jenkinsci:master","ref":"master","sha":"c5edf40d484ec11a2ccbc20f73b2c482dbf8c261","user":{"login":"jenkinsci","id":107424,"avatar_url":"https://avatars.githubusercontent.com/u/107424?v=3","gravatar_id":"","url":"https://api.github.com/users/jenkinsci","html_url":"https://github.com/jenkinsci","followers_url":"https://api.github.com/users/jenkinsci/followers","following_url":"https://api.github.com/users/jenkinsci/following{/other_user}","gists_url":"https://api.github.com/users/jenkinsci/gists{/gist_id}","starred_url":"https://api.github.com/users/jenkinsci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jenkinsci/subscriptions","organizations_url":"https://api.github.com/users/jenkinsci/orgs","repos_url":"https://api.github.com/users/jenkinsci/repos","events_url":"https://api.github.com/users/jenkinsci/events{/privacy}","received_events_url":"https://api.github.com/users/jenkinsci/received_events","type":"Organization","site_admin":false},"repo":{"id":4522681,"name":"jacoco-plugin","full_name":"jenkinsci/jacoco-plugin","owner":{"login":"jenkinsci","id":107424,"avatar_url":"https://avatars.githubusercontent.com/u/107424?v=3","gravatar_id":"","url":"https://api.github.com/users/jenkinsci","html_url":"https://github.com/jenkinsci","followers_url":"https://api.github.com/users/jenkinsci/followers","following_url":"https://api.github.com/users/jenkinsci/following{/other_user}","gists_url":"https://api.github.com/users/jenkinsci/gists{/gist_id}","starred_url":"https://api.github.com/users/jenkinsci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jenkinsci/subscriptions","organizations_url":"https://api.github.com/users/jenkinsci/orgs","repos_url":"https://api.github.com/users/jenkinsci/repos","events_url":"https://api.github.com/users/jenkinsci/events{/privacy}","received_events_url":"https://api.github.com/users/jenkinsci/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/jenkinsci/jacoco-plugin","description":"Jenkins JaCoCo Plugin","fork":false,"url":"https://api.github.com/repos/jenkinsci/jacoco-plugin","forks_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/forks","keys_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/teams","hooks_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/hooks","issue_events_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/issues/events{/number}","events_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/events","assignees_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/assignees{/user}","branches_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/branches{/branch}","tags_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/tags","blobs_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/git/refs{/sha}","trees_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/statuses/{sha}","languages_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/languages","stargazers_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/stargazers","contributors_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/contributors","subscribers_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/subscribers","subscription_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/subscription","commits_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/commits{/sha}","git_commits_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/git/commits{/sha}","comments_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/comments{/number}","issue_comment_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/issues/comments{/number}","contents_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/contents/{+path}","compare_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/merges","archive_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/downloads","issues_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/issues{/number}","pulls_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls{/number}","milestones_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/milestones{/number}","notifications_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/labels{/name}","releases_url":"https://api.github.com/repos/jenkinsci/jacoco-plugin/releases{/id}","created_at":"2012-06-01T18:12:38Z","updated_at":"2015-12-21T10:42:10Z","pushed_at":"2015-12-22T12:29:44Z","git_url":"git://github.com/jenkinsci/jacoco-plugin.git","ssh_url":"git@github.com:jenkinsci/jacoco-plugin.git","clone_url":"https://github.com/jenkinsci/jacoco-plugin.git","svn_url":"https://github.com/jenkinsci/jacoco-plugin","homepage":"https://wiki.jenkins-ci.org/display/JENKINS/JaCoCo+Plugin","size":955,"stargazers_count":44,"watchers_count":44,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":65,"mirror_url":null,"open_issues_count":13,"forks":65,"open_issues":13,"watchers":44,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63"},"html":{"href":"https://github.com/jenkinsci/jacoco-plugin/pull/63"},"issue":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/issues/63"},"comments":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/issues/63/comments"},"review_comments":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63/comments"},"review_comment":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/pulls/63/commits"},"statuses":{"href":"https://api.github.com/repos/jenkinsci/jacoco-plugin/statuses/ce1f7322f1462ba35c2f7cecc1556d2456066c64"}}}}