Commit Graph

643 Commits (5a16440c1efec12870953e369f0f481d37c16b23)

Author SHA1 Message Date
modmuss50 be0444d261 Merge branch 'dev/0.7' into future/dev
# Conflicts:
#	src/test/groovy/net/fabricmc/loom/test/util/ProjectTestTrait.groovy
2021-05-04 18:29:00 +01:00
modmuss50 7de021e7c1 Revert "Update MCE"
This reverts commit b85659640d.
2021-04-27 18:04:47 +01:00
modmuss50 f409116afd Merge branch 'dev/0.7' of github.com:FabricMC/fabric-loom into dev/0.7 2021-04-27 13:13:15 +01:00
modmuss50 b85659640d Update MCE 2021-04-27 13:12:01 +01:00
ByMartrixX 1d009e155e
Add loom development dependencies to test runtime classpath (#389) 2021-04-21 08:51:56 +01:00
modmuss50 12ac6cfcfe Update mixin-compile-extensions 2021-04-14 20:45:17 +01:00
modmuss50 83eaa0e340 Update to run tests against gradle 7.0 release 2021-04-10 00:07:44 +01:00
modmuss50 816ed93d7a Fix typo 2021-04-09 20:44:18 +01:00
modmuss50 c8df12cf0f
Update to Gradle 7 (#380)
* Gradle 7 part 1

* Fix actions?

* Update actions

* Fix tests not running

* Fix some broken tests

* Update kotlin to try and fix JDK 16 support

* Disable KotlinTest on j16

* exclude kotlin test from actions...
2021-04-04 23:02:00 +01:00
modmuss50 98731532d5
Support Groovy 3's QName in GroovyXmlUtil (#379) 2021-04-02 19:30:43 +01:00
modmuss50 93afc7574d Update UnpickTest to latest snapshot.
This ensures that constants included in the mc jar can be used.
2021-04-02 14:44:18 +01:00
modmuss50 153afc1418
Reorganise tests (#378) 2021-04-02 12:20:03 +01:00
modmuss50 ce19467121 Fix last commit, oops 2021-03-31 13:28:26 +01:00
modmuss50 a3c90aca19 Ensure output is deleted before remapping the game. 2021-03-31 13:14:24 +01:00
Octavia Togami 806dd1b840
Fix name comparision in GroovyXmlUtil (#373)
Nodes can also have groovy.xml.QNames, which need to be compared using
their matches(Object) method.
2021-03-29 08:48:52 +01:00
modmuss50 71535fa75f
Add MavenProjectTest (#372) 2021-03-27 20:26:10 +00:00
modmuss50 ed08e47aab
Record javadoc support. (#366)
* Record javadoc support

* Ensure we dont add JD twice
2021-03-25 22:58:20 +00:00
modmuss50 ff6701e817 Add basic groovy code style validation.
IDK how well this would work on a gradle script but might be interesting to try on yarn or something.
2021-03-25 22:57:28 +00:00
modmuss50 759cac2e6b
Constant unpicking (#328)
* Start adding constant unpicking

* Update to use unpick cli

* Fix build?

* Fix?

* Fix log spam when unpicking

* Improve unpick tests
2021-03-25 19:03:35 +00:00
modmuss50 43a6b0f65f Revert some of the changes to genSource's.
More work is needed to fix all the issues with it but its not really something I want to get into right now.
2021-03-23 19:08:15 +00:00
modmuss50 c02f436123 Run tests against 7.0-rc-1 2021-03-23 08:51:41 +00:00
modmuss50 72a79ffb9c Fix case where it wont try to download file. 2021-03-18 14:39:30 +00:00
modmuss50 e6ac2afc7b
Ensure outputs are reproducable across all OS's. (#363) 2021-03-15 23:31:18 +00:00
modmuss50 7231b9e053
Mod Remapping Refactor. (#362)
Improved gradle 7 support
General cleanup
2021-03-12 22:16:24 +00:00
modmuss50 e9c7c21ede Add basic MultiProjectTest and a basic RunConfigTest
This should cover most of the main things now.
2021-03-06 23:31:09 +00:00
modmuss50 d1c4082761 Fix tests on windows 2021-03-06 17:36:12 +00:00
modmuss50 5171c9bbde Try and fix fernflower forking for the final time. Hopefully helps with #355 2021-03-06 14:07:37 +00:00
modmuss50 92efb9aa73 Fix ReproducibleBuildTest 2021-03-06 13:18:55 +00:00
modmuss50 87f3743b24
Rewrite tests to be easier to write and maintain (#361) 2021-03-06 11:40:07 +00:00
modmuss50 679026ef31 Minor cleanup/optimisations to downloading, should help a little bit more with asset downloading.
Closes #359
2021-03-04 23:50:02 +00:00
modmuss50 d02055eb23
Fix custom sourceset not being correctly set for runconfig tasks (#357) 2021-03-03 21:22:10 +00:00
modmuss50 b1edf7a737 Fix inherit not copying `ideConfigGenerated` 2021-02-27 19:32:31 +00:00
Shadowfacts 4540b3af33
Add log4jConfigs to Loom extension (#356)
Allows mod build scripts to specify custom Log4j config files that will
be combined together when running Minecraft in the dev-env. For example:

    loom {
        log4jConfigs.from "MyCustomConfig.xml"
    }

See: https://logging.apache.org/log4j/2.x/manual/configuration.html#CompositeConfiguration
2021-02-26 21:19:26 +00:00
modmuss50 57c9a8f320 Add loom dev deps to runtimeClasspath instead of runtimeOnly 2021-02-14 14:23:04 +00:00
modmuss50 46957df360
Run tests against gradle 7 and fail on deprecation. Fix gradle 8 support again. 2021-02-14 13:56:22 +00:00
modmuss50 2070aeb94a Disable log4j jansi support when compiling, removes a warning about it. 2021-02-13 18:04:16 +00:00
Juuxel dd440acb8e
Add dev runtime dependencies to runtimeClasspath instead of runtimeOnly (#350)
This stops them from incorrectly showing up in Gradle module metadata
when a software component is used.
2021-02-13 16:53:44 +00:00
Juuxel 737c6cbd4f
RunConfigSettings.generateIDEConfig -> ideConfigGenerated + normal getter/setter (#349) 2021-02-12 18:43:05 +00:00
modmuss50 0d1f40aee4
Rewrite minecraft game data handling.
Much faster asset and native validation logic.
Simplfied game metadata model.
2021-02-12 17:50:54 +00:00
modmuss50 24c166fc79 Generate IDE run configs on a per config basis. Allows for much finer grain control over what run configs are generated.
Defaults to generate all run configs on the root project.
2021-02-11 18:50:25 +00:00
modmuss50 6b481fbcd6 Revert previous change, somewhat. I didnt understand the issue correctly. 2021-02-11 18:32:01 +00:00
modmuss50 4daec03a0f Rename `runs` -> `runConfigs` 2021-02-11 18:18:07 +00:00
modmuss50 409f5f8e93
Update MCE - Remove auto population of minVersion in mixins - Drop some log levels. 2021-02-11 18:12:27 +00:00
modmuss50 b8058c693d Fix CME, Closes #345 2021-02-03 19:56:41 +00:00
Jason 671328795e
Generate fabric.mod.json for included submodule jars (#343)
* Generate fabric.mod.json for included submodule jars

* Appease checkstyle
2021-02-02 23:03:57 +00:00
modmuss50 5b3222e9b9 Rename mode -> environment + Hopefully fix a regression with the run tasks 2021-01-31 00:12:10 +00:00
modmuss50 6a315be278
Improve run configs (#318) (#338)
Co-authored-by: ShadewRG <onankman@gmail.com>
Co-authored-by: UndeadCat | Shadew <redgalaxysw@gmail.com>
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
2021-01-29 18:04:39 +00:00
shedaniel 17fb2b4656
Cache the checksum of asset index files. (#335)
* Cache the checksum of asset index files.

* Resolve reviews
2021-01-29 15:38:46 +00:00
modmuss50 48d4243be6 Merge remote-tracking branch 'FabricMC/dev/0.6' into dev/0.6 2021-01-28 21:17:12 +00:00
modmuss50 c1fcd93a89 Dont add the mojang maven repo twice.
Might speed some things up as well due to ordering
2021-01-28 21:16:56 +00:00
Bytzo 16f72e1c95
Set classpath before compileJava task (#330) (#333) 2021-01-26 18:08:19 +00:00
Chocohead ba3a1e4d9c
Use the given manifest version hash if possible (#337) 2021-01-24 14:39:52 +00:00
modmuss50 f7efac5d18 Revert previous attempt at fixing genSources when loom is applied via buildSrc 2021-01-21 21:47:32 +00:00
modmuss50 34a9d2316c Improve error handling around access widener remapping. Closes #311 2021-01-21 20:30:08 +00:00
modmuss50 d91b722c35 Another attempt at fixing issues with fernflower's classpath 2021-01-21 20:09:48 +00:00
modmuss50 4a30993da7 Apply all buildscript configurations across all parent projects to try and fix fernflower classpath issues again.
If you have any better suggestions please let me know.
2021-01-21 19:40:59 +00:00
modmuss50 b622544cbe Dont remap dependency sources when building on CI services.
Use `-Dfabric.loom.ci=false` to force disable
2021-01-19 22:15:23 +00:00
modmuss50 58e94f2db3 Centralise refreshDeps variable.
Makes it easier to hack it to always enable for profiling.
2021-01-19 21:58:39 +00:00
modmuss50 a436eb7690 1 Infinite Loop 2021-01-18 22:10:44 +00:00
modmuss50 47097c65ce
Gradle 7 (and hopefully 8) support (#332)
* First pass on gradle 7 support

* Fix Gradle 8 deprecation warnings

* Add a deprecated compile constant
2021-01-17 18:34:22 +00:00
modmuss50 9de836b2c4 Remove usage of internal kotlin class, should fix crash with kotlin 1.4. Closes #324 2021-01-07 20:35:43 +00:00
modmuss50 11b62989e7 Cleanup output files when remap fails. Fixes #321 2020-12-30 20:34:34 +00:00
modmuss50 841fc5a4db Fix classifier handling for remapped dependencies 2020-12-30 20:12:33 +00:00
modmuss50 792a64e2ef
Optimise loom configuration, saves 1.2 seconds in my testing. #319 2020-12-27 16:25:30 +00:00
modmuss50 c95e3459a4 Remove jcenter as a default maven repo. This will make builds faster and more reliable. It is trivial to add back manually for projects that require it.
Closes #314
2020-12-26 15:15:31 +00:00
modmuss50 03444f26b0
General code cleanup (#313)
* First general cleanup pass

* Review feedback

* Fix build

* Fix tests
2020-12-24 20:58:30 +00:00
i509VCB b0860c36d6
Add ability to specify additional tiny remapper options in remapJar (#292)
* Add ability to specify additional tiny remapper options in remapJar

* Imports go brr

* Fix checkstyle

Co-authored-by: modmuss50 <modmuss50@gmail.com>
2020-12-21 21:02:39 +00:00
modmuss50 e20993daf8 Allow setting the RemapJarTask classpath. Closes #307 2020-12-21 20:42:23 +00:00
solonovamax c96396fb27
Fix genSources not working when root project doesnt have loom applied#308. (#309)
loom now runs genSources on root project if the plugin exists in the root project, else it will build in the current project.

Signed-off-by: solonovamax <solonovamax@12oclockpoint.com>
2020-12-21 19:48:26 +00:00
Cool_Mineman 7e5053b0c5
Respect reproducibleFileOrder and preserveFileTimestamps (#304)
* Respect reproducibleFileOrder and preserveFileTimestamps

* Also Respect On Sources Jars

* java 8

* checkstyle

* Please Rerun Actions
2020-12-21 19:47:08 +00:00
user11681 9f6c8486fb
Add nogui to server program arguments (#310)
Closes #276
2020-12-21 19:44:39 +00:00
modmuss50 b27bc3d39a Use launcher metadata manifest v2. Closes #290 2020-12-21 19:37:35 +00:00
modmuss50 3bdccee02e
Refactor and fix game/loader library handling (#298)
Update fernflower
2020-12-21 19:34:00 +00:00
modmuss50 78c934aed5
Move remapped mods into a full local maven repo (#300) 2020-12-21 19:33:23 +00:00
modmuss50 dd68c84226 Allow specifying natives directory with the `fabric.loom.natives.dir` gradle property.
Note this is designed to allow easy usage of custom natives, thus will not populate the directory with the default natives.
2020-12-02 20:18:12 +00:00
modmuss50 d1281be741
Migrate to access-widener library (#294) 2020-11-15 16:15:02 +00:00
Kitlith 62e89395f9
Configure build task dependencies as each subproject comes up. (#299) 2020-11-15 16:05:35 +00:00
Jamie Mansfield db623157aa
Use Mercury 0.1.0-rc1 (#301) 2020-11-15 16:03:16 +00:00
zml 9b8f1b7233
eclipse: Fix run configuration generation (#285)
Fixes #283
2020-11-07 13:18:11 +00:00
modmuss50 99d7ccd477 Remove debug log out 2020-10-28 16:52:50 +00:00
modmuss50 42a0cbd3b3 Dont throw when annotationDependency is not resloved. 2020-10-21 08:59:20 +01:00
modmuss50 5c4d89bd0d Ugly fix to mercury classpath not having jetbrains annotations 2020-10-21 08:58:07 +01:00
modmuss50 a8e0c8edbb Potentially fix memory leak with the mixin AP 2020-10-21 08:57:13 +01:00
modmuss50 e545a92166 Revert "Ugly fix to mercury classpath not having jetbrains annotations"
This reverts commit 33fdd9ff
2020-10-12 19:24:11 +01:00
modmuss50 33fdd9ffb2 Ugly fix to mercury classpath not having jetbrains annotations 2020-10-10 21:13:12 +01:00
Hephaestus-Dev 86577525cd
Mark auto-generated mods with a custom value (#271)
* Make the barebones `fabric.mod.json` generated for non-mod dependencies an API for ModMenu purposes to prevent large mods with many dependencies from cluttering the menu.

* Changed from providing `modmenu:api` to `fabric-loom:generated` to be agnostic about third party mod usage.
2020-10-08 20:42:07 +01:00
modmuss50 9917f30518
Export rumtime remap classpath to DLI (#277)
* Export rumtime remap classpath for https://github.com/FabricMC/fabric-loader/pull/241

* Fix bad merge
2020-09-26 18:46:35 +01:00
i509VCB 21a9209b86
Split out some constants (#267)
This pull request also reorganizes parts of the constants class into categories.
2020-09-21 20:22:31 +01:00
modmuss50 d5ed659e7d Fix nested jar stripping not working reliability 2020-09-19 14:57:17 +01:00
modmuss50 80aaf63832 Fix race condition with mixin's output mappings across source sets 2020-09-06 20:21:08 +01:00
modmuss50 20be96e733 Fix mixin mapping being shared between all projects. 2020-09-04 22:41:11 +01:00
modmuss50 545b0c946b Fix to #265
Slightly ugly but works
2020-09-04 19:12:04 +01:00
modmuss50 8b1268abe7 Fix and improve error handling around access widener remapping with shared caches 2020-08-26 20:15:21 +01:00
zml c0ef536be4
Include exclusions in the poms generated for mods (#262) 2020-08-26 19:33:40 +01:00
zml 032c815d19
Fix non-mod project dependencies (#263)
This resolves issues in ex. a composite build
2020-08-26 19:32:34 +01:00
modmuss50 2a1aca87cc Update MCE 2020-08-26 18:29:41 +01:00
modmuss50 60909ce9a5 Tweak tests 2020-08-26 13:07:26 +01:00
modmuss50 326224ba91 Fix v2 mappings dir 2020-08-26 12:10:04 +01:00
modmuss50 8da300563a Fix or fail fast on null minecraft version. Add back the old check for mirgate mappings 2020-08-26 08:33:56 +01:00
zml 37af4c8152
Fixes for Mojang mappings handling (#264)
* Only resolve SelfResolvingDependencies once

* mojmap: Improve styling, move to a better group + artifact id
2020-08-26 08:31:42 +01:00
modmuss50 9029a699d9 Official Mojang Mappings support
# Please read and understand the EULA before using!

Use in your build.gradle with the following:

`mappings minecraft.officialMojangMappings()`

To automatically migrate to Mojang mappings run the following:

`gradlew.bat migrateMappings --mappings "net.mojang.minecraft:mappings:1.16.2"`

Co-authored-by: Ramid Khan <ramidzkh@gmail.com>
2020-08-24 22:12:26 +01:00
Fudge c4f25622a2
Allow adding additional jar processors (#247)
* processors

* cleanup

* oops

* make changes

* blargh
2020-08-24 20:10:21 +01:00
modmuss50 db1fe88fcc Fix genSources on sub projects 2020-07-26 23:42:15 +01:00
Reece Dunham 1955bcb2ea General cleanup 2020-07-26 21:32:10 +01:00
modmuss50 6083146127 Post merge checkstyle 2020-07-26 21:26:25 +01:00
modmuss50 de688c14ad Merge branch 'shared_caches' into dev/0.5
# Conflicts:
#	src/main/java/net/fabricmc/loom/AbstractPlugin.java
2020-07-26 21:25:09 +01:00
modmuss50 cb52cabb18 Add Experimental CFR support. Line numbers and comments are not currently supported. 2020-07-26 21:22:17 +01:00
modmuss50 88f5894570 Deprecate using `minecraft` as the gradle extension name in place of `loom`. Both will work for now. 2020-07-26 21:16:22 +01:00
Jaideep Singh Heer a6f7e2cbbb
Fix issue #243 by using ResolvedConfiguration and ResolvedDependency. (#244)
* Fix issue #243 by using ResolvedConfiguration and ResolvedDependency.

* Fix AvoidStarImport build error.
2020-07-26 21:08:48 +01:00
Jonas Herzig 4aa840adfe
Allow IDEA run configs to be generated for non-root projects (#236) 2020-07-26 21:05:14 +01:00
Fudge d7f61512b5
Improve error handling in the case mappings or minecraft dependency was not provided #238) 2020-07-26 21:01:18 +01:00
modmuss50 9d318dd859
Use jetbrains annotations by default. (#240)
Minecraft is also remapped to use them. Any use of jsr should be removed.
2020-07-26 20:57:58 +01:00
Jamie Mansfield 4eb699c2fb
Match Mercury sourceCompatibility with Gradle (#224)
* Match Mercury sourceCompatibility with Gradle

* Fix checkstyle
2020-07-16 18:17:50 +01:00
Octavia Togami 886d77ce0c
Supply the configuration to the run Exec directly (#232)
* Supply the configuration to the run Exec directly

This allows the implicit task dependencies from project() dependencies
to flow into the run tasks.

* Make unmappedMods a CFC to track task information

Deprecates the old methods, and they should probably be removed with
0.5.
2020-06-29 15:25:05 +01:00
modmuss50 b359b83d25 Remove get/setDirection 2020-06-28 13:01:49 +01:00
modmuss50 a02f81bbaa checkstyle 2020-06-28 12:55:09 +01:00
modmuss50 296eb63645 small cleanup 2020-06-28 12:51:29 +01:00
modmuss50 a19fb0f691 Fix build? 2020-06-27 20:30:21 +01:00
modmuss50 32eb0bd3c8 First pass on "shareCaches". 2020-06-27 20:18:32 +01:00
modmuss50 2d7421d4ed
Rengenerate and download all files with --refresh-dependencies (#227)
* Re generate all files with --refresh-dependencies

* Always re-process jar processors

* Update mixin compile extensions
2020-06-23 19:22:36 +01:00
modmuss50 2f6071991c Update mixin compile extensions 2020-06-21 19:29:49 +01:00
modmuss50 6e661c4bd7 Fix test sourceset not having minecraft 2020-06-19 14:08:01 +01:00
modmuss50 b1ae5dee5d
Test across java and gradle versions with github actions. (#218)
* Experiment with github actions

* Fix?

* another fix

* Fix?

* Change github actions run args

* Tried and tested is better right?

* spaces spaces spaces

* revert

* info

* Just 4.9

* Fixes to support building on newer gradle versions

* Forward log output and run tests on runtime gradle version

* Remove travis

* De-duplicate

* Remove daily action, doesnt seem to work so well.
2020-06-08 15:19:11 +01:00
modmuss50 fdbdcc4bbf Fix #177 2020-06-02 14:29:20 +01:00
modmuss50 7e3c36159a Merge remote-tracking branch 'upstream/dev/0.4' into dev/0.4 2020-06-02 12:36:17 +01:00
modmuss50 6323137f56 update DLI 2020-06-02 12:35:55 +01:00
Fudge 4bf3d5aebe
Allow specifying additional decompilers for generating sources (#213)
* decompilers

* cleanup

* oops

* weird import

* public

* public 2 electric boogalo

* move over fabric specific

* ok

* move to api package
2020-06-01 19:31:32 +01:00
Reece Dunham 2baf39ad1c
Add descriptions to all the tasks (#214)
* Add descriptions to all the tasks

Signed-off-by: Reece Dunham <me@rdil.rocks>

* Apply suggestions from code review - thanks @Juuxel!

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>

Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
2020-06-01 19:08:17 +01:00
modmuss50 f529c6e01e Fix source remapping not having the full classpath 2020-06-01 12:25:10 +01:00
modmuss50 f673579da8 Cleanup and fix dep remapping, also add better log output to source remapping. 2020-06-01 12:17:58 +01:00
modmuss50 0265a756c4
Add an easy way to include fabric api modules (#183)
* Add an easy way to include fabric api modules

* Quick update

* Fix crash when reading empty aw file, fix -SNAPSHOT versions plugin marker not being published

* rename methods
2020-05-28 00:46:36 +01:00
modmuss50 5ae727612d Update lorenz-tiny to 2.0.0 2020-05-27 16:41:43 +01:00
modmuss50 2645fef789 Fix building on newer java versions 2020-05-27 14:38:45 +01:00
modmuss50 016645d315 Change compiler arg log output. 2020-05-22 15:36:03 +01:00
Fudge cf13e4aa02
Allow applying kapt and using mixins in other source sets (#211)
* Fix kapt and source sets

* cleanup

* cleanup 2
2020-05-22 14:38:25 +01:00
modmuss50 5d468efc48 Fix yet another Access Widener remapper bug 2020-05-14 02:21:52 +01:00
modmuss50 a36d7a20d4 Fix crash when reading empty aw file, fix -SNAPSHOT versions plugin marker not being published 2020-05-14 02:07:53 +01:00
Juuxel bf8dad499d
Move all Loom tasks to the "fabric" group (#199)
- cleanLoom: other -> fabric
- remapJar: other -> fabric
- Removed the "minecraftMapped" group that the run tasks were in:
  - runClient: minecraftMapped -> fabric
  - runServer: minecraftMapped -> fabric
2020-05-14 01:10:08 +01:00
modmuss50 7a56779368 Fix access widener remapping 2020-05-14 01:07:54 +01:00
modmuss50 11e24e57b4 Merge branch 'pull/205' into dev/0.4
# Conflicts:
#	src/main/java/net/fabricmc/loom/task/RemapJarTask.java
2020-05-13 19:47:28 +01:00
Fudge c54ad10eee
Don't remapJar when running runClient or runServer (#207)
* Update LoomGradlePlugin.java

* Update LoomGradlePlugin.java

* ok jar then
2020-05-13 19:45:13 +01:00
modmuss50 3eff7d0fdb
Improve setup speed. (#208)
* Improve access widener remapper, now uses tiny remapper

* First pass on using the new tiny remapper

* Optimise source remapping
2020-05-13 19:44:45 +01:00
Juuxel bf6fb4a95e
Try to fix #187 (#198) 2020-05-11 23:32:12 +01:00
modmuss50 689293f52c Add a check to ensure the correct mc version is being used with the correct yarn version.
This only applies to yarn mappings as there isnt a solid way to do this for other mappings.
2020-05-11 13:20:12 +01:00
Joe add76e4949
Fix uninitialized property 2020-05-11 13:09:42 +01:00
Joe a134913c71
Allow other source sets to be remapped without needing an access widener 2020-05-11 12:48:04 +01:00
modmuss50 ac86ff1f29 Merge remote-tracking branch 'upstream/dev/0.4' into dev/0.4 2020-04-27 14:09:29 +01:00
modmuss50 76087d4d3d Some trivial performance improvements 2020-04-27 14:08:37 +01:00
immibis 6c02535304
Eclipse project fixes (#192)
* If the Eclipse project name is overridden by the build script, use the actual name.

* Clean up Eclipse launch files after cleanEclipse task.
2020-04-26 14:04:49 +01:00
modmuss50 3ce6fcd9a4 Update to use threaded fernflower 2020-04-24 13:36:50 +01:00
modmuss50 26755cb82c Ensure JarFile is always closed 2020-04-22 18:22:22 +01:00
modmuss50 f7190b31c0 Cleanup and fix dep aw remapping 2020-04-21 14:08:02 +01:00
modmuss50 c9282e0d6d Checkstyle fix 2020-04-11 19:29:51 +01:00
modmuss50 127e7a4330 Throw an exception if the target accessWidener could not be found in the fabric.mod.json 2020-04-11 19:21:54 +01:00
modmuss50 702e4ea80b Actually fix the issue 2020-04-07 00:12:50 +01:00
modmuss50 232118e69e Fix making constructors final 2020-04-06 22:52:49 +01:00
modmuss50 0ae8535c40
Access widener support (#182)
* Rough work on project based jars, skeleton for AccessEscalators?

* First working draft

* Minor changes

* Add support for mutable, better error checking when parsing file.
Code cleanup
Remap if needed when reading

* Fix inner classes and genSources

* Fix CME

* Caching, only regen jar when input changes

* Some work, untested

* Fix writing, fix checkstyle issues

* More fixes

* Move jars into a maven file structure, cleans up the file structure, and will benefit idea 2020
Add some basic validation to the AccessWidenerRemapper, will present any issues with the mappings when building (May need a way to disable?)
+ Some bugs fixes

* Fix issues with source jars in idea 2020, should be backwards compatible with 2019

* Move to lorenz-tiny

* Build fix + small cleanup

* Update to match the changes in loader

* More fixes

* Update to match loader changes.

* Improve error logging
2020-04-06 15:28:53 +01:00
modmuss50 75f08fc4c5 Cleanup potentially corrupt files on mappings error 2020-04-05 20:11:11 +01:00
modmuss50 e5a6551609 Small fixes to the log4j config file 2020-04-04 14:41:34 +01:00
modmuss50 dff10a5d79
Use a custom dev time log4j config. Enables color output and improves overall logging. (#186)
* Use a custom dev time log4j config. Enables color output and improves overall logging.
Color output is not enabled by default for eclipse users

* Use the run config to force enable ansi colors

* Improve IDE detection
2020-04-04 14:18:40 +01:00
modmuss50 bb68465a8d Add a basic way to specify custom intermediary URLs, ideally this would use maven.
But thats more work than I can be bothered to do.
2020-03-26 19:40:00 +00:00
modmuss50 00c65f54ed Fix https://github.com/FabricMC/fabric-example-mod/issues/44 2020-03-16 22:29:54 +00:00
modmuss50 ee462f8f9e
0.2.7 refactors (#178)
* Rough work on project based jars, skeleton for AccessEscalators?

* First working draft

* Minor changes

* Add support for mutable, better error checking when parsing file.
Code cleanup
Remap if needed when reading

* Fix inner classes and genSources

* Fix CME

* Caching, only regen jar when input changes

* Some work, untested

* Fix writing, fix checkstyle issues

* More fixes

* Move jars into a maven file structure, cleans up the file structure, and will benefit idea 2020
Add some basic validation to the AccessWidenerRemapper, will present any issues with the mappings when building (May need a way to disable?)
+ Some bugs fixes

* Fix issues with source jars in idea 2020, should be backwards compatible with 2019

* Move to lorenz-tiny

* Build fix + small cleanup

* Remove accesswidener's for now

* Update dev launch injector, should fix all issues with spaces in the path.
2020-03-06 11:15:34 +00:00
modmuss50 d62a63c8bd Possibly fix native downloading for older versions such as 1.8.9 2020-02-17 20:23:33 +00:00
modmuss50 a88087021b Make error messages more clear 2020-02-05 20:37:05 +00:00
modmuss50 6049ca48f4 Fix not always downloading version_manifest.json, can lead to missing versions 2020-02-05 20:20:43 +00:00
modmuss50 46b616af0f
Multithreaded asset downloading, should be a lot quicker (#175)
* Multithreaded asset downloading, should be a lot quicker

* Force the string width

* Limit threads to max 10 and min 1

* Use ConcurrentLinkedDeque
2020-01-29 15:23:13 +00:00
modmuss50 daf922d928 Performance optimisation when including nested jars 2020-01-24 21:59:59 +00:00
AlexIIL 77e32ba3fa Pretty-print fabric.mod.json. (#174) 2020-01-21 20:00:03 +00:00
Juuxel 045548a11d Replace dots in artifact names as well when generating mod jsons for JIJ (#173) 2020-01-18 17:23:33 +00:00
modmuss50 cd202f2804 Revert "Add mixins that target the class as a comment. (#168)"
This reverts commit fb3c2c86
2020-01-01 19:23:27 +00:00
modmuss50 fb3c2c86cb
Add mixins that target the class as a comment. (#168)
* Add mixins that target the class as a comment.

* some final fixes and tweaks

* Remove debug log

* Fix inner class mixins
2020-01-01 19:12:31 +00:00
Juuxel 705754de80 Change mixin refmap default name to use archivesBaseName instead of the project name (#158)
* Change mixin refmap default name to use archivesBaseName instead of the project name

Using the project name can be problematic in libraries pulled in with Jitpack.
Jitpack clones projects in a directory called "build", which sets the
project name to "build" if not manually defined. The resulting refmap,
"build-refmap.json", can conflict with other mods' refmaps,
leading to mixin crashes.

* Shut up checkstyle
2019-12-29 17:29:19 +00:00
modmuss50 5ef6125795 Fix eclipse run config, Closes #111 2019-12-27 21:17:37 +00:00
modmuss50 642ba74f8c Merge remote-tracking branch 'upstream/dev/0.2.7' into dev/0.2.7 2019-12-27 11:53:01 +00:00
modmuss50 4cf2b265eb Fix loom failing to find main class when in a loader dev env 2019-12-27 11:52:35 +00:00
Pyrofab 7a03264052 Make mod* work with non-empty classifiers again, fixes #162 (#163) 2019-12-20 20:28:37 +00:00
modmuss50 c2d61875e1 Yet another attempt to fix the annotation processor issue. 2019-12-13 18:24:01 +00:00
modmuss50 5c2b669bb5 Do not add fabric-mixin-compile-extensions when syncing in idea. 2019-12-11 15:52:08 +00:00
modmuss50 5baceb365a Revert last 2 commits. 2019-12-11 15:46:42 +00:00
modmuss50 cffb10a420 Another atempt to fix the annotation processors 2019-12-11 14:42:02 +00:00
modmuss50 dcbe6c4566 Possible fix/workaround for idea enabling annotation processors when we dont really need them. 2019-12-11 14:19:47 +00:00
modmuss50 c67206297e
Javadocs (#154)
* Javadocs

* Move to using IFabricJavadocProvider
Co-authored-by: mentlerd <mentlerd@gmail.com>

* Checkstyle
2019-12-02 13:32:10 +00:00
modmuss50 2f775b1c97 parameters docs
Co-authored-by: mentlerd <mentlerd@gmail.com>
2019-12-02 13:29:50 +00:00
Fudge 78f4983e61 Improve remapped artifact names (#153)
* improve artifact names

* fix indent

* fix indent again
2019-11-28 21:14:48 +00:00
modmuss50 414f41ab50 Merge remote-tracking branch 'upstream/dev/0.2.6' into dev/0.2.6 2019-11-18 22:14:55 +00:00
modmuss50 610cd82a78 Update mixin compile extensions 2019-11-18 22:14:49 +00:00
liach 2cc95daa71 Improve support for custom self-resolving mappings (#145)
Also allow mappings for 19w44a be used on 19w45b etc. with tinyv2

Signed-off-by: liach <liach@users.noreply.github.com>
2019-11-15 20:16:26 +00:00
Ramid Khan 55a9d90690 Allow for non-yarn mappings for MigrateMappingsTask (#141)
* Add getExtension utility method to AbstractLoomTask

* Support non-yarn mappings in MigrateMappingsTask

* Fix style

* Assume Yarn mappings if correct notation was not supplied

* Move load mappings block into its own its own method

Also added protected to getExtension on AbstractLoomTask

* Use Option instead of environment variables

* Assume V2 Yarn by default

* Some restructuring

All works the same.
2019-11-15 20:16:09 +00:00
modmuss50 11af956c84 Fix Linux/MacOS issues 2019-11-15 09:11:04 +00:00
Fudge 4ca20fb39e Allow source jars to use their own parameter names for mod deps (#147)
* formatting

* spaaaace
2019-11-13 12:32:44 +00:00
modmuss50 54ac2df5dc Real fix this time? 2019-11-13 09:19:57 +00:00
modmuss50 dda4291687 Fix build
Passes on my machine, but not jenkins
2019-11-13 09:16:27 +00:00
modmuss50 f8dd6f56ee Merge remote-tracking branch 'upstream/dev/0.2.6' into dev/0.2.6 2019-11-12 18:47:05 +00:00
modmuss50 e03bbe0f87 Cleanup installer json handling, should hopefully fix incorrect dependency versions. 2019-11-12 18:46:57 +00:00
modmuss50 b69d0db1c2
Use Dev Launch Injector to ensure that the launch options are always kept upto date. (#138)
* Generate pre-launch classes to set the run args and system property's
Will remove the need to regen the run configs each time the game is updated

* fix minor thing.

* Small cleanup

* Another small rename + remove testing code

* Remove import

* Add basic auto upgrade path, put the launch classes in a package

* Suggested cleanups

* Use dev-launch-wrapper

* Remove old classes

* Rename to dev-launch-injector

* Update more things I forgot about
2019-11-11 18:52:19 +00:00
liach c8ef934bda Add mixin ap to projects in a "better way" (#144)
* Add mixin ap to projects in a "better way"

Signed-off-by: liach <liach@users.noreply.github.com>

* Remove obsolete bad code

Signed-off-by: liach <liach@users.noreply.github.com>

* Use a field in constants instead

Signed-off-by: liach <liach@users.noreply.github.com>

* String format does not work

Signed-off-by: liach <liach@users.noreply.github.com>
2019-11-11 16:52:13 +00:00
Fudge 458eaabb7e Fix V2 regressions (#146)
* fix regressions

* Supposedly fix kotlin compile error
2019-11-11 13:21:59 +00:00
Fudge 8e916f8fb0 Support using TinyV2 mappings (#132) 2019-11-09 19:00:36 +00:00
modmuss50 baf976d3f3 Drop debug level in RemapLineNumbers 2019-11-07 13:06:29 +00:00