Skip to content

Commit 635a1f4

Browse files
authored
Automatically configure repositories (#772)
1 parent 28011ae commit 635a1f4

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

src/common/java/net/minecraftforge/gradle/common/util/Utils.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import com.google.gson.JsonSyntaxException;
2929

3030
import groovy.lang.Closure;
31+
import net.minecraftforge.artifactural.gradle.GradleRepositoryAdapter;
3132
import net.minecraftforge.gradle.common.config.MCPConfigV1;
3233
import net.minecraftforge.gradle.common.task.ExtractNatives;
3334
import net.minecraftforge.gradle.common.util.VersionJson.Download;
@@ -37,6 +38,7 @@
3738
import org.apache.commons.io.IOUtils;
3839
import org.gradle.api.Project;
3940
import org.gradle.api.Task;
41+
import org.gradle.api.artifacts.repositories.ArtifactRepository;
4042
import org.gradle.api.plugins.JavaPluginConvention;
4143
import org.gradle.api.tasks.TaskProvider;
4244
import org.gradle.util.GradleVersion;
@@ -93,6 +95,7 @@ public class Utils {
9395
private static final boolean ENABLE_TEST_CERTS = Boolean.parseBoolean(System.getProperty("net.minecraftforge.gradle.test_certs", "true"));
9496
private static final boolean ENABLE_TEST_GRADLE = Boolean.parseBoolean(System.getProperty("net.minecraftforge.gradle.test_gradle", "true"));
9597
private static final boolean ENABLE_TEST_JAVA = Boolean.parseBoolean(System.getProperty("net.minecraftforge.gradle.test_java", "true"));
98+
private static final boolean ENABLE_FILTER_REPOS = Boolean.parseBoolean(System.getProperty("net.minecraftforge.gradle.filter_repos", "true"));
9699

97100
public static final Gson GSON = new GsonBuilder()
98101
.registerTypeAdapter(MCPConfigV1.Step.class, new MCPConfigV1.Step.Deserializer())
@@ -668,6 +671,21 @@ public static void createRunConfigTasks(final MinecraftExtension extension, fina
668671
});
669672
}
670673

674+
public static void addRepoFilters(Project project) {
675+
if (!ENABLE_FILTER_REPOS) return;
676+
677+
// Modify Repos already present and when they get added
678+
project.getRepositories().all(Utils::addMappedFilter);
679+
}
680+
681+
private static void addMappedFilter(ArtifactRepository repository) {
682+
// Skip our "Fake" Repos that actually do provide the de-obfuscated Artifacts
683+
if (repository instanceof GradleRepositoryAdapter) return;
684+
685+
// Exclude Artifacts that are being de-obfuscated via ForgeGradle (_mapped_ in version)
686+
repository.content(rcd -> rcd.excludeVersionByRegex(".*", ".*", ".*_mapped_.*"));
687+
}
688+
671689
public static File getMCDir()
672690
{
673691
switch (VersionJson.OS.getCurrent()) {

src/userdev/java/net/minecraftforge/gradle/userdev/UserDevPlugin.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ public class UserDevPlugin implements Plugin<Project> {
6161
@Override
6262
public void apply(@Nonnull Project project) {
6363
Utils.checkEnvironment();
64+
Utils.addRepoFilters(project);
6465

6566
@SuppressWarnings("unused")
6667
final Logger logger = project.getLogger();

0 commit comments

Comments
 (0)