Uploaded image for project: 'Clover'
  1. Clover
  2. CLOV-939

Add Groovy support in Clover for Intellij

    • Our product teams collect and evaluate feedback from a number of different sources. To learn more about how we use customer feedback in the planning process, check out our new feature policy.

      Atlassian Status as of 15 December 2011

      Hi Folks,

      Thanks for your feedback, we regularly review your requests in order to schedule the improvements that our customers highlight as most important and useful.

      After surveying the Clover customer base, we believe that the main use cases of Clover are satisfied by its current feature set. Due to this, we have decided to close this feature request as we are not planning to address this in the near future.

      For any questions or queries, please feel free to comment on this issue, we will get back to you in a timely manner.

      Regards,

      Josh Devenny
      Atlassian Product Management

      Status update 18.06.2014:

      I've made a spike for this. It's feasible and I've got a working prototype, but it needs a lot of polishing.

      Tasks:
      perform spike to estimate complexity
      solve problem with concurrent updates of clover.db (first is IDE/JPS builder process for Java code, second is Groovyc AST transformer) - maybe we could use two databases instead and merge them after the build in memory for reporting? it would require change in Settings > Clover window as well
      serialize Clover configuration to instrumentation.ser (initstring etc to be used by Clover Groovy AST Transformer)
      serialize inclusion/exclusion patterns for *.groovy files into the instrumentation.ser (files to be instrumented by Clover)
      integrate with IDEA's Groovy plugin (e.g. via GroovyBuilderExtension)
      pick Clover AST Transformer by groovyc process (META-INF/services)
      handle build started/finished events for Groovy-based projects
      show Groovy classes in the Cloverage view
      handle stub generation by groovyc?
      syntax highlighting for Groovy code (in editor tab)
      check integration with Groovy test runner / Spock test runner
      check instrumentation of mixed Java/Groovy projects (esp. compilation of Java sources from groovyc)
      handle compilation of Groovy code triggered from other IDEA plug-ins, such as: Grails, Gradle, Griffon
      check report generation (HTML, XML, PDF) launched from IDEA

        1. clover_idea_groovy_spock.png
          clover_idea_groovy_spock.png
          51 kB
        2. clover-idea.z01
          9.00 MB
        3. clover-idea.zip
          5.53 MB

            [CLOV-939] Add Groovy support in Clover for Intellij

            Marek Parfianowicz added a comment - clover_idea_groovy_spock.png

            Prototype:

            • clover-idea.zip + clover-idea.z01
            • it does not compile Java
            • an absolute path to initstring must be used (Project Settings > Clover > 'relative to project dir' unchecked, 'User specified' selected, full path in the text field)
            • tested with IDEA 13.0 only (which has an external build feature), does not handle 'classic' build (IDEA 12 and older)

            Marek Parfianowicz added a comment - Prototype: clover-idea.zip + clover-idea.z01 it does not compile Java an absolute path to initstring must be used (Project Settings > Clover > 'relative to project dir' unchecked, 'User specified' selected, full path in the text field) tested with IDEA 13.0 only (which has an external build feature), does not handle 'classic' build (IDEA 12 and older)

            Update:

            • we will re-evaluate a possibility of adding Groovy support in IDE in one of Clover 4.2 sprints (2015);
            • we don't guarantee that it will be implemented - it depends on the results of the evaluation

            Marek Parfianowicz added a comment - Update: we will re-evaluate a possibility of adding Groovy support in IDE in one of Clover 4.2 sprints (2015); we don't guarantee that it will be implemented - it depends on the results of the evaluation

            Thanks for setting that up. I like that 2 out of the top 3 are wont fix

            Jon Barksdale added a comment - Thanks for setting that up. I like that 2 out of the top 3 are wont fix

            FYI: I have also created a table with top 10 most voted features on the https://confluence.atlassian.com/display/CLOVER/Clover+Road+Map page

            Marek Parfianowicz added a comment - FYI: I have also created a table with top 10 most voted features on the https://confluence.atlassian.com/display/CLOVER/Clover+Road+Map page

            JoeA added a comment -

            I actually did know that and we use the Gradle integration already, I was thinking Spock support would be in IntelliJ, but that item is to support Spock outside of IntelliJ. Sorry, my mistake. Thanks!

            JoeA added a comment - I actually did know that and we use the Gradle integration already, I was thinking Spock support would be in IntelliJ, but that item is to support Spock outside of IntelliJ. Sorry, my mistake. Thanks!

            ??? :-o But Clover supports Groovy! Since very long time - you can instrument groovy via Ant, Maven and Grails plugins. What is missing is a direct integration with Eclipse and IDEA IDEs.

            Oh. There's also an integration with a Gradle written by community.

            Marek Parfianowicz added a comment - ??? :-o But Clover supports Groovy! Since very long time - you can instrument groovy via Ant, Maven and Grails plugins. What is missing is a direct integration with Eclipse and IDEA IDEs. Oh. There's also an integration with a Gradle written by community.

            JoeA added a comment -

            Thank you. I hope groovy support happens soon.

            On a related note, wouldn't adding support for Spock mean that you would need to support Groovy since Spock tests are written in Groovy?

            JoeA added a comment - Thank you. I hope groovy support happens soon. On a related note, wouldn't adding support for Spock mean that you would need to support Groovy since Spock tests are written in Groovy?

            I'm reopening this issue to allow voting. I've also reassigned it to the "won't fix" version to indicate that we don't have plans to implement it right now.

            Marek Parfianowicz added a comment - I'm reopening this issue to allow voting. I've also reassigned it to the "won't fix" version to indicate that we don't have plans to implement it right now.

            As Ilia Lewis pointed out, if this would be the issue to vote for, to get it to be a higher priority, then I think it should be reopened so anyone that wants to voice their support for it can.

            Indeed, it's not possible to vote on resolved issues: https://jira.atlassian.com/browse/JRA-13360 I'll look for an alternative.

            Marek Parfianowicz added a comment - As Ilia Lewis pointed out, if this would be the issue to vote for, to get it to be a higher priority, then I think it should be reopened so anyone that wants to voice their support for it can. Indeed, it's not possible to vote on resolved issues: https://jira.atlassian.com/browse/JRA-13360 I'll look for an alternative.

              Unassigned Unassigned
              mstudman Michael Studman (Inactive)
              Votes:
              17 Vote for this issue
              Watchers:
              12 Start watching this issue

                Created:
                Updated:
                Resolved: