Spring Tool Suite
  1. Spring Tool Suite
  2. STS-1289

Transitive in place plugin dependencies not being properly refreshed.

    Details

    • Type: Bug Bug
    • Status: Resolved Resolved
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 2.5.0.RC1
    • Fix Version/s: 2.8.0.RELEASE
    • Component/s: GRAILS
    • Labels:
      None

      Description

      Assume we have this project structure:

      Project -depends-on> InPlaceA --depends-on-> InPlaceB

      These dependencies are specified in the buildConfig.groovy file in the standard way.

      When all is set up correctly, Project will have project references both to InPlaceA and InPlaceB. This is the grails way of doing things. One plugins dependencies are passed on and become dependencies for the consuming plugin.

      Now, let's say that the buildConfig.groovy file for InPlaceA is edited and its dependency on InPlaceB is removed. Refresh dependencies is run on InPlaceA. As expected, the project dependency on InPlaceB is removed.

      However, Project incorrectly still has a project dependency on InPlaceB. And it will remain there until a Refresh Dependencies is run on Project itself.

      There are 2 potential solutions I can think of:

      1. Whenever a refresh dependencies is run on an in place plugin, also run refresh dependencies on downstream dependant projects. Problem is that this will potentially take a long time.
      2. Do not explicitly include transitive project dependencies for in place plugins. Rather, ensure that project dependencies are exported from In place plugins so that other projects downstream implicitly get the dependency without needing to mark it in the .classpath. The problem here is distinguishing between direct In place dependencies and transitive in place dependencies.

        Issue Links

          Activity

          Hide
          Andrew Eisenberg (c) added a comment -

          Won't get to this for 2.5.2. I think this is a minor issue because it only appears when the dependency chain between plugin projects is greater than 2.

          Show
          Andrew Eisenberg (c) added a comment - Won't get to this for 2.5.2. I think this is a minor issue because it only appears when the dependency chain between plugin projects is greater than 2.
          Hide
          Andrew Eisenberg (c) added a comment -

          This is more of a project setup and refresh dependencies issue, so assigning to Kris.

          Show
          Andrew Eisenberg (c) added a comment - This is more of a project setup and refresh dependencies issue, so assigning to Kris.
          Hide
          Kris De Volder (c) added a comment -

          This was already fixed a while back, but forgot to close the issue.

          Fixed on Tue oct 4 in commit:
          37cb31f07135

          Show
          Kris De Volder (c) added a comment - This was already fixed a while back, but forgot to close the issue. Fixed on Tue oct 4 in commit: 37cb31f07135

            People

            • Assignee:
              Kris De Volder (c)
              Reporter:
              Andrew Eisenberg (c)
            • Votes:
              1 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                First Response Date: