diff --git a/META-INF/plugin.xml b/META-INF/plugin.xml index f205dc6..cff8218 100644 --- a/META-INF/plugin.xml +++ b/META-INF/plugin.xml @@ -18,17 +18,18 @@

Features

]]> - 2.0.3 + 2.1.0 2.0.3 - 2015-XX-XX +

2.1.0 - 2015-XX-XX

diff --git a/build.gradle b/build.gradle index 48684cf..2462d3d 100644 --- a/build.gradle +++ b/build.gradle @@ -6,7 +6,7 @@ sourceCompatibility = 1.6 targetCompatibility = 1.6 group = 'com.github.rholder' -version = '2.0.2' +version = '2.1.0-SNAPSHOT' buildscript { repositories { @@ -41,7 +41,7 @@ jar { } into('') { // well this is wonky... - from 'gradle-acumen/build/libs/gradle-acumen-0.1.0.jar' + from 'gradle-acumen/build/libs/gradle-acumen-0.2.0.jar' } } diff --git a/gradle-acumen-api/build.gradle b/gradle-acumen-api/build.gradle index a98050b..6976ccd 100644 --- a/gradle-acumen-api/build.gradle +++ b/gradle-acumen-api/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'maven-publish' apply plugin: 'idea' group = 'com.github.rholder' -version = '0.1.0' +version = '0.2.0' dependencies { compile localGroovy() diff --git a/gradle-acumen/build.gradle b/gradle-acumen/build.gradle index 475ea81..34611da 100644 --- a/gradle-acumen/build.gradle +++ b/gradle-acumen/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'maven-publish' apply plugin: 'idea' group = 'com.github.rholder' -version = '0.1.0' +version = '0.2.0' configurations { bundled diff --git a/gradle-acumen/src/main/groovy/com/github/rholder/gradle/acumen/GradleAcumenPlugin.groovy b/gradle-acumen/src/main/groovy/com/github/rholder/gradle/acumen/GradleAcumenPlugin.groovy index f33a46c..e253678 100644 --- a/gradle-acumen/src/main/groovy/com/github/rholder/gradle/acumen/GradleAcumenPlugin.groovy +++ b/gradle-acumen/src/main/groovy/com/github/rholder/gradle/acumen/GradleAcumenPlugin.groovy @@ -25,6 +25,40 @@ class GradleAcumenPlugin implements Plugin { registry.register(new AcumenToolingModelBuilder()) } + // note: if this method is inside the private AcumenToolingModelBuilder below, it causes issues with Groovy + static DefaultGradleTreeNode resolveDependency(DefaultGradleTreeNode parentNode, DependencyResult result, Set existingDeps) { + DefaultGradleTreeNode node = new DefaultGradleTreeNode() + if (result instanceof ResolvedDependencyResult) { + ResolvedDependencyResult r = result + node.parent = parentNode + node.group = r.selected.moduleVersion.group + node.id = r.selected.moduleVersion.name + node.version = r.selected.moduleVersion.version + node.reason = r.selected.selectionReason.description + + if(r.requested instanceof ModuleComponentSelector) { + node.requestedVersion = ((ModuleComponentSelector)r.requested).version + } + + node.nodeType = "dependency" + + if (existingDeps.add(node)) { + // only process children if we haven't seen this dep before + r.selected.dependencies.each { DependencyResult subDep -> + DefaultGradleTreeNode childNode = resolveDependency(node, subDep, existingDeps) + node.children.add(childNode) + } + } else { + node.seenBefore = true + } + } else { + // TODO this is where a fix for #10 will start, consider setting node.wasResolved = false or some such + node.name = "Could not resolve $result.requested.displayName" + } + + return node + } + private static class AcumenToolingModelBuilder implements ToolingModelBuilder { static DefaultGradleTreeNode generateProjectTree(Project project) { @@ -59,38 +93,6 @@ class GradleAcumenPlugin implements Plugin { return rootNode } - static DefaultGradleTreeNode resolveDependency(DefaultGradleTreeNode parentNode, DependencyResult result, Set existingDeps) { - DefaultGradleTreeNode node = new DefaultGradleTreeNode() - if (result instanceof ResolvedDependencyResult) { - ResolvedDependencyResult r = result - node.parent = parentNode - node.group = r.selected.moduleVersion.group - node.id = r.selected.moduleVersion.name - node.version = r.selected.moduleVersion.version - node.reason = r.selected.selectionReason.description - - if(r.requested instanceof ModuleComponentSelector) { - node.requestedVersion = ((ModuleComponentSelector)r.requested).version - } - - node.nodeType = "dependency" - - if (existingDeps.add(node)) { - // only process children if we haven't seen this dep before - r.selected.dependencies.each { DependencyResult subDep -> - DefaultGradleTreeNode childNode = resolveDependency(node, subDep, existingDeps) - node.children.add(childNode) - } - } else { - node.seenBefore = true - } - } else { - node.name = "Could not resolve " + result.requested.displayName - } - - return node - } - public boolean canBuild(String modelName) { modelName.equals(AcumenTreeModel.class.getName()) } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index a7634b0..0087cd3 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4ec32da..312855d 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sun May 25 18:44:54 CDT 2014 +#Sun Apr 26 18:29:59 CDT 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-2.3-bin.zip diff --git a/src/main/java/com/github/rholder/gradle/dependency/DependencyConversionUtil.java b/src/main/java/com/github/rholder/gradle/dependency/DependencyConversionUtil.java index 9004872..15c54cb 100644 --- a/src/main/java/com/github/rholder/gradle/dependency/DependencyConversionUtil.java +++ b/src/main/java/com/github/rholder/gradle/dependency/DependencyConversionUtil.java @@ -93,7 +93,7 @@ public void statusChanged(ProgressEvent event) { if (devGradleAcumen == null) { extractedJarFile = File.createTempFile("gradle-acumen", ".jar"); extractedJarFile.deleteOnExit(); - dumpFromClasspath("/gradle-acumen-0.1.0.jar", extractedJarFile); + dumpFromClasspath("/gradle-acumen-0.2.0.jar", extractedJarFile); } else { extractedJarFile = new File(devGradleAcumen); }