Commit Graph

1381 Commits

Author SHA1 Message Date
modmuss50
aef884d005 Add mixin mappings as compile task outputs (#768)
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
2022-12-11 18:27:37 +00:00
modmuss50
be4e7a42a3 Fix getRuntimeRemapConfigurations() returning the wrong classpath. (#769) 2022-12-11 18:26:39 +00:00
Juuz
8dad64dc66 Merge remote-tracking branch 'upstream/dev/1.0' into dev/1.0 2022-12-11 15:40:24 +02:00
Juuz
892da2826a Fix source_roots property ordering for Forge 1.16.5
Resources have to come first since it expects mods.toml to be there.
2022-12-11 15:38:33 +02:00
Juuz
34c24cde3c Add ModSettings.sourceSet overloads taking source set names (#765)
Closes #764. Also fixes some minor stuff in the javadocs of sourceSet().
2022-12-09 08:50:21 +00:00
Juuz
ec76760ca4 Clear Fernflower context after decompiling (#760) 2022-12-09 08:49:43 +00:00
modmuss50
7173c2a6cb Add AbstractRemapJarTask.getAdditionalClientOnlyEntries 2022-11-21 19:24:21 +00:00
modmuss50
2a5947de0b Return a map of all class tweakers in FabricModJson 2022-11-08 20:46:49 +00:00
modmuss50
aedfd09657 Read "Fabric-Loom-Remap" manifest entry to allow an artifact to control if its remapped or not. (#749)
This allows for none mod jars to opt-into remapping, as well as mods or mod loaders to opt-out.

Setting "Fabric-Loom-Remap" to true/false in the jar's manifest.
2022-11-04 19:29:10 +00:00
Phoenix-Starlight
03e1369adc Patch download to work with symlinks (#736)
* Fix Download to work with symlinks

- Create SymlinkWalker
    * isPathSymbolic for whether any part of the path is symbolic, existing or not.
    * getRealPath for obtaining absolute, real path.
- Change Download to use SymlinkWalker
- Add in a new test for testing with symlinks

* Refactor
Switch to using Guava method for creating directories

* Fix import

* Alter test and fix arguments

* Forgot a def

* Fix method argument

* Change argument to child file

* Bump
2022-11-03 18:26:49 +00:00
modmuss50
ddf4605845 Ensure minecraft provider names are lowercase. 2022-11-03 18:26:09 +00:00
modmuss50
f87320fae8 Add multi project optimisation option to allow opt into shared tiny remapper. (#747)
* Add multi project optimisation option to allow opting into shared tiny remapper.

* Review feedback and fixes
2022-11-01 21:36:41 +00:00
Juuz
e48a7124f5 Add LoomGradleExtensionAPI.getRuns() for consistency with runs() (#748)
* Add LoomGradleExtensionAPI.getRuns() for consistency with runs()

* Improve jd
2022-11-01 19:31:03 +00:00
Juuz
ec360e418e Delete RunDataTask
It's been deprecated since for over a year (since 0.6/January 2021).
2022-10-30 14:20:44 +02:00
Juuz
2dcb964db8 Resolve Forge run args and vm args as config values 2022-10-30 13:06:15 +02:00
Juuz
7af0d425f8 Fix variable resolving in Forge run configs 2022-10-30 12:48:52 +02:00
Juuz
d4cc730f5d Fix common mods not being remapped 2022-10-30 12:01:22 +02:00
modmuss50
c73b3735cf Fix ProcessedNamedMinecraftProvider always re-processing jars. 2022-10-29 22:03:32 +01:00
Juuz
8d54df26ca Remove LaunchProviderSettings (#103)
* Remove LaunchProviderSettings

Closes #99.

- Added new RunConfigSettings.forgeTemplate API
- Removed LaunchProviderSettings and loom.launches
- Removed most evaluateLater usages, only used for configuring the
  RunConfigSettings since Forge runs aren't resolved yet when they're
  created
- Didn't migrate Forge userdev stuff to runs, most of it still injects
  directly into DLI

* Fix Fabric

* Fix 1.14 - 1.16.5 Forge, add test for ForgeRunTemplate for those versions

* Move ConfigValue out of mcpconfig, clean up

* Add test for config values

* Stop replacing user config values with ours
2022-10-29 14:21:50 +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
e7bee0daa8 Store minecraft jars in a maven repo instead of an ivy repo.
Improve intelij support for attaching sources.
2022-10-26 12:51:08 +01:00
modmuss50
ccc3e77fe1 Only use mixin mappings from projects with the same mapping id. 2022-10-26 12:51:08 +01:00
modmuss50
00a3b7ff4e Move Iface injection to new MinecraftJarProcessor API 2022-10-26 12:51:08 +01:00
modmuss50
47987b2aa3 Cleanup configuration related code by passing ConfigContext 2022-10-26 12:51:08 +01:00
modmuss50
06074ae73c Start on improved mappings service 2022-10-26 12:47:36 +01:00
modmuss50
9d7a3eef8f Fix crash.
More small fixes.
2022-10-26 12:47:36 +01:00
modmuss50
bfb7d9fcc2 Merge remote-tracking branch 'origin/dev/1.0' into fmj_2
# Conflicts:
#	src/main/java/net/fabricmc/loom/util/gradle/SourceSetHelper.java
#	src/test/groovy/net/fabricmc/loom/test/LoomTestConstants.groovy
2022-10-07 10:19:11 +01:00
modmuss50
0036d81a3a Fixes to legacy jar processors. 2022-10-06 22:48:09 +01:00
modmuss50
cc43cfc1dc Major steps towards config caching support :) 2022-10-06 21:42:45 +01:00
modmuss50
24b727c84c More changes 2022-10-04 20:46:46 +01:00
modmuss50
ab4234330e First look at MinecraftJarProcessor API 2022-10-03 22:00:07 +01: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
modmuss50
f221101477 Inherit environment variables. Fixes #730 (#733) 2022-10-01 16:20:08 +01:00
modmuss50
559ead49e1 Search for injected interfaces in the client sourceset by default. (#731) 2022-10-01 09:55:03 +01:00
modmuss50
c9356349de Fix crash 2022-10-01 09:19:20 +01:00
modmuss50
514dd24e9e Initial support for fabric.mod.json V2 2022-10-01 08:59:39 +01:00
modmuss50
5ae24af98b Fix incorrect Mixin message argument key. 2022-09-24 21:02:49 +01:00
modmuss50
35e32e89f3 Retry failed tests. (#721)
* Retry failed tests.

* Minor updates.
2022-09-11 20:25:49 +01:00
Juuz
cd8822457e Fix v1 mappings (#104)
Fixes #100. A minor setback is that they can't now be used on Forge.
2022-09-11 21:55:17 +03:00
Juuz
c0677c5770 Merge remote-tracking branch 'upstream/dev/1.0' into dev/1.0 2022-09-11 19:39:46 +03:00
modmuss50
1b4226aca9 Fix mods being always being applied to the main sourceset and not the target. (#719) 2022-09-11 15:58:28 +01: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
f8603e11ef Checkstyle 2022-09-07 03:58:46 +03:00
Juuz
7690e46e29 Don't linemap Forge's own classes in GenerateSourcesTask 2022-09-07 03:54:26 +03:00
Juuz
8076b417b2 McpExecutor: Extract step logic implementations to their own classes 2022-09-07 01:14:09 +03:00
Juuz
364b67ea6a Fix #97, use userdev source jar coordinates in ForgeSourcesRemapper 2022-09-06 22:59:34 +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
Juuz
1f0a71d895 Replace usages of FileSystems.newFileSystem with ZipUtils and FSUtil 2022-09-06 21:16:48 +03:00
Juuz
1f859baf93 Fix crash when a mod dep doesn't have an AW 2022-09-06 20:57:27 +03:00
Juuz
589ff323e8 SrgMerger: Add support for comments and parameters 2022-09-06 20:39:30 +03:00