Commit Graph

404 Commits

Author SHA1 Message Date
Juuz
1dc04a7b3a Remove unused buildNum property from build.gradle 2022-10-30 11:23:42 +02:00
Juuz
65cca62114 Update base version to 1.0 2022-10-30 11:22:46 +02:00
Juuz
992e8d2a8e build.gradle: Replace System.getenv with ENV map for cleaner merges 2022-10-29 14:24:59 +03:00
Juuz
515e1113c2 Merge remote-tracking branch 'upstream/dev/1.0' into dev/1.0
# Conflicts:
#	.github/workflows/test.yml
#	build.gradle
2022-10-29 13:54:39 +03:00
modmuss50
57b5f05c57 Fix support for latest Gradle 8.0 nightly. (#732)
* Fix support for Gradle 8.0.

* Cleanup

* Fix another gradle 8 issue?
2022-10-02 16:28:55 +01:00
Juuz
ffe5e955c5 Fix test artifact names (#716)
* Fix test artifact names

- Fixes empty parens in Linux artifacts
- Fixes invalid artifact names containing *
- Fixes Windows artifacts not being different from Linux ones

* Fix Windows tests
2022-09-11 20:26:00 +01:00
modmuss50
35e32e89f3 Retry failed tests. (#721)
* Retry failed tests.

* Minor updates.
2022-09-11 20:25:49 +01:00
Juuz
f905a2a17c Disable test parallelisation to fix DownloadTests 2022-09-11 21:09:40 +03:00
Juuz
c549c5fd7a Create test report (#102) 2022-09-08 03:59:29 +03:00
Juuxel
ea9dc0baa5 Add genForgePatchedSources task (#98)
* Add genForgePatchedSources task

Closes #32. Also reworks the MCP executor system quite heavily:

- Instead of executing all steps up to `x`, it now resolves dependencies based on step inputs
- No-op steps are skipped
- Steps can be overridden with custom logic by callers
- You can add multiple desired steps to one round of execution
- All step types in MCPConfig 1.14-1.19 are supported now
- Variables that reference MCPConfig zip contents now work
  - Removed special case for `{mappings}` variable

Other:
- the MCPConfig zip is now completely extracted into the cache dir instead of just the config file
2022-09-07 15:36:05 +03:00
Juuz
0477a37e6a Merge remote-tracking branch 'upstream/dev/1.0' into dev/1.0
# Conflicts:
#	build.gradle
2022-09-06 22:49:57 +03:00
modmuss50
c5def7a594 Replace library used for download progess tracking.
This fixes the outdated java warning pre Java 11.
2022-08-31 19:45:33 +01:00
modmuss50
59d0b8af80 1.0 2022-08-28 11:24:17 +01:00
shedaniel
216b4ce785 Merge remote-tracking branch 'FabricMC/dev/0.13' into dev/0.13.0
Signed-off-by: shedaniel <daniel@shedaniel.me>

# Conflicts:
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/MappingsProviderImpl.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionApiImpl.java
2022-08-11 00:59:05 +08:00
shedaniel
5526ee050c Update Architectury TinyRemapper
Signed-off-by: shedaniel <daniel@shedaniel.me>
2022-08-10 15:42:02 +08:00
Juuz
cf28130f2e Merge with Fabric 0.13, stage 6 2022-08-09 17:41:57 +03:00
Juuz
c5386d8795 Merge with Fabric 0.13, stage 5 2022-08-09 17:37:04 +03:00
Juuz
48126bd5d6 Merge with Fabric 0.13, stage 1 2022-08-09 17:18:43 +03:00
modmuss50
813c5ead14 Don't validate mixin names with more than one target.
Add tests.
2022-08-08 18:53:12 +01:00
modmuss50
e561cca19a Split mod dependencies into client/common as required. 2022-08-04 08:56:37 +01:00
modmuss50
688385a1bb Update deps + fix some failing tests. 2022-07-25 18:37:16 +01:00
modmuss50
c4c6de23e3 Rewrite download utils (#681)
- eTag support (It seems Mojang's CDN and our meta/maven do not support this right now)
- Age based caching.
- Sha1 based caching.
- HTTP(S) proxy settings should now be respected.
- The downloader has better awareness of offline mode and refresh deps, cleaning up the calling code a bit.
- Uses the new Java 11 HTTP client, provides async support for downloading multiple files
- Progress handling (TODO needs hooking up to gradle)
- Better compression support. Handled by [Methanol](https://mizosoft.github.io/methanol/) 
- Unit tested with a real web server.
2022-07-25 18:01:11 +01:00
modmuss50
f705e997e8 Add "fabric.loom.test.homeDir" system prob to re-use gradle home between test runs. Vastly speeds up unit tests. 2022-06-20 20:49:35 +01:00
modmuss50
651bcec276 Use TR's ref coutning FileSystemHandler (#639)
* Dont depend on other prepare tasks, only run after.

* Update for: https://github.com/FabricMC/tiny-remapper/pull/93

* Cleanup

* Bump deps
2022-06-16 19:22:13 +01:00
modmuss50
ef614e53c2 Start 0.13 cycle 2022-06-16 19:09:50 +01:00
shedaniel
6e785f9375 Merge remote-tracking branch 'FabricMC/dev/0.12' into dev/0.12.0
# Conflicts:
#	src/test/kotlin/net/fabricmc/loom/test/kotlin/KotlinClassMetadataRemappingAnnotationVisitorTest.kt
2022-06-04 16:51:14 +08:00
Jason
c8e7fe2212 Add kotlin tests to actions matrix (#660) 2022-05-30 17:18:33 +01:00
Juuxel
f8c2feeede Merge remote-tracking branch 'upstream/dev/0.12' into dev/0.12.0
# Conflicts:
#	build.gradle
2022-05-27 13:38:31 +03:00
modmuss50
07ded449ee Update mercury and set source compatibility version to 17 2022-05-26 11:21:53 +01:00
Juuxel
70def8a31d Use MCPConfig data for processing Forge jar, support single-jar Forge (#87)
* Use MCPConfig data for merging and remapping Forge jar

* Make DependencyDownloader support multiple deps

* Support server-/client-only Minecraft with Forge

There's one slight caveat here: the server jar
contains some client-only classes that have been
patched. This also happens with the official
Forge installer in production, so it's
probably fine.

* Remove binpatcher dep

* Move McpConfigProvider to correct package

* Print tool name for functions in McpExecutor

* Fix Forge tools outputting verbose output at IDEA refresh

* Fix certain Forge deps being excluded from run configs

* Always produce the client extra jar

* Add step count to McpExecutor logging

* Allow missing args and jvmargs in MCP functions

This should fix using 1.14.4 and 1.16.5, which
don't have JVM args for everything.

* Make MCP function downloads follow redirects

* Refactor MCP step outputs, don't copy raw MC jars

* Remove MinecraftProviderBridge
2022-05-22 18:41:27 +03:00
Juuz
0084801240 Remove java version bridge
No longer needed since we require J17.
This also brings the buildscript a lot closer
to upstream's.

Partially reverts 3bc5ab25c0.
2022-05-09 14:57:14 +03:00
Juuz
d540768e55 Disable FabricAPITest for CI 2022-05-08 19:59:45 +03:00
Juuz
4ca57ab17d Remove todo 2022-05-08 18:37:00 +03:00
Juuz
c35fa7f8f3 Merge remote-tracking branch 'upstream/dev/0.12' into dev/0.12.0
# Conflicts:
#	.github/workflows/test.yml
#	bootstrap/test-project/build.gradle
#	build.gradle
#	src/main/java/net/fabricmc/loom/LoomGradlePlugin.java
#	src/main/java/net/fabricmc/loom/LoomRepositoryPlugin.java
#	src/main/java/net/fabricmc/loom/api/MixinExtensionAPI.java
#	src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/ifaceinject/InterfaceInjectionProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/mods/ModProcessor.java
#	src/main/java/net/fabricmc/loom/configuration/providers/mappings/MappingsProviderImpl.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftJarConfiguration.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/assets/MinecraftAssetsProvider.java
#	src/main/java/net/fabricmc/loom/configuration/providers/minecraft/mapped/AbstractMappedMinecraftProvider.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionApiImpl.java
#	src/main/java/net/fabricmc/loom/extension/LoomGradleExtensionImpl.java
#	src/main/java/net/fabricmc/loom/task/AbstractRunTask.java
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
#	src/main/java/net/fabricmc/loom/task/launch/GenerateDLIConfigTask.java
#	src/main/java/net/fabricmc/loom/task/service/TinyRemapperService.java
#	src/main/java/net/fabricmc/loom/util/Constants.java
#	src/main/java/net/fabricmc/loom/util/ModUtils.java
#	src/main/kotlin/net/fabricmc/loom/kotlin/remapping/KotlinMetadataTinyRemapperExtensionImpl.kt
#	src/test/kotlin/net/fabricmc/loom/test/kotlin/KotlinClassMetadataRemappingAnnotationVisitorTest.kt
#	src/test/resources/projects/kotlin/build.gradle.kts
2022-05-08 18:36:35 +03:00
shedaniel
aa5029e6fb Update tiny remapper and asm for java 19
Signed-off-by: shedaniel <daniel@shedaniel.me>
2022-04-21 01:58:48 +08:00
modmuss50
b7cdb718d7 Update to support 22w16a's arm64 macos natives, and tiny remapper. 2022-04-20 18:37:11 +01:00
modmuss50
2462e12e16 Update deps 2022-04-13 20:09:47 +01:00
shedaniel
4a7a2660da Update TR, Fix #78
Signed-off-by: shedaniel <daniel@shedaniel.me>
2022-04-12 23:19:43 +08:00
modmuss50
981081c2c9 Add protection around using the Kotlin class metadata remapping on mismatching Kotlin versions.
This is going to need further work to run the kotlin remapper in a forked JVM using the version of Koltin that the project was built against.
2022-03-30 19:26:07 +01:00
modmuss50
007bc97c1b Update decompilers and mercury (JDT). 2022-03-30 18:11:47 +01:00
modmuss50
0ba3e142ba Update gradle + deps 2022-03-14 01:44:11 +00:00
modmuss50
fff4afe405 Initial support for split client/common sourcesets. (#606) 2022-03-04 15:01:45 +00:00
modmuss50
474d02f1b3 Update gradle and deps. 2022-02-28 18:41:03 +00:00
modmuss50
de31f1e083 Intermediate mapping handling improvements. (#593)
* Add API for intermediate mappings. Add hacky option to run with no intermediate mappings.

* Add setter, and some getters that I need :)

* Remove unused inject.

* Don't add asm-all to the libraries.

* Fix unit tests.
2022-02-09 13:49:15 +00:00
modmuss50
9286ef9163 Start 0.12 dev cycle 2022-01-28 20:25:14 +00:00
Juuz
b883c1a0cb Merge remote-tracking branch 'upstream/dev/0.11' into merge-0.11
# Conflicts:
#	src/main/java/net/fabricmc/loom/util/Constants.java
2022-01-21 17:28:05 +02:00
modmuss50
d8f070cc27 Reduce test memory in an effort to increase test stability. 2022-01-21 13:30:58 +00:00
Juuz
3f9f055c1c Remove custom version 2022-01-19 17:04:43 +02:00
Juuz
47cbcbcd36 This should be done now 2022-01-19 17:02:55 +02:00
Juuz
3e30defe71 Remove Blossom as it's not used anymore 2022-01-19 12:45:24 +02:00