diff --git a/config/gradle/utility.gradle b/config/gradle/utility.gradle index bf8d32ce447..20262635f4f 100644 --- a/config/gradle/utility.gradle +++ b/config/gradle/utility.gradle @@ -354,6 +354,11 @@ tasks.addRule("Pattern: fetchLib") { String taskName -> case 'Index' : githubHome = 'Terasology' break; + + case 'CrashReporter' : + // Temporary for testing only + branch = 'embeddedCR' + break; } // Allow user to override the GitHub account to pull from. Supply with -PgithubAccount="TargetAccountName" diff --git a/engine/build.gradle b/engine/build.gradle index e6dc9058e6b..d82f53bed82 100644 --- a/engine/build.gradle +++ b/engine/build.gradle @@ -127,9 +127,6 @@ dependencies { // Wildcard dependency to catch any libs provided with the project (remote repo preferred instead) compile fileTree(dir: 'libs', include: '*.jar') - // TODO: These could be moved into facade - compile group: 'org.terasology', name: 'CrashReporter-terasology', version: '3.0.0' - runtime group: 'ch.qos.logback', name: 'logback-classic', version: '1.1.7' runtime group: 'org.slf4j', name: 'jul-to-slf4j', version: '1.7.21' diff --git a/engine/src/main/java/org/terasology/engine/TerasologyEngine.java b/engine/src/main/java/org/terasology/engine/TerasologyEngine.java index bd0bd1b022d..f5eab856c8e 100644 --- a/engine/src/main/java/org/terasology/engine/TerasologyEngine.java +++ b/engine/src/main/java/org/terasology/engine/TerasologyEngine.java @@ -16,7 +16,7 @@ package org.terasology.engine; -import com.google.api.client.repackaged.com.google.common.base.Preconditions; +import com.google.common.base.Preconditions; import com.google.common.base.Stopwatch; import com.google.common.collect.Queues; import com.google.common.collect.Sets; diff --git a/engine/src/main/java/org/terasology/engine/TerasologyEngineBuilder.java b/engine/src/main/java/org/terasology/engine/TerasologyEngineBuilder.java index d5eb33bd62f..616cac5e0ea 100644 --- a/engine/src/main/java/org/terasology/engine/TerasologyEngineBuilder.java +++ b/engine/src/main/java/org/terasology/engine/TerasologyEngineBuilder.java @@ -15,7 +15,7 @@ */ package org.terasology.engine; -import com.google.api.client.util.Lists; +import com.google.common.collect.Lists; import com.google.common.base.Preconditions; import org.terasology.engine.subsystem.EngineSubsystem; import org.terasology.engine.subsystem.common.TimeSubsystem; diff --git a/engine/src/main/java/org/terasology/entitySystem/prefab/internal/PojoPrefabManager.java b/engine/src/main/java/org/terasology/entitySystem/prefab/internal/PojoPrefabManager.java index af62f98618e..180588382a5 100644 --- a/engine/src/main/java/org/terasology/entitySystem/prefab/internal/PojoPrefabManager.java +++ b/engine/src/main/java/org/terasology/entitySystem/prefab/internal/PojoPrefabManager.java @@ -15,7 +15,7 @@ */ package org.terasology.entitySystem.prefab.internal; -import com.google.api.client.repackaged.com.google.common.base.Strings; +import com.google.common.base.Strings; import org.terasology.assets.management.AssetManager; import org.terasology.context.Context; import org.terasology.entitySystem.Component; diff --git a/engine/src/main/java/org/terasology/logic/console/suggesters/ScreenSuggester.java b/engine/src/main/java/org/terasology/logic/console/suggesters/ScreenSuggester.java index 1847fb98945..2e681558300 100644 --- a/engine/src/main/java/org/terasology/logic/console/suggesters/ScreenSuggester.java +++ b/engine/src/main/java/org/terasology/logic/console/suggesters/ScreenSuggester.java @@ -15,7 +15,7 @@ */ package org.terasology.logic.console.suggesters; -import com.google.api.client.util.Maps; +import com.google.common.collect.Maps; import com.google.common.collect.Sets; import org.terasology.assets.ResourceUrn; import org.terasology.assets.management.AssetManager; diff --git a/engine/src/main/java/org/terasology/rendering/animation/Rect2fAnimator.java b/engine/src/main/java/org/terasology/rendering/animation/Rect2fAnimator.java index 689a6abcf98..c8aff6b8f93 100644 --- a/engine/src/main/java/org/terasology/rendering/animation/Rect2fAnimator.java +++ b/engine/src/main/java/org/terasology/rendering/animation/Rect2fAnimator.java @@ -17,9 +17,9 @@ import java.util.function.Consumer; +import com.google.common.base.Preconditions; import org.terasology.math.geom.Rect2f; -import com.google.api.client.util.Preconditions; /** * Interpolates rectangles diff --git a/engine/src/main/java/org/terasology/rendering/animation/Rect2iAnimator.java b/engine/src/main/java/org/terasology/rendering/animation/Rect2iAnimator.java index cb7c07c51ce..decbb0193b1 100644 --- a/engine/src/main/java/org/terasology/rendering/animation/Rect2iAnimator.java +++ b/engine/src/main/java/org/terasology/rendering/animation/Rect2iAnimator.java @@ -17,10 +17,9 @@ import java.util.function.Consumer; +import com.google.common.base.Preconditions; import org.terasology.math.geom.Rect2i; -import com.google.api.client.util.Preconditions; - /** * Interpolates rectangles */ diff --git a/engine/src/main/java/org/terasology/rendering/animation/TimeModifiers.java b/engine/src/main/java/org/terasology/rendering/animation/TimeModifiers.java index 42a489105ee..3c68393bc67 100644 --- a/engine/src/main/java/org/terasology/rendering/animation/TimeModifiers.java +++ b/engine/src/main/java/org/terasology/rendering/animation/TimeModifiers.java @@ -16,10 +16,9 @@ package org.terasology.rendering.animation; +import com.google.common.base.Preconditions; import org.terasology.math.TeraMath; -import com.google.api.client.util.Preconditions; - /** * A collection of {@link TimeModifier} implementations */ diff --git a/engine/src/main/java/org/terasology/rendering/logic/FloatingTextRenderer.java b/engine/src/main/java/org/terasology/rendering/logic/FloatingTextRenderer.java index f4ead271627..db2a5be932d 100644 --- a/engine/src/main/java/org/terasology/rendering/logic/FloatingTextRenderer.java +++ b/engine/src/main/java/org/terasology/rendering/logic/FloatingTextRenderer.java @@ -16,7 +16,7 @@ package org.terasology.rendering.logic; -import com.google.api.client.util.Maps; +import com.google.common.collect.Maps; import org.terasology.assets.management.AssetManager; import org.terasology.entitySystem.entity.EntityManager; import org.terasology.entitySystem.entity.EntityRef; diff --git a/engine/src/main/java/org/terasology/rendering/logic/RegionOutlineRenderer.java b/engine/src/main/java/org/terasology/rendering/logic/RegionOutlineRenderer.java index e4fac6d0a45..6154d7413cd 100644 --- a/engine/src/main/java/org/terasology/rendering/logic/RegionOutlineRenderer.java +++ b/engine/src/main/java/org/terasology/rendering/logic/RegionOutlineRenderer.java @@ -15,8 +15,8 @@ */ package org.terasology.rendering.logic; -import com.google.api.client.repackaged.com.google.common.base.Strings; -import com.google.api.client.util.Maps; +import com.google.common.base.Strings; +import com.google.common.collect.Maps; import com.google.common.base.Preconditions; import org.lwjgl.BufferUtils; import org.lwjgl.opengl.GL11; diff --git a/engine/src/main/java/org/terasology/rendering/nui/layers/ingame/metrics/DebugMetricsSystem.java b/engine/src/main/java/org/terasology/rendering/nui/layers/ingame/metrics/DebugMetricsSystem.java index c02e433aba7..2aa9a196e02 100644 --- a/engine/src/main/java/org/terasology/rendering/nui/layers/ingame/metrics/DebugMetricsSystem.java +++ b/engine/src/main/java/org/terasology/rendering/nui/layers/ingame/metrics/DebugMetricsSystem.java @@ -16,7 +16,7 @@ package org.terasology.rendering.nui.layers.ingame.metrics; -import com.google.api.client.repackaged.com.google.common.base.Preconditions; +import com.google.common.base.Preconditions; import org.terasology.entitySystem.systems.BaseComponentSystem; import org.terasology.entitySystem.systems.RegisterSystem; import org.terasology.registry.Share; diff --git a/engine/src/main/java/org/terasology/rendering/nui/layouts/CardLayout.java b/engine/src/main/java/org/terasology/rendering/nui/layouts/CardLayout.java index d5973a9c7e0..46692f5dba3 100644 --- a/engine/src/main/java/org/terasology/rendering/nui/layouts/CardLayout.java +++ b/engine/src/main/java/org/terasology/rendering/nui/layouts/CardLayout.java @@ -15,7 +15,7 @@ */ package org.terasology.rendering.nui.layouts; -import com.google.api.client.util.Maps; +import com.google.common.collect.Maps; import org.terasology.math.geom.Vector2i; import org.terasology.rendering.nui.Canvas; import org.terasology.rendering.nui.CoreLayout; diff --git a/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/DefaultHTMLDocumentBuilder.java b/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/DefaultHTMLDocumentBuilder.java index 13ed86204a1..3d1c4716d37 100644 --- a/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/DefaultHTMLDocumentBuilder.java +++ b/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/DefaultHTMLDocumentBuilder.java @@ -15,7 +15,7 @@ */ package org.terasology.rendering.nui.widgets.browser.data.html.basic; -import com.google.api.client.util.Maps; +import com.google.common.collect.Maps; import org.terasology.rendering.nui.widgets.browser.data.html.HTMLBlockBuilder; import org.terasology.rendering.nui.widgets.browser.data.html.HTMLDocument; import org.terasology.rendering.nui.widgets.browser.data.html.HTMLDocumentBuilder; diff --git a/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/ParagraphBuilder.java b/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/ParagraphBuilder.java index 8a6f7c235a6..8ceab02a1cb 100644 --- a/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/ParagraphBuilder.java +++ b/engine/src/main/java/org/terasology/rendering/nui/widgets/browser/data/html/basic/ParagraphBuilder.java @@ -15,7 +15,7 @@ */ package org.terasology.rendering.nui.widgets.browser.data.html.basic; -import com.google.api.client.util.Maps; +import com.google.common.collect.Maps; import org.terasology.rendering.assets.font.Font; import org.terasology.rendering.nui.Color; import org.terasology.rendering.nui.widgets.browser.data.ParagraphData; diff --git a/engine/src/main/java/org/terasology/rendering/nui/widgets/models/Tree.java b/engine/src/main/java/org/terasology/rendering/nui/widgets/models/Tree.java index 1b9ec91416f..62696f01ef3 100644 --- a/engine/src/main/java/org/terasology/rendering/nui/widgets/models/Tree.java +++ b/engine/src/main/java/org/terasology/rendering/nui/widgets/models/Tree.java @@ -15,8 +15,8 @@ */ package org.terasology.rendering.nui.widgets.models; -import com.google.api.client.util.Lists; import com.google.common.base.Preconditions; +import com.google.common.collect.Lists; import java.util.ArrayDeque; import java.util.Collection; diff --git a/engine/src/main/java/org/terasology/rendering/nui/widgets/models/TreeModel.java b/engine/src/main/java/org/terasology/rendering/nui/widgets/models/TreeModel.java index cf240a8e7c3..72b3690a1e0 100644 --- a/engine/src/main/java/org/terasology/rendering/nui/widgets/models/TreeModel.java +++ b/engine/src/main/java/org/terasology/rendering/nui/widgets/models/TreeModel.java @@ -15,7 +15,7 @@ */ package org.terasology.rendering.nui.widgets.models; -import com.google.api.client.util.Lists; +import com.google.common.collect.Lists; import java.util.Iterator; import java.util.List; diff --git a/engine/src/main/java/org/terasology/rendering/world/WorldRendererImpl.java b/engine/src/main/java/org/terasology/rendering/world/WorldRendererImpl.java index da65e0f3d61..ddca99811a5 100644 --- a/engine/src/main/java/org/terasology/rendering/world/WorldRendererImpl.java +++ b/engine/src/main/java/org/terasology/rendering/world/WorldRendererImpl.java @@ -15,7 +15,7 @@ */ package org.terasology.rendering.world; -import com.google.api.client.util.Lists; +import com.google.common.collect.Lists; import org.terasology.config.Config; import org.terasology.config.RenderingConfig; import org.terasology.config.RenderingDebugConfig; diff --git a/engine/src/main/java/org/terasology/utilities/Assets.java b/engine/src/main/java/org/terasology/utilities/Assets.java index 9a55687ffab..7cd5d21cf20 100644 --- a/engine/src/main/java/org/terasology/utilities/Assets.java +++ b/engine/src/main/java/org/terasology/utilities/Assets.java @@ -16,7 +16,7 @@ package org.terasology.utilities; -import com.google.api.client.repackaged.com.google.common.base.Strings; +import com.google.common.base.Strings; import com.google.common.base.Preconditions; import org.terasology.assets.Asset; import org.terasology.assets.AssetData; diff --git a/engine/src/main/java/org/terasology/world/block/internal/BlockManagerImpl.java b/engine/src/main/java/org/terasology/world/block/internal/BlockManagerImpl.java index c6d15de42aa..3be018d2eda 100644 --- a/engine/src/main/java/org/terasology/world/block/internal/BlockManagerImpl.java +++ b/engine/src/main/java/org/terasology/world/block/internal/BlockManagerImpl.java @@ -16,7 +16,7 @@ package org.terasology.world.block.internal; -import com.google.api.client.repackaged.com.google.common.base.Preconditions; +import com.google.common.base.Preconditions; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; import com.google.common.collect.Maps; diff --git a/engine/src/main/java/org/terasology/world/block/loader/BlockFamilyDefinitionData.java b/engine/src/main/java/org/terasology/world/block/loader/BlockFamilyDefinitionData.java index 6aea0d59ef3..41b9cd31711 100644 --- a/engine/src/main/java/org/terasology/world/block/loader/BlockFamilyDefinitionData.java +++ b/engine/src/main/java/org/terasology/world/block/loader/BlockFamilyDefinitionData.java @@ -15,8 +15,8 @@ */ package org.terasology.world.block.loader; -import com.google.api.client.util.Maps; import com.google.common.collect.Lists; +import com.google.common.collect.Maps; import org.terasology.assets.AssetData; import org.terasology.module.sandbox.API; import org.terasology.world.block.family.BlockFamilyFactory; diff --git a/facades/PC/build.gradle b/facades/PC/build.gradle index 2cfd2d420e9..394762f0e13 100644 --- a/facades/PC/build.gradle +++ b/facades/PC/build.gradle @@ -39,6 +39,24 @@ group = 'org.terasology.facades' dependencies { compile project(':engine') + + // Dependency on CrashReporter, conditionally either from source or via binary + File wouldBeSrcPath = new File(rootDir, 'libs/CrashReporter') + println "Scanning for source CrashReporter at: " + wouldBeSrcPath.getAbsolutePath() + + if (wouldBeSrcPath.exists()) { + println "*** Identified CrashReporter source, using that" + //compile ':libs:CrashReporter:cr-terasology' + + def targetProject = findProject(':libs:CrashReporter:cr-terasology') + println "Found the project? " + targetProject + //compile targetProject + + compile project(':libs:CrashReporter:cr-terasology') + } else { + println "*** Setting a CrashReporter binary dependency, not present as source" + compile group: 'org.terasology', name: 'CrashReporter-terasology', version: '3.0.0' + } } // Instructions for packaging a jar file for the PC facade diff --git a/libs/subprojects.gradle b/libs/subprojects.gradle index 8c6b4d73855..66538bd1421 100644 --- a/libs/subprojects.gradle +++ b/libs/subprojects.gradle @@ -9,6 +9,13 @@ new File(rootDir, 'libs').eachDir { possibleSubprojectDir -> def subprojectPath = ':' + subprojectName def subproject = project(subprojectPath) subproject.projectDir = possibleSubprojectDir + + // Also look for a nested settings.gradle file in case of embedded libraries with their own sub projects + File settingsFile = new File(possibleSubprojectDir, "settings.gradle") + if (settingsFile.exists()) { + println "Library $subprojectName has a settings file so applying it expecting nested sub projects" + apply from: settingsFile + } } else { println "Library dir found without a build.gradle, not including $subprojectName in the Gradle project tree" }